diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 1f53bf89..621ed1da 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -23,7 +23,7 @@ repos: - id: ruff args: [ --fix, --exit-non-zero-on-fix ] - repo: https://github.com/rbubley/mirrors-prettier - rev: v3.6.2 + rev: v3.7.4 hooks: - id: prettier types_or: [css, javascript, html, json] diff --git a/lnbits/static/bundle-components.min.js b/lnbits/static/bundle-components.min.js index 66af7b91..2cdd90ae 100644 --- a/lnbits/static/bundle-components.min.js +++ b/lnbits/static/bundle-components.min.js @@ -1 +1 @@ -window.PageError={template:"#page-error",mixins:[window.windowMixin]},window.PageHome={template:"#page-home",mixins:[window.windowMixin],data:()=>({lnurl:"",authAction:"login",authMethod:"username-password",usr:"",username:"",reset_key:"",email:"",password:"",passwordRepeat:"",walletName:"",signup:!1}),computed:{showClaimLnurl(){return""!==this.lnurl&&this.allowRegister&&"user-id-only"in this.LNBITS_AUTH_METHODS},formatDescription(){return LNbits.utils.convertMarkdown(this.SITE_DESCRIPTION)},isAccessTokenExpired(){return this.$q.cookies.get("is_access_token_expired")},allowRegister(){return this.LNBITS_NEW_ACCOUNTS_ALLOWED},hasCustomImage(){return this.LNBITS_CUSTOM_IMAGE},showHomepageElements(){return this.HOMEPAGE_ELEMENTS_ENABLED},siteTitle(){return this.SITE_TITLE||""},siteTagline(){return this.SITE_TAGLINE||""},adsEnabled(){return this.AD_SPACE_ENABLED&&this.AD_SPACE&&this.AD_SPACE.length>0},adsTitle(){return this.AD_SPACE_TITLE||""},ads(){return this.AD_SPACE.map((e=>e.split(";")))},lnbitsBannerEnabled(){return this.isSatsDenomination&&"LNbits"==this.SITE_TITLE&&1==this.LNBITS_SHOW_HOME_PAGE_ELEMENTS}},methods:{showLogin(e){this.authAction="login",this.authMethod=e},showRegister(e){this.user="",this.username=null,this.password=null,this.passwordRepeat=null,this.authAction="register",this.authMethod=e},async register(){try{await LNbits.api.register(this.username,this.email,this.password,this.passwordRepeat),window.location.href="/wallet"}catch(e){LNbits.utils.notifyApiError(e)}},async reset(){try{await LNbits.api.reset(this.reset_key,this.password,this.passwordRepeat),window.location.href="/wallet"}catch(e){LNbits.utils.notifyApiError(e)}},async login(){try{await LNbits.api.login(this.username,this.password),window.location.href="/wallet"}catch(e){LNbits.utils.notifyApiError(e)}},async loginUsr(){try{await LNbits.api.loginUsr(this.usr),this.usr="",window.location.href="/wallet"}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},createWallet(){LNbits.api.createAccount(this.walletName).then((e=>{window.location="/wallet?usr="+e.data.user+"&wal="+e.data.id}))},processing(){Quasar.Notify.create({timeout:0,message:"Processing...",icon:null})}},created(){this.g.isUserAuthorized&&(window.location.href="/wallet");const e=new URLSearchParams(window.location.search);this.reset_key=e.get("reset_key"),this.reset_key&&(this.authAction="reset"),e.has("lightning")&&(this.lnurl=e.get("lightning"))}},window.PageExtensionBuilder={template:"#page-extension-builder",mixins:[windowMixin],data:()=>({step:1,previewStepNames:{2:"settings",3:"owner_data",4:"client_data",5:"public_page"},extensionDataCleanString:"",extensionData:{id:"",name:"",stub_version:"",short_description:"",description:"",public_page:{has_public_page:!0,owner_data_fields:{name:"",description:""},client_data_fields:{public_inputs:[]},action_fields:{generate_action:!0,generate_payment_logic:!1,wallet_id:"",currency:"",amount:"",paid_flag:""}},preview_action:{is_preview_mode:!1,is_settings_preview:!1,is_owner_data_preview:!1,is_client_data_preview:!1,is_public_page_preview:!1},settings_data:{name:"Settings",enabled:!0,type:"user",fields:[]},owner_data:{name:"OwnerData",fields:[]},client_data:{enabled:!0,name:"ClientData",fields:[]}},sampleField:{name:"name",type:"str",label:"Name",hint:"",optional:!0,editable:!0,searchable:!0,sortable:!0},settingsTypes:[{label:"User Settings",value:"user"},{label:"Admin Settings",value:"admin"}],amountSource:[{label:"Client Data",value:"client_data"},{label:"Owner Data",value:"owner_data"}],extensionStubVersions:[]}),watch:{"extensionData.public_page.action_fields.amount_source":function(e,t){t&&e!==t&&(this.extensionData.public_page.action_fields.amount="")}},computed:{paymentActionAmountFields(){const e=this.extensionData.public_page.action_fields.amount_source;return e?"owner_data"===e?[""].concat(this.extensionData.owner_data.fields.filter((e=>"int"===e.type||"float"===e.type)).map((e=>e.name))):"client_data"===e?[""].concat(this.extensionData.client_data.fields.filter((e=>"int"===e.type||"float"===e.type)).map((e=>e.name))):void 0:[""]}},methods:{saveState(){this.$q.localStorage.set("lnbits.extension.builder.data",JSON.stringify(this.extensionData)),this.$q.localStorage.set("lnbits.extension.builder.step",this.step)},nextStep(){this.saveState(),this.$refs.stepper.next(),this.refreshPreview()},previousStep(){this.saveState(),this.$refs.stepper.previous(),this.refreshPreview()},onStepChange(){this.saveState(),this.refreshPreview()},clearAllData(){LNbits.utils.confirmDialog("Are you sure you want to clear all data? This action cannot be undone.").onOk((()=>{this.extensionData=JSON.parse(this.extensionDataCleanString),this.$q.localStorage.remove("lnbits.extension.builder.data"),this.$refs.stepper.set(1)}))},exportJsonData(){!0!==Quasar.exportFile(`${this.extensionData.id||"data-export"}.json`,JSON.stringify(this.extensionData,null,2),"text/json")?Quasar.Notify.create({message:"Browser denied file download...",color:"negative",icon:null}):Quasar.Notify.create({message:"File downloaded!",color:"positive",icon:"file_download"})},onJsonDataInput(e){const t=e.target.files[0],a=new FileReader;a.onload=e=>{this.extensionData={...this.extensionData,...JSON.parse(e.target.result)},this.$refs.extensionDataInput.value=null,Quasar.Notify.create({message:"File loaded!",color:"positive",icon:"file_upload"})},a.readAsText(t)},async buildExtension(){try{const e={responseType:"blob"},t=await LNbits.api.request("POST","/api/v1/extension/builder/zip",null,this.extensionData,e),a=window.URL.createObjectURL(new Blob([t.data])),s=document.createElement("a");s.href=a,s.download=`${this.extensionData.id||"lnbits-extension"}.zip`,document.body.appendChild(s),s.click(),s.remove(),window.URL.revokeObjectURL(a)}catch(e){LNbits.utils.notifyApiError(e)}},async buildExtensionAndDeploy(){try{const{data:e}=await LNbits.api.request("POST","/api/v1/extension/builder/deploy",null,this.extensionData);Quasar.Notify.create({message:e.message||"Extension deployed!",color:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}},async cleanCacheData(){LNbits.utils.confirmDialog("Are you sure you want to clean the cache data? This action cannot be undone.","Clean Cache Data").onOk((async()=>{try{const{data:e}=await LNbits.api.request("DELETE","/api/v1/extension/builder",null,{});Quasar.Notify.create({message:e.message||"Cache data cleaned!",color:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}}))},async previewExtension(e){this.saveState();try{await LNbits.api.request("POST","/api/v1/extension/builder/preview",null,{...this.extensionData,preview_action:{is_preview_mode:!!e,is_settings_preview:"settings"===e,is_owner_data_preview:"owner_data"===e,is_client_data_preview:"client_data"===e,is_public_page_preview:"public_page"===e}}),this.refreshIframe(e)}catch(e){LNbits.utils.notifyApiError(e)}},async refreshPreview(){setTimeout((()=>{const e=this.previewStepNames[`${this.step}`]||"";e&&this.previewExtension(e)}),100)},async getStubExtensionReleases(){try{const e="extension_builder_stub",{data:t}=await LNbits.api.request("GET",`/api/v1/extension/${e}/releases`);this.extensionStubVersions=t.sort(((e,t)=>e.version{const e=t.contentDocument||t.contentWindow.document;e.body.style.transform="scale(0.8)",e.body.style.transformOrigin="center top"},t.src=`/extensions/builder/preview/${this.extensionData.id}?page_name=${e}`):console.warn("Extension Builder Preview iframe not loaded yet.")},initBasicData(){this.extensionData.owner_data.fields=[JSON.parse(JSON.stringify(this.sampleField))],this.extensionData.client_data.fields=[JSON.parse(JSON.stringify(this.sampleField))],this.extensionData.settings_data.fields=[JSON.parse(JSON.stringify(this.sampleField))],this.extensionDataCleanString=JSON.stringify(this.extensionData)}},created(){this.initBasicData();const e=this.$q.localStorage.getItem("lnbits.extension.builder.data");e&&(this.extensionData={...this.extensionData,...JSON.parse(e)});const t=+this.$q.localStorage.getItem("lnbits.extension.builder.step");t&&(this.step=t),this.g.user.admin&&this.getStubExtensionReleases(),setTimeout((()=>{this.refreshIframe()}),1e3)}},window.PageExtensions={template:"#page-extensions",mixins:[window.windowMixin],data:()=>({extbuilderEnabled:!1,slide:0,fullscreen:!1,autoplay:!0,searchTerm:"",tab:"all",manageExtensionTab:"releases",filteredExtensions:[],updatableExtensions:[],showUninstallDialog:!1,showManageExtensionDialog:!1,showExtensionDetailsDialog:!1,showDropDbDialog:!1,showPayToEnableDialog:!1,showUpdateAllDialog:!1,dropDbExtensionId:"",selectedExtension:null,selectedImage:null,selectedExtensionDetails:null,selectedExtensionRepos:null,selectedRelease:null,uninstallAndDropDb:!1,maxStars:5,paylinkWebsocket:null,user:null}),watch:{searchTerm(e){this.filterExtensions(e,this.tab)},tab(e){this.filterExtensions(this.searchTerm,e)}},methods:{filterExtensions(e,t){var a;this.filteredExtensions=this.extensions.filter((e=>"all"!==t||!e.isInstalled)).filter((e=>"installed"!==t||e.isInstalled)).filter((e=>"installed"!==t||(!!e.isActive||!!this.g.user.admin))).filter((e=>"featured"!==t||e.isFeatured)).filter((a=e,function(e){return e.name.toLowerCase().includes(a.toLowerCase())||e.shortDescription?.toLowerCase().includes(a.toLowerCase())})).map((e=>({...e,details_link:e.installedRelease?.details_link||e.latestRelease?.details_link})))},async installExtension(e){this.unsubscribeFromPaylinkWs();const t=this.selectedExtension;this.selectedExtension.inProgress=!0,this.showManageExtensionDialog=!1,e.payment_hash=e.payment_hash||this.getPaylinkHash(e.pay_link),LNbits.api.request("POST","/api/v1/extension",this.g.user.wallets[0].adminkey,{ext_id:this.selectedExtension.id,archive:e.archive,source_repo:e.source_repo,payment_hash:e.payment_hash,version:e.version}).then((t=>{const a=this.extensions.find((e=>e.id===this.selectedExtension.id));a.isAvailable=!0,a.isInstalled=!0,a.installedRelease=e,this.toggleExtension(a),a.inProgress=!1,this.selectedExtension=a,this.extensions=this.extensions.concat([]),this.tab="installed"})).catch((e=>{console.warn(e),t.inProgress=!1,LNbits.utils.notifyApiError(e)}))},async uninstallExtension(){this.showManageExtensionDialog=!1,this.showUninstallDialog=!1,this.selectedExtension.inProgress=!0,LNbits.api.request("DELETE",`/api/v1/extension/${this.selectedExtension.id}`,this.g.user.wallets[0].adminkey).then((e=>{const t=this.extensions.find((e=>e.id===this.selectedExtension.id));t.isAvailable=!1,t.isInstalled=!1,t.inProgress=!1,t.installedRelease=null,this.filteredExtensions=this.filteredExtensions.filter((e=>e.id!==t.id)),Quasar.Notify.create({type:"positive",message:"Extension uninstalled!"}),this.uninstallAndDropDb&&this.showDropDb()})).catch((e=>{LNbits.utils.notifyApiError(e),extension.inProgress=!1}))},async dropExtensionDb(){const e=this.selectedExtension;this.showManageExtensionDialog=!1,this.showDropDbDialog=!1,this.dropDbExtensionId="",e.inProgress=!0,LNbits.api.request("DELETE",`/api/v1/extension/${e.id}/db`,this.g.user.wallets[0].adminkey).then((t=>{e.installedRelease=null,e.inProgress=!1,e.hasDatabaseTables=!1,Quasar.Notify.create({type:"positive",message:"Extension DB deleted!"})})).catch((t=>{LNbits.utils.notifyApiError(t),e.inProgress=!1}))},toggleExtension(e){const t=e.isActive?"activate":"deactivate";LNbits.api.request("PUT",`/api/v1/extension/${e.id}/${t}`,this.g.user.wallets[0].adminkey).then((a=>{Quasar.Notify.create({timeout:2e3,type:"positive",message:`Extension '${e.id}' ${t}d!`})})).catch((t=>{LNbits.utils.notifyApiError(t),e.isActive=!1,e.inProgress=!1}))},async enableExtensionForUser(e){e.isPaymentRequired?this.showPayToEnable(e):this.enableExtension(e)},async enableExtension(e){LNbits.api.request("PUT",`/api/v1/extension/${e.id}/enable`,this.g.user.wallets[0].adminkey).then((t=>{this.g.user.extensions=this.g.user.extensions.concat([e.id]),Quasar.Notify.create({type:"positive",message:"Extension enabled!"})})).catch((e=>{console.warn(e),LNbits.utils.notifyApiError(e)}))},disableExtension(e){LNbits.api.request("PUT",`/api/v1/extension/${e.id}/disable`,this.g.user.wallets[0].adminkey).then((t=>{this.g.user.extensions=this.g.user.extensions.filter((t=>t!==e.id)),Quasar.Notify.create({type:"positive",message:"Extension disabled!"})})).catch((e=>{console.warn(error),LNbits.utils.notifyApiError(e)}))},showPayToEnable(e){this.selectedExtension=e,this.selectedExtension.payToEnable.paidAmount=e.payToEnable.amount,this.selectedExtension.payToEnable.showQRCode=!1,this.showPayToEnableDialog=!0},updatePayToInstallData(e){LNbits.api.request("PUT",`/api/v1/extension/${e.id}/sell`,this.g.user.wallets[0].adminkey,{required:e.payToEnable.required,amount:e.payToEnable.amount,wallet:e.payToEnable.wallet}).then((e=>{Quasar.Notify.create({type:"positive",message:"Payment info updated!"}),this.showManageExtensionDialog=!1})).catch((t=>{LNbits.utils.notifyApiError(t),e.inProgress=!1}))},showUninstall(){this.showManageExtensionDialog=!1,this.showUninstallDialog=!0,this.uninstallAndDropDb=!1},showDropDb(){this.showDropDbDialog=!0},async showManageExtension(e){this.selectedExtension=e,this.selectedRelease=null,this.selectedExtensionRepos=null,this.manageExtensionTab="releases",this.showManageExtensionDialog=!0;try{const{data:t}=await LNbits.api.request("GET",`/api/v1/extension/${e.id}/releases`,this.g.user.wallets[0].adminkey);this.selectedExtensionRepos=t.reduce(((e,t)=>(e[t.source_repo]=e[t.source_repo]||{releases:[],isInstalled:!1,repo:t.repo},t.inProgress=!1,t.error=null,t.loaded=!1,t.isInstalled=this.isInstalledVersion(this.selectedExtension,t),t.isInstalled&&(e[t.source_repo].isInstalled=!0),t.pay_link&&(t.requiresPayment=!0,t.paidAmount=t.cost_sats,t.payment_hash=this.getPaylinkHash(t.pay_link)),e[t.source_repo].releases.push(t),e)),{})}catch(t){LNbits.utils.notifyApiError(t),e.inProgress=!1}},async showExtensionDetails(e,t){if(t){this.selectedExtensionDetails=null,this.showExtensionDetailsDialog=!0,this.slide=0,this.fullscreen=!1;try{const{data:a}=await LNbits.api.request("GET",`/api/v1/extension/${e}/details?details_link=${t}`,this.g.user.wallets[0].inkey);this.selectedExtensionDetails=a,this.selectedExtensionDetails.description_md=LNbits.utils.convertMarkdown(a.description_md)}catch(e){console.warn(e)}}},async payAndInstall(e){try{this.selectedExtension.inProgress=!0,this.showManageExtensionDialog=!1;const t=await this.requestPaymentForInstall(this.selectedExtension.id,e);this.rememberPaylinkHash(e.pay_link,t.payment_hash);const a=this.g.user.wallets.find((t=>t.id===e.wallet)),{data:s}=await LNbits.api.payInvoice(a,t.payment_request);e.payment_hash=s.payment_hash,await this.installExtension(e)}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}finally{this.selectedExtension.inProgress=!1}},async payAndEnable(e){try{const t=await this.requestPaymentForEnable(e.id,e.payToEnable.paidAmount),a=this.g.user.wallets.find((t=>t.id===e.payToEnable.paymentWallet)),{data:s}=await LNbits.api.payInvoice(a,t.payment_request);this.enableExtension(e),this.showPayToEnableDialog=!1}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async showInstallQRCode(e){this.selectedRelease=e;try{const t=await this.requestPaymentForInstall(this.selectedExtension.id,e);this.selectedRelease.paymentRequest=t.payment_request,this.selectedRelease.payment_hash=t.payment_hash,this.selectedRelease=_.clone(this.selectedRelease),this.rememberPaylinkHash(this.selectedRelease.pay_link,this.selectedRelease.payment_hash),this.subscribeToPaylinkWs(this.selectedRelease.pay_link,t.payment_hash)}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async showEnableQRCode(e){try{e.payToEnable.showQRCode=!0,this.selectedExtension=_.clone(e);const t=await this.requestPaymentForEnable(e.id,e.payToEnable.paidAmount);e.payToEnable.paymentRequest=t.payment_request,this.selectedExtension=_.clone(e);const a=new URL(window.location);a.protocol="https:"===a.protocol?"wss":"ws",a.pathname=`/api/v1/ws/${t.payment_hash}`;const s=new WebSocket(a);s.addEventListener("message",(async({data:t})=>{!1===JSON.parse(t).pending&&(Quasar.Notify.create({type:"positive",message:"Invoice Paid!"}),this.enableExtension(e),s.close())}))}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async requestPaymentForInstall(e,t){const{data:a}=await LNbits.api.request("PUT",`/api/v1/extension/${e}/invoice/install`,this.g.user.wallets[0].adminkey,{ext_id:e,archive:t.archive,source_repo:t.source_repo,cost_sats:t.paidAmount,version:t.version});return a},async requestPaymentForEnable(e,t){const{data:a}=await LNbits.api.request("PUT",`/api/v1/extension/${e}/invoice/enable`,this.g.user.wallets[0].adminkey,{amount:t});return a},clearHangingInvoice(e){this.forgetPaylinkHash(e.pay_link),e.payment_hash=null},rememberPaylinkHash(e,t){this.$q.localStorage.set(`lnbits.extensions.paylink.${e}`,t)},getPaylinkHash(e){return this.$q.localStorage.getItem(`lnbits.extensions.paylink.${e}`)},forgetPaylinkHash(e){this.$q.localStorage.remove(`lnbits.extensions.paylink.${e}`)},subscribeToPaylinkWs(e,t){const a=new URL(`${e}/${t}`);a.protocol="https:"===a.protocol?"wss":"ws",this.paylinkWebsocket=new WebSocket(a),this.paylinkWebsocket.addEventListener("message",(async({data:e})=>{JSON.parse(e).paid?(Quasar.Notify.create({type:"positive",message:"Invoice Paid!"}),this.installExtension(this.selectedRelease)):Quasar.Notify.create({type:"warning",message:"Invoice tracking lost!"})}))},unsubscribeFromPaylinkWs(){try{this.paylinkWebsocket&&this.paylinkWebsocket.close()}catch(e){console.warn(e)}},hasNewVersion(e){if(e.installedRelease&&e.latestRelease)return e.installedRelease.version!==e.latestRelease.version},isInstalledVersion(e,t){if(e.installedRelease)return e.installedRelease.source_repo===t.source_repo&&e.installedRelease.version===t.version},getReleaseIcon:e=>e.is_version_compatible?e.isInstalled?"download_done":"download":"block",getReleaseIconColor:e=>e.is_version_compatible?e.isInstalled?"text-green":"":"text-red",async getGitHubReleaseDetails(e){if(!e.is_github_release||e.loaded)return;const[t,a]=e.source_repo.split("/");e.inProgress=!0;try{const{data:s}=await LNbits.api.request("GET",`/api/v1/extension/release/${t}/${a}/${e.version}`,this.g.user.wallets[0].adminkey);e.loaded=!0,e.is_version_compatible=s.is_version_compatible,e.min_lnbits_version=s.min_lnbits_version,e.warning=s.warning}catch(t){console.warn(t),e.error=t,LNbits.utils.notifyApiError(t)}finally{e.inProgress=!1}},async selectAllUpdatableExtensionss(){this.updatableExtensions.forEach((e=>e.selectedForUpdate=!0))},async updateSelectedExtensions(){let e=0;for(const t of this.updatableExtensions)try{if(!t.selectedForUpdate)continue;t.inProgress=!0,await LNbits.api.request("POST","/api/v1/extension",this.g.user.wallets[0].adminkey,{ext_id:t.id,archive:t.latestRelease.archive,source_repo:t.latestRelease.source_repo,payment_hash:t.latestRelease.payment_hash,version:t.latestRelease.version}),e++,t.isAvailable=!0,t.isInstalled=!0,t.isUpgraded=!0,t.inProgress=!1,t.installedRelease=t.latestRelease,t.isActive=!0,this.toggleExtension(t)}catch(e){console.warn(e),Quasar.Notify.create({type:"negative",message:`Failed to update ${t.id}!`})}finally{t.inProgress=!1}Quasar.Notify.create({type:e?"positive":"warning",message:`${e||"No"} extensions updated!`}),this.showUpdateAllDialog=!1},async fetchAllExtensions(){try{const{data:e}=await LNbits.api.request("GET","/api/v1/extension/all");return e}catch(e){return console.warn(e),LNbits.utils.notifyApiError(e),[]}}},async created(){this.extensions=await this.fetchAllExtensions(),this.extbuilderEnabled=user.admin||this.LNBITS_EXT_BUILDER;const e=window.location.hash.replace("#",""),t=this.extensions.find((t=>t.id===e));t&&(this.searchTerm=t.id,t.isInstalled&&(this.tab="installed")),this.updatableExtensions=this.extensions.filter((e=>this.hasNewVersion(e))),this.filterExtensions(this.searchTerm,this.tab)}},window.PageFirstInstall={template:"#page-first-install",mixins:[window.windowMixin],data:()=>({loginData:{isPwd:!0,isPwdRepeat:!0,username:"",password:"",passwordRepeat:""}}),computed:{checkPasswordsMatch(){return this.loginData.password!==this.loginData.passwordRepeat}},methods:{async setPassword(){try{await LNbits.api.request("PUT","/api/v1/auth/first_install",null,{username:this.loginData.username,password:this.loginData.password,password_repeat:this.loginData.passwordRepeat}),window.location.href="/admin"}catch(e){LNbits.utils.notifyApiError(e)}}},created(){document.title="First Install - LNbits"}},window.PagePayments={template:"#page-payments",mixins:[window.windowMixin],data:()=>({payments:[],dailyChartData:[],searchDate:{from:null,to:null},searchData:{wallet_id:null,payment_hash:null,memo:null,internal_memo:null},statusFilters:{success:!0,pending:!0,failed:!0,incoming:!0,outgoing:!0},chartData:{showPaymentStatus:!0,showPaymentTags:!0,showBalance:!0,showWalletsSize:!1,showBalanceInOut:!1,showPaymentCountInOut:!1},searchOptions:{status:[]},paymentsTable:{columns:[{name:"status",align:"left",label:"Status",field:"status",sortable:!1},{name:"created_at",align:"left",label:"Created At",field:"created_at",sortable:!0},{name:"amount",align:"right",label:"Amount",field:"amount",sortable:!0},{name:"amountFiat",align:"right",label:"Fiat",field:"amountFiat",sortable:!1},{name:"fee_sats",align:"left",label:"Fee",field:"fee_sats",sortable:!0},{name:"tag",align:"left",label:"Tag",field:"tag",sortable:!1},{name:"memo",align:"left",label:"Memo",field:"memo",sortable:!1,max_length:20},{name:"internal_memo",align:"left",label:"Internal Memo",field:"internal_memo",sortable:!1,max_length:20},{name:"wallet_id",align:"left",label:"Wallet (ID)",field:"wallet_id",sortable:!1},{name:"payment_hash",align:"left",label:"Payment Hash",field:"payment_hash",sortable:!1}],pagination:{sortBy:"created_at",rowsPerPage:25,page:1,descending:!0,rowsNumber:10},search:null,hideEmpty:!0,loading:!1},chartsReady:!1,showDetails:!1,paymentDetails:null,lnbitsBalance:0}),async mounted(){this.chartsReady=!0,await this.$nextTick(),this.initCharts(),await this.fetchPayments()},computed:{},methods:{async fetchPayments(e){const t=Object.entries(this.searchData).reduce(((e,[t,a])=>a?(e[t]=a,e):e),{});delete t["time[ge]"],delete t["time[le]"],this.searchDate.from&&(t["time[ge]"]=this.searchDate.from+"T00:00:00"),this.searchDate.to&&(t["time[le]"]=this.searchDate.to+"T23:59:59"),this.paymentsTable.filter=t;try{const t=LNbits.utils.prepareFilterQuery(this.paymentsTable,e),{data:a}=await LNbits.api.request("GET",`/api/v1/payments/all/paginated?${t}`);this.paymentsTable.pagination.rowsNumber=a.total,this.payments=a.data.map((e=>(e.extra&&e.extra.tag&&(e.tag=e.extra.tag),e.timeFrom=moment.utc(e.created_at).local().fromNow(),e.outgoing=e.amount<0,e.amount=new Intl.NumberFormat(this.g.locale).format(e.amount/1e3)+" sats",e.extra?.wallet_fiat_amount&&(e.amountFiat=this.formatCurrency(e.extra.wallet_fiat_amount,e.extra.wallet_fiat_currency)),e.extra?.internal_memo&&(e.internal_memo=e.extra.internal_memo),e.fee_sats=new Intl.NumberFormat(this.g.locale).format(e.fee/1e3)+" sats",e)))}catch(e){console.error(e),LNbits.utils.notifyApiError(e)}finally{this.updateCharts(e)}},async searchPaymentsBy(e,t){e&&(this.searchData[e]=t),await this.fetchPayments()},clearDateSeach(){this.searchDate={from:null,to:null},delete this.paymentsTable.filter["time[ge]"],delete this.paymentsTable.filter["time[le]"],this.fetchPayments()},searchByDate(){"string"==typeof this.searchDate&&(this.searchDate={from:this.searchDate,to:this.searchDate}),this.searchDate.from&&(this.paymentsTable.filter["time[ge]"]=this.searchDate.from+"T00:00:00"),this.searchDate.to&&(this.paymentsTable.filter["time[le]"]=this.searchDate.to+"T23:59:59"),this.fetchPayments()},handleFilterChanged(){const{success:e,pending:t,failed:a,incoming:s,outgoing:i}=this.statusFilters;delete this.searchData["status[ne]"],delete this.searchData["status[eq]"],e&&t&&a||(e&&t?this.searchData["status[ne]"]="failed":e&&a?this.searchData["status[ne]"]="pending":a&&t?this.searchData["status[ne]"]="success":e?this.searchData["status[eq]"]="success":t?this.searchData["status[eq]"]="pending":a&&(this.searchData["status[eq]"]="failed")),delete this.searchData["amount[ge]"],delete this.searchData["amount[le]"],s&&i||(s?this.searchData["amount[ge]"]="0":i&&(this.searchData["amount[le]"]="0")),this.fetchPayments()},showDetailsToggle(e){return this.paymentDetails=e,this.showDetails=!this.showDetails},formatCurrency(e,t){try{return LNbits.utils.formatCurrency(e,t)}catch(t){return console.error(t),`${e} ???`}},shortify:(e,t=10)=>(valueLength=(e||"").length,valueLength<=t?e:`${e.substring(0,5)}...${e.substring(valueLength-5,valueLength)}`),async updateCharts(e){let t=LNbits.utils.prepareFilterQuery(this.paymentsTable,e);try{const{data:e}=await LNbits.api.request("GET",`/api/v1/payments/stats/count?${t}&count_by=status`);e.sort(((e,t)=>e.field-t.field)).reverse(),this.searchOptions.status=e.map((e=>e.field)),this.paymentsStatusChart.data.datasets[0].data=e.map((e=>e.total)),this.paymentsStatusChart.data.labels=[...this.searchOptions.status],this.paymentsStatusChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}try{const{data:e}=await LNbits.api.request("GET",`/api/v1/payments/stats/wallets?${t}`),a=e.map((e=>e.balance/e.payments_count)),s=Math.min(...a),i=Math.max(...a),n=e=>Math.floor(3+22*(e-s)/(i-s)),l=this.randomColors(20),o=e.map(((e,t)=>({data:[{x:e.payments_count,y:e.balance,r:n(Math.max(e.balance/e.payments_count,5))}],label:e.wallet_name,wallet_id:e.wallet_id,backgroundColor:l[t%100],hoverOffset:4})));this.paymentsWalletsChart.data.datasets=o,this.paymentsWalletsChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}try{const{data:e}=await LNbits.api.request("GET",`/api/v1/payments/stats/count?${t}&count_by=tag`);this.searchOptions.tag=e.map((e=>e.field)),this.searchOptions.status.sort(),this.paymentsTagsChart.data.datasets[0].data=e.map((e=>e.total)),this.paymentsTagsChart.data.labels=e.map((e=>e.field||"core")),this.paymentsTagsChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}try{const t=Object.entries(this.searchData).reduce(((e,[t,a])=>a?(e[t]=a,e):e),{}),a={...this.paymentsTable,filter:t},s=LNbits.utils.prepareFilterQuery(a,e);let{data:i}=await LNbits.api.request("GET",`/api/v1/payments/stats/daily?${s}`);const n=this.searchDate.from+"T00:00:00",l=this.searchDate.to+"T23:59:59";this.lnbitsBalance=i.length?i[i.length-1].balance:0,i=i.filter((e=>this.searchDate.from&&this.searchDate.to?e.date>=n&&e.date<=l:this.searchDate.from?e.date>=n:!this.searchDate.to||e.date<=l)),this.paymentsDailyChart.data.datasets=[{label:"Balance",data:i.map((e=>e.balance)),pointStyle:!1,borderWidth:2,tension:.7,fill:1},{label:"Fees",data:i.map((e=>e.fee)),pointStyle:!1,borderWidth:1,tension:.4,fill:1}],this.paymentsDailyChart.data.labels=i.map((e=>e.date.substring(0,10))),this.paymentsDailyChart.update(),this.paymentsBalanceInOutChart.data.datasets=[{label:"Incoming Payments Balance",data:i.map((e=>e.balance_in))},{label:"Outgoing Payments Balance",data:i.map((e=>e.balance_out))}],this.paymentsBalanceInOutChart.data.labels=i.map((e=>e.date.substring(0,10))),this.paymentsBalanceInOutChart.update(),this.paymentsCountInOutChart.data.datasets=[{label:"Incoming Payments Count",data:i.map((e=>e.count_in))},{label:"Outgoing Payments Count",data:i.map((e=>-e.count_out))}],this.paymentsCountInOutChart.data.labels=i.map((e=>e.date.substring(0,10))),this.paymentsCountInOutChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async initCharts(){const e=this.$q.localStorage.getItem("lnbits.payments.chartData")||{};this.chartData={...this.chartData,...e},this.chartsReady?(this.paymentsStatusChart=new Chart(this.$refs.paymentsStatusChart.getContext("2d"),{type:"doughnut",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchPaymentsBy("status",a.data.labels[e])}}},data:{datasets:[{label:"",data:[],backgroundColor:["rgb(0, 205, 86)","rgb(64, 72, 78)","rgb(255, 99, 132)"],hoverOffset:4}]}}),this.paymentsWalletsChart=new Chart(this.$refs.paymentsWalletsChart.getContext("2d"),{type:"bubble",options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1},title:{display:!1}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].datasetIndex;this.searchPaymentsBy("wallet_id",a.data.datasets[e].wallet_id)}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(20),hoverOffset:4}]}}),this.paymentsTagsChart=new Chart(this.$refs.paymentsTagsChart.getContext("2d"),{type:"pie",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1},legend:{display:!1,title:{display:!1,text:"Tags"}}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchPaymentsBy("tag",a.data.labels[e])}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(10),hoverOffset:4}]}}),this.paymentsDailyChart=new Chart(this.$refs.paymentsDailyChart.getContext("2d"),{type:"line",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1},legend:{display:!0,title:{display:!1,text:"Tags"}}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(10),hoverOffset:4}]}}),this.paymentsBalanceInOutChart=new Chart(this.$refs.paymentsBalanceInOutChart.getContext("2d"),{type:"bar",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1},legend:{display:!0,title:{display:!1,text:"Tags"}}},scales:{x:{stacked:!0},y:{stacked:!0}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(50),hoverOffset:4}]}}),this.paymentsCountInOutChart=new Chart(this.$refs.paymentsCountInOutChart.getContext("2d"),{type:"bar",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1},legend:{display:!0,title:{display:!1,text:""}}},scales:{x:{stacked:!0},y:{stacked:!0}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(80),hoverOffset:4}]}})):console.warn("Charts are not ready yet. Initialization delayed.")},saveChartsPreferences(){this.$q.localStorage.set("lnbits.payments.chartData",this.chartData)},randomColors(e=1){const t=[];for(let a=1;a<=10;a++)for(let s=1;s<=10;s++)t.push(`rgb(${s*e*33%200}, ${71*(a+s+e)%255}, ${(a+30*e)%255})`);return t}}},window.PageNode={mixins:[window.windowMixin],template:"#page-node",config:{globalProperties:{LNbits:LNbits,msg:"hello"}},data(){return{isSuperUser:!1,wallet:{},tab:"dashboard",payments:1e3,info:{},channel_stats:{},channels:{data:[],filter:""},activeBalance:{},ranks:{},peers:{data:[],filter:""},connectPeerDialog:{show:!1,data:{}},setFeeDialog:{show:!1,data:{fee_ppm:0,fee_base_msat:0}},openChannelDialog:{show:!1,data:{}},closeChannelDialog:{show:!1,data:{}},nodeInfoDialog:{show:!1,data:{}},transactionDetailsDialog:{show:!1,data:{}},states:[{label:"Active",value:"active",color:"green"},{label:"Pending",value:"pending",color:"orange"},{label:"Inactive",value:"inactive",color:"grey"},{label:"Closed",value:"closed",color:"red"}],stateFilters:[{label:"Active",value:"active"},{label:"Pending",value:"pending"}],paymentsTable:{data:[],columns:[{name:"pending",label:""},{name:"date",align:"left",label:this.$t("date"),field:"date",sortable:!0},{name:"sat",align:"right",label:this.$t("amount"),field:e=>this.formatMsat(e.amount),sortable:!0},{name:"fee",align:"right",label:this.$t("fee"),field:"fee"},{name:"destination",align:"right",label:"Destination",field:"destination"},{name:"memo",align:"left",label:this.$t("memo"),field:"memo"}],pagination:{rowsPerPage:10,page:1,rowsNumber:10},filter:null},invoiceTable:{data:[],columns:[{name:"pending",label:""},{name:"paid_at",field:"paid_at",align:"left",label:"Paid at",sortable:!0},{name:"expiry",label:this.$t("expiry"),field:"expiry",align:"left",sortable:!0},{name:"amount",label:this.$t("amount"),field:e=>this.formatMsat(e.amount),sortable:!0},{name:"memo",align:"left",label:this.$t("memo"),field:"memo"}],pagination:{rowsPerPage:10,page:1,rowsNumber:10},filter:null}}},created(){this.getInfo(),this.get1MLStats()},watch:{tab(e){"transactions"!==e||this.paymentsTable.data.length?"channels"!==e||this.channels.data.length||(this.getChannels(),this.getPeers()):(this.getPayments(),this.getInvoices())}},computed:{checkChanges(){return!_.isEqual(this.settings,this.formData)},filteredChannels(){return this.stateFilters?this.channels.data.filter((e=>this.stateFilters.find((({value:t})=>t==e.state)))):this.channels.data},totalBalance(){return this.filteredChannels.reduce(((e,t)=>(e.local_msat+=t.balance.local_msat,e.remote_msat+=t.balance.remote_msat,e.total_msat+=t.balance.total_msat,e)),{local_msat:0,remote_msat:0,total_msat:0})}},methods:{formatMsat:e=>LNbits.utils.formatMsat(e),nodeApi(e,t,a){const s=new URLSearchParams(a?.query);return LNbits.api.request(e,`/node/api/v1${t}?${s}`,{},a?.data).catch((e=>{LNbits.utils.notifyApiError(e)}))},getChannel(e){return this.nodeApi("GET",`/channels/${e}`).then((e=>{this.setFeeDialog.data.fee_ppm=e.data.fee_ppm,this.setFeeDialog.data.fee_base_msat=e.data.fee_base_msat}))},getChannels(){return this.nodeApi("GET","/channels").then((e=>{this.channels.data=e.data}))},getInfo(){return this.nodeApi("GET","/info").then((e=>{this.info=e.data,this.channel_stats=e.data.channel_stats})).catch((()=>{this.info={},this.channel_stats={}}))},get1MLStats(){return this.nodeApi("GET","/rank").then((e=>{this.ranks=e.data})).catch((()=>{this.ranks={}}))},getPayments(e){e&&(this.paymentsTable.pagination=e.pagination);let t=this.paymentsTable.pagination;const a={limit:t.rowsPerPage,offset:(t.page-1)*t.rowsPerPage??0};return this.nodeApi("GET","/payments",{query:a}).then((e=>{this.paymentsTable.data=e.data.data,this.paymentsTable.pagination.rowsNumber=e.data.total}))},getInvoices(e){e&&(this.invoiceTable.pagination=e.pagination);let t=this.invoiceTable.pagination;const a={limit:t.rowsPerPage,offset:(t.page-1)*t.rowsPerPage??0};return this.nodeApi("GET","/invoices",{query:a}).then((e=>{this.invoiceTable.data=e.data.data,this.invoiceTable.pagination.rowsNumber=e.data.total}))},getPeers(){return this.nodeApi("GET","/peers").then((e=>{this.peers.data=e.data}))},connectPeer(){this.nodeApi("POST","/peers",{data:this.connectPeerDialog.data}).then((()=>{this.connectPeerDialog.show=!1,this.getPeers()}))},disconnectPeer(e){LNbits.utils.confirmDialog("Do you really wanna disconnect this peer?").onOk((()=>{this.nodeApi("DELETE",`/peers/${e}`).then((e=>{Quasar.Notify.create({message:"Disconnected",icon:null}),this.needsRestart=!0,this.getPeers()}))}))},setChannelFee(e){this.nodeApi("PUT",`/channels/${e}`,{data:this.setFeeDialog.data}).then((e=>{this.setFeeDialog.show=!1,this.getChannels()})).catch(LNbits.utils.notifyApiError)},openChannel(){this.nodeApi("POST","/channels",{data:this.openChannelDialog.data}).then((e=>{this.openChannelDialog.show=!1,this.getChannels()})).catch((e=>{console.log(e)}))},showCloseChannelDialog(e){this.closeChannelDialog.show=!0,this.closeChannelDialog.data={force:!1,short_id:e.short_id,...e.point}},closeChannel(){this.nodeApi("DELETE","/channels",{query:this.closeChannelDialog.data}).then((e=>{this.closeChannelDialog.show=!1,this.getChannels()}))},showSetFeeDialog(e){this.setFeeDialog.show=!0,this.setFeeDialog.channel_id=e,this.getChannel(e)},showOpenChannelDialog(e){this.openChannelDialog.show=!0,this.openChannelDialog.data={peer_id:e,funding_amount:0}},showNodeInfoDialog(e){this.nodeInfoDialog.show=!0,this.nodeInfoDialog.data=e},showTransactionDetailsDialog(e){this.transactionDetailsDialog.show=!0,this.transactionDetailsDialog.data=e},shortenNodeId:e=>e?e.substring(0,5)+"..."+e.substring(e.length-5):"..."}},window.PageNodePublic={template:"#page-node-public",mixins:[window.windowMixin],data:()=>({enabled:!1,isSuperUser:!1,wallet:{},tab:"dashboard",payments:1e3,info:{},channel_stats:{},channels:[],activeBalance:{},ranks:{},peers:[],connectPeerDialog:{show:!1,data:{}},openChannelDialog:{show:!1,data:{}},closeChannelDialog:{show:!1,data:{}},nodeInfoDialog:{show:!1,data:{}},states:[{label:"Active",value:"active",color:"green"},{label:"Pending",value:"pending",color:"orange"},{label:"Inactive",value:"inactive",color:"grey"},{label:"Closed",value:"closed",color:"red"}]}),created(){this.getInfo(),this.get1MLStats()},methods:{formatMsat:e=>LNbits.utils.formatMsat(e),api:(e,t,a)=>LNbits.api.request(e,"/node/public/api/v1"+t,{},a),getInfo(){this.api("GET","/info",{}).then((e=>{this.info=e.data,this.channel_stats=e.data.channel_stats,this.enabled=!0})).catch((()=>{this.info={},this.channel_stats={}}))},get1MLStats(){this.api("GET","/rank",{}).then((e=>{this.ranks=e.data})).catch((()=>{this.ranks={}}))}}},window.PageAudit={template:"#page-audit",mixins:[window.windowMixin],data:()=>({chartsReady:!1,auditEntries:[],searchData:{user_id:"",ip_address:"",request_type:"",component:"",request_method:"",response_code:"",path:""},searchOptions:{component:[],request_method:[],response_code:[]},auditTable:{columns:[{name:"created_at",align:"center",label:"Date",field:"created_at",sortable:!0},{name:"duration",align:"left",label:"Duration (sec)",field:"duration",sortable:!0},{name:"component",align:"left",label:"Component",field:"component",sortable:!1},{name:"request_method",align:"left",label:"Method",field:"request_method",sortable:!1},{name:"response_code",align:"left",label:"Code",field:"response_code",sortable:!1},{name:"user_id",align:"left",label:"User Id",field:"user_id",sortable:!1},{name:"ip_address",align:"left",label:"IP Address",field:"ip_address",sortable:!1},{name:"path",align:"left",label:"Path",field:"path",sortable:!1}],pagination:{sortBy:"created_at",rowsPerPage:10,page:1,descending:!0,rowsNumber:10},search:null,hideEmpty:!0,loading:!1},auditDetailsDialog:{data:null,show:!1}}),async created(){},async mounted(){this.chartsReady=!0,await this.$nextTick(),this.initCharts(),await this.fetchAudit()},methods:{async fetchAudit(e){try{const t=LNbits.utils.prepareFilterQuery(this.auditTable,e),{data:a}=await LNbits.api.request("GET",`/audit/api/v1?${t}`);this.auditTable.pagination.rowsNumber=a.total,this.auditEntries=a.data,await this.fetchAuditStats(e)}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}finally{this.auditTable.loading=!1}},async fetchAuditStats(e){try{const t=LNbits.utils.prepareFilterQuery(this.auditTable,e),{data:a}=await LNbits.api.request("GET",`/audit/api/v1/stats?${t}`),s=a.request_method.map((e=>e.field));this.searchOptions.request_method=[...new Set(this.searchOptions.request_method.concat(s))],this.requestMethodChart.data.labels=s,this.requestMethodChart.data.datasets[0].data=a.request_method.map((e=>e.total)),this.requestMethodChart.update();const i=a.response_code.map((e=>e.field));this.searchOptions.response_code=[...new Set(this.searchOptions.response_code.concat(i))],this.responseCodeChart.data.labels=i,this.responseCodeChart.data.datasets[0].data=a.response_code.map((e=>e.total)),this.responseCodeChart.update();const n=a.component.map((e=>e.field));this.searchOptions.component=[...new Set(this.searchOptions.component.concat(n))],this.componentUseChart.data.labels=n,this.componentUseChart.data.datasets[0].data=a.component.map((e=>e.total)),this.componentUseChart.update(),this.longDurationChart.data.labels=a.long_duration.map((e=>e.field)),this.longDurationChart.data.datasets[0].data=a.long_duration.map((e=>e.total)),this.longDurationChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async searchAuditBy(e,t){e&&(this.searchData[e]=t),this.auditTable.filter=Object.entries(this.searchData).reduce(((e,[t,a])=>a?(e[t]=a,e):e),{}),await this.fetchAudit()},showDetailsDialog(e){const t=JSON.parse(e?.request_details||"");try{t.body&&(t.body=JSON.parse(t.body))}catch(e){}this.auditDetailsDialog.data=JSON.stringify(t,null,4),this.auditDetailsDialog.show=!0},shortify:e=>(valueLength=(e||"").length,valueLength<=10?e:`${e.substring(0,5)}...${e.substring(valueLength-5,valueLength)}`),async initCharts(){this.chartsReady?(this.responseCodeChart=new Chart(this.$refs.responseCodeChart.getContext("2d"),{type:"doughnut",options:{responsive:!0,plugins:{legend:{position:"bottom"},title:{display:!1,text:"HTTP Response Codes"}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchAuditBy("response_code",a.data.labels[e])}}},data:{datasets:[{label:"",data:[20,10],backgroundColor:["rgb(100, 99, 200)","rgb(54, 162, 235)","rgb(255, 205, 86)","rgb(255, 5, 86)","rgb(25, 205, 86)","rgb(255, 205, 250)"]}],labels:[]}}),this.requestMethodChart=new Chart(this.$refs.requestMethodChart.getContext("2d"),{type:"bar",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchAuditBy("request_method",a.data.labels[e])}}},data:{datasets:[{label:"",data:[],backgroundColor:["rgb(255, 99, 132)","rgb(54, 162, 235)","rgb(255, 205, 86)","rgb(255, 5, 86)","rgb(25, 205, 86)","rgb(255, 205, 250)"],hoverOffset:4}]}}),this.componentUseChart=new Chart(this.$refs.componentUseChart.getContext("2d"),{type:"pie",options:{responsive:!0,plugins:{legend:{position:"xxx"},title:{display:!1,text:"Components"}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchAuditBy("component",a.data.labels[e])}}},data:{datasets:[{data:[],backgroundColor:["rgb(255, 99, 132)","rgb(54, 162, 235)","rgb(255, 205, 86)","rgb(255, 5, 86)","rgb(25, 205, 86)","rgb(255, 205, 250)","rgb(100, 205, 250)","rgb(120, 205, 250)","rgb(140, 205, 250)","rgb(160, 205, 250)"],hoverOffset:4}]}}),this.longDurationChart=new Chart(this.$refs.longDurationChart.getContext("2d"),{type:"bar",options:{responsive:!0,indexAxis:"y",maintainAspectRatio:!1,plugins:{legend:{title:{display:!1,text:"Long Duration"}}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchAuditBy("path",a.data.labels[e])}}},data:{datasets:[{label:"",data:[],backgroundColor:["rgb(255, 99, 132)","rgb(54, 162, 235)","rgb(255, 205, 86)","rgb(255, 5, 86)","rgb(25, 205, 86)","rgb(255, 205, 250)","rgb(100, 205, 250)","rgb(120, 205, 250)","rgb(140, 205, 250)","rgb(160, 205, 250)"],hoverOffset:4}]}})):console.warn("Charts are not ready yet. Initialization delayed.")}}},window.PageWallet={template:"#page-wallet",mixins:[window.windowMixin],data(){return{parse:{show:!1,invoice:null,lnurlpay:null,lnurlauth:null,data:{request:"",amount:0,comment:"",internalMemo:null,unit:"sat"},paymentChecker:null,copy:{show:!1},camera:{show:!1,camera:"auto"}},receive:{show:!1,status:"pending",paymentReq:null,paymentHash:null,amountMsat:null,minMax:[0,21e14],lnurl:null,units:["sat",...this.currencies||[]],unit:"sat",fiatProvider:"",data:{amount:null,memo:"",internalMemo:null,payment_hash:null}},update:{name:null,currency:null},hasNfc:!1,nfcReaderAbortController:null,formattedFiatAmount:0,formattedExchange:null,paymentFilter:{"status[ne]":"failed"},chartConfig:Quasar.LocalStorage.getItem("lnbits.wallets.chartConfig")||{showPaymentInOutChart:!0,showBalanceChart:!0,showBalanceInOutChart:!0}}},computed:{canPay(){return!!this.parse.invoice&&(this.parse.invoice.expired?(Quasar.Notify.create({message:"Invoice has expired",color:"negative"}),!1):this.parse.invoice.sat<=this.g.wallet.sat)},formattedAmount(){return"sat"==this.receive.unit&&this.g.isSatsDenomination?LNbits.utils.formatMsat(this.receive.amountMsat)+" sat":LNbits.utils.formatCurrency(Number(this.receive.data.amount).toFixed(2),this.g.isSatsDenomination?this.receive.unit:this.g.denomination)},formattedSatAmount(){return LNbits.utils.formatMsat(this.receive.amountMsat)+" sat"}},methods:{handleSendLnurl(e){this.parse.data.request=e,this.parse.show=!0,this.lnurlScan()},msatoshiFormat:e=>LNbits.utils.formatSat(e/1e3),showReceiveDialog(){this.receive.show=!0,this.receive.status="pending",this.receive.paymentReq=null,this.receive.paymentHash=null,this.receive.data.amount=null,this.receive.data.memo=null,this.receive.data.internalMemo=null,this.receive.data.payment_hash=null,this.receive.unit=this.g.isFiatPriority&&this.g.wallet.currency||"sat",this.receive.minMax=[0,21e14],this.receive.lnurl=null},onReceiveDialogHide(){this.hasNfc&&this.nfcReaderAbortController.abort()},showParseDialog(){this.parse.show=!0,this.parse.invoice=null,this.parse.lnurlpay=null,this.parse.lnurlauth=null,this.parse.copy.show=window.isSecureContext&&void 0!==navigator.clipboard?.readText,this.parse.data.request="",this.parse.data.comment="",this.parse.data.internalMemo=null,this.parse.data.paymentChecker=null,this.parse.camera.show=!1},closeParseDialog(){setTimeout((()=>{clearInterval(this.parse.paymentChecker)}),1e4)},handleBalanceUpdate(e){this.g.wallet.sat=this.g.wallet.sat+e},createInvoice(){this.receive.status="loading",this.g.isSatsDenomination||(this.receive.data.amount=100*this.receive.data.amount),LNbits.api.createInvoice(this.g.wallet,this.receive.data.amount,this.receive.data.memo,this.receive.unit,this.receive.lnurlWithdraw,this.receive.fiatProvider,this.receive.data.internalMemo,this.receive.data.payment_hash).then((e=>{if(this.g.updatePayments=!this.g.updatePayments,this.receive.status="success",this.receive.paymentReq=e.data.bolt11,this.receive.fiatPaymentReq=e.data.extra?.fiat_payment_request,this.receive.amountMsat=e.data.amount,this.receive.paymentHash=e.data.payment_hash,this.receive.lnurl||this.readNfcTag(),this.receive.lnurl&&null!==e.data.extra?.lnurl_response){!1===e.data.extra.lnurl_response&&(e.data.extra.lnurl_response="Unable to connect");const t=this.receive.lnurl.callback.split("/")[2];if("string"==typeof e.data.extra.lnurl_response)return void Quasar.Notify.create({timeout:5e3,type:"warning",message:`${t} lnurl-withdraw call failed.`,caption:e.data.extra.lnurl_response});!0===e.data.extra.lnurl_response&&Quasar.Notify.create({timeout:3e3,message:`Invoice sent to ${t}!`,spinner:!0})}})).catch((e=>{LNbits.utils.notifyApiError(e),this.receive.status="pending"}))},lnurlScan(){LNbits.api.request("POST","/api/v1/lnurlscan",this.g.wallet.adminkey,{lnurl:this.parse.data.request}).then((e=>{const t=e.data;if("ERROR"!==t.status){if("payRequest"===t.tag)this.parse.lnurlpay=Object.freeze(t),this.parse.data.amount=t.minSendable/1e3;else if("login"===t.tag)this.parse.lnurlauth=Object.freeze(t);else if("withdrawRequest"===t.tag){this.parse.show=!1,this.receive.show=!0,this.receive.lnurlWithdraw=Object.freeze(t),this.receive.status="pending",this.receive.paymentReq=null,this.receive.paymentHash=null,this.receive.data.amount=t.maxWithdrawable/1e3,this.receive.data.memo=t.defaultDescription,this.receive.minMax=[t.minWithdrawable/1e3,t.maxWithdrawable/1e3];const e=t.callback.split("/")[2];this.receive.lnurl={domain:e,callback:t.callback,fixed:t.fixed}}}else Quasar.Notify.create({timeout:5e3,type:"warning",message:"lnurl scan failed.",caption:t.reason})})).catch((e=>{LNbits.utils.notifyApiError(e)}))},decodeQR(e){this.parse.data.request=e,this.decodeRequest(),this.parse.camera.show=!1},isLnurl:e=>e.toLowerCase().startsWith("lnurl1")||e.startsWith("lnurlp://")||e.startsWith("lnurlw://")||e.startsWith("lnurlauth://")||e.match(/[\w.+-~_]+@[\w.+-~_]/),decodeRequest(){this.parse.show=!0,this.parse.data.request=this.parse.data.request.trim();const e=this.parse.data.request.toLowerCase();if(e.startsWith("lightning:")?this.parse.data.request=this.parse.data.request.slice(10):e.startsWith("lnurl:")?this.parse.data.request=this.parse.data.request.slice(6):e.includes("lightning=lnurl1")&&(this.parse.data.request=this.parse.data.request.split("lightning=")[1].split("&")[0]),this.isLnurl(this.parse.data.request))return void this.lnurlScan();let t;this.parse.data.request.toLowerCase().includes("lightning")&&(this.parse.data.request=this.parse.data.request.split("lightning=")[1],this.parse.data.request.includes("&")&&(this.parse.data.request=this.parse.data.request.split("&")[0]));try{t=decode(this.parse.data.request)}catch(e){return Quasar.Notify.create({timeout:3e3,type:"warning",message:e+".",caption:"400 BAD REQUEST"}),void(this.parse.show=!1)}let a={msat:t.human_readable_part.amount,sat:t.human_readable_part.amount/1e3,fsat:LNbits.utils.formatSat(t.human_readable_part.amount/1e3),bolt11:this.parse.data.request};_.each(t.data.tags,(e=>{if(_.isObject(e)&&_.has(e,"description"))if("payment_hash"===e.description)a.hash=e.value;else if("description"===e.description)a.description=e.value;else if("expiry"===e.description){const s=new Date(1e3*(t.data.time_stamp+e.value)),i=new Date(1e3*t.data.time_stamp);a.expireDate=Quasar.date.formatDate(s,"YYYY-MM-DDTHH:mm:ss.SSSZ"),a.createdDate=Quasar.date.formatDate(i,"YYYY-MM-DDTHH:mm:ss.SSSZ"),a.expireDateFrom=moment.utc(s).local().fromNow(),a.createdDateFrom=moment.utc(i).local().fromNow(),a.expired=!1}})),this.g.wallet.currency&&(a.fiatAmount=LNbits.utils.formatCurrency((a.sat/1e8*this.g.exchangeRate).toFixed(2),this.g.wallet.currency)),this.parse.invoice=Object.freeze(a)},payInvoice(){const e=Quasar.Notify.create({timeout:0,message:this.$t("payment_processing")});LNbits.api.payInvoice(this.g.wallet,this.parse.data.request,this.parse.data.internalMemo).then((t=>{e(),this.g.updatePayments=!this.g.updatePayments,this.parse.show=!1,"success"==t.data.status&&Quasar.Notify.create({type:"positive",message:this.$t("payment_successful")}),"pending"==t.data.status&&Quasar.Notify.create({type:"info",message:this.$t("payment_pending")})})).catch((t=>{e(),LNbits.utils.notifyApiError(t),this.g.updatePayments=!this.g.updatePayments,this.parse.show=!1}))},payLnurl(){LNbits.api.request("post","/api/v1/payments/lnurl",this.g.wallet.adminkey,{res:this.parse.lnurlpay,lnurl:this.parse.data.request,unit:this.parse.data.unit,amount:1e3*this.parse.data.amount,comment:this.parse.data.comment,internalMemo:this.parse.data.internalMemo}).then((e=>{if(this.parse.show=!1,e.data.extra.success_action){const t=JSON.parse(e.data.extra.success_action);switch(t.tag){case"url":Quasar.Notify.create({message:`${t.url}`,caption:t.description,html:!0,type:"positive",timeout:0,closeBtn:!0});break;case"message":Quasar.Notify.create({message:t.message,type:"positive",timeout:0,closeBtn:!0});break;case"aes":this.utils.decryptLnurlPayAES(t,e.data.preimage),Quasar.Notify.create({message:value,caption:extra.success_action.description,html:!0,type:"positive",timeout:0,closeBtn:!0})}}})).catch(LNbits.utils.notifyApiError)},authLnurl(){const e=Quasar.Notify.create({timeout:10,message:"Performing authentication..."});LNbits.api.request("post","/api/v1/lnurlauth",wallet.adminkey,this.parse.lnurlauth).then((t=>{e(),Quasar.Notify.create({message:"Authentication successful.",type:"positive",timeout:3500}),this.parse.show=!1})).catch((e=>{e.response.data.reason?Quasar.Notify.create({message:`Authentication failed. ${this.parse.lnurlauth.callback} says:`,caption:e.response.data.reason,type:"warning",timeout:5e3}):LNbits.utils.notifyApiError(e)}))},updateWallet(e){LNbits.api.request("PATCH","/api/v1/wallet",this.g.wallet.adminkey,e).then((e=>{this.g.wallet={...this.g.wallet,...e.data};const t=this.g.user.wallets.findIndex((t=>t.id===e.data.id));-1!==t&&(this.g.user.wallets[t]={...this.g.user.wallets[t],...e.data}),Quasar.Notify.create({message:"Wallet updated.",type:"positive",timeout:3500})})).catch((e=>{LNbits.utils.notifyApiError(e)}))},pasteToTextArea(){this.$refs.textArea.focus(),navigator.clipboard.readText().then((e=>{this.parse.data.request=e.trim()}))},readNfcTag(){try{if("undefined"==typeof NDEFReader)return void console.debug("NFC not supported on this device or browser.");const e=new NDEFReader;this.nfcReaderAbortController=new AbortController,this.nfcReaderAbortController.signal.onabort=e=>{console.debug("All NFC Read operations have been aborted.")},this.hasNfc=!0;const t=Quasar.Notify.create({message:"Tap your NFC tag to pay this invoice with LNURLw."});return e.scan({signal:this.nfcReaderAbortController.signal}).then((()=>{e.onreadingerror=()=>{Quasar.Notify.create({type:"negative",message:"There was an error reading this NFC tag."})},e.onreading=({message:e})=>{const a=new TextDecoder("utf-8"),s=e.records.find((e=>-1!==a.decode(e.data).toUpperCase().indexOf("LNURLW")));if(s){t(),Quasar.Notify.create({type:"positive",message:"NFC tag read successfully."});const e=a.decode(s.data);this.payInvoiceWithNfc(e)}else Quasar.Notify.create({type:"warning",message:"NFC tag does not have LNURLw record."})}}))}catch(e){Quasar.Notify.create({type:"negative",message:e?e.toString():"An unexpected error has occurred."})}},payInvoiceWithNfc(e){const t=Quasar.Notify.create({timeout:0,spinner:!0,message:this.$t("processing_payment")});LNbits.api.request("POST",`/api/v1/payments/${this.receive.paymentReq}/pay-with-nfc`,this.g.wallet.adminkey,{lnurl_w:e}).then((e=>{t(),e.data.success?Quasar.Notify.create({type:"positive",message:"Payment successful"}):Quasar.Notify.create({type:"negative",message:e.data.detail||"Payment failed"})})).catch((e=>{t(),LNbits.utils.notifyApiError(e)}))}},created(){const e=new URLSearchParams(window.location.search);(e.has("lightning")||e.has("lnurl"))&&(this.parse.data.request=e.get("lightning")||e.get("lnurl"),this.decodeRequest(),this.parse.show=!0);const t=this.g.user.wallets.find((e=>e.id===this.$route.params.id));t?(this.g.wallet=t,this.g.lastActiveWallet=t.id,this.$q.localStorage.setItem("lnbits.lastActiveWallet",t.id),this.$router.replace(`/wallet/${t.id}`)):(this.g.errorCode=404,this.g.errorMessage="Wallet not found.",this.$router.push("/error"))},watch:{"g.updatePaymentsHash"(){this.receive.show=!1},"g.updatePayments"(){this.parse.show=!1,this.g.wallet.currency&&this.$q.localStorage.getItem("lnbits.exchangeRate."+this.g.wallet.currency)&&(this.g.exchangeRate=this.$q.localStorage.getItem("lnbits.exchangeRate."+this.g.wallet.currency),this.g.fiatBalance=this.g.exchangeRate/1e8*this.g.wallet.sat)},"g.wallet"(){this.g.wallet.currency?(this.g.fiatTracking=!0,this.g.fiatBalance=this.g.exchangeRate/1e8*this.g.wallet.sat):(this.g.fiatBalance=0,this.g.fiatTracking=!1)},"g.isFiatPriority"(){this.receive.unit=this.g.isFiatPriority?this.g.wallet.currency:"sat"},"g.fiatBalance"(){this.formattedFiatAmount=LNbits.utils.formatCurrency(this.g.fiatBalance.toFixed(2),this.g.wallet.currency)},"g.exchangeRate"(){this.g.fiatTracking&&this.g.wallet.currency&&(this.g.fiatBalance=this.g.exchangeRate/1e8*this.g.wallet.sat,this.formattedExchange=LNbits.utils.formatCurrency(this.g.exchangeRate,this.g.wallet.currency))}}},window.PageWallets={template:"#page-wallets",mixins:[window.windowMixin],data:()=>({user:null,tab:"wallets",wallets:[],addWalletDialog:{show:!1},walletsTable:{columns:[{name:"name",align:"left",label:"Name",field:"name",sortable:!0},{name:"currency",align:"center",label:"Currency",field:"currency",sortable:!0},{name:"updated_at",align:"right",label:"Last Updated",field:"updated_at",sortable:!0}],pagination:{sortBy:"updated_at",rowsPerPage:12,page:1,descending:!0,rowsNumber:10},search:"",hideEmpty:!0,loading:!1}}),watch:{"walletsTable.search":{handler(){const e={};this.walletsTable.search&&(e.search=this.walletsTable.search),this.getUserWallets()}}},methods:{async getUserWallets(e){try{this.walletsTable.loading=!0;const t=LNbits.utils.prepareFilterQuery(this.walletsTable,e),{data:a}=await LNbits.api.request("GET",`/api/v1/wallet/paginated?${t}`,null);this.wallets=a.data,this.walletsTable.pagination.rowsNumber=a.total}catch(e){LNbits.utils.notifyApiError(e)}finally{this.walletsTable.loading=!1}},goToWallet(e){this.$router.push({path:"/wallet",query:{wal:e}})},formattedFiatAmount:(e,t)=>LNbits.utils.formatCurrency(Number(e).toFixed(2),t),formattedSatAmount:e=>LNbits.utils.formatMsat(e)+" sat"},async created(){await this.getUserWallets()}},window.PageUsers={template:"#page-users",mixins:[window.windowMixin],data:()=>({paymentsWallet:{},cancel:{},users:[],wallets:[],searchData:{user:"",username:"",email:"",pubkey:""},paymentPage:{show:!1},activeWallet:{userId:null,show:!1},activeUser:{data:null,showUserId:!1,show:!1},createWalletDialog:{data:{},show:!1},walletTable:{columns:[{name:"name",align:"left",label:"Name",field:"name"},{name:"id",align:"left",label:"Wallet Id",field:"id"},{name:"currency",align:"left",label:"Currency",field:"currency"},{name:"balance_msat",align:"left",label:"Balance",field:"balance_msat"}],pagination:{sortBy:"name",rowsPerPage:10,page:1,descending:!0,rowsNumber:10},search:null,hideEmpty:!0,loading:!1},usersTable:{columns:[{name:"admin",align:"left",label:"Admin",field:"admin",sortable:!1},{name:"wallet_id",align:"left",label:"Wallets",field:"wallet_id",sortable:!1},{name:"id",align:"left",label:"User Id",field:"id",sortable:!1},{name:"username",align:"left",label:"Username",field:"username",sortable:!1},{name:"email",align:"left",label:"Email",field:"email",sortable:!1},{name:"pubkey",align:"left",label:"Public Key",field:"pubkey",sortable:!1},{name:"balance_msat",align:"left",label:"Balance",field:"balance_msat",sortable:!1},{name:"transaction_count",align:"left",label:"Payments",field:"transaction_count",sortable:!1},{name:"last_payment",align:"left",label:"Last Payment",field:"last_payment",sortable:!1}],pagination:{sortBy:"created_at",rowsPerPage:10,page:1,descending:!0,rowsNumber:10},sortFields:[{name:"id",label:"User ID"},{name:"username",label:"Username"},{name:"email",label:"Email"},{name:"pubkey",label:"Public Key"},{name:"created_at",label:"Creation Date"},{name:"updated_at",label:"Last Updated"}],search:null,hideEmpty:!0,loading:!1}}),watch:{"usersTable.hideEmpty":function(e,t){this.usersTable.filter=e?{"transaction_count[gt]":0}:{},this.fetchUsers()}},created(){this.fetchUsers()},methods:{formatSat:e=>LNbits.utils.formatSat(Math.floor(e/1e3)),backToUsersPage(){this.activeUser.show=!1,this.paymentPage.show=!1,this.activeWallet.show=!1,this.fetchUsers()},handleBalanceUpdate(){this.fetchWallets(this.activeWallet.userId)},resetPassword(e){return LNbits.api.request("PUT",`/users/api/v1/user/${e}/reset_password`).then((e=>{LNbits.utils.confirmDialog(this.$t("reset_key_generated")+" "+this.$t("reset_key_copy")).onOk((()=>{const t=window.location.origin+"?reset_key="+e.data;this.utils.copyText(t)}))})).catch(LNbits.utils.notifyApiError)},sortByColumn(e){this.usersTable.pagination.sortBy===e?this.usersTable.pagination.descending=!this.usersTable.pagination.descending:(this.usersTable.pagination.sortBy=e,this.usersTable.pagination.descending=!1),this.fetchUsers()},createUser(){LNbits.api.request("POST","/users/api/v1/user",null,this.activeUser.data).then((e=>{Quasar.Notify.create({type:"positive",message:"User created!",icon:null}),this.activeUser.setPassword=!0,this.activeUser.data=e.data,this.fetchUsers()})).catch(LNbits.utils.notifyApiError)},updateUser(){LNbits.api.request("PUT",`/users/api/v1/user/${this.activeUser.data.id}`,null,this.activeUser.data).then((()=>{Quasar.Notify.create({type:"positive",message:"User updated!",icon:null}),this.activeUser.data=null,this.activeUser.show=!1,this.fetchUsers()})).catch(LNbits.utils.notifyApiError)},createWallet(){const e=this.activeWallet.userId;e?LNbits.api.request("POST",`/users/api/v1/user/${e}/wallet`,null,this.createWalletDialog.data).then((()=>{this.fetchWallets(e),Quasar.Notify.create({type:"positive",message:"Wallet created!"})})).catch(LNbits.utils.notifyApiError):Quasar.Notify.create({type:"warning",message:"No user selected!",icon:null})},deleteUser(e){LNbits.utils.confirmDialog("Are you sure you want to delete this user?").onOk((()=>{LNbits.api.request("DELETE",`/users/api/v1/user/${e}`).then((()=>{this.fetchUsers(),Quasar.Notify.create({type:"positive",message:"User deleted!",icon:null}),this.activeUser.data=null,this.activeUser.show=!1})).catch(LNbits.utils.notifyApiError)}))},undeleteUserWallet(e,t){LNbits.api.request("PUT",`/users/api/v1/user/${e}/wallet/${t}/undelete`).then((()=>{this.fetchWallets(e),Quasar.Notify.create({type:"positive",message:"Undeleted user wallet!",icon:null})})).catch(LNbits.utils.notifyApiError)},deleteUserWallet(e,t,a){const s=a?"Wallet is already deleted, are you sure you want to permanently delete this user wallet?":"Are you sure you want to delete this user wallet?";LNbits.utils.confirmDialog(s).onOk((()=>{LNbits.api.request("DELETE",`/users/api/v1/user/${e}/wallet/${t}`).then((()=>{this.fetchWallets(e),Quasar.Notify.create({type:"positive",message:"User wallet deleted!",icon:null})})).catch(LNbits.utils.notifyApiError)}))},deleteAllUserWallets(e){LNbits.utils.confirmDialog(this.$t("confirm_delete_all_wallets")).onOk((()=>{LNbits.api.request("DELETE",`/users/api/v1/user/${e}/wallets`).then((t=>{Quasar.Notify.create({type:"positive",message:t.data.message,icon:null}),this.fetchWallets(e)})).catch(LNbits.utils.notifyApiError)}))},copyWalletLink(e){const t=`${window.location.origin}/wallet?usr=${this.activeWallet.userId}&wal=${e}`;this.utils.copyText(t)},fetchUsers(e){this.relaxFilterForFields(["username","email"]);const t=LNbits.utils.prepareFilterQuery(this.usersTable,e);LNbits.api.request("GET",`/users/api/v1/user?${t}`).then((e=>{this.usersTable.loading=!1,this.usersTable.pagination.rowsNumber=e.data.total,this.users=e.data.data})).catch(LNbits.utils.notifyApiError)},fetchWallets(e){return LNbits.api.request("GET",`/users/api/v1/user/${e}/wallet`).then((t=>{this.wallets=t.data,this.activeWallet.userId=e,this.activeWallet.show=!0})).catch(LNbits.utils.notifyApiError)},relaxFilterForFields(e=[]){e.forEach((e=>{const t=this.usersTable?.filter?.[e];t&&this.usersTable.filter[e]&&(this.usersTable.filter[`${e}[like]`]=t,delete this.usersTable.filter[e])}))},updateWallet(e){LNbits.api.request("PATCH","/api/v1/wallet",e.adminkey,{name:e.name}).then((()=>{e.editable=!1,Quasar.Notify.create({message:"Wallet name updated.",type:"positive",timeout:3500})})).catch((e=>{LNbits.utils.notifyApiError(e)}))},toggleAdmin(e){LNbits.api.request("GET",`/users/api/v1/user/${e}/admin`).then((()=>{this.fetchUsers(),Quasar.Notify.create({type:"positive",message:"Toggled admin!",icon:null})})).catch(LNbits.utils.notifyApiError)},async showAccountPage(e){if(this.activeUser.showPassword=!1,this.activeUser.showUserId=!1,this.activeUser.setPassword=!1,!e)return this.activeUser.data={extra:{}},void(this.activeUser.show=!0);try{const{data:t}=await LNbits.api.request("GET",`/users/api/v1/user/${e}`);this.activeUser.data=t,this.activeUser.show=!0}catch(e){console.warn(e),Quasar.Notify.create({type:"warning",message:"Failed to get user!"}),this.activeUser.show=!1}},async showWalletPayments(e){this.activeUser.show=!1,await this.fetchWallets(this.users[0].id),await this.showPayments(e)},showPayments(e){this.paymentsWallet=this.wallets.find((t=>t.id===e)),this.paymentPage.show=!0},searchUserBy(e){const t=this.searchData[e];this.usersTable.filter={},t&&(this.usersTable.filter[e]=t),this.fetchUsers()},shortify:e=>(valueLength=(e||"").length,valueLength<=10?e:`${e.substring(0,5)}...${e.substring(valueLength-5,valueLength)}`)}},window.PageAccount={template:"#page-account",mixins:[window.windowMixin],data(){return{user:null,untouchedUser:null,hasUsername:!1,showUserId:!1,themeOptions:[{name:"bitcoin",color:"deep-orange"},{name:"mint",color:"green"},{name:"autumn",color:"brown"},{name:"monochrome",color:"grey"},{name:"salvador",color:"blue-10"},{name:"freedom",color:"pink-13"},{name:"cyber",color:"light-green-9"},{name:"flamingo",color:"pink-3"}],reactionOptions:["None","confettiBothSides","confettiFireworks","confettiStars","confettiTop"],borderOptions:["retro-border","hard-border","neon-border","no-border"],tab:"user",credentialsData:{show:!1,oldPassword:null,newPassword:null,newPasswordRepeat:null,username:null,pubkey:null},apiAcl:{showNewAclDialog:!1,showPasswordDialog:!1,showNewTokenDialog:!1,data:[],passwordGuardedFunction:null,newAclName:"",newTokenName:"",password:"",apiToken:null,selectedTokenId:null,columns:[{name:"Name",align:"left",label:this.$t("Name"),field:"Name",sortable:!1},{name:"path",align:"left",label:this.$t("path"),field:"path",sortable:!1},{name:"read",align:"left",label:this.$t("read"),field:"read",sortable:!1},{name:"write",align:"left",label:this.$t("write"),field:"write",sortable:!1}],pagination:{rowsPerPage:100,page:1}},selectedApiAcl:{id:null,name:null,endpoints:[],token_id_list:[],allRead:!1,allWrite:!1},assets:[],assetsTable:{loading:!1,columns:[{name:"name",align:"left",label:this.$t("Name"),field:"name",sortable:!0},{name:"created_at",align:"left",label:this.$t("created_at"),field:"created_at",sortable:!0}],pagination:{rowsPerPage:6,page:1}},assetsUploadToPublic:!1,notifications:{nostr:{identifier:""}},labels:[],labelsDialog:{show:!1,data:{name:"",description:"",color:"#000000"}},labelsTable:{loading:!1,columns:[{name:"actions",align:"left"},{name:"name",align:"left",label:this.$t("Name"),field:"name",sortable:!0},{name:"description",align:"left",label:this.$t("description"),field:"description"},{name:"color",align:"left",label:this.$t("color"),field:"color"}],pagination:{rowsPerPage:6,page:1}}}},watch:{"assetsTable.search":{handler(){const e={};this.assetsTable.search&&(e.search=this.assetsTable.search),this.getUserAssets()}}},computed:{isUserTouched(){return JSON.stringify(this.user)!==JSON.stringify(this.untouchedUser)}},methods:{activeLanguage:e=>window.i18n.global.locale===e,changeLanguage(e){window.i18n.global.locale=e,this.$q.localStorage.set("lnbits.lang",e)},async updateAccount(){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/update",null,{user_id:this.user.id,username:this.user.username,email:this.user.email,extra:this.user.extra});this.user=e,this.untouchedUser=JSON.parse(JSON.stringify(e)),this.hasUsername=!!e.username,Quasar.Notify.create({type:"positive",message:"Account updated."})}catch(e){LNbits.utils.notifyApiError(e)}},disableUpdatePassword(){return!this.credentialsData.newPassword||!this.credentialsData.newPasswordRepeat||this.credentialsData.newPassword!==this.credentialsData.newPasswordRepeat},async updatePassword(){if(this.credentialsData.username)try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/password",null,{user_id:this.user.id,username:this.credentialsData.username,password_old:this.credentialsData.oldPassword,password:this.credentialsData.newPassword,password_repeat:this.credentialsData.newPasswordRepeat});this.user=e,this.untouchedUser=JSON.parse(JSON.stringify(e)),this.hasUsername=!!e.username,this.credentialsData.show=!1,Quasar.Notify.create({type:"positive",message:"Password updated."})}catch(e){LNbits.utils.notifyApiError(e)}else Quasar.Notify.create({type:"warning",message:"Please set a username."})},async updatePubkey(){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/pubkey",null,{user_id:this.user.id,pubkey:this.credentialsData.pubkey});this.user=e,this.untouchedUser=JSON.parse(JSON.stringify(e)),this.hasUsername=!!e.username,this.credentialsData.show=!1,this.$q.notify({type:"positive",message:"Public key updated."})}catch(e){LNbits.utils.notifyApiError(e)}},showUpdateCredentials(){this.credentialsData={show:!0,oldPassword:null,username:this.user.username,pubkey:this.user.pubkey,newPassword:null,newPasswordRepeat:null}},newApiAclDialog(){this.apiAcl.newAclName=null,this.apiAcl.showNewAclDialog=!0},newTokenAclDialog(){this.apiAcl.newTokenName=null,this.apiAcl.newTokenExpiry=null,this.apiAcl.showNewTokenDialog=!0},handleApiACLSelected(e){this.selectedApiAcl={id:null,name:null,endpoints:[],token_id_list:[]},this.apiAcl.selectedTokenId=null,e&&setTimeout((()=>{const t=this.apiAcl.data.find((t=>t.id===e));this.selectedApiAcl&&(this.selectedApiAcl={...t},this.selectedApiAcl.allRead=this.selectedApiAcl.endpoints.every((e=>e.read)),this.selectedApiAcl.allWrite=this.selectedApiAcl.endpoints.every((e=>e.write)))}))},handleAllEndpointsReadAccess(){this.selectedApiAcl.endpoints.forEach((e=>e.read=this.selectedApiAcl.allRead))},handleAllEndpointsWriteAccess(){this.selectedApiAcl.endpoints.forEach((e=>e.write=this.selectedApiAcl.allWrite))},async getApiACLs(){try{const{data:e}=await LNbits.api.request("GET","/api/v1/auth/acl",null);this.apiAcl.data=e.access_control_list}catch(e){LNbits.utils.notifyApiError(e)}},askPasswordAndRunFunction(e){this.apiAcl.passwordGuardedFunction=e,this.apiAcl.showPasswordDialog=!0},runPasswordGuardedFunction(){this.apiAcl.showPasswordDialog=!1;const e=this.apiAcl.passwordGuardedFunction;e&&this[e]()},async addApiACL(){if(this.apiAcl.newAclName){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/acl",null,{id:this.apiAcl.newAclName,name:this.apiAcl.newAclName,password:this.apiAcl.password});this.apiAcl.data=e.access_control_list;const t=this.apiAcl.data.find((e=>e.name===this.apiAcl.newAclName));this.handleApiACLSelected(t.id),this.apiAcl.showNewAclDialog=!1,this.$q.notify({type:"positive",message:"Access Control List created."})}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.name="",this.apiAcl.password=""}this.apiAcl.showNewAclDialog=!1}else this.$q.notify({type:"warning",message:"Name is required."})},async updateApiACLs(){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/acl",null,{id:this.user.id,password:this.apiAcl.password,...this.selectedApiAcl});this.apiAcl.data=e.access_control_list}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.password=""}},async deleteApiACL(){if(this.selectedApiAcl.id){try{await LNbits.api.request("DELETE","/api/v1/auth/acl",null,{id:this.selectedApiAcl.id,password:this.apiAcl.password}),this.$q.notify({type:"positive",message:"Access Control List deleted."})}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.password=""}this.apiAcl.data=this.apiAcl.data.filter((e=>e.id!==this.selectedApiAcl.id)),this.handleApiACLSelected(this.apiAcl.data[0]?.id)}},async generateApiToken(){if(!this.selectedApiAcl.id)return;const e=new Date(this.apiAcl.newTokenExpiry)-new Date;try{const{data:t}=await LNbits.api.request("POST","/api/v1/auth/acl/token",null,{acl_id:this.selectedApiAcl.id,token_name:this.apiAcl.newTokenName,password:this.apiAcl.password,expiration_time_minutes:Math.trunc(e/6e4)});this.apiAcl.apiToken=t.api_token,this.apiAcl.selectedTokenId=t.id,Quasar.Notify.create({type:"positive",message:"Token Generated."}),await this.getApiACLs(),this.handleApiACLSelected(this.selectedApiAcl.id),this.apiAcl.showNewTokenDialog=!1}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.password=""}},async deleteToken(){if(this.apiAcl.selectedTokenId)try{await LNbits.api.request("DELETE","/api/v1/auth/acl/token",null,{id:this.apiAcl.selectedTokenId,acl_id:this.selectedApiAcl.id,password:this.apiAcl.password}),this.$q.notify({type:"positive",message:"Token deleted."}),this.selectedApiAcl.token_id_list=this.selectedApiAcl.token_id_list.filter((e=>e.id!==this.apiAcl.selectedTokenId)),this.apiAcl.selectedTokenId=null}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.password=""}},async getUserAssets(e){try{this.assetsTable.loading=!0;const t=LNbits.utils.prepareFilterQuery(this.assetsTable,e),{data:a}=await LNbits.api.request("GET",`/api/v1/assets/paginated?${t}`,null);this.assets=a.data,this.assetsTable.pagination.rowsNumber=a.total}catch(e){LNbits.utils.notifyApiError(e)}finally{this.assetsTable.loading=!1}},onImageInput(e){const t=e.target.files[0];t&&this.uploadAsset(t)},async uploadAsset(e){const t=new FormData;t.append("file",e);try{await LNbits.api.request("POST",`/api/v1/assets?public_asset=${this.assetsUploadToPublic}`,null,t,{headers:{"Content-Type":"multipart/form-data"}}),this.$q.notify({type:"positive",message:"Upload successful!",icon:null}),await this.getUserAssets()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async deleteAsset(e){LNbits.utils.confirmDialog("Are you sure you want to delete this asset?").onOk((async()=>{try{await LNbits.api.request("DELETE",`/api/v1/assets/${e.id}`,null),this.$q.notify({type:"positive",message:"Asset deleted."}),await this.getUserAssets()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}}))},async toggleAssetPublicAccess(e){try{await LNbits.api.request("PUT",`/api/v1/assets/${e.id}`,null,{is_public:!e.is_public}),this.$q.notify({type:"positive",message:"Update successful!",icon:null}),await this.getUserAssets()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},copyAssetLinkToClipboard(e){const t=`${window.location.origin}/api/v1/assets/${e.id}/binary`;this.utils.copyText(t)},addUserLabel(){if(!this.labelsDialog.data.name)return void this.$q.notify({type:"warning",message:"Name is required."});if(!this.labelsDialog.data.color)return void this.$q.notify({type:"warning",message:"Color is required."});this.user.extra.labels=this.user.extra.labels||[];if(!this.user.extra.labels.find((e=>e.name===this.labelsDialog.data.name)))return this.user.extra.labels.unshift({...this.labelsDialog.data}),this.labelsDialog.show=!1,!0;this.$q.notify({type:"warning",message:"A label with this name already exists."})},openAddLabelDialog(){this.labelsDialog.data={name:"",description:"",color:"#000000"},this.labelsDialog.show=!0},openEditLabelDialog(e){this.labelsDialog.data={name:e.name,description:e.description,color:e.color},this.labelsDialog.show=!0},updateUserLabel(){const e=this.labelsDialog.data,t=JSON.parse(JSON.stringify(this.user.extra.labels));this.user.extra.labels=this.user.extra.labels.filter((t=>t.name!==e.name));this.addUserLabel()||(this.user.extra.labels=t),this.labelsDialog.show=!1},deleteUserLabel(e){LNbits.utils.confirmDialog("Are you sure you want to delete this label?").onOk((()=>{this.user.extra.labels=this.user.extra.labels.filter((t=>t.name!==e.name))}))}},async created(){try{const{data:e}=await LNbits.api.getAuthenticatedUser();this.user=e,this.untouchedUser=JSON.parse(JSON.stringify(e)),this.hasUsername=!!e.username,this.user.extra||(this.user.extra={})}catch(e){LNbits.utils.notifyApiError(e)}const e=window.location.hash.replace("#","");e&&(this.tab=e),await this.getApiACLs(),await this.getUserAssets(),this.themeOptions=this.themeOptions.filter((e=>this.LNBITS_THEME_OPTIONS.includes(e.name)))}},window.PageAdmin={template:"#page-admin",mixins:[windowMixin],data:()=>({tab:"funding",settings:{},formData:{lnbits_exchange_rate_providers:[],lnbits_audit_exclude_paths:[],lnbits_audit_include_paths:[],lnbits_audit_http_response_codes:[]},isSuperUser:!1,needsRestart:!1}),async created(){await this.getSettings();const e=window.location.hash.replace("#","");e&&(this.tab=e)},computed:{checkChanges(){return!_.isEqual(this.settings,this.formData)}},methods:{getDefaultSetting(e){LNbits.api.request("GET",`/admin/api/v1/settings/default?field_name=${e}`).then((t=>{this.formData[e]=t.data.default_value})).catch((function(e){LNbits.utils.notifyApiError(e)}))},restartServer(){LNbits.api.request("GET","/admin/api/v1/restart/").then((e=>{this.$q.notify({type:"positive",message:"Success! Restarted Server",icon:null}),this.needsRestart=!1})).catch(LNbits.utils.notifyApiError)},async getSettings(){await LNbits.api.request("GET","/admin/api/v1/settings",this.g.user.wallets[0].adminkey).then((e=>{this.isSuperUser=e.data.is_super_user||!1,this.settings=e.data,this.formData={...this.settings}})).catch(LNbits.utils.notifyApiError)},updateSettings(){const e=_.omit(this.formData,["is_super_user","lnbits_allowed_funding_sources","touch"]);LNbits.api.request("PUT","/admin/api/v1/settings",this.g.user.wallets[0].adminkey,e).then((e=>{this.needsRestart=this.settings.lnbits_backend_wallet_class!==this.formData.lnbits_backend_wallet_class,this.settings=this.formData,this.formData=_.clone(this.settings),Quasar.Notify.create({type:"positive",message:"Success! Settings changed! "+(this.needsRestart?"Restart required!":""),icon:null})})).catch(LNbits.utils.notifyApiError)},deleteSettings(){LNbits.utils.confirmDialog("Are you sure you want to restore settings to default?").onOk((()=>{LNbits.api.request("DELETE","/admin/api/v1/settings").then((e=>{Quasar.Notify.create({type:"positive",message:"Success! Restored settings to defaults. Restarting...",icon:null}),this.$q.localStorage.clear()})).catch(LNbits.utils.notifyApiError)}))},downloadBackup(){window.open("/admin/api/v1/backup","_blank")}}},window.app.component("lnbits-admin-funding",{props:["is-super-user","form-data","settings"],template:"#lnbits-admin-funding",mixins:[window.windowMixin],data:()=>({auditData:[]}),created(){this.getAudit()},methods:{getAudit(){LNbits.api.request("GET","/admin/api/v1/audit",this.g.user.wallets[0].adminkey).then((e=>{this.auditData=e.data})).catch(LNbits.utils.notifyApiError)}}}),window.app.component("lnbits-admin-funding-sources",{template:"#lnbits-admin-funding-sources",mixins:[window.windowMixin],props:["form-data","allowed-funding-sources"],methods:{getFundingSourceLabel(e){const t=this.rawFundingSources.find((t=>t[0]===e));return t?t[1]:e},showQRValue(e){this.qrValue=e,this.showQRDialog=!0}},computed:{fundingSources(){let e=[];for(const[t,a,s]of this.rawFundingSources){const a={};if(null!==s)for(let[e,t]of Object.entries(s))a[e]="string"==typeof t?{label:t,value:null}:t||{};e.push([t,a])}return new Map(e)},sortedAllowedFundingSources(){return this.allowedFundingSources.sort()}},data:()=>({hideInput:!0,showQRDialog:!1,qrValue:"",rawFundingSources:[["VoidWallet","Void Wallet",null],["FakeWallet","Fake Wallet",{fake_wallet_secret:"Secret",lnbits_denomination:'"sats" or 3 Letter Custom Denomination'}],["CLNRestWallet","Core Lightning Rest (plugin)",{clnrest_url:"Endpoint",clnrest_ca:"ca.pem",clnrest_cert:"server.pem",clnrest_readonly_rune:"Rune used for readonly requests",clnrest_invoice_rune:"Rune used for creating invoices",clnrest_pay_rune:"Rune used for paying invoices using pay",clnrest_renepay_rune:"Rune used for paying invoices using renepay",clnrest_last_pay_index:"Ignores any invoices paid prior to or including this index. 0 is equivalent to not specifying and negative value is invalid.",clnrest_nodeid:"Node id"}],["CoreLightningWallet","Core Lightning",{corelightning_rpc:"Endpoint",corelightning_pay_command:"Custom Pay Command"}],["CoreLightningRestWallet","Core Lightning Rest (legacy)",{corelightning_rest_url:"Endpoint",corelightning_rest_cert:"Certificate",corelightning_rest_macaroon:"Macaroon"}],["LndRestWallet","Lightning Network Daemon (LND Rest)",{lnd_rest_endpoint:"Endpoint",lnd_rest_cert:"Certificate",lnd_rest_macaroon:"Macaroon",lnd_rest_macaroon_encrypted:"Encrypted Macaroon",lnd_rest_route_hints:"Enable Route Hints",lnd_rest_allow_self_payment:"Allow Self Payment"}],["LndWallet","Lightning Network Daemon (LND)",{lnd_grpc_endpoint:"Endpoint",lnd_grpc_cert:"Certificate",lnd_grpc_port:"Port",lnd_grpc_macaroon:"GRPC Macaroon",lnd_grpc_invoice_macaroon:"GRPC Invoice Macaroon",lnd_grpc_admin_macaroon:"GRPC Admin Macaroon",lnd_grpc_macaroon_encrypted:"Encrypted Macaroon"}],["LnTipsWallet","LN.Tips",{lntips_api_endpoint:"Endpoint",lntips_api_key:"API Key"}],["LNPayWallet","LN Pay",{lnpay_api_endpoint:"Endpoint",lnpay_api_key:"API Key",lnpay_wallet_key:"Wallet Key"}],["EclairWallet","Eclair (ACINQ)",{eclair_url:"URL",eclair_pass:"Password"}],["LNbitsWallet","LNbits",{lnbits_endpoint:"Endpoint",lnbits_key:"Admin Key"}],["BlinkWallet","Blink",{blink_api_endpoint:"Endpoint",blink_ws_endpoint:"WebSocket",blink_token:"Key"}],["AlbyWallet","Alby",{alby_api_endpoint:"Endpoint",alby_access_token:"Key"}],["BoltzWallet","Boltz",{boltz_client_endpoint:"Endpoint",boltz_client_macaroon:"Admin Macaroon path or hex",boltz_client_cert:"Certificate path or hex",boltz_client_wallet:"Wallet Name",boltz_client_password:"Wallet Password (can be empty)",boltz_mnemonic:{label:"Liquid mnemonic (copy into greenwallet)",readonly:!0,copy:!0,qrcode:!0}}],["ZBDWallet","ZBD",{zbd_api_endpoint:"Endpoint",zbd_api_key:"Key"}],["PhoenixdWallet","Phoenixd",{phoenixd_api_endpoint:"Endpoint",phoenixd_api_password:"Key"}],["OpenNodeWallet","OpenNode",{opennode_api_endpoint:"Endpoint",opennode_key:"Key"}],["ClicheWallet","Cliche (NBD)",{cliche_endpoint:"Endpoint"}],["SparkWallet","Spark",{spark_url:"Endpoint",spark_token:"Token"}],["NWCWallet","Nostr Wallet Connect",{nwc_pairing_url:"Pairing URL"}],["BreezSdkWallet","Breez SDK",{breez_api_key:"Breez API Key",breez_greenlight_seed:"Greenlight Seed",breez_greenlight_device_key:"Greenlight Device Key",breez_greenlight_device_cert:"Greenlight Device Cert",breez_greenlight_invite_code:"Greenlight Invite Code"}],["StrikeWallet","Strike (alpha)",{strike_api_endpoint:"API Endpoint",strike_api_key:"API Key"}],["BreezLiquidSdkWallet","Breez Liquid SDK",{breez_liquid_api_key:"Breez API Key (can be empty)",breez_liquid_seed:"Liquid seed phrase",breez_liquid_fee_offset_sat:"Offset amount in sats to increase fee limit"}]]})}),window.app.component("lnbits-admin-fiat-providers",{props:["form-data"],template:"#lnbits-admin-fiat-providers",mixins:[window.windowMixin],data:()=>({formAddStripeUser:"",hideInputToggle:!0}),methods:{addStripeAllowedUser(){const e=this.formAddStripeUser||"";e.length&&!this.formData.stripe_limits.allowed_users.includes(e)&&(this.formData.stripe_limits.allowed_users=[...this.formData.stripe_limits.allowed_users,e],this.formAddStripeUser="")},removeStripeAllowedUser(e){this.formData.stripe_limits.allowed_users=this.formData.stripe_limits.allowed_users.filter((t=>t!==e))},checkFiatProvider(e){LNbits.api.request("PUT",`/api/v1/fiat/check/${e}`).then((e=>{const t=e.data;Quasar.Notify.create({type:t.success?"positive":"warning",message:t.message,icon:null})})).catch(LNbits.utils.notifyApiError)}}}),window.app.component("lnbits-admin-exchange-providers",{props:["form-data"],template:"#lnbits-admin-exchange-providers",mixins:[window.windowMixin],data:()=>({exchangeData:{selectedProvider:null,showTickerConversion:!1,convertFromTicker:null,convertToTicker:null},exchangesTable:{columns:[{name:"name",align:"left",label:"Exchange Name",field:"name",sortable:!0},{name:"api_url",align:"left",label:"URL",field:"api_url",sortable:!1},{name:"path",align:"left",label:"JSON Path",field:"path",sortable:!1},{name:"exclude_to",align:"left",label:"Exclude Currencies",field:"exclude_to",sortable:!1},{name:"ticker_conversion",align:"left",label:"Ticker Conversion",field:"ticker_conversion",sortable:!1}],pagination:{sortBy:"name",rowsPerPage:100,page:1,rowsNumber:100},search:null,hideEmpty:!0}}),mounted(){this.getExchangeRateHistory()},created(){const e=window.location.hash.replace("#","");"exchange_providers"===e&&this.showExchangeProvidersTab(e)},methods:{getExchangeRateHistory(){LNbits.api.request("GET","/api/v1/rate/history",this.g.user.wallets[0].inkey).then((e=>{this.initExchangeChart(e.data)})).catch((function(e){LNbits.utils.notifyApiError(e)}))},showExchangeProvidersTab(e){"exchange_providers"===e&&this.getExchangeRateHistory()},addExchangeProvider(){this.formData.lnbits_exchange_rate_providers=[{name:"",api_url:"",path:"",exclude_to:[]},...this.formData.lnbits_exchange_rate_providers]},removeExchangeProvider(e){this.formData.lnbits_exchange_rate_providers=this.formData.lnbits_exchange_rate_providers.filter((t=>t!==e))},removeExchangeTickerConversion(e,t){e.ticker_conversion=e.ticker_conversion.filter((e=>e!==t)),this.formData.touch=null},addExchangeTickerConversion(){this.exchangeData.selectedProvider&&(this.exchangeData.selectedProvider.ticker_conversion.push(`${this.exchangeData.convertFromTicker}:${this.exchangeData.convertToTicker}`),this.formData.touch=null,this.exchangeData.showTickerConversion=!1)},showTickerConversionDialog(e){this.exchangeData.convertFromTicker=null,this.exchangeData.convertToTicker=null,this.exchangeData.selectedProvider=e,this.exchangeData.showTickerConversion=!0},initExchangeChart(e){const t=e.map((e=>this.utils.formatTimestamp(e.timestamp,"HH:mm"))),a=[...this.formData.lnbits_exchange_rate_providers,{name:"LNbits"}].map((t=>({label:t.name,data:e.map((e=>e.rates[t.name])),pointStyle:!0,borderWidth:"LNbits"===t.name?4:1,tension:.4})));this.exchangeRatesChart=new Chart(this.$refs.exchangeRatesChart.getContext("2d"),{type:"line",options:{plugins:{legend:{display:!1}}},data:{labels:t,datasets:a}})}}}),window.app.component("lnbits-admin-security",{props:["form-data"],template:"#lnbits-admin-security",mixins:[window.windowMixin],data:()=>({logs:[],formBlockedIPs:"",serverlogEnabled:!1,nostrAcceptedUrl:"",formAllowedIPs:"",formCallbackUrlRule:""}),created(){},methods:{addAllowedIPs(){const e=this.formAllowedIPs.trim(),t=this.formData.lnbits_allowed_ips;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_allowed_ips=[...t,e],this.formAllowedIPs="")},removeAllowedIPs(e){const t=this.formData.lnbits_allowed_ips;this.formData.lnbits_allowed_ips=t.filter((t=>t!==e))},addBlockedIPs(){const e=this.formBlockedIPs.trim(),t=this.formData.lnbits_blocked_ips;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_blocked_ips=[...t,e],this.formBlockedIPs="")},removeBlockedIPs(e){const t=this.formData.lnbits_blocked_ips;this.formData.lnbits_blocked_ips=t.filter((t=>t!==e))},addCallbackUrlRule(){const e=this.formCallbackUrlRule.trim(),t=this.formData.lnbits_callback_url_rules;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_callback_url_rules=[...t,e],this.formCallbackUrlRule="")},removeCallbackUrlRule(e){const t=this.formData.lnbits_callback_url_rules;this.formData.lnbits_callback_url_rules=t.filter((t=>t!==e))},addNostrUrl(){const e=this.nostrAcceptedUrl.trim();this.removeNostrUrl(e),this.formData.nostr_absolute_request_urls.push(e),this.nostrAcceptedUrl=""},removeNostrUrl(e){this.formData.nostr_absolute_request_urls=this.formData.nostr_absolute_request_urls.filter((t=>t!==e))},async toggleServerLog(){if(this.serverlogEnabled=!this.serverlogEnabled,this.serverlogEnabled){const e="http:"!==location.protocol?"wss://":"ws://",t=await LNbits.utils.digestMessage(this.g.user.id),a=e+document.domain+":"+location.port+"/api/v1/ws/"+t;this.ws=new WebSocket(a),this.ws.addEventListener("message",(async({data:e})=>{this.logs.push(e.toString());const t=this.$refs.logScroll;if(t){const e=t.getScrollTarget(),a=0;t.setScrollPosition(e.scrollHeight,a)}}))}else this.ws.close()}}}),window.app.component("lnbits-admin-users",{props:["form-data"],template:"#lnbits-admin-users",mixins:[window.windowMixin],data:()=>({formAddUser:"",formAddAdmin:""}),methods:{addAllowedUser(){let e=this.formAddUser,t=this.formData.lnbits_allowed_users;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_allowed_users=[...t,e],this.formAddUser="")},removeAllowedUser(e){let t=this.formData.lnbits_allowed_users;this.formData.lnbits_allowed_users=t.filter((t=>t!==e))},addAdminUser(){let e=this.formAddAdmin,t=this.formData.lnbits_admin_users;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_admin_users=[...t,e],this.formAddAdmin="")},removeAdminUser(e){let t=this.formData.lnbits_admin_users;this.formData.lnbits_admin_users=t.filter((t=>t!==e))}}}),window.app.component("lnbits-admin-server",{props:["form-data"],template:"#lnbits-admin-server",mixins:[window.windowMixin]}),window.app.component("lnbits-admin-extensions",{props:["form-data"],template:"#lnbits-admin-extensions",mixins:[window.windowMixin],data:()=>({formAddExtensionsManifest:""}),methods:{addExtensionsManifest(){const e=this.formAddExtensionsManifest.trim(),t=this.formData.lnbits_extensions_manifests;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_extensions_manifests=[...t,e],this.formAddExtensionsManifest="")},removeExtensionsManifest(e){const t=this.formData.lnbits_extensions_manifests;this.formData.lnbits_extensions_manifests=t.filter((t=>t!==e))}}}),window.app.component("lnbits-admin-notifications",{props:["form-data"],template:"#lnbits-admin-notifications",mixins:[window.windowMixin],data:()=>({nostrNotificationIdentifier:"",emailNotificationAddress:""}),methods:{sendTestEmail(){LNbits.api.request("GET","/admin/api/v1/testemail",this.g.user.wallets[0].adminkey).then((e=>{if("error"===e.data.status)throw new Error(e.data.message);this.$q.notify({message:"Test email sent!",color:"positive"})})).catch((e=>{this.$q.notify({message:e.message,color:"negative"})}))},addNostrNotificationIdentifier(){const e=this.nostrNotificationIdentifier.trim(),t=this.formData.lnbits_nostr_notifications_identifiers;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_nostr_notifications_identifiers=[...t,e],this.nostrNotificationIdentifier="")},removeNostrNotificationIdentifier(e){const t=this.formData.lnbits_nostr_notifications_identifiers;this.formData.lnbits_nostr_notifications_identifiers=t.filter((t=>t!==e))},addEmailNotificationAddress(){const e=this.emailNotificationAddress.trim(),t=this.formData.lnbits_email_notifications_to_emails;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_email_notifications_to_emails=[...t,e],this.emailNotificationAddress="")},removeEmailNotificationAddress(e){const t=this.formData.lnbits_email_notifications_to_emails;this.formData.lnbits_email_notifications_to_emails=t.filter((t=>t!==e))}}}),window.app.component("lnbits-admin-site-customisation",{props:["form-data"],template:"#lnbits-admin-site-customisation",mixins:[window.windowMixin],data:()=>({lnbits_theme_options:["classic","bitcoin","flamingo","cyber","freedom","mint","autumn","monochrome","salvador"],colors:["primary","secondary","accent","positive","negative","info","warning","red","yellow","orange"],reactionOptions:["none","confettiBothSides","confettiFireworks","confettiStars","confettiTop"],globalBorderOptions:["retro-border","hard-border","neon-border","no-border"]}),methods:{}}),window.app.component("lnbits-admin-assets-config",{props:["form-data"],template:"#lnbits-admin-assets-config",mixins:[window.windowMixin],data:()=>({newAllowedAssetMimeType:"",newNoLimitUser:""}),async created(){},methods:{addAllowedAssetMimeType(){this.newAllowedAssetMimeType&&(this.removeAllowedAssetMimeType(this.newAllowedAssetMimeType),this.formData.lnbits_assets_allowed_mime_types.push(this.newAllowedAssetMimeType),this.newAllowedAssetMimeType="")},removeAllowedAssetMimeType(e){const t=this.formData.lnbits_assets_allowed_mime_types.indexOf(e);-1!==t&&this.formData.lnbits_assets_allowed_mime_types.splice(t,1)},addNewNoLimitUser(){this.newNoLimitUser&&(this.removeNoLimitUser(this.newNoLimitUser),this.formData.lnbits_assets_no_limit_users.push(this.newNoLimitUser),this.newNoLimitUser="")},removeNoLimitUser(e){e&&(this.formData.lnbits_assets_no_limit_users=this.formData.lnbits_assets_no_limit_users.filter((t=>t!==e)))}}}),window.app.component("lnbits-admin-audit",{props:["form-data"],template:"#lnbits-admin-audit",mixins:[window.windowMixin],data:()=>({formAddIncludePath:"",formAddExcludePath:"",formAddIncludeResponseCode:""}),methods:{addIncludePath(){if(""===this.formAddIncludePath)return;const e=this.formData.lnbits_audit_include_paths;e.includes(this.formAddIncludePath)||(this.formData.lnbits_audit_include_paths=[...e,this.formAddIncludePath]),this.formAddIncludePath=""},removeIncludePath(e){this.formData.lnbits_audit_include_paths=this.formData.lnbits_audit_include_paths.filter((t=>t!==e))},addExcludePath(){if(""===this.formAddExcludePath)return;const e=this.formData.lnbits_audit_exclude_paths;e.includes(this.formAddExcludePath)||(this.formData.lnbits_audit_exclude_paths=[...e,this.formAddExcludePath]),this.formAddExcludePath=""},removeExcludePath(e){this.formData.lnbits_audit_exclude_paths=this.formData.lnbits_audit_exclude_paths.filter((t=>t!==e))},addIncludeResponseCode(){if(""===this.formAddIncludeResponseCode)return;const e=this.formData.lnbits_audit_http_response_codes;e.includes(this.formAddIncludeResponseCode)||(this.formData.lnbits_audit_http_response_codes=[...e,this.formAddIncludeResponseCode]),this.formAddIncludeResponseCode=""},removeIncludeResponseCode(e){this.formData.lnbits_audit_http_response_codes=this.formData.lnbits_audit_http_response_codes.filter((t=>t!==e))}}}),window.app.component("lnbits-wallet-charts",{template:"#lnbits-wallet-charts",mixins:[window.windowMixin],props:["paymentFilter","chartConfig"],data:()=>({debounceTimeoutValue:1337,debounceTimeout:null,chartData:[],chartDataPointCount:0,walletBalanceChart:null,walletBalanceInOut:null,walletPaymentInOut:null,colorPrimary:Quasar.colors.changeAlpha(Quasar.colors.getPaletteColor("primary"),.3),colorSecondary:Quasar.colors.changeAlpha(Quasar.colors.getPaletteColor("secondary"),.3),barOptions:{responsive:!0,maintainAspectRatio:!1,scales:{x:{stacked:!0},y:{stacked:!0}}}}),watch:{paymentFilter:{deep:!0,handler(){this.changeCharts()}},chartConfig:{deep:!0,handler(e){this.$q.localStorage.setItem("lnbits.wallets.chartConfig",e),this.changeCharts()}}},methods:{changeCharts(){this.debounceTimeout&&clearTimeout(this.debounceTimeout),this.debounceTimeout=setTimeout((async()=>{await this.fetchChartData(),this.drawCharts()}),this.debounceTimeoutValue)},filterChartData(){const e=this.paymentFilter["time[ge]"]+"T00:00:00",t=this.paymentFilter["time[le]"]+"T23:59:59";let a=0,s=this.chartData.map((e=>void 0!==this.paymentFilter["amount[ge]"]?(a+=e.balance_in,{...e,balance:a,balance_out:0,count_out:0}):void 0!==this.paymentFilter["amount[le]"]?(a-=e.balance_out,{...e,balance:a,balance_in:0,count_in:0}):{...e}));s=s.filter((a=>this.paymentFilter["time[ge]"]&&this.paymentFilter["time[le]"]?a.date>=e&&a.date<=t:this.paymentFilter["time[ge]"]?a.date>=e:!this.paymentFilter["time[le]"]||a.date<=t));const i=s.map((e=>new Date(e.date).toLocaleString("default",{month:"short",day:"numeric"})));return this.chartDataPointCount=s.length,{data:s,labels:i}},drawBalanceInOutChart(e,t){this.walletBalanceInOut&&this.walletBalanceInOut.destroy();const a=this.$refs.walletBalanceInOut;a&&(this.walletBalanceInOut=new Chart(a.getContext("2d"),{type:"bar",options:this.barOptions,data:{labels:t,datasets:[{label:"Balance In",borderRadius:5,data:e.map((e=>e.balance_in)),backgroundColor:this.colorPrimary},{label:"Balance Out",borderRadius:5,data:e.map((e=>e.balance_out)),backgroundColor:this.colorSecondary}]}}))},drawPaymentInOut(e,t){this.walletPaymentInOut&&this.walletPaymentInOut.destroy();const a=this.$refs.walletPaymentInOut;a&&(this.walletPaymentInOut=new Chart(a.getContext("2d"),{type:"bar",options:this.barOptions,data:{labels:t,datasets:[{label:"Payments In",data:e.map((e=>e.count_in)),backgroundColor:this.colorPrimary},{label:"Payments Out",data:e.map((e=>-e.count_out)),backgroundColor:this.colorSecondary}]}}))},drawBalanceChart(e,t){this.walletBalanceChart&&this.walletBalanceChart.destroy();const a=this.$refs.walletBalanceChart;a&&(this.walletBalanceChart=new Chart(a.getContext("2d"),{type:"line",options:{responsive:!0,maintainAspectRatio:!1},data:{labels:t,datasets:[{label:"Balance",data:e.map((e=>e.balance)),pointStyle:!1,backgroundColor:this.colorPrimary,borderColor:this.colorPrimary,borderWidth:2,fill:!0,tension:.7,fill:1},{label:"Fees",data:e.map((e=>e.fee)),pointStyle:!1,backgroundColor:this.colorSecondary,borderColor:this.colorSecondary,borderWidth:1,fill:!0,tension:.7,fill:1}]}}))},drawCharts(){const{data:e,labels:t}=this.filterChartData();this.chartConfig.showBalanceChart&&this.drawBalanceChart(e,t),this.chartConfig.showBalanceInOutChart&&this.drawBalanceInOutChart(e,t),this.chartConfig.showPaymentInOutChart&&this.drawPaymentInOut(e,t)},async fetchChartData(){try{const{data:e}=await LNbits.api.request("GET",`/api/v1/payments/stats/daily?wallet_id=${this.g.wallet.id}`);this.chartData=e}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}}},async created(){await this.fetchChartData(),this.drawCharts()}}),window.app.component("lnbits-wallet-api-docs",{template:"#lnbits-wallet-api-docs",mixins:[window.windowMixin],methods:{resetKeys(){LNbits.utils.confirmDialog("Are you sure you want to reset your API keys?").onOk((()=>{LNbits.api.resetWalletKeys(this.g.wallet).then((e=>{const{id:t,adminkey:a,inkey:s}=e;this.g.wallet={...this.g.wallet,inkey:s,adminkey:a};const i=this.g.user.wallets.findIndex((e=>e.id===t));-1!==i&&(this.g.user.wallets[i]={...this.g.user.wallets[i],inkey:s,adminkey:a}),Quasar.Notify.create({timeout:3500,type:"positive",message:"API keys reset!"})})).catch((e=>{LNbits.utils.notifyApiError(e)}))}))}},data:()=>({inkeyHidden:!0,adminkeyHidden:!0,walletIdHidden:!0})}),window.app.component("lnbits-wallet-icon",{template:"#lnbits-wallet-icon",mixins:[window.windowMixin],data:()=>({icon:{show:!1,data:{},colorOptions:["primary","purple","orange","green","brown","blue","red","pink"],options:["home","star","bolt","paid","savings","store","videocam","music_note","flight","train","directions_car","school","construction","science","sports_esports","sports_tennis","theaters","water","headset_mic","videogame_asset","person","group","pets","sunny","elderly","verified","snooze","mail","forum","shopping_cart","shopping_bag","attach_money","print_connect","dark_mode","light_mode","android","network_wifi","shield","fitness_center","lunch_dining"]}}),methods:{setSelectedIcon(e){this.icon.data.icon=e},setSelectedColor(e){this.icon.data.color=e},setIcon(){this.$emit("update-wallet",this.icon.data),this.icon.show=!1}}}),window.app.component("lnbits-wallet-new",{template:"#lnbits-wallet-new",mixins:[window.windowMixin],data:()=>({walletTypes:[{label:"Lightning Wallet",value:"lightning"}],newWallet:{name:"",sharedWalletId:""}}),computed:{inviteWalletOptions(){return(this.g.user?.extra?.wallet_invite_requests||[]).map((e=>({label:`${e.to_wallet_name} (from ${e.from_user_name})`,value:e.to_wallet_id})))}},methods:{async submitRejectWalletInvitation(){try{const e=this.g.user.extra.wallet_invite_requests||[],t=e.find((e=>e.to_wallet_id===this.newWallet.sharedWalletId));if(!t)return void Quasar.Notify.create({message:"Cannot find invitation for the selected wallet.",type:"warning"});await LNbits.api.request("DELETE",`/api/v1/wallet/share/invite/${t.request_id}`,this.g.wallet.adminkey),Quasar.Notify.create({message:"Invitation rejected.",type:"positive"}),this.g.user.extra.wallet_invite_requests=e.filter((e=>e.request_id!==t.request_id))}catch(e){LNbits.utils.notifyApiError(e)}},async submitAddWallet(){const e=this.newWallet;if("lightning"!==this.g.newWalletType||e.name)if("lightning-shared"!==this.g.newWalletType||e.sharedWalletId)try{await LNbits.api.createWallet(this.g.user.wallets[0],e.name,this.g.newWalletType,{shared_wallet_id:e.sharedWalletId})}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}else this.$q.notify({message:"Missing a shared wallet ID",color:"warning"});else this.$q.notify({message:"Please enter a name for the wallet",color:"warning"})}},created(){this.g.user?.extra?.wallet_invite_requests?.length&&this.walletTypes.push({label:`Lightning Wallet (Share Invite: ${this.g.user.extra.wallet_invite_requests.length})`,value:"lightning-shared"})}}),window.app.component("lnbits-wallet-share",{template:"#lnbits-wallet-share",mixins:[window.windowMixin],computed:{walletApprovedShares(){return this.g.wallet.extra.shared_with.filter((e=>"approved"===e.status))},walletPendingRequests(){return this.g.wallet.extra.shared_with.filter((e=>"request_access"===e.status))},walletPendingInvites(){return this.g.wallet.extra.shared_with.filter((e=>"invite_sent"===e.status))}},data:()=>({permissionOptions:[{label:"View",value:"view-payments"},{label:"Receive",value:"receive-payments"},{label:"Send",value:"send-payments"}],walletShareInvite:{unsername:"",permissions:[]}}),methods:{async updateSharePermissions(e){try{const{data:t}=await LNbits.api.request("PUT","/api/v1/wallet/share",this.g.wallet.adminkey,e);Object.assign(e,t),Quasar.Notify.create({message:"Wallet permission updated.",type:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}},async inviteUserToWallet(){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/wallet/share/invite",this.g.wallet.adminkey,{...this.walletShareInvite,status:"invite_sent",wallet_id:this.g.wallet.id});this.g.wallet.extra.shared_with.push(e),this.walletShareInvite={username:"",permissions:[]},Quasar.Notify.create({message:"User invited to wallet.",type:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}},deleteSharePermission(e){LNbits.utils.confirmDialog("Are you sure you want to remove this share permission?").onOk((async()=>{try{await LNbits.api.request("DELETE",`/api/v1/wallet/share/${e.request_id}`,this.g.wallet.adminkey),this.g.wallet.extra.shared_with=this.g.wallet.extra.shared_with.filter((t=>t.wallet_id!==e.wallet_id)),Quasar.Notify.create({message:"Wallet permission deleted.",type:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}}))}}}),window.app.component("lnbits-wallet-paylinks",{template:"#lnbits-wallet-paylinks",mixins:[window.windowMixin],data:()=>({storedPaylinks:[]}),watch:{"g.wallet"(e){this.storedPaylinks=e.storedPaylinks??[]}},created(){this.storedPaylinks=this.g.wallet.storedPaylinks},methods:{updatePaylinks(){LNbits.api.request("PUT",`/api/v1/wallet/stored_paylinks/${this.g.wallet.id}`,this.g.wallet.adminkey,{links:this.storedPaylinks}).then((()=>{this.$q.notify({message:"Paylinks updated.",type:"positive",timeout:3500})})).catch((e=>{LNbits.utils.notifyApiError(e)}))},sendToPaylink(e){this.$emit("send-lnurl",e)},editPaylink(){this.$nextTick((()=>{this.updatePaylinks()}))},deletePaylink(e){const t=[];this.storedPaylinks.forEach((a=>{a.lnurl!==e&&t.push(a)})),this.storedPaylinks=t,this.updatePaylinks()}}}),window.app.component("lnbits-wallet-extra",{template:"#lnbits-wallet-extra",mixins:[window.windowMixin],props:["chartConfig"],data:()=>({}),methods:{handleSendLnurl(e){this.$emit("send-lnurl",e)},updateWallet(e){this.$emit("update-wallet",e)},handleFiatTracking(){this.g.fiatTracking=!this.g.fiatTracking,this.g.fiatTracking?(this.updateWallet({currency:this.g.wallet.currency}),this.updateFiatBalance()):(this.g.isFiatPriority=!1,this.g.wallet.currency="",this.updateWallet({currency:""}))},deleteWallet(){LNbits.utils.confirmDialog("Are you sure you want to delete this wallet?").onOk((()=>{LNbits.api.deleteWallet(this.g.wallet).then((e=>{Quasar.Notify.create({timeout:3e3,message:"Wallet deleted!",spinner:!0})})).catch((e=>{LNbits.utils.notifyApiError(e)}))}))},updateFiatBalance(){this.$q.localStorage.getItem("lnbits.exchangeRate."+this.g.wallet.currency)&&(this.g.exchangeRate=this.$q.localStorage.getItem("lnbits.exchangeRate."+this.g.wallet.currency),this.g.fiatBalance=this.g.exchangeRate/1e8*this.g.wallet.sat),LNbits.api.request("GET","/api/v1/rate/"+this.g.wallet.currency,null).then((e=>{this.g.fiatBalance=e.data.price/1e8*this.g.wallet.sat,this.g.exchangeRate=e.data.price.toFixed(2),this.g.fiatTracking=!0,this.$q.localStorage.set("lnbits.exchangeRate."+this.g.wallet.currency,this.g.exchangeRate)})).catch((e=>console.error(e)))}},created(){""!==this.g.wallet.currency&&this.g.isSatsDenomination?(this.g.fiatTracking=!0,this.updateFiatBalance()):this.g.fiatTracking=!1}}),window.app.component("lnbits-home-logos",{template:"#lnbits-home-logos",mixins:[window.windowMixin],data:()=>({logos:[{href:"https://github.com/ElementsProject/lightning",lightSrc:"/static/images/clnl.png",darkSrc:"/static/images/cln.png"},{href:"https://github.com/lightningnetwork/lnd",lightSrc:"/static/images/lnd.png",darkSrc:"/static/images/lnd.png"},{href:"https://opennode.com",lightSrc:"/static/images/opennodel.png",darkSrc:"/static/images/opennode.png"},{href:"https://lnpay.co/",lightSrc:"/static/images/lnpayl.png",darkSrc:"/static/images/lnpay.png"},{href:"https://github.com/rootzoll/raspiblitz",lightSrc:"/static/images/blitzl.png",darkSrc:"/static/images/blitz.png"},{href:"https://start9.com/",lightSrc:"/static/images/start9l.png",darkSrc:"/static/images/start9.png"},{href:"https://getumbrel.com/",lightSrc:"/static/images/umbrell.png",darkSrc:"/static/images/umbrel.png"},{href:"https://mynodebtc.com",lightSrc:"/static/images/mynodel.png",darkSrc:"/static/images/mynode.png"},{href:"https://github.com/shesek/spark-wallet",lightSrc:"/static/images/sparkl.png",darkSrc:"/static/images/spark.png"},{href:"https://voltage.cloud",lightSrc:"/static/images/voltagel.png",darkSrc:"/static/images/voltage.png"},{href:"https://breez.technology/sdk/",lightSrc:"/static/images/breezl.png",darkSrc:"/static/images/breez.png"},{href:"https://blockstream.com/lightning/greenlight/",lightSrc:"/static/images/greenlightl.png",darkSrc:"/static/images/greenlight.png"},{href:"https://getalby.com",lightSrc:"/static/images/albyl.png",darkSrc:"/static/images/alby.png"},{href:"https://zbd.gg",lightSrc:"/static/images/zbdl.png",darkSrc:"/static/images/zbd.png"},{href:"https://phoenix.acinq.co/server",lightSrc:"/static/images/phoenixdl.png",darkSrc:"/static/images/phoenixd.png"},{href:"https://boltz.exchange/",lightSrc:"/static/images/boltzl.svg",darkSrc:"/static/images/boltz.svg"},{href:"https://www.blink.sv/",lightSrc:"/static/images/blink_logol.png",darkSrc:"/static/images/blink_logo.png"}]}),computed:{showLogos(){return this.g.isSatsDenomination&&"LNbits"==this.SITE_TITLE&&1==this.LNBITS_SHOW_HOME_PAGE_ELEMENTS}}}),window.app.component("lnbits-error",{template:"#lnbits-error",mixins:[window.windowMixin],props:["dynamic","code","message"],computed:{isExtension(){return 403==this.code&&(!!this.message.startsWith("Extension ")||void 0)}},methods:{goBack(){window.history.back()},goHome(){window.location="/"},goToWallet(){this.dynamic?this.$router.push("/wallet"):window.location="/wallet"},goToExtension(){const e=`/extensions#${this.message.match(/'([^']+)'/)[1]}`;this.dynamic?this.$router.push(e):window.location=e},async logOut(){try{await LNbits.api.logout(),window.location="/"}catch(e){LNbits.utils.notifyApiError(e)}}},async created(){if(!this.dynamic&&401==this.code)return console.warn(`Unauthorized: ${this.errorMessage}`),void this.logOut()}}),window.app.component("lnbits-qrcode",{mixins:[window.windowMixin],template:"#lnbits-qrcode",components:{QrcodeVue:QrcodeVue},props:{value:{type:String,required:!0},nfc:{type:Boolean,default:!1},showButtons:{type:Boolean,default:!0},href:{type:String,default:""},margin:{type:Number,default:3},maxWidth:{type:Number,default:450},logo:{type:String,default:LNBITS_QR_LOGO}},data:()=>({nfcTagWriting:!1,nfcSupported:"undefined"!=typeof NDEFReader}),methods:{clickQrCode(e){if(""===this.href)return this.utils.copyText(this.value),e.preventDefault(),e.stopPropagation(),!1},async writeNfcTag(){try{if(!this.nfcSupported)throw{toString:function(){return"NFC not supported on this device or browser."}};const e=new NDEFReader;this.nfcTagWriting=!0,this.$q.notify({message:"Tap your NFC tag to write the LNURL-withdraw link to it."}),await e.write({records:[{recordType:"url",data:this.value,lang:"en"}]}),this.nfcTagWriting=!1,this.$q.notify({type:"positive",message:"NFC tag written successfully."})}catch(e){this.nfcTagWriting=!1,this.$q.notify({type:"negative",message:e?e.toString():"An unexpected error has occurred."})}},downloadSVG(){const e=this.$refs.qrCode.$el;if(!e)return void console.error("SVG element not found");let t=(new XMLSerializer).serializeToString(e);t.match(/^]+xmlns="http:\/\/www\.w3\.org\/2000\/svg"/)||(t=t.replace(/^({tab:"bech32",lnurl:""}),methods:{setLnurl(){if("bech32"==this.tab){const e=(new TextEncoder).encode(this.url),t=NostrTools.nip19.encodeBytes("lnurl",e);this.lnurl=`lightning:${t.toUpperCase()}`}else"lud17"==this.tab&&(this.url.startsWith("http://")?this.lnurl=this.url.replace("http://",this.prefix+"://"):this.lnurl=this.url.replace("https://",this.prefix+"://"));this.$emit("update:lnurl",this.lnurl)}},watch:{url(){this.setLnurl()},tab(){this.setLnurl()}},created(){this.setLnurl()}}),window.app.component("lnbits-disclaimer",{template:"#lnbits-disclaimer",mixins:[window.windowMixin],computed:{showDisclaimer:()=>!g.disclaimerShown&&g.isUserAuthorized}}),window.app.component("lnbits-footer",{template:"#lnbits-footer",mixins:[window.windowMixin],computed:{version(){return this.LNBITS_VERSION||"unknown version"},title(){return`${this.SITE_TITLE}, ${this.SITE_TAGLINE}`},showFooter(){return 1==this.LNBITS_SHOW_HOME_PAGE_ELEMENTS}}}),window.app.component("lnbits-header",{template:"#lnbits-header",mixins:[window.windowMixin],computed:{hasServiceFeeMax(){return this.g.user&&this.LNBITS_SERVICE_FEE_MAX&&this.LNBITS_SERVICE_FEE_MAX>0},serviceFeeMax(){return this.LNBITS_SERVICE_FEE_MAX||0},hasServiceFee(){return this.g.user&&this.LNBITS_SERVICE_FEE&&this.LNBITS_SERVICE_FEE>0},serviceFee(){return this.LNBITS_SERVICE_FEE||0},hasCustomBadge(){return this.LNBITS_CUSTOM_BADGE&&""!=this.LNBITS_CUSTOM_BADGE},customBadge(){return this.LNBITS_CUSTOM_BADGE||""},customBadgeColor(){return this.LNBITS_CUSTOM_BADGE_COLOR||""},title(){return this.SITE_TITLE},titleIsLnbits(){return"LNbits"==this.SITE_TITLE},customLogoUrl(){return this.USE_CUSTOM_LOGO||null},userPictureUrl(){return this.g.user.config.picture},hasUserPicture(){return this.g.user&&this.g.user.config&&this.g.user.config.picture},showAdmin(){return this.g.user&&(this.g.user.super_user||this.g.user.admin)},showVoidwallet(){return this.g.user&&1==this.VOIDWALLET}}}),window.app.component("lnbits-header-wallets",{template:"#lnbits-header-wallets",mixins:[window.windowMixin]}),window.app.component("lnbits-drawer",{template:"#lnbits-drawer",mixins:[window.windowMixin]}),window.app.component("lnbits-theme",{mixins:[window.windowMixin],watch:{"g.walletFlip"(e){this.$q.localStorage.setItem("lnbits.walletFlip",e),!0===e&&this.$q.screen.lt.md&&(this.g.visibleDrawer=!1)},"g.disclaimerShown"(e){this.$q.localStorage.setItem("lnbits.disclaimerShown",e)},"g.isFiatPriority"(e){this.$q.localStorage.setItem("lnbits.isFiatPriority",e)},"g.reactionChoice"(e){this.$q.localStorage.set("lnbits.reactions",e)},"g.themeChoice"(e){document.body.setAttribute("data-theme",e),this.$q.localStorage.set("lnbits.theme",e)},"g.darkChoice"(e){this.$q.dark.set(e),this.$q.localStorage.set("lnbits.darkMode",e),Chart.defaults.color=this.$q.dark.isActive?"#fff":"#000"},"g.borderChoice"(e){document.body.classList.forEach((e=>{e.endsWith("-border")&&document.body.classList.remove(e)})),this.$q.localStorage.setItem("lnbits.border",e),document.body.classList.add(e)},"g.gradientChoice"(e){this.$q.localStorage.set("lnbits.gradientBg",e),!0===e?document.body.classList.add("gradient-bg"):document.body.classList.remove("gradient-bg")},"g.mobileSimple"(e){this.$q.localStorage.set("lnbits.mobileSimple",e),!0===e?document.body.classList.add("mobile-simple"):document.body.classList.remove("mobile-simple")},"g.bgimageChoice"(e){this.$q.localStorage.set("lnbits.backgroundImage",e),""===e?document.body.classList.remove("bg-image"):(document.body.classList.add("bg-image"),document.body.style.setProperty("--background",`url(${e})`))}},methods:{async checkUrlParams(){const e=new URLSearchParams(window.location.search);if(0===e.length)return;if(e.has("theme")){const t=e.get("theme").trim().toLowerCase();this.g.themeChoice=t,e.delete("theme")}if(e.has("border")){const t=e.get("border").trim().toLowerCase();this.g.borderChoice=t,e.delete("border")}if(e.has("gradient")){const t=e.get("gradient").toLowerCase();this.g.gradientChoice="1"===t||"true"===t,e.delete("gradient")}if(e.has("dark")){const t=e.get("dark").trim().toLowerCase();this.g.darkChoice="1"===t||"true"===t,e.delete("dark")}if(e.has("usr")){try{await LNbits.api.loginUsr(e.get("usr")),window.location.href="/wallet"}catch(e){LNbits.utils.notifyApiError(e)}e.delete("usr")}const t=e.size?`?${e.toString()}`:"",a=window.location.pathname+t;window.history.replaceState(null,null,a)}},created(){this.$q.dark.set(this.g.darkChoice),document.body.setAttribute("data-theme",this.g.themeChoice),Chart.defaults.color=this.$q.dark.isActive?"#fff":"#000",document.body.classList.add(this.g.borderChoice),!0===this.g.gradientChoice&&document.body.classList.add("gradient-bg"),""!==this.g.bgimageChoice&&(document.body.classList.add("bg-image"),document.body.style.setProperty("--background",`url(${this.g.bgimageChoice})`)),!0===this.g.mobileSimple&&document.body.classList.add("mobile-simple"),this.checkUrlParams()}}),window.app.component("lnbits-qrcode-scanner",{template:"#lnbits-qrcode-scanner",mixins:[window.windowMixin],watch:{"g.showScanner"(e){!0===e&&!1===this.g.hasCamera&&(Quasar.Notify.create({message:"No camera found on this device.",type:"negative"}),this.g.showScanner=!1)}},methods:{detect(e){const t=e[0].rawValue;console.log("Detected QR code value:",t),this.$emit("detect",t),this.g.showScanner=!1},async onInitQR(e){try{await e}catch(e){const t={NotAllowedError:"ERROR: you need to grant camera access permission",NotFoundError:"ERROR: no camera on this device",NotSupportedError:"ERROR: secure context required (HTTPS, localhost)",NotReadableError:"ERROR: is the camera already in use?",OverconstrainedError:"ERROR: installed cameras are not suitable",StreamApiNotSupportedError:"ERROR: Stream API is not supported in this browser",InsecureContextError:"ERROR: Camera access is only permitted in secure context. Use HTTPS or localhost rather than HTTP."},a=Object.keys(t).filter((t=>e.name===t)),s=a?t[a]:`ERROR: Camera error (${e.name})`;Quasar.Notify.create({message:s,type:"negative"}),this.g.hasCamera=!1,this.showScanner=!1}}}}),window.app.component("lnbits-manage-extension-list",{mixins:[window.windowMixin],template:"#lnbits-manage-extension-list",data:()=>({extensions:[],userExtensions:[],searchTerm:""}),watch:{"g.user.extensions":{async handler(){await this.loadExtensions()}},searchTerm(){this.filterUserExtensionsByTerm()}},methods:{map(e){const t={...e};return t.url=["/",t.code,"/"].join(""),t},async loadExtensions(){try{const{data:e}=await LNbits.api.request("GET","/api/v1/extension");this.extensions=e.map((e=>this.map(e))).sort(((e,t)=>e.name.localeCompare(t.name))),this.filterUserExtensionsByTerm()}catch(e){LNbits.utils.notifyApiError(e)}},filterUserExtensionsByTerm(){const e=this.g.user.extensions;this.userExtensions=this.extensions.filter((t=>e.includes(t.code))).filter((e=>""===this.searchTerm||`${e.code} ${e.name} ${e.short_description} ${e.url}`.toLocaleLowerCase().includes(this.searchTerm.toLocaleLowerCase()))).map((e=>(e.isActive=window.location.pathname.startsWith(e.url),e)))}},async created(){await this.loadExtensions()}}),window.app.component("lnbits-manage-wallet-list",{template:"#lnbits-manage-wallet-list",mixins:[window.windowMixin],data:()=>({activeWalletId:null}),watch:{$route(e){e.path.startsWith("/wallet/")?this.activeWalletId=e.params.id:this.activeWalletId=null}}}),window.app.component("lnbits-language-dropdown",{template:"#lnbits-language-dropdown",mixins:[window.windowMixin],methods:{activeLanguage:e=>window.i18n.global.locale===e,changeLanguage(e){this.g.locale=e,window.i18n.global.locale=e,this.$q.localStorage.set("lnbits.lang",e)}},data:()=>({langs:[{value:"en",label:"English",display:"🇬🇧 EN"},{value:"de",label:"Deutsch",display:"🇩🇪 DE"},{value:"es",label:"Español",display:"🇪🇸 ES"},{value:"jp",label:"日本語",display:"🇯🇵 JP"},{value:"cn",label:"中文",display:"🇨🇳 CN"},{value:"fr",label:"Français",display:"🇫🇷 FR"},{value:"it",label:"Italiano",display:"🇮🇹 IT"},{value:"pi",label:"Pirate",display:"🏴‍☠️ PI"},{value:"nl",label:"Nederlands",display:"🇳🇱 NL"},{value:"we",label:"Cymraeg",display:"🏴󠁧󠁢󠁷󠁬󠁳󠁿 CY"},{value:"pl",label:"Polski",display:"🇵🇱 PL"},{value:"pt",label:"Português",display:"🇵🇹 PT"},{value:"br",label:"Português do Brasil",display:"🇧🇷 BR"},{value:"cs",label:"Česky",display:"🇨🇿 CS"},{value:"sk",label:"Slovensky",display:"🇸🇰 SK"},{value:"kr",label:"한국어",display:"🇰🇷 KR"},{value:"fi",label:"Suomi",display:"🇫🇮 FI"}]})}),window.app.component("lnbits-payment-list",{template:"#lnbits-payment-list",props:["wallet","paymentFilter"],mixins:[window.windowMixin],data(){return{payments:[],paymentsTable:{columns:[{name:"time",align:"left",label:this.$t("memo")+"/"+this.$t("date"),field:"date",sortable:!0},{name:"amount",align:"right",label:this.$t("amount"),field:"sat",sortable:!0}],pagination:{rowsPerPage:10,page:1,sortBy:"time",descending:!0,rowsNumber:10},search:"",loading:!1},searchDate:{from:null,to:null},searchStatus:{success:!0,pending:!0,failed:!1,incoming:!0,outgoing:!0},exportTagName:"",exportPaymentTagList:[],paymentsCSV:{columns:[{name:"status",align:"right",label:this.$t("status"),field:"status"},{name:"memo",align:"left",label:this.$t("memo"),field:"memo"},{name:"time",align:"left",label:this.$t("date"),field:"date",sortable:!0},{name:"amount",align:"right",label:this.$t("amount"),field:"sat",sortable:!0},{name:"fee",align:"right",label:this.$t("fee"),field:"fee"},{name:"tag",align:"right",label:this.$t("tag"),field:"tag"},{name:"payment_hash",align:"right",label:this.$t("payment_hash"),field:"payment_hash"},{name:"payment_proof",align:"right",label:this.$t("payment_proof"),field:"payment_proof"},{name:"webhook",align:"right",label:this.$t("webhook"),field:"webhook"},{name:"fiat_currency",align:"right",label:"Fiat Currency",field:e=>e.extra.wallet_fiat_currency},{name:"fiat_amount",align:"right",label:"Fiat Amount",field:e=>e.extra.wallet_fiat_amount}],preimage:null,loading:!1},hodlInvoice:{show:!1,payment:null,preimage:null},selectedPayment:null,filterLabels:[]}},computed:{filteredPayments(){const e=this.paymentsTable.search;return e&&""!==e?LNbits.utils.search(this.payments,e):this.payments},paymentsOmitter(){return this.$q.screen.lt.md&&this.g.mobileSimple?this.payments.length>0?[this.payments[0]]:[]:this.payments},pendingPaymentsExist(){return-1!==this.payments.findIndex((e=>e.pending))}},methods:{mapPayment(e){const t={checking_id:e.checking_id,status:e.status,amount:e.amount,fee:e.fee,memo:e.memo,time:e.time,bolt11:e.bolt11,preimage:e.preimage,payment_hash:e.payment_hash,expiry:e.expiry,extra:e.extra??{},wallet_id:e.wallet_id,webhook:e.webhook,webhook_status:e.webhook_status,fiat_amount:e.fiat_amount,fiat_currency:e.fiat_currency,labels:e.labels};t.date=this.utils.formatDate(e.created_at),t.dateFrom=this.utils.formatDateFrom(e.created_at),t.expirydate=this.utils.formatDate(e.expiry),t.expirydateFrom=this.utils.formatDateFrom(e.expiry),t.msat=t.amount,t.sat=t.msat/1e3,t.tag=t.extra?.tag,t.fsat=this.utils.formatSat(t.sat),t.isIn=t.amount>0,t.isOut=t.amount<0,t.isPending="pending"===t.status,t.isPaid="success"===t.status,t.isFailed="failed"===t.status,t._q=[t.memo,t.sat].join(" ").toLowerCase();try{t.details=JSON.parse(e.extra?.details||"{}")}catch{t.details={extraDetails:e.extra?.details}}return t},searchByDate(){"string"==typeof this.searchDate&&(this.searchDate={from:this.searchDate,to:this.searchDate}),this.searchDate.from&&(this.paymentFilter["time[ge]"]=this.searchDate.from+"T00:00:00"),this.searchDate.to&&(this.paymentFilter["time[le]"]=this.searchDate.to+"T23:59:59"),this.fetchPayments()},searchByLabels(e){e&&0!==e.length?(this.filterLabels=e,this.paymentsTable.filter["labels[every]"]=e,this.fetchPayments()):this.clearLabelSeach()},clearDateSeach(){this.searchDate={from:null,to:null},delete this.paymentFilter["time[ge]"],delete this.paymentFilter["time[le]"],this.fetchPayments()},clearLabelSeach(){this.filterLabels=[],delete this.paymentsTable.filter["labels[every]"],this.fetchPayments()},fetchPayments(e){this.paymentsTable.loading=!0;const t=LNbits.utils.prepareFilterQuery(this.paymentsTable,e,this.paymentFilter);return LNbits.api.getPayments(this.wallet,t).then((e=>{this.paymentsTable.pagination.rowsNumber=e.data.total,this.payments=e.data.data.map(this.mapPayment),this.paymentsTable.loading=!1,this.recheckPendingPayments()})).catch((e=>{this.paymentsTable.loading=!1,g.user.admin?this.fetchPaymentsAsAdmin(this.wallet.id,t):LNbits.utils.notifyApiError(e)}))},fetchPaymentsAsAdmin(e,t){return t=(t||"")+"&wallet_id="+e,LNbits.api.request("GET","/api/v1/payments/all/paginated?"+t).then((e=>{this.paymentsTable.loading=!1,this.paymentsTable.pagination.rowsNumber=e.data.total,this.payments=e.data.data.map(this.mapPayment)})).catch((e=>{this.paymentsTable.loading=!1,LNbits.utils.notifyApiError(e)}))},checkPayment(e){LNbits.api.getPayment(this.wallet,e).then((e=>{this.update=!this.update,"success"==e.data.status&&Quasar.Notify.create({type:"positive",message:this.$t("payment_successful")}),"pending"==e.data.status&&Quasar.Notify.create({type:"info",message:this.$t("payment_pending")})})).catch(LNbits.utils.notifyApiError)},recheckPendingPayments(){const e=this.payments.filter((e=>"pending"===e.status));if(0===e.length)return;const t=["recheck_pending=true","checking_id[in]="+e.map((e=>e.checking_id)).join(",")].join("&");LNbits.api.getPayments(this.wallet,t).then((e=>{let t=0;e.data.data.forEach((e=>{if("pending"!==e.status){const a=this.payments.findIndex((t=>t.checking_id===e.checking_id));-1!==a&&(this.payments.splice(a,1,this.mapPayment(e)),t+=1)}})),t>0&&Quasar.Notify.create({type:"positive",message:this.$t("payment_successful")})})).catch((e=>{console.warn(e)}))},showHoldInvoiceDialog(e){this.hodlInvoice.show=!0,this.hodlInvoice.preimage="",this.hodlInvoice.payment=e},cancelHoldInvoice(e){LNbits.api.cancelInvoice(this.wallet,e).then((()=>{this.update=!this.update,Quasar.Notify.create({type:"positive",message:this.$t("invoice_cancelled")})})).catch(LNbits.utils.notifyApiError)},settleHoldInvoice(e){LNbits.api.settleInvoice(this.wallet,e).then((()=>{this.update=!this.update,Quasar.Notify.create({type:"positive",message:this.$t("invoice_settled")})})).catch(LNbits.utils.notifyApiError)},paymentTableRowKey:e=>e.payment_hash+e.amount,exportCSV(e=!1){const t=this.paymentsTable.pagination,a={sortby:t.sortBy??"time",direction:t.descending?"desc":"asc"},s=new URLSearchParams(a);LNbits.api.getPayments(this.wallet,s).then((t=>{let a=t.data.data.map(this.mapPayment),s=this.paymentsCSV.columns;if(e){this.exportPaymentTagList.length&&(a=a.filter((e=>this.exportPaymentTagList.includes(e.tag))));const e=Object.keys(a.reduce(((e,t)=>({...e,...t.details})),{})).map((e=>({name:e,align:"right",label:e.charAt(0).toUpperCase()+e.slice(1).replace(/([A-Z])/g," $1"),field:t=>t.details[e],format:e=>"object"==typeof e?JSON.stringify(e):e})));s=this.paymentsCSV.columns.concat(e)}LNbits.utils.exportCSV(s,a,this.wallet.name+"-payments")}))},addFilterTag(){if(!this.exportTagName)return;const e=this.exportTagName.trim();this.exportPaymentTagList=this.exportPaymentTagList.filter((t=>t!==e)),this.exportPaymentTagList.push(e),this.exportTagName=""},removeExportTag(e){this.exportPaymentTagList=this.exportPaymentTagList.filter((t=>t!==e))},formatCurrency(e,t){try{return LNbits.utils.formatCurrency(e,t)}catch(t){return console.error(t),`${e} ???`}},handleFilterChanged(){const{success:e,pending:t,failed:a,incoming:s,outgoing:i}=this.searchStatus;let n=this.paymentFilter||{};delete n["status[ne]"],delete n["status[eq]"],e&&t&&a||(e&&t?n["status[ne]"]="failed":e&&a?n["status[ne]"]="pending":a&&t?n["status[ne]"]="success":!e||t||a?!t||e||a?!a||e||t||(n["status[eq]"]="failed"):n["status[eq]"]="pending":n["status[eq]"]="success"),delete n["amount[ge]"],delete n["amount[le]"],s&&i||!s&&!i||(s&&!i?n["amount[ge]"]=0:i&&!s&&(n["amount[le]"]=0)),this.paymentFilter=n},async savePaymentLabels(e){if(this.selectedPayment)try{await LNbits.api.request("PUT",`/api/v1/payments/${this.selectedPayment.payment_hash}/labels`,this.wallet.adminkey,{labels:e});const t=this.payments.find((e=>e.checking_id===this.selectedPayment.checking_id));t&&(t.labels=[...e]),Quasar.Notify.create({type:"positive",message:this.$t("payment_labels_updated")})}catch(e){LNbits.utils.notifyApiError(e)}else Quasar.Notify.create({type:"warning",message:"No payment selected"})},isLightColor(e){try{return Quasar.colors.luminosity(e)>.5}catch(e){return console.warning(e),!1}}},watch:{"paymentsTable.search":{handler(){const e={};this.paymentsTable.search&&(e.search=this.paymentsTable.search),this.fetchPayments()}},"g.updatePayments"(){this.fetchPayments()}},created(){this.fetchPayments()}}),window.app.component("lnbits-label-selector",{template:"#lnbits-label-selector",props:["labels"],mixins:[window.windowMixin],data:()=>({labelFilter:"",localLabels:[]}),methods:{toggleLabel(e){if(this.localLabels.includes(e.name)){const t=this.localLabels.indexOf(e.name);-1!==t&&this.localLabels.splice(t,1)}else this.localLabels.push(e.name)},saveLabels(){this.$emit("update:labels",this.localLabels)},clearLabels(){this.localLabels=[],this.saveLabels()}},created(){this.localLabels=[...this.labels]}}),window.app.component("lnbits-extension-settings-form",{name:"lnbits-extension-settings-form",template:"#lnbits-extension-settings-form",props:["options","adminkey","endpoint"],methods:{async updateSettings(){if(!this.settings)return Quasar.Notify.create({message:"No settings to update",type:"negative"});try{const{data:e}=await LNbits.api.request("PUT",this.endpoint,this.adminkey,this.settings);this.settings=e}catch(e){LNbits.utils.notifyApiError(e)}},async getSettings(){try{const{data:e}=await LNbits.api.request("GET",this.endpoint,this.adminkey);this.settings=e}catch(e){LNbits.utils.notifyApiError(e)}},async resetSettings(){LNbits.utils.confirmDialog("Are you sure you want to reset the settings?").onOk((async()=>{try{await LNbits.api.request("DELETE",this.endpoint,this.adminkey),await this.getSettings()}catch(e){LNbits.utils.notifyApiError(e)}}))}},async created(){await this.getSettings()},data:()=>({settings:void 0})}),window.app.component("lnbits-extension-settings-btn-dialog",{template:"#lnbits-extension-settings-btn-dialog",name:"lnbits-extension-settings-btn-dialog",props:["options","adminkey","endpoint"],data:()=>({show:!1})}),window.app.component("lnbits-data-fields",{name:"lnbits-data-fields",template:"#lnbits-data-fields",props:["fields","hide-advanced"],data:()=>({fieldTypes:[{label:"Text",value:"str"},{label:"Integer",value:"int"},{label:"Float",value:"float"},{label:"Boolean",value:"bool"},{label:"Date Time",value:"datetime"},{label:"JSON",value:"json"},{label:"Wallet Select",value:"wallet"},{label:"Currency Select",value:"currency"}],fieldsTable:{columns:[{name:"name",align:"left",label:"Field Name",field:"name",sortable:!0},{name:"type",align:"left",label:"Type",field:"type",sortable:!1},{name:"label",align:"left",label:"UI Label",field:"label",sortable:!0},{name:"hint",align:"left",label:"UI Hint",field:"hint",sortable:!1},{name:"optional",align:"left",label:"Optional",field:"optional",sortable:!1}],pagination:{sortBy:"name",rowsPerPage:100,page:1,rowsNumber:100},search:null,hideEmpty:!0}}),methods:{addField:function(){this.fields.push({name:"field_name_"+(this.fields.length+1),type:"text",label:"",hint:"",optional:!0,sortable:!0,searchable:!0,editable:!0,fields:[]})},removeField:function(e){const t=this.fields.indexOf(e);t>-1&&this.fields.splice(t,1)}},async created(){this.hideAdvanced||this.fieldsTable.columns.push({name:"editable",align:"left",label:"UI Editable",field:"editable",sortable:!1},{name:"sortable",align:"left",label:"Sortable",field:"sortable",sortable:!1},{name:"searchable",align:"left",label:"Searchable",field:"searchable",sortable:!1})}}),window.app.component(QrcodeVue),window.app.component("lnbits-extension-rating",{template:"#lnbits-extension-rating",name:"lnbits-extension-rating",props:["rating"]}),window.app.component("lnbits-fsat",{template:"{{ fsat }}",props:{amount:{type:Number,default:0}},computed:{fsat(){return LNbits.utils.formatSat(this.amount)}}}),window.app.component("lnbits-manage",{mixins:[window.windowMixin],template:"#lnbits-manage",computed:{showAdmin(){return this.LNBITS_ADMIN_UI},showUsers(){return this.LNBITS_ADMIN_UI},showNode(){return this.LNBITS_NODE_UI},showAudit(){return this.LNBITS_AUDIT_ENABLED},showExtensions(){return!1===this.LNBITS_EXTENSIONS_DEACTIVATE_ALL}},methods:{isActive:e=>window.location.pathname===e},data:()=>({extensions:[]})}),window.app.component("lnbits-payment-details",{mixins:[window.windowMixin],template:"#lnbits-payment-details",props:["payment"],mixins:[window.windowMixin],computed:{hasPreimage(){return this.payment.preimage&&"0000000000000000000000000000000000000000000000000000000000000000"!==this.payment.preimage},hasExpiry(){return!!this.payment.expiry},hasSuccessAction(){return this.hasPreimage&&this.payment.extra&&this.payment.extra.success_action},webhookStatusColor(){return this.payment.webhook_status>=300||this.payment.webhook_status<0?"red-10":this.payment.webhook_status?"green-10":"cyan-7"},webhookStatusText(){return this.payment.webhook_status?this.payment.webhook_status:"not sent yet"},hasTag(){return this.payment.extra&&!!this.payment.extra.tag},extras(){if(!this.payment.extra)return[];let e=_.omit(this.payment.extra,["tag","success_action"]);return Object.keys(e).map((t=>({key:t,value:e[t]})))}}}),window.app.component("lnbits-lnurlpay-success-action",{mixins:[window.windowMixin],template:"#lnbits-lnurlpay-success-action",props:["payment","success_action"],data(){return{decryptedValue:this.success_action.ciphertext}},mounted(){if("aes"!==this.success_action.tag)return null;this.utils.decryptLnurlPayAES(this.success_action,this.payment.preimage).then((e=>{this.decryptedValue=e}))}}),window.app.component("lnbits-notifications-btn",{template:"#lnbits-notifications-btn",mixins:[window.windowMixin],props:["pubkey"],data:()=>({isSupported:!1,isSubscribed:!1,isPermissionGranted:!1,isPermissionDenied:!1}),methods:{urlB64ToUint8Array(e){const t=(e+"=".repeat((4-e.length%4)%4)).replace(/\-/g,"+").replace(/_/g,"/"),a=atob(t),s=new Uint8Array(a.length);for(let e=0;et!==e)),this.$q.localStorage.set("lnbits.webpush.subscribedUsers",JSON.stringify(t))},isUserSubscribed(e){return(JSON.parse(this.$q.localStorage.getItem("lnbits.webpush.subscribedUsers"))||[]).includes(e)},subscribe(){this.isSupported&&!this.isPermissionDenied&&(Notification.requestPermission().then((e=>{this.isPermissionGranted="granted"===e,this.isPermissionDenied="denied"===e})).catch(console.log),navigator.serviceWorker.ready.then((e=>{navigator.serviceWorker.getRegistration().then((e=>{e.pushManager.getSubscription().then((t=>{if(null===t||!this.isUserSubscribed(this.g.user.id)){const t={applicationServerKey:this.urlB64ToUint8Array(this.pubkey),userVisibleOnly:!0};e.pushManager.subscribe(t).then((e=>{LNbits.api.request("POST","/api/v1/webpush",null,{subscription:JSON.stringify(e)}).then((e=>{this.saveUserSubscribed(e.data.user),this.isSubscribed=!0})).catch(LNbits.utils.notifyApiError)}))}})).catch(console.log)}))})))},unsubscribe(){navigator.serviceWorker.ready.then((e=>{e.pushManager.getSubscription().then((e=>{e&&LNbits.api.request("DELETE","/api/v1/webpush?endpoint="+btoa(e.endpoint),null).then((()=>{this.removeUserSubscribed(this.g.user.id),this.isSubscribed=!1})).catch(LNbits.utils.notifyApiError)}))})).catch(console.log)},checkSupported(){let e="https:"===window.location.protocol,t="serviceWorker"in navigator,a="Notification"in window,s="PushManager"in window;return this.isSupported=e&&t&&a&&s,this.isSupported||console.log("Notifications disabled because requirements are not met:",{HTTPS:e,"Service Worker API":t,"Notification API":a,"Push API":s}),this.isSupported},async updateSubscriptionStatus(){await navigator.serviceWorker.ready.then((e=>{e.pushManager.getSubscription().then((e=>{this.isSubscribed=!!e&&this.isUserSubscribed(this.g.user.id)}))})).catch(console.log)}},created(){this.isPermissionDenied="denied"===Notification.permission,this.checkSupported()&&this.updateSubscriptionStatus()}}),window.app.component("lnbits-dynamic-fields",{template:"#lnbits-dynamic-fields",mixins:[window.windowMixin],props:["options","modelValue"],data:()=>({formData:null,rules:[e=>!!e||"Field is required"]}),methods:{applyRules(e){return e?this.rules:[]},buildData(e,t={}){return e.reduce(((e,a)=>(a.options?.length?e[a.name]=this.buildData(a.options,t[a.name]):e[a.name]=t[a.name]??a.default,e)),{})},handleValueChanged(){this.$emit("update:model-value",this.formData)}},created(){this.formData=this.buildData(this.options,this.modelValue)}}),window.app.component("lnbits-dynamic-chips",{template:"#lnbits-dynamic-chips",mixins:[window.windowMixin],props:["modelValue"],data:()=>({chip:"",chips:[]}),methods:{addChip(){this.chip&&(this.chips.push(this.chip),this.chip="",this.$emit("update:model-value",this.chips.join(",")))},removeChip(e){this.chips.splice(e,1),this.$emit("update:model-value",this.chips.join(","))}},created(){"string"==typeof this.modelValue?this.chips=this.modelValue.split(","):this.chips=[...this.modelValue]}}),window.app.component("lnbits-update-balance",{template:"#lnbits-update-balance",mixins:[window.windowMixin],props:["wallet_id","small_btn"],computed:{admin:()=>user.super_user},data:()=>({credit:0}),methods:{updateBalance(e){LNbits.api.updateBalance(e.value,this.wallet_id).then((t=>{if(!0!==t.data.success)throw new Error(t.data);credit=parseInt(e.value),Quasar.Notify.create({type:"positive",message:this.$t("credit_ok",{amount:credit}),icon:null}),this.credit=0,e.value=0,e.set()})).catch(LNbits.utils.notifyApiError)}}}),window.app.component("user-id-only",{template:"#user-id-only",mixins:[window.windowMixin],props:{allowed_new_users:Boolean,authAction:String,authMethod:String,usr:String,wallet:String},data(){return{user:this.usr,walletName:this.wallet}},methods:{showLogin(e){this.$emit("show-login",e)},showRegister(e){this.$emit("show-register",e)},loginUsr(){this.$emit("update:usr",this.user),this.$emit("login-usr")},createWallet(){this.$emit("update:wallet",this.walletName),this.$emit("create-wallet")}},computed:{showInstantLogin(){return"username-password"!==this.authMethod||"register"!==this.authAction}},created(){}}),window.app.component("username-password",{template:"#username-password",mixins:[window.windowMixin],props:{allowed_new_users:Boolean,authMethods:Array,authAction:String,username:String,password_1:String,password_2:String,resetKey:String},data(){return{oauth:["nostr-auth-nip98","google-auth","github-auth","keycloak-auth"],username:this.userName,password:this.password_1,passwordRepeat:this.password_2,reset_key:this.resetKey,keycloakOrg:LNBITS_AUTH_KEYCLOAK_ORG||"Keycloak",keycloakIcon:LNBITS_AUTH_KEYCLOAK_ICON}},methods:{login(){this.$emit("update:userName",this.username),this.$emit("update:password_1",this.password),this.$emit("login")},register(){this.$emit("update:userName",this.username),this.$emit("update:password_1",this.password),this.$emit("update:password_2",this.passwordRepeat),this.$emit("register")},reset(){this.$emit("update:resetKey",this.reset_key),this.$emit("update:password_1",this.password),this.$emit("update:password_2",this.passwordRepeat),this.$emit("reset")},validateUsername:e=>new RegExp("^(?=[a-zA-Z0-9._]{2,20}$)(?!.*[_.]{2})[^_.].*[^_.]$").test(e),async signInWithNostr(){try{const e=await this.createNostrToken();if(!e)return;resp=await LNbits.api.loginByProvider("nostr",{Authorization:e},{}),window.location.href="/wallet"}catch(e){console.warn(e);const t=e?.response?.data?.detail||`${e}`;Quasar.Notify.create({type:"negative",message:"Failed to sign in with Nostr.",caption:t})}},async createNostrToken(){try{if(!window.nostr?.signEvent)return void Quasar.Notify.create({type:"negative",message:"No Nostr signing app detected.",caption:'Is "window.nostr" present?'});const e=`${window.location}nostr`,t="POST",a=await NostrTools.nip98.getToken(e,t,(e=>async function(e){try{const{data:t}=await LNbits.api.getServerHealth();return e.created_at=t.server_time,await window.nostr.signEvent(e)}catch(e){console.error(e),Quasar.Notify.create({type:"negative",message:"Failed to sign nostr event.",caption:`${e}`})}}(e)),!0);if(!await NostrTools.nip98.validateToken(a,e,t))throw new Error("Invalid signed token!");return a}catch(e){console.warn(e),Quasar.Notify.create({type:"negative",message:"Failed create Nostr event.",caption:`${e}`})}}},computed:{showOauth(){return this.oauth.some((e=>this.authMethods.includes(e)))}},created(){}}),window.app.component("separator-text",{template:"#separator-text",props:{text:String,uppercase:{type:Boolean,default:!1},color:{type:String,default:"grey"}}}),window.app.component("lnbits-node-ranks",{props:["ranks"],data:()=>({stats:[{label:"Capacity",key:"capacity"},{label:"Channels",key:"channelcount"},{label:"Age",key:"age"},{label:"Growth",key:"growth"},{label:"Availability",key:"availability"}]}),template:"\n \n
\n
1ml Node Rank
\n
\n
\n
{{ stat.label }}
\n
\n {{ (ranks && ranks[stat.key]) ?? '-' }}\n
\n
\n
\n
\n
\n "}),window.app.component("lnbits-channel-stats",{props:["stats"],data:()=>({states:[{label:"Active",value:"active",color:"green"},{label:"Pending",value:"pending",color:"orange"},{label:"Inactive",value:"inactive",color:"grey"},{label:"Closed",value:"closed",color:"red"}]}),template:"\n \n
\n
Channels
\n
\n
\n
\n {{ state.label }}\n
\n
\n {{ (stats?.counts && stats.counts[state.value]) ?? \"-\" }}\n
\n
\n
\n
\n
\n "}),window.app.component("lnbits-stat",{props:["title","amount","msat","btc"],computed:{value(){return this.amount??(this.btc?LNbits.utils.formatSat(this.btc):LNbits.utils.formatMsat(this.msat))}},template:"\n \n \n
\n {{ title }}\n
\n
\n {{ value }}\n sats\n BTC\n
\n
\n
\n "}),window.app.component("lnbits-node-qrcode",{props:["info"],mixins:[window.windowMixin],template:'\n \n \n
\n
\n \n
\n No addresses available\n
\n
\n
\n
\n \n Public Key Click to copy \n \n \n
\n '}),window.app.component("lnbits-channel-balance",{props:["balance","color"],methods:{formatMsat:e=>LNbits.utils.formatMsat(e)},template:'\n
\n
\n \n Local: {{ formatMsat(balance.local_msat) }}\n sats\n \n \n Remote: {{ formatMsat(balance.remote_msat) }}\n sats\n \n
\n\n \n
\n \n {{ balance.alias }}\n \n
\n \n
\n '}),window.app.component("lnbits-node-info",{props:["info"],data:()=>({showDialog:!1}),mixins:[window.windowMixin],methods:{shortenNodeId:e=>e?e.substring(0,5)+"..."+e.substring(e.length-5):"..."},template:"\n
\n
{{ this.info.alias }}
\n
\n
{{ this.info.backend_name }}
\n \n #{{ this.info.color }}\n \n
{{ shortenNodeId(this.info.id) }}
\n \n \n
\n \n \n \n
\n "}),window.app.component("lnbits-stat",{props:["title","amount","msat","btc"],computed:{value(){return this.amount??(this.btc?LNbits.utils.formatSat(this.btc):LNbits.utils.formatMsat(this.msat))}},template:"\n \n \n
\n {{ title }}\n
\n
\n {{ value }}\n sats\n BTC\n
\n
\n
\n "});const quasarConfig={config:{loading:{spinner:Quasar.QSpinnerBars},table:{rowsPerPageOptions:[5,10,20,50,100,200,500,0]}}},routes=[{path:"/node",name:"Node",component:PageNode},{path:"/node/public",name:"NodePublic",component:PageNodePublic},{path:"/payments",name:"Payments",component:PagePayments},{path:"/audit",name:"Audit",component:PageAudit},{path:"/wallet",redirect:e=>{const t=window.g?.lastActiveWallet||window.user?.wallets[0].id;return`/wallet/${e.query.wal||t||"default"}`}},{path:"/wallet/:id",name:"Wallet",component:PageWallet},{path:"/wallets",name:"Wallets",component:PageWallets},{path:"/users",name:"Users",component:PageUsers},{path:"/admin",name:"Admin",component:PageAdmin},{path:"/account",name:"Account",component:PageAccount},{path:"/extensions/builder",name:"ExtensionsBuilder",component:PageExtensionBuilder},{path:"/extensions",name:"Extensions",component:PageExtensions},{path:"/first_install",name:"FirstInstall",component:PageFirstInstall},{path:"/",name:"PageHome",component:PageHome},{path:"/error",name:"PageError",component:PageError}];window.router=VueRouter.createRouter({history:VueRouter.createWebHistory(),routes:routes}),window.i18n=new VueI18n.createI18n({locale:window.g.locale,fallbackLocale:"en",messages:window.localisation}),window.app.mixin({data:()=>({api:window._lnbitsApi,utils:window._lnbitsUtils,g:window.g,utils:window._lnbitsUtils,...WINDOW_SETTINGS}),computed:{isVueRoute(){const e=window.location.pathname,t=window.router.resolve(e);return t?.matched?.length>0}},methods:{copyText:window._lnbitsUtils.copyText,formatBalance:window._lnbitsUtils.formatBalance}}),window.app.use(VueQrcodeReader),window.app.use(Quasar,quasarConfig),window.app.use(window.i18n),window.app.use(window.router),window.app.mount("#vue"); +window.PageError={template:"#page-error",mixins:[window.windowMixin]},window.PageHome={template:"#page-home",mixins:[window.windowMixin],data:()=>({lnurl:"",authAction:"login",authMethod:"username-password",usr:"",username:"",reset_key:"",email:"",password:"",passwordRepeat:"",walletName:"",signup:!1}),computed:{showClaimLnurl(){return""!==this.lnurl&&this.allowRegister&&"user-id-only"in this.LNBITS_AUTH_METHODS},formatDescription(){return LNbits.utils.convertMarkdown(this.SITE_DESCRIPTION)},isAccessTokenExpired(){return this.$q.cookies.get("is_access_token_expired")},allowRegister(){return this.LNBITS_NEW_ACCOUNTS_ALLOWED},hasCustomImage(){return this.LNBITS_CUSTOM_IMAGE},showHomepageElements(){return this.HOMEPAGE_ELEMENTS_ENABLED},siteTitle(){return this.SITE_TITLE||""},siteTagline(){return this.SITE_TAGLINE||""},adsEnabled(){return this.AD_SPACE_ENABLED&&this.AD_SPACE&&this.AD_SPACE.length>0},adsTitle(){return this.AD_SPACE_TITLE||""},ads(){return this.AD_SPACE.map(e=>e.split(";"))},lnbitsBannerEnabled(){return this.isSatsDenomination&&"LNbits"==this.SITE_TITLE&&1==this.LNBITS_SHOW_HOME_PAGE_ELEMENTS}},methods:{showLogin(e){this.authAction="login",this.authMethod=e},showRegister(e){this.user="",this.username=null,this.password=null,this.passwordRepeat=null,this.authAction="register",this.authMethod=e},async register(){try{await LNbits.api.register(this.username,this.email,this.password,this.passwordRepeat),window.location.href="/wallet"}catch(e){LNbits.utils.notifyApiError(e)}},async reset(){try{await LNbits.api.reset(this.reset_key,this.password,this.passwordRepeat),window.location.href="/wallet"}catch(e){LNbits.utils.notifyApiError(e)}},async login(){try{await LNbits.api.login(this.username,this.password),window.location.href="/wallet"}catch(e){LNbits.utils.notifyApiError(e)}},async loginUsr(){try{await LNbits.api.loginUsr(this.usr),this.usr="",window.location.href="/wallet"}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},createWallet(){LNbits.api.createAccount(this.walletName).then(e=>{window.location="/wallet?usr="+e.data.user+"&wal="+e.data.id})},processing(){Quasar.Notify.create({timeout:0,message:"Processing...",icon:null})}},created(){this.g.isUserAuthorized&&(window.location.href="/wallet");const e=new URLSearchParams(window.location.search);this.reset_key=e.get("reset_key"),this.reset_key&&(this.authAction="reset"),e.has("lightning")&&(this.lnurl=e.get("lightning"))}},window.PageExtensionBuilder={template:"#page-extension-builder",mixins:[windowMixin],data:()=>({step:1,previewStepNames:{2:"settings",3:"owner_data",4:"client_data",5:"public_page"},extensionDataCleanString:"",extensionData:{id:"",name:"",stub_version:"",short_description:"",description:"",public_page:{has_public_page:!0,owner_data_fields:{name:"",description:""},client_data_fields:{public_inputs:[]},action_fields:{generate_action:!0,generate_payment_logic:!1,wallet_id:"",currency:"",amount:"",paid_flag:""}},preview_action:{is_preview_mode:!1,is_settings_preview:!1,is_owner_data_preview:!1,is_client_data_preview:!1,is_public_page_preview:!1},settings_data:{name:"Settings",enabled:!0,type:"user",fields:[]},owner_data:{name:"OwnerData",fields:[]},client_data:{enabled:!0,name:"ClientData",fields:[]}},sampleField:{name:"name",type:"str",label:"Name",hint:"",optional:!0,editable:!0,searchable:!0,sortable:!0},settingsTypes:[{label:"User Settings",value:"user"},{label:"Admin Settings",value:"admin"}],amountSource:[{label:"Client Data",value:"client_data"},{label:"Owner Data",value:"owner_data"}],extensionStubVersions:[]}),watch:{"extensionData.public_page.action_fields.amount_source":function(e,t){t&&e!==t&&(this.extensionData.public_page.action_fields.amount="")}},computed:{paymentActionAmountFields(){const e=this.extensionData.public_page.action_fields.amount_source;return e?"owner_data"===e?[""].concat(this.extensionData.owner_data.fields.filter(e=>"int"===e.type||"float"===e.type).map(e=>e.name)):"client_data"===e?[""].concat(this.extensionData.client_data.fields.filter(e=>"int"===e.type||"float"===e.type).map(e=>e.name)):void 0:[""]}},methods:{saveState(){this.$q.localStorage.set("lnbits.extension.builder.data",JSON.stringify(this.extensionData)),this.$q.localStorage.set("lnbits.extension.builder.step",this.step)},nextStep(){this.saveState(),this.$refs.stepper.next(),this.refreshPreview()},previousStep(){this.saveState(),this.$refs.stepper.previous(),this.refreshPreview()},onStepChange(){this.saveState(),this.refreshPreview()},clearAllData(){LNbits.utils.confirmDialog("Are you sure you want to clear all data? This action cannot be undone.").onOk(()=>{this.extensionData=JSON.parse(this.extensionDataCleanString),this.$q.localStorage.remove("lnbits.extension.builder.data"),this.$refs.stepper.set(1)})},exportJsonData(){!0!==Quasar.exportFile(`${this.extensionData.id||"data-export"}.json`,JSON.stringify(this.extensionData,null,2),"text/json")?Quasar.Notify.create({message:"Browser denied file download...",color:"negative",icon:null}):Quasar.Notify.create({message:"File downloaded!",color:"positive",icon:"file_download"})},onJsonDataInput(e){const t=e.target.files[0],a=new FileReader;a.onload=e=>{this.extensionData={...this.extensionData,...JSON.parse(e.target.result)},this.$refs.extensionDataInput.value=null,Quasar.Notify.create({message:"File loaded!",color:"positive",icon:"file_upload"})},a.readAsText(t)},async buildExtension(){try{const e={responseType:"blob"},t=await LNbits.api.request("POST","/api/v1/extension/builder/zip",null,this.extensionData,e),a=window.URL.createObjectURL(new Blob([t.data])),s=document.createElement("a");s.href=a,s.download=`${this.extensionData.id||"lnbits-extension"}.zip`,document.body.appendChild(s),s.click(),s.remove(),window.URL.revokeObjectURL(a)}catch(e){LNbits.utils.notifyApiError(e)}},async buildExtensionAndDeploy(){try{const{data:e}=await LNbits.api.request("POST","/api/v1/extension/builder/deploy",null,this.extensionData);Quasar.Notify.create({message:e.message||"Extension deployed!",color:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}},async cleanCacheData(){LNbits.utils.confirmDialog("Are you sure you want to clean the cache data? This action cannot be undone.","Clean Cache Data").onOk(async()=>{try{const{data:e}=await LNbits.api.request("DELETE","/api/v1/extension/builder",null,{});Quasar.Notify.create({message:e.message||"Cache data cleaned!",color:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}})},async previewExtension(e){this.saveState();try{await LNbits.api.request("POST","/api/v1/extension/builder/preview",null,{...this.extensionData,preview_action:{is_preview_mode:!!e,is_settings_preview:"settings"===e,is_owner_data_preview:"owner_data"===e,is_client_data_preview:"client_data"===e,is_public_page_preview:"public_page"===e}}),this.refreshIframe(e)}catch(e){LNbits.utils.notifyApiError(e)}},async refreshPreview(){setTimeout(()=>{const e=this.previewStepNames[`${this.step}`]||"";e&&this.previewExtension(e)},100)},async getStubExtensionReleases(){try{const e="extension_builder_stub",{data:t}=await LNbits.api.request("GET",`/api/v1/extension/${e}/releases`);this.extensionStubVersions=t.sort((e,t)=>e.version{const e=t.contentDocument||t.contentWindow.document;e.body.style.transform="scale(0.8)",e.body.style.transformOrigin="center top"},t.src=`/extensions/builder/preview/${this.extensionData.id}?page_name=${e}`):console.warn("Extension Builder Preview iframe not loaded yet.")},initBasicData(){this.extensionData.owner_data.fields=[JSON.parse(JSON.stringify(this.sampleField))],this.extensionData.client_data.fields=[JSON.parse(JSON.stringify(this.sampleField))],this.extensionData.settings_data.fields=[JSON.parse(JSON.stringify(this.sampleField))],this.extensionDataCleanString=JSON.stringify(this.extensionData)}},created(){this.initBasicData();const e=this.$q.localStorage.getItem("lnbits.extension.builder.data");e&&(this.extensionData={...this.extensionData,...JSON.parse(e)});const t=+this.$q.localStorage.getItem("lnbits.extension.builder.step");t&&(this.step=t),this.g.user.admin&&this.getStubExtensionReleases(),setTimeout(()=>{this.refreshIframe()},1e3)}},window.PageExtensions={template:"#page-extensions",mixins:[window.windowMixin],data:()=>({extbuilderEnabled:!1,slide:0,fullscreen:!1,autoplay:!0,searchTerm:"",tab:"all",manageExtensionTab:"releases",filteredExtensions:[],updatableExtensions:[],showUninstallDialog:!1,showManageExtensionDialog:!1,showExtensionDetailsDialog:!1,showDropDbDialog:!1,showPayToEnableDialog:!1,showUpdateAllDialog:!1,dropDbExtensionId:"",selectedExtension:null,selectedImage:null,selectedExtensionDetails:null,selectedExtensionRepos:null,selectedRelease:null,uninstallAndDropDb:!1,maxStars:5,paylinkWebsocket:null,user:null}),watch:{searchTerm(e){this.filterExtensions(e,this.tab)},tab(e){this.filterExtensions(this.searchTerm,e)}},methods:{filterExtensions(e,t){var a;this.filteredExtensions=this.extensions.filter(e=>"all"!==t||!e.isInstalled).filter(e=>"installed"!==t||e.isInstalled).filter(e=>"installed"!==t||(!!e.isActive||!!this.g.user.admin)).filter(e=>"featured"!==t||e.isFeatured).filter((a=e,function(e){return e.name.toLowerCase().includes(a.toLowerCase())||e.shortDescription?.toLowerCase().includes(a.toLowerCase())})).map(e=>({...e,details_link:e.installedRelease?.details_link||e.latestRelease?.details_link}))},async installExtension(e){this.unsubscribeFromPaylinkWs();const t=this.selectedExtension;this.selectedExtension.inProgress=!0,this.showManageExtensionDialog=!1,e.payment_hash=e.payment_hash||this.getPaylinkHash(e.pay_link),LNbits.api.request("POST","/api/v1/extension",this.g.user.wallets[0].adminkey,{ext_id:this.selectedExtension.id,archive:e.archive,source_repo:e.source_repo,payment_hash:e.payment_hash,version:e.version}).then(t=>{const a=this.extensions.find(e=>e.id===this.selectedExtension.id);a.isAvailable=!0,a.isInstalled=!0,a.installedRelease=e,this.toggleExtension(a),a.inProgress=!1,this.selectedExtension=a,this.extensions=this.extensions.concat([]),this.tab="installed"}).catch(e=>{console.warn(e),t.inProgress=!1,LNbits.utils.notifyApiError(e)})},async uninstallExtension(){this.showManageExtensionDialog=!1,this.showUninstallDialog=!1,this.selectedExtension.inProgress=!0,LNbits.api.request("DELETE",`/api/v1/extension/${this.selectedExtension.id}`,this.g.user.wallets[0].adminkey).then(e=>{const t=this.extensions.find(e=>e.id===this.selectedExtension.id);t.isAvailable=!1,t.isInstalled=!1,t.inProgress=!1,t.installedRelease=null,this.filteredExtensions=this.filteredExtensions.filter(e=>e.id!==t.id),Quasar.Notify.create({type:"positive",message:"Extension uninstalled!"}),this.uninstallAndDropDb&&this.showDropDb()}).catch(e=>{LNbits.utils.notifyApiError(e),extension.inProgress=!1})},async dropExtensionDb(){const e=this.selectedExtension;this.showManageExtensionDialog=!1,this.showDropDbDialog=!1,this.dropDbExtensionId="",e.inProgress=!0,LNbits.api.request("DELETE",`/api/v1/extension/${e.id}/db`,this.g.user.wallets[0].adminkey).then(t=>{e.installedRelease=null,e.inProgress=!1,e.hasDatabaseTables=!1,Quasar.Notify.create({type:"positive",message:"Extension DB deleted!"})}).catch(t=>{LNbits.utils.notifyApiError(t),e.inProgress=!1})},toggleExtension(e){const t=e.isActive?"activate":"deactivate";LNbits.api.request("PUT",`/api/v1/extension/${e.id}/${t}`,this.g.user.wallets[0].adminkey).then(a=>{Quasar.Notify.create({timeout:2e3,type:"positive",message:`Extension '${e.id}' ${t}d!`})}).catch(t=>{LNbits.utils.notifyApiError(t),e.isActive=!1,e.inProgress=!1})},async enableExtensionForUser(e){e.isPaymentRequired?this.showPayToEnable(e):this.enableExtension(e)},async enableExtension(e){LNbits.api.request("PUT",`/api/v1/extension/${e.id}/enable`,this.g.user.wallets[0].adminkey).then(t=>{this.g.user.extensions=this.g.user.extensions.concat([e.id]),Quasar.Notify.create({type:"positive",message:"Extension enabled!"})}).catch(e=>{console.warn(e),LNbits.utils.notifyApiError(e)})},disableExtension(e){LNbits.api.request("PUT",`/api/v1/extension/${e.id}/disable`,this.g.user.wallets[0].adminkey).then(t=>{this.g.user.extensions=this.g.user.extensions.filter(t=>t!==e.id),Quasar.Notify.create({type:"positive",message:"Extension disabled!"})}).catch(e=>{console.warn(error),LNbits.utils.notifyApiError(e)})},showPayToEnable(e){this.selectedExtension=e,this.selectedExtension.payToEnable.paidAmount=e.payToEnable.amount,this.selectedExtension.payToEnable.showQRCode=!1,this.showPayToEnableDialog=!0},updatePayToInstallData(e){LNbits.api.request("PUT",`/api/v1/extension/${e.id}/sell`,this.g.user.wallets[0].adminkey,{required:e.payToEnable.required,amount:e.payToEnable.amount,wallet:e.payToEnable.wallet}).then(e=>{Quasar.Notify.create({type:"positive",message:"Payment info updated!"}),this.showManageExtensionDialog=!1}).catch(t=>{LNbits.utils.notifyApiError(t),e.inProgress=!1})},showUninstall(){this.showManageExtensionDialog=!1,this.showUninstallDialog=!0,this.uninstallAndDropDb=!1},showDropDb(){this.showDropDbDialog=!0},async showManageExtension(e){this.selectedExtension=e,this.selectedRelease=null,this.selectedExtensionRepos=null,this.manageExtensionTab="releases",this.showManageExtensionDialog=!0;try{const{data:t}=await LNbits.api.request("GET",`/api/v1/extension/${e.id}/releases`,this.g.user.wallets[0].adminkey);this.selectedExtensionRepos=t.reduce((e,t)=>(e[t.source_repo]=e[t.source_repo]||{releases:[],isInstalled:!1,repo:t.repo},t.inProgress=!1,t.error=null,t.loaded=!1,t.isInstalled=this.isInstalledVersion(this.selectedExtension,t),t.isInstalled&&(e[t.source_repo].isInstalled=!0),t.pay_link&&(t.requiresPayment=!0,t.paidAmount=t.cost_sats,t.payment_hash=this.getPaylinkHash(t.pay_link)),e[t.source_repo].releases.push(t),e),{})}catch(t){LNbits.utils.notifyApiError(t),e.inProgress=!1}},async showExtensionDetails(e,t){if(t){this.selectedExtensionDetails=null,this.showExtensionDetailsDialog=!0,this.slide=0,this.fullscreen=!1;try{const{data:a}=await LNbits.api.request("GET",`/api/v1/extension/${e}/details?details_link=${t}`,this.g.user.wallets[0].inkey);this.selectedExtensionDetails=a,this.selectedExtensionDetails.description_md=LNbits.utils.convertMarkdown(a.description_md)}catch(e){console.warn(e)}}},async payAndInstall(e){try{this.selectedExtension.inProgress=!0,this.showManageExtensionDialog=!1;const t=await this.requestPaymentForInstall(this.selectedExtension.id,e);this.rememberPaylinkHash(e.pay_link,t.payment_hash);const a=this.g.user.wallets.find(t=>t.id===e.wallet),{data:s}=await LNbits.api.payInvoice(a,t.payment_request);e.payment_hash=s.payment_hash,await this.installExtension(e)}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}finally{this.selectedExtension.inProgress=!1}},async payAndEnable(e){try{const t=await this.requestPaymentForEnable(e.id,e.payToEnable.paidAmount),a=this.g.user.wallets.find(t=>t.id===e.payToEnable.paymentWallet),{data:s}=await LNbits.api.payInvoice(a,t.payment_request);this.enableExtension(e),this.showPayToEnableDialog=!1}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async showInstallQRCode(e){this.selectedRelease=e;try{const t=await this.requestPaymentForInstall(this.selectedExtension.id,e);this.selectedRelease.paymentRequest=t.payment_request,this.selectedRelease.payment_hash=t.payment_hash,this.selectedRelease=_.clone(this.selectedRelease),this.rememberPaylinkHash(this.selectedRelease.pay_link,this.selectedRelease.payment_hash),this.subscribeToPaylinkWs(this.selectedRelease.pay_link,t.payment_hash)}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async showEnableQRCode(e){try{e.payToEnable.showQRCode=!0,this.selectedExtension=_.clone(e);const t=await this.requestPaymentForEnable(e.id,e.payToEnable.paidAmount);e.payToEnable.paymentRequest=t.payment_request,this.selectedExtension=_.clone(e);const a=new URL(window.location);a.protocol="https:"===a.protocol?"wss":"ws",a.pathname=`/api/v1/ws/${t.payment_hash}`;const s=new WebSocket(a);s.addEventListener("message",async({data:t})=>{!1===JSON.parse(t).pending&&(Quasar.Notify.create({type:"positive",message:"Invoice Paid!"}),this.enableExtension(e),s.close())})}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async requestPaymentForInstall(e,t){const{data:a}=await LNbits.api.request("PUT",`/api/v1/extension/${e}/invoice/install`,this.g.user.wallets[0].adminkey,{ext_id:e,archive:t.archive,source_repo:t.source_repo,cost_sats:t.paidAmount,version:t.version});return a},async requestPaymentForEnable(e,t){const{data:a}=await LNbits.api.request("PUT",`/api/v1/extension/${e}/invoice/enable`,this.g.user.wallets[0].adminkey,{amount:t});return a},clearHangingInvoice(e){this.forgetPaylinkHash(e.pay_link),e.payment_hash=null},rememberPaylinkHash(e,t){this.$q.localStorage.set(`lnbits.extensions.paylink.${e}`,t)},getPaylinkHash(e){return this.$q.localStorage.getItem(`lnbits.extensions.paylink.${e}`)},forgetPaylinkHash(e){this.$q.localStorage.remove(`lnbits.extensions.paylink.${e}`)},subscribeToPaylinkWs(e,t){const a=new URL(`${e}/${t}`);a.protocol="https:"===a.protocol?"wss":"ws",this.paylinkWebsocket=new WebSocket(a),this.paylinkWebsocket.addEventListener("message",async({data:e})=>{JSON.parse(e).paid?(Quasar.Notify.create({type:"positive",message:"Invoice Paid!"}),this.installExtension(this.selectedRelease)):Quasar.Notify.create({type:"warning",message:"Invoice tracking lost!"})})},unsubscribeFromPaylinkWs(){try{this.paylinkWebsocket&&this.paylinkWebsocket.close()}catch(e){console.warn(e)}},hasNewVersion(e){if(e.installedRelease&&e.latestRelease)return e.installedRelease.version!==e.latestRelease.version},isInstalledVersion(e,t){if(e.installedRelease)return e.installedRelease.source_repo===t.source_repo&&e.installedRelease.version===t.version},getReleaseIcon:e=>e.is_version_compatible?e.isInstalled?"download_done":"download":"block",getReleaseIconColor:e=>e.is_version_compatible?e.isInstalled?"text-green":"":"text-red",async getGitHubReleaseDetails(e){if(!e.is_github_release||e.loaded)return;const[t,a]=e.source_repo.split("/");e.inProgress=!0;try{const{data:s}=await LNbits.api.request("GET",`/api/v1/extension/release/${t}/${a}/${e.version}`,this.g.user.wallets[0].adminkey);e.loaded=!0,e.is_version_compatible=s.is_version_compatible,e.min_lnbits_version=s.min_lnbits_version,e.warning=s.warning}catch(t){console.warn(t),e.error=t,LNbits.utils.notifyApiError(t)}finally{e.inProgress=!1}},async selectAllUpdatableExtensionss(){this.updatableExtensions.forEach(e=>e.selectedForUpdate=!0)},async updateSelectedExtensions(){let e=0;for(const t of this.updatableExtensions)try{if(!t.selectedForUpdate)continue;t.inProgress=!0,await LNbits.api.request("POST","/api/v1/extension",this.g.user.wallets[0].adminkey,{ext_id:t.id,archive:t.latestRelease.archive,source_repo:t.latestRelease.source_repo,payment_hash:t.latestRelease.payment_hash,version:t.latestRelease.version}),e++,t.isAvailable=!0,t.isInstalled=!0,t.isUpgraded=!0,t.inProgress=!1,t.installedRelease=t.latestRelease,t.isActive=!0,this.toggleExtension(t)}catch(e){console.warn(e),Quasar.Notify.create({type:"negative",message:`Failed to update ${t.id}!`})}finally{t.inProgress=!1}Quasar.Notify.create({type:e?"positive":"warning",message:`${e||"No"} extensions updated!`}),this.showUpdateAllDialog=!1},async fetchAllExtensions(){try{const{data:e}=await LNbits.api.request("GET","/api/v1/extension/all");return e}catch(e){return console.warn(e),LNbits.utils.notifyApiError(e),[]}}},async created(){this.extensions=await this.fetchAllExtensions(),this.extbuilderEnabled=user.admin||this.LNBITS_EXT_BUILDER;const e=window.location.hash.replace("#",""),t=this.extensions.find(t=>t.id===e);t&&(this.searchTerm=t.id,t.isInstalled&&(this.tab="installed")),this.updatableExtensions=this.extensions.filter(e=>this.hasNewVersion(e)),this.filterExtensions(this.searchTerm,this.tab)}},window.PageFirstInstall={template:"#page-first-install",mixins:[window.windowMixin],data:()=>({loginData:{isPwd:!0,isPwdRepeat:!0,username:"",password:"",passwordRepeat:""}}),computed:{checkPasswordsMatch(){return this.loginData.password!==this.loginData.passwordRepeat}},methods:{async setPassword(){try{await LNbits.api.request("PUT","/api/v1/auth/first_install",null,{username:this.loginData.username,password:this.loginData.password,password_repeat:this.loginData.passwordRepeat}),window.location.href="/admin"}catch(e){LNbits.utils.notifyApiError(e)}}},created(){document.title="First Install - LNbits"}},window.PagePayments={template:"#page-payments",mixins:[window.windowMixin],data:()=>({payments:[],dailyChartData:[],searchDate:{from:null,to:null},searchData:{wallet_id:null,payment_hash:null,memo:null,internal_memo:null},statusFilters:{success:!0,pending:!0,failed:!0,incoming:!0,outgoing:!0},chartData:{showPaymentStatus:!0,showPaymentTags:!0,showBalance:!0,showWalletsSize:!1,showBalanceInOut:!1,showPaymentCountInOut:!1},searchOptions:{status:[]},paymentsTable:{columns:[{name:"status",align:"left",label:"Status",field:"status",sortable:!1},{name:"created_at",align:"left",label:"Created At",field:"created_at",sortable:!0},{name:"amount",align:"right",label:"Amount",field:"amount",sortable:!0},{name:"amountFiat",align:"right",label:"Fiat",field:"amountFiat",sortable:!1},{name:"fee_sats",align:"left",label:"Fee",field:"fee_sats",sortable:!0},{name:"tag",align:"left",label:"Tag",field:"tag",sortable:!1},{name:"memo",align:"left",label:"Memo",field:"memo",sortable:!1,max_length:20},{name:"internal_memo",align:"left",label:"Internal Memo",field:"internal_memo",sortable:!1,max_length:20},{name:"wallet_id",align:"left",label:"Wallet (ID)",field:"wallet_id",sortable:!1},{name:"payment_hash",align:"left",label:"Payment Hash",field:"payment_hash",sortable:!1}],pagination:{sortBy:"created_at",rowsPerPage:25,page:1,descending:!0,rowsNumber:10},search:null,hideEmpty:!0,loading:!1},chartsReady:!1,showDetails:!1,paymentDetails:null,lnbitsBalance:0}),async mounted(){this.chartsReady=!0,await this.$nextTick(),this.initCharts(),await this.fetchPayments()},computed:{},methods:{async fetchPayments(e){const t=Object.entries(this.searchData).reduce((e,[t,a])=>a?(e[t]=a,e):e,{});delete t["time[ge]"],delete t["time[le]"],this.searchDate.from&&(t["time[ge]"]=this.searchDate.from+"T00:00:00"),this.searchDate.to&&(t["time[le]"]=this.searchDate.to+"T23:59:59"),this.paymentsTable.filter=t;try{const t=LNbits.utils.prepareFilterQuery(this.paymentsTable,e),{data:a}=await LNbits.api.request("GET",`/api/v1/payments/all/paginated?${t}`);this.paymentsTable.pagination.rowsNumber=a.total,this.payments=a.data.map(e=>(e.extra&&e.extra.tag&&(e.tag=e.extra.tag),e.timeFrom=moment.utc(e.created_at).local().fromNow(),e.outgoing=e.amount<0,e.amount=new Intl.NumberFormat(this.g.locale).format(e.amount/1e3)+" sats",e.extra?.wallet_fiat_amount&&(e.amountFiat=this.formatCurrency(e.extra.wallet_fiat_amount,e.extra.wallet_fiat_currency)),e.extra?.internal_memo&&(e.internal_memo=e.extra.internal_memo),e.fee_sats=new Intl.NumberFormat(this.g.locale).format(e.fee/1e3)+" sats",e))}catch(e){console.error(e),LNbits.utils.notifyApiError(e)}finally{this.updateCharts(e)}},async searchPaymentsBy(e,t){e&&(this.searchData[e]=t),await this.fetchPayments()},clearDateSeach(){this.searchDate={from:null,to:null},delete this.paymentsTable.filter["time[ge]"],delete this.paymentsTable.filter["time[le]"],this.fetchPayments()},searchByDate(){"string"==typeof this.searchDate&&(this.searchDate={from:this.searchDate,to:this.searchDate}),this.searchDate.from&&(this.paymentsTable.filter["time[ge]"]=this.searchDate.from+"T00:00:00"),this.searchDate.to&&(this.paymentsTable.filter["time[le]"]=this.searchDate.to+"T23:59:59"),this.fetchPayments()},handleFilterChanged(){const{success:e,pending:t,failed:a,incoming:s,outgoing:i}=this.statusFilters;delete this.searchData["status[ne]"],delete this.searchData["status[eq]"],e&&t&&a||(e&&t?this.searchData["status[ne]"]="failed":e&&a?this.searchData["status[ne]"]="pending":a&&t?this.searchData["status[ne]"]="success":e?this.searchData["status[eq]"]="success":t?this.searchData["status[eq]"]="pending":a&&(this.searchData["status[eq]"]="failed")),delete this.searchData["amount[ge]"],delete this.searchData["amount[le]"],s&&i||(s?this.searchData["amount[ge]"]="0":i&&(this.searchData["amount[le]"]="0")),this.fetchPayments()},showDetailsToggle(e){return this.paymentDetails=e,this.showDetails=!this.showDetails},formatCurrency(e,t){try{return LNbits.utils.formatCurrency(e,t)}catch(t){return console.error(t),`${e} ???`}},shortify:(e,t=10)=>(valueLength=(e||"").length,valueLength<=t?e:`${e.substring(0,5)}...${e.substring(valueLength-5,valueLength)}`),async updateCharts(e){let t=LNbits.utils.prepareFilterQuery(this.paymentsTable,e);try{const{data:e}=await LNbits.api.request("GET",`/api/v1/payments/stats/count?${t}&count_by=status`);e.sort((e,t)=>e.field-t.field).reverse(),this.searchOptions.status=e.map(e=>e.field),this.paymentsStatusChart.data.datasets[0].data=e.map(e=>e.total),this.paymentsStatusChart.data.labels=[...this.searchOptions.status],this.paymentsStatusChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}try{const{data:e}=await LNbits.api.request("GET",`/api/v1/payments/stats/wallets?${t}`),a=e.map(e=>e.balance/e.payments_count),s=Math.min(...a),i=Math.max(...a),n=e=>Math.floor(3+22*(e-s)/(i-s)),l=this.randomColors(20),o=e.map((e,t)=>({data:[{x:e.payments_count,y:e.balance,r:n(Math.max(e.balance/e.payments_count,5))}],label:e.wallet_name,wallet_id:e.wallet_id,backgroundColor:l[t%100],hoverOffset:4}));this.paymentsWalletsChart.data.datasets=o,this.paymentsWalletsChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}try{const{data:e}=await LNbits.api.request("GET",`/api/v1/payments/stats/count?${t}&count_by=tag`);this.searchOptions.tag=e.map(e=>e.field),this.searchOptions.status.sort(),this.paymentsTagsChart.data.datasets[0].data=e.map(e=>e.total),this.paymentsTagsChart.data.labels=e.map(e=>e.field||"core"),this.paymentsTagsChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}try{const t=Object.entries(this.searchData).reduce((e,[t,a])=>a?(e[t]=a,e):e,{}),a={...this.paymentsTable,filter:t},s=LNbits.utils.prepareFilterQuery(a,e);let{data:i}=await LNbits.api.request("GET",`/api/v1/payments/stats/daily?${s}`);const n=this.searchDate.from+"T00:00:00",l=this.searchDate.to+"T23:59:59";this.lnbitsBalance=i.length?i[i.length-1].balance:0,i=i.filter(e=>this.searchDate.from&&this.searchDate.to?e.date>=n&&e.date<=l:this.searchDate.from?e.date>=n:!this.searchDate.to||e.date<=l),this.paymentsDailyChart.data.datasets=[{label:"Balance",data:i.map(e=>e.balance),pointStyle:!1,borderWidth:2,tension:.7,fill:1},{label:"Fees",data:i.map(e=>e.fee),pointStyle:!1,borderWidth:1,tension:.4,fill:1}],this.paymentsDailyChart.data.labels=i.map(e=>e.date.substring(0,10)),this.paymentsDailyChart.update(),this.paymentsBalanceInOutChart.data.datasets=[{label:"Incoming Payments Balance",data:i.map(e=>e.balance_in)},{label:"Outgoing Payments Balance",data:i.map(e=>e.balance_out)}],this.paymentsBalanceInOutChart.data.labels=i.map(e=>e.date.substring(0,10)),this.paymentsBalanceInOutChart.update(),this.paymentsCountInOutChart.data.datasets=[{label:"Incoming Payments Count",data:i.map(e=>e.count_in)},{label:"Outgoing Payments Count",data:i.map(e=>-e.count_out)}],this.paymentsCountInOutChart.data.labels=i.map(e=>e.date.substring(0,10)),this.paymentsCountInOutChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async initCharts(){const e=this.$q.localStorage.getItem("lnbits.payments.chartData")||{};this.chartData={...this.chartData,...e},this.chartsReady?(this.paymentsStatusChart=new Chart(this.$refs.paymentsStatusChart.getContext("2d"),{type:"doughnut",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchPaymentsBy("status",a.data.labels[e])}}},data:{datasets:[{label:"",data:[],backgroundColor:["rgb(0, 205, 86)","rgb(64, 72, 78)","rgb(255, 99, 132)"],hoverOffset:4}]}}),this.paymentsWalletsChart=new Chart(this.$refs.paymentsWalletsChart.getContext("2d"),{type:"bubble",options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1},title:{display:!1}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].datasetIndex;this.searchPaymentsBy("wallet_id",a.data.datasets[e].wallet_id)}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(20),hoverOffset:4}]}}),this.paymentsTagsChart=new Chart(this.$refs.paymentsTagsChart.getContext("2d"),{type:"pie",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1},legend:{display:!1,title:{display:!1,text:"Tags"}}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchPaymentsBy("tag",a.data.labels[e])}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(10),hoverOffset:4}]}}),this.paymentsDailyChart=new Chart(this.$refs.paymentsDailyChart.getContext("2d"),{type:"line",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1},legend:{display:!0,title:{display:!1,text:"Tags"}}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(10),hoverOffset:4}]}}),this.paymentsBalanceInOutChart=new Chart(this.$refs.paymentsBalanceInOutChart.getContext("2d"),{type:"bar",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1},legend:{display:!0,title:{display:!1,text:"Tags"}}},scales:{x:{stacked:!0},y:{stacked:!0}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(50),hoverOffset:4}]}}),this.paymentsCountInOutChart=new Chart(this.$refs.paymentsCountInOutChart.getContext("2d"),{type:"bar",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1},legend:{display:!0,title:{display:!1,text:""}}},scales:{x:{stacked:!0},y:{stacked:!0}}},data:{datasets:[{label:"",data:[],backgroundColor:this.randomColors(80),hoverOffset:4}]}})):console.warn("Charts are not ready yet. Initialization delayed.")},saveChartsPreferences(){this.$q.localStorage.set("lnbits.payments.chartData",this.chartData)},randomColors(e=1){const t=[];for(let a=1;a<=10;a++)for(let s=1;s<=10;s++)t.push(`rgb(${s*e*33%200}, ${71*(a+s+e)%255}, ${(a+30*e)%255})`);return t}}},window.PageNode={mixins:[window.windowMixin],template:"#page-node",config:{globalProperties:{LNbits:LNbits,msg:"hello"}},data(){return{isSuperUser:!1,wallet:{},tab:"dashboard",payments:1e3,info:{},channel_stats:{},channels:{data:[],filter:""},activeBalance:{},ranks:{},peers:{data:[],filter:""},connectPeerDialog:{show:!1,data:{}},setFeeDialog:{show:!1,data:{fee_ppm:0,fee_base_msat:0}},openChannelDialog:{show:!1,data:{}},closeChannelDialog:{show:!1,data:{}},nodeInfoDialog:{show:!1,data:{}},transactionDetailsDialog:{show:!1,data:{}},states:[{label:"Active",value:"active",color:"green"},{label:"Pending",value:"pending",color:"orange"},{label:"Inactive",value:"inactive",color:"grey"},{label:"Closed",value:"closed",color:"red"}],stateFilters:[{label:"Active",value:"active"},{label:"Pending",value:"pending"}],paymentsTable:{data:[],columns:[{name:"pending",label:""},{name:"date",align:"left",label:this.$t("date"),field:"date",sortable:!0},{name:"sat",align:"right",label:this.$t("amount"),field:e=>this.formatMsat(e.amount),sortable:!0},{name:"fee",align:"right",label:this.$t("fee"),field:"fee"},{name:"destination",align:"right",label:"Destination",field:"destination"},{name:"memo",align:"left",label:this.$t("memo"),field:"memo"}],pagination:{rowsPerPage:10,page:1,rowsNumber:10},filter:null},invoiceTable:{data:[],columns:[{name:"pending",label:""},{name:"paid_at",field:"paid_at",align:"left",label:"Paid at",sortable:!0},{name:"expiry",label:this.$t("expiry"),field:"expiry",align:"left",sortable:!0},{name:"amount",label:this.$t("amount"),field:e=>this.formatMsat(e.amount),sortable:!0},{name:"memo",align:"left",label:this.$t("memo"),field:"memo"}],pagination:{rowsPerPage:10,page:1,rowsNumber:10},filter:null}}},created(){this.getInfo(),this.get1MLStats()},watch:{tab(e){"transactions"!==e||this.paymentsTable.data.length?"channels"!==e||this.channels.data.length||(this.getChannels(),this.getPeers()):(this.getPayments(),this.getInvoices())}},computed:{checkChanges(){return!_.isEqual(this.settings,this.formData)},filteredChannels(){return this.stateFilters?this.channels.data.filter(e=>this.stateFilters.find(({value:t})=>t==e.state)):this.channels.data},totalBalance(){return this.filteredChannels.reduce((e,t)=>(e.local_msat+=t.balance.local_msat,e.remote_msat+=t.balance.remote_msat,e.total_msat+=t.balance.total_msat,e),{local_msat:0,remote_msat:0,total_msat:0})}},methods:{formatMsat:e=>LNbits.utils.formatMsat(e),nodeApi(e,t,a){const s=new URLSearchParams(a?.query);return LNbits.api.request(e,`/node/api/v1${t}?${s}`,{},a?.data).catch(e=>{LNbits.utils.notifyApiError(e)})},getChannel(e){return this.nodeApi("GET",`/channels/${e}`).then(e=>{this.setFeeDialog.data.fee_ppm=e.data.fee_ppm,this.setFeeDialog.data.fee_base_msat=e.data.fee_base_msat})},getChannels(){return this.nodeApi("GET","/channels").then(e=>{this.channels.data=e.data})},getInfo(){return this.nodeApi("GET","/info").then(e=>{this.info=e.data,this.channel_stats=e.data.channel_stats}).catch(()=>{this.info={},this.channel_stats={}})},get1MLStats(){return this.nodeApi("GET","/rank").then(e=>{this.ranks=e.data}).catch(()=>{this.ranks={}})},getPayments(e){e&&(this.paymentsTable.pagination=e.pagination);let t=this.paymentsTable.pagination;const a={limit:t.rowsPerPage,offset:(t.page-1)*t.rowsPerPage??0};return this.nodeApi("GET","/payments",{query:a}).then(e=>{this.paymentsTable.data=e.data.data,this.paymentsTable.pagination.rowsNumber=e.data.total})},getInvoices(e){e&&(this.invoiceTable.pagination=e.pagination);let t=this.invoiceTable.pagination;const a={limit:t.rowsPerPage,offset:(t.page-1)*t.rowsPerPage??0};return this.nodeApi("GET","/invoices",{query:a}).then(e=>{this.invoiceTable.data=e.data.data,this.invoiceTable.pagination.rowsNumber=e.data.total})},getPeers(){return this.nodeApi("GET","/peers").then(e=>{this.peers.data=e.data})},connectPeer(){this.nodeApi("POST","/peers",{data:this.connectPeerDialog.data}).then(()=>{this.connectPeerDialog.show=!1,this.getPeers()})},disconnectPeer(e){LNbits.utils.confirmDialog("Do you really wanna disconnect this peer?").onOk(()=>{this.nodeApi("DELETE",`/peers/${e}`).then(e=>{Quasar.Notify.create({message:"Disconnected",icon:null}),this.needsRestart=!0,this.getPeers()})})},setChannelFee(e){this.nodeApi("PUT",`/channels/${e}`,{data:this.setFeeDialog.data}).then(e=>{this.setFeeDialog.show=!1,this.getChannels()}).catch(LNbits.utils.notifyApiError)},openChannel(){this.nodeApi("POST","/channels",{data:this.openChannelDialog.data}).then(e=>{this.openChannelDialog.show=!1,this.getChannels()}).catch(e=>{console.log(e)})},showCloseChannelDialog(e){this.closeChannelDialog.show=!0,this.closeChannelDialog.data={force:!1,short_id:e.short_id,...e.point}},closeChannel(){this.nodeApi("DELETE","/channels",{query:this.closeChannelDialog.data}).then(e=>{this.closeChannelDialog.show=!1,this.getChannels()})},showSetFeeDialog(e){this.setFeeDialog.show=!0,this.setFeeDialog.channel_id=e,this.getChannel(e)},showOpenChannelDialog(e){this.openChannelDialog.show=!0,this.openChannelDialog.data={peer_id:e,funding_amount:0}},showNodeInfoDialog(e){this.nodeInfoDialog.show=!0,this.nodeInfoDialog.data=e},showTransactionDetailsDialog(e){this.transactionDetailsDialog.show=!0,this.transactionDetailsDialog.data=e},shortenNodeId:e=>e?e.substring(0,5)+"..."+e.substring(e.length-5):"..."}},window.PageNodePublic={template:"#page-node-public",mixins:[window.windowMixin],data:()=>({enabled:!1,isSuperUser:!1,wallet:{},tab:"dashboard",payments:1e3,info:{},channel_stats:{},channels:[],activeBalance:{},ranks:{},peers:[],connectPeerDialog:{show:!1,data:{}},openChannelDialog:{show:!1,data:{}},closeChannelDialog:{show:!1,data:{}},nodeInfoDialog:{show:!1,data:{}},states:[{label:"Active",value:"active",color:"green"},{label:"Pending",value:"pending",color:"orange"},{label:"Inactive",value:"inactive",color:"grey"},{label:"Closed",value:"closed",color:"red"}]}),created(){this.getInfo(),this.get1MLStats()},methods:{formatMsat:e=>LNbits.utils.formatMsat(e),api:(e,t,a)=>LNbits.api.request(e,"/node/public/api/v1"+t,{},a),getInfo(){this.api("GET","/info",{}).then(e=>{this.info=e.data,this.channel_stats=e.data.channel_stats,this.enabled=!0}).catch(()=>{this.info={},this.channel_stats={}})},get1MLStats(){this.api("GET","/rank",{}).then(e=>{this.ranks=e.data}).catch(()=>{this.ranks={}})}}},window.PageAudit={template:"#page-audit",mixins:[window.windowMixin],data:()=>({chartsReady:!1,auditEntries:[],searchData:{user_id:"",ip_address:"",request_type:"",component:"",request_method:"",response_code:"",path:""},searchOptions:{component:[],request_method:[],response_code:[]},auditTable:{columns:[{name:"created_at",align:"center",label:"Date",field:"created_at",sortable:!0},{name:"duration",align:"left",label:"Duration (sec)",field:"duration",sortable:!0},{name:"component",align:"left",label:"Component",field:"component",sortable:!1},{name:"request_method",align:"left",label:"Method",field:"request_method",sortable:!1},{name:"response_code",align:"left",label:"Code",field:"response_code",sortable:!1},{name:"user_id",align:"left",label:"User Id",field:"user_id",sortable:!1},{name:"ip_address",align:"left",label:"IP Address",field:"ip_address",sortable:!1},{name:"path",align:"left",label:"Path",field:"path",sortable:!1}],pagination:{sortBy:"created_at",rowsPerPage:10,page:1,descending:!0,rowsNumber:10},search:null,hideEmpty:!0,loading:!1},auditDetailsDialog:{data:null,show:!1}}),async created(){},async mounted(){this.chartsReady=!0,await this.$nextTick(),this.initCharts(),await this.fetchAudit()},methods:{async fetchAudit(e){try{const t=LNbits.utils.prepareFilterQuery(this.auditTable,e),{data:a}=await LNbits.api.request("GET",`/audit/api/v1?${t}`);this.auditTable.pagination.rowsNumber=a.total,this.auditEntries=a.data,await this.fetchAuditStats(e)}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}finally{this.auditTable.loading=!1}},async fetchAuditStats(e){try{const t=LNbits.utils.prepareFilterQuery(this.auditTable,e),{data:a}=await LNbits.api.request("GET",`/audit/api/v1/stats?${t}`),s=a.request_method.map(e=>e.field);this.searchOptions.request_method=[...new Set(this.searchOptions.request_method.concat(s))],this.requestMethodChart.data.labels=s,this.requestMethodChart.data.datasets[0].data=a.request_method.map(e=>e.total),this.requestMethodChart.update();const i=a.response_code.map(e=>e.field);this.searchOptions.response_code=[...new Set(this.searchOptions.response_code.concat(i))],this.responseCodeChart.data.labels=i,this.responseCodeChart.data.datasets[0].data=a.response_code.map(e=>e.total),this.responseCodeChart.update();const n=a.component.map(e=>e.field);this.searchOptions.component=[...new Set(this.searchOptions.component.concat(n))],this.componentUseChart.data.labels=n,this.componentUseChart.data.datasets[0].data=a.component.map(e=>e.total),this.componentUseChart.update(),this.longDurationChart.data.labels=a.long_duration.map(e=>e.field),this.longDurationChart.data.datasets[0].data=a.long_duration.map(e=>e.total),this.longDurationChart.update()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async searchAuditBy(e,t){e&&(this.searchData[e]=t),this.auditTable.filter=Object.entries(this.searchData).reduce((e,[t,a])=>a?(e[t]=a,e):e,{}),await this.fetchAudit()},showDetailsDialog(e){const t=JSON.parse(e?.request_details||"");try{t.body&&(t.body=JSON.parse(t.body))}catch(e){}this.auditDetailsDialog.data=JSON.stringify(t,null,4),this.auditDetailsDialog.show=!0},shortify:e=>(valueLength=(e||"").length,valueLength<=10?e:`${e.substring(0,5)}...${e.substring(valueLength-5,valueLength)}`),async initCharts(){this.chartsReady?(this.responseCodeChart=new Chart(this.$refs.responseCodeChart.getContext("2d"),{type:"doughnut",options:{responsive:!0,plugins:{legend:{position:"bottom"},title:{display:!1,text:"HTTP Response Codes"}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchAuditBy("response_code",a.data.labels[e])}}},data:{datasets:[{label:"",data:[20,10],backgroundColor:["rgb(100, 99, 200)","rgb(54, 162, 235)","rgb(255, 205, 86)","rgb(255, 5, 86)","rgb(25, 205, 86)","rgb(255, 205, 250)"]}],labels:[]}}),this.requestMethodChart=new Chart(this.$refs.requestMethodChart.getContext("2d"),{type:"bar",options:{responsive:!0,maintainAspectRatio:!1,plugins:{title:{display:!1}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchAuditBy("request_method",a.data.labels[e])}}},data:{datasets:[{label:"",data:[],backgroundColor:["rgb(255, 99, 132)","rgb(54, 162, 235)","rgb(255, 205, 86)","rgb(255, 5, 86)","rgb(25, 205, 86)","rgb(255, 205, 250)"],hoverOffset:4}]}}),this.componentUseChart=new Chart(this.$refs.componentUseChart.getContext("2d"),{type:"pie",options:{responsive:!0,plugins:{legend:{position:"xxx"},title:{display:!1,text:"Components"}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchAuditBy("component",a.data.labels[e])}}},data:{datasets:[{data:[],backgroundColor:["rgb(255, 99, 132)","rgb(54, 162, 235)","rgb(255, 205, 86)","rgb(255, 5, 86)","rgb(25, 205, 86)","rgb(255, 205, 250)","rgb(100, 205, 250)","rgb(120, 205, 250)","rgb(140, 205, 250)","rgb(160, 205, 250)"],hoverOffset:4}]}}),this.longDurationChart=new Chart(this.$refs.longDurationChart.getContext("2d"),{type:"bar",options:{responsive:!0,indexAxis:"y",maintainAspectRatio:!1,plugins:{legend:{title:{display:!1,text:"Long Duration"}}},onClick:(e,t,a)=>{if(t[0]){const e=t[0].index;this.searchAuditBy("path",a.data.labels[e])}}},data:{datasets:[{label:"",data:[],backgroundColor:["rgb(255, 99, 132)","rgb(54, 162, 235)","rgb(255, 205, 86)","rgb(255, 5, 86)","rgb(25, 205, 86)","rgb(255, 205, 250)","rgb(100, 205, 250)","rgb(120, 205, 250)","rgb(140, 205, 250)","rgb(160, 205, 250)"],hoverOffset:4}]}})):console.warn("Charts are not ready yet. Initialization delayed.")}}},window.PageWallet={template:"#page-wallet",mixins:[window.windowMixin],data(){return{parse:{show:!1,invoice:null,lnurlpay:null,lnurlauth:null,data:{request:"",amount:0,comment:"",internalMemo:null,unit:"sat"},paymentChecker:null,copy:{show:!1},camera:{show:!1,camera:"auto"}},receive:{show:!1,status:"pending",paymentReq:null,paymentHash:null,amountMsat:null,minMax:[0,21e14],lnurl:null,units:["sat",...this.currencies||[]],unit:"sat",fiatProvider:"",data:{amount:null,memo:"",internalMemo:null,payment_hash:null}},update:{name:null,currency:null},hasNfc:!1,nfcReaderAbortController:null,formattedFiatAmount:0,formattedExchange:null,paymentFilter:{"status[ne]":"failed"},chartConfig:Quasar.LocalStorage.getItem("lnbits.wallets.chartConfig")||{showPaymentInOutChart:!0,showBalanceChart:!0,showBalanceInOutChart:!0}}},computed:{canPay(){return!!this.parse.invoice&&(this.parse.invoice.expired?(Quasar.Notify.create({message:"Invoice has expired",color:"negative"}),!1):this.parse.invoice.sat<=this.g.wallet.sat)},formattedAmount(){return"sat"==this.receive.unit&&this.g.isSatsDenomination?LNbits.utils.formatMsat(this.receive.amountMsat)+" sat":LNbits.utils.formatCurrency(Number(this.receive.data.amount).toFixed(2),this.g.isSatsDenomination?this.receive.unit:this.g.denomination)},formattedSatAmount(){return LNbits.utils.formatMsat(this.receive.amountMsat)+" sat"}},methods:{handleSendLnurl(e){this.parse.data.request=e,this.parse.show=!0,this.lnurlScan()},msatoshiFormat:e=>LNbits.utils.formatSat(e/1e3),showReceiveDialog(){this.receive.show=!0,this.receive.status="pending",this.receive.paymentReq=null,this.receive.paymentHash=null,this.receive.data.amount=null,this.receive.data.memo=null,this.receive.data.internalMemo=null,this.receive.data.payment_hash=null,this.receive.unit=this.g.isFiatPriority&&this.g.wallet.currency||"sat",this.receive.minMax=[0,21e14],this.receive.lnurl=null},onReceiveDialogHide(){this.hasNfc&&this.nfcReaderAbortController.abort()},showParseDialog(){this.parse.show=!0,this.parse.invoice=null,this.parse.lnurlpay=null,this.parse.lnurlauth=null,this.parse.copy.show=window.isSecureContext&&void 0!==navigator.clipboard?.readText,this.parse.data.request="",this.parse.data.comment="",this.parse.data.internalMemo=null,this.parse.data.paymentChecker=null,this.parse.camera.show=!1},closeParseDialog(){setTimeout(()=>{clearInterval(this.parse.paymentChecker)},1e4)},handleBalanceUpdate(e){this.g.wallet.sat=this.g.wallet.sat+e},createInvoice(){this.receive.status="loading",this.g.isSatsDenomination||(this.receive.data.amount=100*this.receive.data.amount),LNbits.api.createInvoice(this.g.wallet,this.receive.data.amount,this.receive.data.memo,this.receive.unit,this.receive.lnurlWithdraw,this.receive.fiatProvider,this.receive.data.internalMemo,this.receive.data.payment_hash).then(e=>{if(this.g.updatePayments=!this.g.updatePayments,this.receive.status="success",this.receive.paymentReq=e.data.bolt11,this.receive.fiatPaymentReq=e.data.extra?.fiat_payment_request,this.receive.amountMsat=e.data.amount,this.receive.paymentHash=e.data.payment_hash,this.receive.lnurl||this.readNfcTag(),this.receive.lnurl&&null!==e.data.extra?.lnurl_response){!1===e.data.extra.lnurl_response&&(e.data.extra.lnurl_response="Unable to connect");const t=this.receive.lnurl.callback.split("/")[2];if("string"==typeof e.data.extra.lnurl_response)return void Quasar.Notify.create({timeout:5e3,type:"warning",message:`${t} lnurl-withdraw call failed.`,caption:e.data.extra.lnurl_response});!0===e.data.extra.lnurl_response&&Quasar.Notify.create({timeout:3e3,message:`Invoice sent to ${t}!`,spinner:!0})}}).catch(e=>{LNbits.utils.notifyApiError(e),this.receive.status="pending"})},lnurlScan(){LNbits.api.request("POST","/api/v1/lnurlscan",this.g.wallet.adminkey,{lnurl:this.parse.data.request}).then(e=>{const t=e.data;if("ERROR"!==t.status){if("payRequest"===t.tag)this.parse.lnurlpay=Object.freeze(t),this.parse.data.amount=t.minSendable/1e3;else if("login"===t.tag)this.parse.lnurlauth=Object.freeze(t);else if("withdrawRequest"===t.tag){this.parse.show=!1,this.receive.show=!0,this.receive.lnurlWithdraw=Object.freeze(t),this.receive.status="pending",this.receive.paymentReq=null,this.receive.paymentHash=null,this.receive.data.amount=t.maxWithdrawable/1e3,this.receive.data.memo=t.defaultDescription,this.receive.minMax=[t.minWithdrawable/1e3,t.maxWithdrawable/1e3];const e=t.callback.split("/")[2];this.receive.lnurl={domain:e,callback:t.callback,fixed:t.fixed}}}else Quasar.Notify.create({timeout:5e3,type:"warning",message:"lnurl scan failed.",caption:t.reason})}).catch(e=>{LNbits.utils.notifyApiError(e)})},decodeQR(e){this.parse.data.request=e,this.decodeRequest(),this.parse.camera.show=!1},isLnurl:e=>e.toLowerCase().startsWith("lnurl1")||e.startsWith("lnurlp://")||e.startsWith("lnurlw://")||e.startsWith("lnurlauth://")||e.match(/[\w.+-~_]+@[\w.+-~_]/),decodeRequest(){this.parse.show=!0,this.parse.data.request=this.parse.data.request.trim();const e=this.parse.data.request.toLowerCase();if(e.startsWith("lightning:")?this.parse.data.request=this.parse.data.request.slice(10):e.startsWith("lnurl:")?this.parse.data.request=this.parse.data.request.slice(6):e.includes("lightning=lnurl1")&&(this.parse.data.request=this.parse.data.request.split("lightning=")[1].split("&")[0]),this.isLnurl(this.parse.data.request))return void this.lnurlScan();let t;this.parse.data.request.toLowerCase().includes("lightning")&&(this.parse.data.request=this.parse.data.request.split("lightning=")[1],this.parse.data.request.includes("&")&&(this.parse.data.request=this.parse.data.request.split("&")[0]));try{t=decode(this.parse.data.request)}catch(e){return Quasar.Notify.create({timeout:3e3,type:"warning",message:e+".",caption:"400 BAD REQUEST"}),void(this.parse.show=!1)}let a={msat:t.human_readable_part.amount,sat:t.human_readable_part.amount/1e3,fsat:LNbits.utils.formatSat(t.human_readable_part.amount/1e3),bolt11:this.parse.data.request};_.each(t.data.tags,e=>{if(_.isObject(e)&&_.has(e,"description"))if("payment_hash"===e.description)a.hash=e.value;else if("description"===e.description)a.description=e.value;else if("expiry"===e.description){const s=new Date(1e3*(t.data.time_stamp+e.value)),i=new Date(1e3*t.data.time_stamp);a.expireDate=Quasar.date.formatDate(s,"YYYY-MM-DDTHH:mm:ss.SSSZ"),a.createdDate=Quasar.date.formatDate(i,"YYYY-MM-DDTHH:mm:ss.SSSZ"),a.expireDateFrom=moment.utc(s).local().fromNow(),a.createdDateFrom=moment.utc(i).local().fromNow(),a.expired=!1}}),this.g.wallet.currency&&(a.fiatAmount=LNbits.utils.formatCurrency((a.sat/1e8*this.g.exchangeRate).toFixed(2),this.g.wallet.currency)),this.parse.invoice=Object.freeze(a)},payInvoice(){const e=Quasar.Notify.create({timeout:0,message:this.$t("payment_processing")});LNbits.api.payInvoice(this.g.wallet,this.parse.data.request,this.parse.data.internalMemo).then(t=>{e(),this.g.updatePayments=!this.g.updatePayments,this.parse.show=!1,"success"==t.data.status&&Quasar.Notify.create({type:"positive",message:this.$t("payment_successful")}),"pending"==t.data.status&&Quasar.Notify.create({type:"info",message:this.$t("payment_pending")})}).catch(t=>{e(),LNbits.utils.notifyApiError(t),this.g.updatePayments=!this.g.updatePayments,this.parse.show=!1})},payLnurl(){LNbits.api.request("post","/api/v1/payments/lnurl",this.g.wallet.adminkey,{res:this.parse.lnurlpay,lnurl:this.parse.data.request,unit:this.parse.data.unit,amount:1e3*this.parse.data.amount,comment:this.parse.data.comment,internalMemo:this.parse.data.internalMemo}).then(e=>{if(this.parse.show=!1,e.data.extra.success_action){const t=JSON.parse(e.data.extra.success_action);switch(t.tag){case"url":Quasar.Notify.create({message:`${t.url}`,caption:t.description,html:!0,type:"positive",timeout:0,closeBtn:!0});break;case"message":Quasar.Notify.create({message:t.message,type:"positive",timeout:0,closeBtn:!0});break;case"aes":this.utils.decryptLnurlPayAES(t,e.data.preimage),Quasar.Notify.create({message:value,caption:extra.success_action.description,html:!0,type:"positive",timeout:0,closeBtn:!0})}}}).catch(LNbits.utils.notifyApiError)},authLnurl(){const e=Quasar.Notify.create({timeout:10,message:"Performing authentication..."});LNbits.api.request("post","/api/v1/lnurlauth",wallet.adminkey,this.parse.lnurlauth).then(t=>{e(),Quasar.Notify.create({message:"Authentication successful.",type:"positive",timeout:3500}),this.parse.show=!1}).catch(e=>{e.response.data.reason?Quasar.Notify.create({message:`Authentication failed. ${this.parse.lnurlauth.callback} says:`,caption:e.response.data.reason,type:"warning",timeout:5e3}):LNbits.utils.notifyApiError(e)})},updateWallet(e){LNbits.api.request("PATCH","/api/v1/wallet",this.g.wallet.adminkey,e).then(e=>{this.g.wallet={...this.g.wallet,...e.data};const t=this.g.user.wallets.findIndex(t=>t.id===e.data.id);-1!==t&&(this.g.user.wallets[t]={...this.g.user.wallets[t],...e.data}),Quasar.Notify.create({message:"Wallet updated.",type:"positive",timeout:3500})}).catch(e=>{LNbits.utils.notifyApiError(e)})},pasteToTextArea(){this.$refs.textArea.focus(),navigator.clipboard.readText().then(e=>{this.parse.data.request=e.trim()})},readNfcTag(){try{if("undefined"==typeof NDEFReader)return void console.debug("NFC not supported on this device or browser.");const e=new NDEFReader;this.nfcReaderAbortController=new AbortController,this.nfcReaderAbortController.signal.onabort=e=>{console.debug("All NFC Read operations have been aborted.")},this.hasNfc=!0;const t=Quasar.Notify.create({message:"Tap your NFC tag to pay this invoice with LNURLw."});return e.scan({signal:this.nfcReaderAbortController.signal}).then(()=>{e.onreadingerror=()=>{Quasar.Notify.create({type:"negative",message:"There was an error reading this NFC tag."})},e.onreading=({message:e})=>{const a=new TextDecoder("utf-8"),s=e.records.find(e=>-1!==a.decode(e.data).toUpperCase().indexOf("LNURLW"));if(s){t(),Quasar.Notify.create({type:"positive",message:"NFC tag read successfully."});const e=a.decode(s.data);this.payInvoiceWithNfc(e)}else Quasar.Notify.create({type:"warning",message:"NFC tag does not have LNURLw record."})}})}catch(e){Quasar.Notify.create({type:"negative",message:e?e.toString():"An unexpected error has occurred."})}},payInvoiceWithNfc(e){const t=Quasar.Notify.create({timeout:0,spinner:!0,message:this.$t("processing_payment")});LNbits.api.request("POST",`/api/v1/payments/${this.receive.paymentReq}/pay-with-nfc`,this.g.wallet.adminkey,{lnurl_w:e}).then(e=>{t(),e.data.success?Quasar.Notify.create({type:"positive",message:"Payment successful"}):Quasar.Notify.create({type:"negative",message:e.data.detail||"Payment failed"})}).catch(e=>{t(),LNbits.utils.notifyApiError(e)})}},created(){const e=new URLSearchParams(window.location.search);(e.has("lightning")||e.has("lnurl"))&&(this.parse.data.request=e.get("lightning")||e.get("lnurl"),this.decodeRequest(),this.parse.show=!0);const t=this.g.user.wallets.find(e=>e.id===this.$route.params.id);t?(this.g.wallet=t,this.g.lastActiveWallet=t.id,this.$q.localStorage.setItem("lnbits.lastActiveWallet",t.id),this.$router.replace(`/wallet/${t.id}`)):(this.g.errorCode=404,this.g.errorMessage="Wallet not found.",this.$router.push("/error"))},watch:{"g.updatePaymentsHash"(){this.receive.show=!1},"g.updatePayments"(){this.parse.show=!1,this.g.wallet.currency&&this.$q.localStorage.getItem("lnbits.exchangeRate."+this.g.wallet.currency)&&(this.g.exchangeRate=this.$q.localStorage.getItem("lnbits.exchangeRate."+this.g.wallet.currency),this.g.fiatBalance=this.g.exchangeRate/1e8*this.g.wallet.sat)},"g.wallet"(){this.g.wallet.currency?(this.g.fiatTracking=!0,this.g.fiatBalance=this.g.exchangeRate/1e8*this.g.wallet.sat):(this.g.fiatBalance=0,this.g.fiatTracking=!1)},"g.isFiatPriority"(){this.receive.unit=this.g.isFiatPriority?this.g.wallet.currency:"sat"},"g.fiatBalance"(){this.formattedFiatAmount=LNbits.utils.formatCurrency(this.g.fiatBalance.toFixed(2),this.g.wallet.currency)},"g.exchangeRate"(){this.g.fiatTracking&&this.g.wallet.currency&&(this.g.fiatBalance=this.g.exchangeRate/1e8*this.g.wallet.sat,this.formattedExchange=LNbits.utils.formatCurrency(this.g.exchangeRate,this.g.wallet.currency))}}},window.PageWallets={template:"#page-wallets",mixins:[window.windowMixin],data:()=>({user:null,tab:"wallets",wallets:[],addWalletDialog:{show:!1},walletsTable:{columns:[{name:"name",align:"left",label:"Name",field:"name",sortable:!0},{name:"currency",align:"center",label:"Currency",field:"currency",sortable:!0},{name:"updated_at",align:"right",label:"Last Updated",field:"updated_at",sortable:!0}],pagination:{sortBy:"updated_at",rowsPerPage:12,page:1,descending:!0,rowsNumber:10},search:"",hideEmpty:!0,loading:!1}}),watch:{"walletsTable.search":{handler(){const e={};this.walletsTable.search&&(e.search=this.walletsTable.search),this.getUserWallets()}}},methods:{async getUserWallets(e){try{this.walletsTable.loading=!0;const t=LNbits.utils.prepareFilterQuery(this.walletsTable,e),{data:a}=await LNbits.api.request("GET",`/api/v1/wallet/paginated?${t}`,null);this.wallets=a.data,this.walletsTable.pagination.rowsNumber=a.total}catch(e){LNbits.utils.notifyApiError(e)}finally{this.walletsTable.loading=!1}},goToWallet(e){this.$router.push({path:"/wallet",query:{wal:e}})},formattedFiatAmount:(e,t)=>LNbits.utils.formatCurrency(Number(e).toFixed(2),t),formattedSatAmount:e=>LNbits.utils.formatMsat(e)+" sat"},async created(){await this.getUserWallets()}},window.PageUsers={template:"#page-users",mixins:[window.windowMixin],data:()=>({paymentsWallet:{},cancel:{},users:[],wallets:[],searchData:{user:"",username:"",email:"",pubkey:""},paymentPage:{show:!1},activeWallet:{userId:null,show:!1},activeUser:{data:null,showUserId:!1,show:!1},createWalletDialog:{data:{},show:!1},walletTable:{columns:[{name:"name",align:"left",label:"Name",field:"name"},{name:"id",align:"left",label:"Wallet Id",field:"id"},{name:"currency",align:"left",label:"Currency",field:"currency"},{name:"balance_msat",align:"left",label:"Balance",field:"balance_msat"}],pagination:{sortBy:"name",rowsPerPage:10,page:1,descending:!0,rowsNumber:10},search:null,hideEmpty:!0,loading:!1},usersTable:{columns:[{name:"admin",align:"left",label:"Admin",field:"admin",sortable:!1},{name:"wallet_id",align:"left",label:"Wallets",field:"wallet_id",sortable:!1},{name:"id",align:"left",label:"User Id",field:"id",sortable:!1},{name:"username",align:"left",label:"Username",field:"username",sortable:!1},{name:"email",align:"left",label:"Email",field:"email",sortable:!1},{name:"pubkey",align:"left",label:"Public Key",field:"pubkey",sortable:!1},{name:"balance_msat",align:"left",label:"Balance",field:"balance_msat",sortable:!1},{name:"transaction_count",align:"left",label:"Payments",field:"transaction_count",sortable:!1},{name:"last_payment",align:"left",label:"Last Payment",field:"last_payment",sortable:!1}],pagination:{sortBy:"created_at",rowsPerPage:10,page:1,descending:!0,rowsNumber:10},sortFields:[{name:"id",label:"User ID"},{name:"username",label:"Username"},{name:"email",label:"Email"},{name:"pubkey",label:"Public Key"},{name:"created_at",label:"Creation Date"},{name:"updated_at",label:"Last Updated"}],search:null,hideEmpty:!0,loading:!1}}),watch:{"usersTable.hideEmpty":function(e,t){this.usersTable.filter=e?{"transaction_count[gt]":0}:{},this.fetchUsers()}},created(){this.fetchUsers()},methods:{formatSat:e=>LNbits.utils.formatSat(Math.floor(e/1e3)),backToUsersPage(){this.activeUser.show=!1,this.paymentPage.show=!1,this.activeWallet.show=!1,this.fetchUsers()},handleBalanceUpdate(){this.fetchWallets(this.activeWallet.userId)},resetPassword(e){return LNbits.api.request("PUT",`/users/api/v1/user/${e}/reset_password`).then(e=>{LNbits.utils.confirmDialog(this.$t("reset_key_generated")+" "+this.$t("reset_key_copy")).onOk(()=>{const t=window.location.origin+"?reset_key="+e.data;this.utils.copyText(t)})}).catch(LNbits.utils.notifyApiError)},sortByColumn(e){this.usersTable.pagination.sortBy===e?this.usersTable.pagination.descending=!this.usersTable.pagination.descending:(this.usersTable.pagination.sortBy=e,this.usersTable.pagination.descending=!1),this.fetchUsers()},createUser(){LNbits.api.request("POST","/users/api/v1/user",null,this.activeUser.data).then(e=>{Quasar.Notify.create({type:"positive",message:"User created!",icon:null}),this.activeUser.setPassword=!0,this.activeUser.data=e.data,this.fetchUsers()}).catch(LNbits.utils.notifyApiError)},updateUser(){LNbits.api.request("PUT",`/users/api/v1/user/${this.activeUser.data.id}`,null,this.activeUser.data).then(()=>{Quasar.Notify.create({type:"positive",message:"User updated!",icon:null}),this.activeUser.data=null,this.activeUser.show=!1,this.fetchUsers()}).catch(LNbits.utils.notifyApiError)},createWallet(){const e=this.activeWallet.userId;e?LNbits.api.request("POST",`/users/api/v1/user/${e}/wallet`,null,this.createWalletDialog.data).then(()=>{this.fetchWallets(e),Quasar.Notify.create({type:"positive",message:"Wallet created!"})}).catch(LNbits.utils.notifyApiError):Quasar.Notify.create({type:"warning",message:"No user selected!",icon:null})},deleteUser(e){LNbits.utils.confirmDialog("Are you sure you want to delete this user?").onOk(()=>{LNbits.api.request("DELETE",`/users/api/v1/user/${e}`).then(()=>{this.fetchUsers(),Quasar.Notify.create({type:"positive",message:"User deleted!",icon:null}),this.activeUser.data=null,this.activeUser.show=!1}).catch(LNbits.utils.notifyApiError)})},undeleteUserWallet(e,t){LNbits.api.request("PUT",`/users/api/v1/user/${e}/wallet/${t}/undelete`).then(()=>{this.fetchWallets(e),Quasar.Notify.create({type:"positive",message:"Undeleted user wallet!",icon:null})}).catch(LNbits.utils.notifyApiError)},deleteUserWallet(e,t,a){const s=a?"Wallet is already deleted, are you sure you want to permanently delete this user wallet?":"Are you sure you want to delete this user wallet?";LNbits.utils.confirmDialog(s).onOk(()=>{LNbits.api.request("DELETE",`/users/api/v1/user/${e}/wallet/${t}`).then(()=>{this.fetchWallets(e),Quasar.Notify.create({type:"positive",message:"User wallet deleted!",icon:null})}).catch(LNbits.utils.notifyApiError)})},deleteAllUserWallets(e){LNbits.utils.confirmDialog(this.$t("confirm_delete_all_wallets")).onOk(()=>{LNbits.api.request("DELETE",`/users/api/v1/user/${e}/wallets`).then(t=>{Quasar.Notify.create({type:"positive",message:t.data.message,icon:null}),this.fetchWallets(e)}).catch(LNbits.utils.notifyApiError)})},copyWalletLink(e){const t=`${window.location.origin}/wallet?usr=${this.activeWallet.userId}&wal=${e}`;this.utils.copyText(t)},fetchUsers(e){this.relaxFilterForFields(["username","email"]);const t=LNbits.utils.prepareFilterQuery(this.usersTable,e);LNbits.api.request("GET",`/users/api/v1/user?${t}`).then(e=>{this.usersTable.loading=!1,this.usersTable.pagination.rowsNumber=e.data.total,this.users=e.data.data}).catch(LNbits.utils.notifyApiError)},fetchWallets(e){return LNbits.api.request("GET",`/users/api/v1/user/${e}/wallet`).then(t=>{this.wallets=t.data,this.activeWallet.userId=e,this.activeWallet.show=!0}).catch(LNbits.utils.notifyApiError)},relaxFilterForFields(e=[]){e.forEach(e=>{const t=this.usersTable?.filter?.[e];t&&this.usersTable.filter[e]&&(this.usersTable.filter[`${e}[like]`]=t,delete this.usersTable.filter[e])})},updateWallet(e){LNbits.api.request("PATCH","/api/v1/wallet",e.adminkey,{name:e.name}).then(()=>{e.editable=!1,Quasar.Notify.create({message:"Wallet name updated.",type:"positive",timeout:3500})}).catch(e=>{LNbits.utils.notifyApiError(e)})},toggleAdmin(e){LNbits.api.request("GET",`/users/api/v1/user/${e}/admin`).then(()=>{this.fetchUsers(),Quasar.Notify.create({type:"positive",message:"Toggled admin!",icon:null})}).catch(LNbits.utils.notifyApiError)},async showAccountPage(e){if(this.activeUser.showPassword=!1,this.activeUser.showUserId=!1,this.activeUser.setPassword=!1,!e)return this.activeUser.data={extra:{}},void(this.activeUser.show=!0);try{const{data:t}=await LNbits.api.request("GET",`/users/api/v1/user/${e}`);this.activeUser.data=t,this.activeUser.show=!0}catch(e){console.warn(e),Quasar.Notify.create({type:"warning",message:"Failed to get user!"}),this.activeUser.show=!1}},async showWalletPayments(e){this.activeUser.show=!1,await this.fetchWallets(this.users[0].id),await this.showPayments(e)},showPayments(e){this.paymentsWallet=this.wallets.find(t=>t.id===e),this.paymentPage.show=!0},searchUserBy(e){const t=this.searchData[e];this.usersTable.filter={},t&&(this.usersTable.filter[e]=t),this.fetchUsers()},shortify:e=>(valueLength=(e||"").length,valueLength<=10?e:`${e.substring(0,5)}...${e.substring(valueLength-5,valueLength)}`)}},window.PageAccount={template:"#page-account",mixins:[window.windowMixin],data(){return{user:null,untouchedUser:null,hasUsername:!1,showUserId:!1,themeOptions:[{name:"bitcoin",color:"deep-orange"},{name:"mint",color:"green"},{name:"autumn",color:"brown"},{name:"monochrome",color:"grey"},{name:"salvador",color:"blue-10"},{name:"freedom",color:"pink-13"},{name:"cyber",color:"light-green-9"},{name:"flamingo",color:"pink-3"}],reactionOptions:["None","confettiBothSides","confettiFireworks","confettiStars","confettiTop"],borderOptions:["retro-border","hard-border","neon-border","no-border"],tab:"user",credentialsData:{show:!1,oldPassword:null,newPassword:null,newPasswordRepeat:null,username:null,pubkey:null},apiAcl:{showNewAclDialog:!1,showPasswordDialog:!1,showNewTokenDialog:!1,data:[],passwordGuardedFunction:null,newAclName:"",newTokenName:"",password:"",apiToken:null,selectedTokenId:null,columns:[{name:"Name",align:"left",label:this.$t("Name"),field:"Name",sortable:!1},{name:"path",align:"left",label:this.$t("path"),field:"path",sortable:!1},{name:"read",align:"left",label:this.$t("read"),field:"read",sortable:!1},{name:"write",align:"left",label:this.$t("write"),field:"write",sortable:!1}],pagination:{rowsPerPage:100,page:1}},selectedApiAcl:{id:null,name:null,endpoints:[],token_id_list:[],allRead:!1,allWrite:!1},assets:[],assetsTable:{loading:!1,columns:[{name:"name",align:"left",label:this.$t("Name"),field:"name",sortable:!0},{name:"created_at",align:"left",label:this.$t("created_at"),field:"created_at",sortable:!0}],pagination:{rowsPerPage:6,page:1}},assetsUploadToPublic:!1,notifications:{nostr:{identifier:""}},labels:[],labelsDialog:{show:!1,data:{name:"",description:"",color:"#000000"}},labelsTable:{loading:!1,columns:[{name:"actions",align:"left"},{name:"name",align:"left",label:this.$t("Name"),field:"name",sortable:!0},{name:"description",align:"left",label:this.$t("description"),field:"description"},{name:"color",align:"left",label:this.$t("color"),field:"color"}],pagination:{rowsPerPage:6,page:1}}}},watch:{"assetsTable.search":{handler(){const e={};this.assetsTable.search&&(e.search=this.assetsTable.search),this.getUserAssets()}}},computed:{isUserTouched(){return JSON.stringify(this.user)!==JSON.stringify(this.untouchedUser)}},methods:{activeLanguage:e=>window.i18n.global.locale===e,changeLanguage(e){window.i18n.global.locale=e,this.$q.localStorage.set("lnbits.lang",e)},async updateAccount(){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/update",null,{user_id:this.user.id,username:this.user.username,email:this.user.email,extra:this.user.extra});this.user=e,this.untouchedUser=JSON.parse(JSON.stringify(e)),this.hasUsername=!!e.username,Quasar.Notify.create({type:"positive",message:"Account updated."})}catch(e){LNbits.utils.notifyApiError(e)}},disableUpdatePassword(){return!this.credentialsData.newPassword||!this.credentialsData.newPasswordRepeat||this.credentialsData.newPassword!==this.credentialsData.newPasswordRepeat},async updatePassword(){if(this.credentialsData.username)try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/password",null,{user_id:this.user.id,username:this.credentialsData.username,password_old:this.credentialsData.oldPassword,password:this.credentialsData.newPassword,password_repeat:this.credentialsData.newPasswordRepeat});this.user=e,this.untouchedUser=JSON.parse(JSON.stringify(e)),this.hasUsername=!!e.username,this.credentialsData.show=!1,Quasar.Notify.create({type:"positive",message:"Password updated."})}catch(e){LNbits.utils.notifyApiError(e)}else Quasar.Notify.create({type:"warning",message:"Please set a username."})},async updatePubkey(){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/pubkey",null,{user_id:this.user.id,pubkey:this.credentialsData.pubkey});this.user=e,this.untouchedUser=JSON.parse(JSON.stringify(e)),this.hasUsername=!!e.username,this.credentialsData.show=!1,this.$q.notify({type:"positive",message:"Public key updated."})}catch(e){LNbits.utils.notifyApiError(e)}},showUpdateCredentials(){this.credentialsData={show:!0,oldPassword:null,username:this.user.username,pubkey:this.user.pubkey,newPassword:null,newPasswordRepeat:null}},newApiAclDialog(){this.apiAcl.newAclName=null,this.apiAcl.showNewAclDialog=!0},newTokenAclDialog(){this.apiAcl.newTokenName=null,this.apiAcl.newTokenExpiry=null,this.apiAcl.showNewTokenDialog=!0},handleApiACLSelected(e){this.selectedApiAcl={id:null,name:null,endpoints:[],token_id_list:[]},this.apiAcl.selectedTokenId=null,e&&setTimeout(()=>{const t=this.apiAcl.data.find(t=>t.id===e);this.selectedApiAcl&&(this.selectedApiAcl={...t},this.selectedApiAcl.allRead=this.selectedApiAcl.endpoints.every(e=>e.read),this.selectedApiAcl.allWrite=this.selectedApiAcl.endpoints.every(e=>e.write))})},handleAllEndpointsReadAccess(){this.selectedApiAcl.endpoints.forEach(e=>e.read=this.selectedApiAcl.allRead)},handleAllEndpointsWriteAccess(){this.selectedApiAcl.endpoints.forEach(e=>e.write=this.selectedApiAcl.allWrite)},async getApiACLs(){try{const{data:e}=await LNbits.api.request("GET","/api/v1/auth/acl",null);this.apiAcl.data=e.access_control_list}catch(e){LNbits.utils.notifyApiError(e)}},askPasswordAndRunFunction(e){this.apiAcl.passwordGuardedFunction=e,this.apiAcl.showPasswordDialog=!0},runPasswordGuardedFunction(){this.apiAcl.showPasswordDialog=!1;const e=this.apiAcl.passwordGuardedFunction;e&&this[e]()},async addApiACL(){if(this.apiAcl.newAclName){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/acl",null,{id:this.apiAcl.newAclName,name:this.apiAcl.newAclName,password:this.apiAcl.password});this.apiAcl.data=e.access_control_list;const t=this.apiAcl.data.find(e=>e.name===this.apiAcl.newAclName);this.handleApiACLSelected(t.id),this.apiAcl.showNewAclDialog=!1,this.$q.notify({type:"positive",message:"Access Control List created."})}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.name="",this.apiAcl.password=""}this.apiAcl.showNewAclDialog=!1}else this.$q.notify({type:"warning",message:"Name is required."})},async updateApiACLs(){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/auth/acl",null,{id:this.user.id,password:this.apiAcl.password,...this.selectedApiAcl});this.apiAcl.data=e.access_control_list}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.password=""}},async deleteApiACL(){if(this.selectedApiAcl.id){try{await LNbits.api.request("DELETE","/api/v1/auth/acl",null,{id:this.selectedApiAcl.id,password:this.apiAcl.password}),this.$q.notify({type:"positive",message:"Access Control List deleted."})}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.password=""}this.apiAcl.data=this.apiAcl.data.filter(e=>e.id!==this.selectedApiAcl.id),this.handleApiACLSelected(this.apiAcl.data[0]?.id)}},async generateApiToken(){if(!this.selectedApiAcl.id)return;const e=new Date(this.apiAcl.newTokenExpiry)-new Date;try{const{data:t}=await LNbits.api.request("POST","/api/v1/auth/acl/token",null,{acl_id:this.selectedApiAcl.id,token_name:this.apiAcl.newTokenName,password:this.apiAcl.password,expiration_time_minutes:Math.trunc(e/6e4)});this.apiAcl.apiToken=t.api_token,this.apiAcl.selectedTokenId=t.id,Quasar.Notify.create({type:"positive",message:"Token Generated."}),await this.getApiACLs(),this.handleApiACLSelected(this.selectedApiAcl.id),this.apiAcl.showNewTokenDialog=!1}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.password=""}},async deleteToken(){if(this.apiAcl.selectedTokenId)try{await LNbits.api.request("DELETE","/api/v1/auth/acl/token",null,{id:this.apiAcl.selectedTokenId,acl_id:this.selectedApiAcl.id,password:this.apiAcl.password}),this.$q.notify({type:"positive",message:"Token deleted."}),this.selectedApiAcl.token_id_list=this.selectedApiAcl.token_id_list.filter(e=>e.id!==this.apiAcl.selectedTokenId),this.apiAcl.selectedTokenId=null}catch(e){LNbits.utils.notifyApiError(e)}finally{this.apiAcl.password=""}},async getUserAssets(e){try{this.assetsTable.loading=!0;const t=LNbits.utils.prepareFilterQuery(this.assetsTable,e),{data:a}=await LNbits.api.request("GET",`/api/v1/assets/paginated?${t}`,null);this.assets=a.data,this.assetsTable.pagination.rowsNumber=a.total}catch(e){LNbits.utils.notifyApiError(e)}finally{this.assetsTable.loading=!1}},onImageInput(e){const t=e.target.files[0];t&&this.uploadAsset(t)},async uploadAsset(e){const t=new FormData;t.append("file",e);try{await LNbits.api.request("POST",`/api/v1/assets?public_asset=${this.assetsUploadToPublic}`,null,t,{headers:{"Content-Type":"multipart/form-data"}}),this.$q.notify({type:"positive",message:"Upload successful!",icon:null}),await this.getUserAssets()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},async deleteAsset(e){LNbits.utils.confirmDialog("Are you sure you want to delete this asset?").onOk(async()=>{try{await LNbits.api.request("DELETE",`/api/v1/assets/${e.id}`,null),this.$q.notify({type:"positive",message:"Asset deleted."}),await this.getUserAssets()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}})},async toggleAssetPublicAccess(e){try{await LNbits.api.request("PUT",`/api/v1/assets/${e.id}`,null,{is_public:!e.is_public}),this.$q.notify({type:"positive",message:"Update successful!",icon:null}),await this.getUserAssets()}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}},copyAssetLinkToClipboard(e){const t=`${window.location.origin}/api/v1/assets/${e.id}/binary`;this.utils.copyText(t)},addUserLabel(){if(!this.labelsDialog.data.name)return void this.$q.notify({type:"warning",message:"Name is required."});if(!this.labelsDialog.data.color)return void this.$q.notify({type:"warning",message:"Color is required."});this.user.extra.labels=this.user.extra.labels||[];if(!this.user.extra.labels.find(e=>e.name===this.labelsDialog.data.name))return this.user.extra.labels.unshift({...this.labelsDialog.data}),this.labelsDialog.show=!1,!0;this.$q.notify({type:"warning",message:"A label with this name already exists."})},openAddLabelDialog(){this.labelsDialog.data={name:"",description:"",color:"#000000"},this.labelsDialog.show=!0},openEditLabelDialog(e){this.labelsDialog.data={name:e.name,description:e.description,color:e.color},this.labelsDialog.show=!0},updateUserLabel(){const e=this.labelsDialog.data,t=JSON.parse(JSON.stringify(this.user.extra.labels));this.user.extra.labels=this.user.extra.labels.filter(t=>t.name!==e.name);this.addUserLabel()||(this.user.extra.labels=t),this.labelsDialog.show=!1},deleteUserLabel(e){LNbits.utils.confirmDialog("Are you sure you want to delete this label?").onOk(()=>{this.user.extra.labels=this.user.extra.labels.filter(t=>t.name!==e.name)})}},async created(){try{const{data:e}=await LNbits.api.getAuthenticatedUser();this.user=e,this.untouchedUser=JSON.parse(JSON.stringify(e)),this.hasUsername=!!e.username,this.user.extra||(this.user.extra={})}catch(e){LNbits.utils.notifyApiError(e)}const e=window.location.hash.replace("#","");e&&(this.tab=e),await this.getApiACLs(),await this.getUserAssets(),this.themeOptions=this.themeOptions.filter(e=>this.LNBITS_THEME_OPTIONS.includes(e.name))}},window.PageAdmin={template:"#page-admin",mixins:[windowMixin],data:()=>({tab:"funding",settings:{},formData:{lnbits_exchange_rate_providers:[],lnbits_audit_exclude_paths:[],lnbits_audit_include_paths:[],lnbits_audit_http_response_codes:[]},isSuperUser:!1,needsRestart:!1}),async created(){await this.getSettings();const e=window.location.hash.replace("#","");e&&(this.tab=e)},computed:{checkChanges(){return!_.isEqual(this.settings,this.formData)}},methods:{getDefaultSetting(e){LNbits.api.request("GET",`/admin/api/v1/settings/default?field_name=${e}`).then(t=>{this.formData[e]=t.data.default_value}).catch(function(e){LNbits.utils.notifyApiError(e)})},restartServer(){LNbits.api.request("GET","/admin/api/v1/restart/").then(e=>{this.$q.notify({type:"positive",message:"Success! Restarted Server",icon:null}),this.needsRestart=!1}).catch(LNbits.utils.notifyApiError)},async getSettings(){await LNbits.api.request("GET","/admin/api/v1/settings",this.g.user.wallets[0].adminkey).then(e=>{this.isSuperUser=e.data.is_super_user||!1,this.settings=e.data,this.formData={...this.settings}}).catch(LNbits.utils.notifyApiError)},updateSettings(){const e=_.omit(this.formData,["is_super_user","lnbits_allowed_funding_sources","touch"]);LNbits.api.request("PUT","/admin/api/v1/settings",this.g.user.wallets[0].adminkey,e).then(e=>{this.needsRestart=this.settings.lnbits_backend_wallet_class!==this.formData.lnbits_backend_wallet_class,this.settings=this.formData,this.formData=_.clone(this.settings),Quasar.Notify.create({type:"positive",message:"Success! Settings changed! "+(this.needsRestart?"Restart required!":""),icon:null})}).catch(LNbits.utils.notifyApiError)},deleteSettings(){LNbits.utils.confirmDialog("Are you sure you want to restore settings to default?").onOk(()=>{LNbits.api.request("DELETE","/admin/api/v1/settings").then(e=>{Quasar.Notify.create({type:"positive",message:"Success! Restored settings to defaults. Restarting...",icon:null}),this.$q.localStorage.clear()}).catch(LNbits.utils.notifyApiError)})},downloadBackup(){window.open("/admin/api/v1/backup","_blank")}}},window.app.component("lnbits-admin-funding",{props:["is-super-user","form-data","settings"],template:"#lnbits-admin-funding",mixins:[window.windowMixin],data:()=>({auditData:[]}),created(){this.getAudit()},methods:{getAudit(){LNbits.api.request("GET","/admin/api/v1/audit",this.g.user.wallets[0].adminkey).then(e=>{this.auditData=e.data}).catch(LNbits.utils.notifyApiError)}}}),window.app.component("lnbits-admin-funding-sources",{template:"#lnbits-admin-funding-sources",mixins:[window.windowMixin],props:["form-data","allowed-funding-sources"],methods:{getFundingSourceLabel(e){const t=this.rawFundingSources.find(t=>t[0]===e);return t?t[1]:e},showQRValue(e){this.qrValue=e,this.showQRDialog=!0}},computed:{fundingSources(){let e=[];for(const[t,a,s]of this.rawFundingSources){const a={};if(null!==s)for(let[e,t]of Object.entries(s))a[e]="string"==typeof t?{label:t,value:null}:t||{};e.push([t,a])}return new Map(e)},sortedAllowedFundingSources(){return this.allowedFundingSources.sort()}},data:()=>({hideInput:!0,showQRDialog:!1,qrValue:"",rawFundingSources:[["VoidWallet","Void Wallet",null],["FakeWallet","Fake Wallet",{fake_wallet_secret:"Secret",lnbits_denomination:'"sats" or 3 Letter Custom Denomination'}],["CLNRestWallet","Core Lightning Rest (plugin)",{clnrest_url:"Endpoint",clnrest_ca:"ca.pem",clnrest_cert:"server.pem",clnrest_readonly_rune:"Rune used for readonly requests",clnrest_invoice_rune:"Rune used for creating invoices",clnrest_pay_rune:"Rune used for paying invoices using pay",clnrest_renepay_rune:"Rune used for paying invoices using renepay",clnrest_last_pay_index:"Ignores any invoices paid prior to or including this index. 0 is equivalent to not specifying and negative value is invalid.",clnrest_nodeid:"Node id"}],["CoreLightningWallet","Core Lightning",{corelightning_rpc:"Endpoint",corelightning_pay_command:"Custom Pay Command"}],["CoreLightningRestWallet","Core Lightning Rest (legacy)",{corelightning_rest_url:"Endpoint",corelightning_rest_cert:"Certificate",corelightning_rest_macaroon:"Macaroon"}],["LndRestWallet","Lightning Network Daemon (LND Rest)",{lnd_rest_endpoint:"Endpoint",lnd_rest_cert:"Certificate",lnd_rest_macaroon:"Macaroon",lnd_rest_macaroon_encrypted:"Encrypted Macaroon",lnd_rest_route_hints:"Enable Route Hints",lnd_rest_allow_self_payment:"Allow Self Payment"}],["LndWallet","Lightning Network Daemon (LND)",{lnd_grpc_endpoint:"Endpoint",lnd_grpc_cert:"Certificate",lnd_grpc_port:"Port",lnd_grpc_macaroon:"GRPC Macaroon",lnd_grpc_invoice_macaroon:"GRPC Invoice Macaroon",lnd_grpc_admin_macaroon:"GRPC Admin Macaroon",lnd_grpc_macaroon_encrypted:"Encrypted Macaroon"}],["LnTipsWallet","LN.Tips",{lntips_api_endpoint:"Endpoint",lntips_api_key:"API Key"}],["LNPayWallet","LN Pay",{lnpay_api_endpoint:"Endpoint",lnpay_api_key:"API Key",lnpay_wallet_key:"Wallet Key"}],["EclairWallet","Eclair (ACINQ)",{eclair_url:"URL",eclair_pass:"Password"}],["LNbitsWallet","LNbits",{lnbits_endpoint:"Endpoint",lnbits_key:"Admin Key"}],["BlinkWallet","Blink",{blink_api_endpoint:"Endpoint",blink_ws_endpoint:"WebSocket",blink_token:"Key"}],["AlbyWallet","Alby",{alby_api_endpoint:"Endpoint",alby_access_token:"Key"}],["BoltzWallet","Boltz",{boltz_client_endpoint:"Endpoint",boltz_client_macaroon:"Admin Macaroon path or hex",boltz_client_cert:"Certificate path or hex",boltz_client_wallet:"Wallet Name",boltz_client_password:"Wallet Password (can be empty)",boltz_mnemonic:{label:"Liquid mnemonic (copy into greenwallet)",readonly:!0,copy:!0,qrcode:!0}}],["ZBDWallet","ZBD",{zbd_api_endpoint:"Endpoint",zbd_api_key:"Key"}],["PhoenixdWallet","Phoenixd",{phoenixd_api_endpoint:"Endpoint",phoenixd_api_password:"Key"}],["OpenNodeWallet","OpenNode",{opennode_api_endpoint:"Endpoint",opennode_key:"Key"}],["ClicheWallet","Cliche (NBD)",{cliche_endpoint:"Endpoint"}],["SparkWallet","Spark",{spark_url:"Endpoint",spark_token:"Token"}],["NWCWallet","Nostr Wallet Connect",{nwc_pairing_url:"Pairing URL"}],["BreezSdkWallet","Breez SDK",{breez_api_key:"Breez API Key",breez_greenlight_seed:"Greenlight Seed",breez_greenlight_device_key:"Greenlight Device Key",breez_greenlight_device_cert:"Greenlight Device Cert",breez_greenlight_invite_code:"Greenlight Invite Code"}],["StrikeWallet","Strike (alpha)",{strike_api_endpoint:"API Endpoint",strike_api_key:"API Key"}],["BreezLiquidSdkWallet","Breez Liquid SDK",{breez_liquid_api_key:"Breez API Key (can be empty)",breez_liquid_seed:"Liquid seed phrase",breez_liquid_fee_offset_sat:"Offset amount in sats to increase fee limit"}]]})}),window.app.component("lnbits-admin-fiat-providers",{props:["form-data"],template:"#lnbits-admin-fiat-providers",mixins:[window.windowMixin],data:()=>({formAddStripeUser:"",hideInputToggle:!0}),methods:{addStripeAllowedUser(){const e=this.formAddStripeUser||"";e.length&&!this.formData.stripe_limits.allowed_users.includes(e)&&(this.formData.stripe_limits.allowed_users=[...this.formData.stripe_limits.allowed_users,e],this.formAddStripeUser="")},removeStripeAllowedUser(e){this.formData.stripe_limits.allowed_users=this.formData.stripe_limits.allowed_users.filter(t=>t!==e)},checkFiatProvider(e){LNbits.api.request("PUT",`/api/v1/fiat/check/${e}`).then(e=>{const t=e.data;Quasar.Notify.create({type:t.success?"positive":"warning",message:t.message,icon:null})}).catch(LNbits.utils.notifyApiError)}}}),window.app.component("lnbits-admin-exchange-providers",{props:["form-data"],template:"#lnbits-admin-exchange-providers",mixins:[window.windowMixin],data:()=>({exchangeData:{selectedProvider:null,showTickerConversion:!1,convertFromTicker:null,convertToTicker:null},exchangesTable:{columns:[{name:"name",align:"left",label:"Exchange Name",field:"name",sortable:!0},{name:"api_url",align:"left",label:"URL",field:"api_url",sortable:!1},{name:"path",align:"left",label:"JSON Path",field:"path",sortable:!1},{name:"exclude_to",align:"left",label:"Exclude Currencies",field:"exclude_to",sortable:!1},{name:"ticker_conversion",align:"left",label:"Ticker Conversion",field:"ticker_conversion",sortable:!1}],pagination:{sortBy:"name",rowsPerPage:100,page:1,rowsNumber:100},search:null,hideEmpty:!0}}),mounted(){this.getExchangeRateHistory()},created(){const e=window.location.hash.replace("#","");"exchange_providers"===e&&this.showExchangeProvidersTab(e)},methods:{getExchangeRateHistory(){LNbits.api.request("GET","/api/v1/rate/history",this.g.user.wallets[0].inkey).then(e=>{this.initExchangeChart(e.data)}).catch(function(e){LNbits.utils.notifyApiError(e)})},showExchangeProvidersTab(e){"exchange_providers"===e&&this.getExchangeRateHistory()},addExchangeProvider(){this.formData.lnbits_exchange_rate_providers=[{name:"",api_url:"",path:"",exclude_to:[]},...this.formData.lnbits_exchange_rate_providers]},removeExchangeProvider(e){this.formData.lnbits_exchange_rate_providers=this.formData.lnbits_exchange_rate_providers.filter(t=>t!==e)},removeExchangeTickerConversion(e,t){e.ticker_conversion=e.ticker_conversion.filter(e=>e!==t),this.formData.touch=null},addExchangeTickerConversion(){this.exchangeData.selectedProvider&&(this.exchangeData.selectedProvider.ticker_conversion.push(`${this.exchangeData.convertFromTicker}:${this.exchangeData.convertToTicker}`),this.formData.touch=null,this.exchangeData.showTickerConversion=!1)},showTickerConversionDialog(e){this.exchangeData.convertFromTicker=null,this.exchangeData.convertToTicker=null,this.exchangeData.selectedProvider=e,this.exchangeData.showTickerConversion=!0},initExchangeChart(e){const t=e.map(e=>this.utils.formatTimestamp(e.timestamp,"HH:mm")),a=[...this.formData.lnbits_exchange_rate_providers,{name:"LNbits"}].map(t=>({label:t.name,data:e.map(e=>e.rates[t.name]),pointStyle:!0,borderWidth:"LNbits"===t.name?4:1,tension:.4}));this.exchangeRatesChart=new Chart(this.$refs.exchangeRatesChart.getContext("2d"),{type:"line",options:{plugins:{legend:{display:!1}}},data:{labels:t,datasets:a}})}}}),window.app.component("lnbits-admin-security",{props:["form-data"],template:"#lnbits-admin-security",mixins:[window.windowMixin],data:()=>({logs:[],formBlockedIPs:"",serverlogEnabled:!1,nostrAcceptedUrl:"",formAllowedIPs:"",formCallbackUrlRule:""}),created(){},methods:{addAllowedIPs(){const e=this.formAllowedIPs.trim(),t=this.formData.lnbits_allowed_ips;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_allowed_ips=[...t,e],this.formAllowedIPs="")},removeAllowedIPs(e){const t=this.formData.lnbits_allowed_ips;this.formData.lnbits_allowed_ips=t.filter(t=>t!==e)},addBlockedIPs(){const e=this.formBlockedIPs.trim(),t=this.formData.lnbits_blocked_ips;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_blocked_ips=[...t,e],this.formBlockedIPs="")},removeBlockedIPs(e){const t=this.formData.lnbits_blocked_ips;this.formData.lnbits_blocked_ips=t.filter(t=>t!==e)},addCallbackUrlRule(){const e=this.formCallbackUrlRule.trim(),t=this.formData.lnbits_callback_url_rules;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_callback_url_rules=[...t,e],this.formCallbackUrlRule="")},removeCallbackUrlRule(e){const t=this.formData.lnbits_callback_url_rules;this.formData.lnbits_callback_url_rules=t.filter(t=>t!==e)},addNostrUrl(){const e=this.nostrAcceptedUrl.trim();this.removeNostrUrl(e),this.formData.nostr_absolute_request_urls.push(e),this.nostrAcceptedUrl=""},removeNostrUrl(e){this.formData.nostr_absolute_request_urls=this.formData.nostr_absolute_request_urls.filter(t=>t!==e)},async toggleServerLog(){if(this.serverlogEnabled=!this.serverlogEnabled,this.serverlogEnabled){const e="http:"!==location.protocol?"wss://":"ws://",t=await LNbits.utils.digestMessage(this.g.user.id),a=e+document.domain+":"+location.port+"/api/v1/ws/"+t;this.ws=new WebSocket(a),this.ws.addEventListener("message",async({data:e})=>{this.logs.push(e.toString());const t=this.$refs.logScroll;if(t){const e=t.getScrollTarget(),a=0;t.setScrollPosition(e.scrollHeight,a)}})}else this.ws.close()}}}),window.app.component("lnbits-admin-users",{props:["form-data"],template:"#lnbits-admin-users",mixins:[window.windowMixin],data:()=>({formAddUser:"",formAddAdmin:""}),methods:{addAllowedUser(){let e=this.formAddUser,t=this.formData.lnbits_allowed_users;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_allowed_users=[...t,e],this.formAddUser="")},removeAllowedUser(e){let t=this.formData.lnbits_allowed_users;this.formData.lnbits_allowed_users=t.filter(t=>t!==e)},addAdminUser(){let e=this.formAddAdmin,t=this.formData.lnbits_admin_users;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_admin_users=[...t,e],this.formAddAdmin="")},removeAdminUser(e){let t=this.formData.lnbits_admin_users;this.formData.lnbits_admin_users=t.filter(t=>t!==e)}}}),window.app.component("lnbits-admin-server",{props:["form-data"],template:"#lnbits-admin-server",mixins:[window.windowMixin]}),window.app.component("lnbits-admin-extensions",{props:["form-data"],template:"#lnbits-admin-extensions",mixins:[window.windowMixin],data:()=>({formAddExtensionsManifest:""}),methods:{addExtensionsManifest(){const e=this.formAddExtensionsManifest.trim(),t=this.formData.lnbits_extensions_manifests;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_extensions_manifests=[...t,e],this.formAddExtensionsManifest="")},removeExtensionsManifest(e){const t=this.formData.lnbits_extensions_manifests;this.formData.lnbits_extensions_manifests=t.filter(t=>t!==e)}}}),window.app.component("lnbits-admin-notifications",{props:["form-data"],template:"#lnbits-admin-notifications",mixins:[window.windowMixin],data:()=>({nostrNotificationIdentifier:"",emailNotificationAddress:""}),methods:{sendTestEmail(){LNbits.api.request("GET","/admin/api/v1/testemail",this.g.user.wallets[0].adminkey).then(e=>{if("error"===e.data.status)throw new Error(e.data.message);this.$q.notify({message:"Test email sent!",color:"positive"})}).catch(e=>{this.$q.notify({message:e.message,color:"negative"})})},addNostrNotificationIdentifier(){const e=this.nostrNotificationIdentifier.trim(),t=this.formData.lnbits_nostr_notifications_identifiers;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_nostr_notifications_identifiers=[...t,e],this.nostrNotificationIdentifier="")},removeNostrNotificationIdentifier(e){const t=this.formData.lnbits_nostr_notifications_identifiers;this.formData.lnbits_nostr_notifications_identifiers=t.filter(t=>t!==e)},addEmailNotificationAddress(){const e=this.emailNotificationAddress.trim(),t=this.formData.lnbits_email_notifications_to_emails;e&&e.length&&!t.includes(e)&&(this.formData.lnbits_email_notifications_to_emails=[...t,e],this.emailNotificationAddress="")},removeEmailNotificationAddress(e){const t=this.formData.lnbits_email_notifications_to_emails;this.formData.lnbits_email_notifications_to_emails=t.filter(t=>t!==e)}}}),window.app.component("lnbits-admin-site-customisation",{props:["form-data"],template:"#lnbits-admin-site-customisation",mixins:[window.windowMixin],data:()=>({lnbits_theme_options:["classic","bitcoin","flamingo","cyber","freedom","mint","autumn","monochrome","salvador"],colors:["primary","secondary","accent","positive","negative","info","warning","red","yellow","orange"],reactionOptions:["none","confettiBothSides","confettiFireworks","confettiStars","confettiTop"],globalBorderOptions:["retro-border","hard-border","neon-border","no-border"]}),methods:{}}),window.app.component("lnbits-admin-assets-config",{props:["form-data"],template:"#lnbits-admin-assets-config",mixins:[window.windowMixin],data:()=>({newAllowedAssetMimeType:"",newNoLimitUser:""}),async created(){},methods:{addAllowedAssetMimeType(){this.newAllowedAssetMimeType&&(this.removeAllowedAssetMimeType(this.newAllowedAssetMimeType),this.formData.lnbits_assets_allowed_mime_types.push(this.newAllowedAssetMimeType),this.newAllowedAssetMimeType="")},removeAllowedAssetMimeType(e){const t=this.formData.lnbits_assets_allowed_mime_types.indexOf(e);-1!==t&&this.formData.lnbits_assets_allowed_mime_types.splice(t,1)},addNewNoLimitUser(){this.newNoLimitUser&&(this.removeNoLimitUser(this.newNoLimitUser),this.formData.lnbits_assets_no_limit_users.push(this.newNoLimitUser),this.newNoLimitUser="")},removeNoLimitUser(e){e&&(this.formData.lnbits_assets_no_limit_users=this.formData.lnbits_assets_no_limit_users.filter(t=>t!==e))}}}),window.app.component("lnbits-admin-audit",{props:["form-data"],template:"#lnbits-admin-audit",mixins:[window.windowMixin],data:()=>({formAddIncludePath:"",formAddExcludePath:"",formAddIncludeResponseCode:""}),methods:{addIncludePath(){if(""===this.formAddIncludePath)return;const e=this.formData.lnbits_audit_include_paths;e.includes(this.formAddIncludePath)||(this.formData.lnbits_audit_include_paths=[...e,this.formAddIncludePath]),this.formAddIncludePath=""},removeIncludePath(e){this.formData.lnbits_audit_include_paths=this.formData.lnbits_audit_include_paths.filter(t=>t!==e)},addExcludePath(){if(""===this.formAddExcludePath)return;const e=this.formData.lnbits_audit_exclude_paths;e.includes(this.formAddExcludePath)||(this.formData.lnbits_audit_exclude_paths=[...e,this.formAddExcludePath]),this.formAddExcludePath=""},removeExcludePath(e){this.formData.lnbits_audit_exclude_paths=this.formData.lnbits_audit_exclude_paths.filter(t=>t!==e)},addIncludeResponseCode(){if(""===this.formAddIncludeResponseCode)return;const e=this.formData.lnbits_audit_http_response_codes;e.includes(this.formAddIncludeResponseCode)||(this.formData.lnbits_audit_http_response_codes=[...e,this.formAddIncludeResponseCode]),this.formAddIncludeResponseCode=""},removeIncludeResponseCode(e){this.formData.lnbits_audit_http_response_codes=this.formData.lnbits_audit_http_response_codes.filter(t=>t!==e)}}}),window.app.component("lnbits-wallet-charts",{template:"#lnbits-wallet-charts",mixins:[window.windowMixin],props:["paymentFilter","chartConfig"],data:()=>({debounceTimeoutValue:1337,debounceTimeout:null,chartData:[],chartDataPointCount:0,walletBalanceChart:null,walletBalanceInOut:null,walletPaymentInOut:null,colorPrimary:Quasar.colors.changeAlpha(Quasar.colors.getPaletteColor("primary"),.3),colorSecondary:Quasar.colors.changeAlpha(Quasar.colors.getPaletteColor("secondary"),.3),barOptions:{responsive:!0,maintainAspectRatio:!1,scales:{x:{stacked:!0},y:{stacked:!0}}}}),watch:{paymentFilter:{deep:!0,handler(){this.changeCharts()}},chartConfig:{deep:!0,handler(e){this.$q.localStorage.setItem("lnbits.wallets.chartConfig",e),this.changeCharts()}}},methods:{changeCharts(){this.debounceTimeout&&clearTimeout(this.debounceTimeout),this.debounceTimeout=setTimeout(async()=>{await this.fetchChartData(),this.drawCharts()},this.debounceTimeoutValue)},filterChartData(){const e=this.paymentFilter["time[ge]"]+"T00:00:00",t=this.paymentFilter["time[le]"]+"T23:59:59";let a=0,s=this.chartData.map(e=>void 0!==this.paymentFilter["amount[ge]"]?(a+=e.balance_in,{...e,balance:a,balance_out:0,count_out:0}):void 0!==this.paymentFilter["amount[le]"]?(a-=e.balance_out,{...e,balance:a,balance_in:0,count_in:0}):{...e});s=s.filter(a=>this.paymentFilter["time[ge]"]&&this.paymentFilter["time[le]"]?a.date>=e&&a.date<=t:this.paymentFilter["time[ge]"]?a.date>=e:!this.paymentFilter["time[le]"]||a.date<=t);const i=s.map(e=>new Date(e.date).toLocaleString("default",{month:"short",day:"numeric"}));return this.chartDataPointCount=s.length,{data:s,labels:i}},drawBalanceInOutChart(e,t){this.walletBalanceInOut&&this.walletBalanceInOut.destroy();const a=this.$refs.walletBalanceInOut;a&&(this.walletBalanceInOut=new Chart(a.getContext("2d"),{type:"bar",options:this.barOptions,data:{labels:t,datasets:[{label:"Balance In",borderRadius:5,data:e.map(e=>e.balance_in),backgroundColor:this.colorPrimary},{label:"Balance Out",borderRadius:5,data:e.map(e=>e.balance_out),backgroundColor:this.colorSecondary}]}}))},drawPaymentInOut(e,t){this.walletPaymentInOut&&this.walletPaymentInOut.destroy();const a=this.$refs.walletPaymentInOut;a&&(this.walletPaymentInOut=new Chart(a.getContext("2d"),{type:"bar",options:this.barOptions,data:{labels:t,datasets:[{label:"Payments In",data:e.map(e=>e.count_in),backgroundColor:this.colorPrimary},{label:"Payments Out",data:e.map(e=>-e.count_out),backgroundColor:this.colorSecondary}]}}))},drawBalanceChart(e,t){this.walletBalanceChart&&this.walletBalanceChart.destroy();const a=this.$refs.walletBalanceChart;a&&(this.walletBalanceChart=new Chart(a.getContext("2d"),{type:"line",options:{responsive:!0,maintainAspectRatio:!1},data:{labels:t,datasets:[{label:"Balance",data:e.map(e=>e.balance),pointStyle:!1,backgroundColor:this.colorPrimary,borderColor:this.colorPrimary,borderWidth:2,fill:!0,tension:.7,fill:1},{label:"Fees",data:e.map(e=>e.fee),pointStyle:!1,backgroundColor:this.colorSecondary,borderColor:this.colorSecondary,borderWidth:1,fill:!0,tension:.7,fill:1}]}}))},drawCharts(){const{data:e,labels:t}=this.filterChartData();this.chartConfig.showBalanceChart&&this.drawBalanceChart(e,t),this.chartConfig.showBalanceInOutChart&&this.drawBalanceInOutChart(e,t),this.chartConfig.showPaymentInOutChart&&this.drawPaymentInOut(e,t)},async fetchChartData(){try{const{data:e}=await LNbits.api.request("GET",`/api/v1/payments/stats/daily?wallet_id=${this.g.wallet.id}`);this.chartData=e}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}}},async created(){await this.fetchChartData(),this.drawCharts()}}),window.app.component("lnbits-wallet-api-docs",{template:"#lnbits-wallet-api-docs",mixins:[window.windowMixin],methods:{resetKeys(){LNbits.utils.confirmDialog("Are you sure you want to reset your API keys?").onOk(()=>{LNbits.api.resetWalletKeys(this.g.wallet).then(e=>{const{id:t,adminkey:a,inkey:s}=e;this.g.wallet={...this.g.wallet,inkey:s,adminkey:a};const i=this.g.user.wallets.findIndex(e=>e.id===t);-1!==i&&(this.g.user.wallets[i]={...this.g.user.wallets[i],inkey:s,adminkey:a}),Quasar.Notify.create({timeout:3500,type:"positive",message:"API keys reset!"})}).catch(e=>{LNbits.utils.notifyApiError(e)})})}},data:()=>({inkeyHidden:!0,adminkeyHidden:!0,walletIdHidden:!0})}),window.app.component("lnbits-wallet-icon",{template:"#lnbits-wallet-icon",mixins:[window.windowMixin],data:()=>({icon:{show:!1,data:{},colorOptions:["primary","purple","orange","green","brown","blue","red","pink"],options:["home","star","bolt","paid","savings","store","videocam","music_note","flight","train","directions_car","school","construction","science","sports_esports","sports_tennis","theaters","water","headset_mic","videogame_asset","person","group","pets","sunny","elderly","verified","snooze","mail","forum","shopping_cart","shopping_bag","attach_money","print_connect","dark_mode","light_mode","android","network_wifi","shield","fitness_center","lunch_dining"]}}),methods:{setSelectedIcon(e){this.icon.data.icon=e},setSelectedColor(e){this.icon.data.color=e},setIcon(){this.$emit("update-wallet",this.icon.data),this.icon.show=!1}}}),window.app.component("lnbits-wallet-new",{template:"#lnbits-wallet-new",mixins:[window.windowMixin],data:()=>({walletTypes:[{label:"Lightning Wallet",value:"lightning"}],newWallet:{name:"",sharedWalletId:""}}),computed:{inviteWalletOptions(){return(this.g.user?.extra?.wallet_invite_requests||[]).map(e=>({label:`${e.to_wallet_name} (from ${e.from_user_name})`,value:e.to_wallet_id}))}},methods:{async submitRejectWalletInvitation(){try{const e=this.g.user.extra.wallet_invite_requests||[],t=e.find(e=>e.to_wallet_id===this.newWallet.sharedWalletId);if(!t)return void Quasar.Notify.create({message:"Cannot find invitation for the selected wallet.",type:"warning"});await LNbits.api.request("DELETE",`/api/v1/wallet/share/invite/${t.request_id}`,this.g.wallet.adminkey),Quasar.Notify.create({message:"Invitation rejected.",type:"positive"}),this.g.user.extra.wallet_invite_requests=e.filter(e=>e.request_id!==t.request_id)}catch(e){LNbits.utils.notifyApiError(e)}},async submitAddWallet(){const e=this.newWallet;if("lightning"!==this.g.newWalletType||e.name)if("lightning-shared"!==this.g.newWalletType||e.sharedWalletId)try{await LNbits.api.createWallet(this.g.user.wallets[0],e.name,this.g.newWalletType,{shared_wallet_id:e.sharedWalletId})}catch(e){console.warn(e),LNbits.utils.notifyApiError(e)}else this.$q.notify({message:"Missing a shared wallet ID",color:"warning"});else this.$q.notify({message:"Please enter a name for the wallet",color:"warning"})}},created(){this.g.user?.extra?.wallet_invite_requests?.length&&this.walletTypes.push({label:`Lightning Wallet (Share Invite: ${this.g.user.extra.wallet_invite_requests.length})`,value:"lightning-shared"})}}),window.app.component("lnbits-wallet-share",{template:"#lnbits-wallet-share",mixins:[window.windowMixin],computed:{walletApprovedShares(){return this.g.wallet.extra.shared_with.filter(e=>"approved"===e.status)},walletPendingRequests(){return this.g.wallet.extra.shared_with.filter(e=>"request_access"===e.status)},walletPendingInvites(){return this.g.wallet.extra.shared_with.filter(e=>"invite_sent"===e.status)}},data:()=>({permissionOptions:[{label:"View",value:"view-payments"},{label:"Receive",value:"receive-payments"},{label:"Send",value:"send-payments"}],walletShareInvite:{unsername:"",permissions:[]}}),methods:{async updateSharePermissions(e){try{const{data:t}=await LNbits.api.request("PUT","/api/v1/wallet/share",this.g.wallet.adminkey,e);Object.assign(e,t),Quasar.Notify.create({message:"Wallet permission updated.",type:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}},async inviteUserToWallet(){try{const{data:e}=await LNbits.api.request("PUT","/api/v1/wallet/share/invite",this.g.wallet.adminkey,{...this.walletShareInvite,status:"invite_sent",wallet_id:this.g.wallet.id});this.g.wallet.extra.shared_with.push(e),this.walletShareInvite={username:"",permissions:[]},Quasar.Notify.create({message:"User invited to wallet.",type:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}},deleteSharePermission(e){LNbits.utils.confirmDialog("Are you sure you want to remove this share permission?").onOk(async()=>{try{await LNbits.api.request("DELETE",`/api/v1/wallet/share/${e.request_id}`,this.g.wallet.adminkey),this.g.wallet.extra.shared_with=this.g.wallet.extra.shared_with.filter(t=>t.wallet_id!==e.wallet_id),Quasar.Notify.create({message:"Wallet permission deleted.",type:"positive"})}catch(e){LNbits.utils.notifyApiError(e)}})}}}),window.app.component("lnbits-wallet-paylinks",{template:"#lnbits-wallet-paylinks",mixins:[window.windowMixin],data:()=>({storedPaylinks:[]}),watch:{"g.wallet"(e){this.storedPaylinks=e.storedPaylinks??[]}},created(){this.storedPaylinks=this.g.wallet.storedPaylinks},methods:{updatePaylinks(){LNbits.api.request("PUT",`/api/v1/wallet/stored_paylinks/${this.g.wallet.id}`,this.g.wallet.adminkey,{links:this.storedPaylinks}).then(()=>{this.$q.notify({message:"Paylinks updated.",type:"positive",timeout:3500})}).catch(e=>{LNbits.utils.notifyApiError(e)})},sendToPaylink(e){this.$emit("send-lnurl",e)},editPaylink(){this.$nextTick(()=>{this.updatePaylinks()})},deletePaylink(e){const t=[];this.storedPaylinks.forEach(a=>{a.lnurl!==e&&t.push(a)}),this.storedPaylinks=t,this.updatePaylinks()}}}),window.app.component("lnbits-wallet-extra",{template:"#lnbits-wallet-extra",mixins:[window.windowMixin],props:["chartConfig"],data:()=>({}),methods:{handleSendLnurl(e){this.$emit("send-lnurl",e)},updateWallet(e){this.$emit("update-wallet",e)},handleFiatTracking(){this.g.fiatTracking=!this.g.fiatTracking,this.g.fiatTracking?(this.updateWallet({currency:this.g.wallet.currency}),this.updateFiatBalance()):(this.g.isFiatPriority=!1,this.g.wallet.currency="",this.updateWallet({currency:""}))},deleteWallet(){LNbits.utils.confirmDialog("Are you sure you want to delete this wallet?").onOk(()=>{LNbits.api.deleteWallet(this.g.wallet).then(e=>{Quasar.Notify.create({timeout:3e3,message:"Wallet deleted!",spinner:!0})}).catch(e=>{LNbits.utils.notifyApiError(e)})})},updateFiatBalance(){this.$q.localStorage.getItem("lnbits.exchangeRate."+this.g.wallet.currency)&&(this.g.exchangeRate=this.$q.localStorage.getItem("lnbits.exchangeRate."+this.g.wallet.currency),this.g.fiatBalance=this.g.exchangeRate/1e8*this.g.wallet.sat),LNbits.api.request("GET","/api/v1/rate/"+this.g.wallet.currency,null).then(e=>{this.g.fiatBalance=e.data.price/1e8*this.g.wallet.sat,this.g.exchangeRate=e.data.price.toFixed(2),this.g.fiatTracking=!0,this.$q.localStorage.set("lnbits.exchangeRate."+this.g.wallet.currency,this.g.exchangeRate)}).catch(e=>console.error(e))}},created(){""!==this.g.wallet.currency&&this.g.isSatsDenomination?(this.g.fiatTracking=!0,this.updateFiatBalance()):this.g.fiatTracking=!1}}),window.app.component("lnbits-home-logos",{template:"#lnbits-home-logos",mixins:[window.windowMixin],data:()=>({logos:[{href:"https://github.com/ElementsProject/lightning",lightSrc:"/static/images/clnl.png",darkSrc:"/static/images/cln.png"},{href:"https://github.com/lightningnetwork/lnd",lightSrc:"/static/images/lnd.png",darkSrc:"/static/images/lnd.png"},{href:"https://opennode.com",lightSrc:"/static/images/opennodel.png",darkSrc:"/static/images/opennode.png"},{href:"https://lnpay.co/",lightSrc:"/static/images/lnpayl.png",darkSrc:"/static/images/lnpay.png"},{href:"https://github.com/rootzoll/raspiblitz",lightSrc:"/static/images/blitzl.png",darkSrc:"/static/images/blitz.png"},{href:"https://start9.com/",lightSrc:"/static/images/start9l.png",darkSrc:"/static/images/start9.png"},{href:"https://getumbrel.com/",lightSrc:"/static/images/umbrell.png",darkSrc:"/static/images/umbrel.png"},{href:"https://mynodebtc.com",lightSrc:"/static/images/mynodel.png",darkSrc:"/static/images/mynode.png"},{href:"https://github.com/shesek/spark-wallet",lightSrc:"/static/images/sparkl.png",darkSrc:"/static/images/spark.png"},{href:"https://voltage.cloud",lightSrc:"/static/images/voltagel.png",darkSrc:"/static/images/voltage.png"},{href:"https://breez.technology/sdk/",lightSrc:"/static/images/breezl.png",darkSrc:"/static/images/breez.png"},{href:"https://blockstream.com/lightning/greenlight/",lightSrc:"/static/images/greenlightl.png",darkSrc:"/static/images/greenlight.png"},{href:"https://getalby.com",lightSrc:"/static/images/albyl.png",darkSrc:"/static/images/alby.png"},{href:"https://zbd.gg",lightSrc:"/static/images/zbdl.png",darkSrc:"/static/images/zbd.png"},{href:"https://phoenix.acinq.co/server",lightSrc:"/static/images/phoenixdl.png",darkSrc:"/static/images/phoenixd.png"},{href:"https://boltz.exchange/",lightSrc:"/static/images/boltzl.svg",darkSrc:"/static/images/boltz.svg"},{href:"https://www.blink.sv/",lightSrc:"/static/images/blink_logol.png",darkSrc:"/static/images/blink_logo.png"}]}),computed:{showLogos(){return this.g.isSatsDenomination&&"LNbits"==this.SITE_TITLE&&1==this.LNBITS_SHOW_HOME_PAGE_ELEMENTS}}}),window.app.component("lnbits-error",{template:"#lnbits-error",mixins:[window.windowMixin],props:["dynamic","code","message"],computed:{isExtension(){return 403==this.code&&(!!this.message.startsWith("Extension ")||void 0)}},methods:{goBack(){window.history.back()},goHome(){window.location="/"},goToWallet(){this.dynamic?this.$router.push("/wallet"):window.location="/wallet"},goToExtension(){const e=`/extensions#${this.message.match(/'([^']+)'/)[1]}`;this.dynamic?this.$router.push(e):window.location=e},async logOut(){try{await LNbits.api.logout(),window.location="/"}catch(e){LNbits.utils.notifyApiError(e)}}},async created(){if(!this.dynamic&&401==this.code)return console.warn(`Unauthorized: ${this.errorMessage}`),void this.logOut()}}),window.app.component("lnbits-qrcode",{mixins:[window.windowMixin],template:"#lnbits-qrcode",components:{QrcodeVue:QrcodeVue},props:{value:{type:String,required:!0},nfc:{type:Boolean,default:!1},showButtons:{type:Boolean,default:!0},href:{type:String,default:""},margin:{type:Number,default:3},maxWidth:{type:Number,default:450},logo:{type:String,default:LNBITS_QR_LOGO}},data:()=>({nfcTagWriting:!1,nfcSupported:"undefined"!=typeof NDEFReader}),methods:{clickQrCode(e){if(""===this.href)return this.utils.copyText(this.value),e.preventDefault(),e.stopPropagation(),!1},async writeNfcTag(){try{if(!this.nfcSupported)throw{toString:function(){return"NFC not supported on this device or browser."}};const e=new NDEFReader;this.nfcTagWriting=!0,this.$q.notify({message:"Tap your NFC tag to write the LNURL-withdraw link to it."}),await e.write({records:[{recordType:"url",data:this.value,lang:"en"}]}),this.nfcTagWriting=!1,this.$q.notify({type:"positive",message:"NFC tag written successfully."})}catch(e){this.nfcTagWriting=!1,this.$q.notify({type:"negative",message:e?e.toString():"An unexpected error has occurred."})}},downloadSVG(){const e=this.$refs.qrCode.$el;if(!e)return void console.error("SVG element not found");let t=(new XMLSerializer).serializeToString(e);t.match(/^]+xmlns="http:\/\/www\.w3\.org\/2000\/svg"/)||(t=t.replace(/^({tab:"bech32",lnurl:""}),methods:{setLnurl(){if("bech32"==this.tab){const e=(new TextEncoder).encode(this.url),t=NostrTools.nip19.encodeBytes("lnurl",e);this.lnurl=`lightning:${t.toUpperCase()}`}else"lud17"==this.tab&&(this.url.startsWith("http://")?this.lnurl=this.url.replace("http://",this.prefix+"://"):this.lnurl=this.url.replace("https://",this.prefix+"://"));this.$emit("update:lnurl",this.lnurl)}},watch:{url(){this.setLnurl()},tab(){this.setLnurl()}},created(){this.setLnurl()}}),window.app.component("lnbits-disclaimer",{template:"#lnbits-disclaimer",mixins:[window.windowMixin],computed:{showDisclaimer:()=>!g.disclaimerShown&&g.isUserAuthorized}}),window.app.component("lnbits-footer",{template:"#lnbits-footer",mixins:[window.windowMixin],computed:{version(){return this.LNBITS_VERSION||"unknown version"},title(){return`${this.SITE_TITLE}, ${this.SITE_TAGLINE}`},showFooter(){return 1==this.LNBITS_SHOW_HOME_PAGE_ELEMENTS}}}),window.app.component("lnbits-header",{template:"#lnbits-header",mixins:[window.windowMixin],computed:{hasServiceFeeMax(){return this.g.user&&this.LNBITS_SERVICE_FEE_MAX&&this.LNBITS_SERVICE_FEE_MAX>0},serviceFeeMax(){return this.LNBITS_SERVICE_FEE_MAX||0},hasServiceFee(){return this.g.user&&this.LNBITS_SERVICE_FEE&&this.LNBITS_SERVICE_FEE>0},serviceFee(){return this.LNBITS_SERVICE_FEE||0},hasCustomBadge(){return this.LNBITS_CUSTOM_BADGE&&""!=this.LNBITS_CUSTOM_BADGE},customBadge(){return this.LNBITS_CUSTOM_BADGE||""},customBadgeColor(){return this.LNBITS_CUSTOM_BADGE_COLOR||""},title(){return this.SITE_TITLE},titleIsLnbits(){return"LNbits"==this.SITE_TITLE},customLogoUrl(){return this.USE_CUSTOM_LOGO||null},userPictureUrl(){return this.g.user.config.picture},hasUserPicture(){return this.g.user&&this.g.user.config&&this.g.user.config.picture},showAdmin(){return this.g.user&&(this.g.user.super_user||this.g.user.admin)},showVoidwallet(){return this.g.user&&1==this.VOIDWALLET}}}),window.app.component("lnbits-header-wallets",{template:"#lnbits-header-wallets",mixins:[window.windowMixin]}),window.app.component("lnbits-drawer",{template:"#lnbits-drawer",mixins:[window.windowMixin]}),window.app.component("lnbits-theme",{mixins:[window.windowMixin],watch:{"g.walletFlip"(e){this.$q.localStorage.setItem("lnbits.walletFlip",e),!0===e&&this.$q.screen.lt.md&&(this.g.visibleDrawer=!1)},"g.disclaimerShown"(e){this.$q.localStorage.setItem("lnbits.disclaimerShown",e)},"g.isFiatPriority"(e){this.$q.localStorage.setItem("lnbits.isFiatPriority",e)},"g.reactionChoice"(e){this.$q.localStorage.set("lnbits.reactions",e)},"g.themeChoice"(e){document.body.setAttribute("data-theme",e),this.$q.localStorage.set("lnbits.theme",e)},"g.darkChoice"(e){this.$q.dark.set(e),this.$q.localStorage.set("lnbits.darkMode",e),Chart.defaults.color=this.$q.dark.isActive?"#fff":"#000"},"g.borderChoice"(e){document.body.classList.forEach(e=>{e.endsWith("-border")&&document.body.classList.remove(e)}),this.$q.localStorage.setItem("lnbits.border",e),document.body.classList.add(e)},"g.gradientChoice"(e){this.$q.localStorage.set("lnbits.gradientBg",e),!0===e?document.body.classList.add("gradient-bg"):document.body.classList.remove("gradient-bg")},"g.mobileSimple"(e){this.$q.localStorage.set("lnbits.mobileSimple",e),!0===e?document.body.classList.add("mobile-simple"):document.body.classList.remove("mobile-simple")},"g.bgimageChoice"(e){this.$q.localStorage.set("lnbits.backgroundImage",e),""===e?document.body.classList.remove("bg-image"):(document.body.classList.add("bg-image"),document.body.style.setProperty("--background",`url(${e})`))}},methods:{async checkUrlParams(){const e=new URLSearchParams(window.location.search);if(0===e.length)return;if(e.has("theme")){const t=e.get("theme").trim().toLowerCase();this.g.themeChoice=t,e.delete("theme")}if(e.has("border")){const t=e.get("border").trim().toLowerCase();this.g.borderChoice=t,e.delete("border")}if(e.has("gradient")){const t=e.get("gradient").toLowerCase();this.g.gradientChoice="1"===t||"true"===t,e.delete("gradient")}if(e.has("dark")){const t=e.get("dark").trim().toLowerCase();this.g.darkChoice="1"===t||"true"===t,e.delete("dark")}if(e.has("usr")){try{await LNbits.api.loginUsr(e.get("usr")),window.location.href="/wallet"}catch(e){LNbits.utils.notifyApiError(e)}e.delete("usr")}const t=e.size?`?${e.toString()}`:"",a=window.location.pathname+t;window.history.replaceState(null,null,a)}},created(){this.$q.dark.set(this.g.darkChoice),document.body.setAttribute("data-theme",this.g.themeChoice),Chart.defaults.color=this.$q.dark.isActive?"#fff":"#000",document.body.classList.add(this.g.borderChoice),!0===this.g.gradientChoice&&document.body.classList.add("gradient-bg"),""!==this.g.bgimageChoice&&(document.body.classList.add("bg-image"),document.body.style.setProperty("--background",`url(${this.g.bgimageChoice})`)),!0===this.g.mobileSimple&&document.body.classList.add("mobile-simple"),this.checkUrlParams()}}),window.app.component("lnbits-qrcode-scanner",{template:"#lnbits-qrcode-scanner",mixins:[window.windowMixin],watch:{"g.showScanner"(e){!0===e&&!1===this.g.hasCamera&&(Quasar.Notify.create({message:"No camera found on this device.",type:"negative"}),this.g.showScanner=!1)}},methods:{detect(e){const t=e[0].rawValue;console.log("Detected QR code value:",t),this.$emit("detect",t),this.g.showScanner=!1},async onInitQR(e){try{await e}catch(e){const t={NotAllowedError:"ERROR: you need to grant camera access permission",NotFoundError:"ERROR: no camera on this device",NotSupportedError:"ERROR: secure context required (HTTPS, localhost)",NotReadableError:"ERROR: is the camera already in use?",OverconstrainedError:"ERROR: installed cameras are not suitable",StreamApiNotSupportedError:"ERROR: Stream API is not supported in this browser",InsecureContextError:"ERROR: Camera access is only permitted in secure context. Use HTTPS or localhost rather than HTTP."},a=Object.keys(t).filter(t=>e.name===t),s=a?t[a]:`ERROR: Camera error (${e.name})`;Quasar.Notify.create({message:s,type:"negative"}),this.g.hasCamera=!1,this.showScanner=!1}}}}),window.app.component("lnbits-manage-extension-list",{mixins:[window.windowMixin],template:"#lnbits-manage-extension-list",data:()=>({extensions:[],userExtensions:[],searchTerm:""}),watch:{"g.user.extensions":{async handler(){await this.loadExtensions()}},searchTerm(){this.filterUserExtensionsByTerm()}},methods:{map(e){const t={...e};return t.url=["/",t.code,"/"].join(""),t},async loadExtensions(){try{const{data:e}=await LNbits.api.request("GET","/api/v1/extension");this.extensions=e.map(e=>this.map(e)).sort((e,t)=>e.name.localeCompare(t.name)),this.filterUserExtensionsByTerm()}catch(e){LNbits.utils.notifyApiError(e)}},filterUserExtensionsByTerm(){const e=this.g.user.extensions;this.userExtensions=this.extensions.filter(t=>e.includes(t.code)).filter(e=>""===this.searchTerm||`${e.code} ${e.name} ${e.short_description} ${e.url}`.toLocaleLowerCase().includes(this.searchTerm.toLocaleLowerCase())).map(e=>(e.isActive=window.location.pathname.startsWith(e.url),e))}},async created(){await this.loadExtensions()}}),window.app.component("lnbits-manage-wallet-list",{template:"#lnbits-manage-wallet-list",mixins:[window.windowMixin],data:()=>({activeWalletId:null}),watch:{$route(e){e.path.startsWith("/wallet/")?this.activeWalletId=e.params.id:this.activeWalletId=null}}}),window.app.component("lnbits-language-dropdown",{template:"#lnbits-language-dropdown",mixins:[window.windowMixin],methods:{activeLanguage:e=>window.i18n.global.locale===e,changeLanguage(e){this.g.locale=e,window.i18n.global.locale=e,this.$q.localStorage.set("lnbits.lang",e)}},data:()=>({langs:[{value:"en",label:"English",display:"🇬🇧 EN"},{value:"de",label:"Deutsch",display:"🇩🇪 DE"},{value:"es",label:"Español",display:"🇪🇸 ES"},{value:"jp",label:"日本語",display:"🇯🇵 JP"},{value:"cn",label:"中文",display:"🇨🇳 CN"},{value:"fr",label:"Français",display:"🇫🇷 FR"},{value:"it",label:"Italiano",display:"🇮🇹 IT"},{value:"pi",label:"Pirate",display:"🏴‍☠️ PI"},{value:"nl",label:"Nederlands",display:"🇳🇱 NL"},{value:"we",label:"Cymraeg",display:"🏴󠁧󠁢󠁷󠁬󠁳󠁿 CY"},{value:"pl",label:"Polski",display:"🇵🇱 PL"},{value:"pt",label:"Português",display:"🇵🇹 PT"},{value:"br",label:"Português do Brasil",display:"🇧🇷 BR"},{value:"cs",label:"Česky",display:"🇨🇿 CS"},{value:"sk",label:"Slovensky",display:"🇸🇰 SK"},{value:"kr",label:"한국어",display:"🇰🇷 KR"},{value:"fi",label:"Suomi",display:"🇫🇮 FI"}]})}),window.app.component("lnbits-payment-list",{template:"#lnbits-payment-list",props:["wallet","paymentFilter"],mixins:[window.windowMixin],data(){return{payments:[],paymentsTable:{columns:[{name:"time",align:"left",label:this.$t("memo")+"/"+this.$t("date"),field:"date",sortable:!0},{name:"amount",align:"right",label:this.$t("amount"),field:"sat",sortable:!0}],pagination:{rowsPerPage:10,page:1,sortBy:"time",descending:!0,rowsNumber:10},search:"",loading:!1},searchDate:{from:null,to:null},searchStatus:{success:!0,pending:!0,failed:!1,incoming:!0,outgoing:!0},exportTagName:"",exportPaymentTagList:[],paymentsCSV:{columns:[{name:"status",align:"right",label:this.$t("status"),field:"status"},{name:"memo",align:"left",label:this.$t("memo"),field:"memo"},{name:"time",align:"left",label:this.$t("date"),field:"date",sortable:!0},{name:"amount",align:"right",label:this.$t("amount"),field:"sat",sortable:!0},{name:"fee",align:"right",label:this.$t("fee"),field:"fee"},{name:"tag",align:"right",label:this.$t("tag"),field:"tag"},{name:"payment_hash",align:"right",label:this.$t("payment_hash"),field:"payment_hash"},{name:"payment_proof",align:"right",label:this.$t("payment_proof"),field:"payment_proof"},{name:"webhook",align:"right",label:this.$t("webhook"),field:"webhook"},{name:"fiat_currency",align:"right",label:"Fiat Currency",field:e=>e.extra.wallet_fiat_currency},{name:"fiat_amount",align:"right",label:"Fiat Amount",field:e=>e.extra.wallet_fiat_amount}],preimage:null,loading:!1},hodlInvoice:{show:!1,payment:null,preimage:null},selectedPayment:null,filterLabels:[]}},computed:{filteredPayments(){const e=this.paymentsTable.search;return e&&""!==e?LNbits.utils.search(this.payments,e):this.payments},paymentsOmitter(){return this.$q.screen.lt.md&&this.g.mobileSimple?this.payments.length>0?[this.payments[0]]:[]:this.payments},pendingPaymentsExist(){return-1!==this.payments.findIndex(e=>e.pending)}},methods:{mapPayment(e){const t={checking_id:e.checking_id,status:e.status,amount:e.amount,fee:e.fee,memo:e.memo,time:e.time,bolt11:e.bolt11,preimage:e.preimage,payment_hash:e.payment_hash,expiry:e.expiry,extra:e.extra??{},wallet_id:e.wallet_id,webhook:e.webhook,webhook_status:e.webhook_status,fiat_amount:e.fiat_amount,fiat_currency:e.fiat_currency,labels:e.labels};t.date=this.utils.formatDate(e.created_at),t.dateFrom=this.utils.formatDateFrom(e.created_at),t.expirydate=this.utils.formatDate(e.expiry),t.expirydateFrom=this.utils.formatDateFrom(e.expiry),t.msat=t.amount,t.sat=t.msat/1e3,t.tag=t.extra?.tag,t.fsat=this.utils.formatSat(t.sat),t.isIn=t.amount>0,t.isOut=t.amount<0,t.isPending="pending"===t.status,t.isPaid="success"===t.status,t.isFailed="failed"===t.status,t._q=[t.memo,t.sat].join(" ").toLowerCase();try{t.details=JSON.parse(e.extra?.details||"{}")}catch{t.details={extraDetails:e.extra?.details}}return t},searchByDate(){"string"==typeof this.searchDate&&(this.searchDate={from:this.searchDate,to:this.searchDate}),this.searchDate.from&&(this.paymentFilter["time[ge]"]=this.searchDate.from+"T00:00:00"),this.searchDate.to&&(this.paymentFilter["time[le]"]=this.searchDate.to+"T23:59:59"),this.fetchPayments()},searchByLabels(e){e&&0!==e.length?(this.filterLabels=e,this.paymentsTable.filter["labels[every]"]=e,this.fetchPayments()):this.clearLabelSeach()},clearDateSeach(){this.searchDate={from:null,to:null},delete this.paymentFilter["time[ge]"],delete this.paymentFilter["time[le]"],this.fetchPayments()},clearLabelSeach(){this.filterLabels=[],delete this.paymentsTable.filter["labels[every]"],this.fetchPayments()},fetchPayments(e){this.paymentsTable.loading=!0;const t=LNbits.utils.prepareFilterQuery(this.paymentsTable,e,this.paymentFilter);return LNbits.api.getPayments(this.wallet,t).then(e=>{this.paymentsTable.pagination.rowsNumber=e.data.total,this.payments=e.data.data.map(this.mapPayment),this.paymentsTable.loading=!1,this.recheckPendingPayments()}).catch(e=>{this.paymentsTable.loading=!1,g.user.admin?this.fetchPaymentsAsAdmin(this.wallet.id,t):LNbits.utils.notifyApiError(e)})},fetchPaymentsAsAdmin(e,t){return t=(t||"")+"&wallet_id="+e,LNbits.api.request("GET","/api/v1/payments/all/paginated?"+t).then(e=>{this.paymentsTable.loading=!1,this.paymentsTable.pagination.rowsNumber=e.data.total,this.payments=e.data.data.map(this.mapPayment)}).catch(e=>{this.paymentsTable.loading=!1,LNbits.utils.notifyApiError(e)})},checkPayment(e){LNbits.api.getPayment(this.wallet,e).then(e=>{this.update=!this.update,"success"==e.data.status&&Quasar.Notify.create({type:"positive",message:this.$t("payment_successful")}),"pending"==e.data.status&&Quasar.Notify.create({type:"info",message:this.$t("payment_pending")})}).catch(LNbits.utils.notifyApiError)},recheckPendingPayments(){const e=this.payments.filter(e=>"pending"===e.status);if(0===e.length)return;const t=["recheck_pending=true","checking_id[in]="+e.map(e=>e.checking_id).join(",")].join("&");LNbits.api.getPayments(this.wallet,t).then(e=>{let t=0;e.data.data.forEach(e=>{if("pending"!==e.status){const a=this.payments.findIndex(t=>t.checking_id===e.checking_id);-1!==a&&(this.payments.splice(a,1,this.mapPayment(e)),t+=1)}}),t>0&&Quasar.Notify.create({type:"positive",message:this.$t("payment_successful")})}).catch(e=>{console.warn(e)})},showHoldInvoiceDialog(e){this.hodlInvoice.show=!0,this.hodlInvoice.preimage="",this.hodlInvoice.payment=e},cancelHoldInvoice(e){LNbits.api.cancelInvoice(this.wallet,e).then(()=>{this.update=!this.update,Quasar.Notify.create({type:"positive",message:this.$t("invoice_cancelled")})}).catch(LNbits.utils.notifyApiError)},settleHoldInvoice(e){LNbits.api.settleInvoice(this.wallet,e).then(()=>{this.update=!this.update,Quasar.Notify.create({type:"positive",message:this.$t("invoice_settled")})}).catch(LNbits.utils.notifyApiError)},paymentTableRowKey:e=>e.payment_hash+e.amount,exportCSV(e=!1){const t=this.paymentsTable.pagination,a={sortby:t.sortBy??"time",direction:t.descending?"desc":"asc"},s=new URLSearchParams(a);LNbits.api.getPayments(this.wallet,s).then(t=>{let a=t.data.data.map(this.mapPayment),s=this.paymentsCSV.columns;if(e){this.exportPaymentTagList.length&&(a=a.filter(e=>this.exportPaymentTagList.includes(e.tag)));const e=Object.keys(a.reduce((e,t)=>({...e,...t.details}),{})).map(e=>({name:e,align:"right",label:e.charAt(0).toUpperCase()+e.slice(1).replace(/([A-Z])/g," $1"),field:t=>t.details[e],format:e=>"object"==typeof e?JSON.stringify(e):e}));s=this.paymentsCSV.columns.concat(e)}LNbits.utils.exportCSV(s,a,this.wallet.name+"-payments")})},addFilterTag(){if(!this.exportTagName)return;const e=this.exportTagName.trim();this.exportPaymentTagList=this.exportPaymentTagList.filter(t=>t!==e),this.exportPaymentTagList.push(e),this.exportTagName=""},removeExportTag(e){this.exportPaymentTagList=this.exportPaymentTagList.filter(t=>t!==e)},formatCurrency(e,t){try{return LNbits.utils.formatCurrency(e,t)}catch(t){return console.error(t),`${e} ???`}},handleFilterChanged(){const{success:e,pending:t,failed:a,incoming:s,outgoing:i}=this.searchStatus;let n=this.paymentFilter||{};delete n["status[ne]"],delete n["status[eq]"],e&&t&&a||(e&&t?n["status[ne]"]="failed":e&&a?n["status[ne]"]="pending":a&&t?n["status[ne]"]="success":!e||t||a?!t||e||a?!a||e||t||(n["status[eq]"]="failed"):n["status[eq]"]="pending":n["status[eq]"]="success"),delete n["amount[ge]"],delete n["amount[le]"],s&&i||!s&&!i||(s&&!i?n["amount[ge]"]=0:i&&!s&&(n["amount[le]"]=0)),this.paymentFilter=n},async savePaymentLabels(e){if(this.selectedPayment)try{await LNbits.api.request("PUT",`/api/v1/payments/${this.selectedPayment.payment_hash}/labels`,this.wallet.adminkey,{labels:e});const t=this.payments.find(e=>e.checking_id===this.selectedPayment.checking_id);t&&(t.labels=[...e]),Quasar.Notify.create({type:"positive",message:this.$t("payment_labels_updated")})}catch(e){LNbits.utils.notifyApiError(e)}else Quasar.Notify.create({type:"warning",message:"No payment selected"})},isLightColor(e){try{return Quasar.colors.luminosity(e)>.5}catch(e){return console.warning(e),!1}}},watch:{"paymentsTable.search":{handler(){const e={};this.paymentsTable.search&&(e.search=this.paymentsTable.search),this.fetchPayments()}},"g.updatePayments"(){this.fetchPayments()}},created(){this.fetchPayments()}}),window.app.component("lnbits-label-selector",{template:"#lnbits-label-selector",props:["labels"],mixins:[window.windowMixin],data:()=>({labelFilter:"",localLabels:[]}),methods:{toggleLabel(e){if(this.localLabels.includes(e.name)){const t=this.localLabels.indexOf(e.name);-1!==t&&this.localLabels.splice(t,1)}else this.localLabels.push(e.name)},saveLabels(){this.$emit("update:labels",this.localLabels)},clearLabels(){this.localLabels=[],this.saveLabels()}},created(){this.localLabels=[...this.labels]}}),window.app.component("lnbits-extension-settings-form",{name:"lnbits-extension-settings-form",template:"#lnbits-extension-settings-form",props:["options","adminkey","endpoint"],methods:{async updateSettings(){if(!this.settings)return Quasar.Notify.create({message:"No settings to update",type:"negative"});try{const{data:e}=await LNbits.api.request("PUT",this.endpoint,this.adminkey,this.settings);this.settings=e}catch(e){LNbits.utils.notifyApiError(e)}},async getSettings(){try{const{data:e}=await LNbits.api.request("GET",this.endpoint,this.adminkey);this.settings=e}catch(e){LNbits.utils.notifyApiError(e)}},async resetSettings(){LNbits.utils.confirmDialog("Are you sure you want to reset the settings?").onOk(async()=>{try{await LNbits.api.request("DELETE",this.endpoint,this.adminkey),await this.getSettings()}catch(e){LNbits.utils.notifyApiError(e)}})}},async created(){await this.getSettings()},data:()=>({settings:void 0})}),window.app.component("lnbits-extension-settings-btn-dialog",{template:"#lnbits-extension-settings-btn-dialog",name:"lnbits-extension-settings-btn-dialog",props:["options","adminkey","endpoint"],data:()=>({show:!1})}),window.app.component("lnbits-data-fields",{name:"lnbits-data-fields",template:"#lnbits-data-fields",props:["fields","hide-advanced"],data:()=>({fieldTypes:[{label:"Text",value:"str"},{label:"Integer",value:"int"},{label:"Float",value:"float"},{label:"Boolean",value:"bool"},{label:"Date Time",value:"datetime"},{label:"JSON",value:"json"},{label:"Wallet Select",value:"wallet"},{label:"Currency Select",value:"currency"}],fieldsTable:{columns:[{name:"name",align:"left",label:"Field Name",field:"name",sortable:!0},{name:"type",align:"left",label:"Type",field:"type",sortable:!1},{name:"label",align:"left",label:"UI Label",field:"label",sortable:!0},{name:"hint",align:"left",label:"UI Hint",field:"hint",sortable:!1},{name:"optional",align:"left",label:"Optional",field:"optional",sortable:!1}],pagination:{sortBy:"name",rowsPerPage:100,page:1,rowsNumber:100},search:null,hideEmpty:!0}}),methods:{addField:function(){this.fields.push({name:"field_name_"+(this.fields.length+1),type:"text",label:"",hint:"",optional:!0,sortable:!0,searchable:!0,editable:!0,fields:[]})},removeField:function(e){const t=this.fields.indexOf(e);t>-1&&this.fields.splice(t,1)}},async created(){this.hideAdvanced||this.fieldsTable.columns.push({name:"editable",align:"left",label:"UI Editable",field:"editable",sortable:!1},{name:"sortable",align:"left",label:"Sortable",field:"sortable",sortable:!1},{name:"searchable",align:"left",label:"Searchable",field:"searchable",sortable:!1})}}),window.app.component(QrcodeVue),window.app.component("lnbits-extension-rating",{template:"#lnbits-extension-rating",name:"lnbits-extension-rating",props:["rating"]}),window.app.component("lnbits-fsat",{template:"{{ fsat }}",props:{amount:{type:Number,default:0}},computed:{fsat(){return LNbits.utils.formatSat(this.amount)}}}),window.app.component("lnbits-manage",{mixins:[window.windowMixin],template:"#lnbits-manage",computed:{showAdmin(){return this.LNBITS_ADMIN_UI},showUsers(){return this.LNBITS_ADMIN_UI},showNode(){return this.LNBITS_NODE_UI},showAudit(){return this.LNBITS_AUDIT_ENABLED},showExtensions(){return!1===this.LNBITS_EXTENSIONS_DEACTIVATE_ALL}},methods:{isActive:e=>window.location.pathname===e},data:()=>({extensions:[]})}),window.app.component("lnbits-payment-details",{mixins:[window.windowMixin],template:"#lnbits-payment-details",props:["payment"],mixins:[window.windowMixin],computed:{hasPreimage(){return this.payment.preimage&&"0000000000000000000000000000000000000000000000000000000000000000"!==this.payment.preimage},hasExpiry(){return!!this.payment.expiry},hasSuccessAction(){return this.hasPreimage&&this.payment.extra&&this.payment.extra.success_action},webhookStatusColor(){return this.payment.webhook_status>=300||this.payment.webhook_status<0?"red-10":this.payment.webhook_status?"green-10":"cyan-7"},webhookStatusText(){return this.payment.webhook_status?this.payment.webhook_status:"not sent yet"},hasTag(){return this.payment.extra&&!!this.payment.extra.tag},extras(){if(!this.payment.extra)return[];let e=_.omit(this.payment.extra,["tag","success_action"]);return Object.keys(e).map(t=>({key:t,value:e[t]}))}}}),window.app.component("lnbits-lnurlpay-success-action",{mixins:[window.windowMixin],template:"#lnbits-lnurlpay-success-action",props:["payment","success_action"],data(){return{decryptedValue:this.success_action.ciphertext}},mounted(){if("aes"!==this.success_action.tag)return null;this.utils.decryptLnurlPayAES(this.success_action,this.payment.preimage).then(e=>{this.decryptedValue=e})}}),window.app.component("lnbits-notifications-btn",{template:"#lnbits-notifications-btn",mixins:[window.windowMixin],props:["pubkey"],data:()=>({isSupported:!1,isSubscribed:!1,isPermissionGranted:!1,isPermissionDenied:!1}),methods:{urlB64ToUint8Array(e){const t=(e+"=".repeat((4-e.length%4)%4)).replace(/\-/g,"+").replace(/_/g,"/"),a=atob(t),s=new Uint8Array(a.length);for(let e=0;et!==e),this.$q.localStorage.set("lnbits.webpush.subscribedUsers",JSON.stringify(t))},isUserSubscribed(e){return(JSON.parse(this.$q.localStorage.getItem("lnbits.webpush.subscribedUsers"))||[]).includes(e)},subscribe(){this.isSupported&&!this.isPermissionDenied&&(Notification.requestPermission().then(e=>{this.isPermissionGranted="granted"===e,this.isPermissionDenied="denied"===e}).catch(console.log),navigator.serviceWorker.ready.then(e=>{navigator.serviceWorker.getRegistration().then(e=>{e.pushManager.getSubscription().then(t=>{if(null===t||!this.isUserSubscribed(this.g.user.id)){const t={applicationServerKey:this.urlB64ToUint8Array(this.pubkey),userVisibleOnly:!0};e.pushManager.subscribe(t).then(e=>{LNbits.api.request("POST","/api/v1/webpush",null,{subscription:JSON.stringify(e)}).then(e=>{this.saveUserSubscribed(e.data.user),this.isSubscribed=!0}).catch(LNbits.utils.notifyApiError)})}}).catch(console.log)})}))},unsubscribe(){navigator.serviceWorker.ready.then(e=>{e.pushManager.getSubscription().then(e=>{e&&LNbits.api.request("DELETE","/api/v1/webpush?endpoint="+btoa(e.endpoint),null).then(()=>{this.removeUserSubscribed(this.g.user.id),this.isSubscribed=!1}).catch(LNbits.utils.notifyApiError)})}).catch(console.log)},checkSupported(){let e="https:"===window.location.protocol,t="serviceWorker"in navigator,a="Notification"in window,s="PushManager"in window;return this.isSupported=e&&t&&a&&s,this.isSupported||console.log("Notifications disabled because requirements are not met:",{HTTPS:e,"Service Worker API":t,"Notification API":a,"Push API":s}),this.isSupported},async updateSubscriptionStatus(){await navigator.serviceWorker.ready.then(e=>{e.pushManager.getSubscription().then(e=>{this.isSubscribed=!!e&&this.isUserSubscribed(this.g.user.id)})}).catch(console.log)}},created(){this.isPermissionDenied="denied"===Notification.permission,this.checkSupported()&&this.updateSubscriptionStatus()}}),window.app.component("lnbits-dynamic-fields",{template:"#lnbits-dynamic-fields",mixins:[window.windowMixin],props:["options","modelValue"],data:()=>({formData:null,rules:[e=>!!e||"Field is required"]}),methods:{applyRules(e){return e?this.rules:[]},buildData(e,t={}){return e.reduce((e,a)=>(a.options?.length?e[a.name]=this.buildData(a.options,t[a.name]):e[a.name]=t[a.name]??a.default,e),{})},handleValueChanged(){this.$emit("update:model-value",this.formData)}},created(){this.formData=this.buildData(this.options,this.modelValue)}}),window.app.component("lnbits-dynamic-chips",{template:"#lnbits-dynamic-chips",mixins:[window.windowMixin],props:["modelValue"],data:()=>({chip:"",chips:[]}),methods:{addChip(){this.chip&&(this.chips.push(this.chip),this.chip="",this.$emit("update:model-value",this.chips.join(",")))},removeChip(e){this.chips.splice(e,1),this.$emit("update:model-value",this.chips.join(","))}},created(){"string"==typeof this.modelValue?this.chips=this.modelValue.split(","):this.chips=[...this.modelValue]}}),window.app.component("lnbits-update-balance",{template:"#lnbits-update-balance",mixins:[window.windowMixin],props:["wallet_id","small_btn"],computed:{admin:()=>user.super_user},data:()=>({credit:0}),methods:{updateBalance(e){LNbits.api.updateBalance(e.value,this.wallet_id).then(t=>{if(!0!==t.data.success)throw new Error(t.data);credit=parseInt(e.value),Quasar.Notify.create({type:"positive",message:this.$t("credit_ok",{amount:credit}),icon:null}),this.credit=0,e.value=0,e.set()}).catch(LNbits.utils.notifyApiError)}}}),window.app.component("user-id-only",{template:"#user-id-only",mixins:[window.windowMixin],props:{allowed_new_users:Boolean,authAction:String,authMethod:String,usr:String,wallet:String},data(){return{user:this.usr,walletName:this.wallet}},methods:{showLogin(e){this.$emit("show-login",e)},showRegister(e){this.$emit("show-register",e)},loginUsr(){this.$emit("update:usr",this.user),this.$emit("login-usr")},createWallet(){this.$emit("update:wallet",this.walletName),this.$emit("create-wallet")}},computed:{showInstantLogin(){return"username-password"!==this.authMethod||"register"!==this.authAction}},created(){}}),window.app.component("username-password",{template:"#username-password",mixins:[window.windowMixin],props:{allowed_new_users:Boolean,authMethods:Array,authAction:String,username:String,password_1:String,password_2:String,resetKey:String},data(){return{oauth:["nostr-auth-nip98","google-auth","github-auth","keycloak-auth"],username:this.userName,password:this.password_1,passwordRepeat:this.password_2,reset_key:this.resetKey,keycloakOrg:LNBITS_AUTH_KEYCLOAK_ORG||"Keycloak",keycloakIcon:LNBITS_AUTH_KEYCLOAK_ICON}},methods:{login(){this.$emit("update:userName",this.username),this.$emit("update:password_1",this.password),this.$emit("login")},register(){this.$emit("update:userName",this.username),this.$emit("update:password_1",this.password),this.$emit("update:password_2",this.passwordRepeat),this.$emit("register")},reset(){this.$emit("update:resetKey",this.reset_key),this.$emit("update:password_1",this.password),this.$emit("update:password_2",this.passwordRepeat),this.$emit("reset")},validateUsername:e=>new RegExp("^(?=[a-zA-Z0-9._]{2,20}$)(?!.*[_.]{2})[^_.].*[^_.]$").test(e),async signInWithNostr(){try{const e=await this.createNostrToken();if(!e)return;resp=await LNbits.api.loginByProvider("nostr",{Authorization:e},{}),window.location.href="/wallet"}catch(e){console.warn(e);const t=e?.response?.data?.detail||`${e}`;Quasar.Notify.create({type:"negative",message:"Failed to sign in with Nostr.",caption:t})}},async createNostrToken(){try{if(!window.nostr?.signEvent)return void Quasar.Notify.create({type:"negative",message:"No Nostr signing app detected.",caption:'Is "window.nostr" present?'});const e=`${window.location}nostr`,t="POST",a=await NostrTools.nip98.getToken(e,t,e=>async function(e){try{const{data:t}=await LNbits.api.getServerHealth();return e.created_at=t.server_time,await window.nostr.signEvent(e)}catch(e){console.error(e),Quasar.Notify.create({type:"negative",message:"Failed to sign nostr event.",caption:`${e}`})}}(e),!0);if(!await NostrTools.nip98.validateToken(a,e,t))throw new Error("Invalid signed token!");return a}catch(e){console.warn(e),Quasar.Notify.create({type:"negative",message:"Failed create Nostr event.",caption:`${e}`})}}},computed:{showOauth(){return this.oauth.some(e=>this.authMethods.includes(e))}},created(){}}),window.app.component("separator-text",{template:"#separator-text",props:{text:String,uppercase:{type:Boolean,default:!1},color:{type:String,default:"grey"}}}),window.app.component("lnbits-node-ranks",{props:["ranks"],data:()=>({stats:[{label:"Capacity",key:"capacity"},{label:"Channels",key:"channelcount"},{label:"Age",key:"age"},{label:"Growth",key:"growth"},{label:"Availability",key:"availability"}]}),template:"\n \n
\n
1ml Node Rank
\n
\n
\n
{{ stat.label }}
\n
\n {{ (ranks && ranks[stat.key]) ?? '-' }}\n
\n
\n
\n
\n
\n "}),window.app.component("lnbits-channel-stats",{props:["stats"],data:()=>({states:[{label:"Active",value:"active",color:"green"},{label:"Pending",value:"pending",color:"orange"},{label:"Inactive",value:"inactive",color:"grey"},{label:"Closed",value:"closed",color:"red"}]}),template:"\n \n
\n
Channels
\n
\n
\n
\n {{ state.label }}\n
\n
\n {{ (stats?.counts && stats.counts[state.value]) ?? \"-\" }}\n
\n
\n
\n
\n
\n "}),window.app.component("lnbits-stat",{props:["title","amount","msat","btc"],computed:{value(){return this.amount??(this.btc?LNbits.utils.formatSat(this.btc):LNbits.utils.formatMsat(this.msat))}},template:"\n \n \n
\n {{ title }}\n
\n
\n {{ value }}\n sats\n BTC\n
\n
\n
\n "}),window.app.component("lnbits-node-qrcode",{props:["info"],mixins:[window.windowMixin],template:'\n \n \n
\n
\n \n
\n No addresses available\n
\n
\n
\n
\n \n Public Key Click to copy \n \n \n
\n '}),window.app.component("lnbits-channel-balance",{props:["balance","color"],methods:{formatMsat:e=>LNbits.utils.formatMsat(e)},template:'\n
\n
\n \n Local: {{ formatMsat(balance.local_msat) }}\n sats\n \n \n Remote: {{ formatMsat(balance.remote_msat) }}\n sats\n \n
\n\n \n
\n \n {{ balance.alias }}\n \n
\n \n
\n '}),window.app.component("lnbits-node-info",{props:["info"],data:()=>({showDialog:!1}),mixins:[window.windowMixin],methods:{shortenNodeId:e=>e?e.substring(0,5)+"..."+e.substring(e.length-5):"..."},template:"\n
\n
{{ this.info.alias }}
\n
\n
{{ this.info.backend_name }}
\n \n #{{ this.info.color }}\n \n
{{ shortenNodeId(this.info.id) }}
\n \n \n
\n \n \n \n
\n "}),window.app.component("lnbits-stat",{props:["title","amount","msat","btc"],computed:{value(){return this.amount??(this.btc?LNbits.utils.formatSat(this.btc):LNbits.utils.formatMsat(this.msat))}},template:"\n \n \n
\n {{ title }}\n
\n
\n {{ value }}\n sats\n BTC\n
\n
\n
\n "});const quasarConfig={config:{loading:{spinner:Quasar.QSpinnerBars},table:{rowsPerPageOptions:[5,10,20,50,100,200,500,0]}}},routes=[{path:"/node",name:"Node",component:PageNode},{path:"/node/public",name:"NodePublic",component:PageNodePublic},{path:"/payments",name:"Payments",component:PagePayments},{path:"/audit",name:"Audit",component:PageAudit},{path:"/wallet",redirect:e=>{const t=window.g?.lastActiveWallet||window.user?.wallets[0].id;return`/wallet/${e.query.wal||t||"default"}`}},{path:"/wallet/:id",name:"Wallet",component:PageWallet},{path:"/wallets",name:"Wallets",component:PageWallets},{path:"/users",name:"Users",component:PageUsers},{path:"/admin",name:"Admin",component:PageAdmin},{path:"/account",name:"Account",component:PageAccount},{path:"/extensions/builder",name:"ExtensionsBuilder",component:PageExtensionBuilder},{path:"/extensions",name:"Extensions",component:PageExtensions},{path:"/first_install",name:"FirstInstall",component:PageFirstInstall},{path:"/",name:"PageHome",component:PageHome},{path:"/error",name:"PageError",component:PageError}];window.router=VueRouter.createRouter({history:VueRouter.createWebHistory(),routes:routes}),window.i18n=new VueI18n.createI18n({locale:window.g.locale,fallbackLocale:"en",messages:window.localisation}),window.app.mixin({data:()=>({api:window._lnbitsApi,utils:window._lnbitsUtils,g:window.g,utils:window._lnbitsUtils,...WINDOW_SETTINGS}),computed:{isVueRoute(){const e=window.location.pathname,t=window.router.resolve(e);return t?.matched?.length>0}},methods:{copyText:window._lnbitsUtils.copyText,formatBalance:window._lnbitsUtils.formatBalance}}),window.app.use(VueQrcodeReader),window.app.use(Quasar,quasarConfig),window.app.use(window.i18n),window.app.use(window.router),window.app.mount("#vue"); \ No newline at end of file diff --git a/lnbits/static/bundle.min.css b/lnbits/static/bundle.min.css index 192777d9..1a020b83 100644 --- a/lnbits/static/bundle.min.css +++ b/lnbits/static/bundle.min.css @@ -1 +1 @@ -*,:after,:before{box-sizing:inherit;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent}#q-app,body,html{width:100%;direction:ltr}body.platform-ios.within-iframe,body.platform-ios.within-iframe #q-app{width:100px;min-width:100%}body,html{margin:0;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}img{border-style:none}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;font-family:inherit;margin:0}optgroup{font-weight:700}button,input,select{overflow:visible;text-transform:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button:-moz-focusring,input:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.q-icon{line-height:1;width:1em;height:1em;flex-shrink:0;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;text-align:center;position:relative;box-sizing:content-box;fill:currentColor}.q-icon:after,.q-icon:before{width:100%;height:100%;display:flex!important;align-items:center;justify-content:center}.q-icon>img,.q-icon>svg{width:100%;height:100%}.q-icon>div{box-sizing:border-box}.material-icons,.material-icons-outlined,.material-icons-round,.material-icons-sharp,.material-symbols-outlined,.material-symbols-rounded,.material-symbols-sharp,.q-icon{-webkit-user-select:none;user-select:none;cursor:inherit;font-size:inherit;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.q-panel{height:100%;width:100%}.q-panel>div{height:100%;width:100%}.q-panel-parent{overflow:hidden;position:relative}.q-loading-bar{position:fixed;z-index:9998;transition:transform .5s cubic-bezier(0, 0, .2, 1),opacity .5s;background:#f44336}.q-loading-bar--top{left:0;right:0;top:0;width:100%}.q-loading-bar--bottom{left:0;right:0;bottom:0;width:100%}.q-loading-bar--right{top:0;bottom:0;right:0;height:100%}.q-loading-bar--left{top:0;bottom:0;left:0;height:100%}.q-avatar{position:relative;vertical-align:middle;display:inline-block;border-radius:50%;font-size:48px;height:1em;width:1em}.q-avatar__content{font-size:.5em;line-height:.5em}.q-avatar img:not(.q-icon):not(.q-img__image),.q-avatar__content{border-radius:inherit;height:inherit;width:inherit}.q-avatar--square{border-radius:0}.q-badge{background-color:var(--q-primary);color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;line-height:1;min-height:12px;font-weight:400;vertical-align:baseline}.q-badge--single-line{white-space:nowrap}.q-badge--multi-line{word-break:break-all;word-wrap:break-word}.q-badge--floating{position:absolute;top:-4px;right:-3px;cursor:inherit}.q-badge--transparent{opacity:.8}.q-badge--outline{background-color:transparent;border:1px solid currentColor}.q-badge--rounded{border-radius:1em}.q-banner{min-height:54px;padding:8px 16px;background:#fff}.q-banner--top-padding{padding-top:14px}.q-banner__avatar{min-width:1px!important}.q-banner__avatar>.q-avatar{font-size:46px}.q-banner__avatar>.q-icon{font-size:40px}.q-banner__avatar:not(:empty)+.q-banner__content{padding-left:16px}.q-banner__actions.col-auto{padding-left:16px}.q-banner__actions.col-all .q-btn-item{margin:4px 0 0 4px}.q-banner--dense{min-height:32px;padding:8px}.q-banner--dense.q-banner--top-padding{padding-top:12px}.q-banner--dense .q-banner__avatar>.q-avatar,.q-banner--dense .q-banner__avatar>.q-icon{font-size:28px}.q-banner--dense .q-banner__avatar:not(:empty)+.q-banner__content{padding-left:8px}.q-banner--dense .q-banner__actions.col-auto{padding-left:8px}.q-bar{background:rgba(0,0,0,.2)}.q-bar>.q-icon{margin-left:2px}.q-bar>div,.q-bar>div+.q-icon{margin-left:8px}.q-bar>.q-btn{margin-left:2px}.q-bar>.q-btn:first-child,.q-bar>.q-icon:first-child,.q-bar>div:first-child{margin-left:0}.q-bar--standard{padding:0 12px;height:32px;font-size:18px}.q-bar--standard>div{font-size:16px}.q-bar--standard .q-btn{font-size:11px}.q-bar--dense{padding:0 8px;height:24px;font-size:14px}.q-bar--dense .q-btn{font-size:8px}.q-bar--dark{background:rgba(255,255,255,.15)}.q-breadcrumbs__el{color:inherit}.q-breadcrumbs__el-icon{font-size:125%}.q-breadcrumbs__el-icon--with-label{margin-right:8px}[dir=rtl] .q-breadcrumbs__separator .q-icon{transform:scaleX(-1)}.q-btn{display:inline-flex;flex-direction:column;align-items:stretch;position:relative;outline:0;border:0;vertical-align:middle;font-size:14px;line-height:1.715em;text-decoration:none;color:inherit;background:0 0;font-weight:500;text-transform:uppercase;text-align:center;width:auto;height:auto;cursor:default;padding:4px 16px;min-height:2.572em}.q-btn .q-icon,.q-btn .q-spinner{font-size:1.715em}.q-btn.disabled{opacity:.7!important}.q-btn:before{content:"";display:block;position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.q-btn--actionable{cursor:pointer}.q-btn--actionable.q-btn--standard:before{transition:box-shadow .3s cubic-bezier(.25, .8, .5, 1)}.q-btn--actionable.q-btn--standard.q-btn--active:before,.q-btn--actionable.q-btn--standard:active:before{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.q-btn--no-uppercase{text-transform:none}.q-btn--rectangle{border-radius:3px}.q-btn--outline{background:0 0!important}.q-btn--outline:before{border:1px solid currentColor}.q-btn--push{border-radius:7px}.q-btn--push:before{border-bottom:3px solid rgba(0,0,0,.15)}.q-btn--push.q-btn--actionable{transition:transform .3s cubic-bezier(.25, .8, .5, 1)}.q-btn--push.q-btn--actionable:before{transition:border-width .3s cubic-bezier(.25, .8, .5, 1)}.q-btn--push.q-btn--actionable.q-btn--active,.q-btn--push.q-btn--actionable:active{transform:translateY(2px)}.q-btn--push.q-btn--actionable.q-btn--active:before,.q-btn--push.q-btn--actionable:active:before{border-bottom-width:0}.q-btn--rounded{border-radius:28px}.q-btn--round{border-radius:50%;padding:0;min-width:3em;min-height:3em}.q-btn--square{border-radius:0}.q-btn--flat:before,.q-btn--outline:before,.q-btn--unelevated:before{box-shadow:none}.q-btn--dense{padding:.285em;min-height:2em}.q-btn--dense.q-btn--round{padding:0;min-height:2.4em;min-width:2.4em}.q-btn--dense .on-left{margin-right:6px}.q-btn--dense .on-right{margin-left:6px}.q-btn--fab .q-icon,.q-btn--fab-mini .q-icon{font-size:24px}.q-btn--fab{padding:16px;min-height:56px;min-width:56px}.q-btn--fab .q-icon{margin:auto}.q-btn--fab-mini{padding:8px;min-height:40px;min-width:40px}.q-btn__content{transition:opacity .3s;z-index:0}.q-btn__content--hidden{opacity:0;pointer-events:none}.q-btn__progress{border-radius:inherit;z-index:0}.q-btn__progress-indicator{z-index:-1;transform:translateX(-100%);background:rgba(255,255,255,.25)}.q-btn__progress--dark .q-btn__progress-indicator{background:rgba(0,0,0,.2)}.q-btn--flat .q-btn__progress-indicator,.q-btn--outline .q-btn__progress-indicator{opacity:.2;background:currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container{padding:0 4px}.q-btn-dropdown--split .q-btn-dropdown__arrow-container.q-btn--outline{border-left:1px solid currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container:not(.q-btn--outline){border-left:1px solid rgba(255,255,255,.3)}.q-btn-dropdown--simple *+.q-btn-dropdown__arrow{margin-left:8px}.q-btn-dropdown__arrow{transition:transform .28s}.q-btn-dropdown--current{flex-grow:1}.q-btn-group{border-radius:3px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);vertical-align:middle}.q-btn-group>.q-btn-item{border-radius:inherit;align-self:stretch}.q-btn-group>.q-btn-item:before{box-shadow:none}.q-btn-group>.q-btn-item .q-badge--floating{right:0}.q-btn-group>.q-btn-group{box-shadow:none}.q-btn-group>.q-btn-group:first-child>.q-btn:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-btn-group>.q-btn-group:last-child>.q-btn:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-btn-group>.q-btn-group:not(:first-child)>.q-btn:first-child:before{border-left:0}.q-btn-group>.q-btn-group:not(:last-child)>.q-btn:last-child:before{border-right:0}.q-btn-group>.q-btn-item:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-btn-group>.q-btn-item:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-btn-group>.q-btn-item.q-btn--standard:before{z-index:-1}.q-btn-group--push{border-radius:7px}.q-btn-group--push>.q-btn--push.q-btn--actionable{transform:none}.q-btn-group--push>.q-btn--push.q-btn--actionable .q-btn__content{transition:margin-top .3s cubic-bezier(.25, .8, .5, 1),margin-bottom .3s cubic-bezier(.25, .8, .5, 1)}.q-btn-group--push>.q-btn--push.q-btn--actionable.q-btn--active .q-btn__content,.q-btn-group--push>.q-btn--push.q-btn--actionable:active .q-btn__content{margin-top:2px;margin-bottom:-2px}.q-btn-group--rounded{border-radius:28px}.q-btn-group--square{border-radius:0}.q-btn-group--flat,.q-btn-group--outline,.q-btn-group--unelevated{box-shadow:none}.q-btn-group--outline>.q-separator{display:none}.q-btn-group--outline>.q-btn-item+.q-btn-item:before{border-left:0}.q-btn-group--outline>.q-btn-item:not(:last-child):before{border-right:0}.q-btn-group--stretch{align-self:stretch;border-radius:0}.q-btn-group--glossy>.q-btn-item{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-btn-group--spread>.q-btn-group{display:flex!important}.q-btn-group--spread>.q-btn-group>.q-btn-item:not(.q-btn-dropdown__arrow-container),.q-btn-group--spread>.q-btn-item{width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-btn-toggle{position:relative}.q-card{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;vertical-align:top;background:#fff;position:relative}.q-card>div:not(.q--avoid-card-border),.q-card>img:not(.q--avoid-card-border){border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.q-card>div:nth-child(1of:not(.q--avoid-card-border)),.q-card>img:nth-child(1of:not(.q--avoid-card-border)){border-top:0;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-card>div:nth-last-child(1of:not(.q--avoid-card-border)),.q-card>img:nth-last-child(1of:not(.q--avoid-card-border)){border-bottom:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-card>div:not(.q--avoid-card-border){border-left:0;border-right:0;box-shadow:none}.q-card--bordered{border:1px solid rgba(0,0,0,.12)}.q-card--dark{border-color:rgba(255,255,255,.28);box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-card__section{position:relative}.q-card__section--vert{padding:16px}.q-card__section--horiz>div:not(.q--avoid-card-border),.q-card__section--horiz>img:not(.q--avoid-card-border){border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:0}.q-card__section--horiz>div:nth-child(1of:not(.q--avoid-card-border)),.q-card__section--horiz>img:nth-child(1of:not(.q--avoid-card-border)){border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-card__section--horiz>div:nth-last-child(1of:not(.q--avoid-card-border)),.q-card__section--horiz>img:nth-last-child(1of:not(.q--avoid-card-border)){border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-card__section--horiz>div:not(.q--avoid-card-border){border-top:0;border-bottom:0;box-shadow:none}.q-card__actions{padding:8px;align-items:center}.q-card__actions .q-btn--rectangle{padding:0 8px}.q-card__actions--horiz>.q-btn-group+.q-btn-item,.q-card__actions--horiz>.q-btn-item+.q-btn-group,.q-card__actions--horiz>.q-btn-item+.q-btn-item{margin-left:8px}.q-card__actions--vert>.q-btn-item.q-btn--round{align-self:center}.q-card__actions--vert>.q-btn-group+.q-btn-item,.q-card__actions--vert>.q-btn-item+.q-btn-group,.q-card__actions--vert>.q-btn-item+.q-btn-item{margin-top:4px}.q-card__actions--vert>.q-btn-group>.q-btn-item{flex-grow:1}.q-card>img{display:block;width:100%;max-width:100%;border:0}.q-carousel{background-color:#fff;height:400px}.q-carousel__slide{min-height:100%;background-size:cover;background-position:50%}.q-carousel .q-carousel--padding,.q-carousel__slide{padding:16px}.q-carousel__slides-container{height:100%}.q-carousel__control{color:#fff}.q-carousel__arrow{pointer-events:none}.q-carousel__arrow .q-icon{font-size:28px}.q-carousel__arrow .q-btn{pointer-events:all}.q-carousel__next-arrow--horizontal,.q-carousel__prev-arrow--horizontal{top:16px;bottom:16px}.q-carousel__prev-arrow--horizontal{left:16px}.q-carousel__next-arrow--horizontal{right:16px}.q-carousel__next-arrow--vertical,.q-carousel__prev-arrow--vertical{left:16px;right:16px}.q-carousel__prev-arrow--vertical{top:16px}.q-carousel__next-arrow--vertical{bottom:16px}.q-carousel__navigation--bottom,.q-carousel__navigation--top{left:16px;right:16px;overflow-x:auto;overflow-y:hidden}.q-carousel__navigation--top{top:16px}.q-carousel__navigation--bottom{bottom:16px}.q-carousel__navigation--left,.q-carousel__navigation--right{top:16px;bottom:16px;overflow-x:hidden;overflow-y:auto}.q-carousel__navigation--left>.q-carousel__navigation-inner,.q-carousel__navigation--right>.q-carousel__navigation-inner{flex-direction:column}.q-carousel__navigation--left{left:16px}.q-carousel__navigation--right{right:16px}.q-carousel__navigation-inner{flex:1 1 auto}.q-carousel__navigation .q-btn{margin:6px 4px;padding:5px}.q-carousel__navigation-icon--inactive{opacity:.7}.q-carousel .q-carousel__thumbnail{margin:2px;height:50px;width:auto;display:inline-block;cursor:pointer;border:1px solid transparent;border-radius:4px;vertical-align:middle;opacity:.7;transition:opacity .3s}.q-carousel .q-carousel__thumbnail--active,.q-carousel .q-carousel__thumbnail:hover{opacity:1}.q-carousel .q-carousel__thumbnail--active{border-color:currentColor;cursor:default}.q-carousel--arrows-vertical .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-top .q-carousel--padding,.q-carousel--navigation-top.q-carousel--with-padding .q-carousel__slide{padding-top:60px}.q-carousel--arrows-vertical .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-bottom .q-carousel--padding,.q-carousel--navigation-bottom.q-carousel--with-padding .q-carousel__slide{padding-bottom:60px}.q-carousel--arrows-horizontal .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-left .q-carousel--padding,.q-carousel--navigation-left.q-carousel--with-padding .q-carousel__slide{padding-left:60px}.q-carousel--arrows-horizontal .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-right .q-carousel--padding,.q-carousel--navigation-right.q-carousel--with-padding .q-carousel__slide{padding-right:60px}.q-carousel.fullscreen{height:100%}.q-message-name{font-size:small}.q-message-label{margin:24px 0;text-align:center;font-size:small}.q-message-stamp{color:inherit;margin-top:4px;opacity:.6;display:none;font-size:small}.q-message-avatar{border-radius:50%;width:48px;height:48px;min-width:48px}.q-message{margin-bottom:8px}.q-message:first-child .q-message-label{margin-top:0}.q-message-avatar--received{margin-right:8px}.q-message-text--received{color:#81c784;border-radius:4px 4px 4px 0}.q-message-text--received:last-child:before{right:100%;border-right:0 solid transparent;border-left:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--received{color:#000}.q-message-name--sent{text-align:right}.q-message-avatar--sent{margin-left:8px}.q-message-container--sent{flex-direction:row-reverse}.q-message-text--sent{color:#e0e0e0;border-radius:4px 4px 0 4px}.q-message-text--sent:last-child:before{left:100%;border-left:0 solid transparent;border-right:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--sent{color:#000}.q-message-text{background:currentColor;padding:8px;line-height:1.2;word-break:break-word;position:relative}.q-message-text+.q-message-text{margin-top:3px}.q-message-text:last-child{min-height:48px}.q-message-text:last-child .q-message-stamp{display:block}.q-message-text:last-child:before{content:"";position:absolute;bottom:0;width:0;height:0}.q-checkbox{vertical-align:middle}.q-checkbox__native{width:1px;height:1px}.q-checkbox__bg,.q-checkbox__icon-container{-webkit-user-select:none;user-select:none}.q-checkbox__bg{top:25%;left:25%;width:50%;height:50%;border:2px solid currentColor;border-radius:2px;transition:background .22s cubic-bezier(0, 0, .2, 1) 0s;-webkit-print-color-adjust:exact}.q-checkbox__icon{color:currentColor;font-size:.5em}.q-checkbox__svg{color:#fff}.q-checkbox__truthy{stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.78334;stroke-dasharray:29.78334}.q-checkbox__indet{fill:currentColor;transform-origin:50% 50%;transform:rotate(-280deg) scale(0)}.q-checkbox__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:rgba(0,0,0,.54)}.q-checkbox__inner--indet,.q-checkbox__inner--truthy{color:var(--q-primary)}.q-checkbox__inner--indet .q-checkbox__bg,.q-checkbox__inner--truthy .q-checkbox__bg{background:currentColor}.q-checkbox__inner--truthy path{stroke-dashoffset:0;transition:stroke-dashoffset .18s cubic-bezier(.4, 0, .6, 1) 0s}.q-checkbox__inner--indet .q-checkbox__indet{transform:rotate(0) scale(1);transition:transform .22s cubic-bezier(0, 0, .2, 1) 0s}.q-checkbox.disabled{opacity:.75!important}.q-checkbox--dark .q-checkbox__inner{color:rgba(255,255,255,.7)}.q-checkbox--dark .q-checkbox__inner:before{opacity:.32!important}.q-checkbox--dark .q-checkbox__inner--indet,.q-checkbox--dark .q-checkbox__inner--truthy{color:var(--q-primary)}.q-checkbox--dense .q-checkbox__inner{width:.5em;min-width:.5em;height:.5em}.q-checkbox--dense .q-checkbox__bg{left:5%;top:5%;width:90%;height:90%}.q-checkbox--dense .q-checkbox__label{padding-left:.5em}.q-checkbox--dense.reverse .q-checkbox__label{padding-left:0;padding-right:.5em}body.desktop .q-checkbox:not(.disabled) .q-checkbox__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0, 0, .2, 1)}body.desktop .q-checkbox:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox:not(.disabled):hover .q-checkbox__inner:before{transform:scale3d(1,1,1)}body.desktop .q-checkbox--dense:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox--dense:not(.disabled):hover .q-checkbox__inner:before{transform:scale3d(1.4,1.4,1)}.q-chip{vertical-align:middle;border-radius:16px;outline:0;position:relative;height:2em;max-width:100%;margin:4px;background:#e0e0e0;color:rgba(0,0,0,.87);font-size:14px;padding:.5em .9em}.q-chip--colored .q-chip__icon,.q-chip--dark .q-chip__icon{color:inherit}.q-chip--outline{background:0 0!important;border:1px solid currentColor}.q-chip .q-avatar{font-size:2em;margin-left:-.45em;margin-right:.2em;border-radius:16px}.q-chip--selected .q-avatar{display:none}.q-chip__icon{color:rgba(0,0,0,.54);font-size:1.5em;margin:-.2em}.q-chip__icon--left{margin-right:.2em}.q-chip__icon--right{margin-left:.2em}.q-chip__icon--remove{margin-left:.1em;margin-right:-.5em;opacity:.6;outline:0}.q-chip__icon--remove:focus,.q-chip__icon--remove:hover{opacity:1}.q-chip__content{white-space:nowrap}.q-chip--dense{border-radius:12px;padding:0 .4em;height:1.5em}.q-chip--dense .q-avatar{font-size:1.5em;margin-left:-.27em;margin-right:.1em;border-radius:12px}.q-chip--dense .q-chip__icon{font-size:1.25em}.q-chip--dense .q-chip__icon--left{margin-right:.195em}.q-chip--dense .q-chip__icon--remove{margin-right:-.25em}.q-chip--square{border-radius:4px}.q-chip--square .q-avatar{border-radius:3px 0 0 3px}body.desktop .q-chip--clickable:focus{box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}body.desktop.body--dark .q-chip--clickable:focus{box-shadow:0 1px 3px rgba(255,255,255,.2),0 1px 1px rgba(255,255,255,.14),0 2px 1px -1px rgba(255,255,255,.12)}.q-circular-progress{display:inline-block;position:relative;vertical-align:middle;width:1em;height:1em;line-height:1}.q-circular-progress.q-focusable{border-radius:50%}.q-circular-progress__svg{width:100%;height:100%}.q-circular-progress__text{font-size:.25em}.q-circular-progress--indeterminate .q-circular-progress__svg{transform-origin:50% 50%;animation:q-spin 2s linear infinite}.q-circular-progress--indeterminate .q-circular-progress__circle{stroke-dasharray:1 400;stroke-dashoffset:0;animation:q-circular-progress-circle 1.5s ease-in-out infinite}@keyframes q-circular-progress-circle{0%{stroke-dasharray:1,400;stroke-dashoffset:0}50%{stroke-dasharray:400,400;stroke-dashoffset:-100}100%{stroke-dasharray:400,400;stroke-dashoffset:-300}}.q-color-picker{overflow:hidden;background:#fff;max-width:350px;vertical-align:top;min-width:180px;border-radius:4px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.q-color-picker .q-tab{padding:0!important}.q-color-picker--bordered{border:1px solid rgba(0,0,0,.12)}.q-color-picker__header-tabs{height:32px}.q-color-picker__header-banner{height:36px}.q-color-picker__header input{line-height:24px;border:0}.q-color-picker__header .q-tab{min-height:32px!important;height:32px!important}.q-color-picker__header .q-tab--inactive{background:linear-gradient(to top,rgba(0,0,0,.3) 0,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__error-icon{bottom:2px;right:2px;font-size:24px;opacity:0;transition:opacity .3s ease-in}.q-color-picker__header-content{position:relative;background:#fff}.q-color-picker__header-content--light{color:#000}.q-color-picker__header-content--dark{color:#fff}.q-color-picker__header-content--dark .q-tab--inactive:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(255,255,255,.2)}.q-color-picker__header-banner{height:36px}.q-color-picker__header-bg{background:#fff;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==")!important}.q-color-picker__footer{height:36px}.q-color-picker__footer .q-tab{min-height:36px!important;height:36px!important}.q-color-picker__footer .q-tab--inactive{background:linear-gradient(to bottom,rgba(0,0,0,.3) 0,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__spectrum{width:100%;height:100%}.q-color-picker__spectrum-tab{padding:0!important}.q-color-picker__spectrum-white{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.q-color-picker__spectrum-black{background:linear-gradient(to top,#000,rgba(0,0,0,0))}.q-color-picker__spectrum-circle{width:10px;height:10px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);border-radius:50%;transform:translate(-5px,-5px)}.q-color-picker__hue .q-slider__track{background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)!important;opacity:1}.q-color-picker__alpha .q-slider__track-container{padding-top:0}.q-color-picker__alpha .q-slider__track:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,255,255,0),#757575)}.q-color-picker__sliders{padding:0 16px}.q-color-picker__sliders .q-slider__thumb{color:#424242}.q-color-picker__sliders .q-slider__thumb path{stroke-width:2px;fill:transparent}.q-color-picker__sliders .q-slider--active path{stroke-width:3px}.q-color-picker__tune-tab .q-slider{margin-left:18px;margin-right:18px}.q-color-picker__tune-tab input{font-size:11px;border:1px solid #e0e0e0;border-radius:4px;width:3.5em}.q-color-picker__palette-tab{padding:0!important}.q-color-picker__palette-rows--editable .q-color-picker__cube{cursor:pointer}.q-color-picker__cube{padding-bottom:10%;width:10%!important}.q-color-picker input{color:inherit;background:0 0;outline:0;text-align:center}.q-color-picker .q-tabs{overflow:hidden}.q-color-picker .q-tab--active{box-shadow:0 0 14px 3px rgba(0,0,0,.2)}.q-color-picker .q-tab--active .q-focus-helper{display:none}.q-color-picker .q-tab__indicator{display:none}.q-color-picker .q-tab-panels{background:inherit}.q-color-picker--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-color-picker--dark .q-color-picker__tune-tab input{border:1px solid rgba(255,255,255,.3)}.q-color-picker--dark .q-slider__thumb{color:#fafafa}.q-date{display:inline-flex;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;background:#fff;width:290px;min-width:290px;max-width:100%}.q-date--bordered{border:1px solid rgba(0,0,0,.12)}.q-date__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px}.q-date__actions{padding:0 16px 16px}.q-date__content,.q-date__main{outline:0}.q-date__content .q-btn{font-weight:400}.q-date__header-link{opacity:.64;outline:0;transition:opacity .3s ease-out}.q-date__header-link--active,.q-date__header-link:focus,.q-date__header-link:hover{opacity:1}.q-date__header-subtitle{font-size:14px;line-height:1.75;letter-spacing:.00938em}.q-date__header-title-label{font-size:24px;line-height:1.2;letter-spacing:.00735em}.q-date__view{height:100%;width:100%;min-height:290px;padding:16px}.q-date__navigation{height:12.5%}.q-date__navigation>div:first-child{width:8%;min-width:24px;justify-content:flex-end}.q-date__navigation>div:last-child{width:8%;min-width:24px;justify-content:flex-start}.q-date__calendar-weekdays{height:12.5%}.q-date__calendar-weekdays>div{opacity:.38;font-size:12px}.q-date__calendar-item{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:14.285%!important;height:12.5%!important;position:relative;padding:1px}.q-date__calendar-item:after{content:"";position:absolute;pointer-events:none;top:1px;right:0;bottom:1px;left:0;border-style:dashed;border-color:transparent;border-width:1px}.q-date__calendar-item button,.q-date__calendar-item>div{width:30px;height:30px;border-radius:50%}.q-date__calendar-item>div{line-height:30px;text-align:center}.q-date__calendar-item>button{line-height:22px}.q-date__calendar-item--out{opacity:.18}.q-date__calendar-item--fill{visibility:hidden}.q-date__range-from:before,.q-date__range-to:before,.q-date__range:before{content:"";background-color:currentColor;position:absolute;top:1px;bottom:1px;left:0;right:0;opacity:.3}.q-date__range-from:nth-child(7n-6):before,.q-date__range-to:nth-child(7n-6):before,.q-date__range:nth-child(7n-6):before{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__range-from:nth-child(7n):before,.q-date__range-to:nth-child(7n):before,.q-date__range:nth-child(7n):before{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__range-from:before{left:50%}.q-date__range-to:before{right:50%}.q-date__edit-range:after{border-color:currentColor transparent}.q-date__edit-range:nth-child(7n-6):after{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__edit-range:nth-child(7n):after{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__edit-range-from-to:after,.q-date__edit-range-from:after{left:4px;border-left-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-left-radius:28px;border-bottom-left-radius:28px}.q-date__edit-range-from-to:after,.q-date__edit-range-to:after{right:4px;border-right-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-right-radius:28px;border-bottom-right-radius:28px}.q-date__calendar-days-container{height:75%;min-height:192px}.q-date__calendar-days>div{height:16.66%!important}.q-date__event{position:absolute;bottom:2px;left:50%;height:5px;width:8px;border-radius:5px;background-color:var(--q-secondary);transform:translate3d(-50%,0,0)}.q-date__today{box-shadow:0 0 1px 0 currentColor}.q-date__years-content{padding:0 8px}.q-date__months-item,.q-date__years-item{flex:0 0 33.3333%}.q-date--readonly .q-date__content,.q-date--readonly .q-date__header,.q-date.disabled .q-date__content,.q-date.disabled .q-date__header{pointer-events:none}.q-date--readonly .q-date__navigation{display:none}.q-date--portrait{flex-direction:column}.q-date--portrait-standard .q-date__content{height:calc(100% - 86px)}.q-date--portrait-standard .q-date__header{border-top-right-radius:inherit;height:86px}.q-date--portrait-standard .q-date__header-title{align-items:center;height:30px}.q-date--portrait-minimal .q-date__content{height:100%}.q-date--landscape{flex-direction:row;align-items:stretch;min-width:420px}.q-date--landscape>div{display:flex;flex-direction:column}.q-date--landscape .q-date__content{height:100%}.q-date--landscape-standard{min-width:420px}.q-date--landscape-standard .q-date__header{border-bottom-left-radius:inherit;min-width:110px;width:110px}.q-date--landscape-standard .q-date__header-title{flex-direction:column}.q-date--landscape-standard .q-date__header-today{margin-top:12px;margin-left:-8px}.q-date--landscape-minimal{width:310px}.q-date--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12);border-color:rgba(255,255,255,.28)}.q-dialog__title{font-size:1.25rem;font-weight:500;line-height:1.6;letter-spacing:.0125em}.q-dialog__progress{font-size:4rem}.q-dialog__inner{outline:0}.q-dialog__inner>div{pointer-events:all;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position;border-radius:4px}.q-dialog__inner--square>div{border-radius:0!important}.q-dialog__inner>.q-card>.q-card__actions .q-btn--rectangle{min-width:64px}.q-dialog__inner--minimized{padding:24px}.q-dialog__inner--minimized>div{max-height:calc(100vh - 48px)}.q-dialog__inner--maximized>div{height:100%;width:100%;max-height:100vh;max-width:100vw;border-radius:0!important;top:0!important;left:0!important}.q-dialog__inner--bottom,.q-dialog__inner--top{padding-top:0!important;padding-bottom:0!important}.q-dialog__inner--left,.q-dialog__inner--right{padding-right:0!important;padding-left:0!important}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-right-radius:0}.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div,.q-dialog__inner--left:not(.q-dialog__inner--animating)>div{border-bottom-left-radius:0}.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div,.q-dialog__inner--right:not(.q-dialog__inner--animating)>div{border-bottom-right-radius:0}.q-dialog__inner--fullwidth>div{width:100%!important;max-width:100%!important}.q-dialog__inner--fullheight>div{height:100%!important;max-height:100%!important}.q-dialog__backdrop{z-index:-1;pointer-events:all;outline:0;background:rgba(0,0,0,.4)}body.platform-android:not(.native-mobile) .q-dialog__inner--minimized>div,body.platform-ios .q-dialog__inner--minimized>div{max-height:calc(100vh - 108px)}body.q-ios-padding .q-dialog__inner{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}body.q-ios-padding .q-dialog__inner>div{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important}@media (max-width:599.98px){.q-dialog__inner--bottom,.q-dialog__inner--top{padding-left:0;padding-right:0}.q-dialog__inner--bottom>div,.q-dialog__inner--top>div{width:100%!important}}@media (min-width:600px){.q-dialog__inner--minimized>div{max-width:560px}}.q-body--dialog{overflow:hidden}.q-editor{border:1px solid rgba(0,0,0,.12);border-radius:4px;background-color:#fff}.q-editor.disabled{border-style:dashed}.q-editor>div:first-child,.q-editor__toolbars-container,.q-editor__toolbars-container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-editor__content{outline:0;padding:10px;min-height:10em;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:auto;max-width:100%}.q-editor__content pre{white-space:pre-wrap}.q-editor__content hr{border:0;outline:0;margin:1px;height:1px;background:rgba(0,0,0,.12)}.q-editor__content:empty:not(:focus):before{content:attr(placeholder);opacity:.7}.q-editor__toolbar{border-bottom:1px solid rgba(0,0,0,.12);min-height:32px}.q-editor__toolbars-container{max-width:100%}.q-editor .q-btn{margin:4px}.q-editor__toolbar-group{position:relative;margin:0 4px}.q-editor__toolbar-group+.q-editor__toolbar-group:before{content:"";position:absolute;left:-4px;top:4px;bottom:4px;width:1px;background:rgba(0,0,0,.12)}.q-editor__link-input{color:inherit;text-decoration:none;text-transform:none;border:none;border-radius:0;background:0 0;outline:0}.q-editor--flat,.q-editor--flat .q-editor__toolbar{border:0}.q-editor--dense .q-editor__toolbar-group{display:flex;align-items:center;flex-wrap:nowrap}.q-editor--dark{border-color:rgba(255,255,255,.28)}.q-editor--dark .q-editor__content hr{background:rgba(255,255,255,.28)}.q-editor--dark .q-editor__toolbar{border-color:rgba(255,255,255,.28)}.q-editor--dark .q-editor__toolbar-group+.q-editor__toolbar-group:before{background:rgba(255,255,255,.28)}.q-expansion-item__border{opacity:0}.q-expansion-item__toggle-icon{position:relative;transition:transform .3s}.q-expansion-item__toggle-icon--rotated{transform:rotate(180deg)}.q-expansion-item__toggle-focus{width:1em!important;height:1em!important;position:relative!important}.q-expansion-item__toggle-focus+.q-expansion-item__toggle-icon{margin-top:-1em}.q-expansion-item--standard.q-expansion-item--expanded>div>.q-expansion-item__border{opacity:1}.q-expansion-item--popup{transition:padding .5s}.q-expansion-item--popup>.q-expansion-item__container{border:1px solid rgba(0,0,0,.12)}.q-expansion-item--popup>.q-expansion-item__container>.q-separator{display:none}.q-expansion-item--popup.q-expansion-item--collapsed{padding:0 15px}.q-expansion-item--popup.q-expansion-item--expanded{padding:15px 0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--expanded{padding-top:0}.q-expansion-item--popup.q-expansion-item--collapsed:not(:first-child)>.q-expansion-item__container{border-top-width:0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--collapsed>.q-expansion-item__container{border-top-width:1px}.q-expansion-item__content>.q-card{box-shadow:none;border-radius:0}.q-expansion-item:first-child>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item:last-child>div>.q-expansion-item__border--bottom{opacity:0}.q-expansion-item--expanded+.q-expansion-item--expanded>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item--expanded .q-textarea--autogrow textarea{animation:q-expansion-done 0s}@keyframes q-expansion-done{0%{--q-exp-done:1}}.z-fab{z-index:990}.q-fab{position:relative;vertical-align:middle}.q-fab>.q-btn{width:100%}.q-fab--form-rounded{border-radius:28px}.q-fab--form-square{border-radius:4px}.q-fab__active-icon,.q-fab__icon{transition:opacity .4s,transform .4s}.q-fab__icon{opacity:1;transform:rotate(0)}.q-fab__active-icon{opacity:0;transform:rotate(-180deg)}.q-fab__label--external{position:absolute;padding:0 8px;transition:opacity .18s cubic-bezier(.65, .815, .735, .395)}.q-fab__label--external-hidden{opacity:0;pointer-events:none}.q-fab__label--external-left{top:50%;left:-12px;transform:translate(-100%,-50%)}.q-fab__label--external-right{top:50%;right:-12px;transform:translate(100%,-50%)}.q-fab__label--external-bottom{bottom:-12px;left:50%;transform:translate(-50%,100%)}.q-fab__label--external-top{top:-12px;left:50%;transform:translate(-50%,-100%)}.q-fab__label--internal{padding:0;transition:font-size .12s cubic-bezier(.65, .815, .735, .395),max-height .12s cubic-bezier(.65, .815, .735, .395),opacity 70ms cubic-bezier(.65, .815, .735, .395);max-height:30px}.q-fab__label--internal-hidden{font-size:0;opacity:0}.q-fab__label--internal-top{padding-bottom:.12em}.q-fab__label--internal-bottom{padding-top:.12em}.q-fab__label--internal-bottom.q-fab__label--internal-hidden,.q-fab__label--internal-top.q-fab__label--internal-hidden{max-height:0}.q-fab__label--internal-left{padding-left:.285em;padding-right:.571em}.q-fab__label--internal-right{padding-right:.285em;padding-left:.571em}.q-fab__icon-holder{min-width:24px;min-height:24px;position:relative}.q-fab__icon-holder--opened .q-fab__icon{transform:rotate(180deg);opacity:0}.q-fab__icon-holder--opened .q-fab__active-icon{transform:rotate(0);opacity:1}.q-fab__actions{position:absolute;opacity:0;transition:transform .18s ease-in,opacity .18s ease-in;pointer-events:none;align-items:center;justify-content:center;align-self:center;padding:3px}.q-fab__actions .q-btn{margin:5px}.q-fab__actions--right{transform-origin:0 50%;transform:scale(.4) translateX(-62px);height:56px;left:100%;margin-left:9px}.q-fab__actions--left{transform-origin:100% 50%;transform:scale(.4) translateX(62px);height:56px;right:100%;margin-right:9px;flex-direction:row-reverse}.q-fab__actions--up{transform-origin:50% 100%;transform:scale(.4) translateY(62px);width:56px;bottom:100%;margin-bottom:9px;flex-direction:column-reverse}.q-fab__actions--down{transform-origin:50% 0;transform:scale(.4) translateY(-62px);width:56px;top:100%;margin-top:9px;flex-direction:column}.q-fab__actions--down,.q-fab__actions--up{left:50%;margin-left:-28px}.q-fab__actions--opened{opacity:1;transform:scale(1) translate(.1px,0);pointer-events:all}.q-fab--align-left>.q-fab__actions--down,.q-fab--align-left>.q-fab__actions--up{align-items:flex-start;left:28px}.q-fab--align-right>.q-fab__actions--down,.q-fab--align-right>.q-fab__actions--up{align-items:flex-end;left:auto;right:0}.q-field{font-size:14px}.q-field ::-ms-clear,.q-field ::-ms-reveal{display:none}.q-field--with-bottom{padding-bottom:20px}.q-field__marginal{height:56px;color:rgba(0,0,0,.54);font-size:24px}.q-field__marginal>*+*{margin-left:2px}.q-field__marginal .q-avatar{font-size:32px}.q-field__before,.q-field__prepend{padding-right:12px}.q-field__after,.q-field__append{padding-left:12px}.q-field__after:empty,.q-field__append:empty{display:none}.q-field__append+.q-field__append{padding-left:2px}.q-field__inner{text-align:left}.q-field__bottom{font-size:12px;min-height:20px;line-height:1;color:rgba(0,0,0,.54);padding:8px 12px 0;backface-visibility:hidden}.q-field__bottom--animated{transform:translateY(100%);position:absolute;left:0;right:0;bottom:0}.q-field__messages{line-height:1}.q-field__messages>div{word-break:break-word;word-wrap:break-word;overflow-wrap:break-word}.q-field__messages>div+div{margin-top:4px}.q-field__counter{padding-left:8px;line-height:1}.q-field--item-aligned{padding:8px 16px}.q-field--item-aligned .q-field__before{min-width:56px}.q-field__control-container{height:inherit}.q-field__control{color:var(--q-primary);height:56px;max-width:100%;outline:0}.q-field__control:after,.q-field__control:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.q-field__control:before{border-radius:inherit}.q-field__shadow{top:8px;opacity:0;overflow:hidden;white-space:pre-wrap;transition:opacity .36s cubic-bezier(.4, 0, .2, 1)}.q-field__shadow+.q-field__native::placeholder{transition:opacity .36s cubic-bezier(.4, 0, .2, 1)}.q-field__shadow+.q-field__native:focus::placeholder{opacity:0}.q-field__input,.q-field__native,.q-field__prefix,.q-field__suffix{font-weight:400;line-height:28px;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;border:none;border-radius:0;background:0 0;color:rgba(0,0,0,.87);outline:0;padding:6px 0}.q-field__input,.q-field__native{width:100%;min-width:0;outline:0!important;-webkit-user-select:auto;user-select:auto}.q-field__input:-webkit-autofill,.q-field__native:-webkit-autofill{-webkit-animation-name:q-autofill;-webkit-animation-fill-mode:both}.q-field__input:-webkit-autofill+.q-field__label,.q-field__native:-webkit-autofill+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__input[type=color]+.q-field__label,.q-field__input[type=date]+.q-field__label,.q-field__input[type=datetime-local]+.q-field__label,.q-field__input[type=month]+.q-field__label,.q-field__input[type=time]+.q-field__label,.q-field__input[type=week]+.q-field__label,.q-field__native[type=color]+.q-field__label,.q-field__native[type=date]+.q-field__label,.q-field__native[type=datetime-local]+.q-field__label,.q-field__native[type=month]+.q-field__label,.q-field__native[type=time]+.q-field__label,.q-field__native[type=week]+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__input:invalid,.q-field__native:invalid{box-shadow:none}.q-field__native[type=file]{line-height:1em}.q-field__input{padding:0;height:0;min-height:24px;line-height:24px}.q-field__prefix,.q-field__suffix{transition:opacity .36s cubic-bezier(.4, 0, .2, 1);white-space:nowrap}.q-field__prefix{padding-right:4px}.q-field__suffix{padding-left:4px}.q-field--disabled .q-placeholder,.q-field--readonly .q-placeholder{opacity:1!important}.q-field--readonly.q-field--labeled .q-field__input,.q-field--readonly.q-field--labeled .q-field__native{cursor:default}.q-field--readonly.q-field--float .q-field__input,.q-field--readonly.q-field--float .q-field__native{cursor:text}.q-field--disabled .q-field__inner{cursor:not-allowed}.q-field--disabled .q-field__control{pointer-events:none}.q-field--disabled .q-field__control>div{opacity:.6!important}.q-field--disabled .q-field__control>div,.q-field--disabled .q-field__control>div *{outline:0!important}.q-field__label{left:0;top:18px;max-width:100%;color:rgba(0,0,0,.6);font-size:16px;line-height:1.25;font-weight:400;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;transform-origin:left top;transition:transform .36s cubic-bezier(.4, 0, .2, 1),max-width 324ms cubic-bezier(.4, 0, .2, 1);backface-visibility:hidden}.q-field--float .q-field__label{max-width:133%;transform:translateY(-40%) scale(.75);transition:transform .36s cubic-bezier(.4, 0, .2, 1),max-width 396ms cubic-bezier(.4, 0, .2, 1)}.q-field--highlighted .q-field__label{color:currentColor}.q-field--highlighted .q-field__shadow{opacity:.5}.q-field--filled .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px 4px 0 0}.q-field--filled .q-field__control:before{background:rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.42);opacity:0;transition:opacity .36s cubic-bezier(.4, 0, .2, 1),background .36s cubic-bezier(.4, 0, .2, 1)}.q-field--filled .q-field__control:hover:before{opacity:1}.q-field--filled .q-field__control:after{height:2px;top:auto;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4, 0, .2, 1)}.q-field--filled.q-field--rounded .q-field__control{border-radius:28px 28px 0 0}.q-field--filled.q-field--highlighted .q-field__control:before{opacity:1;background:rgba(0,0,0,.12)}.q-field--filled.q-field--highlighted .q-field__control:after{transform:scale3d(1,1,1)}.q-field--filled.q-field--dark .q-field__control,.q-field--filled.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--filled.q-field--dark.q-field--highlighted .q-field__control:before{background:rgba(255,255,255,.1)}.q-field--filled.q-field--readonly .q-field__control:before{opacity:1;background:0 0;border-bottom-style:dashed}.q-field--outlined .q-field__control{border-radius:4px;padding:0 12px}.q-field--outlined .q-field__control:before{border:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4, 0, .2, 1)}.q-field--outlined .q-field__control:hover:before{border-color:#000}.q-field--outlined .q-field__control:after{height:inherit;border-radius:inherit;border:2px solid transparent;transition:border-color .36s cubic-bezier(.4, 0, .2, 1)}.q-field--outlined .q-field__input:-webkit-autofill,.q-field--outlined .q-field__native:-webkit-autofill{margin-top:1px;margin-bottom:1px}.q-field--outlined.q-field--rounded .q-field__control{border-radius:28px}.q-field--outlined.q-field--highlighted .q-field__control:hover:before{border-color:transparent}.q-field--outlined.q-field--highlighted .q-field__control:after{border-color:currentColor;border-width:2px;transform:scale3d(1,1,1)}.q-field--outlined.q-field--readonly .q-field__control:before{border-style:dashed}.q-field--standard .q-field__control:before{border-bottom:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4, 0, .2, 1)}.q-field--standard .q-field__control:hover:before{border-color:#000}.q-field--standard .q-field__control:after{height:2px;top:auto;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4, 0, .2, 1)}.q-field--standard.q-field--highlighted .q-field__control:after{transform:scale3d(1,1,1)}.q-field--standard.q-field--readonly .q-field__control:before{border-bottom-style:dashed}.q-field--dark .q-field__control:before{border-color:rgba(255,255,255,.6)}.q-field--dark .q-field__control:hover:before{border-color:#fff}.q-field--dark .q-field__input,.q-field--dark .q-field__native,.q-field--dark .q-field__prefix,.q-field--dark .q-field__suffix{color:#fff}.q-field--dark .q-field__bottom,.q-field--dark .q-field__marginal,.q-field--dark:not(.q-field--highlighted) .q-field__label{color:rgba(255,255,255,.7)}.q-field--standout .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px;transition:box-shadow .36s cubic-bezier(.4, 0, .2, 1),background-color .36s cubic-bezier(.4, 0, .2, 1)}.q-field--standout .q-field__control:before{background:rgba(0,0,0,.07);opacity:0;transition:opacity .36s cubic-bezier(.4, 0, .2, 1),background .36s cubic-bezier(.4, 0, .2, 1)}.q-field--standout .q-field__control:hover:before{opacity:1}.q-field--standout.q-field--rounded .q-field__control{border-radius:28px}.q-field--standout.q-field--highlighted .q-field__control{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);background:#000}.q-field--standout.q-field--highlighted .q-field__append,.q-field--standout.q-field--highlighted .q-field__input,.q-field--standout.q-field--highlighted .q-field__native,.q-field--standout.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--highlighted .q-field__suffix{color:#fff}.q-field--standout.q-field--readonly .q-field__control:before{opacity:1;background:0 0;border:1px dashed rgba(0,0,0,.24)}.q-field--standout.q-field--dark .q-field__control{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark.q-field--highlighted .q-field__control{background:#fff}.q-field--standout.q-field--dark.q-field--highlighted .q-field__append,.q-field--standout.q-field--dark.q-field--highlighted .q-field__input,.q-field--standout.q-field--dark.q-field--highlighted .q-field__native,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--dark.q-field--highlighted .q-field__suffix{color:#000}.q-field--standout.q-field--dark.q-field--readonly .q-field__control:before{border-color:rgba(255,255,255,.24)}.q-field--labeled .q-field__native,.q-field--labeled .q-field__prefix,.q-field--labeled .q-field__suffix{line-height:24px;padding-top:24px;padding-bottom:8px}.q-field--labeled .q-field__shadow{top:0}.q-field--labeled:not(.q-field--float) .q-field__prefix,.q-field--labeled:not(.q-field--float) .q-field__suffix{opacity:0}.q-field--labeled:not(.q-field--float) .q-field__input::placeholder,.q-field--labeled:not(.q-field--float) .q-field__native::placeholder{color:transparent}.q-field--labeled.q-field--dense .q-field__native,.q-field--labeled.q-field--dense .q-field__prefix,.q-field--labeled.q-field--dense .q-field__suffix{padding-top:14px;padding-bottom:2px}.q-field--dense .q-field--with-bottom{padding-bottom:19px}.q-field--dense .q-field__shadow{top:0}.q-field--dense .q-field__control,.q-field--dense .q-field__marginal{height:40px}.q-field--dense .q-field__bottom{font-size:11px}.q-field--dense .q-field__label{font-size:14px;top:10px}.q-field--dense .q-field__before,.q-field--dense .q-field__prepend{padding-right:6px}.q-field--dense .q-field__after,.q-field--dense .q-field__append{padding-left:6px}.q-field--dense .q-field__append+.q-field__append{padding-left:2px}.q-field--dense .q-field__marginal .q-avatar{font-size:24px}.q-field--dense.q-field--float .q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__input:-webkit-autofill+.q-field__label,.q-field--dense .q-field__native:-webkit-autofill+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__input[type=color]+.q-field__label,.q-field--dense .q-field__input[type=date]+.q-field__label,.q-field--dense .q-field__input[type=datetime-local]+.q-field__label,.q-field--dense .q-field__input[type=month]+.q-field__label,.q-field--dense .q-field__input[type=time]+.q-field__label,.q-field--dense .q-field__input[type=week]+.q-field__label,.q-field--dense .q-field__native[type=color]+.q-field__label,.q-field--dense .q-field__native[type=date]+.q-field__label,.q-field--dense .q-field__native[type=datetime-local]+.q-field__label,.q-field--dense .q-field__native[type=month]+.q-field__label,.q-field--dense .q-field__native[type=time]+.q-field__label,.q-field--dense .q-field__native[type=week]+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--borderless .q-field__bottom,.q-field--borderless.q-field--dense .q-field__control,.q-field--standard .q-field__bottom,.q-field--standard.q-field--dense .q-field__control{padding-left:0;padding-right:0}.q-field--error .q-field__label{animation:q-field-label .36s}.q-field--error .q-field__bottom{color:var(--q-negative)}.q-field__focusable-action{opacity:.6;cursor:pointer;outline:0!important;border:0;color:inherit;background:0 0;padding:0}.q-field__focusable-action:focus,.q-field__focusable-action:hover{opacity:1}.q-field--auto-height .q-field__control{height:auto}.q-field--auto-height .q-field__control,.q-field--auto-height .q-field__native{min-height:56px}.q-field--auto-height .q-field__native{align-items:center}.q-field--auto-height .q-field__control-container{padding-top:0}.q-field--auto-height .q-field__native,.q-field--auto-height .q-field__prefix,.q-field--auto-height .q-field__suffix{line-height:18px}.q-field--auto-height.q-field--labeled .q-field__control-container{padding-top:24px}.q-field--auto-height.q-field--labeled .q-field__shadow{top:24px}.q-field--auto-height.q-field--labeled .q-field__native,.q-field--auto-height.q-field--labeled .q-field__prefix,.q-field--auto-height.q-field--labeled .q-field__suffix{padding-top:0}.q-field--auto-height.q-field--labeled .q-field__native{min-height:24px}.q-field--auto-height.q-field--dense .q-field__control,.q-field--auto-height.q-field--dense .q-field__native{min-height:40px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__native{min-height:24px}.q-field--square .q-field__control{border-radius:0!important}.q-transition--field-message-enter-active,.q-transition--field-message-leave-active{transition:transform .6s cubic-bezier(.86, 0, .07, 1),opacity .6s cubic-bezier(.86, 0, .07, 1)}.q-transition--field-message-enter-from,.q-transition--field-message-leave-to{opacity:0;transform:translateY(-10px)}.q-transition--field-message-leave-active,.q-transition--field-message-leave-from{position:absolute}@keyframes q-field-label{40%{margin-left:2px}60%,80%{margin-left:-2px}70%,90%{margin-left:2px}}@keyframes q-autofill{to{background:0 0;color:inherit}}.q-file .q-field__native{word-break:break-all;overflow:hidden}.q-file .q-field__input{opacity:0!important}.q-file .q-field__input::-webkit-file-upload-button{cursor:pointer}.q-file__filler{visibility:hidden;width:100%;border:none;padding:0}.q-file__dnd{outline:1px dashed currentColor;outline-offset:-4px}.q-form{position:relative}.q-img{position:relative;width:100%;display:inline-block;vertical-align:middle;overflow:hidden}.q-img__loading .q-spinner{font-size:50px}.q-img__container{border-radius:inherit;font-size:0}.q-img__image{border-radius:inherit;width:100%;height:100%;opacity:0}.q-img__image--with-transition{transition:opacity .28s ease-in}.q-img__image--loaded{opacity:1}.q-img__content{border-radius:inherit;pointer-events:none}.q-img__content>div{pointer-events:all;position:absolute;padding:16px;color:#fff;background:rgba(0,0,0,.47)}.q-img--no-menu .q-img__image,.q-img--no-menu .q-img__placeholder{pointer-events:none}.q-inner-loading{background:rgba(255,255,255,.6);border-radius:inherit}.q-inner-loading--dark{background:rgba(0,0,0,.4)}.q-inner-loading__label{margin-top:8px}.q-textarea .q-field__control{min-height:56px;height:auto}.q-textarea .q-field__control-container{padding-top:2px;padding-bottom:2px}.q-textarea .q-field__shadow{top:2px;bottom:2px}.q-textarea .q-field__native,.q-textarea .q-field__prefix,.q-textarea .q-field__suffix{line-height:18px}.q-textarea .q-field__native{resize:vertical;padding-top:17px;min-height:52px}.q-textarea.q-field--labeled .q-field__control-container{padding-top:26px}.q-textarea.q-field--labeled .q-field__shadow{top:26px}.q-textarea.q-field--labeled .q-field__native,.q-textarea.q-field--labeled .q-field__prefix,.q-textarea.q-field--labeled .q-field__suffix{padding-top:0}.q-textarea.q-field--labeled .q-field__native{min-height:26px;padding-top:1px}.q-textarea--autogrow .q-field__native{resize:none}.q-textarea.q-field--dense .q-field__control,.q-textarea.q-field--dense .q-field__native{min-height:36px}.q-textarea.q-field--dense .q-field__native{padding-top:9px}.q-textarea.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__native{min-height:24px;padding-top:3px}.q-textarea.q-field--dense.q-field--labeled .q-field__prefix,.q-textarea.q-field--dense.q-field--labeled .q-field__suffix{padding-top:2px}.q-textarea.disabled .q-field__native,body.mobile .q-textarea .q-field__native{resize:none}.q-intersection{position:relative}.q-item{min-height:48px;padding:8px 16px;color:inherit;transition:color .3s,background-color .3s}.q-item__section--side{color:#757575;align-items:flex-start;padding-right:16px;width:auto;min-width:0;max-width:100%}.q-item__section--side>.q-icon{font-size:24px}.q-item__section--side>.q-avatar{font-size:40px}.q-item__section--avatar{color:inherit;min-width:56px}.q-item__section--thumbnail img{width:100px;height:56px}.q-item__section--nowrap{white-space:nowrap}.q-item>.q-focus-helper+.q-item__section--thumbnail,.q-item>.q-item__section--thumbnail:first-child{margin-left:-16px}.q-item>.q-item__section--thumbnail:last-of-type{margin-right:-16px}.q-item__label{line-height:1.2em!important;max-width:100%}.q-item__label--overline{color:rgba(0,0,0,.7)}.q-item__label--caption{color:rgba(0,0,0,.54)}.q-item__label--header{color:#757575;padding:16px;font-size:.875rem;line-height:1.25rem;letter-spacing:.01786em}.q-list--padding .q-item__label--header,.q-separator--spaced+.q-item__label--header{padding-top:8px}.q-item__label+.q-item__label{margin-top:4px}.q-item__section--main{width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-item__section--main+.q-item__section--main{margin-left:8px}.q-item__section--main~.q-item__section--side{align-items:flex-end;padding-right:0;padding-left:16px}.q-item__section--main.q-item__section--thumbnail{margin-left:0;margin-right:-16px}.q-list--bordered{border:1px solid rgba(0,0,0,.12)}.q-list--separator>.q-item-type+.q-item-type,.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top:1px solid rgba(0,0,0,.12)}.q-list--padding{padding:8px 0}.q-item--dense,.q-list--dense>.q-item{min-height:32px;padding:2px 16px}.q-list--dark.q-list--separator>.q-item-type+.q-item-type,.q-list--dark.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top-color:rgba(255,255,255,.28)}.q-item--dark,.q-list--dark{color:#fff;border-color:rgba(255,255,255,.28)}.q-item--dark .q-item__section--side:not(.q-item__section--avatar),.q-list--dark .q-item__section--side:not(.q-item__section--avatar){color:rgba(255,255,255,.7)}.q-item--dark .q-item__label--header,.q-list--dark .q-item__label--header{color:rgba(255,255,255,.64)}.q-item--dark .q-item__label--caption,.q-item--dark .q-item__label--overline,.q-list--dark .q-item__label--caption,.q-list--dark .q-item__label--overline{color:rgba(255,255,255,.8)}.q-item{position:relative}.q-item--active,.q-item.q-router-link--active{color:var(--q-primary)}.q-knob{font-size:48px}.q-knob--editable{cursor:pointer;outline:0}.q-knob--editable:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:none;transition:box-shadow .24s ease-in-out}.q-knob--editable:focus:before{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}body.body--dark .q-knob--editable:focus:before{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-layout{width:100%;outline:0}.q-layout-container{position:relative;width:100%;height:100%}.q-layout-container .q-layout{min-height:100%}.q-layout-container>div{transform:translate3d(0,0,0)}.q-layout-container>div>div{min-height:0;max-height:100%}.q-layout__shadow{width:100%}.q-layout__shadow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:0 0 10px 2px rgba(0,0,0,.2),0 0 10px rgba(0,0,0,.24)}.q-layout__section--marginal{background-color:var(--q-primary);color:#fff}.q-header--hidden{transform:translateY(-110%)}.q-header--bordered{border-bottom:1px solid rgba(0,0,0,.12)}.q-header .q-layout__shadow{bottom:-10px}.q-header .q-layout__shadow:after{bottom:10px}.q-footer--hidden{transform:translateY(110%)}.q-footer--bordered{border-top:1px solid rgba(0,0,0,.12)}.q-footer .q-layout__shadow{top:-10px}.q-footer .q-layout__shadow:after{top:10px}.q-footer,.q-header{z-index:2000}.q-drawer{position:absolute;top:0;bottom:0;background:#fff;z-index:1000}.q-drawer--on-top{z-index:3000}.q-drawer--left{left:0;transform:translateX(-100%)}.q-drawer--left.q-drawer--bordered{border-right:1px solid rgba(0,0,0,.12)}.q-drawer--left .q-layout__shadow{left:10px;right:-10px}.q-drawer--left .q-layout__shadow:after{right:10px}.q-drawer--right{right:0;transform:translateX(100%)}.q-drawer--right.q-drawer--bordered{border-left:1px solid rgba(0,0,0,.12)}.q-drawer--right .q-layout__shadow{left:-10px}.q-drawer--right .q-layout__shadow:after{left:10px}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini{padding:0!important}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section{text-align:center;justify-content:center;padding-left:0;padding-right:0;min-width:0}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__label,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--main,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--side~.q-item__section--side{display:none}.q-drawer--mini .q-expansion-item__content,.q-drawer--mini .q-mini-drawer-hide{display:none}.q-drawer--mini-animate .q-drawer__content{overflow-x:hidden!important;white-space:nowrap}.q-drawer--standard .q-mini-drawer-only{display:none}.q-drawer--mobile .q-mini-drawer-hide,.q-drawer--mobile .q-mini-drawer-only{display:none}.q-drawer__backdrop{z-index:2999!important;will-change:background-color}.q-drawer__opener{z-index:2001;height:100%;width:15px;-webkit-user-select:none;user-select:none}.q-footer,.q-header,.q-layout,.q-page{position:relative}.q-page-sticky--shrink{pointer-events:none}.q-page-sticky--shrink>div{display:inline-block;pointer-events:auto}body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content,body.q-ios-padding .q-layout--standard .q-header>.q-tabs:first-child .q-tabs__content,body.q-ios-padding .q-layout--standard .q-header>.q-toolbar:first-child{padding-top:20px;min-height:70px;padding-top:env(safe-area-inset-top);min-height:calc(env(safe-area-inset-top) + 50px)}body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content,body.q-ios-padding .q-layout--standard .q-footer>.q-tabs:nth-last-child(1of:not(.q-layout__shadow)) .q-tabs__content,body.q-ios-padding .q-layout--standard .q-footer>.q-toolbar:last-child{padding-bottom:env(safe-area-inset-bottom);min-height:calc(env(safe-area-inset-bottom) + 50px)}.q-body--layout-animate .q-drawer__backdrop{transition:background-color .12s!important}.q-body--layout-animate .q-drawer{transition:transform .12s,width .12s,top .12s,bottom .12s!important}.q-body--layout-animate .q-layout__section--marginal{transition:transform .12s,left .12s,right .12s!important}.q-body--layout-animate .q-page-container{transition:padding-top .12s,padding-right .12s,padding-bottom .12s,padding-left .12s!important}.q-body--layout-animate .q-page-sticky{transition:transform .12s,left .12s,right .12s,top .12s,bottom .12s!important}body:not(.q-body--layout-animate) .q-layout--prevent-focus{visibility:hidden}.q-body--drawer-toggle{overflow-x:hidden!important}@media (max-width:599.98px){.q-layout-padding{padding:8px}}@media (min-width:600px) and (max-width:1439.98px){.q-layout-padding{padding:16px}}@media (min-width:1440px){.q-layout-padding{padding:24px}}body.body--dark .q-drawer,body.body--dark .q-footer,body.body--dark .q-header{border-color:rgba(255,255,255,.28)}body.body--dark .q-layout__shadow:after{box-shadow:0 0 10px 2px rgba(255,255,255,.2),0 0 10px rgba(255,255,255,.24)}body.platform-ios .q-layout--containerized{position:unset!important}.q-linear-progress{--q-linear-progress-speed:.3s;position:relative;width:100%;overflow:hidden;font-size:4px;height:1em;color:var(--q-primary);transform:scale3d(1,1,1)}.q-linear-progress__model,.q-linear-progress__track{transform-origin:0 0}.q-linear-progress__model--with-transition,.q-linear-progress__track--with-transition{transition:transform var(--q-linear-progress-speed)}.q-linear-progress--reverse .q-linear-progress__model,.q-linear-progress--reverse .q-linear-progress__track{transform-origin:0 100%}.q-linear-progress__model--determinate{background:currentColor}.q-linear-progress__model--indeterminate,.q-linear-progress__model--query{transition:none}.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--query:after,.q-linear-progress__model--query:before{background:currentColor;content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 0}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--query:before{animation:q-linear-progress--indeterminate 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:after{transform:translate3d(-101%,0,0) scale3d(1,1,1);animation:q-linear-progress--indeterminate-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.q-linear-progress__track{opacity:.4}.q-linear-progress__track--light{background:rgba(0,0,0,.26)}.q-linear-progress__track--dark{background:rgba(255,255,255,.6)}.q-linear-progress__stripe{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,rgba(255,255,255,0) 25%,rgba(255,255,255,0) 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,rgba(255,255,255,0) 75%,rgba(255,255,255,0))!important;background-size:40px 40px!important}.q-linear-progress__stripe--with-transition{transition:width var(--q-linear-progress-speed)}@keyframes q-linear-progress--indeterminate{0%{transform:translate3d(-35%,0,0) scale3d(.35,1,1)}60%{transform:translate3d(100%,0,0) scale3d(.9,1,1)}100%{transform:translate3d(100%,0,0) scale3d(.9,1,1)}}@keyframes q-linear-progress--indeterminate-short{0%{transform:translate3d(-101%,0,0) scale3d(1,1,1)}60%{transform:translate3d(107%,0,0) scale3d(.01,1,1)}100%{transform:translate3d(107%,0,0) scale3d(.01,1,1)}}.q-menu{position:fixed!important;display:inline-block;max-width:95vw;max-height:65vh;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);background:#fff;border-radius:4px;overflow-y:auto;overflow-x:hidden;outline:0;z-index:6000}.q-menu--square{border-radius:0}.q-menu--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-option-group--inline>div{display:inline-block}.q-pagination input{text-align:center;-moz-appearance:textfield}.q-pagination input::-webkit-inner-spin-button,.q-pagination input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.q-pagination__content{--q-pagination-gutter-parent:-2px;--q-pagination-gutter-child:2px;margin-top:var(--q-pagination-gutter-parent);margin-left:var(--q-pagination-gutter-parent)}.q-pagination__content>.q-btn,.q-pagination__content>.q-input,.q-pagination__middle>.q-btn{margin-top:var(--q-pagination-gutter-child);margin-left:var(--q-pagination-gutter-child)}.q-parallax{position:relative;width:100%;overflow:hidden;border-radius:inherit}.q-parallax__media>img,.q-parallax__media>video{position:absolute;left:50%;bottom:0;min-width:100%;min-height:100%;will-change:transform;display:none}.q-popup-edit{padding:8px 16px}.q-popup-edit__buttons{margin-top:8px}.q-popup-edit__buttons .q-btn+.q-btn{margin-left:8px}.q-pull-to-refresh{position:relative}.q-pull-to-refresh__puller{border-radius:50%;width:40px;height:40px;color:var(--q-primary);background:#fff;box-shadow:0 0 4px 0 rgba(0,0,0,.3)}.q-pull-to-refresh__puller--animating{transition:transform .3s,opacity .3s}.q-radio{vertical-align:middle}.q-radio__native{width:1px;height:1px}.q-radio__bg,.q-radio__icon-container{-webkit-user-select:none;user-select:none}.q-radio__bg{top:25%;left:25%;width:50%;height:50%;-webkit-print-color-adjust:exact}.q-radio__bg path{fill:currentColor}.q-radio__icon{color:currentColor;font-size:.5em}.q-radio__check{transform-origin:50% 50%;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0, 0, .2, 1) 0s}.q-radio__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:rgba(0,0,0,.54)}.q-radio__inner--truthy{color:var(--q-primary)}.q-radio__inner--truthy .q-radio__check{transform:scale3d(1,1,1)}.q-radio.disabled{opacity:.75!important}.q-radio--dark .q-radio__inner{color:rgba(255,255,255,.7)}.q-radio--dark .q-radio__inner:before{opacity:.32!important}.q-radio--dark .q-radio__inner--truthy{color:var(--q-primary)}.q-radio--dense .q-radio__inner{width:.5em;min-width:.5em;height:.5em}.q-radio--dense .q-radio__bg{left:0;top:0;width:100%;height:100%}.q-radio--dense .q-radio__label{padding-left:.5em}.q-radio--dense.reverse .q-radio__label{padding-left:0;padding-right:.5em}body.desktop .q-radio:not(.disabled) .q-radio__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0, 0, .2, 1) 0s}body.desktop .q-radio:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio:not(.disabled):hover .q-radio__inner:before{transform:scale3d(1,1,1)}body.desktop .q-radio--dense:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio--dense:not(.disabled):hover .q-radio__inner:before{transform:scale3d(1.5,1.5,1)}.q-rating{color:#ffeb3b;vertical-align:middle}.q-rating__icon-container{height:1em;outline:0}.q-rating__icon-container+.q-rating__icon-container{margin-left:2px}.q-rating__icon{color:currentColor;text-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);position:relative;opacity:.4;transition:transform .2s ease-in,opacity .2s ease-in}.q-rating__icon--hovered{transform:scale(1.3)}.q-rating__icon--active{opacity:1}.q-rating__icon--exselected{opacity:.7}.q-rating--no-dimming .q-rating__icon{opacity:1}.q-rating--editable .q-rating__icon-container{cursor:pointer}.q-responsive{position:relative;max-width:100%;max-height:100%}.q-responsive__filler{width:inherit;max-width:inherit;height:inherit;max-height:inherit}.q-responsive__content{border-radius:inherit}.q-responsive__content>*{width:100%!important;height:100%!important;max-height:100%!important;max-width:100%!important}.q-scrollarea{position:relative;contain:strict}.q-scrollarea__bar,.q-scrollarea__thumb{opacity:.2;transition:opacity .3s;will-change:opacity;cursor:grab}.q-scrollarea__bar--v,.q-scrollarea__thumb--v{right:0;width:10px}.q-scrollarea__bar--h,.q-scrollarea__thumb--h{bottom:0;height:10px}.q-scrollarea__bar--invisible,.q-scrollarea__thumb--invisible{opacity:0!important;pointer-events:none}.q-scrollarea__thumb{background:#000;border-radius:3px}.q-scrollarea__thumb:hover{opacity:.3}.q-scrollarea__thumb:active{opacity:.5}.q-scrollarea__content{min-height:100%;min-width:100%}.q-scrollarea--dark .q-scrollarea__thumb{background:#fff}.q-select--without-input .q-field__control{cursor:pointer}.q-select--with-input .q-field__control{cursor:text}.q-select .q-field__input{min-width:50px!important;cursor:text}.q-select .q-field__input--padding{padding-left:4px}.q-select__autocomplete-input,.q-select__focus-target{position:absolute;outline:0!important;width:1px;height:1px;padding:0;border:0;opacity:0}.q-select__dropdown-icon{cursor:pointer;transition:transform .28s}.q-select.q-field--readonly .q-field__control,.q-select.q-field--readonly .q-select__dropdown-icon{cursor:default}.q-select__dialog{width:90vw!important;max-width:90vw!important;max-height:calc(100vh - 70px)!important;background:#fff;display:flex;flex-direction:column}.q-select__dialog>.scroll{position:relative;background:inherit}body.mobile:not(.native-mobile) .q-select__dialog{max-height:calc(100vh - 108px)!important}body.platform-android.native-mobile .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 24px)!important}body.platform-android:not(.native-mobile) .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 80px)!important}body.platform-ios.native-mobile .q-dialog__inner--top>div{border-radius:4px}body.platform-ios.native-mobile .q-dialog__inner--top .q-select__dialog--focused{max-height:47vh!important}body.platform-ios:not(.native-mobile) .q-dialog__inner--top .q-select__dialog--focused{max-height:50vh!important}.q-separator{border:0;background:rgba(0,0,0,.12);margin:0;transition:background .3s,opacity .3s;flex-shrink:0}.q-separator--dark{background:rgba(255,255,255,.28)}.q-separator--horizontal{display:block;height:1px}.q-separator--horizontal-inset{margin-left:16px;margin-right:16px}.q-separator--horizontal-item-inset{margin-left:72px;margin-right:0}.q-separator--horizontal-item-thumbnail-inset{margin-left:116px;margin-right:0}.q-separator--vertical{width:1px;height:auto;align-self:stretch}.q-separator--vertical-inset{margin-top:8px;margin-bottom:8px}.q-skeleton{--q-skeleton-speed:1500ms;background:rgba(0,0,0,.12);border-radius:4px;box-sizing:border-box}.q-skeleton--anim{cursor:wait}.q-skeleton:before{content:" "}.q-skeleton--type-text{transform:scale(1,.5)}.q-skeleton--type-QAvatar,.q-skeleton--type-circle{height:48px;width:48px;border-radius:50%}.q-skeleton--type-QBtn{width:90px;height:36px}.q-skeleton--type-QBadge{width:70px;height:16px}.q-skeleton--type-QChip{width:90px;height:28px;border-radius:16px}.q-skeleton--type-QToolbar{height:50px}.q-skeleton--type-QCheckbox,.q-skeleton--type-QRadio{width:40px;height:40px;border-radius:50%}.q-skeleton--type-QToggle{width:56px;height:40px;border-radius:7px}.q-skeleton--type-QRange,.q-skeleton--type-QSlider{height:40px}.q-skeleton--type-QInput{height:56px}.q-skeleton--bordered{border:1px solid rgba(0,0,0,.05)}.q-skeleton--square{border-radius:0}.q-skeleton--anim-fade{animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-pulse{animation:q-skeleton--pulse var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-x{animation:q-skeleton--pulse-x var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-y{animation:q-skeleton--pulse-y var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-blink,.q-skeleton--anim-pop,.q-skeleton--anim-wave{position:relative;overflow:hidden;z-index:1}.q-skeleton--anim-blink:after,.q-skeleton--anim-pop:after,.q-skeleton--anim-wave:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.q-skeleton--anim-blink:after{background:rgba(255,255,255,.7);animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0));animation:q-skeleton--wave var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--dark{background:rgba(255,255,255,.05)}.q-skeleton--dark.q-skeleton--bordered{border:1px solid rgba(255,255,255,.25)}.q-skeleton--dark.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.1),rgba(255,255,255,0))}.q-skeleton--dark.q-skeleton--anim-blink:after{background:rgba(255,255,255,.2)}@keyframes q-skeleton--fade{0%{opacity:1}50%{opacity:.4}100%{opacity:1}}@keyframes q-skeleton--pulse{0%{transform:scale(1)}50%{transform:scale(.85)}100%{transform:scale(1)}}@keyframes q-skeleton--pulse-x{0%{transform:scaleX(1)}50%{transform:scaleX(.75)}100%{transform:scaleX(1)}}@keyframes q-skeleton--pulse-y{0%{transform:scaleY(1)}50%{transform:scaleY(.75)}100%{transform:scaleY(1)}}@keyframes q-skeleton--wave{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.q-slide-item{position:relative;background:#fff}.q-slide-item__bottom,.q-slide-item__left,.q-slide-item__right,.q-slide-item__top{visibility:hidden;font-size:14px;color:#fff}.q-slide-item__bottom .q-icon,.q-slide-item__left .q-icon,.q-slide-item__right .q-icon,.q-slide-item__top .q-icon{font-size:1.714em}.q-slide-item__left{background:#4caf50;padding:8px 16px}.q-slide-item__left>div{transform-origin:left center}.q-slide-item__right{background:#ff9800;padding:8px 16px}.q-slide-item__right>div{transform-origin:right center}.q-slide-item__top{background:#2196f3;padding:16px 8px}.q-slide-item__top>div{transform-origin:top center}.q-slide-item__bottom{background:#9c27b0;padding:16px 8px}.q-slide-item__bottom>div{transform-origin:bottom center}.q-slide-item__content{background:inherit;transition:transform .2s ease-in;-webkit-user-select:none;user-select:none;cursor:pointer}.q-slider{position:relative}.q-slider--h{width:100%}.q-slider--v{height:200px}.q-slider--editable .q-slider__track-container{cursor:grab}.q-slider__track-container{outline:0}.q-slider__track-container--h{width:100%;padding:12px 0}.q-slider__track-container--h .q-slider__selection{will-change:width,left}.q-slider__track-container--v{height:100%;padding:0 12px}.q-slider__track-container--v .q-slider__selection{will-change:height,top}.q-slider__track{color:var(--q-primary);background:rgba(0,0,0,.1);border-radius:4px;width:inherit;height:inherit}.q-slider__inner{background:rgba(0,0,0,.1);border-radius:inherit;width:100%;height:100%}.q-slider__selection{background:currentColor;border-radius:inherit;width:100%;height:100%}.q-slider__markers{color:rgba(0,0,0,.3);border-radius:inherit;width:100%;height:100%}.q-slider__markers:after{content:"";position:absolute;background:currentColor}.q-slider__markers--h{background-image:repeating-linear-gradient(to right,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--h:after{height:100%;width:2px;top:0;right:0}.q-slider__markers--v{background-image:repeating-linear-gradient(to bottom,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--v:after{width:100%;height:2px;left:0;bottom:0}.q-slider__marker-labels-container{position:relative;width:100%;height:100%;min-height:24px;min-width:24px}.q-slider__marker-labels{position:absolute}.q-slider__marker-labels--h-standard{top:0}.q-slider__marker-labels--h-switched{bottom:0}.q-slider__marker-labels--h-ltr{transform:translateX(-50%)}.q-slider__marker-labels--h-rtl{transform:translateX(50%)}.q-slider__marker-labels--v-standard{left:4px}.q-slider__marker-labels--v-switched{right:4px}.q-slider__marker-labels--v-ltr{transform:translateY(-50%)}.q-slider__marker-labels--v-rtl{transform:translateY(50%)}.q-slider__thumb{z-index:1;outline:0;color:var(--q-primary);transition:transform .18s ease-out,fill .18s ease-out,stroke .18s ease-out}.q-slider__thumb.q-slider--focus{opacity:1!important}.q-slider__thumb--h{top:50%;will-change:left}.q-slider__thumb--h-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--h-rtl{transform:scale(1) translate(50%,-50%)}.q-slider__thumb--v{left:50%;will-change:top}.q-slider__thumb--v-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--v-rtl{transform:scale(1) translate(-50%,50%)}.q-slider__thumb-shape{top:0;left:0;stroke-width:3.5;stroke:currentColor;transition:transform .28s}.q-slider__thumb-shape path{stroke:currentColor;fill:currentColor}.q-slider__focus-ring{border-radius:50%;opacity:0;transition:transform .266s ease-out,opacity .266s ease-out,background-color .266s ease-out;transition-delay:0.14s}.q-slider__pin{opacity:0;white-space:nowrap;transition:opacity .28s ease-out;transition-delay:0.14s}.q-slider__pin:before{content:"";width:0;height:0;position:absolute}.q-slider__pin--h:before{border-left:6px solid transparent;border-right:6px solid transparent;left:50%;transform:translateX(-50%)}.q-slider__pin--h-standard{bottom:100%}.q-slider__pin--h-standard:before{bottom:2px;border-top:6px solid currentColor}.q-slider__pin--h-switched{top:100%}.q-slider__pin--h-switched:before{top:2px;border-bottom:6px solid currentColor}.q-slider__pin--v{top:0}.q-slider__pin--v:before{top:50%;transform:translateY(-50%);border-top:6px solid transparent;border-bottom:6px solid transparent}.q-slider__pin--v-standard{left:100%}.q-slider__pin--v-standard:before{left:2px;border-right:6px solid currentColor}.q-slider__pin--v-switched{right:100%}.q-slider__pin--v-switched:before{right:2px;border-left:6px solid currentColor}.q-slider__label{z-index:1;white-space:nowrap;position:absolute}.q-slider__label--h{left:50%;transform:translateX(-50%)}.q-slider__label--h-standard{bottom:7px}.q-slider__label--h-switched{top:7px}.q-slider__label--v{top:50%;transform:translateY(-50%)}.q-slider__label--v-standard{left:7px}.q-slider__label--v-switched{right:7px}.q-slider__text-container{min-height:25px;padding:2px 8px;border-radius:4px;background:currentColor;position:relative;text-align:center}.q-slider__text{color:#fff;font-size:12px}.q-slider--no-value .q-slider__inner,.q-slider--no-value .q-slider__selection,.q-slider--no-value .q-slider__thumb{opacity:0}.q-slider--focus .q-slider__focus-ring,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__focus-ring{background:currentColor;transform:scale3d(1.55,1.55,1);opacity:.25}.q-slider--focus .q-slider__inner,.q-slider--focus .q-slider__selection,.q-slider--focus .q-slider__thumb,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__inner,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__selection,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__thumb{opacity:1}.q-slider--inactive .q-slider__thumb--h{transition:left .28s,right .28s}.q-slider--inactive .q-slider__thumb--v{transition:top .28s,bottom .28s}.q-slider--inactive .q-slider__selection{transition:width .28s,left .28s,right .28s,height .28s,top .28s,bottom .28s}.q-slider--inactive .q-slider__text-container{transition:transform .28s}.q-slider--active{cursor:grabbing}.q-slider--active .q-slider__thumb-shape{transform:scale(1.5)}.q-slider--active .q-slider__focus-ring,.q-slider--active.q-slider--label .q-slider__thumb-shape{transform:scale(0)!important}body.desktop .q-slider.q-slider--enabled .q-slider__track-container:hover .q-slider__pin{opacity:1}.q-slider--label .q-slider--focus .q-slider__pin,.q-slider--label.q-slider--active .q-slider__pin,.q-slider--label.q-slider--label-always .q-slider__pin{opacity:1}.q-slider--dark .q-slider__track{background:rgba(255,255,255,.1)}.q-slider--dark .q-slider__inner{background:rgba(255,255,255,.1)}.q-slider--dark .q-slider__markers{color:rgba(255,255,255,.3)}.q-slider--dense .q-slider__track-container--h{padding:6px 0}.q-slider--dense .q-slider__track-container--v{padding:0 6px}.q-space{flex-grow:1!important}.q-spinner{vertical-align:middle}.q-spinner-mat{animation:q-spin 2s linear infinite;transform-origin:center center}.q-spinner-mat .path{stroke-dasharray:1,200;stroke-dashoffset:0;animation:q-mat-dash 1.5s ease-in-out infinite}@keyframes q-spin{0%{transform:rotate3d(0,0,1,0deg)}25%{transform:rotate3d(0,0,1,90deg)}50%{transform:rotate3d(0,0,1,180deg)}75%{transform:rotate3d(0,0,1,270deg)}100%{transform:rotate3d(0,0,1,359deg)}}@keyframes q-mat-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}100%{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.q-splitter__panel{position:relative;z-index:0}.q-splitter__panel>.q-splitter{width:100%;height:100%}.q-splitter__separator{background-color:rgba(0,0,0,.12);-webkit-user-select:none;user-select:none;position:relative;z-index:1}.q-splitter__separator-area>*{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.q-splitter--dark .q-splitter__separator{background-color:rgba(255,255,255,.28)}.q-splitter--vertical>.q-splitter__panel{height:100%}.q-splitter--vertical.q-splitter--active{cursor:col-resize}.q-splitter--vertical>.q-splitter__separator{width:1px}.q-splitter--vertical>.q-splitter__separator>div{left:-6px;right:-6px}.q-splitter--vertical.q-splitter--workable>.q-splitter__separator{cursor:col-resize}.q-splitter--horizontal>.q-splitter__panel{width:100%}.q-splitter--horizontal.q-splitter--active{cursor:row-resize}.q-splitter--horizontal>.q-splitter__separator{height:1px}.q-splitter--horizontal>.q-splitter__separator>div{top:-6px;bottom:-6px}.q-splitter--horizontal.q-splitter--workable>.q-splitter__separator{cursor:row-resize}.q-splitter__after,.q-splitter__before{overflow:auto}.q-stepper{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;background:#fff}.q-stepper__title{font-size:14px;line-height:1.285714;letter-spacing:.1px}.q-stepper__caption{font-size:12px;line-height:1.16667}.q-stepper__dot{contain:layout;margin-right:8px;font-size:14px;width:24px;min-width:24px;height:24px;border-radius:50%;background:currentColor}.q-stepper__dot span{color:#fff}.q-stepper__tab{padding:8px 24px;font-size:14px;color:#9e9e9e;flex-direction:row}.q-stepper--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-stepper--dark .q-stepper__dot span{color:#000}.q-stepper__tab--navigation{-webkit-user-select:none;user-select:none;cursor:pointer}.q-stepper__tab--active,.q-stepper__tab--done{color:var(--q-primary)}.q-stepper__tab--active .q-stepper__dot,.q-stepper__tab--active .q-stepper__label,.q-stepper__tab--done .q-stepper__dot,.q-stepper__tab--done .q-stepper__label{text-shadow:0 0 0 currentColor}.q-stepper__tab--disabled .q-stepper__dot{background:rgba(0,0,0,.22)}.q-stepper__tab--disabled .q-stepper__label{color:rgba(0,0,0,.32)}.q-stepper__tab--error{color:var(--q-negative)}.q-stepper__tab--error-with-icon .q-stepper__dot{background:0 0!important}.q-stepper__tab--error-with-icon .q-stepper__dot span{color:currentColor;font-size:24px}.q-stepper__header{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-stepper__header--border{border-bottom:1px solid rgba(0,0,0,.12)}.q-stepper__header--standard-labels .q-stepper__tab{min-height:72px;justify-content:center}.q-stepper__header--standard-labels .q-stepper__tab:first-child{justify-content:flex-start}.q-stepper__header--standard-labels .q-stepper__tab:last-child{justify-content:flex-end}.q-stepper__header--standard-labels .q-stepper__tab:only-child{justify-content:center}.q-stepper__header--standard-labels .q-stepper__dot:after{display:none}.q-stepper__header--alternative-labels .q-stepper__tab{min-height:104px;padding:24px 32px;flex-direction:column;justify-content:flex-start}.q-stepper__header--alternative-labels .q-stepper__dot{margin-right:0}.q-stepper__header--alternative-labels .q-stepper__label{margin-top:8px;text-align:center}.q-stepper__header--alternative-labels .q-stepper__label:after,.q-stepper__header--alternative-labels .q-stepper__label:before{display:none}.q-stepper__header--contracted{min-height:72px}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab{min-height:72px}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:first-child{align-items:flex-start}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:last-child{align-items:flex-end}.q-stepper__header--contracted .q-stepper__tab{padding:24px 0}.q-stepper__header--contracted .q-stepper__tab:first-child .q-stepper__dot{transform:translateX(24px)}.q-stepper__header--contracted .q-stepper__tab:last-child .q-stepper__dot{transform:translateX(-24px)}.q-stepper__header--contracted .q-stepper__tab:not(:last-child) .q-stepper__dot:after{display:block!important}.q-stepper__header--contracted .q-stepper__dot{margin:0}.q-stepper__header--contracted .q-stepper__label{display:none}.q-stepper__nav{padding-top:24px}.q-stepper--flat{box-shadow:none}.q-stepper--bordered{border:1px solid rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__step-inner{padding:24px}.q-stepper--horizontal .q-stepper__tab:first-child{border-top-left-radius:inherit}.q-stepper--horizontal .q-stepper__tab:last-child{border-top-right-radius:inherit}.q-stepper--horizontal .q-stepper__tab:first-child .q-stepper__dot:before,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__dot:after,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__label:after{display:none}.q-stepper--horizontal .q-stepper__tab{overflow:hidden}.q-stepper--horizontal .q-stepper__line{contain:layout}.q-stepper--horizontal .q-stepper__line:after,.q-stepper--horizontal .q-stepper__line:before{position:absolute;top:50%;height:1px;width:100vw;background:rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__dot:after,.q-stepper--horizontal .q-stepper__label:after{content:"";left:100%;margin-left:8px}.q-stepper--horizontal .q-stepper__dot:before{content:"";right:100%;margin-right:8px}.q-stepper--horizontal>.q-stepper__nav{padding:0 24px 24px}.q-stepper--vertical{padding:16px 0}.q-stepper--vertical .q-stepper__tab{padding:12px 24px}.q-stepper--vertical .q-stepper__title{line-height:18px}.q-stepper--vertical .q-stepper__step-inner{padding:0 24px 32px 60px}.q-stepper--vertical>.q-stepper__nav{padding:24px 24px 0}.q-stepper--vertical .q-stepper__step{overflow:hidden}.q-stepper--vertical .q-stepper__dot{margin-right:12px}.q-stepper--vertical .q-stepper__dot:after,.q-stepper--vertical .q-stepper__dot:before{content:"";position:absolute;left:50%;width:1px;height:99999px;background:rgba(0,0,0,.12)}.q-stepper--vertical .q-stepper__dot:before{bottom:100%;margin-bottom:8px}.q-stepper--vertical .q-stepper__dot:after{top:100%;margin-top:8px}.q-stepper--vertical .q-stepper__step:first-child .q-stepper__dot:before,.q-stepper--vertical .q-stepper__step:last-child .q-stepper__dot:after{display:none}.q-stepper--vertical .q-stepper__step:last-child .q-stepper__step-inner{padding-bottom:8px}.q-stepper--dark .q-stepper__header--border,.q-stepper--dark.q-stepper--bordered{border-color:rgba(255,255,255,.28)}.q-stepper--dark.q-stepper--horizontal .q-stepper__line:after,.q-stepper--dark.q-stepper--horizontal .q-stepper__line:before{background:rgba(255,255,255,.28)}.q-stepper--dark.q-stepper--vertical .q-stepper__dot:after,.q-stepper--dark.q-stepper--vertical .q-stepper__dot:before{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled{color:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__dot{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__label{color:rgba(255,255,255,.54)}.q-tab-panels{background:#fff}.q-tab-panel{padding:16px}.q-markup-table{overflow:auto;background:#fff}.q-table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0}.q-table tbody td,.q-table thead tr{height:48px}.q-table th{font-weight:500;font-size:12px;-webkit-user-select:none;user-select:none}.q-table th.sortable{cursor:pointer}.q-table th.sortable:hover .q-table__sort-icon{opacity:.64}.q-table th.sorted .q-table__sort-icon{opacity:.86!important}.q-table th.sort-desc .q-table__sort-icon{transform:rotate(180deg)}.q-table td,.q-table th{padding:7px 16px;background-color:inherit}.q-table td,.q-table th,.q-table thead{border-style:solid;border-width:0}.q-table tbody td{font-size:13px}.q-table__card{color:#000;background-color:#fff;border-radius:4px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.q-table__card .q-table__middle{flex:1 1 auto}.q-table__card .q-table__bottom,.q-table__card .q-table__top{flex:0 0 auto}.q-table__container{position:relative}.q-table__container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-table__container>div:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-table__container>.q-inner-loading{border-radius:inherit!important}.q-table__top{padding:12px 16px}.q-table__top .q-table__control{flex-wrap:wrap}.q-table__title{font-size:20px;letter-spacing:.005em;font-weight:400}.q-table__separator{min-width:8px!important}.q-table__progress{height:0!important}.q-table__progress th{padding:0!important;border:0!important}.q-table__progress .q-linear-progress{position:absolute;bottom:0}.q-table__middle{max-width:100%}.q-table__bottom{min-height:50px;padding:4px 14px 4px 16px;font-size:12px}.q-table__bottom .q-table__control{min-height:24px}.q-table__bottom-nodata-icon{font-size:200%;margin-right:8px}.q-table__bottom-item{margin-right:16px}.q-table__control{display:flex;align-items:center}.q-table__sort-icon{transition:transform .3s cubic-bezier(.25, .8, .5, 1);opacity:0;font-size:120%}.q-table__sort-icon--center,.q-table__sort-icon--left{margin-left:4px}.q-table__sort-icon--right{margin-right:4px}.q-table--col-auto-width{width:1px}.q-table--dark,.q-table__card--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-table--flat{box-shadow:none}.q-table--bordered{border:1px solid rgba(0,0,0,.12)}.q-table--square{border-radius:0}.q-table__linear-progress{height:2px}.q-table--no-wrap td,.q-table--no-wrap th{white-space:nowrap}.q-table--grid{box-shadow:none;border-radius:4px}.q-table--grid .q-table__top{padding-bottom:4px}.q-table--grid .q-table__middle{min-height:2px;margin-bottom:4px}.q-table--grid .q-table__middle thead,.q-table--grid .q-table__middle thead th{border:0!important}.q-table--grid .q-table__linear-progress{bottom:0}.q-table--grid .q-table__bottom{border-top:0}.q-table--grid .q-table__grid-content{flex:1 1 auto}.q-table--grid.fullscreen{background:inherit}.q-table__grid-item-card{vertical-align:top;padding:12px}.q-table__grid-item-card .q-separator{margin:12px 0}.q-table__grid-item-row+.q-table__grid-item-row{margin-top:8px}.q-table__grid-item-title{opacity:.54;font-weight:500;font-size:12px}.q-table__grid-item-value{font-size:13px}.q-table__grid-item{padding:4px;transition:transform .3s cubic-bezier(.25, .8, .5, 1)}.q-table__grid-item--selected{transform:scale(.95)}.q-table--cell-separator tbody tr:not(:last-child)>td,.q-table--cell-separator thead th,.q-table--horizontal-separator tbody tr:not(:last-child)>td,.q-table--horizontal-separator thead th{border-bottom-width:1px}.q-table--cell-separator td,.q-table--cell-separator th,.q-table--vertical-separator td,.q-table--vertical-separator th{border-left-width:1px}.q-table--cell-separator thead tr:last-child th,.q-table--cell-separator.q-table--loading tr:nth-last-child(2) th,.q-table--vertical-separator thead tr:last-child th,.q-table--vertical-separator.q-table--loading tr:nth-last-child(2) th{border-bottom-width:1px}.q-table--cell-separator td:first-child,.q-table--cell-separator th:first-child,.q-table--vertical-separator td:first-child,.q-table--vertical-separator th:first-child{border-left:0}.q-table--cell-separator .q-table__top,.q-table--vertical-separator .q-table__top{border-bottom:1px solid rgba(0,0,0,.12)}.q-table--dense .q-table__top{padding:6px 16px}.q-table--dense .q-table__bottom{min-height:33px}.q-table--dense .q-table__sort-icon{font-size:110%}.q-table--dense .q-table td,.q-table--dense .q-table th{padding:4px 8px}.q-table--dense .q-table tbody td,.q-table--dense .q-table tbody tr,.q-table--dense .q-table thead tr{height:28px}.q-table--dense .q-table td:first-child,.q-table--dense .q-table th:first-child{padding-left:16px}.q-table--dense .q-table td:last-child,.q-table--dense .q-table th:last-child{padding-right:16px}.q-table--dense .q-table__bottom-item{margin-right:8px}.q-table--dense .q-table__select .q-field__control,.q-table--dense .q-table__select .q-field__native{min-height:24px;padding:0}.q-table--dense .q-table__select .q-field__marginal{height:24px}.q-table__bottom{border-top:1px solid rgba(0,0,0,.12)}.q-table td,.q-table th,.q-table thead,.q-table tr{border-color:rgba(0,0,0,.12)}.q-table tbody td{position:relative}.q-table tbody td:after,.q-table tbody td:before{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.q-table tbody td:before{background:rgba(0,0,0,.03)}.q-table tbody td:after{background:rgba(0,0,0,.06)}.q-table tbody tr.selected td:after{content:""}body.desktop .q-table>tbody>tr:not(.q-tr--no-hover):hover>td:not(.q-td--no-hover):before{content:""}.q-table--dark,.q-table__card--dark{border-color:rgba(255,255,255,.28)}.q-table--dark .q-table__bottom,.q-table--dark td,.q-table--dark th,.q-table--dark thead,.q-table--dark tr{border-color:rgba(255,255,255,.28)}.q-table--dark tbody td:before{background:rgba(255,255,255,.07)}.q-table--dark tbody td:after{background:rgba(255,255,255,.1)}.q-table--dark.q-table--cell-separator .q-table__top,.q-table--dark.q-table--vertical-separator .q-table__top{border-color:rgba(255,255,255,.28)}.q-tab{padding:0 16px;min-height:48px;transition:color .3s,background-color .3s;text-transform:uppercase;white-space:nowrap;color:inherit;text-decoration:none}.q-tab--full{min-height:72px}.q-tab--no-caps{text-transform:none}.q-tab__content{height:inherit;padding:4px 0;min-width:40px}.q-tab__content--inline .q-tab__icon+.q-tab__label{padding-left:8px}.q-tab__content .q-chip--floating{top:0;right:-16px}.q-tab__icon{width:24px;height:24px;font-size:24px}.q-tab__label{font-size:14px;line-height:1.715em;font-weight:500}.q-tab .q-badge{top:3px;right:-12px}.q-tab__alert,.q-tab__alert-icon{position:absolute}.q-tab__alert{top:7px;right:-9px;height:10px;width:10px;border-radius:50%;background:currentColor}.q-tab__alert-icon{top:2px;right:-12px;font-size:18px}.q-tab__indicator{opacity:0;height:2px;background:currentColor}.q-tab--active .q-tab__indicator{opacity:1;transform-origin:left}.q-tab--inactive{opacity:.85}.q-tabs{position:relative;transition:color .3s,background-color .3s}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--horizontal{padding-left:36px;padding-right:36px}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--vertical{padding-top:36px;padding-bottom:36px}.q-tabs--scrollable.q-tabs__arrows--outside .q-tabs__arrow--faded{opacity:.3;pointer-events:none}.q-tabs--scrollable.q-tabs__arrows--inside .q-tabs__arrow--faded{display:none}.q-tabs--not-scrollable.q-tabs__arrows--outside,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows.q-tabs__arrows--outside{padding-left:0;padding-right:0}.q-tabs--not-scrollable .q-tabs__arrow,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__arrow{display:none}.q-tabs--not-scrollable .q-tabs__content,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__content{border-radius:inherit}.q-tabs__arrow{cursor:pointer;font-size:32px;min-width:36px;text-shadow:0 0 3px #fff,0 0 1px #fff,0 0 1px #000;transition:opacity .3s}.q-tabs__content{overflow:hidden;flex:1 1 auto}.q-tabs__content--align-center{justify-content:center}.q-tabs__content--align-right{justify-content:flex-end}.q-tabs__content--align-justify .q-tab{flex:1 1 auto}.q-tabs__offset{display:none}.q-tabs--horizontal .q-tabs__arrow{height:100%}.q-tabs--horizontal .q-tabs__arrow--left{top:0;left:0;bottom:0}.q-tabs--horizontal .q-tabs__arrow--right{top:0;right:0;bottom:0}.q-tabs--vertical{display:block!important;height:100%}.q-tabs--vertical .q-tabs__content{display:block!important;height:100%}.q-tabs--vertical .q-tabs__arrow{width:100%;height:36px;text-align:center}.q-tabs--vertical .q-tabs__arrow--left{top:0;left:0;right:0}.q-tabs--vertical .q-tabs__arrow--right{left:0;right:0;bottom:0}.q-tabs--vertical .q-tab{padding:0 8px}.q-tabs--vertical .q-tab__indicator{height:unset;width:2px}.q-tabs--vertical.q-tabs--not-scrollable .q-tabs__content{height:100%}.q-tabs--vertical.q-tabs--dense .q-tab__content{min-width:24px}.q-tabs--dense .q-tab{min-height:36px}.q-tabs--dense .q-tab--full{min-height:52px}.q-time{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;background:#fff;outline:0;width:290px;min-width:290px;max-width:100%}.q-time--bordered{border:1px solid rgba(0,0,0,.12)}.q-time__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px;font-weight:300}.q-time__actions{padding:0 16px 16px}.q-time__header-label{font-size:28px;line-height:1;letter-spacing:-.00833em}.q-time__header-label>div+div{margin-left:4px}.q-time__link{opacity:.56;outline:0;transition:opacity .3s ease-out}.q-time__link--active,.q-time__link:focus,.q-time__link:hover{opacity:1}.q-time__header-ampm{font-size:16px;letter-spacing:.1em}.q-time__content{padding:16px}.q-time__content:before{content:"";display:block;padding-bottom:100%}.q-time__container-parent{padding:16px}.q-time__container-child{border-radius:50%;background:rgba(0,0,0,.12)}.q-time__clock{padding:24px;width:100%;height:100%;max-width:100%;max-height:100%;font-size:14px}.q-time__clock-circle{position:relative}.q-time__clock-center{height:6px;width:6px;margin:auto;border-radius:50%;min-height:0;background:currentColor}.q-time__clock-pointer{width:2px;height:50%;transform-origin:0 0;min-height:0;position:absolute;left:50%;right:0;bottom:0;color:var(--q-primary);background:currentColor;transform:translateX(-50%)}.q-time__clock-pointer:after,.q-time__clock-pointer:before{content:"";position:absolute;left:50%;border-radius:50%;background:currentColor;transform:translateX(-50%)}.q-time__clock-pointer:before{bottom:-4px;width:8px;height:8px}.q-time__clock-pointer:after{top:-3px;height:6px;width:6px}.q-time__clock-position{position:absolute;min-height:32px;width:32px;height:32px;font-size:12px;line-height:32px;margin:0;padding:0;transform:translate(-50%,-50%);border-radius:50%}.q-time__clock-position--disable{opacity:.4}.q-time__clock-position--active{background-color:var(--q-primary);color:#fff}.q-time__clock-pos-0{top:0;left:50%}.q-time__clock-pos-1{top:6.7%;left:75%}.q-time__clock-pos-2{top:25%;left:93.3%}.q-time__clock-pos-3{top:50%;left:100%}.q-time__clock-pos-4{top:75%;left:93.3%}.q-time__clock-pos-5{top:93.3%;left:75%}.q-time__clock-pos-6{top:100%;left:50%}.q-time__clock-pos-7{top:93.3%;left:25%}.q-time__clock-pos-8{top:75%;left:6.7%}.q-time__clock-pos-9{top:50%;left:0}.q-time__clock-pos-10{top:25%;left:6.7%}.q-time__clock-pos-11{top:6.7%;left:25%}.q-time__clock-pos-12{top:15%;left:50%}.q-time__clock-pos-13{top:19.69%;left:67.5%}.q-time__clock-pos-14{top:32.5%;left:80.31%}.q-time__clock-pos-15{top:50%;left:85%}.q-time__clock-pos-16{top:67.5%;left:80.31%}.q-time__clock-pos-17{top:80.31%;left:67.5%}.q-time__clock-pos-18{top:85%;left:50%}.q-time__clock-pos-19{top:80.31%;left:32.5%}.q-time__clock-pos-20{top:67.5%;left:19.69%}.q-time__clock-pos-21{top:50%;left:15%}.q-time__clock-pos-22{top:32.5%;left:19.69%}.q-time__clock-pos-23{top:19.69%;left:32.5%}.q-time__now-button{background-color:var(--q-primary);color:#fff;top:12px;right:12px}.q-time--readonly .q-time__content,.q-time--readonly .q-time__header-ampm,.q-time.disabled .q-time__content,.q-time.disabled .q-time__header-ampm{pointer-events:none}.q-time--portrait{display:inline-flex;flex-direction:column}.q-time--portrait .q-time__header{border-top-right-radius:inherit;min-height:86px}.q-time--portrait .q-time__header-ampm{margin-left:12px}.q-time--portrait.q-time--bordered .q-time__content{margin:1px 0}.q-time--landscape{display:inline-flex;align-items:stretch;min-width:420px}.q-time--landscape>div{display:flex;flex-direction:column;justify-content:center}.q-time--landscape .q-time__header{border-bottom-left-radius:inherit;min-width:156px}.q-time--landscape .q-time__header-ampm{margin-top:12px}.q-time--dark{border-color:rgba(255,255,255,.28);box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-timeline{padding:0;width:100%;list-style:none}.q-timeline h6{line-height:inherit}.q-timeline--dark{color:#fff}.q-timeline--dark .q-timeline__subtitle{opacity:.7}.q-timeline__content{padding-bottom:24px}.q-timeline__title{margin-top:0;margin-bottom:16px}.q-timeline__subtitle{font-size:12px;margin-bottom:8px;opacity:.6;text-transform:uppercase;letter-spacing:1px;font-weight:700}.q-timeline__dot{position:absolute;top:0;bottom:0;width:15px}.q-timeline__dot:after,.q-timeline__dot:before{content:"";background:currentColor;display:block;position:absolute}.q-timeline__dot:before{border:3px solid transparent;border-radius:100%;height:15px;width:15px;top:4px;left:0;transition:background .3s ease-in-out,border .3s ease-in-out}.q-timeline__dot:after{width:3px;opacity:.4;top:24px;bottom:0;left:6px}.q-timeline__dot .q-icon{position:absolute;top:0;left:0;right:0;font-size:16px;height:38px;line-height:38px;width:100%;color:#fff}.q-timeline__dot .q-icon>img,.q-timeline__dot .q-icon>svg{width:1em;height:1em}.q-timeline__dot-img{position:absolute;top:4px;left:0;right:0;height:31px;width:31px;background:currentColor;border-radius:50%}.q-timeline__heading{position:relative}.q-timeline__heading:first-child .q-timeline__heading-title{padding-top:0}.q-timeline__heading:last-child .q-timeline__heading-title{padding-bottom:0}.q-timeline__heading-title{padding:32px 0;margin:0}.q-timeline__entry{position:relative;line-height:22px}.q-timeline__entry:last-child{padding-bottom:0!important}.q-timeline__entry:last-child .q-timeline__dot:after{content:none}.q-timeline__entry--icon .q-timeline__dot{width:31px}.q-timeline__entry--icon .q-timeline__dot:before{height:31px;width:31px}.q-timeline__entry--icon .q-timeline__dot:after{top:41px;left:14px}.q-timeline__entry--icon .q-timeline__subtitle{padding-top:8px}.q-timeline--dense--right .q-timeline__entry{padding-left:40px}.q-timeline--dense--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--dense--right .q-timeline__dot{left:0}.q-timeline--dense--left .q-timeline__heading{text-align:right}.q-timeline--dense--left .q-timeline__entry{padding-right:40px}.q-timeline--dense--left .q-timeline__entry--icon .q-timeline__dot{right:-8px}.q-timeline--dense--left .q-timeline__content,.q-timeline--dense--left .q-timeline__subtitle,.q-timeline--dense--left .q-timeline__title{text-align:right}.q-timeline--dense--left .q-timeline__dot{right:0}.q-timeline--comfortable{display:table}.q-timeline--comfortable .q-timeline__heading{display:table-row;font-size:200%}.q-timeline--comfortable .q-timeline__heading>div{display:table-cell}.q-timeline--comfortable .q-timeline__entry{display:table-row;padding:0}.q-timeline--comfortable .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--comfortable .q-timeline__content,.q-timeline--comfortable .q-timeline__dot,.q-timeline--comfortable .q-timeline__subtitle{display:table-cell;vertical-align:top}.q-timeline--comfortable .q-timeline__subtitle{width:35%}.q-timeline--comfortable .q-timeline__dot{position:relative;min-width:31px}.q-timeline--comfortable--right .q-timeline__heading .q-timeline__heading-title{margin-left:-50px}.q-timeline--comfortable--right .q-timeline__subtitle{text-align:right;padding-right:30px}.q-timeline--comfortable--right .q-timeline__content{padding-left:30px}.q-timeline--comfortable--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--comfortable--left .q-timeline__heading{text-align:right}.q-timeline--comfortable--left .q-timeline__heading .q-timeline__heading-title{margin-right:-50px}.q-timeline--comfortable--left .q-timeline__subtitle{padding-left:30px}.q-timeline--comfortable--left .q-timeline__content{padding-right:30px}.q-timeline--comfortable--left .q-timeline__content,.q-timeline--comfortable--left .q-timeline__title{text-align:right}.q-timeline--comfortable--left .q-timeline__entry--icon .q-timeline__dot{right:0}.q-timeline--comfortable--left .q-timeline__dot{right:-8px}.q-timeline--loose .q-timeline__heading-title{text-align:center;margin-left:0}.q-timeline--loose .q-timeline__content,.q-timeline--loose .q-timeline__dot,.q-timeline--loose .q-timeline__entry,.q-timeline--loose .q-timeline__subtitle{display:block;margin:0;padding:0}.q-timeline--loose .q-timeline__dot{position:absolute;left:50%;margin-left:-7.15px}.q-timeline--loose .q-timeline__entry{padding-bottom:24px;overflow:hidden}.q-timeline--loose .q-timeline__entry--icon .q-timeline__dot{margin-left:-15px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__subtitle{line-height:38px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--loose .q-timeline__entry--left .q-timeline__content,.q-timeline--loose .q-timeline__entry--right .q-timeline__subtitle{float:left;padding-right:30px;text-align:right}.q-timeline--loose .q-timeline__entry--left .q-timeline__subtitle,.q-timeline--loose .q-timeline__entry--right .q-timeline__content{float:right;text-align:left;padding-left:30px}.q-timeline--loose .q-timeline__content,.q-timeline--loose .q-timeline__subtitle{width:50%}.q-toggle{vertical-align:middle}.q-toggle__native{width:1px;height:1px}.q-toggle__track{height:.35em;border-radius:.175em;opacity:.38;background:currentColor}.q-toggle__thumb{top:.25em;left:.25em;width:.5em;height:.5em;transition:left .22s cubic-bezier(.4, 0, .2, 1);-webkit-user-select:none;user-select:none;z-index:0}.q-toggle__thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#fff;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.q-toggle__thumb .q-icon{font-size:.3em;min-width:1em;color:#000;opacity:.54;z-index:1}.q-toggle__inner{font-size:40px;width:1.4em;min-width:1.4em;height:1em;padding:.325em .3em;-webkit-print-color-adjust:exact}.q-toggle__inner--indet .q-toggle__thumb{left:.45em}.q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle__inner--truthy .q-toggle__track{opacity:.54}.q-toggle__inner--truthy .q-toggle__thumb{left:.65em}.q-toggle__inner--truthy .q-toggle__thumb:after{background-color:currentColor}.q-toggle__inner--truthy .q-toggle__thumb .q-icon{color:#fff;opacity:1}.q-toggle.disabled{opacity:.75!important}.q-toggle--dark .q-toggle__inner{color:#fff}.q-toggle--dark .q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle--dark .q-toggle__thumb:after{box-shadow:none}.q-toggle--dark .q-toggle__thumb:before{opacity:.32!important}.q-toggle--dense .q-toggle__inner{width:.8em;min-width:.8em;height:.5em;padding:.07625em 0}.q-toggle--dense .q-toggle__thumb{top:0;left:0}.q-toggle--dense .q-toggle__inner--indet .q-toggle__thumb{left:.15em}.q-toggle--dense .q-toggle__inner--truthy .q-toggle__thumb{left:.3em}.q-toggle--dense .q-toggle__label{padding-left:.5em}.q-toggle--dense.reverse .q-toggle__label{padding-left:0;padding-right:.5em}body.desktop .q-toggle:not(.disabled) .q-toggle__thumb:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0, 0, .2, 1)}body.desktop .q-toggle:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(2,2,1)}body.desktop .q-toggle--dense:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle--dense:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(1.5,1.5,1)}.q-toolbar{position:relative;padding:0 12px;min-height:50px;width:100%}.q-toolbar--inset{padding-left:58px}.q-toolbar .q-avatar{font-size:38px}.q-toolbar__title{flex:1 1 0%;min-width:1px;max-width:100%;font-size:21px;font-weight:400;letter-spacing:.01em;padding:0 12px}.q-toolbar__title:first-child{padding-left:0}.q-toolbar__title:last-child{padding-right:0}.q-tooltip--style{font-size:10px;color:#fafafa;background:#757575;border-radius:4px;text-transform:none;font-weight:400}.q-tooltip{z-index:9000;position:fixed!important;overflow-y:auto;overflow-x:hidden;padding:6px 10px;max-width:95vw;max-height:65vh}@media (max-width:599.98px){.q-tooltip{font-size:14px;padding:8px 16px}}.q-tree{position:relative;color:#9e9e9e}.q-tree__node{padding:0 0 3px 22px}.q-tree__node:after{content:"";position:absolute;top:-3px;bottom:0;width:2px;right:auto;left:-13px;border-left:1px solid currentColor}.q-tree__node:last-child:after{display:none}.q-tree__node--disabled{pointer-events:none}.q-tree__node--disabled .disabled{opacity:1!important}.q-tree__node--disabled>.disabled,.q-tree__node--disabled>div,.q-tree__node--disabled>i{opacity:.6!important}.q-tree__node--disabled>.disabled .q-tree__node--disabled>.disabled,.q-tree__node--disabled>.disabled .q-tree__node--disabled>div,.q-tree__node--disabled>.disabled .q-tree__node--disabled>i,.q-tree__node--disabled>div .q-tree__node--disabled>.disabled,.q-tree__node--disabled>div .q-tree__node--disabled>div,.q-tree__node--disabled>div .q-tree__node--disabled>i,.q-tree__node--disabled>i .q-tree__node--disabled>.disabled,.q-tree__node--disabled>i .q-tree__node--disabled>div,.q-tree__node--disabled>i .q-tree__node--disabled>i{opacity:1!important}.q-tree__node-header:before{content:"";position:absolute;top:-3px;bottom:50%;width:31px;left:-35px;border-left:1px solid currentColor;border-bottom:1px solid currentColor}.q-tree__children{padding-left:25px}.q-tree__node-body{padding:5px 0 8px 5px}.q-tree__node--parent{padding-left:2px}.q-tree__node--parent>.q-tree__node-header:before{width:15px;left:-15px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:5px 0 8px 27px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{content:"";position:absolute;top:0;width:2px;height:100%;right:auto;left:12px;border-left:1px solid currentColor;bottom:50px}.q-tree__node--link{cursor:pointer}.q-tree__node-header{padding:4px;margin-top:3px;border-radius:4px;outline:0}.q-tree__node-header-content{color:#000;transition:color .3s}.q-tree__node--selected .q-tree__node-header-content{color:#9e9e9e}.q-tree__icon,.q-tree__node-header-content .q-icon{font-size:21px}.q-tree__img{height:42px;border-radius:2px}.q-tree__avatar,.q-tree__node-header-content .q-avatar{font-size:28px;border-radius:50%;width:28px;height:28px}.q-tree__arrow,.q-tree__spinner{font-size:16px;margin-right:4px}.q-tree__arrow{transition:transform .3s}.q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-tree__tickbox{margin-right:4px}.q-tree>.q-tree__node{padding:0}.q-tree>.q-tree__node:after,.q-tree>.q-tree__node>.q-tree__node-header:before{display:none}.q-tree>.q-tree__node--child>.q-tree__node-header{padding-left:24px}.q-tree--dark .q-tree__node-header-content{color:#fff}.q-tree--no-connectors .q-tree__node-body:after,.q-tree--no-connectors .q-tree__node-header:before,.q-tree--no-connectors .q-tree__node:after{display:none!important}.q-tree--dense>.q-tree__node--child>.q-tree__node-header{padding-left:1px}.q-tree--dense .q-tree__arrow,.q-tree--dense .q-tree__spinner{margin-right:1px}.q-tree--dense .q-tree__img{height:32px}.q-tree--dense .q-tree__tickbox{margin-right:3px}.q-tree--dense .q-tree__node{padding:0}.q-tree--dense .q-tree__node:after{top:0;left:-8px}.q-tree--dense .q-tree__node-header{margin-top:0;padding:1px}.q-tree--dense .q-tree__node-header:before{top:0;left:-8px;width:8px}.q-tree--dense .q-tree__node--child{padding-left:17px}.q-tree--dense .q-tree__node--child>.q-tree__node-header:before{left:-25px;width:21px}.q-tree--dense .q-tree__node-body{padding:0 0 2px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:0 0 2px 20px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{left:8px}.q-tree--dense .q-tree__children{padding-left:16px}[dir=rtl] .q-tree__arrow{transform:rotate3d(0,0,1,180deg)}[dir=rtl] .q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-uploader{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;vertical-align:top;background:#fff;position:relative;width:320px;max-height:320px}.q-uploader--bordered{border:1px solid rgba(0,0,0,.12)}.q-uploader__input{opacity:0;width:100%;height:100%;cursor:pointer!important;z-index:1}.q-uploader__input::-webkit-file-upload-button{cursor:pointer}.q-uploader__file:before{content:"";border-top-left-radius:inherit;border-top-right-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:currentColor;opacity:.04}.q-uploader__header{position:relative;border-top-left-radius:inherit;border-top-right-radius:inherit;background-color:var(--q-primary);color:#fff;width:100%}.q-uploader__spinner{font-size:24px;margin-right:4px}.q-uploader__header-content{padding:8px}.q-uploader__dnd{outline:1px dashed currentColor;outline-offset:-4px;background:rgba(255,255,255,.6)}.q-uploader__overlay{font-size:36px;color:#000;background-color:rgba(255,255,255,.6)}.q-uploader__list{position:relative;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;padding:8px;min-height:60px;flex:1 1 auto}.q-uploader__file{border-radius:4px 4px 0 0;border:1px solid rgba(0,0,0,.12)}.q-uploader__file .q-circular-progress{font-size:24px}.q-uploader__file--img{color:#fff;height:200px;min-width:200px;background-position:50% 50%;background-repeat:no-repeat}.q-uploader__file--img:before{content:none}.q-uploader__file--img .q-circular-progress{color:#fff}.q-uploader__file--img .q-uploader__file-header{padding-bottom:24px;background:linear-gradient(to bottom,rgba(0,0,0,.7) 20%,rgba(255,255,255,0))}.q-uploader__file+.q-uploader__file{margin-top:8px}.q-uploader__file-header{position:relative;padding:4px 8px;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-uploader__file-header-content{padding-right:8px}.q-uploader__file-status{font-size:24px;margin-right:4px}.q-uploader__title{font-size:14px;font-weight:700;line-height:1.285714;word-break:break-word}.q-uploader__subtitle{font-size:12px;line-height:1.5}.q-uploader--disable .q-uploader__header,.q-uploader--disable .q-uploader__list{pointer-events:none}.q-uploader--dark{border-color:rgba(255,255,255,.28);box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-uploader--dark .q-uploader__file{border-color:rgba(255,255,255,.28)}.q-uploader--dark .q-uploader__dnd,.q-uploader--dark .q-uploader__overlay{background:rgba(255,255,255,.3)}.q-uploader--dark .q-uploader__overlay{color:#fff}img.responsive{max-width:100%;height:auto}.q-video{position:relative;overflow:hidden;border-radius:inherit}.q-video embed,.q-video iframe,.q-video object{width:100%;height:100%}.q-video--responsive{height:0}.q-video--responsive embed,.q-video--responsive iframe,.q-video--responsive object{position:absolute;top:0;left:0}.q-virtual-scroll:focus{outline:0}.q-virtual-scroll__content{outline:0;contain:content}.q-virtual-scroll__content>*{overflow-anchor:none}.q-virtual-scroll__content>[data-q-vs-anchor]{overflow-anchor:auto}.q-virtual-scroll__padding{background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width,100%) var(--q-virtual-scroll-item-height,50px)}.q-table .q-virtual-scroll__padding tr{height:0!important}.q-table .q-virtual-scroll__padding td{padding:0!important}.q-virtual-scroll--horizontal{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch}.q-virtual-scroll--horizontal .q-virtual-scroll__content{display:flex;flex-direction:row;flex-wrap:nowrap}.q-virtual-scroll--horizontal .q-virtual-scroll__content,.q-virtual-scroll--horizontal .q-virtual-scroll__content>*,.q-virtual-scroll--horizontal .q-virtual-scroll__padding{flex:0 0 auto}.q-virtual-scroll--horizontal .q-virtual-scroll__padding{background:linear-gradient(to left,rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width,50px) var(--q-virtual-scroll-item-height,100%)}.q-ripple{position:absolute;top:0;left:0;width:100%;height:100%;color:inherit;border-radius:inherit;z-index:0;pointer-events:none;overflow:hidden;contain:strict}.q-ripple__inner{position:absolute;top:0;left:0;opacity:0;color:inherit;border-radius:50%;background:currentColor;pointer-events:none;will-change:transform,opacity}.q-ripple__inner--enter{transition:transform 225ms cubic-bezier(.4, 0, .2, 1),opacity .1s cubic-bezier(.4, 0, .2, 1)}.q-ripple__inner--leave{transition:opacity .25s cubic-bezier(.4, 0, .2, 1)}.q-morph--internal,.q-morph--invisible{opacity:0!important;pointer-events:none!important;position:fixed!important;right:200vw!important;bottom:200vh!important}.q-bottom-sheet{padding-bottom:8px}.q-bottom-sheet__avatar{border-radius:50%}.q-bottom-sheet--list{width:400px}.q-bottom-sheet--list .q-icon,.q-bottom-sheet--list img{font-size:24px;width:24px;height:24px}.q-bottom-sheet--grid{width:700px}.q-bottom-sheet--grid .q-bottom-sheet__item{padding:8px;text-align:center;min-width:100px}.q-bottom-sheet--grid .q-bottom-sheet__empty-icon,.q-bottom-sheet--grid .q-icon,.q-bottom-sheet--grid img{font-size:48px;width:48px;height:48px;margin-bottom:8px}.q-bottom-sheet--grid .q-separator{margin:12px 0}.q-bottom-sheet__item{flex:0 0 33.3333%}@media (min-width:600px){.q-bottom-sheet__item{flex:0 0 25%}}.q-dialog-plugin{width:400px}.q-dialog-plugin__form{max-height:50vh}.q-dialog-plugin .q-card__section+.q-card__section{padding-top:0}.q-dialog-plugin--progress{text-align:center}.q-loading{color:#000;position:fixed!important}.q-loading__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;opacity:.5;z-index:-1;background-color:#000;transition:background-color .28s}.q-loading__box{border-radius:4px;padding:18px;color:#fff;max-width:450px}.q-loading__message{margin:40px 20px 0;text-align:center}.q-notifications__list{z-index:9500;pointer-events:none;left:0;right:0;margin-bottom:10px;position:relative}.q-notifications__list--center{top:0;bottom:0}.q-notifications__list--top{top:0}.q-notifications__list--bottom{bottom:0}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--top{top:20px;top:env(safe-area-inset-top)}body.q-ios-padding .q-notifications__list--bottom,body.q-ios-padding .q-notifications__list--center{bottom:env(safe-area-inset-bottom)}.q-notification{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;pointer-events:all;display:inline-flex;margin:10px 10px 0;transition:transform 1s,opacity 1s;z-index:9500;flex-shrink:0;max-width:95vw;background:#323232;color:#fff;font-size:14px}.q-notification__icon{font-size:24px;flex:0 0 1em}.q-notification__icon--additional{margin-right:16px}.q-notification__avatar{font-size:32px}.q-notification__avatar--additional{margin-right:8px}.q-notification__spinner{font-size:32px}.q-notification__spinner--additional{margin-right:8px}.q-notification__message{padding:8px 0}.q-notification__caption{font-size:.9em;opacity:.7}.q-notification__actions{color:var(--q-primary)}.q-notification__badge{animation:q-notif-badge .42s;padding:4px 8px;position:absolute;box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);background-color:var(--q-negative);color:#fff;border-radius:4px;font-size:12px;line-height:12px}.q-notification__badge--top-left,.q-notification__badge--top-right{top:-6px}.q-notification__badge--bottom-left,.q-notification__badge--bottom-right{bottom:-6px}.q-notification__badge--bottom-left,.q-notification__badge--top-left{left:-22px}.q-notification__badge--bottom-right,.q-notification__badge--top-right{right:-22px}.q-notification__progress{z-index:-1;position:absolute;height:3px;bottom:0;left:-10px;right:-10px;animation:q-notif-progress linear;background:currentColor;opacity:.3;border-radius:4px 4px 0 0;transform-origin:0 50%;transform:scaleX(0)}.q-notification--standard{padding:0 16px;min-height:48px}.q-notification--standard .q-notification__actions{padding:6px 0 6px 8px;margin-right:-8px}.q-notification--multi-line{min-height:68px;padding:8px 16px}.q-notification--multi-line .q-notification__badge--top-left,.q-notification--multi-line .q-notification__badge--top-right{top:-15px}.q-notification--multi-line .q-notification__badge--bottom-left,.q-notification--multi-line .q-notification__badge--bottom-right{bottom:-15px}.q-notification--multi-line .q-notification__progress{bottom:-8px}.q-notification--multi-line .q-notification__actions{padding:0}.q-notification--multi-line .q-notification__actions--with-media{padding-left:25px}.q-notification--top-enter-from,.q-notification--top-leave-to,.q-notification--top-left-enter-from,.q-notification--top-left-leave-to,.q-notification--top-right-enter-from,.q-notification--top-right-leave-to{opacity:0;transform:translateY(-50px);z-index:9499}.q-notification--center-enter-from,.q-notification--center-leave-to,.q-notification--left-enter-from,.q-notification--left-leave-to,.q-notification--right-enter-from,.q-notification--right-leave-to{opacity:0;transform:rotateX(90deg);z-index:9499}.q-notification--bottom-enter-from,.q-notification--bottom-leave-to,.q-notification--bottom-left-enter-from,.q-notification--bottom-left-leave-to,.q-notification--bottom-right-enter-from,.q-notification--bottom-right-leave-to{opacity:0;transform:translateY(50px);z-index:9499}.q-notification--bottom-leave-active,.q-notification--bottom-left-leave-active,.q-notification--bottom-right-leave-active,.q-notification--center-leave-active,.q-notification--left-leave-active,.q-notification--right-leave-active,.q-notification--top-leave-active,.q-notification--top-left-leave-active,.q-notification--top-right-leave-active{position:absolute;z-index:9499;margin-left:0;margin-right:0}.q-notification--center-leave-active,.q-notification--top-leave-active{top:0}.q-notification--bottom-leave-active,.q-notification--bottom-left-leave-active,.q-notification--bottom-right-leave-active{bottom:0}@media (min-width:600px){.q-notification{max-width:65vw}}@keyframes q-notif-badge{15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}}@keyframes q-notif-progress{0%{transform:scaleX(1)}100%{transform:scaleX(0)}}:root{--animate-duration:0.3s;--animate-delay:0.3s;--animate-repeat:1}.animated{animation-duration:var(--animate-duration);animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.repeat-1{animation-iteration-count:var(--animate-repeat)}.animated.repeat-2{animation-iteration-count:calc(var(--animate-repeat) * 2)}.animated.repeat-3{animation-iteration-count:calc(var(--animate-repeat) * 3)}.animated.delay-1s{animation-delay:var(--animate-delay)}.animated.delay-2s{animation-delay:calc(var(--animate-delay) * 2)}.animated.delay-3s{animation-delay:calc(var(--animate-delay) * 3)}.animated.delay-4s{animation-delay:calc(var(--animate-delay) * 4)}.animated.delay-5s{animation-delay:calc(var(--animate-delay) * 5)}.animated.faster{animation-duration:calc(var(--animate-duration) / 2)}.animated.fast{animation-duration:calc(var(--animate-duration) * .8)}.animated.slow{animation-duration:calc(var(--animate-duration) * 2)}.animated.slower{animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion:reduce){.animated{animation-duration:1ms!important;transition-duration:1ms!important;animation-iteration-count:1!important}.animated[class*=Out]{opacity:0}}.q-animate--scale{animation:q-scale .15s;animation-timing-function:cubic-bezier(0.25,0.8,0.25,1)}@keyframes q-scale{0%{transform:scale(1)}50%{transform:scale(1.04)}100%{transform:scale(1)}}.q-animate--fade{animation:q-fade .2s}@keyframes q-fade{0%{opacity:0}100%{opacity:1}}:root{--q-primary:#1976D2;--q-secondary:#26A69A;--q-accent:#9C27B0;--q-positive:#21BA45;--q-negative:#C10015;--q-info:#31CCEC;--q-warning:#F2C037;--q-dark:#1d1d1d;--q-dark-page:#121212}.text-dark{color:var(--q-dark)!important}.bg-dark{background:var(--q-dark)!important}.text-primary{color:var(--q-primary)!important}.bg-primary{background:var(--q-primary)!important}.text-secondary{color:var(--q-secondary)!important}.bg-secondary{background:var(--q-secondary)!important}.text-accent{color:var(--q-accent)!important}.bg-accent{background:var(--q-accent)!important}.text-positive{color:var(--q-positive)!important}.bg-positive{background:var(--q-positive)!important}.text-negative{color:var(--q-negative)!important}.bg-negative{background:var(--q-negative)!important}.text-info{color:var(--q-info)!important}.bg-info{background:var(--q-info)!important}.text-warning{color:var(--q-warning)!important}.bg-warning{background:var(--q-warning)!important}.text-white{color:#fff!important}.bg-white{background:#fff!important}.text-black{color:#000!important}.bg-black{background:#000!important}.text-transparent{color:transparent!important}.bg-transparent{background:0 0!important}.text-separator{color:rgba(0,0,0,.12)!important}.bg-separator{background:rgba(0,0,0,.12)!important}.text-dark-separator{color:rgba(255,255,255,.28)!important}.bg-dark-separator{background:rgba(255,255,255,.28)!important}.text-red{color:#f44336!important}.text-red-1{color:#ffebee!important}.text-red-2{color:#ffcdd2!important}.text-red-3{color:#ef9a9a!important}.text-red-4{color:#e57373!important}.text-red-5{color:#ef5350!important}.text-red-6{color:#f44336!important}.text-red-7{color:#e53935!important}.text-red-8{color:#d32f2f!important}.text-red-9{color:#c62828!important}.text-red-10{color:#b71c1c!important}.text-red-11{color:#ff8a80!important}.text-red-12{color:#ff5252!important}.text-red-13{color:#ff1744!important}.text-red-14{color:#d50000!important}.text-pink{color:#e91e63!important}.text-pink-1{color:#fce4ec!important}.text-pink-2{color:#f8bbd0!important}.text-pink-3{color:#f48fb1!important}.text-pink-4{color:#f06292!important}.text-pink-5{color:#ec407a!important}.text-pink-6{color:#e91e63!important}.text-pink-7{color:#d81b60!important}.text-pink-8{color:#c2185b!important}.text-pink-9{color:#ad1457!important}.text-pink-10{color:#880e4f!important}.text-pink-11{color:#ff80ab!important}.text-pink-12{color:#ff4081!important}.text-pink-13{color:#f50057!important}.text-pink-14{color:#c51162!important}.text-purple{color:#9c27b0!important}.text-purple-1{color:#f3e5f5!important}.text-purple-2{color:#e1bee7!important}.text-purple-3{color:#ce93d8!important}.text-purple-4{color:#ba68c8!important}.text-purple-5{color:#ab47bc!important}.text-purple-6{color:#9c27b0!important}.text-purple-7{color:#8e24aa!important}.text-purple-8{color:#7b1fa2!important}.text-purple-9{color:#6a1b9a!important}.text-purple-10{color:#4a148c!important}.text-purple-11{color:#ea80fc!important}.text-purple-12{color:#e040fb!important}.text-purple-13{color:#d500f9!important}.text-purple-14{color:#a0f!important}.text-deep-purple{color:#673ab7!important}.text-deep-purple-1{color:#ede7f6!important}.text-deep-purple-2{color:#d1c4e9!important}.text-deep-purple-3{color:#b39ddb!important}.text-deep-purple-4{color:#9575cd!important}.text-deep-purple-5{color:#7e57c2!important}.text-deep-purple-6{color:#673ab7!important}.text-deep-purple-7{color:#5e35b1!important}.text-deep-purple-8{color:#512da8!important}.text-deep-purple-9{color:#4527a0!important}.text-deep-purple-10{color:#311b92!important}.text-deep-purple-11{color:#b388ff!important}.text-deep-purple-12{color:#7c4dff!important}.text-deep-purple-13{color:#651fff!important}.text-deep-purple-14{color:#6200ea!important}.text-indigo{color:#3f51b5!important}.text-indigo-1{color:#e8eaf6!important}.text-indigo-2{color:#c5cae9!important}.text-indigo-3{color:#9fa8da!important}.text-indigo-4{color:#7986cb!important}.text-indigo-5{color:#5c6bc0!important}.text-indigo-6{color:#3f51b5!important}.text-indigo-7{color:#3949ab!important}.text-indigo-8{color:#303f9f!important}.text-indigo-9{color:#283593!important}.text-indigo-10{color:#1a237e!important}.text-indigo-11{color:#8c9eff!important}.text-indigo-12{color:#536dfe!important}.text-indigo-13{color:#3d5afe!important}.text-indigo-14{color:#304ffe!important}.text-blue{color:#2196f3!important}.text-blue-1{color:#e3f2fd!important}.text-blue-2{color:#bbdefb!important}.text-blue-3{color:#90caf9!important}.text-blue-4{color:#64b5f6!important}.text-blue-5{color:#42a5f5!important}.text-blue-6{color:#2196f3!important}.text-blue-7{color:#1e88e5!important}.text-blue-8{color:#1976d2!important}.text-blue-9{color:#1565c0!important}.text-blue-10{color:#0d47a1!important}.text-blue-11{color:#82b1ff!important}.text-blue-12{color:#448aff!important}.text-blue-13{color:#2979ff!important}.text-blue-14{color:#2962ff!important}.text-light-blue{color:#03a9f4!important}.text-light-blue-1{color:#e1f5fe!important}.text-light-blue-2{color:#b3e5fc!important}.text-light-blue-3{color:#81d4fa!important}.text-light-blue-4{color:#4fc3f7!important}.text-light-blue-5{color:#29b6f6!important}.text-light-blue-6{color:#03a9f4!important}.text-light-blue-7{color:#039be5!important}.text-light-blue-8{color:#0288d1!important}.text-light-blue-9{color:#0277bd!important}.text-light-blue-10{color:#01579b!important}.text-light-blue-11{color:#80d8ff!important}.text-light-blue-12{color:#40c4ff!important}.text-light-blue-13{color:#00b0ff!important}.text-light-blue-14{color:#0091ea!important}.text-cyan{color:#00bcd4!important}.text-cyan-1{color:#e0f7fa!important}.text-cyan-2{color:#b2ebf2!important}.text-cyan-3{color:#80deea!important}.text-cyan-4{color:#4dd0e1!important}.text-cyan-5{color:#26c6da!important}.text-cyan-6{color:#00bcd4!important}.text-cyan-7{color:#00acc1!important}.text-cyan-8{color:#0097a7!important}.text-cyan-9{color:#00838f!important}.text-cyan-10{color:#006064!important}.text-cyan-11{color:#84ffff!important}.text-cyan-12{color:#18ffff!important}.text-cyan-13{color:#00e5ff!important}.text-cyan-14{color:#00b8d4!important}.text-teal{color:#009688!important}.text-teal-1{color:#e0f2f1!important}.text-teal-2{color:#b2dfdb!important}.text-teal-3{color:#80cbc4!important}.text-teal-4{color:#4db6ac!important}.text-teal-5{color:#26a69a!important}.text-teal-6{color:#009688!important}.text-teal-7{color:#00897b!important}.text-teal-8{color:#00796b!important}.text-teal-9{color:#00695c!important}.text-teal-10{color:#004d40!important}.text-teal-11{color:#a7ffeb!important}.text-teal-12{color:#64ffda!important}.text-teal-13{color:#1de9b6!important}.text-teal-14{color:#00bfa5!important}.text-green{color:#4caf50!important}.text-green-1{color:#e8f5e9!important}.text-green-2{color:#c8e6c9!important}.text-green-3{color:#a5d6a7!important}.text-green-4{color:#81c784!important}.text-green-5{color:#66bb6a!important}.text-green-6{color:#4caf50!important}.text-green-7{color:#43a047!important}.text-green-8{color:#388e3c!important}.text-green-9{color:#2e7d32!important}.text-green-10{color:#1b5e20!important}.text-green-11{color:#b9f6ca!important}.text-green-12{color:#69f0ae!important}.text-green-13{color:#00e676!important}.text-green-14{color:#00c853!important}.text-light-green{color:#8bc34a!important}.text-light-green-1{color:#f1f8e9!important}.text-light-green-2{color:#dcedc8!important}.text-light-green-3{color:#c5e1a5!important}.text-light-green-4{color:#aed581!important}.text-light-green-5{color:#9ccc65!important}.text-light-green-6{color:#8bc34a!important}.text-light-green-7{color:#7cb342!important}.text-light-green-8{color:#689f38!important}.text-light-green-9{color:#558b2f!important}.text-light-green-10{color:#33691e!important}.text-light-green-11{color:#ccff90!important}.text-light-green-12{color:#b2ff59!important}.text-light-green-13{color:#76ff03!important}.text-light-green-14{color:#64dd17!important}.text-lime{color:#cddc39!important}.text-lime-1{color:#f9fbe7!important}.text-lime-2{color:#f0f4c3!important}.text-lime-3{color:#e6ee9c!important}.text-lime-4{color:#dce775!important}.text-lime-5{color:#d4e157!important}.text-lime-6{color:#cddc39!important}.text-lime-7{color:#c0ca33!important}.text-lime-8{color:#afb42b!important}.text-lime-9{color:#9e9d24!important}.text-lime-10{color:#827717!important}.text-lime-11{color:#f4ff81!important}.text-lime-12{color:#eeff41!important}.text-lime-13{color:#c6ff00!important}.text-lime-14{color:#aeea00!important}.text-yellow{color:#ffeb3b!important}.text-yellow-1{color:#fffde7!important}.text-yellow-2{color:#fff9c4!important}.text-yellow-3{color:#fff59d!important}.text-yellow-4{color:#fff176!important}.text-yellow-5{color:#ffee58!important}.text-yellow-6{color:#ffeb3b!important}.text-yellow-7{color:#fdd835!important}.text-yellow-8{color:#fbc02d!important}.text-yellow-9{color:#f9a825!important}.text-yellow-10{color:#f57f17!important}.text-yellow-11{color:#ffff8d!important}.text-yellow-12{color:#ff0!important}.text-yellow-13{color:#ffea00!important}.text-yellow-14{color:#ffd600!important}.text-amber{color:#ffc107!important}.text-amber-1{color:#fff8e1!important}.text-amber-2{color:#ffecb3!important}.text-amber-3{color:#ffe082!important}.text-amber-4{color:#ffd54f!important}.text-amber-5{color:#ffca28!important}.text-amber-6{color:#ffc107!important}.text-amber-7{color:#ffb300!important}.text-amber-8{color:#ffa000!important}.text-amber-9{color:#ff8f00!important}.text-amber-10{color:#ff6f00!important}.text-amber-11{color:#ffe57f!important}.text-amber-12{color:#ffd740!important}.text-amber-13{color:#ffc400!important}.text-amber-14{color:#ffab00!important}.text-orange{color:#ff9800!important}.text-orange-1{color:#fff3e0!important}.text-orange-2{color:#ffe0b2!important}.text-orange-3{color:#ffcc80!important}.text-orange-4{color:#ffb74d!important}.text-orange-5{color:#ffa726!important}.text-orange-6{color:#ff9800!important}.text-orange-7{color:#fb8c00!important}.text-orange-8{color:#f57c00!important}.text-orange-9{color:#ef6c00!important}.text-orange-10{color:#e65100!important}.text-orange-11{color:#ffd180!important}.text-orange-12{color:#ffab40!important}.text-orange-13{color:#ff9100!important}.text-orange-14{color:#ff6d00!important}.text-deep-orange{color:#ff5722!important}.text-deep-orange-1{color:#fbe9e7!important}.text-deep-orange-2{color:#ffccbc!important}.text-deep-orange-3{color:#ffab91!important}.text-deep-orange-4{color:#ff8a65!important}.text-deep-orange-5{color:#ff7043!important}.text-deep-orange-6{color:#ff5722!important}.text-deep-orange-7{color:#f4511e!important}.text-deep-orange-8{color:#e64a19!important}.text-deep-orange-9{color:#d84315!important}.text-deep-orange-10{color:#bf360c!important}.text-deep-orange-11{color:#ff9e80!important}.text-deep-orange-12{color:#ff6e40!important}.text-deep-orange-13{color:#ff3d00!important}.text-deep-orange-14{color:#dd2c00!important}.text-brown{color:#795548!important}.text-brown-1{color:#efebe9!important}.text-brown-2{color:#d7ccc8!important}.text-brown-3{color:#bcaaa4!important}.text-brown-4{color:#a1887f!important}.text-brown-5{color:#8d6e63!important}.text-brown-6{color:#795548!important}.text-brown-7{color:#6d4c41!important}.text-brown-8{color:#5d4037!important}.text-brown-9{color:#4e342e!important}.text-brown-10{color:#3e2723!important}.text-brown-11{color:#d7ccc8!important}.text-brown-12{color:#bcaaa4!important}.text-brown-13{color:#8d6e63!important}.text-brown-14{color:#5d4037!important}.text-grey{color:#9e9e9e!important}.text-grey-1{color:#fafafa!important}.text-grey-2{color:#f5f5f5!important}.text-grey-3{color:#eee!important}.text-grey-4{color:#e0e0e0!important}.text-grey-5{color:#bdbdbd!important}.text-grey-6{color:#9e9e9e!important}.text-grey-7{color:#757575!important}.text-grey-8{color:#616161!important}.text-grey-9{color:#424242!important}.text-grey-10{color:#212121!important}.text-grey-11{color:#f5f5f5!important}.text-grey-12{color:#eee!important}.text-grey-13{color:#bdbdbd!important}.text-grey-14{color:#616161!important}.text-blue-grey{color:#607d8b!important}.text-blue-grey-1{color:#eceff1!important}.text-blue-grey-2{color:#cfd8dc!important}.text-blue-grey-3{color:#b0bec5!important}.text-blue-grey-4{color:#90a4ae!important}.text-blue-grey-5{color:#78909c!important}.text-blue-grey-6{color:#607d8b!important}.text-blue-grey-7{color:#546e7a!important}.text-blue-grey-8{color:#455a64!important}.text-blue-grey-9{color:#37474f!important}.text-blue-grey-10{color:#263238!important}.text-blue-grey-11{color:#cfd8dc!important}.text-blue-grey-12{color:#b0bec5!important}.text-blue-grey-13{color:#78909c!important}.text-blue-grey-14{color:#455a64!important}.bg-red{background:#f44336!important}.bg-red-1{background:#ffebee!important}.bg-red-2{background:#ffcdd2!important}.bg-red-3{background:#ef9a9a!important}.bg-red-4{background:#e57373!important}.bg-red-5{background:#ef5350!important}.bg-red-6{background:#f44336!important}.bg-red-7{background:#e53935!important}.bg-red-8{background:#d32f2f!important}.bg-red-9{background:#c62828!important}.bg-red-10{background:#b71c1c!important}.bg-red-11{background:#ff8a80!important}.bg-red-12{background:#ff5252!important}.bg-red-13{background:#ff1744!important}.bg-red-14{background:#d50000!important}.bg-pink{background:#e91e63!important}.bg-pink-1{background:#fce4ec!important}.bg-pink-2{background:#f8bbd0!important}.bg-pink-3{background:#f48fb1!important}.bg-pink-4{background:#f06292!important}.bg-pink-5{background:#ec407a!important}.bg-pink-6{background:#e91e63!important}.bg-pink-7{background:#d81b60!important}.bg-pink-8{background:#c2185b!important}.bg-pink-9{background:#ad1457!important}.bg-pink-10{background:#880e4f!important}.bg-pink-11{background:#ff80ab!important}.bg-pink-12{background:#ff4081!important}.bg-pink-13{background:#f50057!important}.bg-pink-14{background:#c51162!important}.bg-purple{background:#9c27b0!important}.bg-purple-1{background:#f3e5f5!important}.bg-purple-2{background:#e1bee7!important}.bg-purple-3{background:#ce93d8!important}.bg-purple-4{background:#ba68c8!important}.bg-purple-5{background:#ab47bc!important}.bg-purple-6{background:#9c27b0!important}.bg-purple-7{background:#8e24aa!important}.bg-purple-8{background:#7b1fa2!important}.bg-purple-9{background:#6a1b9a!important}.bg-purple-10{background:#4a148c!important}.bg-purple-11{background:#ea80fc!important}.bg-purple-12{background:#e040fb!important}.bg-purple-13{background:#d500f9!important}.bg-purple-14{background:#a0f!important}.bg-deep-purple{background:#673ab7!important}.bg-deep-purple-1{background:#ede7f6!important}.bg-deep-purple-2{background:#d1c4e9!important}.bg-deep-purple-3{background:#b39ddb!important}.bg-deep-purple-4{background:#9575cd!important}.bg-deep-purple-5{background:#7e57c2!important}.bg-deep-purple-6{background:#673ab7!important}.bg-deep-purple-7{background:#5e35b1!important}.bg-deep-purple-8{background:#512da8!important}.bg-deep-purple-9{background:#4527a0!important}.bg-deep-purple-10{background:#311b92!important}.bg-deep-purple-11{background:#b388ff!important}.bg-deep-purple-12{background:#7c4dff!important}.bg-deep-purple-13{background:#651fff!important}.bg-deep-purple-14{background:#6200ea!important}.bg-indigo{background:#3f51b5!important}.bg-indigo-1{background:#e8eaf6!important}.bg-indigo-2{background:#c5cae9!important}.bg-indigo-3{background:#9fa8da!important}.bg-indigo-4{background:#7986cb!important}.bg-indigo-5{background:#5c6bc0!important}.bg-indigo-6{background:#3f51b5!important}.bg-indigo-7{background:#3949ab!important}.bg-indigo-8{background:#303f9f!important}.bg-indigo-9{background:#283593!important}.bg-indigo-10{background:#1a237e!important}.bg-indigo-11{background:#8c9eff!important}.bg-indigo-12{background:#536dfe!important}.bg-indigo-13{background:#3d5afe!important}.bg-indigo-14{background:#304ffe!important}.bg-blue{background:#2196f3!important}.bg-blue-1{background:#e3f2fd!important}.bg-blue-2{background:#bbdefb!important}.bg-blue-3{background:#90caf9!important}.bg-blue-4{background:#64b5f6!important}.bg-blue-5{background:#42a5f5!important}.bg-blue-6{background:#2196f3!important}.bg-blue-7{background:#1e88e5!important}.bg-blue-8{background:#1976d2!important}.bg-blue-9{background:#1565c0!important}.bg-blue-10{background:#0d47a1!important}.bg-blue-11{background:#82b1ff!important}.bg-blue-12{background:#448aff!important}.bg-blue-13{background:#2979ff!important}.bg-blue-14{background:#2962ff!important}.bg-light-blue{background:#03a9f4!important}.bg-light-blue-1{background:#e1f5fe!important}.bg-light-blue-2{background:#b3e5fc!important}.bg-light-blue-3{background:#81d4fa!important}.bg-light-blue-4{background:#4fc3f7!important}.bg-light-blue-5{background:#29b6f6!important}.bg-light-blue-6{background:#03a9f4!important}.bg-light-blue-7{background:#039be5!important}.bg-light-blue-8{background:#0288d1!important}.bg-light-blue-9{background:#0277bd!important}.bg-light-blue-10{background:#01579b!important}.bg-light-blue-11{background:#80d8ff!important}.bg-light-blue-12{background:#40c4ff!important}.bg-light-blue-13{background:#00b0ff!important}.bg-light-blue-14{background:#0091ea!important}.bg-cyan{background:#00bcd4!important}.bg-cyan-1{background:#e0f7fa!important}.bg-cyan-2{background:#b2ebf2!important}.bg-cyan-3{background:#80deea!important}.bg-cyan-4{background:#4dd0e1!important}.bg-cyan-5{background:#26c6da!important}.bg-cyan-6{background:#00bcd4!important}.bg-cyan-7{background:#00acc1!important}.bg-cyan-8{background:#0097a7!important}.bg-cyan-9{background:#00838f!important}.bg-cyan-10{background:#006064!important}.bg-cyan-11{background:#84ffff!important}.bg-cyan-12{background:#18ffff!important}.bg-cyan-13{background:#00e5ff!important}.bg-cyan-14{background:#00b8d4!important}.bg-teal{background:#009688!important}.bg-teal-1{background:#e0f2f1!important}.bg-teal-2{background:#b2dfdb!important}.bg-teal-3{background:#80cbc4!important}.bg-teal-4{background:#4db6ac!important}.bg-teal-5{background:#26a69a!important}.bg-teal-6{background:#009688!important}.bg-teal-7{background:#00897b!important}.bg-teal-8{background:#00796b!important}.bg-teal-9{background:#00695c!important}.bg-teal-10{background:#004d40!important}.bg-teal-11{background:#a7ffeb!important}.bg-teal-12{background:#64ffda!important}.bg-teal-13{background:#1de9b6!important}.bg-teal-14{background:#00bfa5!important}.bg-green{background:#4caf50!important}.bg-green-1{background:#e8f5e9!important}.bg-green-2{background:#c8e6c9!important}.bg-green-3{background:#a5d6a7!important}.bg-green-4{background:#81c784!important}.bg-green-5{background:#66bb6a!important}.bg-green-6{background:#4caf50!important}.bg-green-7{background:#43a047!important}.bg-green-8{background:#388e3c!important}.bg-green-9{background:#2e7d32!important}.bg-green-10{background:#1b5e20!important}.bg-green-11{background:#b9f6ca!important}.bg-green-12{background:#69f0ae!important}.bg-green-13{background:#00e676!important}.bg-green-14{background:#00c853!important}.bg-light-green{background:#8bc34a!important}.bg-light-green-1{background:#f1f8e9!important}.bg-light-green-2{background:#dcedc8!important}.bg-light-green-3{background:#c5e1a5!important}.bg-light-green-4{background:#aed581!important}.bg-light-green-5{background:#9ccc65!important}.bg-light-green-6{background:#8bc34a!important}.bg-light-green-7{background:#7cb342!important}.bg-light-green-8{background:#689f38!important}.bg-light-green-9{background:#558b2f!important}.bg-light-green-10{background:#33691e!important}.bg-light-green-11{background:#ccff90!important}.bg-light-green-12{background:#b2ff59!important}.bg-light-green-13{background:#76ff03!important}.bg-light-green-14{background:#64dd17!important}.bg-lime{background:#cddc39!important}.bg-lime-1{background:#f9fbe7!important}.bg-lime-2{background:#f0f4c3!important}.bg-lime-3{background:#e6ee9c!important}.bg-lime-4{background:#dce775!important}.bg-lime-5{background:#d4e157!important}.bg-lime-6{background:#cddc39!important}.bg-lime-7{background:#c0ca33!important}.bg-lime-8{background:#afb42b!important}.bg-lime-9{background:#9e9d24!important}.bg-lime-10{background:#827717!important}.bg-lime-11{background:#f4ff81!important}.bg-lime-12{background:#eeff41!important}.bg-lime-13{background:#c6ff00!important}.bg-lime-14{background:#aeea00!important}.bg-yellow{background:#ffeb3b!important}.bg-yellow-1{background:#fffde7!important}.bg-yellow-2{background:#fff9c4!important}.bg-yellow-3{background:#fff59d!important}.bg-yellow-4{background:#fff176!important}.bg-yellow-5{background:#ffee58!important}.bg-yellow-6{background:#ffeb3b!important}.bg-yellow-7{background:#fdd835!important}.bg-yellow-8{background:#fbc02d!important}.bg-yellow-9{background:#f9a825!important}.bg-yellow-10{background:#f57f17!important}.bg-yellow-11{background:#ffff8d!important}.bg-yellow-12{background:#ff0!important}.bg-yellow-13{background:#ffea00!important}.bg-yellow-14{background:#ffd600!important}.bg-amber{background:#ffc107!important}.bg-amber-1{background:#fff8e1!important}.bg-amber-2{background:#ffecb3!important}.bg-amber-3{background:#ffe082!important}.bg-amber-4{background:#ffd54f!important}.bg-amber-5{background:#ffca28!important}.bg-amber-6{background:#ffc107!important}.bg-amber-7{background:#ffb300!important}.bg-amber-8{background:#ffa000!important}.bg-amber-9{background:#ff8f00!important}.bg-amber-10{background:#ff6f00!important}.bg-amber-11{background:#ffe57f!important}.bg-amber-12{background:#ffd740!important}.bg-amber-13{background:#ffc400!important}.bg-amber-14{background:#ffab00!important}.bg-orange{background:#ff9800!important}.bg-orange-1{background:#fff3e0!important}.bg-orange-2{background:#ffe0b2!important}.bg-orange-3{background:#ffcc80!important}.bg-orange-4{background:#ffb74d!important}.bg-orange-5{background:#ffa726!important}.bg-orange-6{background:#ff9800!important}.bg-orange-7{background:#fb8c00!important}.bg-orange-8{background:#f57c00!important}.bg-orange-9{background:#ef6c00!important}.bg-orange-10{background:#e65100!important}.bg-orange-11{background:#ffd180!important}.bg-orange-12{background:#ffab40!important}.bg-orange-13{background:#ff9100!important}.bg-orange-14{background:#ff6d00!important}.bg-deep-orange{background:#ff5722!important}.bg-deep-orange-1{background:#fbe9e7!important}.bg-deep-orange-2{background:#ffccbc!important}.bg-deep-orange-3{background:#ffab91!important}.bg-deep-orange-4{background:#ff8a65!important}.bg-deep-orange-5{background:#ff7043!important}.bg-deep-orange-6{background:#ff5722!important}.bg-deep-orange-7{background:#f4511e!important}.bg-deep-orange-8{background:#e64a19!important}.bg-deep-orange-9{background:#d84315!important}.bg-deep-orange-10{background:#bf360c!important}.bg-deep-orange-11{background:#ff9e80!important}.bg-deep-orange-12{background:#ff6e40!important}.bg-deep-orange-13{background:#ff3d00!important}.bg-deep-orange-14{background:#dd2c00!important}.bg-brown{background:#795548!important}.bg-brown-1{background:#efebe9!important}.bg-brown-2{background:#d7ccc8!important}.bg-brown-3{background:#bcaaa4!important}.bg-brown-4{background:#a1887f!important}.bg-brown-5{background:#8d6e63!important}.bg-brown-6{background:#795548!important}.bg-brown-7{background:#6d4c41!important}.bg-brown-8{background:#5d4037!important}.bg-brown-9{background:#4e342e!important}.bg-brown-10{background:#3e2723!important}.bg-brown-11{background:#d7ccc8!important}.bg-brown-12{background:#bcaaa4!important}.bg-brown-13{background:#8d6e63!important}.bg-brown-14{background:#5d4037!important}.bg-grey{background:#9e9e9e!important}.bg-grey-1{background:#fafafa!important}.bg-grey-2{background:#f5f5f5!important}.bg-grey-3{background:#eee!important}.bg-grey-4{background:#e0e0e0!important}.bg-grey-5{background:#bdbdbd!important}.bg-grey-6{background:#9e9e9e!important}.bg-grey-7{background:#757575!important}.bg-grey-8{background:#616161!important}.bg-grey-9{background:#424242!important}.bg-grey-10{background:#212121!important}.bg-grey-11{background:#f5f5f5!important}.bg-grey-12{background:#eee!important}.bg-grey-13{background:#bdbdbd!important}.bg-grey-14{background:#616161!important}.bg-blue-grey{background:#607d8b!important}.bg-blue-grey-1{background:#eceff1!important}.bg-blue-grey-2{background:#cfd8dc!important}.bg-blue-grey-3{background:#b0bec5!important}.bg-blue-grey-4{background:#90a4ae!important}.bg-blue-grey-5{background:#78909c!important}.bg-blue-grey-6{background:#607d8b!important}.bg-blue-grey-7{background:#546e7a!important}.bg-blue-grey-8{background:#455a64!important}.bg-blue-grey-9{background:#37474f!important}.bg-blue-grey-10{background:#263238!important}.bg-blue-grey-11{background:#cfd8dc!important}.bg-blue-grey-12{background:#b0bec5!important}.bg-blue-grey-13{background:#78909c!important}.bg-blue-grey-14{background:#455a64!important}.shadow-transition{transition:box-shadow .28s cubic-bezier(.4, 0, .2, 1)!important}.shadow-1{box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.shadow-up-1{box-shadow:0 -1px 3px rgba(0,0,0,.2),0 -1px 1px rgba(0,0,0,.14),0 -2px 1px -1px rgba(0,0,0,.12)}.shadow-2{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.shadow-up-2{box-shadow:0 -1px 5px rgba(0,0,0,.2),0 -2px 2px rgba(0,0,0,.14),0 -3px 1px -2px rgba(0,0,0,.12)}.shadow-3{box-shadow:0 1px 8px rgba(0,0,0,.2),0 3px 4px rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.shadow-up-3{box-shadow:0 -1px 8px rgba(0,0,0,.2),0 -3px 4px rgba(0,0,0,.14),0 -3px 3px -2px rgba(0,0,0,.12)}.shadow-4{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px rgba(0,0,0,.14),0 1px 10px rgba(0,0,0,.12)}.shadow-up-4{box-shadow:0 -2px 4px -1px rgba(0,0,0,.2),0 -4px 5px rgba(0,0,0,.14),0 -1px 10px rgba(0,0,0,.12)}.shadow-5{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.shadow-up-5{box-shadow:0 -3px 5px -1px rgba(0,0,0,.2),0 -5px 8px rgba(0,0,0,.14),0 -1px 14px rgba(0,0,0,.12)}.shadow-6{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px rgba(0,0,0,.14),0 1px 18px rgba(0,0,0,.12)}.shadow-up-6{box-shadow:0 -3px 5px -1px rgba(0,0,0,.2),0 -6px 10px rgba(0,0,0,.14),0 -1px 18px rgba(0,0,0,.12)}.shadow-7{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.shadow-up-7{box-shadow:0 -4px 5px -2px rgba(0,0,0,.2),0 -7px 10px 1px rgba(0,0,0,.14),0 -2px 16px 1px rgba(0,0,0,.12)}.shadow-8{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.shadow-up-8{box-shadow:0 -5px 5px -3px rgba(0,0,0,.2),0 -8px 10px 1px rgba(0,0,0,.14),0 -3px 14px 2px rgba(0,0,0,.12)}.shadow-9{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.shadow-up-9{box-shadow:0 -5px 6px -3px rgba(0,0,0,.2),0 -9px 12px 1px rgba(0,0,0,.14),0 -3px 16px 2px rgba(0,0,0,.12)}.shadow-10{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.shadow-up-10{box-shadow:0 -6px 6px -3px rgba(0,0,0,.2),0 -10px 14px 1px rgba(0,0,0,.14),0 -4px 18px 3px rgba(0,0,0,.12)}.shadow-11{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.shadow-up-11{box-shadow:0 -6px 7px -4px rgba(0,0,0,.2),0 -11px 15px 1px rgba(0,0,0,.14),0 -4px 20px 3px rgba(0,0,0,.12)}.shadow-12{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.shadow-up-12{box-shadow:0 -7px 8px -4px rgba(0,0,0,.2),0 -12px 17px 2px rgba(0,0,0,.14),0 -5px 22px 4px rgba(0,0,0,.12)}.shadow-13{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.shadow-up-13{box-shadow:0 -7px 8px -4px rgba(0,0,0,.2),0 -13px 19px 2px rgba(0,0,0,.14),0 -5px 24px 4px rgba(0,0,0,.12)}.shadow-14{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.shadow-up-14{box-shadow:0 -7px 9px -4px rgba(0,0,0,.2),0 -14px 21px 2px rgba(0,0,0,.14),0 -5px 26px 4px rgba(0,0,0,.12)}.shadow-15{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.shadow-up-15{box-shadow:0 -8px 9px -5px rgba(0,0,0,.2),0 -15px 22px 2px rgba(0,0,0,.14),0 -6px 28px 5px rgba(0,0,0,.12)}.shadow-16{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.shadow-up-16{box-shadow:0 -8px 10px -5px rgba(0,0,0,.2),0 -16px 24px 2px rgba(0,0,0,.14),0 -6px 30px 5px rgba(0,0,0,.12)}.shadow-17{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.shadow-up-17{box-shadow:0 -8px 11px -5px rgba(0,0,0,.2),0 -17px 26px 2px rgba(0,0,0,.14),0 -6px 32px 5px rgba(0,0,0,.12)}.shadow-18{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.shadow-up-18{box-shadow:0 -9px 11px -5px rgba(0,0,0,.2),0 -18px 28px 2px rgba(0,0,0,.14),0 -7px 34px 6px rgba(0,0,0,.12)}.shadow-19{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.shadow-up-19{box-shadow:0 -9px 12px -6px rgba(0,0,0,.2),0 -19px 29px 2px rgba(0,0,0,.14),0 -7px 36px 6px rgba(0,0,0,.12)}.shadow-20{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.shadow-up-20{box-shadow:0 -10px 13px -6px rgba(0,0,0,.2),0 -20px 31px 3px rgba(0,0,0,.14),0 -8px 38px 7px rgba(0,0,0,.12)}.shadow-21{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.shadow-up-21{box-shadow:0 -10px 13px -6px rgba(0,0,0,.2),0 -21px 33px 3px rgba(0,0,0,.14),0 -8px 40px 7px rgba(0,0,0,.12)}.shadow-22{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.shadow-up-22{box-shadow:0 -10px 14px -6px rgba(0,0,0,.2),0 -22px 35px 3px rgba(0,0,0,.14),0 -8px 42px 7px rgba(0,0,0,.12)}.shadow-23{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.shadow-up-23{box-shadow:0 -11px 14px -7px rgba(0,0,0,.2),0 -23px 36px 3px rgba(0,0,0,.14),0 -9px 44px 8px rgba(0,0,0,.12)}.shadow-24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.shadow-up-24{box-shadow:0 -11px 15px -7px rgba(0,0,0,.2),0 -24px 38px 3px rgba(0,0,0,.14),0 -9px 46px 8px rgba(0,0,0,.12)}.inset-shadow{box-shadow:0 7px 9px -7px rgba(0,0,0,.7) inset}.inset-shadow-down{box-shadow:0 -7px 9px -7px rgba(0,0,0,.7) inset}body.body--dark .shadow-1{box-shadow:0 1px 3px rgba(255,255,255,.2),0 1px 1px rgba(255,255,255,.14),0 2px 1px -1px rgba(255,255,255,.12)}body.body--dark .shadow-up-1{box-shadow:0 -1px 3px rgba(255,255,255,.2),0 -1px 1px rgba(255,255,255,.14),0 -2px 1px -1px rgba(255,255,255,.12)}body.body--dark .shadow-2{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}body.body--dark .shadow-up-2{box-shadow:0 -1px 5px rgba(255,255,255,.2),0 -2px 2px rgba(255,255,255,.14),0 -3px 1px -2px rgba(255,255,255,.12)}body.body--dark .shadow-3{box-shadow:0 1px 8px rgba(255,255,255,.2),0 3px 4px rgba(255,255,255,.14),0 3px 3px -2px rgba(255,255,255,.12)}body.body--dark .shadow-up-3{box-shadow:0 -1px 8px rgba(255,255,255,.2),0 -3px 4px rgba(255,255,255,.14),0 -3px 3px -2px rgba(255,255,255,.12)}body.body--dark .shadow-4{box-shadow:0 2px 4px -1px rgba(255,255,255,.2),0 4px 5px rgba(255,255,255,.14),0 1px 10px rgba(255,255,255,.12)}body.body--dark .shadow-up-4{box-shadow:0 -2px 4px -1px rgba(255,255,255,.2),0 -4px 5px rgba(255,255,255,.14),0 -1px 10px rgba(255,255,255,.12)}body.body--dark .shadow-5{box-shadow:0 3px 5px -1px rgba(255,255,255,.2),0 5px 8px rgba(255,255,255,.14),0 1px 14px rgba(255,255,255,.12)}body.body--dark .shadow-up-5{box-shadow:0 -3px 5px -1px rgba(255,255,255,.2),0 -5px 8px rgba(255,255,255,.14),0 -1px 14px rgba(255,255,255,.12)}body.body--dark .shadow-6{box-shadow:0 3px 5px -1px rgba(255,255,255,.2),0 6px 10px rgba(255,255,255,.14),0 1px 18px rgba(255,255,255,.12)}body.body--dark .shadow-up-6{box-shadow:0 -3px 5px -1px rgba(255,255,255,.2),0 -6px 10px rgba(255,255,255,.14),0 -1px 18px rgba(255,255,255,.12)}body.body--dark .shadow-7{box-shadow:0 4px 5px -2px rgba(255,255,255,.2),0 7px 10px 1px rgba(255,255,255,.14),0 2px 16px 1px rgba(255,255,255,.12)}body.body--dark .shadow-up-7{box-shadow:0 -4px 5px -2px rgba(255,255,255,.2),0 -7px 10px 1px rgba(255,255,255,.14),0 -2px 16px 1px rgba(255,255,255,.12)}body.body--dark .shadow-8{box-shadow:0 5px 5px -3px rgba(255,255,255,.2),0 8px 10px 1px rgba(255,255,255,.14),0 3px 14px 2px rgba(255,255,255,.12)}body.body--dark .shadow-up-8{box-shadow:0 -5px 5px -3px rgba(255,255,255,.2),0 -8px 10px 1px rgba(255,255,255,.14),0 -3px 14px 2px rgba(255,255,255,.12)}body.body--dark .shadow-9{box-shadow:0 5px 6px -3px rgba(255,255,255,.2),0 9px 12px 1px rgba(255,255,255,.14),0 3px 16px 2px rgba(255,255,255,.12)}body.body--dark .shadow-up-9{box-shadow:0 -5px 6px -3px rgba(255,255,255,.2),0 -9px 12px 1px rgba(255,255,255,.14),0 -3px 16px 2px rgba(255,255,255,.12)}body.body--dark .shadow-10{box-shadow:0 6px 6px -3px rgba(255,255,255,.2),0 10px 14px 1px rgba(255,255,255,.14),0 4px 18px 3px rgba(255,255,255,.12)}body.body--dark .shadow-up-10{box-shadow:0 -6px 6px -3px rgba(255,255,255,.2),0 -10px 14px 1px rgba(255,255,255,.14),0 -4px 18px 3px rgba(255,255,255,.12)}body.body--dark .shadow-11{box-shadow:0 6px 7px -4px rgba(255,255,255,.2),0 11px 15px 1px rgba(255,255,255,.14),0 4px 20px 3px rgba(255,255,255,.12)}body.body--dark .shadow-up-11{box-shadow:0 -6px 7px -4px rgba(255,255,255,.2),0 -11px 15px 1px rgba(255,255,255,.14),0 -4px 20px 3px rgba(255,255,255,.12)}body.body--dark .shadow-12{box-shadow:0 7px 8px -4px rgba(255,255,255,.2),0 12px 17px 2px rgba(255,255,255,.14),0 5px 22px 4px rgba(255,255,255,.12)}body.body--dark .shadow-up-12{box-shadow:0 -7px 8px -4px rgba(255,255,255,.2),0 -12px 17px 2px rgba(255,255,255,.14),0 -5px 22px 4px rgba(255,255,255,.12)}body.body--dark .shadow-13{box-shadow:0 7px 8px -4px rgba(255,255,255,.2),0 13px 19px 2px rgba(255,255,255,.14),0 5px 24px 4px rgba(255,255,255,.12)}body.body--dark .shadow-up-13{box-shadow:0 -7px 8px -4px rgba(255,255,255,.2),0 -13px 19px 2px rgba(255,255,255,.14),0 -5px 24px 4px rgba(255,255,255,.12)}body.body--dark .shadow-14{box-shadow:0 7px 9px -4px rgba(255,255,255,.2),0 14px 21px 2px rgba(255,255,255,.14),0 5px 26px 4px rgba(255,255,255,.12)}body.body--dark .shadow-up-14{box-shadow:0 -7px 9px -4px rgba(255,255,255,.2),0 -14px 21px 2px rgba(255,255,255,.14),0 -5px 26px 4px rgba(255,255,255,.12)}body.body--dark .shadow-15{box-shadow:0 8px 9px -5px rgba(255,255,255,.2),0 15px 22px 2px rgba(255,255,255,.14),0 6px 28px 5px rgba(255,255,255,.12)}body.body--dark .shadow-up-15{box-shadow:0 -8px 9px -5px rgba(255,255,255,.2),0 -15px 22px 2px rgba(255,255,255,.14),0 -6px 28px 5px rgba(255,255,255,.12)}body.body--dark .shadow-16{box-shadow:0 8px 10px -5px rgba(255,255,255,.2),0 16px 24px 2px rgba(255,255,255,.14),0 6px 30px 5px rgba(255,255,255,.12)}body.body--dark .shadow-up-16{box-shadow:0 -8px 10px -5px rgba(255,255,255,.2),0 -16px 24px 2px rgba(255,255,255,.14),0 -6px 30px 5px rgba(255,255,255,.12)}body.body--dark .shadow-17{box-shadow:0 8px 11px -5px rgba(255,255,255,.2),0 17px 26px 2px rgba(255,255,255,.14),0 6px 32px 5px rgba(255,255,255,.12)}body.body--dark .shadow-up-17{box-shadow:0 -8px 11px -5px rgba(255,255,255,.2),0 -17px 26px 2px rgba(255,255,255,.14),0 -6px 32px 5px rgba(255,255,255,.12)}body.body--dark .shadow-18{box-shadow:0 9px 11px -5px rgba(255,255,255,.2),0 18px 28px 2px rgba(255,255,255,.14),0 7px 34px 6px rgba(255,255,255,.12)}body.body--dark .shadow-up-18{box-shadow:0 -9px 11px -5px rgba(255,255,255,.2),0 -18px 28px 2px rgba(255,255,255,.14),0 -7px 34px 6px rgba(255,255,255,.12)}body.body--dark .shadow-19{box-shadow:0 9px 12px -6px rgba(255,255,255,.2),0 19px 29px 2px rgba(255,255,255,.14),0 7px 36px 6px rgba(255,255,255,.12)}body.body--dark .shadow-up-19{box-shadow:0 -9px 12px -6px rgba(255,255,255,.2),0 -19px 29px 2px rgba(255,255,255,.14),0 -7px 36px 6px rgba(255,255,255,.12)}body.body--dark .shadow-20{box-shadow:0 10px 13px -6px rgba(255,255,255,.2),0 20px 31px 3px rgba(255,255,255,.14),0 8px 38px 7px rgba(255,255,255,.12)}body.body--dark .shadow-up-20{box-shadow:0 -10px 13px -6px rgba(255,255,255,.2),0 -20px 31px 3px rgba(255,255,255,.14),0 -8px 38px 7px rgba(255,255,255,.12)}body.body--dark .shadow-21{box-shadow:0 10px 13px -6px rgba(255,255,255,.2),0 21px 33px 3px rgba(255,255,255,.14),0 8px 40px 7px rgba(255,255,255,.12)}body.body--dark .shadow-up-21{box-shadow:0 -10px 13px -6px rgba(255,255,255,.2),0 -21px 33px 3px rgba(255,255,255,.14),0 -8px 40px 7px rgba(255,255,255,.12)}body.body--dark .shadow-22{box-shadow:0 10px 14px -6px rgba(255,255,255,.2),0 22px 35px 3px rgba(255,255,255,.14),0 8px 42px 7px rgba(255,255,255,.12)}body.body--dark .shadow-up-22{box-shadow:0 -10px 14px -6px rgba(255,255,255,.2),0 -22px 35px 3px rgba(255,255,255,.14),0 -8px 42px 7px rgba(255,255,255,.12)}body.body--dark .shadow-23{box-shadow:0 11px 14px -7px rgba(255,255,255,.2),0 23px 36px 3px rgba(255,255,255,.14),0 9px 44px 8px rgba(255,255,255,.12)}body.body--dark .shadow-up-23{box-shadow:0 -11px 14px -7px rgba(255,255,255,.2),0 -23px 36px 3px rgba(255,255,255,.14),0 -9px 44px 8px rgba(255,255,255,.12)}body.body--dark .shadow-24{box-shadow:0 11px 15px -7px rgba(255,255,255,.2),0 24px 38px 3px rgba(255,255,255,.14),0 9px 46px 8px rgba(255,255,255,.12)}body.body--dark .shadow-up-24{box-shadow:0 -11px 15px -7px rgba(255,255,255,.2),0 -24px 38px 3px rgba(255,255,255,.14),0 -9px 46px 8px rgba(255,255,255,.12)}body.body--dark .inset-shadow{box-shadow:0 7px 9px -7px rgba(255,255,255,.7) inset}body.body--dark .inset-shadow-down{box-shadow:0 -7px 9px -7px rgba(255,255,255,.7) inset}.no-shadow,.shadow-0{box-shadow:none!important}.z-marginals{z-index:2000}.z-notify{z-index:9500}.z-fullscreen{z-index:6000}.z-inherit{z-index:inherit!important}.column,.flex,.row{display:flex;flex-wrap:wrap}.column.inline,.flex.inline,.row.inline{display:inline-flex}.row.reverse{flex-direction:row-reverse}.column{flex-direction:column}.column.reverse{flex-direction:column-reverse}.wrap{flex-wrap:wrap}.no-wrap{flex-wrap:nowrap}.reverse-wrap{flex-wrap:wrap-reverse}.order-first{order:-10000}.order-last{order:10000}.order-none{order:0}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-center,.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.flex-center,.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-stretch{align-content:stretch}.content-between{align-content:space-between}.content-around{align-content:space-around}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-baseline{align-self:baseline}.self-stretch{align-self:stretch}.q-gutter-none,.q-gutter-x-none{margin-left:0}.q-gutter-none>*,.q-gutter-x-none>*{margin-left:0}.q-gutter-none,.q-gutter-y-none{margin-top:0}.q-gutter-none>*,.q-gutter-y-none>*{margin-top:0}.q-col-gutter-none,.q-col-gutter-x-none{margin-left:0}.q-col-gutter-none>*,.q-col-gutter-x-none>*{padding-left:0}.q-col-gutter-none,.q-col-gutter-y-none{margin-top:0}.q-col-gutter-none>*,.q-col-gutter-y-none>*{padding-top:0}.q-gutter-x-xs,.q-gutter-xs{margin-left:-4px}.q-gutter-x-xs>*,.q-gutter-xs>*{margin-left:4px}.q-gutter-xs,.q-gutter-y-xs{margin-top:-4px}.q-gutter-xs>*,.q-gutter-y-xs>*{margin-top:4px}.q-col-gutter-x-xs,.q-col-gutter-xs{margin-left:-4px}.q-col-gutter-x-xs>*,.q-col-gutter-xs>*{padding-left:4px}.q-col-gutter-xs,.q-col-gutter-y-xs{margin-top:-4px}.q-col-gutter-xs>*,.q-col-gutter-y-xs>*{padding-top:4px}.q-gutter-sm,.q-gutter-x-sm{margin-left:-8px}.q-gutter-sm>*,.q-gutter-x-sm>*{margin-left:8px}.q-gutter-sm,.q-gutter-y-sm{margin-top:-8px}.q-gutter-sm>*,.q-gutter-y-sm>*{margin-top:8px}.q-col-gutter-sm,.q-col-gutter-x-sm{margin-left:-8px}.q-col-gutter-sm>*,.q-col-gutter-x-sm>*{padding-left:8px}.q-col-gutter-sm,.q-col-gutter-y-sm{margin-top:-8px}.q-col-gutter-sm>*,.q-col-gutter-y-sm>*{padding-top:8px}.q-gutter-md,.q-gutter-x-md{margin-left:-16px}.q-gutter-md>*,.q-gutter-x-md>*{margin-left:16px}.q-gutter-md,.q-gutter-y-md{margin-top:-16px}.q-gutter-md>*,.q-gutter-y-md>*{margin-top:16px}.q-col-gutter-md,.q-col-gutter-x-md{margin-left:-16px}.q-col-gutter-md>*,.q-col-gutter-x-md>*{padding-left:16px}.q-col-gutter-md,.q-col-gutter-y-md{margin-top:-16px}.q-col-gutter-md>*,.q-col-gutter-y-md>*{padding-top:16px}.q-gutter-lg,.q-gutter-x-lg{margin-left:-24px}.q-gutter-lg>*,.q-gutter-x-lg>*{margin-left:24px}.q-gutter-lg,.q-gutter-y-lg{margin-top:-24px}.q-gutter-lg>*,.q-gutter-y-lg>*{margin-top:24px}.q-col-gutter-lg,.q-col-gutter-x-lg{margin-left:-24px}.q-col-gutter-lg>*,.q-col-gutter-x-lg>*{padding-left:24px}.q-col-gutter-lg,.q-col-gutter-y-lg{margin-top:-24px}.q-col-gutter-lg>*,.q-col-gutter-y-lg>*{padding-top:24px}.q-gutter-x-xl,.q-gutter-xl{margin-left:-48px}.q-gutter-x-xl>*,.q-gutter-xl>*{margin-left:48px}.q-gutter-xl,.q-gutter-y-xl{margin-top:-48px}.q-gutter-xl>*,.q-gutter-y-xl>*{margin-top:48px}.q-col-gutter-x-xl,.q-col-gutter-xl{margin-left:-48px}.q-col-gutter-x-xl>*,.q-col-gutter-xl>*{padding-left:48px}.q-col-gutter-xl,.q-col-gutter-y-xl{margin-top:-48px}.q-col-gutter-xl>*,.q-col-gutter-y-xl>*{padding-top:48px}@media (min-width:0){.flex>.col,.flex>.col-0,.flex>.col-1,.flex>.col-10,.flex>.col-11,.flex>.col-12,.flex>.col-2,.flex>.col-3,.flex>.col-4,.flex>.col-5,.flex>.col-6,.flex>.col-7,.flex>.col-8,.flex>.col-9,.flex>.col-auto,.flex>.col-grow,.flex>.col-shrink,.flex>.col-xs,.flex>.col-xs-0,.flex>.col-xs-1,.flex>.col-xs-10,.flex>.col-xs-11,.flex>.col-xs-12,.flex>.col-xs-2,.flex>.col-xs-3,.flex>.col-xs-4,.flex>.col-xs-5,.flex>.col-xs-6,.flex>.col-xs-7,.flex>.col-xs-8,.flex>.col-xs-9,.flex>.col-xs-auto,.flex>.col-xs-grow,.flex>.col-xs-shrink,.row>.col,.row>.col-0,.row>.col-1,.row>.col-10,.row>.col-11,.row>.col-12,.row>.col-2,.row>.col-3,.row>.col-4,.row>.col-5,.row>.col-6,.row>.col-7,.row>.col-8,.row>.col-9,.row>.col-auto,.row>.col-grow,.row>.col-shrink,.row>.col-xs,.row>.col-xs-0,.row>.col-xs-1,.row>.col-xs-10,.row>.col-xs-11,.row>.col-xs-12,.row>.col-xs-2,.row>.col-xs-3,.row>.col-xs-4,.row>.col-xs-5,.row>.col-xs-6,.row>.col-xs-7,.row>.col-xs-8,.row>.col-xs-9,.row>.col-xs-auto,.row>.col-xs-grow,.row>.col-xs-shrink{width:auto;min-width:0;max-width:100%}.column>.col,.column>.col-0,.column>.col-1,.column>.col-10,.column>.col-11,.column>.col-12,.column>.col-2,.column>.col-3,.column>.col-4,.column>.col-5,.column>.col-6,.column>.col-7,.column>.col-8,.column>.col-9,.column>.col-auto,.column>.col-grow,.column>.col-shrink,.column>.col-xs,.column>.col-xs-0,.column>.col-xs-1,.column>.col-xs-10,.column>.col-xs-11,.column>.col-xs-12,.column>.col-xs-2,.column>.col-xs-3,.column>.col-xs-4,.column>.col-xs-5,.column>.col-xs-6,.column>.col-xs-7,.column>.col-xs-8,.column>.col-xs-9,.column>.col-xs-auto,.column>.col-xs-grow,.column>.col-xs-shrink,.flex>.col,.flex>.col-0,.flex>.col-1,.flex>.col-10,.flex>.col-11,.flex>.col-12,.flex>.col-2,.flex>.col-3,.flex>.col-4,.flex>.col-5,.flex>.col-6,.flex>.col-7,.flex>.col-8,.flex>.col-9,.flex>.col-auto,.flex>.col-grow,.flex>.col-shrink,.flex>.col-xs,.flex>.col-xs-0,.flex>.col-xs-1,.flex>.col-xs-10,.flex>.col-xs-11,.flex>.col-xs-12,.flex>.col-xs-2,.flex>.col-xs-3,.flex>.col-xs-4,.flex>.col-xs-5,.flex>.col-xs-6,.flex>.col-xs-7,.flex>.col-xs-8,.flex>.col-xs-9,.flex>.col-xs-auto,.flex>.col-xs-grow,.flex>.col-xs-shrink{height:auto;min-height:0;max-height:100%}.col,.col-xs{flex:10000 1 0%}.col-0,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-xs-0,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-auto{flex:0 0 auto}.col-grow,.col-xs-grow{flex:1 0 auto}.col-shrink,.col-xs-shrink{flex:0 1 auto}.row>.col-0,.row>.col-xs-0{height:auto;width:0%}.row>.offset-0,.row>.offset-xs-0{margin-left:0}.column>.col-0,.column>.col-xs-0{height:0%;width:auto}.row>.col-1,.row>.col-xs-1{height:auto;width:8.3333%}.row>.offset-1,.row>.offset-xs-1{margin-left:8.3333%}.column>.col-1,.column>.col-xs-1{height:8.3333%;width:auto}.row>.col-2,.row>.col-xs-2{height:auto;width:16.6667%}.row>.offset-2,.row>.offset-xs-2{margin-left:16.6667%}.column>.col-2,.column>.col-xs-2{height:16.6667%;width:auto}.row>.col-3,.row>.col-xs-3{height:auto;width:25%}.row>.offset-3,.row>.offset-xs-3{margin-left:25%}.column>.col-3,.column>.col-xs-3{height:25%;width:auto}.row>.col-4,.row>.col-xs-4{height:auto;width:33.3333%}.row>.offset-4,.row>.offset-xs-4{margin-left:33.3333%}.column>.col-4,.column>.col-xs-4{height:33.3333%;width:auto}.row>.col-5,.row>.col-xs-5{height:auto;width:41.6667%}.row>.offset-5,.row>.offset-xs-5{margin-left:41.6667%}.column>.col-5,.column>.col-xs-5{height:41.6667%;width:auto}.row>.col-6,.row>.col-xs-6{height:auto;width:50%}.row>.offset-6,.row>.offset-xs-6{margin-left:50%}.column>.col-6,.column>.col-xs-6{height:50%;width:auto}.row>.col-7,.row>.col-xs-7{height:auto;width:58.3333%}.row>.offset-7,.row>.offset-xs-7{margin-left:58.3333%}.column>.col-7,.column>.col-xs-7{height:58.3333%;width:auto}.row>.col-8,.row>.col-xs-8{height:auto;width:66.6667%}.row>.offset-8,.row>.offset-xs-8{margin-left:66.6667%}.column>.col-8,.column>.col-xs-8{height:66.6667%;width:auto}.row>.col-9,.row>.col-xs-9{height:auto;width:75%}.row>.offset-9,.row>.offset-xs-9{margin-left:75%}.column>.col-9,.column>.col-xs-9{height:75%;width:auto}.row>.col-10,.row>.col-xs-10{height:auto;width:83.3333%}.row>.offset-10,.row>.offset-xs-10{margin-left:83.3333%}.column>.col-10,.column>.col-xs-10{height:83.3333%;width:auto}.row>.col-11,.row>.col-xs-11{height:auto;width:91.6667%}.row>.offset-11,.row>.offset-xs-11{margin-left:91.6667%}.column>.col-11,.column>.col-xs-11{height:91.6667%;width:auto}.row>.col-12,.row>.col-xs-12{height:auto;width:100%}.row>.offset-12,.row>.offset-xs-12{margin-left:100%}.column>.col-12,.column>.col-xs-12{height:100%;width:auto}.row>.col-all{height:auto;flex:0 0 100%}}@media (min-width:600px){.flex>.col-sm,.flex>.col-sm-0,.flex>.col-sm-1,.flex>.col-sm-10,.flex>.col-sm-11,.flex>.col-sm-12,.flex>.col-sm-2,.flex>.col-sm-3,.flex>.col-sm-4,.flex>.col-sm-5,.flex>.col-sm-6,.flex>.col-sm-7,.flex>.col-sm-8,.flex>.col-sm-9,.flex>.col-sm-auto,.flex>.col-sm-grow,.flex>.col-sm-shrink,.row>.col-sm,.row>.col-sm-0,.row>.col-sm-1,.row>.col-sm-10,.row>.col-sm-11,.row>.col-sm-12,.row>.col-sm-2,.row>.col-sm-3,.row>.col-sm-4,.row>.col-sm-5,.row>.col-sm-6,.row>.col-sm-7,.row>.col-sm-8,.row>.col-sm-9,.row>.col-sm-auto,.row>.col-sm-grow,.row>.col-sm-shrink{width:auto;min-width:0;max-width:100%}.column>.col-sm,.column>.col-sm-0,.column>.col-sm-1,.column>.col-sm-10,.column>.col-sm-11,.column>.col-sm-12,.column>.col-sm-2,.column>.col-sm-3,.column>.col-sm-4,.column>.col-sm-5,.column>.col-sm-6,.column>.col-sm-7,.column>.col-sm-8,.column>.col-sm-9,.column>.col-sm-auto,.column>.col-sm-grow,.column>.col-sm-shrink,.flex>.col-sm,.flex>.col-sm-0,.flex>.col-sm-1,.flex>.col-sm-10,.flex>.col-sm-11,.flex>.col-sm-12,.flex>.col-sm-2,.flex>.col-sm-3,.flex>.col-sm-4,.flex>.col-sm-5,.flex>.col-sm-6,.flex>.col-sm-7,.flex>.col-sm-8,.flex>.col-sm-9,.flex>.col-sm-auto,.flex>.col-sm-grow,.flex>.col-sm-shrink{height:auto;min-height:0;max-height:100%}.col-sm{flex:10000 1 0%}.col-sm-0,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto{flex:0 0 auto}.col-sm-grow{flex:1 0 auto}.col-sm-shrink{flex:0 1 auto}.row>.col-sm-0{height:auto;width:0%}.row>.offset-sm-0{margin-left:0}.column>.col-sm-0{height:0%;width:auto}.row>.col-sm-1{height:auto;width:8.3333%}.row>.offset-sm-1{margin-left:8.3333%}.column>.col-sm-1{height:8.3333%;width:auto}.row>.col-sm-2{height:auto;width:16.6667%}.row>.offset-sm-2{margin-left:16.6667%}.column>.col-sm-2{height:16.6667%;width:auto}.row>.col-sm-3{height:auto;width:25%}.row>.offset-sm-3{margin-left:25%}.column>.col-sm-3{height:25%;width:auto}.row>.col-sm-4{height:auto;width:33.3333%}.row>.offset-sm-4{margin-left:33.3333%}.column>.col-sm-4{height:33.3333%;width:auto}.row>.col-sm-5{height:auto;width:41.6667%}.row>.offset-sm-5{margin-left:41.6667%}.column>.col-sm-5{height:41.6667%;width:auto}.row>.col-sm-6{height:auto;width:50%}.row>.offset-sm-6{margin-left:50%}.column>.col-sm-6{height:50%;width:auto}.row>.col-sm-7{height:auto;width:58.3333%}.row>.offset-sm-7{margin-left:58.3333%}.column>.col-sm-7{height:58.3333%;width:auto}.row>.col-sm-8{height:auto;width:66.6667%}.row>.offset-sm-8{margin-left:66.6667%}.column>.col-sm-8{height:66.6667%;width:auto}.row>.col-sm-9{height:auto;width:75%}.row>.offset-sm-9{margin-left:75%}.column>.col-sm-9{height:75%;width:auto}.row>.col-sm-10{height:auto;width:83.3333%}.row>.offset-sm-10{margin-left:83.3333%}.column>.col-sm-10{height:83.3333%;width:auto}.row>.col-sm-11{height:auto;width:91.6667%}.row>.offset-sm-11{margin-left:91.6667%}.column>.col-sm-11{height:91.6667%;width:auto}.row>.col-sm-12{height:auto;width:100%}.row>.offset-sm-12{margin-left:100%}.column>.col-sm-12{height:100%;width:auto}}@media (min-width:1024px){.flex>.col-md,.flex>.col-md-0,.flex>.col-md-1,.flex>.col-md-10,.flex>.col-md-11,.flex>.col-md-12,.flex>.col-md-2,.flex>.col-md-3,.flex>.col-md-4,.flex>.col-md-5,.flex>.col-md-6,.flex>.col-md-7,.flex>.col-md-8,.flex>.col-md-9,.flex>.col-md-auto,.flex>.col-md-grow,.flex>.col-md-shrink,.row>.col-md,.row>.col-md-0,.row>.col-md-1,.row>.col-md-10,.row>.col-md-11,.row>.col-md-12,.row>.col-md-2,.row>.col-md-3,.row>.col-md-4,.row>.col-md-5,.row>.col-md-6,.row>.col-md-7,.row>.col-md-8,.row>.col-md-9,.row>.col-md-auto,.row>.col-md-grow,.row>.col-md-shrink{width:auto;min-width:0;max-width:100%}.column>.col-md,.column>.col-md-0,.column>.col-md-1,.column>.col-md-10,.column>.col-md-11,.column>.col-md-12,.column>.col-md-2,.column>.col-md-3,.column>.col-md-4,.column>.col-md-5,.column>.col-md-6,.column>.col-md-7,.column>.col-md-8,.column>.col-md-9,.column>.col-md-auto,.column>.col-md-grow,.column>.col-md-shrink,.flex>.col-md,.flex>.col-md-0,.flex>.col-md-1,.flex>.col-md-10,.flex>.col-md-11,.flex>.col-md-12,.flex>.col-md-2,.flex>.col-md-3,.flex>.col-md-4,.flex>.col-md-5,.flex>.col-md-6,.flex>.col-md-7,.flex>.col-md-8,.flex>.col-md-9,.flex>.col-md-auto,.flex>.col-md-grow,.flex>.col-md-shrink{height:auto;min-height:0;max-height:100%}.col-md{flex:10000 1 0%}.col-md-0,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto{flex:0 0 auto}.col-md-grow{flex:1 0 auto}.col-md-shrink{flex:0 1 auto}.row>.col-md-0{height:auto;width:0%}.row>.offset-md-0{margin-left:0}.column>.col-md-0{height:0%;width:auto}.row>.col-md-1{height:auto;width:8.3333%}.row>.offset-md-1{margin-left:8.3333%}.column>.col-md-1{height:8.3333%;width:auto}.row>.col-md-2{height:auto;width:16.6667%}.row>.offset-md-2{margin-left:16.6667%}.column>.col-md-2{height:16.6667%;width:auto}.row>.col-md-3{height:auto;width:25%}.row>.offset-md-3{margin-left:25%}.column>.col-md-3{height:25%;width:auto}.row>.col-md-4{height:auto;width:33.3333%}.row>.offset-md-4{margin-left:33.3333%}.column>.col-md-4{height:33.3333%;width:auto}.row>.col-md-5{height:auto;width:41.6667%}.row>.offset-md-5{margin-left:41.6667%}.column>.col-md-5{height:41.6667%;width:auto}.row>.col-md-6{height:auto;width:50%}.row>.offset-md-6{margin-left:50%}.column>.col-md-6{height:50%;width:auto}.row>.col-md-7{height:auto;width:58.3333%}.row>.offset-md-7{margin-left:58.3333%}.column>.col-md-7{height:58.3333%;width:auto}.row>.col-md-8{height:auto;width:66.6667%}.row>.offset-md-8{margin-left:66.6667%}.column>.col-md-8{height:66.6667%;width:auto}.row>.col-md-9{height:auto;width:75%}.row>.offset-md-9{margin-left:75%}.column>.col-md-9{height:75%;width:auto}.row>.col-md-10{height:auto;width:83.3333%}.row>.offset-md-10{margin-left:83.3333%}.column>.col-md-10{height:83.3333%;width:auto}.row>.col-md-11{height:auto;width:91.6667%}.row>.offset-md-11{margin-left:91.6667%}.column>.col-md-11{height:91.6667%;width:auto}.row>.col-md-12{height:auto;width:100%}.row>.offset-md-12{margin-left:100%}.column>.col-md-12{height:100%;width:auto}}@media (min-width:1440px){.flex>.col-lg,.flex>.col-lg-0,.flex>.col-lg-1,.flex>.col-lg-10,.flex>.col-lg-11,.flex>.col-lg-12,.flex>.col-lg-2,.flex>.col-lg-3,.flex>.col-lg-4,.flex>.col-lg-5,.flex>.col-lg-6,.flex>.col-lg-7,.flex>.col-lg-8,.flex>.col-lg-9,.flex>.col-lg-auto,.flex>.col-lg-grow,.flex>.col-lg-shrink,.row>.col-lg,.row>.col-lg-0,.row>.col-lg-1,.row>.col-lg-10,.row>.col-lg-11,.row>.col-lg-12,.row>.col-lg-2,.row>.col-lg-3,.row>.col-lg-4,.row>.col-lg-5,.row>.col-lg-6,.row>.col-lg-7,.row>.col-lg-8,.row>.col-lg-9,.row>.col-lg-auto,.row>.col-lg-grow,.row>.col-lg-shrink{width:auto;min-width:0;max-width:100%}.column>.col-lg,.column>.col-lg-0,.column>.col-lg-1,.column>.col-lg-10,.column>.col-lg-11,.column>.col-lg-12,.column>.col-lg-2,.column>.col-lg-3,.column>.col-lg-4,.column>.col-lg-5,.column>.col-lg-6,.column>.col-lg-7,.column>.col-lg-8,.column>.col-lg-9,.column>.col-lg-auto,.column>.col-lg-grow,.column>.col-lg-shrink,.flex>.col-lg,.flex>.col-lg-0,.flex>.col-lg-1,.flex>.col-lg-10,.flex>.col-lg-11,.flex>.col-lg-12,.flex>.col-lg-2,.flex>.col-lg-3,.flex>.col-lg-4,.flex>.col-lg-5,.flex>.col-lg-6,.flex>.col-lg-7,.flex>.col-lg-8,.flex>.col-lg-9,.flex>.col-lg-auto,.flex>.col-lg-grow,.flex>.col-lg-shrink{height:auto;min-height:0;max-height:100%}.col-lg{flex:10000 1 0%}.col-lg-0,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto{flex:0 0 auto}.col-lg-grow{flex:1 0 auto}.col-lg-shrink{flex:0 1 auto}.row>.col-lg-0{height:auto;width:0%}.row>.offset-lg-0{margin-left:0}.column>.col-lg-0{height:0%;width:auto}.row>.col-lg-1{height:auto;width:8.3333%}.row>.offset-lg-1{margin-left:8.3333%}.column>.col-lg-1{height:8.3333%;width:auto}.row>.col-lg-2{height:auto;width:16.6667%}.row>.offset-lg-2{margin-left:16.6667%}.column>.col-lg-2{height:16.6667%;width:auto}.row>.col-lg-3{height:auto;width:25%}.row>.offset-lg-3{margin-left:25%}.column>.col-lg-3{height:25%;width:auto}.row>.col-lg-4{height:auto;width:33.3333%}.row>.offset-lg-4{margin-left:33.3333%}.column>.col-lg-4{height:33.3333%;width:auto}.row>.col-lg-5{height:auto;width:41.6667%}.row>.offset-lg-5{margin-left:41.6667%}.column>.col-lg-5{height:41.6667%;width:auto}.row>.col-lg-6{height:auto;width:50%}.row>.offset-lg-6{margin-left:50%}.column>.col-lg-6{height:50%;width:auto}.row>.col-lg-7{height:auto;width:58.3333%}.row>.offset-lg-7{margin-left:58.3333%}.column>.col-lg-7{height:58.3333%;width:auto}.row>.col-lg-8{height:auto;width:66.6667%}.row>.offset-lg-8{margin-left:66.6667%}.column>.col-lg-8{height:66.6667%;width:auto}.row>.col-lg-9{height:auto;width:75%}.row>.offset-lg-9{margin-left:75%}.column>.col-lg-9{height:75%;width:auto}.row>.col-lg-10{height:auto;width:83.3333%}.row>.offset-lg-10{margin-left:83.3333%}.column>.col-lg-10{height:83.3333%;width:auto}.row>.col-lg-11{height:auto;width:91.6667%}.row>.offset-lg-11{margin-left:91.6667%}.column>.col-lg-11{height:91.6667%;width:auto}.row>.col-lg-12{height:auto;width:100%}.row>.offset-lg-12{margin-left:100%}.column>.col-lg-12{height:100%;width:auto}}@media (min-width:1920px){.flex>.col-xl,.flex>.col-xl-0,.flex>.col-xl-1,.flex>.col-xl-10,.flex>.col-xl-11,.flex>.col-xl-12,.flex>.col-xl-2,.flex>.col-xl-3,.flex>.col-xl-4,.flex>.col-xl-5,.flex>.col-xl-6,.flex>.col-xl-7,.flex>.col-xl-8,.flex>.col-xl-9,.flex>.col-xl-auto,.flex>.col-xl-grow,.flex>.col-xl-shrink,.row>.col-xl,.row>.col-xl-0,.row>.col-xl-1,.row>.col-xl-10,.row>.col-xl-11,.row>.col-xl-12,.row>.col-xl-2,.row>.col-xl-3,.row>.col-xl-4,.row>.col-xl-5,.row>.col-xl-6,.row>.col-xl-7,.row>.col-xl-8,.row>.col-xl-9,.row>.col-xl-auto,.row>.col-xl-grow,.row>.col-xl-shrink{width:auto;min-width:0;max-width:100%}.column>.col-xl,.column>.col-xl-0,.column>.col-xl-1,.column>.col-xl-10,.column>.col-xl-11,.column>.col-xl-12,.column>.col-xl-2,.column>.col-xl-3,.column>.col-xl-4,.column>.col-xl-5,.column>.col-xl-6,.column>.col-xl-7,.column>.col-xl-8,.column>.col-xl-9,.column>.col-xl-auto,.column>.col-xl-grow,.column>.col-xl-shrink,.flex>.col-xl,.flex>.col-xl-0,.flex>.col-xl-1,.flex>.col-xl-10,.flex>.col-xl-11,.flex>.col-xl-12,.flex>.col-xl-2,.flex>.col-xl-3,.flex>.col-xl-4,.flex>.col-xl-5,.flex>.col-xl-6,.flex>.col-xl-7,.flex>.col-xl-8,.flex>.col-xl-9,.flex>.col-xl-auto,.flex>.col-xl-grow,.flex>.col-xl-shrink{height:auto;min-height:0;max-height:100%}.col-xl{flex:10000 1 0%}.col-xl-0,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{flex:0 0 auto}.col-xl-grow{flex:1 0 auto}.col-xl-shrink{flex:0 1 auto}.row>.col-xl-0{height:auto;width:0%}.row>.offset-xl-0{margin-left:0}.column>.col-xl-0{height:0%;width:auto}.row>.col-xl-1{height:auto;width:8.3333%}.row>.offset-xl-1{margin-left:8.3333%}.column>.col-xl-1{height:8.3333%;width:auto}.row>.col-xl-2{height:auto;width:16.6667%}.row>.offset-xl-2{margin-left:16.6667%}.column>.col-xl-2{height:16.6667%;width:auto}.row>.col-xl-3{height:auto;width:25%}.row>.offset-xl-3{margin-left:25%}.column>.col-xl-3{height:25%;width:auto}.row>.col-xl-4{height:auto;width:33.3333%}.row>.offset-xl-4{margin-left:33.3333%}.column>.col-xl-4{height:33.3333%;width:auto}.row>.col-xl-5{height:auto;width:41.6667%}.row>.offset-xl-5{margin-left:41.6667%}.column>.col-xl-5{height:41.6667%;width:auto}.row>.col-xl-6{height:auto;width:50%}.row>.offset-xl-6{margin-left:50%}.column>.col-xl-6{height:50%;width:auto}.row>.col-xl-7{height:auto;width:58.3333%}.row>.offset-xl-7{margin-left:58.3333%}.column>.col-xl-7{height:58.3333%;width:auto}.row>.col-xl-8{height:auto;width:66.6667%}.row>.offset-xl-8{margin-left:66.6667%}.column>.col-xl-8{height:66.6667%;width:auto}.row>.col-xl-9{height:auto;width:75%}.row>.offset-xl-9{margin-left:75%}.column>.col-xl-9{height:75%;width:auto}.row>.col-xl-10{height:auto;width:83.3333%}.row>.offset-xl-10{margin-left:83.3333%}.column>.col-xl-10{height:83.3333%;width:auto}.row>.col-xl-11{height:auto;width:91.6667%}.row>.offset-xl-11{margin-left:91.6667%}.column>.col-xl-11{height:91.6667%;width:auto}.row>.col-xl-12{height:auto;width:100%}.row>.offset-xl-12{margin-left:100%}.column>.col-xl-12{height:100%;width:auto}}.rounded-borders{border-radius:4px}.border-radius-inherit{border-radius:inherit}.no-transition{transition:none!important}.transition-0{transition:0s!important}.glossy{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-placeholder::placeholder{color:inherit;opacity:.7}.q-body--fullscreen-mixin,.q-body--prevent-scroll{position:fixed!important}.q-body--force-scrollbar-x{overflow-x:scroll}.q-body--force-scrollbar-y{overflow-y:scroll}.q-no-input-spinner{-moz-appearance:textfield!important}.q-no-input-spinner::-webkit-inner-spin-button,.q-no-input-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.q-link{outline:0;text-decoration:none}.q-link--focusable:focus-visible{-webkit-text-decoration:underline dashed currentColor 1px;text-decoration:underline dashed currentColor 1px}body.electron .q-electron-drag{-webkit-user-select:none;-webkit-app-region:drag}body.electron .q-electron-drag .q-btn-item,body.electron .q-electron-drag--exception{-webkit-app-region:no-drag}img.responsive{max-width:100%;height:auto}.non-selectable{-webkit-user-select:none!important;user-select:none!important}.scroll,body.mobile .scroll--mobile{overflow:auto}.scroll,.scroll-x,.scroll-y{-webkit-overflow-scrolling:touch;will-change:scroll-position}.scroll-x{overflow-x:auto}.scroll-y{overflow-y:auto}.no-scroll{overflow:hidden!important}.no-pointer-events,.no-pointer-events--children,.no-pointer-events--children *{pointer-events:none!important}.all-pointer-events{pointer-events:all!important}.cursor-pointer{cursor:pointer!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-inherit{cursor:inherit!important}.cursor-none{cursor:none!important}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true]{cursor:default}.rotate-45{transform:rotate(45deg)}.rotate-90{transform:rotate(90deg)}.rotate-135{transform:rotate(135deg)}.rotate-180{transform:rotate(180deg)}.rotate-225{transform:rotate(225deg)}.rotate-270{transform:rotate(270deg)}.rotate-315{transform:rotate(315deg)}.flip-horizontal{transform:scaleX(-1)}.flip-vertical{transform:scaleY(-1)}.float-left{float:left}.float-right{float:right}.relative-position{position:relative}.fixed,.fixed-bottom,.fixed-bottom-left,.fixed-bottom-right,.fixed-center,.fixed-full,.fixed-left,.fixed-right,.fixed-top,.fixed-top-left,.fixed-top-right,.fullscreen{position:fixed}.absolute,.absolute-bottom,.absolute-bottom-left,.absolute-bottom-right,.absolute-center,.absolute-full,.absolute-left,.absolute-right,.absolute-top,.absolute-top-left,.absolute-top-right{position:absolute}.absolute-top,.fixed-top{top:0;left:0;right:0}.absolute-right,.fixed-right{top:0;right:0;bottom:0}.absolute-bottom,.fixed-bottom{right:0;bottom:0;left:0}.absolute-left,.fixed-left{top:0;bottom:0;left:0}.absolute-top-left,.fixed-top-left{top:0;left:0}.absolute-top-right,.fixed-top-right{top:0;right:0}.absolute-bottom-left,.fixed-bottom-left{bottom:0;left:0}.absolute-bottom-right,.fixed-bottom-right{bottom:0;right:0}.fullscreen{z-index:6000;border-radius:0!important;max-width:100vw;max-height:100vh}body.q-ios-padding .fullscreen{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}.absolute-full,.fixed-full,.fullscreen{top:0;right:0;bottom:0;left:0}.absolute-center,.fixed-center{top:50%;left:50%;transform:translate(-50%,-50%)}.vertical-top{vertical-align:top!important}.vertical-middle{vertical-align:middle!important}.vertical-bottom{vertical-align:bottom!important}.on-left{margin-right:12px}.on-right{margin-left:12px}.q-position-engine{margin-top:var(--q-pe-top,0)!important;margin-left:var(--q-pe-left,0)!important;will-change:auto;visibility:collapse}:root{--q-size-xs:0;--q-size-sm:600px;--q-size-md:1024px;--q-size-lg:1440px;--q-size-xl:1920px}.fit{width:100%!important;height:100%!important}.full-height{height:100%!important}.full-width{width:100%!important;margin-left:0!important;margin-right:0!important}.window-height{margin-top:0!important;margin-bottom:0!important;height:100vh!important}.window-width{margin-left:0!important;margin-right:0!important;width:100vw!important}.block{display:block!important}.inline-block{display:inline-block!important}.q-pa-none{padding:0 0}.q-pl-none{padding-left:0}.q-pr-none{padding-right:0}.q-pt-none{padding-top:0}.q-pb-none{padding-bottom:0}.q-px-none{padding-left:0;padding-right:0}.q-py-none{padding-top:0;padding-bottom:0}.q-ma-none{margin:0 0}.q-ml-none{margin-left:0}.q-mr-none{margin-right:0}.q-mt-none{margin-top:0}.q-mb-none{margin-bottom:0}.q-mx-none{margin-left:0;margin-right:0}.q-my-none{margin-top:0;margin-bottom:0}.q-pa-xs{padding:4px 4px}.q-pl-xs{padding-left:4px}.q-pr-xs{padding-right:4px}.q-pt-xs{padding-top:4px}.q-pb-xs{padding-bottom:4px}.q-px-xs{padding-left:4px;padding-right:4px}.q-py-xs{padding-top:4px;padding-bottom:4px}.q-ma-xs{margin:4px 4px}.q-ml-xs{margin-left:4px}.q-mr-xs{margin-right:4px}.q-mt-xs{margin-top:4px}.q-mb-xs{margin-bottom:4px}.q-mx-xs{margin-left:4px;margin-right:4px}.q-my-xs{margin-top:4px;margin-bottom:4px}.q-pa-sm{padding:8px 8px}.q-pl-sm{padding-left:8px}.q-pr-sm{padding-right:8px}.q-pt-sm{padding-top:8px}.q-pb-sm{padding-bottom:8px}.q-px-sm{padding-left:8px;padding-right:8px}.q-py-sm{padding-top:8px;padding-bottom:8px}.q-ma-sm{margin:8px 8px}.q-ml-sm{margin-left:8px}.q-mr-sm{margin-right:8px}.q-mt-sm{margin-top:8px}.q-mb-sm{margin-bottom:8px}.q-mx-sm{margin-left:8px;margin-right:8px}.q-my-sm{margin-top:8px;margin-bottom:8px}.q-pa-md{padding:16px 16px}.q-pl-md{padding-left:16px}.q-pr-md{padding-right:16px}.q-pt-md{padding-top:16px}.q-pb-md{padding-bottom:16px}.q-px-md{padding-left:16px;padding-right:16px}.q-py-md{padding-top:16px;padding-bottom:16px}.q-ma-md{margin:16px 16px}.q-ml-md{margin-left:16px}.q-mr-md{margin-right:16px}.q-mt-md{margin-top:16px}.q-mb-md{margin-bottom:16px}.q-mx-md{margin-left:16px;margin-right:16px}.q-my-md{margin-top:16px;margin-bottom:16px}.q-pa-lg{padding:24px 24px}.q-pl-lg{padding-left:24px}.q-pr-lg{padding-right:24px}.q-pt-lg{padding-top:24px}.q-pb-lg{padding-bottom:24px}.q-px-lg{padding-left:24px;padding-right:24px}.q-py-lg{padding-top:24px;padding-bottom:24px}.q-ma-lg{margin:24px 24px}.q-ml-lg{margin-left:24px}.q-mr-lg{margin-right:24px}.q-mt-lg{margin-top:24px}.q-mb-lg{margin-bottom:24px}.q-mx-lg{margin-left:24px;margin-right:24px}.q-my-lg{margin-top:24px;margin-bottom:24px}.q-pa-xl{padding:48px 48px}.q-pl-xl{padding-left:48px}.q-pr-xl{padding-right:48px}.q-pt-xl{padding-top:48px}.q-pb-xl{padding-bottom:48px}.q-px-xl{padding-left:48px;padding-right:48px}.q-py-xl{padding-top:48px;padding-bottom:48px}.q-ma-xl{margin:48px 48px}.q-ml-xl{margin-left:48px}.q-mr-xl{margin-right:48px}.q-mt-xl{margin-top:48px}.q-mb-xl{margin-bottom:48px}.q-mx-xl{margin-left:48px;margin-right:48px}.q-my-xl{margin-top:48px;margin-bottom:48px}.q-mt-auto,.q-my-auto{margin-top:auto}.q-ml-auto{margin-left:auto}.q-mb-auto,.q-my-auto{margin-bottom:auto}.q-mr-auto{margin-right:auto}.q-mx-auto{margin-left:auto;margin-right:auto}.q-touch{-webkit-user-select:none;user-select:none;user-drag:none;-khtml-user-drag:none;-webkit-user-drag:none}.q-touch-x{touch-action:pan-x}.q-touch-y{touch-action:pan-y}:root{--q-transition-duration:.3s}.q-transition--fade-enter-active,.q-transition--fade-leave-active,.q-transition--flip-enter-active,.q-transition--flip-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--rotate-enter-active,.q-transition--rotate-leave-active,.q-transition--scale-enter-active,.q-transition--scale-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active{--q-transition-duration:.3s;--q-transition-easing:cubic-bezier(0.215,0.61,0.355,1)}.q-transition--fade-leave-active,.q-transition--flip-leave-active,.q-transition--jump-down-leave-active,.q-transition--jump-left-leave-active,.q-transition--jump-right-leave-active,.q-transition--jump-up-leave-active,.q-transition--rotate-leave-active,.q-transition--scale-leave-active,.q-transition--slide-down-leave-active,.q-transition--slide-left-leave-active,.q-transition--slide-right-leave-active,.q-transition--slide-up-leave-active{position:absolute}.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active{transition:transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--slide-right-enter-from{transform:translate3d(-100%,0,0)}.q-transition--slide-right-leave-to{transform:translate3d(100%,0,0)}.q-transition--slide-left-enter-from{transform:translate3d(100%,0,0)}.q-transition--slide-left-leave-to{transform:translate3d(-100%,0,0)}.q-transition--slide-up-enter-from{transform:translate3d(0,100%,0)}.q-transition--slide-up-leave-to{transform:translate3d(0,-100%,0)}.q-transition--slide-down-enter-from{transform:translate3d(0,-100%,0)}.q-transition--slide-down-leave-to{transform:translate3d(0,100%,0)}.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration)}.q-transition--jump-down-enter-from,.q-transition--jump-down-leave-to,.q-transition--jump-left-enter-from,.q-transition--jump-left-leave-to,.q-transition--jump-right-enter-from,.q-transition--jump-right-leave-to,.q-transition--jump-up-enter-from,.q-transition--jump-up-leave-to{opacity:0}.q-transition--jump-right-enter-from{transform:translate3d(-15px,0,0)}.q-transition--jump-right-leave-to{transform:translate3d(15px,0,0)}.q-transition--jump-left-enter-from{transform:translate3d(15px,0,0)}.q-transition--jump-left-leave-to{transform:translateX(-15px)}.q-transition--jump-up-enter-from{transform:translate3d(0,15px,0)}.q-transition--jump-up-leave-to{transform:translate3d(0,-15px,0)}.q-transition--jump-down-enter-from{transform:translate3d(0,-15px,0)}.q-transition--jump-down-leave-to{transform:translate3d(0,15px,0)}.q-transition--fade-enter-active,.q-transition--fade-leave-active{transition:opacity var(--q-transition-duration) ease-out}.q-transition--fade-enter-from,.q-transition--fade-leave-to{opacity:0}.q-transition--scale-enter-active,.q-transition--scale-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--scale-enter-from,.q-transition--scale-leave-to{opacity:0;transform:scale3d(0,0,1)}.q-transition--rotate-enter-active,.q-transition--rotate-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing);transform-style:preserve-3d}.q-transition--rotate-enter-from,.q-transition--rotate-leave-to{opacity:0;transform:scale3d(0,0,1) rotate3d(0,0,1,90deg)}.q-transition--flip-down-enter-active,.q-transition--flip-down-leave-active,.q-transition--flip-left-enter-active,.q-transition--flip-left-leave-active,.q-transition--flip-right-enter-active,.q-transition--flip-right-leave-active,.q-transition--flip-up-enter-active,.q-transition--flip-up-leave-active{transition:transform var(--q-transition-duration);backface-visibility:hidden}.q-transition--flip-down-enter-to,.q-transition--flip-down-leave-from,.q-transition--flip-left-enter-to,.q-transition--flip-left-leave-from,.q-transition--flip-right-enter-to,.q-transition--flip-right-leave-from,.q-transition--flip-up-enter-to,.q-transition--flip-up-leave-from{transform:perspective(400px) rotate3d(1,1,0,0deg)}.q-transition--flip-right-enter-from{transform:perspective(400px) rotate3d(0,1,0,-180deg)}.q-transition--flip-right-leave-to{transform:perspective(400px) rotate3d(0,1,0,180deg)}.q-transition--flip-left-enter-from{transform:perspective(400px) rotate3d(0,1,0,180deg)}.q-transition--flip-left-leave-to{transform:perspective(400px) rotate3d(0,1,0,-180deg)}.q-transition--flip-up-enter-from{transform:perspective(400px) rotate3d(1,0,0,-180deg)}.q-transition--flip-up-leave-to{transform:perspective(400px) rotate3d(1,0,0,180deg)}.q-transition--flip-down-enter-from{transform:perspective(400px) rotate3d(1,0,0,180deg)}.q-transition--flip-down-leave-to{transform:perspective(400px) rotate3d(1,0,0,-180deg)}body{min-width:100px;min-height:100%;font-family:Roboto,"-apple-system","Helvetica Neue",Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:antialiased;line-height:1.5;font-size:14px}h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}p{margin:0 0 16px}.text-h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}.text-h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}.text-h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}.text-h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}.text-h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}.text-h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.text-subtitle1{font-size:1rem;font-weight:400;line-height:1.75rem;letter-spacing:.00937em}.text-subtitle2{font-size:.875rem;font-weight:500;line-height:1.375rem;letter-spacing:.00714em}.text-body1{font-size:1rem;font-weight:400;line-height:1.5rem;letter-spacing:.03125em}.text-body2{font-size:.875rem;font-weight:400;line-height:1.25rem;letter-spacing:.01786em}.text-overline{font-size:.75rem;font-weight:500;line-height:2rem;letter-spacing:.16667em}.text-caption{font-size:.75rem;font-weight:400;line-height:1.25rem;letter-spacing:.03333em}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-justify{text-align:justify;-webkit-hyphens:auto;hyphens:auto}.text-italic{font-style:italic}.text-bold{font-weight:700}.text-no-wrap{white-space:nowrap}.text-strike{text-decoration:line-through}.text-weight-thin{font-weight:100}.text-weight-light{font-weight:300}.text-weight-regular{font-weight:400}.text-weight-medium{font-weight:500}.text-weight-bold{font-weight:700}.text-weight-bolder{font-weight:900}small{font-size:80%}big{font-size:170%}sub{bottom:-.25em}sup{top:-.5em}.no-margin{margin:0!important}.no-padding{padding:0!important}.no-border{border:0!important}.no-border-radius{border-radius:0!important}.no-box-shadow{box-shadow:none!important}.no-outline{outline:0!important}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ellipsis-2-lines,.ellipsis-3-lines{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.ellipsis-2-lines{-webkit-line-clamp:2}.ellipsis-3-lines{-webkit-line-clamp:3}.readonly{cursor:default!important}.disabled,.disabled *,[disabled],[disabled] *{outline:0!important;cursor:not-allowed!important}.disabled,[disabled]{opacity:.6!important}.hidden{display:none!important}.invisible,.invisible *{visibility:hidden!important;transition:none!important;animation:none!important}.transparent{background:0 0!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-hidden-y{overflow-y:hidden!important}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{width:0;height:0;display:none}.dimmed:after,.light-dimmed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.dimmed:after{background:rgba(0,0,0,.4)!important}.light-dimmed:after{background:rgba(255,255,255,.6)!important}.z-top{z-index:7000!important}.z-max{z-index:9998!important}body.desktop .desktop-hide,body:not(.desktop) .desktop-only{display:none!important}body.mobile .mobile-hide,body:not(.mobile) .mobile-only{display:none!important}body.native-mobile .native-mobile-hide,body:not(.native-mobile) .native-mobile-only{display:none!important}body.cordova .cordova-hide,body:not(.cordova) .cordova-only{display:none!important}body.capacitor .capacitor-hide,body:not(.capacitor) .capacitor-only{display:none!important}body.electron .electron-hide,body:not(.electron) .electron-only{display:none!important}body.touch .touch-hide,body:not(.touch) .touch-only{display:none!important}body.within-iframe .within-iframe-hide,body:not(.within-iframe) .within-iframe-only{display:none!important}body.platform-ios .platform-ios-hide,body:not(.platform-ios) .platform-ios-only{display:none!important}body.platform-android .platform-android-hide,body:not(.platform-android) .platform-android-only{display:none!important}@media all and (orientation:portrait){.orientation-landscape{display:none!important}}@media all and (orientation:landscape){.orientation-portrait{display:none!important}}@media screen{.print-only{display:none!important}}@media print{.print-hide{display:none!important}}@media (max-width:599.98px){.gt-lg,.gt-md,.gt-sm,.gt-xs,.lg,.md,.sm,.xl,.xs-hide{display:none!important}}@media (min-width:600px) and (max-width:1023.98px){.gt-lg,.gt-md,.gt-sm,.lg,.lt-sm,.md,.sm-hide,.xl,.xs{display:none!important}}@media (min-width:1024px) and (max-width:1439.98px){.gt-lg,.gt-md,.lg,.lt-md,.lt-sm,.md-hide,.sm,.xl,.xs{display:none!important}}@media (min-width:1440px) and (max-width:1919.98px){.gt-lg,.lg-hide,.lt-lg,.lt-md,.lt-sm,.md,.sm,.xl,.xs{display:none!important}}@media (min-width:1920px){.lg,.lt-lg,.lt-md,.lt-sm,.lt-xl,.md,.sm,.xl-hide,.xs{display:none!important}}.q-focus-helper,.q-focusable,.q-hoverable,.q-manual-focusable{outline:0}body.desktop .q-focus-helper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:inherit;opacity:0;transition:background-color .3s cubic-bezier(.25, .8, .5, 1),opacity .4s cubic-bezier(.25, .8, .5, 1)}body.desktop .q-focus-helper:after,body.desktop .q-focus-helper:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;border-radius:inherit;transition:background-color .3s cubic-bezier(.25, .8, .5, 1),opacity .6s cubic-bezier(.25, .8, .5, 1)}body.desktop .q-focus-helper:before{background:#000}body.desktop .q-focus-helper:after{background:#fff}body.desktop .q-focus-helper--rounded{border-radius:4px}body.desktop .q-focus-helper--round{border-radius:50%}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-hoverable:hover>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper{background:currentColor;opacity:.15}body.desktop .q-focusable:focus>.q-focus-helper:before,body.desktop .q-hoverable:hover>.q-focus-helper:before,body.desktop .q-manual-focusable--focused>.q-focus-helper:before{opacity:.1}body.desktop .q-focusable:focus>.q-focus-helper:after,body.desktop .q-hoverable:hover>.q-focus-helper:after,body.desktop .q-manual-focusable--focused>.q-focus-helper:after{opacity:.4}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper{opacity:.22}body.body--dark{color:#fff;background:var(--q-dark-page)}.q-dark{color:#fff;background:var(--q-dark)}body[data-theme=classic].neon-border .q-card,body[data-theme=classic].neon-border .q-card.q-card--dark,body[data-theme=classic].neon-border .q-date,body[data-theme=classic].neon-border .q-date--dark{border:2px solid #673ab7;box-shadow:none}body[data-theme=bitcoin].neon-border .q-card,body[data-theme=bitcoin].neon-border .q-card.q-card--dark,body[data-theme=bitcoin].neon-border .q-date,body[data-theme=bitcoin].neon-border .q-date--dark{border:2px solid #ea611d;box-shadow:none}body[data-theme=freedom].neon-border .q-card,body[data-theme=freedom].neon-border .q-card.q-card--dark,body[data-theme=freedom].neon-border .q-date,body[data-theme=freedom].neon-border .q-date--dark{border:2px solid #e22156;box-shadow:none}body[data-theme=cyber].neon-border .q-card,body[data-theme=cyber].neon-border .q-card.q-card--dark,body[data-theme=cyber].neon-border .q-date,body[data-theme=cyber].neon-border .q-date--dark{border:2px solid #7cb342;box-shadow:none}body[data-theme=mint].neon-border .q-card,body[data-theme=mint].neon-border .q-card.q-card--dark,body[data-theme=mint].neon-border .q-date,body[data-theme=mint].neon-border .q-date--dark{border:2px solid #3ab77d;box-shadow:none}body[data-theme=autumn].neon-border .q-card,body[data-theme=autumn].neon-border .q-card.q-card--dark,body[data-theme=autumn].neon-border .q-date,body[data-theme=autumn].neon-border .q-date--dark{border:2px solid #b7763a;box-shadow:none}body[data-theme=flamingo].neon-border .q-card,body[data-theme=flamingo].neon-border .q-card.q-card--dark,body[data-theme=flamingo].neon-border .q-date,body[data-theme=flamingo].neon-border .q-date--dark{border:2px solid #f0f;box-shadow:none}body[data-theme=monochrome].neon-border .q-card,body[data-theme=monochrome].neon-border .q-card.q-card--dark,body[data-theme=monochrome].neon-border .q-date,body[data-theme=monochrome].neon-border .q-date--dark{border:2px solid #494949;box-shadow:none}body[data-theme=salvador].neon-border .q-card,body[data-theme=salvador].neon-border .q-card.q-card--dark,body[data-theme=salvador].neon-border .q-date,body[data-theme=salvador].neon-border .q-date--dark{border:2px solid #1976d2;box-shadow:none}body.hard-border .q-card,body.hard-border .q-card.q-card--dark,body.hard-border .q-date,body.hard-border .q-date--dark{box-shadow:0 0 0 1px rgba(0,0,0,.12),0 0 0 1px rgba(255,255,255,.2784313725);border:none}body.retro-border .q-card,body.retro-border .q-card.q-card--dark,body.retro-border .q-date,body.retro-border .q-date--dark{border:none;box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}body.no-border .q-card,body.no-border .q-card.q-card--dark,body.no-border .q-date,body.no-border .q-date--dark{border:none;box-shadow:none}body[data-theme=classic]{--q-primary:#673ab7;--q-secondary:#9c27b0;--q-dark-page:#1f2234}body[data-theme=classic] [data-theme=classic] .q-card--dark,body[data-theme=classic] [data-theme=classic] .q-stepper--dark{background:#333646!important}body[data-theme=bitcoin]{--q-primary:#ea611d;--q-secondary:#e56f35;--q-dark-page:#2d293b}body[data-theme=bitcoin] [data-theme=bitcoin] .q-card--dark,body[data-theme=bitcoin] [data-theme=bitcoin] .q-stepper--dark{background:#333646!important}body[data-theme=freedom]{--q-primary:#e22156;--q-secondary:#b91a45;--q-dark-page:#462f36}body[data-theme=freedom] [data-theme=freedom] .q-card--dark,body[data-theme=freedom] [data-theme=freedom] .q-stepper--dark{background:#47393d!important}body[data-theme=cyber]{--q-primary:#7cb342;--q-secondary:#558b2f;--q-dark-page:#000}body[data-theme=cyber] [data-theme=cyber] .q-card--dark,body[data-theme=cyber] [data-theme=cyber] .q-stepper--dark{background:#1f2915!important}body[data-theme=mint]{--q-primary:#3ab77d;--q-secondary:#27b065;--q-dark-page:#1f342b}body[data-theme=mint] [data-theme=mint] .q-card--dark,body[data-theme=mint] [data-theme=mint] .q-stepper--dark{background:#334642!important}body[data-theme=autumn]{--q-primary:#b7763a;--q-secondary:#b07927;--q-dark-page:#34291f}body[data-theme=autumn] [data-theme=autumn] .q-card--dark,body[data-theme=autumn] [data-theme=autumn] .q-stepper--dark{background:#463f33!important}body[data-theme=flamingo]{--q-primary:#ff00ff;--q-secondary:#fda3fd;--q-dark-page:#2f032f}body[data-theme=flamingo] [data-theme=flamingo] .q-card--dark,body[data-theme=flamingo] [data-theme=flamingo] .q-stepper--dark{background:#bc23bc!important}body[data-theme=monochrome]{--q-primary:#494949;--q-secondary:#6b6b6b;--q-dark-page:#000}body[data-theme=monochrome] [data-theme=monochrome] .q-card--dark,body[data-theme=monochrome] [data-theme=monochrome] .q-stepper--dark{background:#272727!important}body[data-theme=salvador]{--q-primary:#1976d2;--q-secondary:#26a69a;--q-dark-page:#253647}body[data-theme=salvador] [data-theme=salvador] .q-card--dark,body[data-theme=salvador] [data-theme=salvador] .q-stepper--dark{background:#343d47!important}body.gradient-bg{background-image:linear-gradient(to bottom right,#fff,var(--q-primary));background-attachment:fixed}body.gradient-bg.body--dark{background-image:linear-gradient(to bottom right,var(--q-dark-page),#0a0a0a);background-attachment:fixed}body.bg-image::before{content:"";position:fixed;z-index:-1;top:0;left:0;width:100%;height:100%;filter:blur(8px);background-image:var(--background);background-size:cover;background-position:center;background-repeat:no-repeat}body.bg-image .q-page-container{backdrop-filter:none}body.body--dark .q-card:not(.q-dialog .q-card,.lnbits__dialog-card,.q-dialog-plugin--dark),body.body--dark .q-drawer,body.body--dark .q-header{--q-dark:rgba(29, 29, 29, 0.3);background-color:var(--q-dark)}:root{--size:100px;--gap:25px}.home .wrapper{display:flex;flex-direction:column;gap:var(--gap);margin:auto;max-width:100%}.home .marquee{display:flex;overflow:hidden;user-select:none;gap:var(--gap);height:max-content;mask-image:linear-gradient(to right,hsla(0,0%,0%,0),hsl(0,0%,0%) 20%,hsl(0,0%,0%) 80%,hsla(0,0%,0%,0))}.home .marquee__group{flex-shrink:0;display:flex;align-items:center;justify-content:space-around;gap:var(--gap);min-width:100%;animation:scroll-x 60s linear infinite}.home .marquee:hover .marquee__group{animation-play-state:paused}.home .marquee__group div{width:var(--size)}@keyframes scroll-x{from{transform:translateX(0)}to{transform:translateX(calc(-100% - var(--gap)))}}[v-cloak]{display:none}body.body--dark .q-table--dark{background:0 0}body.body--dark .q-field--error .q-field__messages,body.body--dark .q-field--error .text-negative{color:#ff0!important}.lnbits-drawer__q-list .q-item{padding-top:5px!important;padding-bottom:5px!important;border-top-right-radius:3px;border-bottom-right-radius:3px}.lnbits-drawer__q-list .q-item.q-item--active{color:inherit;font-weight:700}.lnbits__dialog-card{width:500px}.blur-and-disable{filter:blur(4px);pointer-events:none;user-select:none;opacity:.6}.lnbits__table-bordered td,.lnbits__table-bordered th{border:1px solid #000;border-collapse:collapse}.q-table--dense .q-table__bottom,.q-table--dense td:first-child,.q-table--dense th:first-child{padding-left:6px!important}.q-table--dense .q-table__bottom,.q-table--dense td:last-child,.q-table--dense th:last-child{padding-right:6px!important}a.inherit{color:inherit;text-decoration:none}video{border-radius:3px}.material-icons{font-family:"Material Icons";font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-moz-font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale}.q-rating__icon{font-size:1em}.text-wrap{word-break:break-word}.q-card code{overflow-wrap:break-word}.qrcode__wrapper{position:relative;display:flex;align-items:center;justify-content:center;margin:0 auto}.qrcode__wrapper canvas{width:100%!important;height:100%!important;max-width:320px}.qrcode__image{position:absolute;max-width:52px;width:15%;overflow:hidden;background:#fff;overflow:hidden;padding:.2rem;border-radius:.2rem}.whitespace-pre-line{white-space:pre-line}.q-carousel__slide{background-size:contain;background-repeat:no-repeat}.q-dialog__inner--minimized{padding:12px}.first-install{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%}.first-install .grid{display:block}.first-install .hero-wrapper{display:none}.first-install .hero{display:block;height:100%;max-width:250px;background-image:url(/static/images/logos/lnbits.svg);background-position:center;background-size:contain;background-repeat:no-repeat}@media (min-width:992px){.first-install .grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem}.first-install .hero-wrapper{display:block;position:relative;height:100%;padding:1rem}}.wallet-list-card{margin-top:1px;margin-right:1rem}.wallet-list-card:first-child{margin-left:1px}@media (max-width:1024px){.wallet-card{background:0 0!important;box-shadow:none!important;border:none!important}.mobile-simple .wallet-wrapper{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important}.mobile-simple .wallet-card{width:90%!important}}.error-code{font-size:clamp(15vh, 20vw, 30vh)}.error-message{font-size:clamp(1.5rem, 3vw, 3.75rem);font-weight:300;opacity:.4} +*,:after,:before{box-sizing:inherit;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent}#q-app,body,html{width:100%;direction:ltr}body.platform-ios.within-iframe,body.platform-ios.within-iframe #q-app{width:100px;min-width:100%}body,html{margin:0;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}img{border-style:none}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;font-family:inherit;margin:0}optgroup{font-weight:700}button,input,select{overflow:visible;text-transform:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button:-moz-focusring,input:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.q-icon{line-height:1;width:1em;height:1em;flex-shrink:0;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;text-align:center;position:relative;box-sizing:content-box;fill:currentColor}.q-icon:after,.q-icon:before{width:100%;height:100%;display:flex!important;align-items:center;justify-content:center}.q-icon>img,.q-icon>svg{width:100%;height:100%}.q-icon>div{box-sizing:border-box}.material-icons,.material-icons-outlined,.material-icons-round,.material-icons-sharp,.material-symbols-outlined,.material-symbols-rounded,.material-symbols-sharp,.q-icon{-webkit-user-select:none;user-select:none;cursor:inherit;font-size:inherit;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.q-panel{height:100%;width:100%}.q-panel>div{height:100%;width:100%}.q-panel-parent{overflow:hidden;position:relative}.q-loading-bar{position:fixed;z-index:9998;transition:transform .5s cubic-bezier(0, 0, .2, 1),opacity .5s;background:#f44336}.q-loading-bar--top{left:0;right:0;top:0;width:100%}.q-loading-bar--bottom{left:0;right:0;bottom:0;width:100%}.q-loading-bar--right{top:0;bottom:0;right:0;height:100%}.q-loading-bar--left{top:0;bottom:0;left:0;height:100%}.q-avatar{position:relative;vertical-align:middle;display:inline-block;border-radius:50%;font-size:48px;height:1em;width:1em}.q-avatar__content{font-size:.5em;line-height:.5em}.q-avatar img:not(.q-icon):not(.q-img__image),.q-avatar__content{border-radius:inherit;height:inherit;width:inherit}.q-avatar--square{border-radius:0}.q-badge{background-color:var(--q-primary);color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;line-height:1;min-height:12px;font-weight:400;vertical-align:baseline}.q-badge--single-line{white-space:nowrap}.q-badge--multi-line{word-break:break-all;word-wrap:break-word}.q-badge--floating{position:absolute;top:-4px;right:-3px;cursor:inherit}.q-badge--transparent{opacity:.8}.q-badge--outline{background-color:transparent;border:1px solid currentColor}.q-badge--rounded{border-radius:1em}.q-banner{min-height:54px;padding:8px 16px;background:#fff}.q-banner--top-padding{padding-top:14px}.q-banner__avatar{min-width:1px!important}.q-banner__avatar>.q-avatar{font-size:46px}.q-banner__avatar>.q-icon{font-size:40px}.q-banner__avatar:not(:empty)+.q-banner__content{padding-left:16px}.q-banner__actions.col-auto{padding-left:16px}.q-banner__actions.col-all .q-btn-item{margin:4px 0 0 4px}.q-banner--dense{min-height:32px;padding:8px}.q-banner--dense.q-banner--top-padding{padding-top:12px}.q-banner--dense .q-banner__avatar>.q-avatar,.q-banner--dense .q-banner__avatar>.q-icon{font-size:28px}.q-banner--dense .q-banner__avatar:not(:empty)+.q-banner__content{padding-left:8px}.q-banner--dense .q-banner__actions.col-auto{padding-left:8px}.q-bar{background:rgba(0,0,0,.2)}.q-bar>.q-icon{margin-left:2px}.q-bar>div,.q-bar>div+.q-icon{margin-left:8px}.q-bar>.q-btn{margin-left:2px}.q-bar>.q-btn:first-child,.q-bar>.q-icon:first-child,.q-bar>div:first-child{margin-left:0}.q-bar--standard{padding:0 12px;height:32px;font-size:18px}.q-bar--standard>div{font-size:16px}.q-bar--standard .q-btn{font-size:11px}.q-bar--dense{padding:0 8px;height:24px;font-size:14px}.q-bar--dense .q-btn{font-size:8px}.q-bar--dark{background:rgba(255,255,255,.15)}.q-breadcrumbs__el{color:inherit}.q-breadcrumbs__el-icon{font-size:125%}.q-breadcrumbs__el-icon--with-label{margin-right:8px}[dir=rtl] .q-breadcrumbs__separator .q-icon{transform:scaleX(-1)}.q-btn{display:inline-flex;flex-direction:column;align-items:stretch;position:relative;outline:0;border:0;vertical-align:middle;font-size:14px;line-height:1.715em;text-decoration:none;color:inherit;background:0 0;font-weight:500;text-transform:uppercase;text-align:center;width:auto;height:auto;cursor:default;padding:4px 16px;min-height:2.572em}.q-btn .q-icon,.q-btn .q-spinner{font-size:1.715em}.q-btn.disabled{opacity:.7!important}.q-btn:before{content:"";display:block;position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.q-btn--actionable{cursor:pointer}.q-btn--actionable.q-btn--standard:before{transition:box-shadow .3s cubic-bezier(.25, .8, .5, 1)}.q-btn--actionable.q-btn--standard.q-btn--active:before,.q-btn--actionable.q-btn--standard:active:before{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.q-btn--no-uppercase{text-transform:none}.q-btn--rectangle{border-radius:3px}.q-btn--outline{background:0 0!important}.q-btn--outline:before{border:1px solid currentColor}.q-btn--push{border-radius:7px}.q-btn--push:before{border-bottom:3px solid rgba(0,0,0,.15)}.q-btn--push.q-btn--actionable{transition:transform .3s cubic-bezier(.25, .8, .5, 1)}.q-btn--push.q-btn--actionable:before{transition:border-width .3s cubic-bezier(.25, .8, .5, 1)}.q-btn--push.q-btn--actionable.q-btn--active,.q-btn--push.q-btn--actionable:active{transform:translateY(2px)}.q-btn--push.q-btn--actionable.q-btn--active:before,.q-btn--push.q-btn--actionable:active:before{border-bottom-width:0}.q-btn--rounded{border-radius:28px}.q-btn--round{border-radius:50%;padding:0;min-width:3em;min-height:3em}.q-btn--square{border-radius:0}.q-btn--flat:before,.q-btn--outline:before,.q-btn--unelevated:before{box-shadow:none}.q-btn--dense{padding:.285em;min-height:2em}.q-btn--dense.q-btn--round{padding:0;min-height:2.4em;min-width:2.4em}.q-btn--dense .on-left{margin-right:6px}.q-btn--dense .on-right{margin-left:6px}.q-btn--fab .q-icon,.q-btn--fab-mini .q-icon{font-size:24px}.q-btn--fab{padding:16px;min-height:56px;min-width:56px}.q-btn--fab .q-icon{margin:auto}.q-btn--fab-mini{padding:8px;min-height:40px;min-width:40px}.q-btn__content{transition:opacity .3s;z-index:0}.q-btn__content--hidden{opacity:0;pointer-events:none}.q-btn__progress{border-radius:inherit;z-index:0}.q-btn__progress-indicator{z-index:-1;transform:translateX(-100%);background:rgba(255,255,255,.25)}.q-btn__progress--dark .q-btn__progress-indicator{background:rgba(0,0,0,.2)}.q-btn--flat .q-btn__progress-indicator,.q-btn--outline .q-btn__progress-indicator{opacity:.2;background:currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container{padding:0 4px}.q-btn-dropdown--split .q-btn-dropdown__arrow-container.q-btn--outline{border-left:1px solid currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container:not(.q-btn--outline){border-left:1px solid rgba(255,255,255,.3)}.q-btn-dropdown--simple *+.q-btn-dropdown__arrow{margin-left:8px}.q-btn-dropdown__arrow{transition:transform .28s}.q-btn-dropdown--current{flex-grow:1}.q-btn-group{border-radius:3px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);vertical-align:middle}.q-btn-group>.q-btn-item{border-radius:inherit;align-self:stretch}.q-btn-group>.q-btn-item:before{box-shadow:none}.q-btn-group>.q-btn-item .q-badge--floating{right:0}.q-btn-group>.q-btn-group{box-shadow:none}.q-btn-group>.q-btn-group:first-child>.q-btn:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-btn-group>.q-btn-group:last-child>.q-btn:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-btn-group>.q-btn-group:not(:first-child)>.q-btn:first-child:before{border-left:0}.q-btn-group>.q-btn-group:not(:last-child)>.q-btn:last-child:before{border-right:0}.q-btn-group>.q-btn-item:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-btn-group>.q-btn-item:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-btn-group>.q-btn-item.q-btn--standard:before{z-index:-1}.q-btn-group--push{border-radius:7px}.q-btn-group--push>.q-btn--push.q-btn--actionable{transform:none}.q-btn-group--push>.q-btn--push.q-btn--actionable .q-btn__content{transition:margin-top .3s cubic-bezier(.25, .8, .5, 1),margin-bottom .3s cubic-bezier(.25, .8, .5, 1)}.q-btn-group--push>.q-btn--push.q-btn--actionable.q-btn--active .q-btn__content,.q-btn-group--push>.q-btn--push.q-btn--actionable:active .q-btn__content{margin-top:2px;margin-bottom:-2px}.q-btn-group--rounded{border-radius:28px}.q-btn-group--square{border-radius:0}.q-btn-group--flat,.q-btn-group--outline,.q-btn-group--unelevated{box-shadow:none}.q-btn-group--outline>.q-separator{display:none}.q-btn-group--outline>.q-btn-item+.q-btn-item:before{border-left:0}.q-btn-group--outline>.q-btn-item:not(:last-child):before{border-right:0}.q-btn-group--stretch{align-self:stretch;border-radius:0}.q-btn-group--glossy>.q-btn-item{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-btn-group--spread>.q-btn-group{display:flex!important}.q-btn-group--spread>.q-btn-group>.q-btn-item:not(.q-btn-dropdown__arrow-container),.q-btn-group--spread>.q-btn-item{width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-btn-toggle{position:relative}.q-card{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;vertical-align:top;background:#fff;position:relative}.q-card>div:not(.q--avoid-card-border),.q-card>img:not(.q--avoid-card-border){border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.q-card>div:nth-child(1of:not(.q--avoid-card-border)),.q-card>img:nth-child(1of:not(.q--avoid-card-border)){border-top:0;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-card>div:nth-last-child(1of:not(.q--avoid-card-border)),.q-card>img:nth-last-child(1of:not(.q--avoid-card-border)){border-bottom:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-card>div:not(.q--avoid-card-border){border-left:0;border-right:0;box-shadow:none}.q-card--bordered{border:1px solid rgba(0,0,0,.12)}.q-card--dark{border-color:rgba(255,255,255,.28);box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-card__section{position:relative}.q-card__section--vert{padding:16px}.q-card__section--horiz>div:not(.q--avoid-card-border),.q-card__section--horiz>img:not(.q--avoid-card-border){border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:0}.q-card__section--horiz>div:nth-child(1of:not(.q--avoid-card-border)),.q-card__section--horiz>img:nth-child(1of:not(.q--avoid-card-border)){border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-card__section--horiz>div:nth-last-child(1of:not(.q--avoid-card-border)),.q-card__section--horiz>img:nth-last-child(1of:not(.q--avoid-card-border)){border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-card__section--horiz>div:not(.q--avoid-card-border){border-top:0;border-bottom:0;box-shadow:none}.q-card__actions{padding:8px;align-items:center}.q-card__actions .q-btn--rectangle{padding:0 8px}.q-card__actions--horiz>.q-btn-group+.q-btn-item,.q-card__actions--horiz>.q-btn-item+.q-btn-group,.q-card__actions--horiz>.q-btn-item+.q-btn-item{margin-left:8px}.q-card__actions--vert>.q-btn-item.q-btn--round{align-self:center}.q-card__actions--vert>.q-btn-group+.q-btn-item,.q-card__actions--vert>.q-btn-item+.q-btn-group,.q-card__actions--vert>.q-btn-item+.q-btn-item{margin-top:4px}.q-card__actions--vert>.q-btn-group>.q-btn-item{flex-grow:1}.q-card>img{display:block;width:100%;max-width:100%;border:0}.q-carousel{background-color:#fff;height:400px}.q-carousel__slide{min-height:100%;background-size:cover;background-position:50%}.q-carousel .q-carousel--padding,.q-carousel__slide{padding:16px}.q-carousel__slides-container{height:100%}.q-carousel__control{color:#fff}.q-carousel__arrow{pointer-events:none}.q-carousel__arrow .q-icon{font-size:28px}.q-carousel__arrow .q-btn{pointer-events:all}.q-carousel__next-arrow--horizontal,.q-carousel__prev-arrow--horizontal{top:16px;bottom:16px}.q-carousel__prev-arrow--horizontal{left:16px}.q-carousel__next-arrow--horizontal{right:16px}.q-carousel__next-arrow--vertical,.q-carousel__prev-arrow--vertical{left:16px;right:16px}.q-carousel__prev-arrow--vertical{top:16px}.q-carousel__next-arrow--vertical{bottom:16px}.q-carousel__navigation--bottom,.q-carousel__navigation--top{left:16px;right:16px;overflow-x:auto;overflow-y:hidden}.q-carousel__navigation--top{top:16px}.q-carousel__navigation--bottom{bottom:16px}.q-carousel__navigation--left,.q-carousel__navigation--right{top:16px;bottom:16px;overflow-x:hidden;overflow-y:auto}.q-carousel__navigation--left>.q-carousel__navigation-inner,.q-carousel__navigation--right>.q-carousel__navigation-inner{flex-direction:column}.q-carousel__navigation--left{left:16px}.q-carousel__navigation--right{right:16px}.q-carousel__navigation-inner{flex:1 1 auto}.q-carousel__navigation .q-btn{margin:6px 4px;padding:5px}.q-carousel__navigation-icon--inactive{opacity:.7}.q-carousel .q-carousel__thumbnail{margin:2px;height:50px;width:auto;display:inline-block;cursor:pointer;border:1px solid transparent;border-radius:4px;vertical-align:middle;opacity:.7;transition:opacity .3s}.q-carousel .q-carousel__thumbnail--active,.q-carousel .q-carousel__thumbnail:hover{opacity:1}.q-carousel .q-carousel__thumbnail--active{border-color:currentColor;cursor:default}.q-carousel--arrows-vertical .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-top .q-carousel--padding,.q-carousel--navigation-top.q-carousel--with-padding .q-carousel__slide{padding-top:60px}.q-carousel--arrows-vertical .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-bottom .q-carousel--padding,.q-carousel--navigation-bottom.q-carousel--with-padding .q-carousel__slide{padding-bottom:60px}.q-carousel--arrows-horizontal .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-left .q-carousel--padding,.q-carousel--navigation-left.q-carousel--with-padding .q-carousel__slide{padding-left:60px}.q-carousel--arrows-horizontal .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-right .q-carousel--padding,.q-carousel--navigation-right.q-carousel--with-padding .q-carousel__slide{padding-right:60px}.q-carousel.fullscreen{height:100%}.q-message-name{font-size:small}.q-message-label{margin:24px 0;text-align:center;font-size:small}.q-message-stamp{color:inherit;margin-top:4px;opacity:.6;display:none;font-size:small}.q-message-avatar{border-radius:50%;width:48px;height:48px;min-width:48px}.q-message{margin-bottom:8px}.q-message:first-child .q-message-label{margin-top:0}.q-message-avatar--received{margin-right:8px}.q-message-text--received{color:#81c784;border-radius:4px 4px 4px 0}.q-message-text--received:last-child:before{right:100%;border-right:0 solid transparent;border-left:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--received{color:#000}.q-message-name--sent{text-align:right}.q-message-avatar--sent{margin-left:8px}.q-message-container--sent{flex-direction:row-reverse}.q-message-text--sent{color:#e0e0e0;border-radius:4px 4px 0 4px}.q-message-text--sent:last-child:before{left:100%;border-left:0 solid transparent;border-right:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--sent{color:#000}.q-message-text{background:currentColor;padding:8px;line-height:1.2;word-break:break-word;position:relative}.q-message-text+.q-message-text{margin-top:3px}.q-message-text:last-child{min-height:48px}.q-message-text:last-child .q-message-stamp{display:block}.q-message-text:last-child:before{content:"";position:absolute;bottom:0;width:0;height:0}.q-checkbox{vertical-align:middle}.q-checkbox__native{width:1px;height:1px}.q-checkbox__bg,.q-checkbox__icon-container{-webkit-user-select:none;user-select:none}.q-checkbox__bg{top:25%;left:25%;width:50%;height:50%;border:2px solid currentColor;border-radius:2px;transition:background .22s cubic-bezier(0, 0, .2, 1) 0s;-webkit-print-color-adjust:exact}.q-checkbox__icon{color:currentColor;font-size:.5em}.q-checkbox__svg{color:#fff}.q-checkbox__truthy{stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.78334;stroke-dasharray:29.78334}.q-checkbox__indet{fill:currentColor;transform-origin:50% 50%;transform:rotate(-280deg) scale(0)}.q-checkbox__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:rgba(0,0,0,.54)}.q-checkbox__inner--indet,.q-checkbox__inner--truthy{color:var(--q-primary)}.q-checkbox__inner--indet .q-checkbox__bg,.q-checkbox__inner--truthy .q-checkbox__bg{background:currentColor}.q-checkbox__inner--truthy path{stroke-dashoffset:0;transition:stroke-dashoffset .18s cubic-bezier(.4, 0, .6, 1) 0s}.q-checkbox__inner--indet .q-checkbox__indet{transform:rotate(0) scale(1);transition:transform .22s cubic-bezier(0, 0, .2, 1) 0s}.q-checkbox.disabled{opacity:.75!important}.q-checkbox--dark .q-checkbox__inner{color:rgba(255,255,255,.7)}.q-checkbox--dark .q-checkbox__inner:before{opacity:.32!important}.q-checkbox--dark .q-checkbox__inner--indet,.q-checkbox--dark .q-checkbox__inner--truthy{color:var(--q-primary)}.q-checkbox--dense .q-checkbox__inner{width:.5em;min-width:.5em;height:.5em}.q-checkbox--dense .q-checkbox__bg{left:5%;top:5%;width:90%;height:90%}.q-checkbox--dense .q-checkbox__label{padding-left:.5em}.q-checkbox--dense.reverse .q-checkbox__label{padding-left:0;padding-right:.5em}body.desktop .q-checkbox:not(.disabled) .q-checkbox__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0, 0, .2, 1)}body.desktop .q-checkbox:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox:not(.disabled):hover .q-checkbox__inner:before{transform:scale3d(1,1,1)}body.desktop .q-checkbox--dense:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox--dense:not(.disabled):hover .q-checkbox__inner:before{transform:scale3d(1.4,1.4,1)}.q-chip{vertical-align:middle;border-radius:16px;outline:0;position:relative;height:2em;max-width:100%;margin:4px;background:#e0e0e0;color:rgba(0,0,0,.87);font-size:14px;padding:.5em .9em}.q-chip--colored .q-chip__icon,.q-chip--dark .q-chip__icon{color:inherit}.q-chip .q-avatar{font-size:2em;margin-left:-.45em;margin-right:.2em;border-radius:16px}.q-chip--outline{background:0 0!important;border:1px solid currentColor}.q-chip--outline .q-avatar{margin-left:calc(-.45em - 1px)}.q-chip--selected .q-avatar{display:none}.q-chip__icon{color:rgba(0,0,0,.54);font-size:1.5em;margin:-.2em}.q-chip__icon--left{margin-right:.2em}.q-chip__icon--right{margin-left:.2em}.q-chip__icon--remove{margin-left:.1em;margin-right:-.5em;opacity:.6;outline:0}.q-chip__icon--remove:focus,.q-chip__icon--remove:hover{opacity:1}.q-chip__content{white-space:nowrap}.q-chip--dense{border-radius:12px;padding:0 .4em;height:1.5em}.q-chip--dense .q-avatar{font-size:1.5em;margin-left:-.27em;margin-right:.1em;border-radius:12px}.q-chip--dense .q-chip__icon{font-size:1.25em}.q-chip--dense .q-chip__icon--left{margin-right:.195em}.q-chip--dense .q-chip__icon--remove{margin-right:-.25em}.q-chip--square{border-radius:4px}.q-chip--square .q-avatar{border-radius:3px 0 0 3px}body.desktop .q-chip--clickable:focus{box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}body.desktop.body--dark .q-chip--clickable:focus{box-shadow:0 1px 3px rgba(255,255,255,.2),0 1px 1px rgba(255,255,255,.14),0 2px 1px -1px rgba(255,255,255,.12)}.q-circular-progress{display:inline-block;position:relative;vertical-align:middle;width:1em;height:1em;line-height:1}.q-circular-progress.q-focusable{border-radius:50%}.q-circular-progress__svg{width:100%;height:100%}.q-circular-progress__text{font-size:.25em}.q-circular-progress--indeterminate .q-circular-progress__svg{transform-origin:50% 50%;animation:q-spin 2s linear infinite}.q-circular-progress--indeterminate .q-circular-progress__circle{stroke-dasharray:1 400;stroke-dashoffset:0;animation:q-circular-progress-circle 1.5s ease-in-out infinite}@keyframes q-circular-progress-circle{0%{stroke-dasharray:1,400;stroke-dashoffset:0}50%{stroke-dasharray:400,400;stroke-dashoffset:-100}100%{stroke-dasharray:400,400;stroke-dashoffset:-300}}.q-color-picker{overflow:hidden;background:#fff;max-width:350px;vertical-align:top;min-width:180px;border-radius:4px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.q-color-picker .q-tab{padding:0!important}.q-color-picker--bordered{border:1px solid rgba(0,0,0,.12)}.q-color-picker__header-tabs{height:32px}.q-color-picker__header-banner{height:36px}.q-color-picker__header input{line-height:24px;border:0}.q-color-picker__header .q-tab{min-height:32px!important;height:32px!important}.q-color-picker__header .q-tab--inactive{background:linear-gradient(to top,rgba(0,0,0,.3) 0,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__error-icon{bottom:2px;right:2px;font-size:24px;opacity:0;transition:opacity .3s ease-in}.q-color-picker__header-content{position:relative;background:#fff}.q-color-picker__header-content--light{color:#000}.q-color-picker__header-content--dark{color:#fff}.q-color-picker__header-content--dark .q-tab--inactive:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(255,255,255,.2)}.q-color-picker__header-banner{height:36px}.q-color-picker__header-bg{background:#fff;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==")!important}.q-color-picker__footer{height:36px}.q-color-picker__footer .q-tab{min-height:36px!important;height:36px!important}.q-color-picker__footer .q-tab--inactive{background:linear-gradient(to bottom,rgba(0,0,0,.3) 0,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__spectrum{width:100%;height:100%}.q-color-picker__spectrum-tab{padding:0!important}.q-color-picker__spectrum-white{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.q-color-picker__spectrum-black{background:linear-gradient(to top,#000,rgba(0,0,0,0))}.q-color-picker__spectrum-circle{width:10px;height:10px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);border-radius:50%;transform:translate(-5px,-5px)}.q-color-picker__hue .q-slider__track{background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)!important;opacity:1}.q-color-picker__alpha .q-slider__track-container{padding-top:0}.q-color-picker__alpha .q-slider__track:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,255,255,0),#757575)}.q-color-picker__sliders{padding:0 16px}.q-color-picker__sliders .q-slider__thumb{color:#424242}.q-color-picker__sliders .q-slider__thumb path{stroke-width:2px;fill:transparent}.q-color-picker__sliders .q-slider--active path{stroke-width:3px}.q-color-picker__tune-tab .q-slider{margin-left:18px;margin-right:18px}.q-color-picker__tune-tab input{font-size:11px;border:1px solid #e0e0e0;border-radius:4px;width:3.5em}.q-color-picker__palette-tab{padding:0!important}.q-color-picker__palette-rows--editable .q-color-picker__cube{cursor:pointer}.q-color-picker__cube{padding-bottom:10%;width:10%!important}.q-color-picker input{color:inherit;background:0 0;outline:0;text-align:center}.q-color-picker .q-tabs{overflow:hidden}.q-color-picker .q-tab--active{box-shadow:0 0 14px 3px rgba(0,0,0,.2)}.q-color-picker .q-tab--active .q-focus-helper{display:none}.q-color-picker .q-tab__indicator{display:none}.q-color-picker .q-tab-panels{background:inherit}.q-color-picker--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-color-picker--dark .q-color-picker__tune-tab input{border:1px solid rgba(255,255,255,.3)}.q-color-picker--dark .q-slider__thumb{color:#fafafa}.q-date{display:inline-flex;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;background:#fff;width:290px;min-width:290px;max-width:100%}.q-date--bordered{border:1px solid rgba(0,0,0,.12)}.q-date__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px}.q-date__actions{padding:0 16px 16px}.q-date__content,.q-date__main{outline:0}.q-date__content .q-btn{font-weight:400}.q-date__header-link{opacity:.64;outline:0;transition:opacity .3s ease-out}.q-date__header-link--active,.q-date__header-link:focus,.q-date__header-link:hover{opacity:1}.q-date__header-subtitle{font-size:14px;line-height:1.75;letter-spacing:.00938em}.q-date__header-title-label{font-size:24px;line-height:1.2;letter-spacing:.00735em}.q-date__view{height:100%;width:100%;min-height:290px;padding:16px}.q-date__navigation{height:12.5%}.q-date__navigation>div:first-child{width:8%;min-width:24px;justify-content:flex-end}.q-date__navigation>div:last-child{width:8%;min-width:24px;justify-content:flex-start}.q-date__calendar-weekdays{height:12.5%}.q-date__calendar-weekdays>div{opacity:.38;font-size:12px}.q-date__calendar-item{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:14.285%!important;height:12.5%!important;position:relative;padding:1px}.q-date__calendar-item:after{content:"";position:absolute;pointer-events:none;top:1px;right:0;bottom:1px;left:0;border-style:dashed;border-color:transparent;border-width:1px}.q-date__calendar-item button,.q-date__calendar-item>div{width:30px;height:30px;border-radius:50%}.q-date__calendar-item>div{line-height:30px;text-align:center}.q-date__calendar-item>button{line-height:22px}.q-date__calendar-item--out{opacity:.18}.q-date__calendar-item--fill{visibility:hidden}.q-date__range-from:before,.q-date__range-to:before,.q-date__range:before{content:"";background-color:currentColor;position:absolute;top:1px;bottom:1px;left:0;right:0;opacity:.3}.q-date__range-from:nth-child(7n-6):before,.q-date__range-to:nth-child(7n-6):before,.q-date__range:nth-child(7n-6):before{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__range-from:nth-child(7n):before,.q-date__range-to:nth-child(7n):before,.q-date__range:nth-child(7n):before{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__range-from:before{left:50%}.q-date__range-to:before{right:50%}.q-date__edit-range:after{border-color:currentColor transparent}.q-date__edit-range:nth-child(7n-6):after{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__edit-range:nth-child(7n):after{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__edit-range-from-to:after,.q-date__edit-range-from:after{left:4px;border-left-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-left-radius:28px;border-bottom-left-radius:28px}.q-date__edit-range-from-to:after,.q-date__edit-range-to:after{right:4px;border-right-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-right-radius:28px;border-bottom-right-radius:28px}.q-date__calendar-days-container{height:75%;min-height:192px}.q-date__calendar-days>div{height:16.66%!important}.q-date__event{position:absolute;bottom:2px;left:50%;height:5px;width:8px;border-radius:5px;background-color:var(--q-secondary);transform:translate3d(-50%,0,0)}.q-date__today{box-shadow:0 0 1px 0 currentColor}.q-date__years-content{padding:0 8px}.q-date__months-item,.q-date__years-item{flex:0 0 33.3333%}.q-date--readonly .q-date__content,.q-date--readonly .q-date__header,.q-date.disabled .q-date__content,.q-date.disabled .q-date__header{pointer-events:none}.q-date--readonly .q-date__navigation{display:none}.q-date--portrait{flex-direction:column}.q-date--portrait-standard .q-date__content{height:calc(100% - 86px)}.q-date--portrait-standard .q-date__header{border-top-right-radius:inherit;height:86px}.q-date--portrait-standard .q-date__header-title{align-items:center;height:30px}.q-date--portrait-minimal .q-date__content{height:100%}.q-date--landscape{flex-direction:row;align-items:stretch;min-width:420px}.q-date--landscape>div{display:flex;flex-direction:column}.q-date--landscape .q-date__content{height:100%}.q-date--landscape-standard{min-width:420px}.q-date--landscape-standard .q-date__header{border-bottom-left-radius:inherit;min-width:110px;width:110px}.q-date--landscape-standard .q-date__header-title{flex-direction:column}.q-date--landscape-standard .q-date__header-today{margin-top:12px;margin-left:-8px}.q-date--landscape-minimal{width:310px}.q-date--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12);border-color:rgba(255,255,255,.28)}.q-dialog__title{font-size:1.25rem;font-weight:500;line-height:1.6;letter-spacing:.0125em}.q-dialog__progress{font-size:4rem}.q-dialog__inner{outline:0}.q-dialog__inner>div{pointer-events:all;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position;border-radius:4px}.q-dialog__inner--square>div{border-radius:0!important}.q-dialog__inner>.q-card>.q-card__actions .q-btn--rectangle{min-width:64px}.q-dialog__inner--minimized{padding:24px}.q-dialog__inner--minimized>div{max-height:calc(100vh - 48px)}.q-dialog__inner--maximized>div{height:100%;width:100%;max-height:100vh;max-width:100vw;border-radius:0!important;top:0!important;left:0!important}.q-dialog__inner--bottom,.q-dialog__inner--top{padding-top:0!important;padding-bottom:0!important}.q-dialog__inner--left,.q-dialog__inner--right{padding-right:0!important;padding-left:0!important}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-right-radius:0}.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div,.q-dialog__inner--left:not(.q-dialog__inner--animating)>div{border-bottom-left-radius:0}.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div,.q-dialog__inner--right:not(.q-dialog__inner--animating)>div{border-bottom-right-radius:0}.q-dialog__inner--fullwidth>div{width:100%!important;max-width:100%!important}.q-dialog__inner--fullheight>div{height:100%!important;max-height:100%!important}.q-dialog__backdrop{z-index:-1;pointer-events:all;outline:0;background:rgba(0,0,0,.4)}body.platform-android:not(.native-mobile) .q-dialog__inner--minimized>div,body.platform-ios .q-dialog__inner--minimized>div{max-height:calc(100vh - 108px)}body.q-ios-padding .q-dialog__inner{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}body.q-ios-padding .q-dialog__inner>div{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important}@media (max-width:599.98px){.q-dialog__inner--bottom,.q-dialog__inner--top{padding-left:0;padding-right:0}.q-dialog__inner--bottom>div,.q-dialog__inner--top>div{width:100%!important}}@media (min-width:600px){.q-dialog__inner--minimized>div{max-width:560px}}.q-body--dialog{overflow:hidden}.q-editor{border:1px solid rgba(0,0,0,.12);border-radius:4px;background-color:#fff}.q-editor.disabled{border-style:dashed}.q-editor>div:first-child,.q-editor__toolbars-container,.q-editor__toolbars-container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-editor__content{outline:0;padding:10px;min-height:10em;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:auto;max-width:100%}.q-editor__content pre{white-space:pre-wrap}.q-editor__content hr{border:0;outline:0;margin:1px;height:1px;background:rgba(0,0,0,.12)}.q-editor__content:empty:not(:focus):before{content:attr(placeholder);opacity:.7}.q-editor__toolbar{border-bottom:1px solid rgba(0,0,0,.12);min-height:32px}.q-editor__toolbars-container{max-width:100%}.q-editor .q-btn{margin:4px}.q-editor__toolbar-group{position:relative;margin:0 4px}.q-editor__toolbar-group+.q-editor__toolbar-group:before{content:"";position:absolute;left:-4px;top:4px;bottom:4px;width:1px;background:rgba(0,0,0,.12)}.q-editor__link-input{color:inherit;text-decoration:none;text-transform:none;border:none;border-radius:0;background:0 0;outline:0}.q-editor--flat,.q-editor--flat .q-editor__toolbar{border:0}.q-editor--dense .q-editor__toolbar-group{display:flex;align-items:center;flex-wrap:nowrap}.q-editor--dark{border-color:rgba(255,255,255,.28)}.q-editor--dark .q-editor__content hr{background:rgba(255,255,255,.28)}.q-editor--dark .q-editor__toolbar{border-color:rgba(255,255,255,.28)}.q-editor--dark .q-editor__toolbar-group+.q-editor__toolbar-group:before{background:rgba(255,255,255,.28)}.q-expansion-item__border{opacity:0}.q-expansion-item__toggle-icon{position:relative;transition:transform .3s}.q-expansion-item__toggle-icon--rotated{transform:rotate(180deg)}.q-expansion-item__toggle-focus{width:1em!important;height:1em!important;position:relative!important}.q-expansion-item__toggle-focus+.q-expansion-item__toggle-icon{margin-top:-1em}.q-expansion-item--standard.q-expansion-item--expanded>div>.q-expansion-item__border{opacity:1}.q-expansion-item--popup{transition:padding .5s}.q-expansion-item--popup>.q-expansion-item__container{border:1px solid rgba(0,0,0,.12)}.q-expansion-item--popup>.q-expansion-item__container>.q-separator{display:none}.q-expansion-item--popup.q-expansion-item--collapsed{padding:0 15px}.q-expansion-item--popup.q-expansion-item--expanded{padding:15px 0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--expanded{padding-top:0}.q-expansion-item--popup.q-expansion-item--collapsed:not(:first-child)>.q-expansion-item__container{border-top-width:0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--collapsed>.q-expansion-item__container{border-top-width:1px}.q-expansion-item__content>.q-card{box-shadow:none;border-radius:0}.q-expansion-item:first-child>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item:last-child>div>.q-expansion-item__border--bottom{opacity:0}.q-expansion-item--expanded+.q-expansion-item--expanded>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item--expanded .q-textarea--autogrow textarea{animation:q-expansion-done 0s}@keyframes q-expansion-done{0%{--q-exp-done:1}}.z-fab{z-index:990}.q-fab{position:relative;vertical-align:middle}.q-fab>.q-btn{width:100%}.q-fab--form-rounded{border-radius:28px}.q-fab--form-square{border-radius:4px}.q-fab__active-icon,.q-fab__icon{transition:opacity .4s,transform .4s}.q-fab__icon{opacity:1;transform:rotate(0)}.q-fab__active-icon{opacity:0;transform:rotate(-180deg)}.q-fab__label--external{position:absolute;padding:0 8px;transition:opacity .18s cubic-bezier(.65, .815, .735, .395)}.q-fab__label--external-hidden{opacity:0;pointer-events:none}.q-fab__label--external-left{top:50%;left:-12px;transform:translate(-100%,-50%)}.q-fab__label--external-right{top:50%;right:-12px;transform:translate(100%,-50%)}.q-fab__label--external-bottom{bottom:-12px;left:50%;transform:translate(-50%,100%)}.q-fab__label--external-top{top:-12px;left:50%;transform:translate(-50%,-100%)}.q-fab__label--internal{padding:0;transition:font-size .12s cubic-bezier(.65, .815, .735, .395),max-height .12s cubic-bezier(.65, .815, .735, .395),opacity 70ms cubic-bezier(.65, .815, .735, .395);max-height:30px}.q-fab__label--internal-hidden{font-size:0;opacity:0}.q-fab__label--internal-top{padding-bottom:.12em}.q-fab__label--internal-bottom{padding-top:.12em}.q-fab__label--internal-bottom.q-fab__label--internal-hidden,.q-fab__label--internal-top.q-fab__label--internal-hidden{max-height:0}.q-fab__label--internal-left{padding-left:.285em;padding-right:.571em}.q-fab__label--internal-right{padding-right:.285em;padding-left:.571em}.q-fab__icon-holder{min-width:24px;min-height:24px;position:relative}.q-fab__icon-holder--opened .q-fab__icon{transform:rotate(180deg);opacity:0}.q-fab__icon-holder--opened .q-fab__active-icon{transform:rotate(0);opacity:1}.q-fab__actions{position:absolute;opacity:0;transition:transform .18s ease-in,opacity .18s ease-in;pointer-events:none;align-items:center;justify-content:center;align-self:center;padding:3px}.q-fab__actions .q-btn{margin:5px}.q-fab__actions--right{transform-origin:0 50%;transform:scale(.4) translateX(-62px);height:56px;left:100%;margin-left:9px}.q-fab__actions--left{transform-origin:100% 50%;transform:scale(.4) translateX(62px);height:56px;right:100%;margin-right:9px;flex-direction:row-reverse}.q-fab__actions--up{transform-origin:50% 100%;transform:scale(.4) translateY(62px);width:56px;bottom:100%;margin-bottom:9px;flex-direction:column-reverse}.q-fab__actions--down{transform-origin:50% 0;transform:scale(.4) translateY(-62px);width:56px;top:100%;margin-top:9px;flex-direction:column}.q-fab__actions--down,.q-fab__actions--up{left:50%;margin-left:-28px}.q-fab__actions--opened{opacity:1;transform:scale(1) translate(.1px,0);pointer-events:all}.q-fab--align-left>.q-fab__actions--down,.q-fab--align-left>.q-fab__actions--up{align-items:flex-start;left:28px}.q-fab--align-right>.q-fab__actions--down,.q-fab--align-right>.q-fab__actions--up{align-items:flex-end;left:auto;right:0}.q-field{font-size:14px}.q-field ::-ms-clear,.q-field ::-ms-reveal{display:none}.q-field--with-bottom{padding-bottom:20px}.q-field__marginal{height:56px;color:rgba(0,0,0,.54);font-size:24px}.q-field__marginal>*+*{margin-left:2px}.q-field__marginal .q-avatar{font-size:32px}.q-field__before,.q-field__prepend{padding-right:12px}.q-field__after,.q-field__append{padding-left:12px}.q-field__after:empty,.q-field__append:empty{display:none}.q-field__append+.q-field__append{padding-left:2px}.q-field__inner{text-align:left}.q-field__bottom{font-size:12px;min-height:20px;line-height:1;color:rgba(0,0,0,.54);padding:8px 12px 0;backface-visibility:hidden}.q-field__bottom--animated{transform:translateY(100%);position:absolute;left:0;right:0;bottom:0}.q-field__messages{line-height:1}.q-field__messages>div{word-break:break-word;word-wrap:break-word;overflow-wrap:break-word}.q-field__messages>div+div{margin-top:4px}.q-field__counter{padding-left:8px;line-height:1}.q-field--item-aligned{padding:8px 16px}.q-field--item-aligned .q-field__before{min-width:56px}.q-field__control-container{height:inherit}.q-field__control{color:var(--q-primary);height:56px;max-width:100%;outline:0}.q-field__control:after,.q-field__control:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.q-field__control:before{border-radius:inherit}.q-field__shadow{top:8px;opacity:0;overflow:hidden;white-space:pre-wrap;transition:opacity .36s cubic-bezier(.4, 0, .2, 1)}.q-field__shadow+.q-field__native::placeholder{transition:opacity .36s cubic-bezier(.4, 0, .2, 1)}.q-field__shadow+.q-field__native:focus::placeholder{opacity:0}.q-field__input,.q-field__native,.q-field__prefix,.q-field__suffix{font-weight:400;line-height:28px;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;border:none;border-radius:0;background:0 0;color:rgba(0,0,0,.87);outline:0;padding:6px 0}.q-field__input,.q-field__native{width:100%;min-width:0;outline:0!important;-webkit-user-select:auto;user-select:auto}.q-field__input:-webkit-autofill,.q-field__native:-webkit-autofill{-webkit-animation-name:q-autofill;-webkit-animation-fill-mode:both}.q-field__input:invalid,.q-field__native:invalid{box-shadow:none}.q-field__native[type=file]{line-height:1em}.q-field__input{padding:0;height:0;min-height:24px;line-height:24px}.q-field__prefix,.q-field__suffix{transition:opacity .36s cubic-bezier(.4, 0, .2, 1);white-space:nowrap}.q-field__prefix{padding-right:4px}.q-field__suffix{padding-left:4px}.q-field--disabled .q-placeholder,.q-field--readonly .q-placeholder{opacity:1!important}.q-field--readonly.q-field--labeled .q-field__input,.q-field--readonly.q-field--labeled .q-field__native{cursor:default}.q-field--readonly.q-field--float .q-field__input,.q-field--readonly.q-field--float .q-field__native{cursor:text}.q-field--disabled .q-field__inner{cursor:not-allowed}.q-field--disabled .q-field__control{pointer-events:none}.q-field--disabled .q-field__control>div{opacity:.6!important}.q-field--disabled .q-field__control>div,.q-field--disabled .q-field__control>div *{outline:0!important}.q-field__label{left:0;top:18px;max-width:100%;color:rgba(0,0,0,.6);font-size:16px;line-height:1.25;font-weight:400;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;transform-origin:left top;transition:transform .36s cubic-bezier(.4, 0, .2, 1),max-width 324ms cubic-bezier(.4, 0, .2, 1);backface-visibility:hidden}.q-field__label:has(+ :is(.q-field__native,.q-field__input):is(:-webkit-autofill,[type=color],[type=date],[type=datetime-local],[type=month],[type=time],[type=week])){transform:translateY(-40%) scale(.75)}.q-field--float .q-field__label{max-width:133%;transform:translateY(-40%) scale(.75);transition:transform .36s cubic-bezier(.4, 0, .2, 1),max-width 396ms cubic-bezier(.4, 0, .2, 1)}.q-field--highlighted .q-field__label{color:currentColor}.q-field--highlighted .q-field__shadow{opacity:.5}.q-field--filled .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px 4px 0 0}.q-field--filled .q-field__control:before{background:rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.42);opacity:0;transition:opacity .36s cubic-bezier(.4, 0, .2, 1),background .36s cubic-bezier(.4, 0, .2, 1)}.q-field--filled .q-field__control:hover:before{opacity:1}.q-field--filled .q-field__control:after{height:2px;top:auto;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4, 0, .2, 1)}.q-field--filled.q-field--rounded .q-field__control{border-radius:28px 28px 0 0}.q-field--filled.q-field--highlighted .q-field__control:before{opacity:1;background:rgba(0,0,0,.12)}.q-field--filled.q-field--highlighted .q-field__control:after{transform:scale3d(1,1,1)}.q-field--filled.q-field--dark .q-field__control,.q-field--filled.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--filled.q-field--dark.q-field--highlighted .q-field__control:before{background:rgba(255,255,255,.1)}.q-field--filled.q-field--readonly .q-field__control:before{opacity:1;background:0 0;border-bottom-style:dashed}.q-field--outlined .q-field__control{border-radius:4px;padding:0 12px}.q-field--outlined .q-field__control:before{border:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4, 0, .2, 1)}.q-field--outlined .q-field__control:hover:before{border-color:#000}.q-field--outlined .q-field__control:after{height:inherit;border-radius:inherit;border:2px solid transparent;transition:border-color .36s cubic-bezier(.4, 0, .2, 1)}.q-field--outlined .q-field__input:-webkit-autofill,.q-field--outlined .q-field__native:-webkit-autofill{margin-top:1px;margin-bottom:1px}.q-field--outlined.q-field--rounded .q-field__control{border-radius:28px}.q-field--outlined.q-field--highlighted .q-field__control:hover:before{border-color:transparent}.q-field--outlined.q-field--highlighted .q-field__control:after{border-color:currentColor;border-width:2px;transform:scale3d(1,1,1)}.q-field--outlined.q-field--readonly .q-field__control:before{border-style:dashed}.q-field--standard .q-field__control:before{border-bottom:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4, 0, .2, 1)}.q-field--standard .q-field__control:hover:before{border-color:#000}.q-field--standard .q-field__control:after{height:2px;top:auto;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4, 0, .2, 1)}.q-field--standard.q-field--highlighted .q-field__control:after{transform:scale3d(1,1,1)}.q-field--standard.q-field--readonly .q-field__control:before{border-bottom-style:dashed}.q-field--dark .q-field__control:before{border-color:rgba(255,255,255,.6)}.q-field--dark .q-field__control:hover:before{border-color:#fff}.q-field--dark .q-field__input,.q-field--dark .q-field__native,.q-field--dark .q-field__prefix,.q-field--dark .q-field__suffix{color:#fff}.q-field--dark .q-field__bottom,.q-field--dark .q-field__marginal,.q-field--dark:not(.q-field--highlighted) .q-field__label{color:rgba(255,255,255,.7)}.q-field--standout .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px;transition:box-shadow .36s cubic-bezier(.4, 0, .2, 1),background-color .36s cubic-bezier(.4, 0, .2, 1)}.q-field--standout .q-field__control:before{background:rgba(0,0,0,.07);opacity:0;transition:opacity .36s cubic-bezier(.4, 0, .2, 1),background .36s cubic-bezier(.4, 0, .2, 1)}.q-field--standout .q-field__control:hover:before{opacity:1}.q-field--standout.q-field--rounded .q-field__control{border-radius:28px}.q-field--standout.q-field--highlighted .q-field__control{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);background:#000}.q-field--standout.q-field--highlighted .q-field__append,.q-field--standout.q-field--highlighted .q-field__input,.q-field--standout.q-field--highlighted .q-field__native,.q-field--standout.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--highlighted .q-field__suffix{color:#fff}.q-field--standout.q-field--readonly .q-field__control:before{opacity:1;background:0 0;border:1px dashed rgba(0,0,0,.24)}.q-field--standout.q-field--dark .q-field__control{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark.q-field--highlighted .q-field__control{background:#fff}.q-field--standout.q-field--dark.q-field--highlighted .q-field__append,.q-field--standout.q-field--dark.q-field--highlighted .q-field__input,.q-field--standout.q-field--dark.q-field--highlighted .q-field__native,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--dark.q-field--highlighted .q-field__suffix{color:#000}.q-field--standout.q-field--dark.q-field--readonly .q-field__control:before{border-color:rgba(255,255,255,.24)}.q-field--labeled .q-field__native,.q-field--labeled .q-field__prefix,.q-field--labeled .q-field__suffix{line-height:24px;padding-top:24px;padding-bottom:8px}.q-field--labeled .q-field__shadow{top:0}.q-field--labeled:not(.q-field--float) .q-field__prefix,.q-field--labeled:not(.q-field--float) .q-field__suffix{opacity:0}.q-field--labeled:not(.q-field--float) .q-field__input::placeholder,.q-field--labeled:not(.q-field--float) .q-field__native::placeholder{color:transparent}.q-field--labeled.q-field--dense .q-field__native,.q-field--labeled.q-field--dense .q-field__prefix,.q-field--labeled.q-field--dense .q-field__suffix{padding-top:14px;padding-bottom:2px}.q-field--dense .q-field--with-bottom{padding-bottom:19px}.q-field--dense .q-field__shadow{top:0}.q-field--dense .q-field__control,.q-field--dense .q-field__marginal{height:40px}.q-field--dense .q-field__bottom{font-size:11px}.q-field--dense .q-field__label{font-size:14px;top:10px}.q-field--dense .q-field__before,.q-field--dense .q-field__prepend{padding-right:6px}.q-field--dense .q-field__after,.q-field--dense .q-field__append{padding-left:6px}.q-field--dense .q-field__append+.q-field__append{padding-left:2px}.q-field--dense .q-field__marginal .q-avatar{font-size:24px}.q-field--dense.q-field--float .q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__label:has(+ :is(.q-field__native,.q-field__input):is(:-webkit-autofill,[type=color],[type=date],[type=datetime-local],[type=month],[type=time],[type=week])){transform:translateY(-30%) scale(.75)}.q-field--borderless .q-field__bottom,.q-field--borderless.q-field--dense .q-field__control,.q-field--standard .q-field__bottom,.q-field--standard.q-field--dense .q-field__control{padding-left:0;padding-right:0}.q-field--error .q-field__label{animation:q-field-label .36s}.q-field--error .q-field__bottom{color:var(--q-negative)}.q-field__focusable-action{opacity:.6;cursor:pointer;outline:0!important;border:0;color:inherit;background:0 0;padding:0}.q-field__focusable-action:focus,.q-field__focusable-action:hover{opacity:1}.q-field--auto-height .q-field__control{height:auto}.q-field--auto-height .q-field__control,.q-field--auto-height .q-field__native{min-height:56px}.q-field--auto-height .q-field__native{align-items:center}.q-field--auto-height .q-field__control-container{padding-top:0}.q-field--auto-height .q-field__native,.q-field--auto-height .q-field__prefix,.q-field--auto-height .q-field__suffix{line-height:18px}.q-field--auto-height.q-field--labeled .q-field__control-container{padding-top:24px}.q-field--auto-height.q-field--labeled .q-field__shadow{top:24px}.q-field--auto-height.q-field--labeled .q-field__native,.q-field--auto-height.q-field--labeled .q-field__prefix,.q-field--auto-height.q-field--labeled .q-field__suffix{padding-top:0}.q-field--auto-height.q-field--labeled .q-field__native{min-height:24px}.q-field--auto-height.q-field--dense .q-field__control,.q-field--auto-height.q-field--dense .q-field__native{min-height:40px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__native{min-height:24px}.q-field--square .q-field__control{border-radius:0!important}.q-transition--field-message-enter-active,.q-transition--field-message-leave-active{transition:transform .6s cubic-bezier(.86, 0, .07, 1),opacity .6s cubic-bezier(.86, 0, .07, 1)}.q-transition--field-message-enter-from,.q-transition--field-message-leave-to{opacity:0;transform:translateY(-10px)}.q-transition--field-message-leave-active,.q-transition--field-message-leave-from{position:absolute}@keyframes q-field-label{40%{margin-left:2px}60%,80%{margin-left:-2px}70%,90%{margin-left:2px}}@keyframes q-autofill{to{background:0 0;color:inherit}}.q-file .q-field__native{word-break:break-all;overflow:hidden}.q-file .q-field__input{opacity:0!important}.q-file .q-field__input::-webkit-file-upload-button{cursor:pointer}.q-file__filler{visibility:hidden;width:100%;border:none;padding:0}.q-file__dnd{outline:1px dashed currentColor;outline-offset:-4px}.q-form{position:relative}.q-img{position:relative;width:100%;display:inline-block;vertical-align:middle;overflow:hidden}.q-img__loading .q-spinner{font-size:50px}.q-img__container{border-radius:inherit;font-size:0}.q-img__image{border-radius:inherit;width:100%;height:100%;opacity:0}.q-img__image--with-transition{transition:opacity .28s ease-in}.q-img__image--loaded{opacity:1}.q-img__content{border-radius:inherit;pointer-events:none}.q-img__content>div{pointer-events:all;position:absolute;padding:16px;color:#fff;background:rgba(0,0,0,.47)}.q-img--no-menu .q-img__image,.q-img--no-menu .q-img__placeholder{pointer-events:none}.q-inner-loading{background:rgba(255,255,255,.6);border-radius:inherit}.q-inner-loading--dark{background:rgba(0,0,0,.4)}.q-inner-loading__label{margin-top:8px}.q-textarea .q-field__control{min-height:56px;height:auto}.q-textarea .q-field__control-container{padding-top:2px;padding-bottom:2px}.q-textarea .q-field__shadow{top:2px;bottom:2px}.q-textarea .q-field__native,.q-textarea .q-field__prefix,.q-textarea .q-field__suffix{line-height:18px}.q-textarea .q-field__native{resize:vertical;padding-top:17px;min-height:52px}.q-textarea.q-field--labeled .q-field__control-container{padding-top:26px}.q-textarea.q-field--labeled .q-field__shadow{top:26px}.q-textarea.q-field--labeled .q-field__native,.q-textarea.q-field--labeled .q-field__prefix,.q-textarea.q-field--labeled .q-field__suffix{padding-top:0}.q-textarea.q-field--labeled .q-field__native{min-height:26px;padding-top:1px}.q-textarea--autogrow .q-field__native{resize:none}.q-textarea.q-field--dense .q-field__control,.q-textarea.q-field--dense .q-field__native{min-height:36px}.q-textarea.q-field--dense .q-field__native{padding-top:9px}.q-textarea.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__native{min-height:24px;padding-top:3px}.q-textarea.q-field--dense.q-field--labeled .q-field__prefix,.q-textarea.q-field--dense.q-field--labeled .q-field__suffix{padding-top:2px}.q-textarea.disabled .q-field__native,body.mobile .q-textarea .q-field__native{resize:none}.q-intersection{position:relative}.q-item{min-height:48px;padding:8px 16px;color:inherit;transition:color .3s,background-color .3s}.q-item__section--side{color:#757575;align-items:flex-start;padding-right:16px;width:auto;min-width:0;max-width:100%}.q-item__section--side>.q-icon{font-size:24px}.q-item__section--side>.q-avatar{font-size:40px}.q-item__section--avatar{color:inherit;min-width:56px}.q-item__section--thumbnail img{width:100px;height:56px}.q-item__section--nowrap{white-space:nowrap}.q-item>.q-focus-helper+.q-item__section--thumbnail,.q-item>.q-item__section--thumbnail:first-child{margin-left:-16px}.q-item>.q-item__section--thumbnail:last-of-type{margin-right:-16px}.q-item__label{line-height:1.2em!important;max-width:100%}.q-item__label--overline{color:rgba(0,0,0,.7)}.q-item__label--caption{color:rgba(0,0,0,.54)}.q-item__label--header{color:#757575;padding:16px;font-size:.875rem;line-height:1.25rem;letter-spacing:.01786em}.q-list--padding .q-item__label--header,.q-separator--spaced+.q-item__label--header{padding-top:8px}.q-item__label+.q-item__label{margin-top:4px}.q-item__section--main{width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-item__section--main+.q-item__section--main{margin-left:8px}.q-item__section--main~.q-item__section--side{align-items:flex-end;padding-right:0;padding-left:16px}.q-item__section--main.q-item__section--thumbnail{margin-left:0;margin-right:-16px}.q-list--bordered{border:1px solid rgba(0,0,0,.12)}.q-list--separator>.q-item-type+.q-item-type,.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top:1px solid rgba(0,0,0,.12)}.q-list--padding{padding:8px 0}.q-item--dense,.q-list--dense>.q-item{min-height:32px;padding:2px 16px}.q-list--dark.q-list--separator>.q-item-type+.q-item-type,.q-list--dark.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top-color:rgba(255,255,255,.28)}.q-item--dark,.q-list--dark{color:#fff;border-color:rgba(255,255,255,.28)}.q-item--dark .q-item__section--side:not(.q-item__section--avatar),.q-list--dark .q-item__section--side:not(.q-item__section--avatar){color:rgba(255,255,255,.7)}.q-item--dark .q-item__label--header,.q-list--dark .q-item__label--header{color:rgba(255,255,255,.64)}.q-item--dark .q-item__label--caption,.q-item--dark .q-item__label--overline,.q-list--dark .q-item__label--caption,.q-list--dark .q-item__label--overline{color:rgba(255,255,255,.8)}.q-item{position:relative}.q-item--active,.q-item.q-router-link--active{color:var(--q-primary)}.q-knob{font-size:48px}.q-knob--editable{cursor:pointer;outline:0}.q-knob--editable:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:none;transition:box-shadow .24s ease-in-out}.q-knob--editable:focus:before{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}body.body--dark .q-knob--editable:focus:before{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-layout{width:100%;outline:0}.q-layout-container{position:relative;width:100%;height:100%}.q-layout-container .q-layout{min-height:100%}.q-layout-container>div{transform:translate3d(0,0,0)}.q-layout-container>div>div{min-height:0;max-height:100%}.q-layout__shadow{width:100%}.q-layout__shadow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:0 0 10px 2px rgba(0,0,0,.2),0 0 10px rgba(0,0,0,.24)}.q-layout__section--marginal{background-color:var(--q-primary);color:#fff}.q-header--hidden{transform:translateY(-110%)}.q-header--bordered{border-bottom:1px solid rgba(0,0,0,.12)}.q-header .q-layout__shadow{bottom:-10px}.q-header .q-layout__shadow:after{bottom:10px}.q-footer--hidden{transform:translateY(110%)}.q-footer--bordered{border-top:1px solid rgba(0,0,0,.12)}.q-footer .q-layout__shadow{top:-10px}.q-footer .q-layout__shadow:after{top:10px}.q-footer,.q-header{z-index:2000}.q-drawer{position:absolute;top:0;bottom:0;background:#fff;z-index:1000}.q-drawer--on-top{z-index:3000}.q-drawer--left{left:0;transform:translateX(-100%)}.q-drawer--left.q-drawer--bordered{border-right:1px solid rgba(0,0,0,.12)}.q-drawer--left .q-layout__shadow{left:10px;right:-10px}.q-drawer--left .q-layout__shadow:after{right:10px}.q-drawer--right{right:0;transform:translateX(100%)}.q-drawer--right.q-drawer--bordered{border-left:1px solid rgba(0,0,0,.12)}.q-drawer--right .q-layout__shadow{left:-10px}.q-drawer--right .q-layout__shadow:after{left:10px}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini{padding:0!important}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section{text-align:center;justify-content:center;padding-left:0;padding-right:0;min-width:0}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__label,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--main,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--side~.q-item__section--side{display:none}.q-drawer--mini .q-expansion-item__content,.q-drawer--mini .q-mini-drawer-hide{display:none}.q-drawer--mini-animate .q-drawer__content{overflow-x:hidden!important;white-space:nowrap}.q-drawer--standard .q-mini-drawer-only{display:none}.q-drawer--mobile .q-mini-drawer-hide,.q-drawer--mobile .q-mini-drawer-only{display:none}.q-drawer__backdrop{z-index:2999!important;will-change:background-color}.q-drawer__opener{z-index:2001;height:100%;width:15px;-webkit-user-select:none;user-select:none}.q-footer,.q-header,.q-layout,.q-page{position:relative}.q-page-sticky--shrink{pointer-events:none}.q-page-sticky--shrink>div{display:inline-block;pointer-events:auto}body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content,body.q-ios-padding .q-layout--standard .q-header>.q-tabs:first-child .q-tabs__content,body.q-ios-padding .q-layout--standard .q-header>.q-toolbar:first-child{padding-top:20px;min-height:70px;padding-top:env(safe-area-inset-top);min-height:calc(env(safe-area-inset-top) + 50px)}body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content,body.q-ios-padding .q-layout--standard .q-footer>.q-tabs:nth-last-child(1of:not(.q-layout__shadow)) .q-tabs__content,body.q-ios-padding .q-layout--standard .q-footer>.q-toolbar:last-child{padding-bottom:env(safe-area-inset-bottom);min-height:calc(env(safe-area-inset-bottom) + 50px)}.q-body--layout-animate .q-drawer__backdrop{transition:background-color .12s!important}.q-body--layout-animate .q-drawer{transition:transform .12s,width .12s,top .12s,bottom .12s!important}.q-body--layout-animate .q-layout__section--marginal{transition:transform .12s,left .12s,right .12s!important}.q-body--layout-animate .q-page-container{transition:padding-top .12s,padding-right .12s,padding-bottom .12s,padding-left .12s!important}.q-body--layout-animate .q-page-sticky{transition:transform .12s,left .12s,right .12s,top .12s,bottom .12s!important}body:not(.q-body--layout-animate) .q-layout--prevent-focus{visibility:hidden}.q-body--drawer-toggle{overflow-x:hidden!important}@media (max-width:599.98px){.q-layout-padding{padding:8px}}@media (min-width:600px) and (max-width:1439.98px){.q-layout-padding{padding:16px}}@media (min-width:1440px){.q-layout-padding{padding:24px}}body.body--dark .q-drawer,body.body--dark .q-footer,body.body--dark .q-header{border-color:rgba(255,255,255,.28)}body.body--dark .q-layout__shadow:after{box-shadow:0 0 10px 2px rgba(255,255,255,.2),0 0 10px rgba(255,255,255,.24)}body.platform-ios .q-layout--containerized{position:unset!important}.q-linear-progress{--q-linear-progress-speed:.3s;position:relative;width:100%;overflow:hidden;font-size:4px;height:1em;color:var(--q-primary);transform:scale3d(1,1,1)}.q-linear-progress__model,.q-linear-progress__track{transform-origin:0 0}.q-linear-progress__model--with-transition,.q-linear-progress__track--with-transition{transition:transform var(--q-linear-progress-speed)}.q-linear-progress--reverse .q-linear-progress__model,.q-linear-progress--reverse .q-linear-progress__track{transform-origin:0 100%}.q-linear-progress__model--determinate{background:currentColor}.q-linear-progress__model--indeterminate,.q-linear-progress__model--query{transition:none}.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--query:after,.q-linear-progress__model--query:before{background:currentColor;content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 0}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--query:before{animation:q-linear-progress--indeterminate 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:after{transform:translate3d(-101%,0,0) scale3d(1,1,1);animation:q-linear-progress--indeterminate-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.q-linear-progress__track{opacity:.4}.q-linear-progress__track--light{background:rgba(0,0,0,.26)}.q-linear-progress__track--dark{background:rgba(255,255,255,.6)}.q-linear-progress__stripe{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,rgba(255,255,255,0) 25%,rgba(255,255,255,0) 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,rgba(255,255,255,0) 75%,rgba(255,255,255,0))!important;background-size:40px 40px!important}.q-linear-progress__stripe--with-transition{transition:width var(--q-linear-progress-speed)}@keyframes q-linear-progress--indeterminate{0%{transform:translate3d(-35%,0,0) scale3d(.35,1,1)}60%{transform:translate3d(100%,0,0) scale3d(.9,1,1)}100%{transform:translate3d(100%,0,0) scale3d(.9,1,1)}}@keyframes q-linear-progress--indeterminate-short{0%{transform:translate3d(-101%,0,0) scale3d(1,1,1)}60%{transform:translate3d(107%,0,0) scale3d(.01,1,1)}100%{transform:translate3d(107%,0,0) scale3d(.01,1,1)}}.q-menu{position:fixed!important;display:inline-block;max-width:95vw;max-height:65vh;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);background:#fff;border-radius:4px;overflow-y:auto;overflow-x:hidden;outline:0;z-index:6000}.q-menu--square{border-radius:0}.q-menu--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-option-group--inline>div{display:inline-block}.q-pagination input{text-align:center;-moz-appearance:textfield}.q-pagination input::-webkit-inner-spin-button,.q-pagination input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.q-pagination__content{--q-pagination-gutter-parent:-2px;--q-pagination-gutter-child:2px;margin-top:var(--q-pagination-gutter-parent);margin-left:var(--q-pagination-gutter-parent)}.q-pagination__content>.q-btn,.q-pagination__content>.q-input,.q-pagination__middle>.q-btn{margin-top:var(--q-pagination-gutter-child);margin-left:var(--q-pagination-gutter-child)}.q-parallax{position:relative;width:100%;overflow:hidden;border-radius:inherit}.q-parallax__media>img,.q-parallax__media>video{position:absolute;left:50%;bottom:0;min-width:100%;min-height:100%;will-change:transform;display:none}.q-popup-edit{padding:8px 16px}.q-popup-edit__buttons{margin-top:8px}.q-popup-edit__buttons .q-btn+.q-btn{margin-left:8px}.q-pull-to-refresh{position:relative}.q-pull-to-refresh__puller{border-radius:50%;width:40px;height:40px;color:var(--q-primary);background:#fff;box-shadow:0 0 4px 0 rgba(0,0,0,.3)}.q-pull-to-refresh__puller--animating{transition:transform .3s,opacity .3s}.q-radio{vertical-align:middle}.q-radio__native{width:1px;height:1px}.q-radio__bg,.q-radio__icon-container{-webkit-user-select:none;user-select:none}.q-radio__bg{top:25%;left:25%;width:50%;height:50%;-webkit-print-color-adjust:exact}.q-radio__bg path{fill:currentColor}.q-radio__icon{color:currentColor;font-size:.5em}.q-radio__check{transform-origin:50% 50%;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0, 0, .2, 1) 0s}.q-radio__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:rgba(0,0,0,.54)}.q-radio__inner--truthy{color:var(--q-primary)}.q-radio__inner--truthy .q-radio__check{transform:scale3d(1,1,1)}.q-radio.disabled{opacity:.75!important}.q-radio--dark .q-radio__inner{color:rgba(255,255,255,.7)}.q-radio--dark .q-radio__inner:before{opacity:.32!important}.q-radio--dark .q-radio__inner--truthy{color:var(--q-primary)}.q-radio--dense .q-radio__inner{width:.5em;min-width:.5em;height:.5em}.q-radio--dense .q-radio__bg{left:0;top:0;width:100%;height:100%}.q-radio--dense .q-radio__label{padding-left:.5em}.q-radio--dense.reverse .q-radio__label{padding-left:0;padding-right:.5em}body.desktop .q-radio:not(.disabled) .q-radio__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0, 0, .2, 1) 0s}body.desktop .q-radio:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio:not(.disabled):hover .q-radio__inner:before{transform:scale3d(1,1,1)}body.desktop .q-radio--dense:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio--dense:not(.disabled):hover .q-radio__inner:before{transform:scale3d(1.5,1.5,1)}.q-rating{color:#ffeb3b;vertical-align:middle}.q-rating__icon-container{height:1em;outline:0}.q-rating__icon-container+.q-rating__icon-container{margin-left:2px}.q-rating__icon{color:currentColor;text-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);position:relative;opacity:.4;transition:transform .2s ease-in,opacity .2s ease-in,color .2s ease-in}.q-rating__icon--hovered{transform:scale(1.3)}.q-rating__icon--active{opacity:1}.q-rating__icon--exselected{opacity:.7}.q-rating--no-dimming .q-rating__icon{opacity:1}.q-rating--editable .q-rating__icon-container{cursor:pointer}.q-responsive{position:relative;max-width:100%;max-height:100%}.q-responsive__filler{width:inherit;max-width:inherit;height:inherit;max-height:inherit}.q-responsive__content{border-radius:inherit}.q-responsive__content>*{width:100%!important;height:100%!important;max-height:100%!important;max-width:100%!important}.q-scrollarea{position:relative;contain:strict}.q-scrollarea__bar,.q-scrollarea__thumb{opacity:.2;transition:opacity .3s;will-change:opacity;cursor:grab}.q-scrollarea__bar--v,.q-scrollarea__thumb--v{right:0;width:10px}.q-scrollarea__bar--h,.q-scrollarea__thumb--h{bottom:0;height:10px}.q-scrollarea__bar--invisible,.q-scrollarea__thumb--invisible{opacity:0!important;pointer-events:none}.q-scrollarea__thumb{background:#000;border-radius:3px}.q-scrollarea__thumb:hover{opacity:.3}.q-scrollarea__thumb:active{opacity:.5}.q-scrollarea__content{min-height:100%;min-width:100%}.q-scrollarea--dark .q-scrollarea__thumb{background:#fff}.q-select--without-input .q-field__control{cursor:pointer}.q-select--with-input .q-field__control{cursor:text}.q-select .q-field__input{min-width:50px!important;cursor:text}.q-select .q-field__input--padding{padding-left:4px}.q-select__autocomplete-input,.q-select__focus-target{position:absolute;outline:0!important;width:1px;height:1px;padding:0;border:0;opacity:0}.q-select__dropdown-icon{cursor:pointer;transition:transform .28s}.q-select.q-field--readonly .q-field__control,.q-select.q-field--readonly .q-select__dropdown-icon{cursor:default}.q-select__dialog{width:90vw!important;max-width:90vw!important;max-height:calc(100vh - 70px)!important;background:#fff;display:flex;flex-direction:column}.q-select__dialog>.scroll{position:relative;background:inherit}body.mobile:not(.native-mobile) .q-select__dialog{max-height:calc(100vh - 108px)!important}body.platform-android.native-mobile .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 24px)!important}body.platform-android:not(.native-mobile) .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 80px)!important}body.platform-ios.native-mobile .q-dialog__inner--top>div{border-radius:4px}body.platform-ios.native-mobile .q-dialog__inner--top .q-select__dialog--focused{max-height:47vh!important}body.platform-ios:not(.native-mobile) .q-dialog__inner--top .q-select__dialog--focused{max-height:50vh!important}.q-separator{border:0;background:rgba(0,0,0,.12);margin:0;transition:background .3s,opacity .3s;flex-shrink:0}.q-separator--dark{background:rgba(255,255,255,.28)}.q-separator--horizontal{display:block;height:1px}.q-separator--horizontal-inset{margin-left:16px;margin-right:16px}.q-separator--horizontal-item-inset{margin-left:72px;margin-right:0}.q-separator--horizontal-item-thumbnail-inset{margin-left:116px;margin-right:0}.q-separator--vertical{width:1px;height:auto;align-self:stretch}.q-separator--vertical-inset{margin-top:8px;margin-bottom:8px}.q-skeleton{--q-skeleton-speed:1500ms;background:rgba(0,0,0,.12);border-radius:4px;box-sizing:border-box}.q-skeleton--anim{cursor:wait}.q-skeleton:before{content:" "}.q-skeleton--type-text{transform:scale(1,.5)}.q-skeleton--type-QAvatar,.q-skeleton--type-circle{height:48px;width:48px;border-radius:50%}.q-skeleton--type-QBtn{width:90px;height:36px}.q-skeleton--type-QBadge{width:70px;height:16px}.q-skeleton--type-QChip{width:90px;height:28px;border-radius:16px}.q-skeleton--type-QToolbar{height:50px}.q-skeleton--type-QCheckbox,.q-skeleton--type-QRadio{width:40px;height:40px;border-radius:50%}.q-skeleton--type-QToggle{width:56px;height:40px;border-radius:7px}.q-skeleton--type-QRange,.q-skeleton--type-QSlider{height:40px}.q-skeleton--type-QInput{height:56px}.q-skeleton--bordered{border:1px solid rgba(0,0,0,.05)}.q-skeleton--square{border-radius:0}.q-skeleton--anim-fade{animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-pulse{animation:q-skeleton--pulse var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-x{animation:q-skeleton--pulse-x var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-y{animation:q-skeleton--pulse-y var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-blink,.q-skeleton--anim-pop,.q-skeleton--anim-wave{position:relative;overflow:hidden;z-index:1}.q-skeleton--anim-blink:after,.q-skeleton--anim-pop:after,.q-skeleton--anim-wave:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.q-skeleton--anim-blink:after{background:rgba(255,255,255,.7);animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0));animation:q-skeleton--wave var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--dark{background:rgba(255,255,255,.05)}.q-skeleton--dark.q-skeleton--bordered{border:1px solid rgba(255,255,255,.25)}.q-skeleton--dark.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.1),rgba(255,255,255,0))}.q-skeleton--dark.q-skeleton--anim-blink:after{background:rgba(255,255,255,.2)}@keyframes q-skeleton--fade{0%{opacity:1}50%{opacity:.4}100%{opacity:1}}@keyframes q-skeleton--pulse{0%{transform:scale(1)}50%{transform:scale(.85)}100%{transform:scale(1)}}@keyframes q-skeleton--pulse-x{0%{transform:scaleX(1)}50%{transform:scaleX(.75)}100%{transform:scaleX(1)}}@keyframes q-skeleton--pulse-y{0%{transform:scaleY(1)}50%{transform:scaleY(.75)}100%{transform:scaleY(1)}}@keyframes q-skeleton--wave{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.q-slide-item{position:relative;background:#fff}.q-slide-item__bottom,.q-slide-item__left,.q-slide-item__right,.q-slide-item__top{visibility:hidden;font-size:14px;color:#fff}.q-slide-item__bottom .q-icon,.q-slide-item__left .q-icon,.q-slide-item__right .q-icon,.q-slide-item__top .q-icon{font-size:1.714em}.q-slide-item__left{background:#4caf50;padding:8px 16px}.q-slide-item__left>div{transform-origin:left center}.q-slide-item__right{background:#ff9800;padding:8px 16px}.q-slide-item__right>div{transform-origin:right center}.q-slide-item__top{background:#2196f3;padding:16px 8px}.q-slide-item__top>div{transform-origin:top center}.q-slide-item__bottom{background:#9c27b0;padding:16px 8px}.q-slide-item__bottom>div{transform-origin:bottom center}.q-slide-item__content{background:inherit;transition:transform .2s ease-in;-webkit-user-select:none;user-select:none;cursor:pointer}.q-slider{position:relative}.q-slider--h{width:100%}.q-slider--v{height:200px}.q-slider--editable .q-slider__track-container{cursor:grab}.q-slider__track-container{outline:0}.q-slider__track-container--h{width:100%;padding:12px 0}.q-slider__track-container--h .q-slider__selection{will-change:width,left}.q-slider__track-container--v{height:100%;padding:0 12px}.q-slider__track-container--v .q-slider__selection{will-change:height,top}.q-slider__track{color:var(--q-primary);background:rgba(0,0,0,.1);border-radius:4px;width:inherit;height:inherit}.q-slider__inner{background:rgba(0,0,0,.1);border-radius:inherit;width:100%;height:100%}.q-slider__selection{background:currentColor;border-radius:inherit;width:100%;height:100%}.q-slider__markers{color:rgba(0,0,0,.3);border-radius:inherit;width:100%;height:100%}.q-slider__markers:after{content:"";position:absolute;background:currentColor}.q-slider__markers--h{background-image:repeating-linear-gradient(to right,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--h:after{height:100%;width:2px;top:0;right:0}.q-slider__markers--v{background-image:repeating-linear-gradient(to bottom,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--v:after{width:100%;height:2px;left:0;bottom:0}.q-slider__marker-labels-container{position:relative;width:100%;height:100%;min-height:24px;min-width:24px}.q-slider__marker-labels{position:absolute}.q-slider__marker-labels--h-standard{top:0}.q-slider__marker-labels--h-switched{bottom:0}.q-slider__marker-labels--h-ltr{transform:translateX(-50%)}.q-slider__marker-labels--h-rtl{transform:translateX(50%)}.q-slider__marker-labels--v-standard{left:4px}.q-slider__marker-labels--v-switched{right:4px}.q-slider__marker-labels--v-ltr{transform:translateY(-50%)}.q-slider__marker-labels--v-rtl{transform:translateY(50%)}.q-slider__thumb{z-index:1;outline:0;color:var(--q-primary);transition:transform .18s ease-out,fill .18s ease-out,stroke .18s ease-out}.q-slider__thumb.q-slider--focus{opacity:1!important}.q-slider__thumb--h{top:50%;will-change:left}.q-slider__thumb--h-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--h-rtl{transform:scale(1) translate(50%,-50%)}.q-slider__thumb--v{left:50%;will-change:top}.q-slider__thumb--v-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--v-rtl{transform:scale(1) translate(-50%,50%)}.q-slider__thumb-shape{top:0;left:0;stroke-width:3.5;stroke:currentColor;transition:transform .28s}.q-slider__thumb-shape path{stroke:currentColor;fill:currentColor}.q-slider__focus-ring{border-radius:50%;opacity:0;transition:transform .266s ease-out,opacity .266s ease-out,background-color .266s ease-out;transition-delay:0.14s}.q-slider__pin{opacity:0;white-space:nowrap;transition:opacity .28s ease-out;transition-delay:0.14s}.q-slider__pin:before{content:"";width:0;height:0;position:absolute}.q-slider__pin--h:before{border-left:6px solid transparent;border-right:6px solid transparent;left:50%;transform:translateX(-50%)}.q-slider__pin--h-standard{bottom:100%}.q-slider__pin--h-standard:before{bottom:2px;border-top:6px solid currentColor}.q-slider__pin--h-switched{top:100%}.q-slider__pin--h-switched:before{top:2px;border-bottom:6px solid currentColor}.q-slider__pin--v{top:0}.q-slider__pin--v:before{top:50%;transform:translateY(-50%);border-top:6px solid transparent;border-bottom:6px solid transparent}.q-slider__pin--v-standard{left:100%}.q-slider__pin--v-standard:before{left:2px;border-right:6px solid currentColor}.q-slider__pin--v-switched{right:100%}.q-slider__pin--v-switched:before{right:2px;border-left:6px solid currentColor}.q-slider__label{z-index:1;white-space:nowrap;position:absolute}.q-slider__label--h{left:50%;transform:translateX(-50%)}.q-slider__label--h-standard{bottom:7px}.q-slider__label--h-switched{top:7px}.q-slider__label--v{top:50%;transform:translateY(-50%)}.q-slider__label--v-standard{left:7px}.q-slider__label--v-switched{right:7px}.q-slider__text-container{min-height:25px;padding:2px 8px;border-radius:4px;background:currentColor;position:relative;text-align:center}.q-slider__text{color:#fff;font-size:12px}.q-slider--no-value .q-slider__inner,.q-slider--no-value .q-slider__selection,.q-slider--no-value .q-slider__thumb{opacity:0}.q-slider--focus .q-slider__focus-ring,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__focus-ring{background:currentColor;transform:scale3d(1.55,1.55,1);opacity:.25}.q-slider--focus .q-slider__inner,.q-slider--focus .q-slider__selection,.q-slider--focus .q-slider__thumb,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__inner,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__selection,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__thumb{opacity:1}.q-slider--inactive .q-slider__thumb--h{transition:left .28s,right .28s}.q-slider--inactive .q-slider__thumb--v{transition:top .28s,bottom .28s}.q-slider--inactive .q-slider__selection{transition:width .28s,left .28s,right .28s,height .28s,top .28s,bottom .28s}.q-slider--inactive .q-slider__text-container{transition:transform .28s}.q-slider--active{cursor:grabbing}.q-slider--active .q-slider__thumb-shape{transform:scale(1.5)}.q-slider--active .q-slider__focus-ring,.q-slider--active.q-slider--label .q-slider__thumb-shape{transform:scale(0)!important}body.desktop .q-slider.q-slider--enabled .q-slider__track-container:hover .q-slider__pin{opacity:1}.q-slider--label .q-slider--focus .q-slider__pin,.q-slider--label.q-slider--active .q-slider__pin,.q-slider--label.q-slider--label-always .q-slider__pin{opacity:1}.q-slider--dark .q-slider__track{background:rgba(255,255,255,.1)}.q-slider--dark .q-slider__inner{background:rgba(255,255,255,.1)}.q-slider--dark .q-slider__markers{color:rgba(255,255,255,.3)}.q-slider--dense .q-slider__track-container--h{padding:6px 0}.q-slider--dense .q-slider__track-container--v{padding:0 6px}.q-space{flex-grow:1!important}.q-spinner{vertical-align:middle}.q-spinner-mat{animation:q-spin 2s linear infinite;transform-origin:center center}.q-spinner-mat .path{stroke-dasharray:1,200;stroke-dashoffset:0;animation:q-mat-dash 1.5s ease-in-out infinite}@keyframes q-spin{0%{transform:rotate3d(0,0,1,0deg)}25%{transform:rotate3d(0,0,1,90deg)}50%{transform:rotate3d(0,0,1,180deg)}75%{transform:rotate3d(0,0,1,270deg)}100%{transform:rotate3d(0,0,1,359deg)}}@keyframes q-mat-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}100%{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.q-splitter__panel{position:relative;z-index:0}.q-splitter__panel>.q-splitter{width:100%;height:100%}.q-splitter__separator{background-color:rgba(0,0,0,.12);-webkit-user-select:none;user-select:none;position:relative;z-index:1}.q-splitter__separator-area>*{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.q-splitter--dark .q-splitter__separator{background-color:rgba(255,255,255,.28)}.q-splitter--vertical>.q-splitter__panel{height:100%}.q-splitter--vertical.q-splitter--active{cursor:col-resize}.q-splitter--vertical>.q-splitter__separator{width:1px}.q-splitter--vertical>.q-splitter__separator>div{left:-6px;right:-6px}.q-splitter--vertical.q-splitter--workable>.q-splitter__separator{cursor:col-resize}.q-splitter--horizontal>.q-splitter__panel{width:100%}.q-splitter--horizontal.q-splitter--active{cursor:row-resize}.q-splitter--horizontal>.q-splitter__separator{height:1px}.q-splitter--horizontal>.q-splitter__separator>div{top:-6px;bottom:-6px}.q-splitter--horizontal.q-splitter--workable>.q-splitter__separator{cursor:row-resize}.q-splitter__after,.q-splitter__before{overflow:auto}.q-stepper{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;background:#fff}.q-stepper__title{font-size:14px;line-height:1.285714;letter-spacing:.1px}.q-stepper__caption{font-size:12px;line-height:1.16667}.q-stepper__dot{contain:layout;margin-right:8px;font-size:14px;width:24px;min-width:24px;height:24px;border-radius:50%;background:currentColor}.q-stepper__dot span{color:#fff}.q-stepper__tab{padding:8px 24px;font-size:14px;color:#9e9e9e;flex-direction:row}.q-stepper--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-stepper--dark .q-stepper__dot span{color:#000}.q-stepper__tab--navigation{-webkit-user-select:none;user-select:none;cursor:pointer}.q-stepper__tab--active,.q-stepper__tab--done{color:var(--q-primary)}.q-stepper__tab--active .q-stepper__dot,.q-stepper__tab--active .q-stepper__label,.q-stepper__tab--done .q-stepper__dot,.q-stepper__tab--done .q-stepper__label{text-shadow:0 0 0 currentColor}.q-stepper__tab--disabled .q-stepper__dot{background:rgba(0,0,0,.22)}.q-stepper__tab--disabled .q-stepper__label{color:rgba(0,0,0,.32)}.q-stepper__tab--error{color:var(--q-negative)}.q-stepper__tab--error-with-icon .q-stepper__dot{background:0 0!important}.q-stepper__tab--error-with-icon .q-stepper__dot span{color:currentColor;font-size:24px}.q-stepper__header{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-stepper__header--border{border-bottom:1px solid rgba(0,0,0,.12)}.q-stepper__header--standard-labels .q-stepper__tab{min-height:72px;justify-content:center}.q-stepper__header--standard-labels .q-stepper__tab:first-child{justify-content:flex-start}.q-stepper__header--standard-labels .q-stepper__tab:last-child{justify-content:flex-end}.q-stepper__header--standard-labels .q-stepper__tab:only-child{justify-content:center}.q-stepper__header--standard-labels .q-stepper__dot:after{display:none}.q-stepper__header--alternative-labels .q-stepper__tab{min-height:104px;padding:24px 32px;flex-direction:column;justify-content:flex-start}.q-stepper__header--alternative-labels .q-stepper__dot{margin-right:0}.q-stepper__header--alternative-labels .q-stepper__label{margin-top:8px;text-align:center}.q-stepper__header--alternative-labels .q-stepper__label:after,.q-stepper__header--alternative-labels .q-stepper__label:before{display:none}.q-stepper__header--contracted{min-height:72px}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab{min-height:72px}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:first-child{align-items:flex-start}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:last-child{align-items:flex-end}.q-stepper__header--contracted .q-stepper__tab{padding:24px 0}.q-stepper__header--contracted .q-stepper__tab:first-child .q-stepper__dot{transform:translateX(24px)}.q-stepper__header--contracted .q-stepper__tab:last-child .q-stepper__dot{transform:translateX(-24px)}.q-stepper__header--contracted .q-stepper__tab:not(:last-child) .q-stepper__dot:after{display:block!important}.q-stepper__header--contracted .q-stepper__dot{margin:0}.q-stepper__header--contracted .q-stepper__label{display:none}.q-stepper__nav{padding-top:24px}.q-stepper--flat{box-shadow:none}.q-stepper--bordered{border:1px solid rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__step-inner{padding:24px}.q-stepper--horizontal .q-stepper__tab:first-child{border-top-left-radius:inherit}.q-stepper--horizontal .q-stepper__tab:last-child{border-top-right-radius:inherit}.q-stepper--horizontal .q-stepper__tab:first-child .q-stepper__dot:before,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__dot:after,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__label:after{display:none}.q-stepper--horizontal .q-stepper__tab{overflow:hidden}.q-stepper--horizontal .q-stepper__line{contain:layout}.q-stepper--horizontal .q-stepper__line:after,.q-stepper--horizontal .q-stepper__line:before{position:absolute;top:50%;height:1px;width:100vw;background:rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__dot:after,.q-stepper--horizontal .q-stepper__label:after{content:"";left:100%;margin-left:8px}.q-stepper--horizontal .q-stepper__dot:before{content:"";right:100%;margin-right:8px}.q-stepper--horizontal>.q-stepper__nav{padding:0 24px 24px}.q-stepper--vertical{padding:16px 0}.q-stepper--vertical .q-stepper__tab{padding:12px 24px}.q-stepper--vertical .q-stepper__title{line-height:18px}.q-stepper--vertical .q-stepper__step-inner{padding:0 24px 32px 60px}.q-stepper--vertical>.q-stepper__nav{padding:24px 24px 0}.q-stepper--vertical .q-stepper__step{overflow:hidden}.q-stepper--vertical .q-stepper__dot{margin-right:12px}.q-stepper--vertical .q-stepper__dot:after,.q-stepper--vertical .q-stepper__dot:before{content:"";position:absolute;left:50%;width:1px;height:99999px;background:rgba(0,0,0,.12)}.q-stepper--vertical .q-stepper__dot:before{bottom:100%;margin-bottom:8px}.q-stepper--vertical .q-stepper__dot:after{top:100%;margin-top:8px}.q-stepper--vertical .q-stepper__step:first-child .q-stepper__dot:before,.q-stepper--vertical .q-stepper__step:last-child .q-stepper__dot:after{display:none}.q-stepper--vertical .q-stepper__step:last-child .q-stepper__step-inner{padding-bottom:8px}.q-stepper--dark .q-stepper__header--border,.q-stepper--dark.q-stepper--bordered{border-color:rgba(255,255,255,.28)}.q-stepper--dark.q-stepper--horizontal .q-stepper__line:after,.q-stepper--dark.q-stepper--horizontal .q-stepper__line:before{background:rgba(255,255,255,.28)}.q-stepper--dark.q-stepper--vertical .q-stepper__dot:after,.q-stepper--dark.q-stepper--vertical .q-stepper__dot:before{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled{color:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__dot{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__label{color:rgba(255,255,255,.54)}.q-tab-panels{background:#fff}.q-tab-panel{padding:16px}.q-markup-table{overflow:auto;background:#fff}.q-table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0}.q-table tbody td,.q-table thead tr{height:48px}.q-table th{font-weight:500;font-size:12px;-webkit-user-select:none;user-select:none}.q-table th.sortable{cursor:pointer}.q-table th.sortable:hover .q-table__sort-icon{opacity:.64}.q-table th.sorted .q-table__sort-icon{opacity:.86!important}.q-table th.sort-desc .q-table__sort-icon{transform:rotate(180deg)}.q-table td,.q-table th{padding:7px 16px;background-color:inherit}.q-table td,.q-table th,.q-table thead{border-style:solid;border-width:0}.q-table tbody td{font-size:13px}.q-table__card{color:#000;background-color:#fff;border-radius:4px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.q-table__card .q-table__middle{flex:1 1 auto}.q-table__card .q-table__bottom,.q-table__card .q-table__top{flex:0 0 auto}.q-table__container{position:relative}.q-table__container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-table__container>div:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-table__container>.q-inner-loading{border-radius:inherit!important}.q-table__top{padding:12px 16px}.q-table__top .q-table__control{flex-wrap:wrap}.q-table__title{font-size:20px;letter-spacing:.005em;font-weight:400}.q-table__separator{min-width:8px!important}.q-table__progress{height:0!important}.q-table__progress th{padding:0!important;border:0!important}.q-table__progress .q-linear-progress{position:absolute;bottom:0}.q-table__middle{max-width:100%}.q-table__bottom{min-height:50px;padding:4px 14px 4px 16px;font-size:12px}.q-table__bottom .q-table__control{min-height:24px}.q-table__bottom-nodata-icon{font-size:200%;margin-right:8px}.q-table__bottom-item{margin-right:16px}.q-table__control{display:flex;align-items:center}.q-table__sort-icon{transition:transform .3s cubic-bezier(.25, .8, .5, 1);opacity:0;font-size:120%}.q-table__sort-icon--center,.q-table__sort-icon--left{margin-left:4px}.q-table__sort-icon--right{margin-right:4px}.q-table--col-auto-width{width:1px}.q-table--dark,.q-table__card--dark{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-table--flat{box-shadow:none}.q-table--bordered{border:1px solid rgba(0,0,0,.12)}.q-table--square{border-radius:0}.q-table__linear-progress{height:2px}.q-table--no-wrap td,.q-table--no-wrap th{white-space:nowrap}.q-table--grid{box-shadow:none;border-radius:4px}.q-table--grid .q-table__top{padding-bottom:4px}.q-table--grid .q-table__middle{min-height:2px;margin-bottom:4px}.q-table--grid .q-table__middle thead,.q-table--grid .q-table__middle thead th{border:0!important}.q-table--grid .q-table__linear-progress{bottom:0}.q-table--grid .q-table__bottom{border-top:0}.q-table--grid .q-table__grid-content{flex:1 1 auto}.q-table--grid.fullscreen{background:inherit}.q-table__grid-item-card{vertical-align:top;padding:12px}.q-table__grid-item-card .q-separator{margin:12px 0}.q-table__grid-item-row+.q-table__grid-item-row{margin-top:8px}.q-table__grid-item-title{opacity:.54;font-weight:500;font-size:12px}.q-table__grid-item-value{font-size:13px}.q-table__grid-item{padding:4px;transition:transform .3s cubic-bezier(.25, .8, .5, 1)}.q-table__grid-item--selected{transform:scale(.95)}.q-table--cell-separator tbody tr:not(:last-child)>td,.q-table--cell-separator thead th,.q-table--horizontal-separator tbody tr:not(:last-child)>td,.q-table--horizontal-separator thead th{border-bottom-width:1px}.q-table--cell-separator td,.q-table--cell-separator th,.q-table--vertical-separator td,.q-table--vertical-separator th{border-left-width:1px}.q-table--cell-separator thead tr:last-child th,.q-table--cell-separator.q-table--loading tr:nth-last-child(2) th,.q-table--vertical-separator thead tr:last-child th,.q-table--vertical-separator.q-table--loading tr:nth-last-child(2) th{border-bottom-width:1px}.q-table--cell-separator td:first-child,.q-table--cell-separator th:first-child,.q-table--vertical-separator td:first-child,.q-table--vertical-separator th:first-child{border-left:0}.q-table--cell-separator .q-table__top,.q-table--vertical-separator .q-table__top{border-bottom:1px solid rgba(0,0,0,.12)}.q-table--dense .q-table__top{padding:6px 16px}.q-table--dense .q-table__bottom{min-height:33px}.q-table--dense .q-table__sort-icon{font-size:110%}.q-table--dense .q-table td,.q-table--dense .q-table th{padding:4px 8px}.q-table--dense .q-table tbody td,.q-table--dense .q-table tbody tr,.q-table--dense .q-table thead tr{height:28px}.q-table--dense .q-table td:first-child,.q-table--dense .q-table th:first-child{padding-left:16px}.q-table--dense .q-table td:last-child,.q-table--dense .q-table th:last-child{padding-right:16px}.q-table--dense .q-table__bottom-item{margin-right:8px}.q-table--dense .q-table__select .q-field__control,.q-table--dense .q-table__select .q-field__native{min-height:24px;padding:0}.q-table--dense .q-table__select .q-field__marginal{height:24px}.q-table__bottom:not(.q-table__bottom--nodata){border-top:1px solid rgba(0,0,0,.12)}.q-table td,.q-table th,.q-table thead,.q-table tr{border-color:rgba(0,0,0,.12)}.q-table tbody td{position:relative}.q-table tbody td:after,.q-table tbody td:before{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.q-table tbody td:before{background:rgba(0,0,0,.03)}.q-table tbody td:after{background:rgba(0,0,0,.06)}.q-table tbody tr.selected td:after{content:""}body.desktop .q-table>tbody>tr:not(.q-tr--no-hover):hover>td:not(.q-td--no-hover):before{content:""}.q-table--dark,.q-table__card--dark{border-color:rgba(255,255,255,.28)}.q-table--dark .q-table__bottom,.q-table--dark td,.q-table--dark th,.q-table--dark thead,.q-table--dark tr{border-color:rgba(255,255,255,.28)}.q-table--dark tbody td:before{background:rgba(255,255,255,.07)}.q-table--dark tbody td:after{background:rgba(255,255,255,.1)}.q-table--dark.q-table--cell-separator .q-table__top,.q-table--dark.q-table--vertical-separator .q-table__top{border-color:rgba(255,255,255,.28)}.q-tab{padding:0 16px;min-height:48px;transition:color .3s,background-color .3s;text-transform:uppercase;white-space:nowrap;color:inherit;text-decoration:none}.q-tab--full{min-height:72px}.q-tab--no-caps{text-transform:none}.q-tab__content{height:inherit;padding:4px 0;min-width:40px}.q-tab__content--inline .q-tab__icon+.q-tab__label{padding-left:8px}.q-tab__content .q-chip--floating{top:0;right:-16px}.q-tab__icon{width:24px;height:24px;font-size:24px}.q-tab__label{font-size:14px;line-height:1.715em;font-weight:500}.q-tab .q-badge{top:3px;right:-12px}.q-tab__alert,.q-tab__alert-icon{position:absolute}.q-tab__alert{top:7px;right:-9px;height:10px;width:10px;border-radius:50%;background:currentColor}.q-tab__alert-icon{top:2px;right:-12px;font-size:18px}.q-tab__indicator{opacity:0;height:2px;background:currentColor}.q-tab--active .q-tab__indicator{opacity:1;transform-origin:left}.q-tab--inactive{opacity:.85}.q-tabs{position:relative;transition:color .3s,background-color .3s}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--horizontal{padding-left:36px;padding-right:36px}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--vertical{padding-top:36px;padding-bottom:36px}.q-tabs--scrollable.q-tabs__arrows--outside .q-tabs__arrow--faded{opacity:.3;pointer-events:none}.q-tabs--scrollable.q-tabs__arrows--inside .q-tabs__arrow--faded{display:none}.q-tabs--not-scrollable.q-tabs__arrows--outside,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows.q-tabs__arrows--outside{padding-left:0;padding-right:0}.q-tabs--not-scrollable .q-tabs__arrow,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__arrow{display:none}.q-tabs--not-scrollable .q-tabs__content,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__content{border-radius:inherit}.q-tabs__arrow{cursor:pointer;font-size:32px;min-width:36px;text-shadow:0 0 3px #fff,0 0 1px #fff,0 0 1px #000;transition:opacity .3s}.q-tabs__content{overflow:hidden;flex:1 1 auto}.q-tabs__content--align-center{justify-content:center}.q-tabs__content--align-right{justify-content:flex-end}.q-tabs__content--align-justify .q-tab{flex:1 1 auto}.q-tabs__offset{display:none}.q-tabs--horizontal .q-tabs__arrow{height:100%}.q-tabs--horizontal .q-tabs__arrow--left{top:0;left:0;bottom:0}.q-tabs--horizontal .q-tabs__arrow--right{top:0;right:0;bottom:0}.q-tabs--vertical{display:block!important;height:100%}.q-tabs--vertical .q-tabs__content{display:block!important;height:100%}.q-tabs--vertical .q-tabs__arrow{width:100%;height:36px;text-align:center}.q-tabs--vertical .q-tabs__arrow--left{top:0;left:0;right:0}.q-tabs--vertical .q-tabs__arrow--right{left:0;right:0;bottom:0}.q-tabs--vertical .q-tab{padding:0 8px}.q-tabs--vertical .q-tab__indicator{height:unset;width:2px}.q-tabs--vertical.q-tabs--not-scrollable .q-tabs__content{height:100%}.q-tabs--vertical.q-tabs--dense .q-tab__content{min-width:24px}.q-tabs--dense .q-tab{min-height:36px}.q-tabs--dense .q-tab--full{min-height:52px}.q-time{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;background:#fff;outline:0;width:290px;min-width:290px;max-width:100%}.q-time--bordered{border:1px solid rgba(0,0,0,.12)}.q-time__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px;font-weight:300}.q-time__actions{padding:0 16px 16px}.q-time__header-label{font-size:28px;line-height:1;letter-spacing:-.00833em}.q-time__header-label>div+div{margin-left:4px}.q-time__link{opacity:.56;outline:0;transition:opacity .3s ease-out}.q-time__link--active,.q-time__link:focus,.q-time__link:hover{opacity:1}.q-time__header-ampm{font-size:16px;letter-spacing:.1em}.q-time__content{padding:16px}.q-time__content:before{content:"";display:block;padding-bottom:100%}.q-time__container-parent{padding:16px}.q-time__container-child{border-radius:50%;background:rgba(0,0,0,.12)}.q-time__clock{padding:24px;width:100%;height:100%;max-width:100%;max-height:100%;font-size:14px}.q-time__clock-circle{position:relative}.q-time__clock-center{height:6px;width:6px;margin:auto;border-radius:50%;min-height:0;background:currentColor}.q-time__clock-pointer{width:2px;height:50%;transform-origin:0 0;min-height:0;position:absolute;left:50%;right:0;bottom:0;color:var(--q-primary);background:currentColor;transform:translateX(-50%)}.q-time__clock-pointer:after,.q-time__clock-pointer:before{content:"";position:absolute;left:50%;border-radius:50%;background:currentColor;transform:translateX(-50%)}.q-time__clock-pointer:before{bottom:-4px;width:8px;height:8px}.q-time__clock-pointer:after{top:-3px;height:6px;width:6px}.q-time__clock-position{position:absolute;min-height:32px;width:32px;height:32px;font-size:12px;line-height:32px;margin:0;padding:0;transform:translate(-50%,-50%);border-radius:50%}.q-time__clock-position--disable{opacity:.4}.q-time__clock-position--active{background-color:var(--q-primary);color:#fff}.q-time__clock-pos-0{top:0;left:50%}.q-time__clock-pos-1{top:6.7%;left:75%}.q-time__clock-pos-2{top:25%;left:93.3%}.q-time__clock-pos-3{top:50%;left:100%}.q-time__clock-pos-4{top:75%;left:93.3%}.q-time__clock-pos-5{top:93.3%;left:75%}.q-time__clock-pos-6{top:100%;left:50%}.q-time__clock-pos-7{top:93.3%;left:25%}.q-time__clock-pos-8{top:75%;left:6.7%}.q-time__clock-pos-9{top:50%;left:0}.q-time__clock-pos-10{top:25%;left:6.7%}.q-time__clock-pos-11{top:6.7%;left:25%}.q-time__clock-pos-12{top:15%;left:50%}.q-time__clock-pos-13{top:19.69%;left:67.5%}.q-time__clock-pos-14{top:32.5%;left:80.31%}.q-time__clock-pos-15{top:50%;left:85%}.q-time__clock-pos-16{top:67.5%;left:80.31%}.q-time__clock-pos-17{top:80.31%;left:67.5%}.q-time__clock-pos-18{top:85%;left:50%}.q-time__clock-pos-19{top:80.31%;left:32.5%}.q-time__clock-pos-20{top:67.5%;left:19.69%}.q-time__clock-pos-21{top:50%;left:15%}.q-time__clock-pos-22{top:32.5%;left:19.69%}.q-time__clock-pos-23{top:19.69%;left:32.5%}.q-time__now-button{background-color:var(--q-primary);color:#fff;top:12px;right:12px}.q-time--readonly .q-time__content,.q-time--readonly .q-time__header-ampm,.q-time.disabled .q-time__content,.q-time.disabled .q-time__header-ampm{pointer-events:none}.q-time--portrait{display:inline-flex;flex-direction:column}.q-time--portrait .q-time__header{border-top-right-radius:inherit;min-height:86px}.q-time--portrait .q-time__header-ampm{margin-left:12px}.q-time--portrait.q-time--bordered .q-time__content{margin:1px 0}.q-time--landscape{display:inline-flex;align-items:stretch;min-width:420px}.q-time--landscape>div{display:flex;flex-direction:column;justify-content:center}.q-time--landscape .q-time__header{border-bottom-left-radius:inherit;min-width:156px}.q-time--landscape .q-time__header-ampm{margin-top:12px}.q-time--dark{border-color:rgba(255,255,255,.28);box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-timeline{padding:0;width:100%;list-style:none}.q-timeline h6{line-height:inherit}.q-timeline--dark{color:#fff}.q-timeline--dark .q-timeline__subtitle{opacity:.7}.q-timeline__content{padding-bottom:24px}.q-timeline__title{margin-top:0;margin-bottom:16px}.q-timeline__subtitle{font-size:12px;margin-bottom:8px;opacity:.6;text-transform:uppercase;letter-spacing:1px;font-weight:700}.q-timeline__dot{position:absolute;top:0;bottom:0;width:15px}.q-timeline__dot:after,.q-timeline__dot:before{content:"";background:currentColor;display:block;position:absolute}.q-timeline__dot:before{border:3px solid transparent;border-radius:100%;height:15px;width:15px;top:4px;left:0;transition:background .3s ease-in-out,border .3s ease-in-out}.q-timeline__dot:after{width:3px;opacity:.4;top:24px;bottom:0;left:6px}.q-timeline__dot .q-icon{position:absolute;top:0;left:0;right:0;font-size:16px;height:38px;line-height:38px;width:100%;color:#fff}.q-timeline__dot .q-icon>img,.q-timeline__dot .q-icon>svg{width:1em;height:1em}.q-timeline__dot-img{position:absolute;top:4px;left:0;right:0;height:31px;width:31px;background:currentColor;border-radius:50%}.q-timeline__heading{position:relative}.q-timeline__heading:first-child .q-timeline__heading-title{padding-top:0}.q-timeline__heading:last-child .q-timeline__heading-title{padding-bottom:0}.q-timeline__heading-title{padding:32px 0;margin:0}.q-timeline__entry{position:relative;line-height:22px}.q-timeline__entry:last-child{padding-bottom:0!important}.q-timeline__entry:last-child .q-timeline__dot:after{content:none}.q-timeline__entry--icon .q-timeline__dot{width:31px}.q-timeline__entry--icon .q-timeline__dot:before{height:31px;width:31px}.q-timeline__entry--icon .q-timeline__dot:after{top:41px;left:14px}.q-timeline__entry--icon .q-timeline__subtitle{padding-top:8px}.q-timeline--dense--right .q-timeline__entry{padding-left:40px}.q-timeline--dense--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--dense--right .q-timeline__dot{left:0}.q-timeline--dense--left .q-timeline__heading{text-align:right}.q-timeline--dense--left .q-timeline__entry{padding-right:40px}.q-timeline--dense--left .q-timeline__entry--icon .q-timeline__dot{right:-8px}.q-timeline--dense--left .q-timeline__content,.q-timeline--dense--left .q-timeline__subtitle,.q-timeline--dense--left .q-timeline__title{text-align:right}.q-timeline--dense--left .q-timeline__dot{right:0}.q-timeline--comfortable{display:table}.q-timeline--comfortable .q-timeline__heading{display:table-row;font-size:200%}.q-timeline--comfortable .q-timeline__heading>div{display:table-cell}.q-timeline--comfortable .q-timeline__entry{display:table-row;padding:0}.q-timeline--comfortable .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--comfortable .q-timeline__content,.q-timeline--comfortable .q-timeline__dot,.q-timeline--comfortable .q-timeline__subtitle{display:table-cell;vertical-align:top}.q-timeline--comfortable .q-timeline__subtitle{width:35%}.q-timeline--comfortable .q-timeline__dot{position:relative;min-width:31px}.q-timeline--comfortable--right .q-timeline__heading .q-timeline__heading-title{margin-left:-50px}.q-timeline--comfortable--right .q-timeline__subtitle{text-align:right;padding-right:30px}.q-timeline--comfortable--right .q-timeline__content{padding-left:30px}.q-timeline--comfortable--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--comfortable--left .q-timeline__heading{text-align:right}.q-timeline--comfortable--left .q-timeline__heading .q-timeline__heading-title{margin-right:-50px}.q-timeline--comfortable--left .q-timeline__subtitle{padding-left:30px}.q-timeline--comfortable--left .q-timeline__content{padding-right:30px}.q-timeline--comfortable--left .q-timeline__content,.q-timeline--comfortable--left .q-timeline__title{text-align:right}.q-timeline--comfortable--left .q-timeline__entry--icon .q-timeline__dot{right:0}.q-timeline--comfortable--left .q-timeline__dot{right:-8px}.q-timeline--loose .q-timeline__heading-title{text-align:center;margin-left:0}.q-timeline--loose .q-timeline__content,.q-timeline--loose .q-timeline__dot,.q-timeline--loose .q-timeline__entry,.q-timeline--loose .q-timeline__subtitle{display:block;margin:0;padding:0}.q-timeline--loose .q-timeline__dot{position:absolute;left:50%;margin-left:-7.15px}.q-timeline--loose .q-timeline__entry{padding-bottom:24px;overflow:hidden}.q-timeline--loose .q-timeline__entry--icon .q-timeline__dot{margin-left:-15px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__subtitle{line-height:38px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--loose .q-timeline__entry--left .q-timeline__content,.q-timeline--loose .q-timeline__entry--right .q-timeline__subtitle{float:left;padding-right:30px;text-align:right}.q-timeline--loose .q-timeline__entry--left .q-timeline__subtitle,.q-timeline--loose .q-timeline__entry--right .q-timeline__content{float:right;text-align:left;padding-left:30px}.q-timeline--loose .q-timeline__content,.q-timeline--loose .q-timeline__subtitle{width:50%}.q-toggle{vertical-align:middle}.q-toggle__native{width:1px;height:1px}.q-toggle__track{height:.35em;border-radius:.175em;opacity:.38;background:currentColor}.q-toggle__thumb{top:.25em;left:.25em;width:.5em;height:.5em;transition:left .22s cubic-bezier(.4, 0, .2, 1);-webkit-user-select:none;user-select:none;z-index:0}.q-toggle__thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#fff;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.q-toggle__thumb .q-icon{font-size:.3em;min-width:1em;color:#000;opacity:.54;z-index:1}.q-toggle__inner{font-size:40px;width:1.4em;min-width:1.4em;height:1em;padding:.325em .3em;-webkit-print-color-adjust:exact}.q-toggle__inner--indet .q-toggle__thumb{left:.45em}.q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle__inner--truthy .q-toggle__track{opacity:.54}.q-toggle__inner--truthy .q-toggle__thumb{left:.65em}.q-toggle__inner--truthy .q-toggle__thumb:after{background-color:currentColor}.q-toggle__inner--truthy .q-toggle__thumb .q-icon{color:#fff;opacity:1}.q-toggle.disabled{opacity:.75!important}.q-toggle--dark .q-toggle__inner{color:#fff}.q-toggle--dark .q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle--dark .q-toggle__thumb:after{box-shadow:none}.q-toggle--dark .q-toggle__thumb:before{opacity:.32!important}.q-toggle--dense .q-toggle__inner{width:.8em;min-width:.8em;height:.5em;padding:.07625em 0}.q-toggle--dense .q-toggle__thumb{top:0;left:0}.q-toggle--dense .q-toggle__inner--indet .q-toggle__thumb{left:.15em}.q-toggle--dense .q-toggle__inner--truthy .q-toggle__thumb{left:.3em}.q-toggle--dense .q-toggle__label{padding-left:.5em}.q-toggle--dense.reverse .q-toggle__label{padding-left:0;padding-right:.5em}body.desktop .q-toggle:not(.disabled) .q-toggle__thumb:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0, 0, .2, 1)}body.desktop .q-toggle:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(2,2,1)}body.desktop .q-toggle--dense:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle--dense:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(1.5,1.5,1)}.q-toolbar{position:relative;padding:0 12px;min-height:50px;width:100%}.q-toolbar--inset{padding-left:58px}.q-toolbar .q-avatar{font-size:38px}.q-toolbar__title{flex:1 1 0%;min-width:1px;max-width:100%;font-size:21px;font-weight:400;letter-spacing:.01em;padding:0 12px}.q-toolbar__title:first-child{padding-left:0}.q-toolbar__title:last-child{padding-right:0}.q-tooltip--style{font-size:10px;color:#fafafa;background:#757575;border-radius:4px;text-transform:none;font-weight:400}.q-tooltip{z-index:9000;position:fixed!important;overflow-y:auto;overflow-x:hidden;padding:6px 10px;max-width:95vw;max-height:65vh}@media (max-width:599.98px){.q-tooltip{font-size:14px;padding:8px 16px}}.q-tree{position:relative;color:#9e9e9e}.q-tree__node{padding:0 0 3px 22px}.q-tree__node:after{content:"";position:absolute;top:-3px;bottom:0;width:2px;right:auto;left:-13px;border-left:1px solid currentColor}.q-tree__node:last-child:after{display:none}.q-tree__node--disabled{pointer-events:none}.q-tree__node--disabled .disabled{opacity:1!important}.q-tree__node--disabled>.disabled,.q-tree__node--disabled>div,.q-tree__node--disabled>i{opacity:.6!important}.q-tree__node--disabled>.disabled .q-tree__node--disabled>.disabled,.q-tree__node--disabled>.disabled .q-tree__node--disabled>div,.q-tree__node--disabled>.disabled .q-tree__node--disabled>i,.q-tree__node--disabled>div .q-tree__node--disabled>.disabled,.q-tree__node--disabled>div .q-tree__node--disabled>div,.q-tree__node--disabled>div .q-tree__node--disabled>i,.q-tree__node--disabled>i .q-tree__node--disabled>.disabled,.q-tree__node--disabled>i .q-tree__node--disabled>div,.q-tree__node--disabled>i .q-tree__node--disabled>i{opacity:1!important}.q-tree__node-header:before{content:"";position:absolute;top:-3px;bottom:50%;width:31px;left:-35px;border-left:1px solid currentColor;border-bottom:1px solid currentColor}.q-tree__children{padding-left:25px}.q-tree__node-body{padding:5px 0 8px 5px}.q-tree__node--parent{padding-left:2px}.q-tree__node--parent>.q-tree__node-header:before{width:15px;left:-15px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:5px 0 8px 27px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{content:"";position:absolute;top:0;width:2px;height:100%;right:auto;left:12px;border-left:1px solid currentColor;bottom:50px}.q-tree__node--link{cursor:pointer}.q-tree__node-header{padding:4px;margin-top:3px;border-radius:4px;outline:0}.q-tree__node-header-content{color:#000;transition:color .3s}.q-tree__node--selected .q-tree__node-header-content{color:#9e9e9e}.q-tree__icon,.q-tree__node-header-content .q-icon{font-size:21px}.q-tree__img{height:42px;border-radius:2px}.q-tree__avatar,.q-tree__node-header-content .q-avatar{font-size:28px;border-radius:50%;width:28px;height:28px}.q-tree__arrow,.q-tree__spinner{font-size:16px;margin-right:4px}.q-tree__arrow{transition:transform .3s}.q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-tree__tickbox{margin-right:4px}.q-tree>.q-tree__node{padding:0}.q-tree>.q-tree__node:after,.q-tree>.q-tree__node>.q-tree__node-header:before{display:none}.q-tree>.q-tree__node--child>.q-tree__node-header{padding-left:24px}.q-tree--dark .q-tree__node-header-content{color:#fff}.q-tree--no-connectors .q-tree__node-body:after,.q-tree--no-connectors .q-tree__node-header:before,.q-tree--no-connectors .q-tree__node:after{display:none!important}.q-tree--dense>.q-tree__node--child>.q-tree__node-header{padding-left:1px}.q-tree--dense .q-tree__arrow,.q-tree--dense .q-tree__spinner{margin-right:1px}.q-tree--dense .q-tree__img{height:32px}.q-tree--dense .q-tree__tickbox{margin-right:3px}.q-tree--dense .q-tree__node{padding:0}.q-tree--dense .q-tree__node:after{top:0;left:-8px}.q-tree--dense .q-tree__node-header{margin-top:0;padding:1px}.q-tree--dense .q-tree__node-header:before{top:0;left:-8px;width:8px}.q-tree--dense .q-tree__node--child{padding-left:17px}.q-tree--dense .q-tree__node--child>.q-tree__node-header:before{left:-25px;width:21px}.q-tree--dense .q-tree__node-body{padding:0 0 2px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:0 0 2px 20px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{left:8px}.q-tree--dense .q-tree__children{padding-left:16px}[dir=rtl] .q-tree__arrow{transform:rotate3d(0,0,1,180deg)}[dir=rtl] .q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-uploader{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;vertical-align:top;background:#fff;position:relative;width:320px;max-height:320px}.q-uploader--bordered{border:1px solid rgba(0,0,0,.12)}.q-uploader__input{opacity:0;width:100%;height:100%;cursor:pointer!important;z-index:1}.q-uploader__input::-webkit-file-upload-button{cursor:pointer}.q-uploader__file:before{content:"";border-top-left-radius:inherit;border-top-right-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:currentColor;opacity:.04}.q-uploader__header{position:relative;border-top-left-radius:inherit;border-top-right-radius:inherit;background-color:var(--q-primary);color:#fff;width:100%}.q-uploader__spinner{font-size:24px;margin-right:4px}.q-uploader__header-content{padding:8px}.q-uploader__dnd{outline:1px dashed currentColor;outline-offset:-4px;background:rgba(255,255,255,.6)}.q-uploader__overlay{font-size:36px;color:#000;background-color:rgba(255,255,255,.6)}.q-uploader__list{position:relative;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;padding:8px;min-height:60px;flex:1 1 auto}.q-uploader__file{border-radius:4px 4px 0 0;border:1px solid rgba(0,0,0,.12)}.q-uploader__file .q-circular-progress{font-size:24px}.q-uploader__file--img{color:#fff;height:200px;min-width:200px;background-position:50% 50%;background-repeat:no-repeat}.q-uploader__file--img:before{content:none}.q-uploader__file--img .q-circular-progress{color:#fff}.q-uploader__file--img .q-uploader__file-header{padding-bottom:24px;background:linear-gradient(to bottom,rgba(0,0,0,.7) 20%,rgba(255,255,255,0))}.q-uploader__file+.q-uploader__file{margin-top:8px}.q-uploader__file-header{position:relative;padding:4px 8px;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-uploader__file-header-content{padding-right:8px}.q-uploader__file-status{font-size:24px;margin-right:4px}.q-uploader__title{font-size:14px;font-weight:700;line-height:1.285714;word-break:break-word}.q-uploader__subtitle{font-size:12px;line-height:1.5}.q-uploader--disable .q-uploader__header,.q-uploader--disable .q-uploader__list{pointer-events:none}.q-uploader--dark{border-color:rgba(255,255,255,.28);box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}.q-uploader--dark .q-uploader__file{border-color:rgba(255,255,255,.28)}.q-uploader--dark .q-uploader__dnd,.q-uploader--dark .q-uploader__overlay{background:rgba(255,255,255,.3)}.q-uploader--dark .q-uploader__overlay{color:#fff}img.responsive{max-width:100%;height:auto}.q-video{position:relative;overflow:hidden;border-radius:inherit}.q-video embed,.q-video iframe,.q-video object{width:100%;height:100%}.q-video--responsive{height:0}.q-video--responsive embed,.q-video--responsive iframe,.q-video--responsive object{position:absolute;top:0;left:0}.q-virtual-scroll:focus{outline:0}.q-virtual-scroll__content{outline:0;contain:content}.q-virtual-scroll__content>*{overflow-anchor:none}.q-virtual-scroll__content>[data-q-vs-anchor]{overflow-anchor:auto}.q-virtual-scroll__padding{background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width,100%) var(--q-virtual-scroll-item-height,50px)}.q-table .q-virtual-scroll__padding tr{height:0!important}.q-table .q-virtual-scroll__padding td{padding:0!important}.q-virtual-scroll--horizontal{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch}.q-virtual-scroll--horizontal .q-virtual-scroll__content{display:flex;flex-direction:row;flex-wrap:nowrap}.q-virtual-scroll--horizontal .q-virtual-scroll__content,.q-virtual-scroll--horizontal .q-virtual-scroll__content>*,.q-virtual-scroll--horizontal .q-virtual-scroll__padding{flex:0 0 auto}.q-virtual-scroll--horizontal .q-virtual-scroll__padding{background:linear-gradient(to left,rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width,50px) var(--q-virtual-scroll-item-height,100%)}.q-ripple{position:absolute;top:0;left:0;width:100%;height:100%;color:inherit;border-radius:inherit;z-index:0;pointer-events:none;overflow:hidden;contain:strict}.q-ripple__inner{position:absolute;top:0;left:0;opacity:0;color:inherit;border-radius:50%;background:currentColor;pointer-events:none;will-change:transform,opacity}.q-ripple__inner--enter{transition:transform 225ms cubic-bezier(.4, 0, .2, 1),opacity .1s cubic-bezier(.4, 0, .2, 1)}.q-ripple__inner--leave{transition:opacity .25s cubic-bezier(.4, 0, .2, 1)}.q-morph--internal,.q-morph--invisible{opacity:0!important;pointer-events:none!important;position:fixed!important;right:200vw!important;bottom:200vh!important}.q-bottom-sheet{padding-bottom:8px}.q-bottom-sheet__avatar{border-radius:50%}.q-bottom-sheet--list{width:400px}.q-bottom-sheet--list .q-icon,.q-bottom-sheet--list img{font-size:24px;width:24px;height:24px}.q-bottom-sheet--grid{width:700px}.q-bottom-sheet--grid .q-bottom-sheet__item{padding:8px;text-align:center;min-width:100px}.q-bottom-sheet--grid .q-bottom-sheet__empty-icon,.q-bottom-sheet--grid .q-icon,.q-bottom-sheet--grid img{font-size:48px;width:48px;height:48px;margin-bottom:8px}.q-bottom-sheet--grid .q-separator{margin:12px 0}.q-bottom-sheet__item{flex:0 0 33.3333%}@media (min-width:600px){.q-bottom-sheet__item{flex:0 0 25%}}.q-dialog-plugin{width:400px}.q-dialog-plugin__form{max-height:50vh}.q-dialog-plugin .q-card__section+.q-card__section{padding-top:0}.q-dialog-plugin--progress{text-align:center}.q-loading{color:#000;position:fixed!important}.q-loading__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;opacity:.5;z-index:-1;background-color:#000;transition:background-color .28s}.q-loading__box{border-radius:4px;padding:18px;color:#fff;max-width:450px}.q-loading__message{margin:40px 20px 0;text-align:center}.q-notifications__list{z-index:9500;pointer-events:none;left:0;right:0;margin-bottom:10px;position:relative}.q-notifications__list--center{top:0;bottom:0}.q-notifications__list--top{top:0}.q-notifications__list--bottom{bottom:0}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--top{top:20px;top:env(safe-area-inset-top)}body.q-ios-padding .q-notifications__list--bottom,body.q-ios-padding .q-notifications__list--center{bottom:env(safe-area-inset-bottom)}.q-notification{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:4px;pointer-events:all;display:inline-flex;margin:10px 10px 0;transition:transform 1s,opacity 1s;z-index:9500;flex-shrink:0;max-width:95vw;background:#323232;color:#fff;font-size:14px}.q-notification__icon{font-size:24px;flex:0 0 1em}.q-notification__icon--additional{margin-right:16px}.q-notification__avatar{font-size:32px}.q-notification__avatar--additional{margin-right:8px}.q-notification__spinner{font-size:32px}.q-notification__spinner--additional{margin-right:8px}.q-notification__message{padding:8px 0}.q-notification__caption{font-size:.9em;opacity:.7}.q-notification__actions{color:var(--q-primary)}.q-notification__badge{animation:q-notif-badge .42s;padding:4px 8px;position:absolute;box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);background-color:var(--q-negative);color:#fff;border-radius:4px;font-size:12px;line-height:12px}.q-notification__badge--top-left,.q-notification__badge--top-right{top:-6px}.q-notification__badge--bottom-left,.q-notification__badge--bottom-right{bottom:-6px}.q-notification__badge--bottom-left,.q-notification__badge--top-left{left:-22px}.q-notification__badge--bottom-right,.q-notification__badge--top-right{right:-22px}.q-notification__progress{z-index:-1;position:absolute;height:3px;bottom:0;left:-10px;right:-10px;animation:q-notif-progress linear;background:currentColor;opacity:.3;border-radius:4px 4px 0 0;transform-origin:0 50%;transform:scaleX(0)}.q-notification--standard{padding:0 16px;min-height:48px}.q-notification--standard .q-notification__actions{padding:6px 0 6px 8px;margin-right:-8px}.q-notification--multi-line{min-height:68px;padding:8px 16px}.q-notification--multi-line .q-notification__badge--top-left,.q-notification--multi-line .q-notification__badge--top-right{top:-15px}.q-notification--multi-line .q-notification__badge--bottom-left,.q-notification--multi-line .q-notification__badge--bottom-right{bottom:-15px}.q-notification--multi-line .q-notification__progress{bottom:-8px}.q-notification--multi-line .q-notification__actions{padding:0}.q-notification--multi-line .q-notification__actions--with-media{padding-left:25px}.q-notification--top-enter-from,.q-notification--top-leave-to,.q-notification--top-left-enter-from,.q-notification--top-left-leave-to,.q-notification--top-right-enter-from,.q-notification--top-right-leave-to{opacity:0;transform:translateY(-50px);z-index:9499}.q-notification--center-enter-from,.q-notification--center-leave-to,.q-notification--left-enter-from,.q-notification--left-leave-to,.q-notification--right-enter-from,.q-notification--right-leave-to{opacity:0;transform:rotateX(90deg);z-index:9499}.q-notification--bottom-enter-from,.q-notification--bottom-leave-to,.q-notification--bottom-left-enter-from,.q-notification--bottom-left-leave-to,.q-notification--bottom-right-enter-from,.q-notification--bottom-right-leave-to{opacity:0;transform:translateY(50px);z-index:9499}.q-notification--bottom-leave-active,.q-notification--bottom-left-leave-active,.q-notification--bottom-right-leave-active,.q-notification--center-leave-active,.q-notification--left-leave-active,.q-notification--right-leave-active,.q-notification--top-leave-active,.q-notification--top-left-leave-active,.q-notification--top-right-leave-active{position:absolute;z-index:9499;margin-left:0;margin-right:0}.q-notification--center-leave-active,.q-notification--top-leave-active{top:0}.q-notification--bottom-leave-active,.q-notification--bottom-left-leave-active,.q-notification--bottom-right-leave-active{bottom:0}@media (min-width:600px){.q-notification{max-width:65vw}}@keyframes q-notif-badge{15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}}@keyframes q-notif-progress{0%{transform:scaleX(1)}100%{transform:scaleX(0)}}:root{--animate-duration:0.3s;--animate-delay:0.3s;--animate-repeat:1}.animated{animation-duration:var(--animate-duration);animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.repeat-1{animation-iteration-count:var(--animate-repeat)}.animated.repeat-2{animation-iteration-count:calc(var(--animate-repeat) * 2)}.animated.repeat-3{animation-iteration-count:calc(var(--animate-repeat) * 3)}.animated.delay-1s{animation-delay:var(--animate-delay)}.animated.delay-2s{animation-delay:calc(var(--animate-delay) * 2)}.animated.delay-3s{animation-delay:calc(var(--animate-delay) * 3)}.animated.delay-4s{animation-delay:calc(var(--animate-delay) * 4)}.animated.delay-5s{animation-delay:calc(var(--animate-delay) * 5)}.animated.faster{animation-duration:calc(var(--animate-duration) / 2)}.animated.fast{animation-duration:calc(var(--animate-duration) * .8)}.animated.slow{animation-duration:calc(var(--animate-duration) * 2)}.animated.slower{animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion:reduce){.animated{animation-duration:1ms!important;transition-duration:1ms!important;animation-iteration-count:1!important}.animated[class*=Out]{opacity:0}}.q-animate--scale{animation:q-scale .15s;animation-timing-function:cubic-bezier(0.25,0.8,0.25,1)}@keyframes q-scale{0%{transform:scale(1)}50%{transform:scale(1.04)}100%{transform:scale(1)}}.q-animate--fade{animation:q-fade .2s}@keyframes q-fade{0%{opacity:0}100%{opacity:1}}:root{--q-primary:#1976D2;--q-secondary:#26A69A;--q-accent:#9C27B0;--q-positive:#21BA45;--q-negative:#C10015;--q-info:#31CCEC;--q-warning:#F2C037;--q-dark:#1d1d1d;--q-dark-page:#121212}.text-dark{color:var(--q-dark)!important}.bg-dark{background:var(--q-dark)!important}.text-primary{color:var(--q-primary)!important}.bg-primary{background:var(--q-primary)!important}.text-secondary{color:var(--q-secondary)!important}.bg-secondary{background:var(--q-secondary)!important}.text-accent{color:var(--q-accent)!important}.bg-accent{background:var(--q-accent)!important}.text-positive{color:var(--q-positive)!important}.bg-positive{background:var(--q-positive)!important}.text-negative{color:var(--q-negative)!important}.bg-negative{background:var(--q-negative)!important}.text-info{color:var(--q-info)!important}.bg-info{background:var(--q-info)!important}.text-warning{color:var(--q-warning)!important}.bg-warning{background:var(--q-warning)!important}.text-white{color:#fff!important}.bg-white{background:#fff!important}.text-black{color:#000!important}.bg-black{background:#000!important}.text-transparent{color:transparent!important}.bg-transparent{background:0 0!important}.text-separator{color:rgba(0,0,0,.12)!important}.bg-separator{background:rgba(0,0,0,.12)!important}.text-dark-separator{color:rgba(255,255,255,.28)!important}.bg-dark-separator{background:rgba(255,255,255,.28)!important}.text-red{color:#f44336!important}.text-red-1{color:#ffebee!important}.text-red-2{color:#ffcdd2!important}.text-red-3{color:#ef9a9a!important}.text-red-4{color:#e57373!important}.text-red-5{color:#ef5350!important}.text-red-6{color:#f44336!important}.text-red-7{color:#e53935!important}.text-red-8{color:#d32f2f!important}.text-red-9{color:#c62828!important}.text-red-10{color:#b71c1c!important}.text-red-11{color:#ff8a80!important}.text-red-12{color:#ff5252!important}.text-red-13{color:#ff1744!important}.text-red-14{color:#d50000!important}.text-pink{color:#e91e63!important}.text-pink-1{color:#fce4ec!important}.text-pink-2{color:#f8bbd0!important}.text-pink-3{color:#f48fb1!important}.text-pink-4{color:#f06292!important}.text-pink-5{color:#ec407a!important}.text-pink-6{color:#e91e63!important}.text-pink-7{color:#d81b60!important}.text-pink-8{color:#c2185b!important}.text-pink-9{color:#ad1457!important}.text-pink-10{color:#880e4f!important}.text-pink-11{color:#ff80ab!important}.text-pink-12{color:#ff4081!important}.text-pink-13{color:#f50057!important}.text-pink-14{color:#c51162!important}.text-purple{color:#9c27b0!important}.text-purple-1{color:#f3e5f5!important}.text-purple-2{color:#e1bee7!important}.text-purple-3{color:#ce93d8!important}.text-purple-4{color:#ba68c8!important}.text-purple-5{color:#ab47bc!important}.text-purple-6{color:#9c27b0!important}.text-purple-7{color:#8e24aa!important}.text-purple-8{color:#7b1fa2!important}.text-purple-9{color:#6a1b9a!important}.text-purple-10{color:#4a148c!important}.text-purple-11{color:#ea80fc!important}.text-purple-12{color:#e040fb!important}.text-purple-13{color:#d500f9!important}.text-purple-14{color:#a0f!important}.text-deep-purple{color:#673ab7!important}.text-deep-purple-1{color:#ede7f6!important}.text-deep-purple-2{color:#d1c4e9!important}.text-deep-purple-3{color:#b39ddb!important}.text-deep-purple-4{color:#9575cd!important}.text-deep-purple-5{color:#7e57c2!important}.text-deep-purple-6{color:#673ab7!important}.text-deep-purple-7{color:#5e35b1!important}.text-deep-purple-8{color:#512da8!important}.text-deep-purple-9{color:#4527a0!important}.text-deep-purple-10{color:#311b92!important}.text-deep-purple-11{color:#b388ff!important}.text-deep-purple-12{color:#7c4dff!important}.text-deep-purple-13{color:#651fff!important}.text-deep-purple-14{color:#6200ea!important}.text-indigo{color:#3f51b5!important}.text-indigo-1{color:#e8eaf6!important}.text-indigo-2{color:#c5cae9!important}.text-indigo-3{color:#9fa8da!important}.text-indigo-4{color:#7986cb!important}.text-indigo-5{color:#5c6bc0!important}.text-indigo-6{color:#3f51b5!important}.text-indigo-7{color:#3949ab!important}.text-indigo-8{color:#303f9f!important}.text-indigo-9{color:#283593!important}.text-indigo-10{color:#1a237e!important}.text-indigo-11{color:#8c9eff!important}.text-indigo-12{color:#536dfe!important}.text-indigo-13{color:#3d5afe!important}.text-indigo-14{color:#304ffe!important}.text-blue{color:#2196f3!important}.text-blue-1{color:#e3f2fd!important}.text-blue-2{color:#bbdefb!important}.text-blue-3{color:#90caf9!important}.text-blue-4{color:#64b5f6!important}.text-blue-5{color:#42a5f5!important}.text-blue-6{color:#2196f3!important}.text-blue-7{color:#1e88e5!important}.text-blue-8{color:#1976d2!important}.text-blue-9{color:#1565c0!important}.text-blue-10{color:#0d47a1!important}.text-blue-11{color:#82b1ff!important}.text-blue-12{color:#448aff!important}.text-blue-13{color:#2979ff!important}.text-blue-14{color:#2962ff!important}.text-light-blue{color:#03a9f4!important}.text-light-blue-1{color:#e1f5fe!important}.text-light-blue-2{color:#b3e5fc!important}.text-light-blue-3{color:#81d4fa!important}.text-light-blue-4{color:#4fc3f7!important}.text-light-blue-5{color:#29b6f6!important}.text-light-blue-6{color:#03a9f4!important}.text-light-blue-7{color:#039be5!important}.text-light-blue-8{color:#0288d1!important}.text-light-blue-9{color:#0277bd!important}.text-light-blue-10{color:#01579b!important}.text-light-blue-11{color:#80d8ff!important}.text-light-blue-12{color:#40c4ff!important}.text-light-blue-13{color:#00b0ff!important}.text-light-blue-14{color:#0091ea!important}.text-cyan{color:#00bcd4!important}.text-cyan-1{color:#e0f7fa!important}.text-cyan-2{color:#b2ebf2!important}.text-cyan-3{color:#80deea!important}.text-cyan-4{color:#4dd0e1!important}.text-cyan-5{color:#26c6da!important}.text-cyan-6{color:#00bcd4!important}.text-cyan-7{color:#00acc1!important}.text-cyan-8{color:#0097a7!important}.text-cyan-9{color:#00838f!important}.text-cyan-10{color:#006064!important}.text-cyan-11{color:#84ffff!important}.text-cyan-12{color:#18ffff!important}.text-cyan-13{color:#00e5ff!important}.text-cyan-14{color:#00b8d4!important}.text-teal{color:#009688!important}.text-teal-1{color:#e0f2f1!important}.text-teal-2{color:#b2dfdb!important}.text-teal-3{color:#80cbc4!important}.text-teal-4{color:#4db6ac!important}.text-teal-5{color:#26a69a!important}.text-teal-6{color:#009688!important}.text-teal-7{color:#00897b!important}.text-teal-8{color:#00796b!important}.text-teal-9{color:#00695c!important}.text-teal-10{color:#004d40!important}.text-teal-11{color:#a7ffeb!important}.text-teal-12{color:#64ffda!important}.text-teal-13{color:#1de9b6!important}.text-teal-14{color:#00bfa5!important}.text-green{color:#4caf50!important}.text-green-1{color:#e8f5e9!important}.text-green-2{color:#c8e6c9!important}.text-green-3{color:#a5d6a7!important}.text-green-4{color:#81c784!important}.text-green-5{color:#66bb6a!important}.text-green-6{color:#4caf50!important}.text-green-7{color:#43a047!important}.text-green-8{color:#388e3c!important}.text-green-9{color:#2e7d32!important}.text-green-10{color:#1b5e20!important}.text-green-11{color:#b9f6ca!important}.text-green-12{color:#69f0ae!important}.text-green-13{color:#00e676!important}.text-green-14{color:#00c853!important}.text-light-green{color:#8bc34a!important}.text-light-green-1{color:#f1f8e9!important}.text-light-green-2{color:#dcedc8!important}.text-light-green-3{color:#c5e1a5!important}.text-light-green-4{color:#aed581!important}.text-light-green-5{color:#9ccc65!important}.text-light-green-6{color:#8bc34a!important}.text-light-green-7{color:#7cb342!important}.text-light-green-8{color:#689f38!important}.text-light-green-9{color:#558b2f!important}.text-light-green-10{color:#33691e!important}.text-light-green-11{color:#ccff90!important}.text-light-green-12{color:#b2ff59!important}.text-light-green-13{color:#76ff03!important}.text-light-green-14{color:#64dd17!important}.text-lime{color:#cddc39!important}.text-lime-1{color:#f9fbe7!important}.text-lime-2{color:#f0f4c3!important}.text-lime-3{color:#e6ee9c!important}.text-lime-4{color:#dce775!important}.text-lime-5{color:#d4e157!important}.text-lime-6{color:#cddc39!important}.text-lime-7{color:#c0ca33!important}.text-lime-8{color:#afb42b!important}.text-lime-9{color:#9e9d24!important}.text-lime-10{color:#827717!important}.text-lime-11{color:#f4ff81!important}.text-lime-12{color:#eeff41!important}.text-lime-13{color:#c6ff00!important}.text-lime-14{color:#aeea00!important}.text-yellow{color:#ffeb3b!important}.text-yellow-1{color:#fffde7!important}.text-yellow-2{color:#fff9c4!important}.text-yellow-3{color:#fff59d!important}.text-yellow-4{color:#fff176!important}.text-yellow-5{color:#ffee58!important}.text-yellow-6{color:#ffeb3b!important}.text-yellow-7{color:#fdd835!important}.text-yellow-8{color:#fbc02d!important}.text-yellow-9{color:#f9a825!important}.text-yellow-10{color:#f57f17!important}.text-yellow-11{color:#ffff8d!important}.text-yellow-12{color:#ff0!important}.text-yellow-13{color:#ffea00!important}.text-yellow-14{color:#ffd600!important}.text-amber{color:#ffc107!important}.text-amber-1{color:#fff8e1!important}.text-amber-2{color:#ffecb3!important}.text-amber-3{color:#ffe082!important}.text-amber-4{color:#ffd54f!important}.text-amber-5{color:#ffca28!important}.text-amber-6{color:#ffc107!important}.text-amber-7{color:#ffb300!important}.text-amber-8{color:#ffa000!important}.text-amber-9{color:#ff8f00!important}.text-amber-10{color:#ff6f00!important}.text-amber-11{color:#ffe57f!important}.text-amber-12{color:#ffd740!important}.text-amber-13{color:#ffc400!important}.text-amber-14{color:#ffab00!important}.text-orange{color:#ff9800!important}.text-orange-1{color:#fff3e0!important}.text-orange-2{color:#ffe0b2!important}.text-orange-3{color:#ffcc80!important}.text-orange-4{color:#ffb74d!important}.text-orange-5{color:#ffa726!important}.text-orange-6{color:#ff9800!important}.text-orange-7{color:#fb8c00!important}.text-orange-8{color:#f57c00!important}.text-orange-9{color:#ef6c00!important}.text-orange-10{color:#e65100!important}.text-orange-11{color:#ffd180!important}.text-orange-12{color:#ffab40!important}.text-orange-13{color:#ff9100!important}.text-orange-14{color:#ff6d00!important}.text-deep-orange{color:#ff5722!important}.text-deep-orange-1{color:#fbe9e7!important}.text-deep-orange-2{color:#ffccbc!important}.text-deep-orange-3{color:#ffab91!important}.text-deep-orange-4{color:#ff8a65!important}.text-deep-orange-5{color:#ff7043!important}.text-deep-orange-6{color:#ff5722!important}.text-deep-orange-7{color:#f4511e!important}.text-deep-orange-8{color:#e64a19!important}.text-deep-orange-9{color:#d84315!important}.text-deep-orange-10{color:#bf360c!important}.text-deep-orange-11{color:#ff9e80!important}.text-deep-orange-12{color:#ff6e40!important}.text-deep-orange-13{color:#ff3d00!important}.text-deep-orange-14{color:#dd2c00!important}.text-brown{color:#795548!important}.text-brown-1{color:#efebe9!important}.text-brown-2{color:#d7ccc8!important}.text-brown-3{color:#bcaaa4!important}.text-brown-4{color:#a1887f!important}.text-brown-5{color:#8d6e63!important}.text-brown-6{color:#795548!important}.text-brown-7{color:#6d4c41!important}.text-brown-8{color:#5d4037!important}.text-brown-9{color:#4e342e!important}.text-brown-10{color:#3e2723!important}.text-brown-11{color:#d7ccc8!important}.text-brown-12{color:#bcaaa4!important}.text-brown-13{color:#8d6e63!important}.text-brown-14{color:#5d4037!important}.text-grey{color:#9e9e9e!important}.text-grey-1{color:#fafafa!important}.text-grey-2{color:#f5f5f5!important}.text-grey-3{color:#eee!important}.text-grey-4{color:#e0e0e0!important}.text-grey-5{color:#bdbdbd!important}.text-grey-6{color:#9e9e9e!important}.text-grey-7{color:#757575!important}.text-grey-8{color:#616161!important}.text-grey-9{color:#424242!important}.text-grey-10{color:#212121!important}.text-grey-11{color:#f5f5f5!important}.text-grey-12{color:#eee!important}.text-grey-13{color:#bdbdbd!important}.text-grey-14{color:#616161!important}.text-blue-grey{color:#607d8b!important}.text-blue-grey-1{color:#eceff1!important}.text-blue-grey-2{color:#cfd8dc!important}.text-blue-grey-3{color:#b0bec5!important}.text-blue-grey-4{color:#90a4ae!important}.text-blue-grey-5{color:#78909c!important}.text-blue-grey-6{color:#607d8b!important}.text-blue-grey-7{color:#546e7a!important}.text-blue-grey-8{color:#455a64!important}.text-blue-grey-9{color:#37474f!important}.text-blue-grey-10{color:#263238!important}.text-blue-grey-11{color:#cfd8dc!important}.text-blue-grey-12{color:#b0bec5!important}.text-blue-grey-13{color:#78909c!important}.text-blue-grey-14{color:#455a64!important}.bg-red{background:#f44336!important}.bg-red-1{background:#ffebee!important}.bg-red-2{background:#ffcdd2!important}.bg-red-3{background:#ef9a9a!important}.bg-red-4{background:#e57373!important}.bg-red-5{background:#ef5350!important}.bg-red-6{background:#f44336!important}.bg-red-7{background:#e53935!important}.bg-red-8{background:#d32f2f!important}.bg-red-9{background:#c62828!important}.bg-red-10{background:#b71c1c!important}.bg-red-11{background:#ff8a80!important}.bg-red-12{background:#ff5252!important}.bg-red-13{background:#ff1744!important}.bg-red-14{background:#d50000!important}.bg-pink{background:#e91e63!important}.bg-pink-1{background:#fce4ec!important}.bg-pink-2{background:#f8bbd0!important}.bg-pink-3{background:#f48fb1!important}.bg-pink-4{background:#f06292!important}.bg-pink-5{background:#ec407a!important}.bg-pink-6{background:#e91e63!important}.bg-pink-7{background:#d81b60!important}.bg-pink-8{background:#c2185b!important}.bg-pink-9{background:#ad1457!important}.bg-pink-10{background:#880e4f!important}.bg-pink-11{background:#ff80ab!important}.bg-pink-12{background:#ff4081!important}.bg-pink-13{background:#f50057!important}.bg-pink-14{background:#c51162!important}.bg-purple{background:#9c27b0!important}.bg-purple-1{background:#f3e5f5!important}.bg-purple-2{background:#e1bee7!important}.bg-purple-3{background:#ce93d8!important}.bg-purple-4{background:#ba68c8!important}.bg-purple-5{background:#ab47bc!important}.bg-purple-6{background:#9c27b0!important}.bg-purple-7{background:#8e24aa!important}.bg-purple-8{background:#7b1fa2!important}.bg-purple-9{background:#6a1b9a!important}.bg-purple-10{background:#4a148c!important}.bg-purple-11{background:#ea80fc!important}.bg-purple-12{background:#e040fb!important}.bg-purple-13{background:#d500f9!important}.bg-purple-14{background:#a0f!important}.bg-deep-purple{background:#673ab7!important}.bg-deep-purple-1{background:#ede7f6!important}.bg-deep-purple-2{background:#d1c4e9!important}.bg-deep-purple-3{background:#b39ddb!important}.bg-deep-purple-4{background:#9575cd!important}.bg-deep-purple-5{background:#7e57c2!important}.bg-deep-purple-6{background:#673ab7!important}.bg-deep-purple-7{background:#5e35b1!important}.bg-deep-purple-8{background:#512da8!important}.bg-deep-purple-9{background:#4527a0!important}.bg-deep-purple-10{background:#311b92!important}.bg-deep-purple-11{background:#b388ff!important}.bg-deep-purple-12{background:#7c4dff!important}.bg-deep-purple-13{background:#651fff!important}.bg-deep-purple-14{background:#6200ea!important}.bg-indigo{background:#3f51b5!important}.bg-indigo-1{background:#e8eaf6!important}.bg-indigo-2{background:#c5cae9!important}.bg-indigo-3{background:#9fa8da!important}.bg-indigo-4{background:#7986cb!important}.bg-indigo-5{background:#5c6bc0!important}.bg-indigo-6{background:#3f51b5!important}.bg-indigo-7{background:#3949ab!important}.bg-indigo-8{background:#303f9f!important}.bg-indigo-9{background:#283593!important}.bg-indigo-10{background:#1a237e!important}.bg-indigo-11{background:#8c9eff!important}.bg-indigo-12{background:#536dfe!important}.bg-indigo-13{background:#3d5afe!important}.bg-indigo-14{background:#304ffe!important}.bg-blue{background:#2196f3!important}.bg-blue-1{background:#e3f2fd!important}.bg-blue-2{background:#bbdefb!important}.bg-blue-3{background:#90caf9!important}.bg-blue-4{background:#64b5f6!important}.bg-blue-5{background:#42a5f5!important}.bg-blue-6{background:#2196f3!important}.bg-blue-7{background:#1e88e5!important}.bg-blue-8{background:#1976d2!important}.bg-blue-9{background:#1565c0!important}.bg-blue-10{background:#0d47a1!important}.bg-blue-11{background:#82b1ff!important}.bg-blue-12{background:#448aff!important}.bg-blue-13{background:#2979ff!important}.bg-blue-14{background:#2962ff!important}.bg-light-blue{background:#03a9f4!important}.bg-light-blue-1{background:#e1f5fe!important}.bg-light-blue-2{background:#b3e5fc!important}.bg-light-blue-3{background:#81d4fa!important}.bg-light-blue-4{background:#4fc3f7!important}.bg-light-blue-5{background:#29b6f6!important}.bg-light-blue-6{background:#03a9f4!important}.bg-light-blue-7{background:#039be5!important}.bg-light-blue-8{background:#0288d1!important}.bg-light-blue-9{background:#0277bd!important}.bg-light-blue-10{background:#01579b!important}.bg-light-blue-11{background:#80d8ff!important}.bg-light-blue-12{background:#40c4ff!important}.bg-light-blue-13{background:#00b0ff!important}.bg-light-blue-14{background:#0091ea!important}.bg-cyan{background:#00bcd4!important}.bg-cyan-1{background:#e0f7fa!important}.bg-cyan-2{background:#b2ebf2!important}.bg-cyan-3{background:#80deea!important}.bg-cyan-4{background:#4dd0e1!important}.bg-cyan-5{background:#26c6da!important}.bg-cyan-6{background:#00bcd4!important}.bg-cyan-7{background:#00acc1!important}.bg-cyan-8{background:#0097a7!important}.bg-cyan-9{background:#00838f!important}.bg-cyan-10{background:#006064!important}.bg-cyan-11{background:#84ffff!important}.bg-cyan-12{background:#18ffff!important}.bg-cyan-13{background:#00e5ff!important}.bg-cyan-14{background:#00b8d4!important}.bg-teal{background:#009688!important}.bg-teal-1{background:#e0f2f1!important}.bg-teal-2{background:#b2dfdb!important}.bg-teal-3{background:#80cbc4!important}.bg-teal-4{background:#4db6ac!important}.bg-teal-5{background:#26a69a!important}.bg-teal-6{background:#009688!important}.bg-teal-7{background:#00897b!important}.bg-teal-8{background:#00796b!important}.bg-teal-9{background:#00695c!important}.bg-teal-10{background:#004d40!important}.bg-teal-11{background:#a7ffeb!important}.bg-teal-12{background:#64ffda!important}.bg-teal-13{background:#1de9b6!important}.bg-teal-14{background:#00bfa5!important}.bg-green{background:#4caf50!important}.bg-green-1{background:#e8f5e9!important}.bg-green-2{background:#c8e6c9!important}.bg-green-3{background:#a5d6a7!important}.bg-green-4{background:#81c784!important}.bg-green-5{background:#66bb6a!important}.bg-green-6{background:#4caf50!important}.bg-green-7{background:#43a047!important}.bg-green-8{background:#388e3c!important}.bg-green-9{background:#2e7d32!important}.bg-green-10{background:#1b5e20!important}.bg-green-11{background:#b9f6ca!important}.bg-green-12{background:#69f0ae!important}.bg-green-13{background:#00e676!important}.bg-green-14{background:#00c853!important}.bg-light-green{background:#8bc34a!important}.bg-light-green-1{background:#f1f8e9!important}.bg-light-green-2{background:#dcedc8!important}.bg-light-green-3{background:#c5e1a5!important}.bg-light-green-4{background:#aed581!important}.bg-light-green-5{background:#9ccc65!important}.bg-light-green-6{background:#8bc34a!important}.bg-light-green-7{background:#7cb342!important}.bg-light-green-8{background:#689f38!important}.bg-light-green-9{background:#558b2f!important}.bg-light-green-10{background:#33691e!important}.bg-light-green-11{background:#ccff90!important}.bg-light-green-12{background:#b2ff59!important}.bg-light-green-13{background:#76ff03!important}.bg-light-green-14{background:#64dd17!important}.bg-lime{background:#cddc39!important}.bg-lime-1{background:#f9fbe7!important}.bg-lime-2{background:#f0f4c3!important}.bg-lime-3{background:#e6ee9c!important}.bg-lime-4{background:#dce775!important}.bg-lime-5{background:#d4e157!important}.bg-lime-6{background:#cddc39!important}.bg-lime-7{background:#c0ca33!important}.bg-lime-8{background:#afb42b!important}.bg-lime-9{background:#9e9d24!important}.bg-lime-10{background:#827717!important}.bg-lime-11{background:#f4ff81!important}.bg-lime-12{background:#eeff41!important}.bg-lime-13{background:#c6ff00!important}.bg-lime-14{background:#aeea00!important}.bg-yellow{background:#ffeb3b!important}.bg-yellow-1{background:#fffde7!important}.bg-yellow-2{background:#fff9c4!important}.bg-yellow-3{background:#fff59d!important}.bg-yellow-4{background:#fff176!important}.bg-yellow-5{background:#ffee58!important}.bg-yellow-6{background:#ffeb3b!important}.bg-yellow-7{background:#fdd835!important}.bg-yellow-8{background:#fbc02d!important}.bg-yellow-9{background:#f9a825!important}.bg-yellow-10{background:#f57f17!important}.bg-yellow-11{background:#ffff8d!important}.bg-yellow-12{background:#ff0!important}.bg-yellow-13{background:#ffea00!important}.bg-yellow-14{background:#ffd600!important}.bg-amber{background:#ffc107!important}.bg-amber-1{background:#fff8e1!important}.bg-amber-2{background:#ffecb3!important}.bg-amber-3{background:#ffe082!important}.bg-amber-4{background:#ffd54f!important}.bg-amber-5{background:#ffca28!important}.bg-amber-6{background:#ffc107!important}.bg-amber-7{background:#ffb300!important}.bg-amber-8{background:#ffa000!important}.bg-amber-9{background:#ff8f00!important}.bg-amber-10{background:#ff6f00!important}.bg-amber-11{background:#ffe57f!important}.bg-amber-12{background:#ffd740!important}.bg-amber-13{background:#ffc400!important}.bg-amber-14{background:#ffab00!important}.bg-orange{background:#ff9800!important}.bg-orange-1{background:#fff3e0!important}.bg-orange-2{background:#ffe0b2!important}.bg-orange-3{background:#ffcc80!important}.bg-orange-4{background:#ffb74d!important}.bg-orange-5{background:#ffa726!important}.bg-orange-6{background:#ff9800!important}.bg-orange-7{background:#fb8c00!important}.bg-orange-8{background:#f57c00!important}.bg-orange-9{background:#ef6c00!important}.bg-orange-10{background:#e65100!important}.bg-orange-11{background:#ffd180!important}.bg-orange-12{background:#ffab40!important}.bg-orange-13{background:#ff9100!important}.bg-orange-14{background:#ff6d00!important}.bg-deep-orange{background:#ff5722!important}.bg-deep-orange-1{background:#fbe9e7!important}.bg-deep-orange-2{background:#ffccbc!important}.bg-deep-orange-3{background:#ffab91!important}.bg-deep-orange-4{background:#ff8a65!important}.bg-deep-orange-5{background:#ff7043!important}.bg-deep-orange-6{background:#ff5722!important}.bg-deep-orange-7{background:#f4511e!important}.bg-deep-orange-8{background:#e64a19!important}.bg-deep-orange-9{background:#d84315!important}.bg-deep-orange-10{background:#bf360c!important}.bg-deep-orange-11{background:#ff9e80!important}.bg-deep-orange-12{background:#ff6e40!important}.bg-deep-orange-13{background:#ff3d00!important}.bg-deep-orange-14{background:#dd2c00!important}.bg-brown{background:#795548!important}.bg-brown-1{background:#efebe9!important}.bg-brown-2{background:#d7ccc8!important}.bg-brown-3{background:#bcaaa4!important}.bg-brown-4{background:#a1887f!important}.bg-brown-5{background:#8d6e63!important}.bg-brown-6{background:#795548!important}.bg-brown-7{background:#6d4c41!important}.bg-brown-8{background:#5d4037!important}.bg-brown-9{background:#4e342e!important}.bg-brown-10{background:#3e2723!important}.bg-brown-11{background:#d7ccc8!important}.bg-brown-12{background:#bcaaa4!important}.bg-brown-13{background:#8d6e63!important}.bg-brown-14{background:#5d4037!important}.bg-grey{background:#9e9e9e!important}.bg-grey-1{background:#fafafa!important}.bg-grey-2{background:#f5f5f5!important}.bg-grey-3{background:#eee!important}.bg-grey-4{background:#e0e0e0!important}.bg-grey-5{background:#bdbdbd!important}.bg-grey-6{background:#9e9e9e!important}.bg-grey-7{background:#757575!important}.bg-grey-8{background:#616161!important}.bg-grey-9{background:#424242!important}.bg-grey-10{background:#212121!important}.bg-grey-11{background:#f5f5f5!important}.bg-grey-12{background:#eee!important}.bg-grey-13{background:#bdbdbd!important}.bg-grey-14{background:#616161!important}.bg-blue-grey{background:#607d8b!important}.bg-blue-grey-1{background:#eceff1!important}.bg-blue-grey-2{background:#cfd8dc!important}.bg-blue-grey-3{background:#b0bec5!important}.bg-blue-grey-4{background:#90a4ae!important}.bg-blue-grey-5{background:#78909c!important}.bg-blue-grey-6{background:#607d8b!important}.bg-blue-grey-7{background:#546e7a!important}.bg-blue-grey-8{background:#455a64!important}.bg-blue-grey-9{background:#37474f!important}.bg-blue-grey-10{background:#263238!important}.bg-blue-grey-11{background:#cfd8dc!important}.bg-blue-grey-12{background:#b0bec5!important}.bg-blue-grey-13{background:#78909c!important}.bg-blue-grey-14{background:#455a64!important}.shadow-transition{transition:box-shadow .28s cubic-bezier(.4, 0, .2, 1)!important}.shadow-1{box-shadow:0 1px 3px rgba(0,0,0,.2),0 1px 1px rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.shadow-up-1{box-shadow:0 -1px 3px rgba(0,0,0,.2),0 -1px 1px rgba(0,0,0,.14),0 -2px 1px -1px rgba(0,0,0,.12)}.shadow-2{box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.shadow-up-2{box-shadow:0 -1px 5px rgba(0,0,0,.2),0 -2px 2px rgba(0,0,0,.14),0 -3px 1px -2px rgba(0,0,0,.12)}.shadow-3{box-shadow:0 1px 8px rgba(0,0,0,.2),0 3px 4px rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.shadow-up-3{box-shadow:0 -1px 8px rgba(0,0,0,.2),0 -3px 4px rgba(0,0,0,.14),0 -3px 3px -2px rgba(0,0,0,.12)}.shadow-4{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px rgba(0,0,0,.14),0 1px 10px rgba(0,0,0,.12)}.shadow-up-4{box-shadow:0 -2px 4px -1px rgba(0,0,0,.2),0 -4px 5px rgba(0,0,0,.14),0 -1px 10px rgba(0,0,0,.12)}.shadow-5{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.shadow-up-5{box-shadow:0 -3px 5px -1px rgba(0,0,0,.2),0 -5px 8px rgba(0,0,0,.14),0 -1px 14px rgba(0,0,0,.12)}.shadow-6{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px rgba(0,0,0,.14),0 1px 18px rgba(0,0,0,.12)}.shadow-up-6{box-shadow:0 -3px 5px -1px rgba(0,0,0,.2),0 -6px 10px rgba(0,0,0,.14),0 -1px 18px rgba(0,0,0,.12)}.shadow-7{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.shadow-up-7{box-shadow:0 -4px 5px -2px rgba(0,0,0,.2),0 -7px 10px 1px rgba(0,0,0,.14),0 -2px 16px 1px rgba(0,0,0,.12)}.shadow-8{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.shadow-up-8{box-shadow:0 -5px 5px -3px rgba(0,0,0,.2),0 -8px 10px 1px rgba(0,0,0,.14),0 -3px 14px 2px rgba(0,0,0,.12)}.shadow-9{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.shadow-up-9{box-shadow:0 -5px 6px -3px rgba(0,0,0,.2),0 -9px 12px 1px rgba(0,0,0,.14),0 -3px 16px 2px rgba(0,0,0,.12)}.shadow-10{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.shadow-up-10{box-shadow:0 -6px 6px -3px rgba(0,0,0,.2),0 -10px 14px 1px rgba(0,0,0,.14),0 -4px 18px 3px rgba(0,0,0,.12)}.shadow-11{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.shadow-up-11{box-shadow:0 -6px 7px -4px rgba(0,0,0,.2),0 -11px 15px 1px rgba(0,0,0,.14),0 -4px 20px 3px rgba(0,0,0,.12)}.shadow-12{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.shadow-up-12{box-shadow:0 -7px 8px -4px rgba(0,0,0,.2),0 -12px 17px 2px rgba(0,0,0,.14),0 -5px 22px 4px rgba(0,0,0,.12)}.shadow-13{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.shadow-up-13{box-shadow:0 -7px 8px -4px rgba(0,0,0,.2),0 -13px 19px 2px rgba(0,0,0,.14),0 -5px 24px 4px rgba(0,0,0,.12)}.shadow-14{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.shadow-up-14{box-shadow:0 -7px 9px -4px rgba(0,0,0,.2),0 -14px 21px 2px rgba(0,0,0,.14),0 -5px 26px 4px rgba(0,0,0,.12)}.shadow-15{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.shadow-up-15{box-shadow:0 -8px 9px -5px rgba(0,0,0,.2),0 -15px 22px 2px rgba(0,0,0,.14),0 -6px 28px 5px rgba(0,0,0,.12)}.shadow-16{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.shadow-up-16{box-shadow:0 -8px 10px -5px rgba(0,0,0,.2),0 -16px 24px 2px rgba(0,0,0,.14),0 -6px 30px 5px rgba(0,0,0,.12)}.shadow-17{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.shadow-up-17{box-shadow:0 -8px 11px -5px rgba(0,0,0,.2),0 -17px 26px 2px rgba(0,0,0,.14),0 -6px 32px 5px rgba(0,0,0,.12)}.shadow-18{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.shadow-up-18{box-shadow:0 -9px 11px -5px rgba(0,0,0,.2),0 -18px 28px 2px rgba(0,0,0,.14),0 -7px 34px 6px rgba(0,0,0,.12)}.shadow-19{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.shadow-up-19{box-shadow:0 -9px 12px -6px rgba(0,0,0,.2),0 -19px 29px 2px rgba(0,0,0,.14),0 -7px 36px 6px rgba(0,0,0,.12)}.shadow-20{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.shadow-up-20{box-shadow:0 -10px 13px -6px rgba(0,0,0,.2),0 -20px 31px 3px rgba(0,0,0,.14),0 -8px 38px 7px rgba(0,0,0,.12)}.shadow-21{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.shadow-up-21{box-shadow:0 -10px 13px -6px rgba(0,0,0,.2),0 -21px 33px 3px rgba(0,0,0,.14),0 -8px 40px 7px rgba(0,0,0,.12)}.shadow-22{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.shadow-up-22{box-shadow:0 -10px 14px -6px rgba(0,0,0,.2),0 -22px 35px 3px rgba(0,0,0,.14),0 -8px 42px 7px rgba(0,0,0,.12)}.shadow-23{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.shadow-up-23{box-shadow:0 -11px 14px -7px rgba(0,0,0,.2),0 -23px 36px 3px rgba(0,0,0,.14),0 -9px 44px 8px rgba(0,0,0,.12)}.shadow-24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.shadow-up-24{box-shadow:0 -11px 15px -7px rgba(0,0,0,.2),0 -24px 38px 3px rgba(0,0,0,.14),0 -9px 46px 8px rgba(0,0,0,.12)}.inset-shadow{box-shadow:0 7px 9px -7px rgba(0,0,0,.7) inset}.inset-shadow-down{box-shadow:0 -7px 9px -7px rgba(0,0,0,.7) inset}body.body--dark .shadow-1{box-shadow:0 1px 3px rgba(255,255,255,.2),0 1px 1px rgba(255,255,255,.14),0 2px 1px -1px rgba(255,255,255,.12)}body.body--dark .shadow-up-1{box-shadow:0 -1px 3px rgba(255,255,255,.2),0 -1px 1px rgba(255,255,255,.14),0 -2px 1px -1px rgba(255,255,255,.12)}body.body--dark .shadow-2{box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}body.body--dark .shadow-up-2{box-shadow:0 -1px 5px rgba(255,255,255,.2),0 -2px 2px rgba(255,255,255,.14),0 -3px 1px -2px rgba(255,255,255,.12)}body.body--dark .shadow-3{box-shadow:0 1px 8px rgba(255,255,255,.2),0 3px 4px rgba(255,255,255,.14),0 3px 3px -2px rgba(255,255,255,.12)}body.body--dark .shadow-up-3{box-shadow:0 -1px 8px rgba(255,255,255,.2),0 -3px 4px rgba(255,255,255,.14),0 -3px 3px -2px rgba(255,255,255,.12)}body.body--dark .shadow-4{box-shadow:0 2px 4px -1px rgba(255,255,255,.2),0 4px 5px rgba(255,255,255,.14),0 1px 10px rgba(255,255,255,.12)}body.body--dark .shadow-up-4{box-shadow:0 -2px 4px -1px rgba(255,255,255,.2),0 -4px 5px rgba(255,255,255,.14),0 -1px 10px rgba(255,255,255,.12)}body.body--dark .shadow-5{box-shadow:0 3px 5px -1px rgba(255,255,255,.2),0 5px 8px rgba(255,255,255,.14),0 1px 14px rgba(255,255,255,.12)}body.body--dark .shadow-up-5{box-shadow:0 -3px 5px -1px rgba(255,255,255,.2),0 -5px 8px rgba(255,255,255,.14),0 -1px 14px rgba(255,255,255,.12)}body.body--dark .shadow-6{box-shadow:0 3px 5px -1px rgba(255,255,255,.2),0 6px 10px rgba(255,255,255,.14),0 1px 18px rgba(255,255,255,.12)}body.body--dark .shadow-up-6{box-shadow:0 -3px 5px -1px rgba(255,255,255,.2),0 -6px 10px rgba(255,255,255,.14),0 -1px 18px rgba(255,255,255,.12)}body.body--dark .shadow-7{box-shadow:0 4px 5px -2px rgba(255,255,255,.2),0 7px 10px 1px rgba(255,255,255,.14),0 2px 16px 1px rgba(255,255,255,.12)}body.body--dark .shadow-up-7{box-shadow:0 -4px 5px -2px rgba(255,255,255,.2),0 -7px 10px 1px rgba(255,255,255,.14),0 -2px 16px 1px rgba(255,255,255,.12)}body.body--dark .shadow-8{box-shadow:0 5px 5px -3px rgba(255,255,255,.2),0 8px 10px 1px rgba(255,255,255,.14),0 3px 14px 2px rgba(255,255,255,.12)}body.body--dark .shadow-up-8{box-shadow:0 -5px 5px -3px rgba(255,255,255,.2),0 -8px 10px 1px rgba(255,255,255,.14),0 -3px 14px 2px rgba(255,255,255,.12)}body.body--dark .shadow-9{box-shadow:0 5px 6px -3px rgba(255,255,255,.2),0 9px 12px 1px rgba(255,255,255,.14),0 3px 16px 2px rgba(255,255,255,.12)}body.body--dark .shadow-up-9{box-shadow:0 -5px 6px -3px rgba(255,255,255,.2),0 -9px 12px 1px rgba(255,255,255,.14),0 -3px 16px 2px rgba(255,255,255,.12)}body.body--dark .shadow-10{box-shadow:0 6px 6px -3px rgba(255,255,255,.2),0 10px 14px 1px rgba(255,255,255,.14),0 4px 18px 3px rgba(255,255,255,.12)}body.body--dark .shadow-up-10{box-shadow:0 -6px 6px -3px rgba(255,255,255,.2),0 -10px 14px 1px rgba(255,255,255,.14),0 -4px 18px 3px rgba(255,255,255,.12)}body.body--dark .shadow-11{box-shadow:0 6px 7px -4px rgba(255,255,255,.2),0 11px 15px 1px rgba(255,255,255,.14),0 4px 20px 3px rgba(255,255,255,.12)}body.body--dark .shadow-up-11{box-shadow:0 -6px 7px -4px rgba(255,255,255,.2),0 -11px 15px 1px rgba(255,255,255,.14),0 -4px 20px 3px rgba(255,255,255,.12)}body.body--dark .shadow-12{box-shadow:0 7px 8px -4px rgba(255,255,255,.2),0 12px 17px 2px rgba(255,255,255,.14),0 5px 22px 4px rgba(255,255,255,.12)}body.body--dark .shadow-up-12{box-shadow:0 -7px 8px -4px rgba(255,255,255,.2),0 -12px 17px 2px rgba(255,255,255,.14),0 -5px 22px 4px rgba(255,255,255,.12)}body.body--dark .shadow-13{box-shadow:0 7px 8px -4px rgba(255,255,255,.2),0 13px 19px 2px rgba(255,255,255,.14),0 5px 24px 4px rgba(255,255,255,.12)}body.body--dark .shadow-up-13{box-shadow:0 -7px 8px -4px rgba(255,255,255,.2),0 -13px 19px 2px rgba(255,255,255,.14),0 -5px 24px 4px rgba(255,255,255,.12)}body.body--dark .shadow-14{box-shadow:0 7px 9px -4px rgba(255,255,255,.2),0 14px 21px 2px rgba(255,255,255,.14),0 5px 26px 4px rgba(255,255,255,.12)}body.body--dark .shadow-up-14{box-shadow:0 -7px 9px -4px rgba(255,255,255,.2),0 -14px 21px 2px rgba(255,255,255,.14),0 -5px 26px 4px rgba(255,255,255,.12)}body.body--dark .shadow-15{box-shadow:0 8px 9px -5px rgba(255,255,255,.2),0 15px 22px 2px rgba(255,255,255,.14),0 6px 28px 5px rgba(255,255,255,.12)}body.body--dark .shadow-up-15{box-shadow:0 -8px 9px -5px rgba(255,255,255,.2),0 -15px 22px 2px rgba(255,255,255,.14),0 -6px 28px 5px rgba(255,255,255,.12)}body.body--dark .shadow-16{box-shadow:0 8px 10px -5px rgba(255,255,255,.2),0 16px 24px 2px rgba(255,255,255,.14),0 6px 30px 5px rgba(255,255,255,.12)}body.body--dark .shadow-up-16{box-shadow:0 -8px 10px -5px rgba(255,255,255,.2),0 -16px 24px 2px rgba(255,255,255,.14),0 -6px 30px 5px rgba(255,255,255,.12)}body.body--dark .shadow-17{box-shadow:0 8px 11px -5px rgba(255,255,255,.2),0 17px 26px 2px rgba(255,255,255,.14),0 6px 32px 5px rgba(255,255,255,.12)}body.body--dark .shadow-up-17{box-shadow:0 -8px 11px -5px rgba(255,255,255,.2),0 -17px 26px 2px rgba(255,255,255,.14),0 -6px 32px 5px rgba(255,255,255,.12)}body.body--dark .shadow-18{box-shadow:0 9px 11px -5px rgba(255,255,255,.2),0 18px 28px 2px rgba(255,255,255,.14),0 7px 34px 6px rgba(255,255,255,.12)}body.body--dark .shadow-up-18{box-shadow:0 -9px 11px -5px rgba(255,255,255,.2),0 -18px 28px 2px rgba(255,255,255,.14),0 -7px 34px 6px rgba(255,255,255,.12)}body.body--dark .shadow-19{box-shadow:0 9px 12px -6px rgba(255,255,255,.2),0 19px 29px 2px rgba(255,255,255,.14),0 7px 36px 6px rgba(255,255,255,.12)}body.body--dark .shadow-up-19{box-shadow:0 -9px 12px -6px rgba(255,255,255,.2),0 -19px 29px 2px rgba(255,255,255,.14),0 -7px 36px 6px rgba(255,255,255,.12)}body.body--dark .shadow-20{box-shadow:0 10px 13px -6px rgba(255,255,255,.2),0 20px 31px 3px rgba(255,255,255,.14),0 8px 38px 7px rgba(255,255,255,.12)}body.body--dark .shadow-up-20{box-shadow:0 -10px 13px -6px rgba(255,255,255,.2),0 -20px 31px 3px rgba(255,255,255,.14),0 -8px 38px 7px rgba(255,255,255,.12)}body.body--dark .shadow-21{box-shadow:0 10px 13px -6px rgba(255,255,255,.2),0 21px 33px 3px rgba(255,255,255,.14),0 8px 40px 7px rgba(255,255,255,.12)}body.body--dark .shadow-up-21{box-shadow:0 -10px 13px -6px rgba(255,255,255,.2),0 -21px 33px 3px rgba(255,255,255,.14),0 -8px 40px 7px rgba(255,255,255,.12)}body.body--dark .shadow-22{box-shadow:0 10px 14px -6px rgba(255,255,255,.2),0 22px 35px 3px rgba(255,255,255,.14),0 8px 42px 7px rgba(255,255,255,.12)}body.body--dark .shadow-up-22{box-shadow:0 -10px 14px -6px rgba(255,255,255,.2),0 -22px 35px 3px rgba(255,255,255,.14),0 -8px 42px 7px rgba(255,255,255,.12)}body.body--dark .shadow-23{box-shadow:0 11px 14px -7px rgba(255,255,255,.2),0 23px 36px 3px rgba(255,255,255,.14),0 9px 44px 8px rgba(255,255,255,.12)}body.body--dark .shadow-up-23{box-shadow:0 -11px 14px -7px rgba(255,255,255,.2),0 -23px 36px 3px rgba(255,255,255,.14),0 -9px 44px 8px rgba(255,255,255,.12)}body.body--dark .shadow-24{box-shadow:0 11px 15px -7px rgba(255,255,255,.2),0 24px 38px 3px rgba(255,255,255,.14),0 9px 46px 8px rgba(255,255,255,.12)}body.body--dark .shadow-up-24{box-shadow:0 -11px 15px -7px rgba(255,255,255,.2),0 -24px 38px 3px rgba(255,255,255,.14),0 -9px 46px 8px rgba(255,255,255,.12)}body.body--dark .inset-shadow{box-shadow:0 7px 9px -7px rgba(255,255,255,.7) inset}body.body--dark .inset-shadow-down{box-shadow:0 -7px 9px -7px rgba(255,255,255,.7) inset}.no-shadow,.shadow-0{box-shadow:none!important}.z-marginals{z-index:2000}.z-notify{z-index:9500}.z-fullscreen{z-index:6000}.z-inherit{z-index:inherit!important}.column,.flex,.row{display:flex;flex-wrap:wrap}.column.inline,.flex.inline,.row.inline{display:inline-flex}.row.reverse{flex-direction:row-reverse}.column{flex-direction:column}.column.reverse{flex-direction:column-reverse}.wrap{flex-wrap:wrap}.no-wrap{flex-wrap:nowrap}.reverse-wrap{flex-wrap:wrap-reverse}.order-first{order:-10000}.order-last{order:10000}.order-none{order:0}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-center,.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.flex-center,.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-stretch{align-content:stretch}.content-between{align-content:space-between}.content-around{align-content:space-around}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-baseline{align-self:baseline}.self-stretch{align-self:stretch}.q-gutter-none,.q-gutter-x-none{margin-left:0}.q-gutter-none>*,.q-gutter-x-none>*{margin-left:0}.q-gutter-none,.q-gutter-y-none{margin-top:0}.q-gutter-none>*,.q-gutter-y-none>*{margin-top:0}.q-col-gutter-none,.q-col-gutter-x-none{margin-left:0}.q-col-gutter-none>*,.q-col-gutter-x-none>*{padding-left:0}.q-col-gutter-none,.q-col-gutter-y-none{margin-top:0}.q-col-gutter-none>*,.q-col-gutter-y-none>*{padding-top:0}.q-gutter-x-xs,.q-gutter-xs{margin-left:-4px}.q-gutter-x-xs>*,.q-gutter-xs>*{margin-left:4px}.q-gutter-xs,.q-gutter-y-xs{margin-top:-4px}.q-gutter-xs>*,.q-gutter-y-xs>*{margin-top:4px}.q-col-gutter-x-xs,.q-col-gutter-xs{margin-left:-4px}.q-col-gutter-x-xs>*,.q-col-gutter-xs>*{padding-left:4px}.q-col-gutter-xs,.q-col-gutter-y-xs{margin-top:-4px}.q-col-gutter-xs>*,.q-col-gutter-y-xs>*{padding-top:4px}.q-gutter-sm,.q-gutter-x-sm{margin-left:-8px}.q-gutter-sm>*,.q-gutter-x-sm>*{margin-left:8px}.q-gutter-sm,.q-gutter-y-sm{margin-top:-8px}.q-gutter-sm>*,.q-gutter-y-sm>*{margin-top:8px}.q-col-gutter-sm,.q-col-gutter-x-sm{margin-left:-8px}.q-col-gutter-sm>*,.q-col-gutter-x-sm>*{padding-left:8px}.q-col-gutter-sm,.q-col-gutter-y-sm{margin-top:-8px}.q-col-gutter-sm>*,.q-col-gutter-y-sm>*{padding-top:8px}.q-gutter-md,.q-gutter-x-md{margin-left:-16px}.q-gutter-md>*,.q-gutter-x-md>*{margin-left:16px}.q-gutter-md,.q-gutter-y-md{margin-top:-16px}.q-gutter-md>*,.q-gutter-y-md>*{margin-top:16px}.q-col-gutter-md,.q-col-gutter-x-md{margin-left:-16px}.q-col-gutter-md>*,.q-col-gutter-x-md>*{padding-left:16px}.q-col-gutter-md,.q-col-gutter-y-md{margin-top:-16px}.q-col-gutter-md>*,.q-col-gutter-y-md>*{padding-top:16px}.q-gutter-lg,.q-gutter-x-lg{margin-left:-24px}.q-gutter-lg>*,.q-gutter-x-lg>*{margin-left:24px}.q-gutter-lg,.q-gutter-y-lg{margin-top:-24px}.q-gutter-lg>*,.q-gutter-y-lg>*{margin-top:24px}.q-col-gutter-lg,.q-col-gutter-x-lg{margin-left:-24px}.q-col-gutter-lg>*,.q-col-gutter-x-lg>*{padding-left:24px}.q-col-gutter-lg,.q-col-gutter-y-lg{margin-top:-24px}.q-col-gutter-lg>*,.q-col-gutter-y-lg>*{padding-top:24px}.q-gutter-x-xl,.q-gutter-xl{margin-left:-48px}.q-gutter-x-xl>*,.q-gutter-xl>*{margin-left:48px}.q-gutter-xl,.q-gutter-y-xl{margin-top:-48px}.q-gutter-xl>*,.q-gutter-y-xl>*{margin-top:48px}.q-col-gutter-x-xl,.q-col-gutter-xl{margin-left:-48px}.q-col-gutter-x-xl>*,.q-col-gutter-xl>*{padding-left:48px}.q-col-gutter-xl,.q-col-gutter-y-xl{margin-top:-48px}.q-col-gutter-xl>*,.q-col-gutter-y-xl>*{padding-top:48px}@media (min-width:0){.flex>.col,.flex>.col-0,.flex>.col-1,.flex>.col-10,.flex>.col-11,.flex>.col-12,.flex>.col-2,.flex>.col-3,.flex>.col-4,.flex>.col-5,.flex>.col-6,.flex>.col-7,.flex>.col-8,.flex>.col-9,.flex>.col-auto,.flex>.col-grow,.flex>.col-shrink,.flex>.col-xs,.flex>.col-xs-0,.flex>.col-xs-1,.flex>.col-xs-10,.flex>.col-xs-11,.flex>.col-xs-12,.flex>.col-xs-2,.flex>.col-xs-3,.flex>.col-xs-4,.flex>.col-xs-5,.flex>.col-xs-6,.flex>.col-xs-7,.flex>.col-xs-8,.flex>.col-xs-9,.flex>.col-xs-auto,.flex>.col-xs-grow,.flex>.col-xs-shrink,.row>.col,.row>.col-0,.row>.col-1,.row>.col-10,.row>.col-11,.row>.col-12,.row>.col-2,.row>.col-3,.row>.col-4,.row>.col-5,.row>.col-6,.row>.col-7,.row>.col-8,.row>.col-9,.row>.col-auto,.row>.col-grow,.row>.col-shrink,.row>.col-xs,.row>.col-xs-0,.row>.col-xs-1,.row>.col-xs-10,.row>.col-xs-11,.row>.col-xs-12,.row>.col-xs-2,.row>.col-xs-3,.row>.col-xs-4,.row>.col-xs-5,.row>.col-xs-6,.row>.col-xs-7,.row>.col-xs-8,.row>.col-xs-9,.row>.col-xs-auto,.row>.col-xs-grow,.row>.col-xs-shrink{width:auto;min-width:0;max-width:100%}.column>.col,.column>.col-0,.column>.col-1,.column>.col-10,.column>.col-11,.column>.col-12,.column>.col-2,.column>.col-3,.column>.col-4,.column>.col-5,.column>.col-6,.column>.col-7,.column>.col-8,.column>.col-9,.column>.col-auto,.column>.col-grow,.column>.col-shrink,.column>.col-xs,.column>.col-xs-0,.column>.col-xs-1,.column>.col-xs-10,.column>.col-xs-11,.column>.col-xs-12,.column>.col-xs-2,.column>.col-xs-3,.column>.col-xs-4,.column>.col-xs-5,.column>.col-xs-6,.column>.col-xs-7,.column>.col-xs-8,.column>.col-xs-9,.column>.col-xs-auto,.column>.col-xs-grow,.column>.col-xs-shrink,.flex>.col,.flex>.col-0,.flex>.col-1,.flex>.col-10,.flex>.col-11,.flex>.col-12,.flex>.col-2,.flex>.col-3,.flex>.col-4,.flex>.col-5,.flex>.col-6,.flex>.col-7,.flex>.col-8,.flex>.col-9,.flex>.col-auto,.flex>.col-grow,.flex>.col-shrink,.flex>.col-xs,.flex>.col-xs-0,.flex>.col-xs-1,.flex>.col-xs-10,.flex>.col-xs-11,.flex>.col-xs-12,.flex>.col-xs-2,.flex>.col-xs-3,.flex>.col-xs-4,.flex>.col-xs-5,.flex>.col-xs-6,.flex>.col-xs-7,.flex>.col-xs-8,.flex>.col-xs-9,.flex>.col-xs-auto,.flex>.col-xs-grow,.flex>.col-xs-shrink{height:auto;min-height:0;max-height:100%}.col,.col-xs{flex:10000 1 0%}.col-0,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-xs-0,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-auto{flex:0 0 auto}.col-grow,.col-xs-grow{flex:1 0 auto}.col-shrink,.col-xs-shrink{flex:0 1 auto}.row>.col-0,.row>.col-xs-0{height:auto;width:0%}.row>.offset-0,.row>.offset-xs-0{margin-left:0}.column>.col-0,.column>.col-xs-0{height:0%;width:auto}.row>.col-1,.row>.col-xs-1{height:auto;width:8.3333%}.row>.offset-1,.row>.offset-xs-1{margin-left:8.3333%}.column>.col-1,.column>.col-xs-1{height:8.3333%;width:auto}.row>.col-2,.row>.col-xs-2{height:auto;width:16.6667%}.row>.offset-2,.row>.offset-xs-2{margin-left:16.6667%}.column>.col-2,.column>.col-xs-2{height:16.6667%;width:auto}.row>.col-3,.row>.col-xs-3{height:auto;width:25%}.row>.offset-3,.row>.offset-xs-3{margin-left:25%}.column>.col-3,.column>.col-xs-3{height:25%;width:auto}.row>.col-4,.row>.col-xs-4{height:auto;width:33.3333%}.row>.offset-4,.row>.offset-xs-4{margin-left:33.3333%}.column>.col-4,.column>.col-xs-4{height:33.3333%;width:auto}.row>.col-5,.row>.col-xs-5{height:auto;width:41.6667%}.row>.offset-5,.row>.offset-xs-5{margin-left:41.6667%}.column>.col-5,.column>.col-xs-5{height:41.6667%;width:auto}.row>.col-6,.row>.col-xs-6{height:auto;width:50%}.row>.offset-6,.row>.offset-xs-6{margin-left:50%}.column>.col-6,.column>.col-xs-6{height:50%;width:auto}.row>.col-7,.row>.col-xs-7{height:auto;width:58.3333%}.row>.offset-7,.row>.offset-xs-7{margin-left:58.3333%}.column>.col-7,.column>.col-xs-7{height:58.3333%;width:auto}.row>.col-8,.row>.col-xs-8{height:auto;width:66.6667%}.row>.offset-8,.row>.offset-xs-8{margin-left:66.6667%}.column>.col-8,.column>.col-xs-8{height:66.6667%;width:auto}.row>.col-9,.row>.col-xs-9{height:auto;width:75%}.row>.offset-9,.row>.offset-xs-9{margin-left:75%}.column>.col-9,.column>.col-xs-9{height:75%;width:auto}.row>.col-10,.row>.col-xs-10{height:auto;width:83.3333%}.row>.offset-10,.row>.offset-xs-10{margin-left:83.3333%}.column>.col-10,.column>.col-xs-10{height:83.3333%;width:auto}.row>.col-11,.row>.col-xs-11{height:auto;width:91.6667%}.row>.offset-11,.row>.offset-xs-11{margin-left:91.6667%}.column>.col-11,.column>.col-xs-11{height:91.6667%;width:auto}.row>.col-12,.row>.col-xs-12{height:auto;width:100%}.row>.offset-12,.row>.offset-xs-12{margin-left:100%}.column>.col-12,.column>.col-xs-12{height:100%;width:auto}.row>.col-all{height:auto;flex:0 0 100%}}@media (min-width:600px){.flex>.col-sm,.flex>.col-sm-0,.flex>.col-sm-1,.flex>.col-sm-10,.flex>.col-sm-11,.flex>.col-sm-12,.flex>.col-sm-2,.flex>.col-sm-3,.flex>.col-sm-4,.flex>.col-sm-5,.flex>.col-sm-6,.flex>.col-sm-7,.flex>.col-sm-8,.flex>.col-sm-9,.flex>.col-sm-auto,.flex>.col-sm-grow,.flex>.col-sm-shrink,.row>.col-sm,.row>.col-sm-0,.row>.col-sm-1,.row>.col-sm-10,.row>.col-sm-11,.row>.col-sm-12,.row>.col-sm-2,.row>.col-sm-3,.row>.col-sm-4,.row>.col-sm-5,.row>.col-sm-6,.row>.col-sm-7,.row>.col-sm-8,.row>.col-sm-9,.row>.col-sm-auto,.row>.col-sm-grow,.row>.col-sm-shrink{width:auto;min-width:0;max-width:100%}.column>.col-sm,.column>.col-sm-0,.column>.col-sm-1,.column>.col-sm-10,.column>.col-sm-11,.column>.col-sm-12,.column>.col-sm-2,.column>.col-sm-3,.column>.col-sm-4,.column>.col-sm-5,.column>.col-sm-6,.column>.col-sm-7,.column>.col-sm-8,.column>.col-sm-9,.column>.col-sm-auto,.column>.col-sm-grow,.column>.col-sm-shrink,.flex>.col-sm,.flex>.col-sm-0,.flex>.col-sm-1,.flex>.col-sm-10,.flex>.col-sm-11,.flex>.col-sm-12,.flex>.col-sm-2,.flex>.col-sm-3,.flex>.col-sm-4,.flex>.col-sm-5,.flex>.col-sm-6,.flex>.col-sm-7,.flex>.col-sm-8,.flex>.col-sm-9,.flex>.col-sm-auto,.flex>.col-sm-grow,.flex>.col-sm-shrink{height:auto;min-height:0;max-height:100%}.col-sm{flex:10000 1 0%}.col-sm-0,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto{flex:0 0 auto}.col-sm-grow{flex:1 0 auto}.col-sm-shrink{flex:0 1 auto}.row>.col-sm-0{height:auto;width:0%}.row>.offset-sm-0{margin-left:0}.column>.col-sm-0{height:0%;width:auto}.row>.col-sm-1{height:auto;width:8.3333%}.row>.offset-sm-1{margin-left:8.3333%}.column>.col-sm-1{height:8.3333%;width:auto}.row>.col-sm-2{height:auto;width:16.6667%}.row>.offset-sm-2{margin-left:16.6667%}.column>.col-sm-2{height:16.6667%;width:auto}.row>.col-sm-3{height:auto;width:25%}.row>.offset-sm-3{margin-left:25%}.column>.col-sm-3{height:25%;width:auto}.row>.col-sm-4{height:auto;width:33.3333%}.row>.offset-sm-4{margin-left:33.3333%}.column>.col-sm-4{height:33.3333%;width:auto}.row>.col-sm-5{height:auto;width:41.6667%}.row>.offset-sm-5{margin-left:41.6667%}.column>.col-sm-5{height:41.6667%;width:auto}.row>.col-sm-6{height:auto;width:50%}.row>.offset-sm-6{margin-left:50%}.column>.col-sm-6{height:50%;width:auto}.row>.col-sm-7{height:auto;width:58.3333%}.row>.offset-sm-7{margin-left:58.3333%}.column>.col-sm-7{height:58.3333%;width:auto}.row>.col-sm-8{height:auto;width:66.6667%}.row>.offset-sm-8{margin-left:66.6667%}.column>.col-sm-8{height:66.6667%;width:auto}.row>.col-sm-9{height:auto;width:75%}.row>.offset-sm-9{margin-left:75%}.column>.col-sm-9{height:75%;width:auto}.row>.col-sm-10{height:auto;width:83.3333%}.row>.offset-sm-10{margin-left:83.3333%}.column>.col-sm-10{height:83.3333%;width:auto}.row>.col-sm-11{height:auto;width:91.6667%}.row>.offset-sm-11{margin-left:91.6667%}.column>.col-sm-11{height:91.6667%;width:auto}.row>.col-sm-12{height:auto;width:100%}.row>.offset-sm-12{margin-left:100%}.column>.col-sm-12{height:100%;width:auto}}@media (min-width:1024px){.flex>.col-md,.flex>.col-md-0,.flex>.col-md-1,.flex>.col-md-10,.flex>.col-md-11,.flex>.col-md-12,.flex>.col-md-2,.flex>.col-md-3,.flex>.col-md-4,.flex>.col-md-5,.flex>.col-md-6,.flex>.col-md-7,.flex>.col-md-8,.flex>.col-md-9,.flex>.col-md-auto,.flex>.col-md-grow,.flex>.col-md-shrink,.row>.col-md,.row>.col-md-0,.row>.col-md-1,.row>.col-md-10,.row>.col-md-11,.row>.col-md-12,.row>.col-md-2,.row>.col-md-3,.row>.col-md-4,.row>.col-md-5,.row>.col-md-6,.row>.col-md-7,.row>.col-md-8,.row>.col-md-9,.row>.col-md-auto,.row>.col-md-grow,.row>.col-md-shrink{width:auto;min-width:0;max-width:100%}.column>.col-md,.column>.col-md-0,.column>.col-md-1,.column>.col-md-10,.column>.col-md-11,.column>.col-md-12,.column>.col-md-2,.column>.col-md-3,.column>.col-md-4,.column>.col-md-5,.column>.col-md-6,.column>.col-md-7,.column>.col-md-8,.column>.col-md-9,.column>.col-md-auto,.column>.col-md-grow,.column>.col-md-shrink,.flex>.col-md,.flex>.col-md-0,.flex>.col-md-1,.flex>.col-md-10,.flex>.col-md-11,.flex>.col-md-12,.flex>.col-md-2,.flex>.col-md-3,.flex>.col-md-4,.flex>.col-md-5,.flex>.col-md-6,.flex>.col-md-7,.flex>.col-md-8,.flex>.col-md-9,.flex>.col-md-auto,.flex>.col-md-grow,.flex>.col-md-shrink{height:auto;min-height:0;max-height:100%}.col-md{flex:10000 1 0%}.col-md-0,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto{flex:0 0 auto}.col-md-grow{flex:1 0 auto}.col-md-shrink{flex:0 1 auto}.row>.col-md-0{height:auto;width:0%}.row>.offset-md-0{margin-left:0}.column>.col-md-0{height:0%;width:auto}.row>.col-md-1{height:auto;width:8.3333%}.row>.offset-md-1{margin-left:8.3333%}.column>.col-md-1{height:8.3333%;width:auto}.row>.col-md-2{height:auto;width:16.6667%}.row>.offset-md-2{margin-left:16.6667%}.column>.col-md-2{height:16.6667%;width:auto}.row>.col-md-3{height:auto;width:25%}.row>.offset-md-3{margin-left:25%}.column>.col-md-3{height:25%;width:auto}.row>.col-md-4{height:auto;width:33.3333%}.row>.offset-md-4{margin-left:33.3333%}.column>.col-md-4{height:33.3333%;width:auto}.row>.col-md-5{height:auto;width:41.6667%}.row>.offset-md-5{margin-left:41.6667%}.column>.col-md-5{height:41.6667%;width:auto}.row>.col-md-6{height:auto;width:50%}.row>.offset-md-6{margin-left:50%}.column>.col-md-6{height:50%;width:auto}.row>.col-md-7{height:auto;width:58.3333%}.row>.offset-md-7{margin-left:58.3333%}.column>.col-md-7{height:58.3333%;width:auto}.row>.col-md-8{height:auto;width:66.6667%}.row>.offset-md-8{margin-left:66.6667%}.column>.col-md-8{height:66.6667%;width:auto}.row>.col-md-9{height:auto;width:75%}.row>.offset-md-9{margin-left:75%}.column>.col-md-9{height:75%;width:auto}.row>.col-md-10{height:auto;width:83.3333%}.row>.offset-md-10{margin-left:83.3333%}.column>.col-md-10{height:83.3333%;width:auto}.row>.col-md-11{height:auto;width:91.6667%}.row>.offset-md-11{margin-left:91.6667%}.column>.col-md-11{height:91.6667%;width:auto}.row>.col-md-12{height:auto;width:100%}.row>.offset-md-12{margin-left:100%}.column>.col-md-12{height:100%;width:auto}}@media (min-width:1440px){.flex>.col-lg,.flex>.col-lg-0,.flex>.col-lg-1,.flex>.col-lg-10,.flex>.col-lg-11,.flex>.col-lg-12,.flex>.col-lg-2,.flex>.col-lg-3,.flex>.col-lg-4,.flex>.col-lg-5,.flex>.col-lg-6,.flex>.col-lg-7,.flex>.col-lg-8,.flex>.col-lg-9,.flex>.col-lg-auto,.flex>.col-lg-grow,.flex>.col-lg-shrink,.row>.col-lg,.row>.col-lg-0,.row>.col-lg-1,.row>.col-lg-10,.row>.col-lg-11,.row>.col-lg-12,.row>.col-lg-2,.row>.col-lg-3,.row>.col-lg-4,.row>.col-lg-5,.row>.col-lg-6,.row>.col-lg-7,.row>.col-lg-8,.row>.col-lg-9,.row>.col-lg-auto,.row>.col-lg-grow,.row>.col-lg-shrink{width:auto;min-width:0;max-width:100%}.column>.col-lg,.column>.col-lg-0,.column>.col-lg-1,.column>.col-lg-10,.column>.col-lg-11,.column>.col-lg-12,.column>.col-lg-2,.column>.col-lg-3,.column>.col-lg-4,.column>.col-lg-5,.column>.col-lg-6,.column>.col-lg-7,.column>.col-lg-8,.column>.col-lg-9,.column>.col-lg-auto,.column>.col-lg-grow,.column>.col-lg-shrink,.flex>.col-lg,.flex>.col-lg-0,.flex>.col-lg-1,.flex>.col-lg-10,.flex>.col-lg-11,.flex>.col-lg-12,.flex>.col-lg-2,.flex>.col-lg-3,.flex>.col-lg-4,.flex>.col-lg-5,.flex>.col-lg-6,.flex>.col-lg-7,.flex>.col-lg-8,.flex>.col-lg-9,.flex>.col-lg-auto,.flex>.col-lg-grow,.flex>.col-lg-shrink{height:auto;min-height:0;max-height:100%}.col-lg{flex:10000 1 0%}.col-lg-0,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto{flex:0 0 auto}.col-lg-grow{flex:1 0 auto}.col-lg-shrink{flex:0 1 auto}.row>.col-lg-0{height:auto;width:0%}.row>.offset-lg-0{margin-left:0}.column>.col-lg-0{height:0%;width:auto}.row>.col-lg-1{height:auto;width:8.3333%}.row>.offset-lg-1{margin-left:8.3333%}.column>.col-lg-1{height:8.3333%;width:auto}.row>.col-lg-2{height:auto;width:16.6667%}.row>.offset-lg-2{margin-left:16.6667%}.column>.col-lg-2{height:16.6667%;width:auto}.row>.col-lg-3{height:auto;width:25%}.row>.offset-lg-3{margin-left:25%}.column>.col-lg-3{height:25%;width:auto}.row>.col-lg-4{height:auto;width:33.3333%}.row>.offset-lg-4{margin-left:33.3333%}.column>.col-lg-4{height:33.3333%;width:auto}.row>.col-lg-5{height:auto;width:41.6667%}.row>.offset-lg-5{margin-left:41.6667%}.column>.col-lg-5{height:41.6667%;width:auto}.row>.col-lg-6{height:auto;width:50%}.row>.offset-lg-6{margin-left:50%}.column>.col-lg-6{height:50%;width:auto}.row>.col-lg-7{height:auto;width:58.3333%}.row>.offset-lg-7{margin-left:58.3333%}.column>.col-lg-7{height:58.3333%;width:auto}.row>.col-lg-8{height:auto;width:66.6667%}.row>.offset-lg-8{margin-left:66.6667%}.column>.col-lg-8{height:66.6667%;width:auto}.row>.col-lg-9{height:auto;width:75%}.row>.offset-lg-9{margin-left:75%}.column>.col-lg-9{height:75%;width:auto}.row>.col-lg-10{height:auto;width:83.3333%}.row>.offset-lg-10{margin-left:83.3333%}.column>.col-lg-10{height:83.3333%;width:auto}.row>.col-lg-11{height:auto;width:91.6667%}.row>.offset-lg-11{margin-left:91.6667%}.column>.col-lg-11{height:91.6667%;width:auto}.row>.col-lg-12{height:auto;width:100%}.row>.offset-lg-12{margin-left:100%}.column>.col-lg-12{height:100%;width:auto}}@media (min-width:1920px){.flex>.col-xl,.flex>.col-xl-0,.flex>.col-xl-1,.flex>.col-xl-10,.flex>.col-xl-11,.flex>.col-xl-12,.flex>.col-xl-2,.flex>.col-xl-3,.flex>.col-xl-4,.flex>.col-xl-5,.flex>.col-xl-6,.flex>.col-xl-7,.flex>.col-xl-8,.flex>.col-xl-9,.flex>.col-xl-auto,.flex>.col-xl-grow,.flex>.col-xl-shrink,.row>.col-xl,.row>.col-xl-0,.row>.col-xl-1,.row>.col-xl-10,.row>.col-xl-11,.row>.col-xl-12,.row>.col-xl-2,.row>.col-xl-3,.row>.col-xl-4,.row>.col-xl-5,.row>.col-xl-6,.row>.col-xl-7,.row>.col-xl-8,.row>.col-xl-9,.row>.col-xl-auto,.row>.col-xl-grow,.row>.col-xl-shrink{width:auto;min-width:0;max-width:100%}.column>.col-xl,.column>.col-xl-0,.column>.col-xl-1,.column>.col-xl-10,.column>.col-xl-11,.column>.col-xl-12,.column>.col-xl-2,.column>.col-xl-3,.column>.col-xl-4,.column>.col-xl-5,.column>.col-xl-6,.column>.col-xl-7,.column>.col-xl-8,.column>.col-xl-9,.column>.col-xl-auto,.column>.col-xl-grow,.column>.col-xl-shrink,.flex>.col-xl,.flex>.col-xl-0,.flex>.col-xl-1,.flex>.col-xl-10,.flex>.col-xl-11,.flex>.col-xl-12,.flex>.col-xl-2,.flex>.col-xl-3,.flex>.col-xl-4,.flex>.col-xl-5,.flex>.col-xl-6,.flex>.col-xl-7,.flex>.col-xl-8,.flex>.col-xl-9,.flex>.col-xl-auto,.flex>.col-xl-grow,.flex>.col-xl-shrink{height:auto;min-height:0;max-height:100%}.col-xl{flex:10000 1 0%}.col-xl-0,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{flex:0 0 auto}.col-xl-grow{flex:1 0 auto}.col-xl-shrink{flex:0 1 auto}.row>.col-xl-0{height:auto;width:0%}.row>.offset-xl-0{margin-left:0}.column>.col-xl-0{height:0%;width:auto}.row>.col-xl-1{height:auto;width:8.3333%}.row>.offset-xl-1{margin-left:8.3333%}.column>.col-xl-1{height:8.3333%;width:auto}.row>.col-xl-2{height:auto;width:16.6667%}.row>.offset-xl-2{margin-left:16.6667%}.column>.col-xl-2{height:16.6667%;width:auto}.row>.col-xl-3{height:auto;width:25%}.row>.offset-xl-3{margin-left:25%}.column>.col-xl-3{height:25%;width:auto}.row>.col-xl-4{height:auto;width:33.3333%}.row>.offset-xl-4{margin-left:33.3333%}.column>.col-xl-4{height:33.3333%;width:auto}.row>.col-xl-5{height:auto;width:41.6667%}.row>.offset-xl-5{margin-left:41.6667%}.column>.col-xl-5{height:41.6667%;width:auto}.row>.col-xl-6{height:auto;width:50%}.row>.offset-xl-6{margin-left:50%}.column>.col-xl-6{height:50%;width:auto}.row>.col-xl-7{height:auto;width:58.3333%}.row>.offset-xl-7{margin-left:58.3333%}.column>.col-xl-7{height:58.3333%;width:auto}.row>.col-xl-8{height:auto;width:66.6667%}.row>.offset-xl-8{margin-left:66.6667%}.column>.col-xl-8{height:66.6667%;width:auto}.row>.col-xl-9{height:auto;width:75%}.row>.offset-xl-9{margin-left:75%}.column>.col-xl-9{height:75%;width:auto}.row>.col-xl-10{height:auto;width:83.3333%}.row>.offset-xl-10{margin-left:83.3333%}.column>.col-xl-10{height:83.3333%;width:auto}.row>.col-xl-11{height:auto;width:91.6667%}.row>.offset-xl-11{margin-left:91.6667%}.column>.col-xl-11{height:91.6667%;width:auto}.row>.col-xl-12{height:auto;width:100%}.row>.offset-xl-12{margin-left:100%}.column>.col-xl-12{height:100%;width:auto}}.rounded-borders{border-radius:4px}.border-radius-inherit{border-radius:inherit}.no-transition{transition:none!important}.transition-0{transition:0s!important}.glossy{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-placeholder::placeholder{color:inherit;opacity:.7}.q-body--fullscreen-mixin,.q-body--prevent-scroll{position:fixed!important}.q-body--force-scrollbar-x{overflow-x:scroll}.q-body--force-scrollbar-y{overflow-y:scroll}.q-no-input-spinner{-moz-appearance:textfield!important}.q-no-input-spinner::-webkit-inner-spin-button,.q-no-input-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.q-link{outline:0;text-decoration:none}.q-link--focusable:focus-visible{-webkit-text-decoration:underline dashed currentColor 1px;text-decoration:underline dashed currentColor 1px}body.electron .q-electron-drag{-webkit-user-select:none;-webkit-app-region:drag}body.electron .q-electron-drag .q-btn-item,body.electron .q-electron-drag--exception{-webkit-app-region:no-drag}img.responsive{max-width:100%;height:auto}.non-selectable{-webkit-user-select:none!important;user-select:none!important}.scroll,body.mobile .scroll--mobile{overflow:auto}.scroll,.scroll-x,.scroll-y{-webkit-overflow-scrolling:touch;will-change:scroll-position}.scroll-x{overflow-x:auto}.scroll-y{overflow-y:auto}.no-scroll{overflow:hidden!important}.no-pointer-events,.no-pointer-events--children,.no-pointer-events--children *{pointer-events:none!important}.all-pointer-events{pointer-events:all!important}.cursor-pointer{cursor:pointer!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-inherit{cursor:inherit!important}.cursor-none{cursor:none!important}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true]{cursor:default}.rotate-45{transform:rotate(45deg)}.rotate-90{transform:rotate(90deg)}.rotate-135{transform:rotate(135deg)}.rotate-180{transform:rotate(180deg)}.rotate-225{transform:rotate(225deg)}.rotate-270{transform:rotate(270deg)}.rotate-315{transform:rotate(315deg)}.flip-horizontal{transform:scaleX(-1)}.flip-vertical{transform:scaleY(-1)}.float-left{float:left}.float-right{float:right}.relative-position{position:relative}.fixed,.fixed-bottom,.fixed-bottom-left,.fixed-bottom-right,.fixed-center,.fixed-full,.fixed-left,.fixed-right,.fixed-top,.fixed-top-left,.fixed-top-right,.fullscreen{position:fixed}.absolute,.absolute-bottom,.absolute-bottom-left,.absolute-bottom-right,.absolute-center,.absolute-full,.absolute-left,.absolute-right,.absolute-top,.absolute-top-left,.absolute-top-right{position:absolute}.absolute-top,.fixed-top{top:0;left:0;right:0}.absolute-right,.fixed-right{top:0;right:0;bottom:0}.absolute-bottom,.fixed-bottom{right:0;bottom:0;left:0}.absolute-left,.fixed-left{top:0;bottom:0;left:0}.absolute-top-left,.fixed-top-left{top:0;left:0}.absolute-top-right,.fixed-top-right{top:0;right:0}.absolute-bottom-left,.fixed-bottom-left{bottom:0;left:0}.absolute-bottom-right,.fixed-bottom-right{bottom:0;right:0}.fullscreen{z-index:6000;border-radius:0!important;max-width:100vw;max-height:100vh}body.q-ios-padding .fullscreen{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}.absolute-full,.fixed-full,.fullscreen{top:0;right:0;bottom:0;left:0}.absolute-center,.fixed-center{top:50%;left:50%;transform:translate(-50%,-50%)}.vertical-top{vertical-align:top!important}.vertical-middle{vertical-align:middle!important}.vertical-bottom{vertical-align:bottom!important}.on-left{margin-right:12px}.on-right{margin-left:12px}.q-position-engine{margin-top:var(--q-pe-top,0)!important;margin-left:var(--q-pe-left,0)!important;will-change:auto;visibility:collapse}:root{--q-size-xs:0;--q-size-sm:600px;--q-size-md:1024px;--q-size-lg:1440px;--q-size-xl:1920px}.fit{width:100%!important;height:100%!important}.full-height{height:100%!important}.full-width{width:100%!important;margin-left:0!important;margin-right:0!important}.window-height{margin-top:0!important;margin-bottom:0!important;height:100vh!important}.window-width{margin-left:0!important;margin-right:0!important;width:100vw!important}.block{display:block!important}.inline-block{display:inline-block!important}.q-pa-none{padding:0 0}.q-pl-none{padding-left:0}.q-pr-none{padding-right:0}.q-pt-none{padding-top:0}.q-pb-none{padding-bottom:0}.q-px-none{padding-left:0;padding-right:0}.q-py-none{padding-top:0;padding-bottom:0}.q-ma-none{margin:0 0}.q-ml-none{margin-left:0}.q-mr-none{margin-right:0}.q-mt-none{margin-top:0}.q-mb-none{margin-bottom:0}.q-mx-none{margin-left:0;margin-right:0}.q-my-none{margin-top:0;margin-bottom:0}.q-pa-xs{padding:4px 4px}.q-pl-xs{padding-left:4px}.q-pr-xs{padding-right:4px}.q-pt-xs{padding-top:4px}.q-pb-xs{padding-bottom:4px}.q-px-xs{padding-left:4px;padding-right:4px}.q-py-xs{padding-top:4px;padding-bottom:4px}.q-ma-xs{margin:4px 4px}.q-ml-xs{margin-left:4px}.q-mr-xs{margin-right:4px}.q-mt-xs{margin-top:4px}.q-mb-xs{margin-bottom:4px}.q-mx-xs{margin-left:4px;margin-right:4px}.q-my-xs{margin-top:4px;margin-bottom:4px}.q-pa-sm{padding:8px 8px}.q-pl-sm{padding-left:8px}.q-pr-sm{padding-right:8px}.q-pt-sm{padding-top:8px}.q-pb-sm{padding-bottom:8px}.q-px-sm{padding-left:8px;padding-right:8px}.q-py-sm{padding-top:8px;padding-bottom:8px}.q-ma-sm{margin:8px 8px}.q-ml-sm{margin-left:8px}.q-mr-sm{margin-right:8px}.q-mt-sm{margin-top:8px}.q-mb-sm{margin-bottom:8px}.q-mx-sm{margin-left:8px;margin-right:8px}.q-my-sm{margin-top:8px;margin-bottom:8px}.q-pa-md{padding:16px 16px}.q-pl-md{padding-left:16px}.q-pr-md{padding-right:16px}.q-pt-md{padding-top:16px}.q-pb-md{padding-bottom:16px}.q-px-md{padding-left:16px;padding-right:16px}.q-py-md{padding-top:16px;padding-bottom:16px}.q-ma-md{margin:16px 16px}.q-ml-md{margin-left:16px}.q-mr-md{margin-right:16px}.q-mt-md{margin-top:16px}.q-mb-md{margin-bottom:16px}.q-mx-md{margin-left:16px;margin-right:16px}.q-my-md{margin-top:16px;margin-bottom:16px}.q-pa-lg{padding:24px 24px}.q-pl-lg{padding-left:24px}.q-pr-lg{padding-right:24px}.q-pt-lg{padding-top:24px}.q-pb-lg{padding-bottom:24px}.q-px-lg{padding-left:24px;padding-right:24px}.q-py-lg{padding-top:24px;padding-bottom:24px}.q-ma-lg{margin:24px 24px}.q-ml-lg{margin-left:24px}.q-mr-lg{margin-right:24px}.q-mt-lg{margin-top:24px}.q-mb-lg{margin-bottom:24px}.q-mx-lg{margin-left:24px;margin-right:24px}.q-my-lg{margin-top:24px;margin-bottom:24px}.q-pa-xl{padding:48px 48px}.q-pl-xl{padding-left:48px}.q-pr-xl{padding-right:48px}.q-pt-xl{padding-top:48px}.q-pb-xl{padding-bottom:48px}.q-px-xl{padding-left:48px;padding-right:48px}.q-py-xl{padding-top:48px;padding-bottom:48px}.q-ma-xl{margin:48px 48px}.q-ml-xl{margin-left:48px}.q-mr-xl{margin-right:48px}.q-mt-xl{margin-top:48px}.q-mb-xl{margin-bottom:48px}.q-mx-xl{margin-left:48px;margin-right:48px}.q-my-xl{margin-top:48px;margin-bottom:48px}.q-mt-auto,.q-my-auto{margin-top:auto}.q-ml-auto{margin-left:auto}.q-mb-auto,.q-my-auto{margin-bottom:auto}.q-mr-auto{margin-right:auto}.q-mx-auto{margin-left:auto;margin-right:auto}.q-touch{-webkit-user-select:none;user-select:none;user-drag:none;-khtml-user-drag:none;-webkit-user-drag:none}.q-touch-x{touch-action:pan-x}.q-touch-y{touch-action:pan-y}:root{--q-transition-duration:.3s}.q-transition--fade-enter-active,.q-transition--fade-leave-active,.q-transition--flip-enter-active,.q-transition--flip-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--rotate-enter-active,.q-transition--rotate-leave-active,.q-transition--scale-enter-active,.q-transition--scale-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active{--q-transition-duration:.3s;--q-transition-easing:cubic-bezier(0.215,0.61,0.355,1)}.q-transition--fade-leave-active,.q-transition--flip-leave-active,.q-transition--jump-down-leave-active,.q-transition--jump-left-leave-active,.q-transition--jump-right-leave-active,.q-transition--jump-up-leave-active,.q-transition--rotate-leave-active,.q-transition--scale-leave-active,.q-transition--slide-down-leave-active,.q-transition--slide-left-leave-active,.q-transition--slide-right-leave-active,.q-transition--slide-up-leave-active{position:absolute}.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active{transition:transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--slide-right-enter-from{transform:translate3d(-100%,0,0)}.q-transition--slide-right-leave-to{transform:translate3d(100%,0,0)}.q-transition--slide-left-enter-from{transform:translate3d(100%,0,0)}.q-transition--slide-left-leave-to{transform:translate3d(-100%,0,0)}.q-transition--slide-up-enter-from{transform:translate3d(0,100%,0)}.q-transition--slide-up-leave-to{transform:translate3d(0,-100%,0)}.q-transition--slide-down-enter-from{transform:translate3d(0,-100%,0)}.q-transition--slide-down-leave-to{transform:translate3d(0,100%,0)}.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration)}.q-transition--jump-down-enter-from,.q-transition--jump-down-leave-to,.q-transition--jump-left-enter-from,.q-transition--jump-left-leave-to,.q-transition--jump-right-enter-from,.q-transition--jump-right-leave-to,.q-transition--jump-up-enter-from,.q-transition--jump-up-leave-to{opacity:0}.q-transition--jump-right-enter-from{transform:translate3d(-15px,0,0)}.q-transition--jump-right-leave-to{transform:translate3d(15px,0,0)}.q-transition--jump-left-enter-from{transform:translate3d(15px,0,0)}.q-transition--jump-left-leave-to{transform:translateX(-15px)}.q-transition--jump-up-enter-from{transform:translate3d(0,15px,0)}.q-transition--jump-up-leave-to{transform:translate3d(0,-15px,0)}.q-transition--jump-down-enter-from{transform:translate3d(0,-15px,0)}.q-transition--jump-down-leave-to{transform:translate3d(0,15px,0)}.q-transition--fade-enter-active,.q-transition--fade-leave-active{transition:opacity var(--q-transition-duration) ease-out}.q-transition--fade-enter-from,.q-transition--fade-leave-to{opacity:0}.q-transition--scale-enter-active,.q-transition--scale-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--scale-enter-from,.q-transition--scale-leave-to{opacity:0;transform:scale3d(0,0,1)}.q-transition--rotate-enter-active,.q-transition--rotate-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing);transform-style:preserve-3d}.q-transition--rotate-enter-from,.q-transition--rotate-leave-to{opacity:0;transform:scale3d(0,0,1) rotate3d(0,0,1,90deg)}.q-transition--flip-down-enter-active,.q-transition--flip-down-leave-active,.q-transition--flip-left-enter-active,.q-transition--flip-left-leave-active,.q-transition--flip-right-enter-active,.q-transition--flip-right-leave-active,.q-transition--flip-up-enter-active,.q-transition--flip-up-leave-active{transition:transform var(--q-transition-duration);backface-visibility:hidden}.q-transition--flip-down-enter-to,.q-transition--flip-down-leave-from,.q-transition--flip-left-enter-to,.q-transition--flip-left-leave-from,.q-transition--flip-right-enter-to,.q-transition--flip-right-leave-from,.q-transition--flip-up-enter-to,.q-transition--flip-up-leave-from{transform:perspective(400px) rotate3d(1,1,0,0deg)}.q-transition--flip-right-enter-from{transform:perspective(400px) rotate3d(0,1,0,-180deg)}.q-transition--flip-right-leave-to{transform:perspective(400px) rotate3d(0,1,0,180deg)}.q-transition--flip-left-enter-from{transform:perspective(400px) rotate3d(0,1,0,180deg)}.q-transition--flip-left-leave-to{transform:perspective(400px) rotate3d(0,1,0,-180deg)}.q-transition--flip-up-enter-from{transform:perspective(400px) rotate3d(1,0,0,-180deg)}.q-transition--flip-up-leave-to{transform:perspective(400px) rotate3d(1,0,0,180deg)}.q-transition--flip-down-enter-from{transform:perspective(400px) rotate3d(1,0,0,180deg)}.q-transition--flip-down-leave-to{transform:perspective(400px) rotate3d(1,0,0,-180deg)}body{min-width:100px;min-height:100%;font-family:Roboto,"-apple-system","Helvetica Neue",Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:antialiased;line-height:1.5;font-size:14px}h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}p{margin:0 0 16px}.text-h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}.text-h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}.text-h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}.text-h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}.text-h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}.text-h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.text-subtitle1{font-size:1rem;font-weight:400;line-height:1.75rem;letter-spacing:.00937em}.text-subtitle2{font-size:.875rem;font-weight:500;line-height:1.375rem;letter-spacing:.00714em}.text-body1{font-size:1rem;font-weight:400;line-height:1.5rem;letter-spacing:.03125em}.text-body2{font-size:.875rem;font-weight:400;line-height:1.25rem;letter-spacing:.01786em}.text-overline{font-size:.75rem;font-weight:500;line-height:2rem;letter-spacing:.16667em}.text-caption{font-size:.75rem;font-weight:400;line-height:1.25rem;letter-spacing:.03333em}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-justify{text-align:justify;hyphens:auto}.text-italic{font-style:italic}.text-bold{font-weight:700}.text-no-wrap{white-space:nowrap}.text-strike{text-decoration:line-through}.text-weight-thin{font-weight:100}.text-weight-light{font-weight:300}.text-weight-regular{font-weight:400}.text-weight-medium{font-weight:500}.text-weight-bold{font-weight:700}.text-weight-bolder{font-weight:900}small{font-size:80%}big{font-size:170%}sub{bottom:-.25em}sup{top:-.5em}.no-margin{margin:0!important}.no-padding{padding:0!important}.no-border{border:0!important}.no-border-radius{border-radius:0!important}.no-box-shadow{box-shadow:none!important}.no-outline{outline:0!important}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ellipsis-2-lines,.ellipsis-3-lines{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.ellipsis-2-lines{-webkit-line-clamp:2}.ellipsis-3-lines{-webkit-line-clamp:3}.readonly{cursor:default!important}.disabled,.disabled *,[disabled],[disabled] *{outline:0!important;cursor:not-allowed!important}.disabled,[disabled]{opacity:.6!important}.hidden{display:none!important}.invisible,.invisible *{visibility:hidden!important;transition:none!important;animation:none!important}.transparent{background:0 0!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-hidden-y{overflow-y:hidden!important}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{width:0;height:0;display:none}.dimmed:after,.light-dimmed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.dimmed:after{background:rgba(0,0,0,.4)!important}.light-dimmed:after{background:rgba(255,255,255,.6)!important}.z-top{z-index:7000!important}.z-max{z-index:9998!important}body.desktop .desktop-hide,body:not(.desktop) .desktop-only{display:none!important}body.mobile .mobile-hide,body:not(.mobile) .mobile-only{display:none!important}body.native-mobile .native-mobile-hide,body:not(.native-mobile) .native-mobile-only{display:none!important}body.cordova .cordova-hide,body:not(.cordova) .cordova-only{display:none!important}body.capacitor .capacitor-hide,body:not(.capacitor) .capacitor-only{display:none!important}body.electron .electron-hide,body:not(.electron) .electron-only{display:none!important}body.touch .touch-hide,body:not(.touch) .touch-only{display:none!important}body.within-iframe .within-iframe-hide,body:not(.within-iframe) .within-iframe-only{display:none!important}body.platform-ios .platform-ios-hide,body:not(.platform-ios) .platform-ios-only{display:none!important}body.platform-android .platform-android-hide,body:not(.platform-android) .platform-android-only{display:none!important}@media all and (orientation:portrait){.orientation-landscape{display:none!important}}@media all and (orientation:landscape){.orientation-portrait{display:none!important}}@media screen{.print-only{display:none!important}}@media print{.print-hide{display:none!important}}@media (max-width:599.98px){.gt-lg,.gt-md,.gt-sm,.gt-xs,.lg,.md,.sm,.xl,.xs-hide{display:none!important}}@media (min-width:600px) and (max-width:1023.98px){.gt-lg,.gt-md,.gt-sm,.lg,.lt-sm,.md,.sm-hide,.xl,.xs{display:none!important}}@media (min-width:1024px) and (max-width:1439.98px){.gt-lg,.gt-md,.lg,.lt-md,.lt-sm,.md-hide,.sm,.xl,.xs{display:none!important}}@media (min-width:1440px) and (max-width:1919.98px){.gt-lg,.lg-hide,.lt-lg,.lt-md,.lt-sm,.md,.sm,.xl,.xs{display:none!important}}@media (min-width:1920px){.lg,.lt-lg,.lt-md,.lt-sm,.lt-xl,.md,.sm,.xl-hide,.xs{display:none!important}}.q-focus-helper,.q-focusable,.q-hoverable,.q-manual-focusable{outline:0}body.desktop .q-focus-helper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:inherit;opacity:0;transition:background-color .3s cubic-bezier(.25, .8, .5, 1),opacity .4s cubic-bezier(.25, .8, .5, 1)}body.desktop .q-focus-helper:after,body.desktop .q-focus-helper:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;border-radius:inherit;transition:background-color .3s cubic-bezier(.25, .8, .5, 1),opacity .6s cubic-bezier(.25, .8, .5, 1)}body.desktop .q-focus-helper:before{background:#000}body.desktop .q-focus-helper:after{background:#fff}body.desktop .q-focus-helper--rounded{border-radius:4px}body.desktop .q-focus-helper--round{border-radius:50%}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-hoverable:hover>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper{background:currentColor;opacity:.15}body.desktop .q-focusable:focus>.q-focus-helper:before,body.desktop .q-hoverable:hover>.q-focus-helper:before,body.desktop .q-manual-focusable--focused>.q-focus-helper:before{opacity:.1}body.desktop .q-focusable:focus>.q-focus-helper:after,body.desktop .q-hoverable:hover>.q-focus-helper:after,body.desktop .q-manual-focusable--focused>.q-focus-helper:after{opacity:.4}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper{opacity:.22}body.body--dark{color:#fff;background:var(--q-dark-page)}.q-dark{color:#fff;background:var(--q-dark)}body[data-theme=classic].neon-border .q-card,body[data-theme=classic].neon-border .q-card.q-card--dark,body[data-theme=classic].neon-border .q-date,body[data-theme=classic].neon-border .q-date--dark{border:2px solid #673ab7;box-shadow:none}body[data-theme=bitcoin].neon-border .q-card,body[data-theme=bitcoin].neon-border .q-card.q-card--dark,body[data-theme=bitcoin].neon-border .q-date,body[data-theme=bitcoin].neon-border .q-date--dark{border:2px solid #ea611d;box-shadow:none}body[data-theme=freedom].neon-border .q-card,body[data-theme=freedom].neon-border .q-card.q-card--dark,body[data-theme=freedom].neon-border .q-date,body[data-theme=freedom].neon-border .q-date--dark{border:2px solid #e22156;box-shadow:none}body[data-theme=cyber].neon-border .q-card,body[data-theme=cyber].neon-border .q-card.q-card--dark,body[data-theme=cyber].neon-border .q-date,body[data-theme=cyber].neon-border .q-date--dark{border:2px solid #7cb342;box-shadow:none}body[data-theme=mint].neon-border .q-card,body[data-theme=mint].neon-border .q-card.q-card--dark,body[data-theme=mint].neon-border .q-date,body[data-theme=mint].neon-border .q-date--dark{border:2px solid #3ab77d;box-shadow:none}body[data-theme=autumn].neon-border .q-card,body[data-theme=autumn].neon-border .q-card.q-card--dark,body[data-theme=autumn].neon-border .q-date,body[data-theme=autumn].neon-border .q-date--dark{border:2px solid #b7763a;box-shadow:none}body[data-theme=flamingo].neon-border .q-card,body[data-theme=flamingo].neon-border .q-card.q-card--dark,body[data-theme=flamingo].neon-border .q-date,body[data-theme=flamingo].neon-border .q-date--dark{border:2px solid #f0f;box-shadow:none}body[data-theme=monochrome].neon-border .q-card,body[data-theme=monochrome].neon-border .q-card.q-card--dark,body[data-theme=monochrome].neon-border .q-date,body[data-theme=monochrome].neon-border .q-date--dark{border:2px solid #494949;box-shadow:none}body[data-theme=salvador].neon-border .q-card,body[data-theme=salvador].neon-border .q-card.q-card--dark,body[data-theme=salvador].neon-border .q-date,body[data-theme=salvador].neon-border .q-date--dark{border:2px solid #1976d2;box-shadow:none}body.hard-border .q-card,body.hard-border .q-card.q-card--dark,body.hard-border .q-date,body.hard-border .q-date--dark{box-shadow:0 0 0 1px rgba(0,0,0,.12),0 0 0 1px rgba(255,255,255,.2784313725);border:none}body.retro-border .q-card,body.retro-border .q-card.q-card--dark,body.retro-border .q-date,body.retro-border .q-date--dark{border:none;box-shadow:0 1px 5px rgba(255,255,255,.2),0 2px 2px rgba(255,255,255,.14),0 3px 1px -2px rgba(255,255,255,.12)}body.no-border .q-card,body.no-border .q-card.q-card--dark,body.no-border .q-date,body.no-border .q-date--dark{border:none;box-shadow:none}body[data-theme=classic]{--q-primary:#673ab7;--q-secondary:#9c27b0;--q-dark-page:#1f2234}body[data-theme=classic] [data-theme=classic] .q-card--dark,body[data-theme=classic] [data-theme=classic] .q-stepper--dark{background:#333646!important}body[data-theme=bitcoin]{--q-primary:#ea611d;--q-secondary:#e56f35;--q-dark-page:#2d293b}body[data-theme=bitcoin] [data-theme=bitcoin] .q-card--dark,body[data-theme=bitcoin] [data-theme=bitcoin] .q-stepper--dark{background:#333646!important}body[data-theme=freedom]{--q-primary:#e22156;--q-secondary:#b91a45;--q-dark-page:#462f36}body[data-theme=freedom] [data-theme=freedom] .q-card--dark,body[data-theme=freedom] [data-theme=freedom] .q-stepper--dark{background:#47393d!important}body[data-theme=cyber]{--q-primary:#7cb342;--q-secondary:#558b2f;--q-dark-page:#000}body[data-theme=cyber] [data-theme=cyber] .q-card--dark,body[data-theme=cyber] [data-theme=cyber] .q-stepper--dark{background:#1f2915!important}body[data-theme=mint]{--q-primary:#3ab77d;--q-secondary:#27b065;--q-dark-page:#1f342b}body[data-theme=mint] [data-theme=mint] .q-card--dark,body[data-theme=mint] [data-theme=mint] .q-stepper--dark{background:#334642!important}body[data-theme=autumn]{--q-primary:#b7763a;--q-secondary:#b07927;--q-dark-page:#34291f}body[data-theme=autumn] [data-theme=autumn] .q-card--dark,body[data-theme=autumn] [data-theme=autumn] .q-stepper--dark{background:#463f33!important}body[data-theme=flamingo]{--q-primary:#ff00ff;--q-secondary:#fda3fd;--q-dark-page:#2f032f}body[data-theme=flamingo] [data-theme=flamingo] .q-card--dark,body[data-theme=flamingo] [data-theme=flamingo] .q-stepper--dark{background:#bc23bc!important}body[data-theme=monochrome]{--q-primary:#494949;--q-secondary:#6b6b6b;--q-dark-page:#000}body[data-theme=monochrome] [data-theme=monochrome] .q-card--dark,body[data-theme=monochrome] [data-theme=monochrome] .q-stepper--dark{background:#272727!important}body[data-theme=salvador]{--q-primary:#1976d2;--q-secondary:#26a69a;--q-dark-page:#253647}body[data-theme=salvador] [data-theme=salvador] .q-card--dark,body[data-theme=salvador] [data-theme=salvador] .q-stepper--dark{background:#343d47!important}body.gradient-bg{background-image:linear-gradient(to bottom right,#fff,var(--q-primary));background-attachment:fixed}body.gradient-bg.body--dark{background-image:linear-gradient(to bottom right,var(--q-dark-page),#0a0a0a);background-attachment:fixed}body.bg-image::before{content:"";position:fixed;z-index:-1;top:0;left:0;width:100%;height:100%;filter:blur(8px);background-image:var(--background);background-size:cover;background-position:center;background-repeat:no-repeat}body.bg-image .q-page-container{backdrop-filter:none}body.body--dark .q-card:not(.q-dialog .q-card,.lnbits__dialog-card,.q-dialog-plugin--dark),body.body--dark .q-drawer,body.body--dark .q-header{--q-dark:rgba(29, 29, 29, 0.3);background-color:var(--q-dark)}:root{--size:100px;--gap:25px}.home .wrapper{display:flex;flex-direction:column;gap:var(--gap);margin:auto;max-width:100%}.home .marquee{display:flex;overflow:hidden;user-select:none;gap:var(--gap);height:max-content;mask-image:linear-gradient(to right,hsla(0,0%,0%,0),hsl(0,0%,0%) 20%,hsl(0,0%,0%) 80%,hsla(0,0%,0%,0))}.home .marquee__group{flex-shrink:0;display:flex;align-items:center;justify-content:space-around;gap:var(--gap);min-width:100%;animation:scroll-x 60s linear infinite}.home .marquee:hover .marquee__group{animation-play-state:paused}.home .marquee__group div{width:var(--size)}@keyframes scroll-x{from{transform:translateX(0)}to{transform:translateX(calc(-100% - var(--gap)))}}[v-cloak]{display:none}body.body--dark .q-table--dark{background:0 0}body.body--dark .q-field--error .q-field__messages,body.body--dark .q-field--error .text-negative{color:#ff0!important}.lnbits-drawer__q-list .q-item{padding-top:5px!important;padding-bottom:5px!important;border-top-right-radius:3px;border-bottom-right-radius:3px}.lnbits-drawer__q-list .q-item.q-item--active{color:inherit;font-weight:700}.lnbits__dialog-card{width:500px}.blur-and-disable{filter:blur(4px);pointer-events:none;user-select:none;opacity:.6}.lnbits__table-bordered td,.lnbits__table-bordered th{border:1px solid #000;border-collapse:collapse}.q-table--dense .q-table__bottom,.q-table--dense td:first-child,.q-table--dense th:first-child{padding-left:6px!important}.q-table--dense .q-table__bottom,.q-table--dense td:last-child,.q-table--dense th:last-child{padding-right:6px!important}a.inherit{color:inherit;text-decoration:none}video{border-radius:3px}.material-icons{font-family:"Material Icons";font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-moz-font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale}.q-rating__icon{font-size:1em}.text-wrap{word-break:break-word}.q-card code{overflow-wrap:break-word}.qrcode__wrapper{position:relative;display:flex;align-items:center;justify-content:center;margin:0 auto}.qrcode__wrapper canvas{width:100%!important;height:100%!important;max-width:320px}.qrcode__image{position:absolute;max-width:52px;width:15%;overflow:hidden;background:#fff;overflow:hidden;padding:.2rem;border-radius:.2rem}.whitespace-pre-line{white-space:pre-line}.q-carousel__slide{background-size:contain;background-repeat:no-repeat}.q-dialog__inner--minimized{padding:12px}.first-install{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%}.first-install .grid{display:block}.first-install .hero-wrapper{display:none}.first-install .hero{display:block;height:100%;max-width:250px;background-image:url(/static/images/logos/lnbits.svg);background-position:center;background-size:contain;background-repeat:no-repeat}@media (min-width:992px){.first-install .grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem}.first-install .hero-wrapper{display:block;position:relative;height:100%;padding:1rem}}.wallet-list-card{margin-top:1px;margin-right:1rem}.wallet-list-card:first-child{margin-left:1px}@media (max-width:1024px){.wallet-card{background:0 0!important;box-shadow:none!important;border:none!important}.mobile-simple .wallet-wrapper{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important}.mobile-simple .wallet-card{width:90%!important}}.error-code{font-size:clamp(15vh, 20vw, 30vh)}.error-message{font-size:clamp(1.5rem, 3vw, 3.75rem);font-weight:300;opacity:.4} \ No newline at end of file diff --git a/lnbits/static/bundle.min.js b/lnbits/static/bundle.min.js index ccb1bd71..9215a0a3 100644 --- a/lnbits/static/bundle.min.js +++ b/lnbits/static/bundle.min.js @@ -3,44 +3,44 @@ //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,(function(){"use strict";var e,t;function n(){return e.apply(null,arguments)}function a(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function i(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function r(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function o(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(r(e,t))return!1;return!0}function s(e){return void 0===e}function l(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function u(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function c(e,t){var n,a=[],i=e.length;for(n=0;n>>0;for(t=0;t0)for(n=0;n=0?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+a}var L=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,M=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,R={},z={};function N(e,t,n,a){var i=a;"string"==typeof a&&(i=function(){return this[a]()}),e&&(z[e]=i),t&&(z[t[0]]=function(){return A(i.apply(this,arguments),t[1],t[2])}),n&&(z[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function I(e,t){return e.isValid()?(t=O(t,e.localeData()),R[t]=R[t]||function(e){var t,n,a,i=e.match(L);for(t=0,n=i.length;t=0&&M.test(e);)e=e.replace(M,a),M.lastIndex=0,n-=1;return e}var D={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function q(e){return"string"==typeof e?D[e]||D[e.toLowerCase()]:void 0}function j(e){var t,n,a={};for(n in e)r(e,n)&&(t=q(n))&&(a[t]=e[n]);return a}var B={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};var F,$=/\d/,V=/\d\d/,U=/\d{3}/,H=/\d{4}/,W=/[+-]?\d{6}/,G=/\d\d?/,Y=/\d\d\d\d?/,K=/\d\d\d\d\d\d?/,Q=/\d{1,3}/,Z=/\d{1,4}/,J=/[+-]?\d{1,6}/,X=/\d+/,ee=/[+-]?\d+/,te=/Z|[+-]\d\d:?\d\d/gi,ne=/Z|[+-]\d\d(?::?\d\d)?/gi,ae=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,ie=/^[1-9]\d?/,re=/^([1-9]\d|\d)/;function oe(e,t,n){F[e]=T(t)?t:function(e,a){return e&&n?n:t}}function se(e,t){return r(F,e)?F[e](t._strict,t._locale):new RegExp(le(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(e,t,n,a,i){return t||n||a||i}))))}function le(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ue(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function ce(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=ue(t)),n}F={};var de={};function he(e,t){var n,a,i=t;for("string"==typeof e&&(e=[e]),l(t)&&(i=function(e,n){n[t]=ce(e)}),a=e.length,n=0;n68?1900:2e3)};var Te,Ee=Pe("FullYear",!0);function Pe(e,t){return function(a){return null!=a?(Le(this,e,a),n.updateOffset(this,t),this):Ae(this,e)}}function Ae(e,t){if(!e.isValid())return NaN;var n=e._d,a=e._isUTC;switch(t){case"Milliseconds":return a?n.getUTCMilliseconds():n.getMilliseconds();case"Seconds":return a?n.getUTCSeconds():n.getSeconds();case"Minutes":return a?n.getUTCMinutes():n.getMinutes();case"Hours":return a?n.getUTCHours():n.getHours();case"Date":return a?n.getUTCDate():n.getDate();case"Day":return a?n.getUTCDay():n.getDay();case"Month":return a?n.getUTCMonth():n.getMonth();case"FullYear":return a?n.getUTCFullYear():n.getFullYear();default:return NaN}}function Le(e,t,n){var a,i,r,o,s;if(e.isValid()&&!isNaN(n)){switch(a=e._d,i=e._isUTC,t){case"Milliseconds":return void(i?a.setUTCMilliseconds(n):a.setMilliseconds(n));case"Seconds":return void(i?a.setUTCSeconds(n):a.setSeconds(n));case"Minutes":return void(i?a.setUTCMinutes(n):a.setMinutes(n));case"Hours":return void(i?a.setUTCHours(n):a.setHours(n));case"Date":return void(i?a.setUTCDate(n):a.setDate(n));case"FullYear":break;default:return}r=n,o=e.month(),s=29!==(s=e.date())||1!==o||me(r)?s:28,i?a.setUTCFullYear(r,o,s):a.setFullYear(r,o,s)}}function Me(e,t){if(isNaN(e)||isNaN(t))return NaN;var n,a=(t%(n=12)+n)%n;return e+=(t-a)/12,1===a?me(e)?29:28:31-a%7%2}Te=Array.prototype.indexOf?Array.prototype.indexOf:function(e){var t;for(t=0;t=0?(s=new Date(e+400,t,n,a,i,r,o),isFinite(s.getFullYear())&&s.setFullYear(e)):s=new Date(e,t,n,a,i,r,o),s}function $e(e){var t,n;return e<100&&e>=0?((n=Array.prototype.slice.call(arguments))[0]=e+400,t=new Date(Date.UTC.apply(null,n)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function Ve(e,t,n){var a=7+t-n;return-((7+$e(e,0,a).getUTCDay()-t)%7)+a-1}function Ue(e,t,n,a,i){var r,o,s=1+7*(t-1)+(7+n-a)%7+Ve(e,a,i);return s<=0?o=Ce(r=e-1)+s:s>Ce(e)?(r=e+1,o=s-Ce(e)):(r=e,o=s),{year:r,dayOfYear:o}}function He(e,t,n){var a,i,r=Ve(e.year(),t,n),o=Math.floor((e.dayOfYear()-r-1)/7)+1;return o<1?a=o+We(i=e.year()-1,t,n):o>We(e.year(),t,n)?(a=o-We(e.year(),t,n),i=e.year()+1):(i=e.year(),a=o),{week:a,year:i}}function We(e,t,n){var a=Ve(e,t,n),i=Ve(e+1,t,n);return(Ce(e)-a+i)/7}N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),oe("w",G,ie),oe("ww",G,V),oe("W",G,ie),oe("WW",G,V),pe(["w","ww","W","WW"],(function(e,t,n,a){t[a.substr(0,1)]=ce(e)}));function Ge(e,t){return e.slice(t,7).concat(e.slice(0,t))}N("d",0,"do","day"),N("dd",0,0,(function(e){return this.localeData().weekdaysMin(this,e)})),N("ddd",0,0,(function(e){return this.localeData().weekdaysShort(this,e)})),N("dddd",0,0,(function(e){return this.localeData().weekdays(this,e)})),N("e",0,0,"weekday"),N("E",0,0,"isoWeekday"),oe("d",G),oe("e",G),oe("E",G),oe("dd",(function(e,t){return t.weekdaysMinRegex(e)})),oe("ddd",(function(e,t){return t.weekdaysShortRegex(e)})),oe("dddd",(function(e,t){return t.weekdaysRegex(e)})),pe(["dd","ddd","dddd"],(function(e,t,n,a){var i=n._locale.weekdaysParse(e,a,n._strict);null!=i?t.d=i:p(n).invalidWeekday=e})),pe(["d","e","E"],(function(e,t,n,a){t[a]=ce(e)}));var Ye="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Ke="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Qe="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Ze=ae,Je=ae,Xe=ae;function et(e,t,n){var a,i,r,o=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],a=0;a<7;++a)r=h([2e3,1]).day(a),this._minWeekdaysParse[a]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[a]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[a]=this.weekdays(r,"").toLocaleLowerCase();return n?"dddd"===t?-1!==(i=Te.call(this._weekdaysParse,o))?i:null:"ddd"===t?-1!==(i=Te.call(this._shortWeekdaysParse,o))?i:null:-1!==(i=Te.call(this._minWeekdaysParse,o))?i:null:"dddd"===t?-1!==(i=Te.call(this._weekdaysParse,o))||-1!==(i=Te.call(this._shortWeekdaysParse,o))||-1!==(i=Te.call(this._minWeekdaysParse,o))?i:null:"ddd"===t?-1!==(i=Te.call(this._shortWeekdaysParse,o))||-1!==(i=Te.call(this._weekdaysParse,o))||-1!==(i=Te.call(this._minWeekdaysParse,o))?i:null:-1!==(i=Te.call(this._minWeekdaysParse,o))||-1!==(i=Te.call(this._weekdaysParse,o))||-1!==(i=Te.call(this._shortWeekdaysParse,o))?i:null}function tt(){function e(e,t){return t.length-e.length}var t,n,a,i,r,o=[],s=[],l=[],u=[];for(t=0;t<7;t++)n=h([2e3,1]).day(t),a=le(this.weekdaysMin(n,"")),i=le(this.weekdaysShort(n,"")),r=le(this.weekdays(n,"")),o.push(a),s.push(i),l.push(r),u.push(a),u.push(i),u.push(r);o.sort(e),s.sort(e),l.sort(e),u.sort(e),this._weekdaysRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function nt(){return this.hours()%12||12}function at(e,t){N(e,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)}))}function it(e,t){return t._meridiemParse}N("H",["HH",2],0,"hour"),N("h",["hh",2],0,nt),N("k",["kk",2],0,(function(){return this.hours()||24})),N("hmm",0,0,(function(){return""+nt.apply(this)+A(this.minutes(),2)})),N("hmmss",0,0,(function(){return""+nt.apply(this)+A(this.minutes(),2)+A(this.seconds(),2)})),N("Hmm",0,0,(function(){return""+this.hours()+A(this.minutes(),2)})),N("Hmmss",0,0,(function(){return""+this.hours()+A(this.minutes(),2)+A(this.seconds(),2)})),at("a",!0),at("A",!1),oe("a",it),oe("A",it),oe("H",G,re),oe("h",G,ie),oe("k",G,ie),oe("HH",G,V),oe("hh",G,V),oe("kk",G,V),oe("hmm",Y),oe("hmmss",K),oe("Hmm",Y),oe("Hmmss",K),he(["H","HH"],be),he(["k","kk"],(function(e,t,n){var a=ce(e);t[be]=24===a?0:a})),he(["a","A"],(function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e})),he(["h","hh"],(function(e,t,n){t[be]=ce(e),p(n).bigHour=!0})),he("hmm",(function(e,t,n){var a=e.length-2;t[be]=ce(e.substr(0,a)),t[ye]=ce(e.substr(a)),p(n).bigHour=!0})),he("hmmss",(function(e,t,n){var a=e.length-4,i=e.length-2;t[be]=ce(e.substr(0,a)),t[ye]=ce(e.substr(a,2)),t[we]=ce(e.substr(i)),p(n).bigHour=!0})),he("Hmm",(function(e,t,n){var a=e.length-2;t[be]=ce(e.substr(0,a)),t[ye]=ce(e.substr(a))})),he("Hmmss",(function(e,t,n){var a=e.length-4,i=e.length-2;t[be]=ce(e.substr(0,a)),t[ye]=ce(e.substr(a,2)),t[we]=ce(e.substr(i))}));var rt=Pe("Hours",!0);var ot,st={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Re,monthsShort:ze,week:{dow:0,doy:6},weekdays:Ye,weekdaysMin:Qe,weekdaysShort:Ke,meridiemParse:/[ap]\.?m?\.?/i},lt={},ut={};function ct(e,t){var n,a=Math.min(e.length,t.length);for(n=0;n0;){if(a=ht(i.slice(0,t).join("-")))return a;if(n&&n.length>=t&&ct(i,n)>=t-1)break;t--}r++}return ot}(e)}function gt(e){var t,n=e._a;return n&&-2===p(e).overflow&&(t=n[_e]<0||n[_e]>11?_e:n[ve]<1||n[ve]>Me(n[ge],n[_e])?ve:n[be]<0||n[be]>24||24===n[be]&&(0!==n[ye]||0!==n[we]||0!==n[ke])?be:n[ye]<0||n[ye]>59?ye:n[we]<0||n[we]>59?we:n[ke]<0||n[ke]>999?ke:-1,p(e)._overflowDayOfYear&&(tve)&&(t=ve),p(e)._overflowWeeks&&-1===t&&(t=xe),p(e)._overflowWeekday&&-1===t&&(t=Se),p(e).overflow=t),e}var _t=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,vt=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,bt=/Z|[+-]\d\d(?::?\d\d)?/,yt=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],wt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],kt=/^\/?Date\((-?\d+)/i,xt=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,St={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Ct(e){var t,n,a,i,r,o,s=e._i,l=_t.exec(s)||vt.exec(s),u=yt.length,c=wt.length;if(l){for(p(e).iso=!0,t=0,n=u;t7)&&(l=!0)):(r=e._locale._week.dow,o=e._locale._week.doy,u=He(zt(),r,o),n=Pt(t.gg,e._a[ge],u.year),a=Pt(t.w,u.week),null!=t.d?((i=t.d)<0||i>6)&&(l=!0):null!=t.e?(i=t.e+r,(t.e<0||t.e>6)&&(l=!0)):i=r);a<1||a>We(n,r,o)?p(e)._overflowWeeks=!0:null!=l?p(e)._overflowWeekday=!0:(s=Ue(n,a,i,r,o),e._a[ge]=s.year,e._dayOfYear=s.dayOfYear)}(e),null!=e._dayOfYear&&(o=Pt(e._a[ge],i[ge]),(e._dayOfYear>Ce(o)||0===e._dayOfYear)&&(p(e)._overflowDayOfYear=!0),a=$e(o,0,e._dayOfYear),e._a[_e]=a.getUTCMonth(),e._a[ve]=a.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=s[t]=i[t];for(;t<7;t++)e._a[t]=s[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[be]&&0===e._a[ye]&&0===e._a[we]&&0===e._a[ke]&&(e._nextDay=!0,e._a[be]=0),e._d=(e._useUTC?$e:Fe).apply(null,s),r=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[be]=24),e._w&&void 0!==e._w.d&&e._w.d!==r&&(p(e).weekdayMismatch=!0)}}function Lt(e){if(e._f!==n.ISO_8601)if(e._f!==n.RFC_2822){e._a=[],p(e).empty=!0;var t,a,i,r,o,s,l,u=""+e._i,c=u.length,d=0;for(l=(i=O(e._f,e._locale).match(L)||[]).length,t=0;t0&&p(e).unusedInput.push(o),u=u.slice(u.indexOf(a)+a.length),d+=a.length),z[r]?(a?p(e).empty=!1:p(e).unusedTokens.push(r),fe(r,a,e)):e._strict&&!a&&p(e).unusedTokens.push(r);p(e).charsLeftOver=c-d,u.length>0&&p(e).unusedInput.push(u),e._a[be]<=12&&!0===p(e).bigHour&&e._a[be]>0&&(p(e).bigHour=void 0),p(e).parsedDateParts=e._a.slice(0),p(e).meridiem=e._meridiem,e._a[be]=function(e,t,n){var a;if(null==n)return t;return null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?((a=e.isPM(n))&&t<12&&(t+=12),a||12!==t||(t=0),t):t}(e._locale,e._a[be],e._meridiem),null!==(s=p(e).era)&&(e._a[ge]=e._locale.erasConvertYear(s,e._a[ge])),At(e),gt(e)}else Et(e);else Ct(e)}function Mt(e){var t=e._i,r=e._f;return e._locale=e._locale||mt(e._l),null===t||void 0===r&&""===t?m({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),y(t)?new b(gt(t)):(u(t)?e._d=t:a(r)?function(e){var t,n,a,i,r,o,s=!1,l=e._f.length;if(0===l)return p(e).invalidFormat=!0,void(e._d=new Date(NaN));for(i=0;ithis?this:e:m()}));function Ot(e,t){var n,i;if(1===t.length&&a(t[0])&&(t=t[0]),!t.length)return zt();for(n=t[0],i=1;i=0?new Date(e+400,t,n)-hn:new Date(e,t,n).valueOf()}function mn(e,t,n){return e<100&&e>=0?Date.UTC(e+400,t,n)-hn:Date.UTC(e,t,n)}function gn(e,t){return t.erasAbbrRegex(e)}function _n(){var e,t,n,a,i,r=[],o=[],s=[],l=[],u=this.eras();for(e=0,t=u.length;e(r=We(e,a,i))&&(t=r),yn.call(this,e,t,n,a,i))}function yn(e,t,n,a,i){var r=Ue(e,t,n,a,i),o=$e(r.year,0,r.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}N("N",0,0,"eraAbbr"),N("NN",0,0,"eraAbbr"),N("NNN",0,0,"eraAbbr"),N("NNNN",0,0,"eraName"),N("NNNNN",0,0,"eraNarrow"),N("y",["y",1],"yo","eraYear"),N("y",["yy",2],0,"eraYear"),N("y",["yyy",3],0,"eraYear"),N("y",["yyyy",4],0,"eraYear"),oe("N",gn),oe("NN",gn),oe("NNN",gn),oe("NNNN",(function(e,t){return t.erasNameRegex(e)})),oe("NNNNN",(function(e,t){return t.erasNarrowRegex(e)})),he(["N","NN","NNN","NNNN","NNNNN"],(function(e,t,n,a){var i=n._locale.erasParse(e,a,n._strict);i?p(n).era=i:p(n).invalidEra=e})),oe("y",X),oe("yy",X),oe("yyy",X),oe("yyyy",X),oe("yo",(function(e,t){return t._eraYearOrdinalRegex||X})),he(["y","yy","yyy","yyyy"],ge),he(["yo"],(function(e,t,n,a){var i;n._locale._eraYearOrdinalRegex&&(i=e.match(n._locale._eraYearOrdinalRegex)),n._locale.eraYearOrdinalParse?t[ge]=n._locale.eraYearOrdinalParse(e,i):t[ge]=parseInt(e,10)})),N(0,["gg",2],0,(function(){return this.weekYear()%100})),N(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),vn("gggg","weekYear"),vn("ggggg","weekYear"),vn("GGGG","isoWeekYear"),vn("GGGGG","isoWeekYear"),oe("G",ee),oe("g",ee),oe("GG",G,V),oe("gg",G,V),oe("GGGG",Z,H),oe("gggg",Z,H),oe("GGGGG",J,W),oe("ggggg",J,W),pe(["gggg","ggggg","GGGG","GGGGG"],(function(e,t,n,a){t[a.substr(0,2)]=ce(e)})),pe(["gg","GG"],(function(e,t,a,i){t[i]=n.parseTwoDigitYear(e)})),N("Q",0,"Qo","quarter"),oe("Q",$),he("Q",(function(e,t){t[_e]=3*(ce(e)-1)})),N("D",["DD",2],"Do","date"),oe("D",G,ie),oe("DD",G,V),oe("Do",(function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient})),he(["D","DD"],ve),he("Do",(function(e,t){t[ve]=ce(e.match(G)[0])}));var wn=Pe("Date",!0);N("DDD",["DDDD",3],"DDDo","dayOfYear"),oe("DDD",Q),oe("DDDD",U),he(["DDD","DDDD"],(function(e,t,n){n._dayOfYear=ce(e)})),N("m",["mm",2],0,"minute"),oe("m",G,re),oe("mm",G,V),he(["m","mm"],ye);var kn=Pe("Minutes",!1);N("s",["ss",2],0,"second"),oe("s",G,re),oe("ss",G,V),he(["s","ss"],we);var xn,Sn,Cn=Pe("Seconds",!1);for(N("S",0,0,(function(){return~~(this.millisecond()/100)})),N(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),N(0,["SSS",3],0,"millisecond"),N(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),N(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),N(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),N(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),N(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),N(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),oe("S",Q,$),oe("SS",Q,V),oe("SSS",Q,U),xn="SSSS";xn.length<=9;xn+="S")oe(xn,X);function Tn(e,t){t[ke]=ce(1e3*("0."+e))}for(xn="S";xn.length<=9;xn+="S")he(xn,Tn);Sn=Pe("Milliseconds",!1),N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var En=b.prototype;function Pn(e){return e}En.add=en,En.calendar=function(e,t){1===arguments.length&&(arguments[0]?an(arguments[0])?(e=arguments[0],t=void 0):function(e){var t,n=i(e)&&!o(e),a=!1,s=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"];for(t=0;tn.valueOf():n.valueOf()9999?I(n,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):T(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",I(n,"Z")):I(n,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},En.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e,t,n,a="moment",i="";return this.isLocal()||(a=0===this.utcOffset()?"moment.utc":"moment.parseZone",i="Z"),e="["+a+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",n=i+'[")]',this.format(e+t+"-MM-DD[T]HH:mm:ss.SSS"+n)},"undefined"!=typeof Symbol&&null!=Symbol.for&&(En[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),En.toJSON=function(){return this.isValid()?this.toISOString():null},En.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},En.unix=function(){return Math.floor(this.valueOf()/1e3)},En.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},En.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},En.eraName=function(){var e,t,n,a=this.localeData().eras();for(e=0,t=a.length;ethis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},En.isLocal=function(){return!!this.isValid()&&!this._isUTC},En.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},En.isUtc=Wt,En.isUTC=Wt,En.zoneAbbr=function(){return this._isUTC?"UTC":""},En.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},En.dates=k("dates accessor is deprecated. Use date instead.",wn),En.months=k("months accessor is deprecated. Use month instead",je),En.years=k("years accessor is deprecated. Use year instead",Ee),En.zone=k("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",(function(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()})),En.isDSTShifted=k("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",(function(){if(!s(this._isDSTShifted))return this._isDSTShifted;var e,t={};return v(t,this),(t=Mt(t))._a?(e=t._isUTC?h(t._a):zt(t._a),this._isDSTShifted=this.isValid()&&function(e,t,n){var a,i=Math.min(e.length,t.length),r=Math.abs(e.length-t.length),o=0;for(a=0;a0):this._isDSTShifted=!1,this._isDSTShifted}));var An=P.prototype;function Ln(e,t,n,a){var i=mt(),r=h().set(a,t);return i[n](r,e)}function Mn(e,t,n){if(l(e)&&(t=e,e=void 0),e=e||"",null!=t)return Ln(e,t,n,"month");var a,i=[];for(a=0;a<12;a++)i[a]=Ln(e,a,n,"month");return i}function Rn(e,t,n,a){"boolean"==typeof e?(l(t)&&(n=t,t=void 0),t=t||""):(n=t=e,e=!1,l(t)&&(n=t,t=void 0),t=t||"");var i,r=mt(),o=e?r._week.dow:0,s=[];if(null!=n)return Ln(t,(n+o)%7,a,"day");for(i=0;i<7;i++)s[i]=Ln(t,(i+o)%7,a,"day");return s}An.calendar=function(e,t,n){var a=this._calendar[e]||this._calendar.sameElse;return T(a)?a.call(t,n):a},An.longDateFormat=function(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.match(L).map((function(e){return"MMMM"===e||"MM"===e||"DD"===e||"dddd"===e?e.slice(1):e})).join(""),this._longDateFormat[e])},An.invalidDate=function(){return this._invalidDate},An.ordinal=function(e){return this._ordinal.replace("%d",e)},An.preparse=Pn,An.postformat=Pn,An.relativeTime=function(e,t,n,a){var i=this._relativeTime[n];return T(i)?i(e,t,n,a):i.replace(/%d/i,e)},An.pastFuture=function(e,t){var n=this._relativeTime[e>0?"future":"past"];return T(n)?n(t):n.replace(/%s/i,t)},An.set=function(e){var t,n;for(n in e)r(e,n)&&(T(t=e[n])?this[n]=t:this["_"+n]=t);this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},An.eras=function(e,t){var a,i,r,o=this._eras||mt("en")._eras;for(a=0,i=o.length;a=0)return l[a]},An.erasConvertYear=function(e,t){var a=e.since<=e.until?1:-1;return void 0===t?n(e.since).year():n(e.since).year()+(t-e.offset)*a},An.erasAbbrRegex=function(e){return r(this,"_erasAbbrRegex")||_n.call(this),e?this._erasAbbrRegex:this._erasRegex},An.erasNameRegex=function(e){return r(this,"_erasNameRegex")||_n.call(this),e?this._erasNameRegex:this._erasRegex},An.erasNarrowRegex=function(e){return r(this,"_erasNarrowRegex")||_n.call(this),e?this._erasNarrowRegex:this._erasRegex},An.months=function(e,t){return e?a(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||Ne).test(t)?"format":"standalone"][e.month()]:a(this._months)?this._months:this._months.standalone},An.monthsShort=function(e,t){return e?a(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[Ne.test(t)?"format":"standalone"][e.month()]:a(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},An.monthsParse=function(e,t,n){var a,i,r;if(this._monthsParseExact)return De.call(this,e,t,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),a=0;a<12;a++){if(i=h([2e3,a]),n&&!this._longMonthsParse[a]&&(this._longMonthsParse[a]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[a]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),n||this._monthsParse[a]||(r="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[a]=new RegExp(r.replace(".",""),"i")),n&&"MMMM"===t&&this._longMonthsParse[a].test(e))return a;if(n&&"MMM"===t&&this._shortMonthsParse[a].test(e))return a;if(!n&&this._monthsParse[a].test(e))return a}},An.monthsRegex=function(e){return this._monthsParseExact?(r(this,"_monthsRegex")||Be.call(this),e?this._monthsStrictRegex:this._monthsRegex):(r(this,"_monthsRegex")||(this._monthsRegex=Oe),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)},An.monthsShortRegex=function(e){return this._monthsParseExact?(r(this,"_monthsRegex")||Be.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(r(this,"_monthsShortRegex")||(this._monthsShortRegex=Ie),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)},An.week=function(e){return He(e,this._week.dow,this._week.doy).week},An.firstDayOfYear=function(){return this._week.doy},An.firstDayOfWeek=function(){return this._week.dow},An.weekdays=function(e,t){var n=a(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(t)?"format":"standalone"];return!0===e?Ge(n,this._week.dow):e?n[e.day()]:n},An.weekdaysMin=function(e){return!0===e?Ge(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin},An.weekdaysShort=function(e){return!0===e?Ge(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort},An.weekdaysParse=function(e,t,n){var a,i,r;if(this._weekdaysParseExact)return et.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),a=0;a<7;a++){if(i=h([2e3,1]).day(a),n&&!this._fullWeekdaysParse[a]&&(this._fullWeekdaysParse[a]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[a]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[a]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[a]||(r="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[a]=new RegExp(r.replace(".",""),"i")),n&&"dddd"===t&&this._fullWeekdaysParse[a].test(e))return a;if(n&&"ddd"===t&&this._shortWeekdaysParse[a].test(e))return a;if(n&&"dd"===t&&this._minWeekdaysParse[a].test(e))return a;if(!n&&this._weekdaysParse[a].test(e))return a}},An.weekdaysRegex=function(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||tt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(r(this,"_weekdaysRegex")||(this._weekdaysRegex=Ze),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)},An.weekdaysShortRegex=function(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||tt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(r(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Je),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},An.weekdaysMinRegex=function(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||tt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(r(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Xe),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},An.isPM=function(e){return"p"===(e+"").toLowerCase().charAt(0)},An.meridiem=function(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"},pt("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===ce(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),n.lang=k("moment.lang is deprecated. Use moment.locale instead.",pt),n.langData=k("moment.langData is deprecated. Use moment.localeData instead.",mt);var zn=Math.abs;function Nn(e,t,n,a){var i=Kt(t,n);return e._milliseconds+=a*i._milliseconds,e._days+=a*i._days,e._months+=a*i._months,e._bubble()}function In(e){return e<0?Math.floor(e):Math.ceil(e)}function On(e){return 4800*e/146097}function Dn(e){return 146097*e/4800}function qn(e){return function(){return this.as(e)}}var jn=qn("ms"),Bn=qn("s"),Fn=qn("m"),$n=qn("h"),Vn=qn("d"),Un=qn("w"),Hn=qn("M"),Wn=qn("Q"),Gn=qn("y"),Yn=jn;function Kn(e){return function(){return this.isValid()?this._data[e]:NaN}}var Qn=Kn("milliseconds"),Zn=Kn("seconds"),Jn=Kn("minutes"),Xn=Kn("hours"),ea=Kn("days"),ta=Kn("months"),na=Kn("years");var aa=Math.round,ia={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function ra(e,t,n,a,i){return i.relativeTime(t||1,!!n,e,a)}var oa=Math.abs;function sa(e){return(e>0)-(e<0)||+e}function la(){if(!this.isValid())return this.localeData().invalidDate();var e,t,n,a,i,r,o,s,l=oa(this._milliseconds)/1e3,u=oa(this._days),c=oa(this._months),d=this.asSeconds();return d?(e=ue(l/60),t=ue(e/60),l%=60,e%=60,n=ue(c/12),c%=12,a=l?l.toFixed(3).replace(/\.?0+$/,""):"",i=d<0?"-":"",r=sa(this._months)!==sa(d)?"-":"",o=sa(this._days)!==sa(d)?"-":"",s=sa(this._milliseconds)!==sa(d)?"-":"",i+"P"+(n?r+n+"Y":"")+(c?r+c+"M":"")+(u?o+u+"D":"")+(t||e||l?"T":"")+(t?s+t+"H":"")+(e?s+e+"M":"")+(l?s+a+"S":"")):"P0D"}var ua=qt.prototype;return ua.isValid=function(){return this._isValid},ua.abs=function(){var e=this._data;return this._milliseconds=zn(this._milliseconds),this._days=zn(this._days),this._months=zn(this._months),e.milliseconds=zn(e.milliseconds),e.seconds=zn(e.seconds),e.minutes=zn(e.minutes),e.hours=zn(e.hours),e.months=zn(e.months),e.years=zn(e.years),this},ua.add=function(e,t){return Nn(this,e,t,1)},ua.subtract=function(e,t){return Nn(this,e,t,-1)},ua.as=function(e){if(!this.isValid())return NaN;var t,n,a=this._milliseconds;if("month"===(e=q(e))||"quarter"===e||"year"===e)switch(t=this._days+a/864e5,n=this._months+On(t),e){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(t=this._days+Math.round(Dn(this._months)),e){case"week":return t/7+a/6048e5;case"day":return t+a/864e5;case"hour":return 24*t+a/36e5;case"minute":return 1440*t+a/6e4;case"second":return 86400*t+a/1e3;case"millisecond":return Math.floor(864e5*t)+a;default:throw new Error("Unknown unit "+e)}},ua.asMilliseconds=jn,ua.asSeconds=Bn,ua.asMinutes=Fn,ua.asHours=$n,ua.asDays=Vn,ua.asWeeks=Un,ua.asMonths=Hn,ua.asQuarters=Wn,ua.asYears=Gn,ua.valueOf=Yn,ua._bubble=function(){var e,t,n,a,i,r=this._milliseconds,o=this._days,s=this._months,l=this._data;return r>=0&&o>=0&&s>=0||r<=0&&o<=0&&s<=0||(r+=864e5*In(Dn(s)+o),o=0,s=0),l.milliseconds=r%1e3,e=ue(r/1e3),l.seconds=e%60,t=ue(e/60),l.minutes=t%60,n=ue(t/60),l.hours=n%24,o+=ue(n/24),s+=i=ue(On(o)),o-=In(Dn(i)),a=ue(s/12),s%=12,l.days=o,l.months=s,l.years=a,this},ua.clone=function(){return Kt(this)},ua.get=function(e){return e=q(e),this.isValid()?this[e+"s"]():NaN},ua.milliseconds=Qn,ua.seconds=Zn,ua.minutes=Jn,ua.hours=Xn,ua.days=ea,ua.weeks=function(){return ue(this.days()/7)},ua.months=ta,ua.years=na,ua.humanize=function(e,t){if(!this.isValid())return this.localeData().invalidDate();var n,a,i=!1,r=ia;return"object"==typeof e&&(t=e,e=!1),"boolean"==typeof e&&(i=e),"object"==typeof t&&(r=Object.assign({},ia,t),null!=t.s&&null==t.ss&&(r.ss=t.s-1)),a=function(e,t,n,a){var i=Kt(e).abs(),r=aa(i.as("s")),o=aa(i.as("m")),s=aa(i.as("h")),l=aa(i.as("d")),u=aa(i.as("M")),c=aa(i.as("w")),d=aa(i.as("y")),h=r<=n.ss&&["s",r]||r0,h[4]=a,ra.apply(null,h)}(this,!i,r,n=this.localeData()),i&&(a=n.pastFuture(+this,a)),n.postformat(a)},ua.toISOString=la,ua.toString=la,ua.toJSON=la,ua.locale=on,ua.localeData=ln,ua.toIsoString=k("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",la),ua.lang=sn,N("X",0,0,"unix"),N("x",0,0,"valueOf"),oe("x",ee),oe("X",/[+-]?\d+(\.\d{1,3})?/),he("X",(function(e,t,n){n._d=new Date(1e3*parseFloat(e))})),he("x",(function(e,t,n){n._d=new Date(ce(e))})), +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";var e,t;function n(){return e.apply(null,arguments)}function a(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function i(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function r(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function o(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(r(e,t))return!1;return!0}function s(e){return void 0===e}function l(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function u(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function c(e,t){var n,a=[],i=e.length;for(n=0;n>>0;for(t=0;t0)for(n=0;n=0?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+a}var M=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,L=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,R={},z={};function N(e,t,n,a){var i=a;"string"==typeof a&&(i=function(){return this[a]()}),e&&(z[e]=i),t&&(z[t[0]]=function(){return A(i.apply(this,arguments),t[1],t[2])}),n&&(z[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function O(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function I(e,t){return e.isValid()?(t=q(t,e.localeData()),R[t]=R[t]||function(e){var t,n,a=e.match(M);for(t=0,n=a.length;t=0&&L.test(e);)e=e.replace(L,a),L.lastIndex=0,n-=1;return e}var D={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function j(e){return"string"==typeof e?D[e]||D[e.toLowerCase()]:void 0}function B(e){var t,n,a={};for(n in e)r(e,n)&&(t=j(n))&&(a[t]=e[n]);return a}var F={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};var $,V=/\d/,U=/\d\d/,H=/\d{3}/,W=/\d{4}/,G=/[+-]?\d{6}/,Y=/\d\d?/,K=/\d\d\d\d?/,Q=/\d\d\d\d\d\d?/,Z=/\d{1,3}/,J=/\d{1,4}/,X=/[+-]?\d{1,6}/,ee=/\d+/,te=/[+-]?\d+/,ne=/Z|[+-]\d\d:?\d\d/gi,ae=/Z|[+-]\d\d(?::?\d\d)?/gi,ie=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,re=/^[1-9]\d?/,oe=/^([1-9]\d|\d)/;function se(e,t,n){$[e]=T(t)?t:function(e,a){return e&&n?n:t}}function le(e,t){return r($,e)?$[e](t._strict,t._locale):new RegExp(ue(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,a,i){return t||n||a||i})))}function ue(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ce(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function de(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=ce(t)),n}$={};var he={};function pe(e,t){var n,a,i=t;for("string"==typeof e&&(e=[e]),l(t)&&(i=function(e,n){n[t]=de(e)}),a=e.length,n=0;n68?1900:2e3)};var Ee,Pe=Ae("FullYear",!0);function Ae(e,t){return function(a){return null!=a?(Le(this,e,a),n.updateOffset(this,t),this):Me(this,e)}}function Me(e,t){if(!e.isValid())return NaN;var n=e._d,a=e._isUTC;switch(t){case"Milliseconds":return a?n.getUTCMilliseconds():n.getMilliseconds();case"Seconds":return a?n.getUTCSeconds():n.getSeconds();case"Minutes":return a?n.getUTCMinutes():n.getMinutes();case"Hours":return a?n.getUTCHours():n.getHours();case"Date":return a?n.getUTCDate():n.getDate();case"Day":return a?n.getUTCDay():n.getDay();case"Month":return a?n.getUTCMonth():n.getMonth();case"FullYear":return a?n.getUTCFullYear():n.getFullYear();default:return NaN}}function Le(e,t,n){var a,i,r,o,s;if(e.isValid()&&!isNaN(n)){switch(a=e._d,i=e._isUTC,t){case"Milliseconds":return void(i?a.setUTCMilliseconds(n):a.setMilliseconds(n));case"Seconds":return void(i?a.setUTCSeconds(n):a.setSeconds(n));case"Minutes":return void(i?a.setUTCMinutes(n):a.setMinutes(n));case"Hours":return void(i?a.setUTCHours(n):a.setHours(n));case"Date":return void(i?a.setUTCDate(n):a.setDate(n));case"FullYear":break;default:return}r=n,o=e.month(),s=29!==(s=e.date())||1!==o||ge(r)?s:28,i?a.setUTCFullYear(r,o,s):a.setFullYear(r,o,s)}}function Re(e,t){if(isNaN(e)||isNaN(t))return NaN;var n,a=(t%(n=12)+n)%n;return e+=(t-a)/12,1===a?ge(e)?29:28:31-a%7%2}Ee=Array.prototype.indexOf?Array.prototype.indexOf:function(e){var t;for(t=0;t=0?(s=new Date(e+400,t,n,a,i,r,o),isFinite(s.getFullYear())&&s.setFullYear(e)):s=new Date(e,t,n,a,i,r,o),s}function Ve(e){var t,n;return e<100&&e>=0?((n=Array.prototype.slice.call(arguments))[0]=e+400,t=new Date(Date.UTC.apply(null,n)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function Ue(e,t,n){var a=7+t-n;return-((7+Ve(e,0,a).getUTCDay()-t)%7)+a-1}function He(e,t,n,a,i){var r,o,s=1+7*(t-1)+(7+n-a)%7+Ue(e,a,i);return s<=0?o=Te(r=e-1)+s:s>Te(e)?(r=e+1,o=s-Te(e)):(r=e,o=s),{year:r,dayOfYear:o}}function We(e,t,n){var a,i,r=Ue(e.year(),t,n),o=Math.floor((e.dayOfYear()-r-1)/7)+1;return o<1?a=o+Ge(i=e.year()-1,t,n):o>Ge(e.year(),t,n)?(a=o-Ge(e.year(),t,n),i=e.year()+1):(i=e.year(),a=o),{week:a,year:i}}function Ge(e,t,n){var a=Ue(e,t,n),i=Ue(e+1,t,n);return(Te(e)-a+i)/7}N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),se("w",Y,re),se("ww",Y,U),se("W",Y,re),se("WW",Y,U),fe(["w","ww","W","WW"],function(e,t,n,a){t[a.substr(0,1)]=de(e)});function Ye(e,t){return e.slice(t,7).concat(e.slice(0,t))}N("d",0,"do","day"),N("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),N("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),N("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),N("e",0,0,"weekday"),N("E",0,0,"isoWeekday"),se("d",Y),se("e",Y),se("E",Y),se("dd",function(e,t){return t.weekdaysMinRegex(e)}),se("ddd",function(e,t){return t.weekdaysShortRegex(e)}),se("dddd",function(e,t){return t.weekdaysRegex(e)}),fe(["dd","ddd","dddd"],function(e,t,n,a){var i=n._locale.weekdaysParse(e,a,n._strict);null!=i?t.d=i:p(n).invalidWeekday=e}),fe(["d","e","E"],function(e,t,n,a){t[a]=de(e)});var Ke="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Qe="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Ze="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Je=ie,Xe=ie,et=ie;function tt(e,t,n){var a,i,r,o=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],a=0;a<7;++a)r=h([2e3,1]).day(a),this._minWeekdaysParse[a]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[a]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[a]=this.weekdays(r,"").toLocaleLowerCase();return n?"dddd"===t?-1!==(i=Ee.call(this._weekdaysParse,o))?i:null:"ddd"===t?-1!==(i=Ee.call(this._shortWeekdaysParse,o))?i:null:-1!==(i=Ee.call(this._minWeekdaysParse,o))?i:null:"dddd"===t?-1!==(i=Ee.call(this._weekdaysParse,o))||-1!==(i=Ee.call(this._shortWeekdaysParse,o))||-1!==(i=Ee.call(this._minWeekdaysParse,o))?i:null:"ddd"===t?-1!==(i=Ee.call(this._shortWeekdaysParse,o))||-1!==(i=Ee.call(this._weekdaysParse,o))||-1!==(i=Ee.call(this._minWeekdaysParse,o))?i:null:-1!==(i=Ee.call(this._minWeekdaysParse,o))||-1!==(i=Ee.call(this._weekdaysParse,o))||-1!==(i=Ee.call(this._shortWeekdaysParse,o))?i:null}function nt(){function e(e,t){return t.length-e.length}var t,n,a,i,r,o=[],s=[],l=[],u=[];for(t=0;t<7;t++)n=h([2e3,1]).day(t),a=ue(this.weekdaysMin(n,"")),i=ue(this.weekdaysShort(n,"")),r=ue(this.weekdays(n,"")),o.push(a),s.push(i),l.push(r),u.push(a),u.push(i),u.push(r);o.sort(e),s.sort(e),l.sort(e),u.sort(e),this._weekdaysRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function at(){return this.hours()%12||12}function it(e,t){N(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function rt(e,t){return t._meridiemParse}N("H",["HH",2],0,"hour"),N("h",["hh",2],0,at),N("k",["kk",2],0,function(){return this.hours()||24}),N("hmm",0,0,function(){return""+at.apply(this)+A(this.minutes(),2)}),N("hmmss",0,0,function(){return""+at.apply(this)+A(this.minutes(),2)+A(this.seconds(),2)}),N("Hmm",0,0,function(){return""+this.hours()+A(this.minutes(),2)}),N("Hmmss",0,0,function(){return""+this.hours()+A(this.minutes(),2)+A(this.seconds(),2)}),it("a",!0),it("A",!1),se("a",rt),se("A",rt),se("H",Y,oe),se("h",Y,re),se("k",Y,re),se("HH",Y,U),se("hh",Y,U),se("kk",Y,U),se("hmm",K),se("hmmss",Q),se("Hmm",K),se("Hmmss",Q),pe(["H","HH"],ye),pe(["k","kk"],function(e,t,n){var a=de(e);t[ye]=24===a?0:a}),pe(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),pe(["h","hh"],function(e,t,n){t[ye]=de(e),p(n).bigHour=!0}),pe("hmm",function(e,t,n){var a=e.length-2;t[ye]=de(e.substr(0,a)),t[we]=de(e.substr(a)),p(n).bigHour=!0}),pe("hmmss",function(e,t,n){var a=e.length-4,i=e.length-2;t[ye]=de(e.substr(0,a)),t[we]=de(e.substr(a,2)),t[ke]=de(e.substr(i)),p(n).bigHour=!0}),pe("Hmm",function(e,t,n){var a=e.length-2;t[ye]=de(e.substr(0,a)),t[we]=de(e.substr(a))}),pe("Hmmss",function(e,t,n){var a=e.length-4,i=e.length-2;t[ye]=de(e.substr(0,a)),t[we]=de(e.substr(a,2)),t[ke]=de(e.substr(i))});var ot=Ae("Hours",!0);var st,lt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:ze,monthsShort:Ne,week:{dow:0,doy:6},weekdays:Ke,weekdaysMin:Ze,weekdaysShort:Qe,meridiemParse:/[ap]\.?m?\.?/i},ut={},ct={};function dt(e,t){var n,a=Math.min(e.length,t.length);for(n=0;n0;){if(a=pt(i.slice(0,t).join("-")))return a;if(n&&n.length>=t&&dt(i,n)>=t-1)break;t--}r++}return st}(e)}function _t(e){var t,n=e._a;return n&&-2===p(e).overflow&&(t=n[ve]<0||n[ve]>11?ve:n[be]<1||n[be]>Re(n[_e],n[ve])?be:n[ye]<0||n[ye]>24||24===n[ye]&&(0!==n[we]||0!==n[ke]||0!==n[xe])?ye:n[we]<0||n[we]>59?we:n[ke]<0||n[ke]>59?ke:n[xe]<0||n[xe]>999?xe:-1,p(e)._overflowDayOfYear&&(t<_e||t>be)&&(t=be),p(e)._overflowWeeks&&-1===t&&(t=Se),p(e)._overflowWeekday&&-1===t&&(t=Ce),p(e).overflow=t),e}var vt=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,bt=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,yt=/Z|[+-]\d\d(?::?\d\d)?/,wt=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],kt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],xt=/^\/?Date\((-?\d+)/i,St=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Ct={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Tt(e){var t,n,a,i,r,o,s=e._i,l=vt.exec(s)||bt.exec(s),u=wt.length,c=kt.length;if(l){for(p(e).iso=!0,t=0,n=u;t7)&&(l=!0)):(r=e._locale._week.dow,o=e._locale._week.doy,u=We(Nt(),r,o),n=At(t.gg,e._a[_e],u.year),a=At(t.w,u.week),null!=t.d?((i=t.d)<0||i>6)&&(l=!0):null!=t.e?(i=t.e+r,(t.e<0||t.e>6)&&(l=!0)):i=r);a<1||a>Ge(n,r,o)?p(e)._overflowWeeks=!0:null!=l?p(e)._overflowWeekday=!0:(s=He(n,a,i,r,o),e._a[_e]=s.year,e._dayOfYear=s.dayOfYear)}(e),null!=e._dayOfYear&&(o=At(e._a[_e],i[_e]),(e._dayOfYear>Te(o)||0===e._dayOfYear)&&(p(e)._overflowDayOfYear=!0),a=Ve(o,0,e._dayOfYear),e._a[ve]=a.getUTCMonth(),e._a[be]=a.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=s[t]=i[t];for(;t<7;t++)e._a[t]=s[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[ye]&&0===e._a[we]&&0===e._a[ke]&&0===e._a[xe]&&(e._nextDay=!0,e._a[ye]=0),e._d=(e._useUTC?Ve:$e).apply(null,s),r=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[ye]=24),e._w&&void 0!==e._w.d&&e._w.d!==r&&(p(e).weekdayMismatch=!0)}}function Lt(e){if(e._f!==n.ISO_8601)if(e._f!==n.RFC_2822){e._a=[],p(e).empty=!0;var t,a,i,r,o,s,l,u=""+e._i,c=u.length,d=0;for(l=(i=q(e._f,e._locale).match(M)||[]).length,t=0;t0&&p(e).unusedInput.push(o),u=u.slice(u.indexOf(a)+a.length),d+=a.length),z[r]?(a?p(e).empty=!1:p(e).unusedTokens.push(r),me(r,a,e)):e._strict&&!a&&p(e).unusedTokens.push(r);p(e).charsLeftOver=c-d,u.length>0&&p(e).unusedInput.push(u),e._a[ye]<=12&&!0===p(e).bigHour&&e._a[ye]>0&&(p(e).bigHour=void 0),p(e).parsedDateParts=e._a.slice(0),p(e).meridiem=e._meridiem,e._a[ye]=function(e,t,n){var a;if(null==n)return t;return null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?((a=e.isPM(n))&&t<12&&(t+=12),a||12!==t||(t=0),t):t}(e._locale,e._a[ye],e._meridiem),null!==(s=p(e).era)&&(e._a[_e]=e._locale.erasConvertYear(s,e._a[_e])),Mt(e),_t(e)}else Pt(e);else Tt(e)}function Rt(e){var t=e._i,r=e._f;return e._locale=e._locale||gt(e._l),null===t||void 0===r&&""===t?m({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),y(t)?new b(_t(t)):(u(t)?e._d=t:a(r)?function(e){var t,n,a,i,r,o,s=!1,l=e._f.length;if(0===l)return p(e).invalidFormat=!0,void(e._d=new Date(NaN));for(i=0;ithis?this:e:m()});function qt(e,t){var n,i;if(1===t.length&&a(t[0])&&(t=t[0]),!t.length)return Nt();for(n=t[0],i=1;i=0?new Date(e+400,t,n)-pn:new Date(e,t,n).valueOf()}function gn(e,t,n){return e<100&&e>=0?Date.UTC(e+400,t,n)-pn:Date.UTC(e,t,n)}function _n(e,t){return t.erasAbbrRegex(e)}function vn(){var e,t,n,a,i,r=[],o=[],s=[],l=[],u=this.eras();for(e=0,t=u.length;e(r=Ge(e,a,i))&&(t=r),wn.call(this,e,t,n,a,i))}function wn(e,t,n,a,i){var r=He(e,t,n,a,i),o=Ve(r.year,0,r.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}N("N",0,0,"eraAbbr"),N("NN",0,0,"eraAbbr"),N("NNN",0,0,"eraAbbr"),N("NNNN",0,0,"eraName"),N("NNNNN",0,0,"eraNarrow"),N("y",["y",1],"yo","eraYear"),N("y",["yy",2],0,"eraYear"),N("y",["yyy",3],0,"eraYear"),N("y",["yyyy",4],0,"eraYear"),se("N",_n),se("NN",_n),se("NNN",_n),se("NNNN",function(e,t){return t.erasNameRegex(e)}),se("NNNNN",function(e,t){return t.erasNarrowRegex(e)}),pe(["N","NN","NNN","NNNN","NNNNN"],function(e,t,n,a){var i=n._locale.erasParse(e,a,n._strict);i?p(n).era=i:p(n).invalidEra=e}),se("y",ee),se("yy",ee),se("yyy",ee),se("yyyy",ee),se("yo",function(e,t){return t._eraYearOrdinalRegex||ee}),pe(["y","yy","yyy","yyyy"],_e),pe(["yo"],function(e,t,n,a){var i;n._locale._eraYearOrdinalRegex&&(i=e.match(n._locale._eraYearOrdinalRegex)),n._locale.eraYearOrdinalParse?t[_e]=n._locale.eraYearOrdinalParse(e,i):t[_e]=parseInt(e,10)}),N(0,["gg",2],0,function(){return this.weekYear()%100}),N(0,["GG",2],0,function(){return this.isoWeekYear()%100}),bn("gggg","weekYear"),bn("ggggg","weekYear"),bn("GGGG","isoWeekYear"),bn("GGGGG","isoWeekYear"),se("G",te),se("g",te),se("GG",Y,U),se("gg",Y,U),se("GGGG",J,W),se("gggg",J,W),se("GGGGG",X,G),se("ggggg",X,G),fe(["gggg","ggggg","GGGG","GGGGG"],function(e,t,n,a){t[a.substr(0,2)]=de(e)}),fe(["gg","GG"],function(e,t,a,i){t[i]=n.parseTwoDigitYear(e)}),N("Q",0,"Qo","quarter"),se("Q",V),pe("Q",function(e,t){t[ve]=3*(de(e)-1)}),N("D",["DD",2],"Do","date"),se("D",Y,re),se("DD",Y,U),se("Do",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),pe(["D","DD"],be),pe("Do",function(e,t){t[be]=de(e.match(Y)[0])});var kn=Ae("Date",!0);N("DDD",["DDDD",3],"DDDo","dayOfYear"),se("DDD",Z),se("DDDD",H),pe(["DDD","DDDD"],function(e,t,n){n._dayOfYear=de(e)}),N("m",["mm",2],0,"minute"),se("m",Y,oe),se("mm",Y,U),pe(["m","mm"],we);var xn=Ae("Minutes",!1);N("s",["ss",2],0,"second"),se("s",Y,oe),se("ss",Y,U),pe(["s","ss"],ke);var Sn,Cn,Tn=Ae("Seconds",!1);for(N("S",0,0,function(){return~~(this.millisecond()/100)}),N(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),N(0,["SSS",3],0,"millisecond"),N(0,["SSSS",4],0,function(){return 10*this.millisecond()}),N(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),N(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),N(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),N(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),N(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),se("S",Z,V),se("SS",Z,U),se("SSS",Z,H),Sn="SSSS";Sn.length<=9;Sn+="S")se(Sn,ee);function En(e,t){t[xe]=de(1e3*("0."+e))}for(Sn="S";Sn.length<=9;Sn+="S")pe(Sn,En);Cn=Ae("Milliseconds",!1),N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var Pn=b.prototype;function An(e){return e}Pn.add=tn,Pn.calendar=function(e,t){1===arguments.length&&(arguments[0]?rn(arguments[0])?(e=arguments[0],t=void 0):function(e){var t,n=i(e)&&!o(e),a=!1,s=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"];for(t=0;tn.valueOf():n.valueOf()9999?I(n,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):T(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",I(n,"Z")):I(n,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},Pn.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e,t,n,a="moment",i="";return this.isLocal()||(a=0===this.utcOffset()?"moment.utc":"moment.parseZone",i="Z"),e="["+a+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",n=i+'[")]',this.format(e+t+"-MM-DD[T]HH:mm:ss.SSS"+n)},"undefined"!=typeof Symbol&&null!=Symbol.for&&(Pn[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),Pn.toJSON=function(){return this.isValid()?this.toISOString():null},Pn.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},Pn.unix=function(){return Math.floor(this.valueOf()/1e3)},Pn.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},Pn.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},Pn.eraName=function(){var e,t,n,a=this.localeData().eras();for(e=0,t=a.length;ethis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},Pn.isLocal=function(){return!!this.isValid()&&!this._isUTC},Pn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},Pn.isUtc=Gt,Pn.isUTC=Gt,Pn.zoneAbbr=function(){return this._isUTC?"UTC":""},Pn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},Pn.dates=k("dates accessor is deprecated. Use date instead.",kn),Pn.months=k("months accessor is deprecated. Use month instead",Be),Pn.years=k("years accessor is deprecated. Use year instead",Pe),Pn.zone=k("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}),Pn.isDSTShifted=k("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!s(this._isDSTShifted))return this._isDSTShifted;var e,t={};return v(t,this),(t=Rt(t))._a?(e=t._isUTC?h(t._a):Nt(t._a),this._isDSTShifted=this.isValid()&&function(e,t,n){var a,i=Math.min(e.length,t.length),r=Math.abs(e.length-t.length),o=0;for(a=0;a0):this._isDSTShifted=!1,this._isDSTShifted});var Mn=P.prototype;function Ln(e,t,n,a){var i=gt(),r=h().set(a,t);return i[n](r,e)}function Rn(e,t,n){if(l(e)&&(t=e,e=void 0),e=e||"",null!=t)return Ln(e,t,n,"month");var a,i=[];for(a=0;a<12;a++)i[a]=Ln(e,a,n,"month");return i}function zn(e,t,n,a){"boolean"==typeof e?(l(t)&&(n=t,t=void 0),t=t||""):(n=t=e,e=!1,l(t)&&(n=t,t=void 0),t=t||"");var i,r=gt(),o=e?r._week.dow:0,s=[];if(null!=n)return Ln(t,(n+o)%7,a,"day");for(i=0;i<7;i++)s[i]=Ln(t,(i+o)%7,a,"day");return s}Mn.calendar=function(e,t,n){var a=this._calendar[e]||this._calendar.sameElse;return T(a)?a.call(t,n):a},Mn.longDateFormat=function(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.match(M).map(function(e){return"MMMM"===e||"MM"===e||"DD"===e||"dddd"===e?e.slice(1):e}).join(""),this._longDateFormat[e])},Mn.invalidDate=function(){return this._invalidDate},Mn.ordinal=function(e){return this._ordinal.replace("%d",e)},Mn.preparse=An,Mn.postformat=An,Mn.relativeTime=function(e,t,n,a){var i=this._relativeTime[n];return T(i)?i(e,t,n,a):i.replace(/%d/i,e)},Mn.pastFuture=function(e,t){var n=this._relativeTime[e>0?"future":"past"];return T(n)?n(t):n.replace(/%s/i,t)},Mn.set=function(e){var t,n;for(n in e)r(e,n)&&(T(t=e[n])?this[n]=t:this["_"+n]=t);this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},Mn.eras=function(e,t){var a,i,r,o=this._eras||gt("en")._eras;for(a=0,i=o.length;a=0)return l[a]},Mn.erasConvertYear=function(e,t){var a=e.since<=e.until?1:-1;return void 0===t?n(e.since).year():n(e.since).year()+(t-e.offset)*a},Mn.erasAbbrRegex=function(e){return r(this,"_erasAbbrRegex")||vn.call(this),e?this._erasAbbrRegex:this._erasRegex},Mn.erasNameRegex=function(e){return r(this,"_erasNameRegex")||vn.call(this),e?this._erasNameRegex:this._erasRegex},Mn.erasNarrowRegex=function(e){return r(this,"_erasNarrowRegex")||vn.call(this),e?this._erasNarrowRegex:this._erasRegex},Mn.months=function(e,t){return e?a(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||Oe).test(t)?"format":"standalone"][e.month()]:a(this._months)?this._months:this._months.standalone},Mn.monthsShort=function(e,t){return e?a(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[Oe.test(t)?"format":"standalone"][e.month()]:a(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},Mn.monthsParse=function(e,t,n){var a,i,r;if(this._monthsParseExact)return De.call(this,e,t,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),a=0;a<12;a++){if(i=h([2e3,a]),n&&!this._longMonthsParse[a]&&(this._longMonthsParse[a]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[a]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),n||this._monthsParse[a]||(r="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[a]=new RegExp(r.replace(".",""),"i")),n&&"MMMM"===t&&this._longMonthsParse[a].test(e))return a;if(n&&"MMM"===t&&this._shortMonthsParse[a].test(e))return a;if(!n&&this._monthsParse[a].test(e))return a}},Mn.monthsRegex=function(e){return this._monthsParseExact?(r(this,"_monthsRegex")||Fe.call(this),e?this._monthsStrictRegex:this._monthsRegex):(r(this,"_monthsRegex")||(this._monthsRegex=qe),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)},Mn.monthsShortRegex=function(e){return this._monthsParseExact?(r(this,"_monthsRegex")||Fe.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(r(this,"_monthsShortRegex")||(this._monthsShortRegex=Ie),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)},Mn.week=function(e){return We(e,this._week.dow,this._week.doy).week},Mn.firstDayOfYear=function(){return this._week.doy},Mn.firstDayOfWeek=function(){return this._week.dow},Mn.weekdays=function(e,t){var n=a(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(t)?"format":"standalone"];return!0===e?Ye(n,this._week.dow):e?n[e.day()]:n},Mn.weekdaysMin=function(e){return!0===e?Ye(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin},Mn.weekdaysShort=function(e){return!0===e?Ye(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort},Mn.weekdaysParse=function(e,t,n){var a,i,r;if(this._weekdaysParseExact)return tt.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),a=0;a<7;a++){if(i=h([2e3,1]).day(a),n&&!this._fullWeekdaysParse[a]&&(this._fullWeekdaysParse[a]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[a]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[a]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[a]||(r="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[a]=new RegExp(r.replace(".",""),"i")),n&&"dddd"===t&&this._fullWeekdaysParse[a].test(e))return a;if(n&&"ddd"===t&&this._shortWeekdaysParse[a].test(e))return a;if(n&&"dd"===t&&this._minWeekdaysParse[a].test(e))return a;if(!n&&this._weekdaysParse[a].test(e))return a}},Mn.weekdaysRegex=function(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||nt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(r(this,"_weekdaysRegex")||(this._weekdaysRegex=Je),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)},Mn.weekdaysShortRegex=function(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||nt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(r(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Xe),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},Mn.weekdaysMinRegex=function(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||nt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(r(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=et),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},Mn.isPM=function(e){return"p"===(e+"").toLowerCase().charAt(0)},Mn.meridiem=function(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"},ft("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===de(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),n.lang=k("moment.lang is deprecated. Use moment.locale instead.",ft),n.langData=k("moment.langData is deprecated. Use moment.localeData instead.",gt);var Nn=Math.abs;function On(e,t,n,a){var i=Qt(t,n);return e._milliseconds+=a*i._milliseconds,e._days+=a*i._days,e._months+=a*i._months,e._bubble()}function In(e){return e<0?Math.floor(e):Math.ceil(e)}function qn(e){return 4800*e/146097}function Dn(e){return 146097*e/4800}function jn(e){return function(){return this.as(e)}}var Bn=jn("ms"),Fn=jn("s"),$n=jn("m"),Vn=jn("h"),Un=jn("d"),Hn=jn("w"),Wn=jn("M"),Gn=jn("Q"),Yn=jn("y"),Kn=Bn;function Qn(e){return function(){return this.isValid()?this._data[e]:NaN}}var Zn=Qn("milliseconds"),Jn=Qn("seconds"),Xn=Qn("minutes"),ea=Qn("hours"),ta=Qn("days"),na=Qn("months"),aa=Qn("years");var ia=Math.round,ra={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function oa(e,t,n,a,i){return i.relativeTime(t||1,!!n,e,a)}var sa=Math.abs;function la(e){return(e>0)-(e<0)||+e}function ua(){if(!this.isValid())return this.localeData().invalidDate();var e,t,n,a,i,r,o,s,l=sa(this._milliseconds)/1e3,u=sa(this._days),c=sa(this._months),d=this.asSeconds();return d?(e=ce(l/60),t=ce(e/60),l%=60,e%=60,n=ce(c/12),c%=12,a=l?l.toFixed(3).replace(/\.?0+$/,""):"",i=d<0?"-":"",r=la(this._months)!==la(d)?"-":"",o=la(this._days)!==la(d)?"-":"",s=la(this._milliseconds)!==la(d)?"-":"",i+"P"+(n?r+n+"Y":"")+(c?r+c+"M":"")+(u?o+u+"D":"")+(t||e||l?"T":"")+(t?s+t+"H":"")+(e?s+e+"M":"")+(l?s+a+"S":"")):"P0D"}var ca=jt.prototype;return ca.isValid=function(){return this._isValid},ca.abs=function(){var e=this._data;return this._milliseconds=Nn(this._milliseconds),this._days=Nn(this._days),this._months=Nn(this._months),e.milliseconds=Nn(e.milliseconds),e.seconds=Nn(e.seconds),e.minutes=Nn(e.minutes),e.hours=Nn(e.hours),e.months=Nn(e.months),e.years=Nn(e.years),this},ca.add=function(e,t){return On(this,e,t,1)},ca.subtract=function(e,t){return On(this,e,t,-1)},ca.as=function(e){if(!this.isValid())return NaN;var t,n,a=this._milliseconds;if("month"===(e=j(e))||"quarter"===e||"year"===e)switch(t=this._days+a/864e5,n=this._months+qn(t),e){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(t=this._days+Math.round(Dn(this._months)),e){case"week":return t/7+a/6048e5;case"day":return t+a/864e5;case"hour":return 24*t+a/36e5;case"minute":return 1440*t+a/6e4;case"second":return 86400*t+a/1e3;case"millisecond":return Math.floor(864e5*t)+a;default:throw new Error("Unknown unit "+e)}},ca.asMilliseconds=Bn,ca.asSeconds=Fn,ca.asMinutes=$n,ca.asHours=Vn,ca.asDays=Un,ca.asWeeks=Hn,ca.asMonths=Wn,ca.asQuarters=Gn,ca.asYears=Yn,ca.valueOf=Kn,ca._bubble=function(){var e,t,n,a,i,r=this._milliseconds,o=this._days,s=this._months,l=this._data;return r>=0&&o>=0&&s>=0||r<=0&&o<=0&&s<=0||(r+=864e5*In(Dn(s)+o),o=0,s=0),l.milliseconds=r%1e3,e=ce(r/1e3),l.seconds=e%60,t=ce(e/60),l.minutes=t%60,n=ce(t/60),l.hours=n%24,o+=ce(n/24),s+=i=ce(qn(o)),o-=In(Dn(i)),a=ce(s/12),s%=12,l.days=o,l.months=s,l.years=a,this},ca.clone=function(){return Qt(this)},ca.get=function(e){return e=j(e),this.isValid()?this[e+"s"]():NaN},ca.milliseconds=Zn,ca.seconds=Jn,ca.minutes=Xn,ca.hours=ea,ca.days=ta,ca.weeks=function(){return ce(this.days()/7)},ca.months=na,ca.years=aa,ca.humanize=function(e,t){if(!this.isValid())return this.localeData().invalidDate();var n,a,i=!1,r=ra;return"object"==typeof e&&(t=e,e=!1),"boolean"==typeof e&&(i=e),"object"==typeof t&&(r=Object.assign({},ra,t),null!=t.s&&null==t.ss&&(r.ss=t.s-1)),a=function(e,t,n,a){var i=Qt(e).abs(),r=ia(i.as("s")),o=ia(i.as("m")),s=ia(i.as("h")),l=ia(i.as("d")),u=ia(i.as("M")),c=ia(i.as("w")),d=ia(i.as("y")),h=r<=n.ss&&["s",r]||r0,h[4]=a,oa.apply(null,h)}(this,!i,r,n=this.localeData()),i&&(a=n.pastFuture(+this,a)),n.postformat(a)},ca.toISOString=ua,ca.toString=ua,ca.toJSON=ua,ca.locale=sn,ca.localeData=un,ca.toIsoString=k("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",ua),ca.lang=ln,N("X",0,0,"unix"),N("x",0,0,"valueOf"),se("x",te),se("X",/[+-]?\d+(\.\d{1,3})?/),pe("X",function(e,t,n){n._d=new Date(1e3*parseFloat(e))}),pe("x",function(e,t,n){n._d=new Date(de(e))}), //! moment.js -n.version="2.30.1",e=zt,n.fn=En,n.min=function(){return Ot("isBefore",[].slice.call(arguments,0))},n.max=function(){return Ot("isAfter",[].slice.call(arguments,0))},n.now=function(){return Date.now?Date.now():+new Date},n.utc=h,n.unix=function(e){return zt(1e3*e)},n.months=function(e,t){return Mn(e,t,"months")},n.isDate=u,n.locale=pt,n.invalid=m,n.duration=Kt,n.isMoment=y,n.weekdays=function(e,t,n){return Rn(e,t,n,"weekdays")},n.parseZone=function(){return zt.apply(null,arguments).parseZone()},n.localeData=mt,n.isDuration=jt,n.monthsShort=function(e,t){return Mn(e,t,"monthsShort")},n.weekdaysMin=function(e,t,n){return Rn(e,t,n,"weekdaysMin")},n.defineLocale=ft,n.updateLocale=function(e,t){if(null!=t){var n,a,i=st;null!=lt[e]&&null!=lt[e].parentLocale?lt[e].set(E(lt[e]._config,t)):(null!=(a=ht(e))&&(i=a._config),t=E(i,t),null==a&&(t.abbr=e),(n=new P(t)).parentLocale=lt[e],lt[e]=n),pt(e)}else null!=lt[e]&&(null!=lt[e].parentLocale?(lt[e]=lt[e].parentLocale,e===pt()&&pt(e)):null!=lt[e]&&delete lt[e]);return lt[e]},n.locales=function(){return x(lt)},n.weekdaysShort=function(e,t,n){return Rn(e,t,n,"weekdaysShort")},n.normalizeUnits=q,n.relativeTimeRounding=function(e){return void 0===e?aa:"function"==typeof e&&(aa=e,!0)},n.relativeTimeThreshold=function(e,t){return void 0!==ia[e]&&(void 0===t?ia[e]:(ia[e]=t,"s"===e&&(ia.ss=t-1),!0))},n.calendarFormat=function(e,t){var n=e.diff(t,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"},n.prototype=En,n.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},n})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define("underscore",t):(e="undefined"!=typeof globalThis?globalThis:e||self,function(){var n=e._,a=e._=t();a.noConflict=function(){return e._=n,a}}())}(this,(function(){var e="1.13.7",t="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},n=Array.prototype,a=Object.prototype,i="undefined"!=typeof Symbol?Symbol.prototype:null,r=n.push,o=n.slice,s=a.toString,l=a.hasOwnProperty,u="undefined"!=typeof ArrayBuffer,c="undefined"!=typeof DataView,d=Array.isArray,h=Object.keys,p=Object.create,f=u&&ArrayBuffer.isView,m=isNaN,g=isFinite,_=!{toString:null}.propertyIsEnumerable("toString"),v=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],b=Math.pow(2,53)-1;function y(e,t){return t=null==t?e.length-1:+t,function(){for(var n=Math.max(arguments.length-t,0),a=Array(n),i=0;i=0&&n<=b}}function G(e){return function(t){return null==t?void 0:t[e]}}var Y=G("byteLength"),K=W(Y),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var Z=u?function(e){return f?f(e)&&!j(e):K(e)&&Q.test(s.call(e))}:H(!1),J=G("length");function X(e,t){t=function(e){for(var t={},n=e.length,a=0;a":">",'"':""","'":"'","`":"`"},Ve=Fe($e),Ue=Fe(ye($e)),He=ne.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},We=/(.)^/,Ge={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Ye=/\\|'|\r|\n|\u2028|\u2029/g;function Ke(e){return"\\"+Ge[e]}var Qe=/^\s*(\w|\$)+\s*$/;var Ze=0;function Je(e,t,n,a,i){if(!(a instanceof t))return e.apply(n,i);var r=Te(e.prototype),o=e.apply(r,i);return w(o)?o:r}var Xe=y((function(e,t){var n=Xe.placeholder,a=function(){for(var i=0,r=t.length,o=Array(r),s=0;s1)nt(s,t-1,n,a),i=a.length;else for(var l=0,u=s.length;l0&&(n=t.apply(this,arguments)),e<=1&&(t=null),n}}var lt=Xe(st,2);function ut(e,t,n){t=De(t,n);for(var a,i=ee(e),r=0,o=i.length;r0?0:i-1;r>=0&&r0?s=r>=0?r:Math.max(r+l,s):l=r>=0?Math.min(r+1,l):r+l+1;else if(n&&r&&l)return a[r=n(a,i)]===i?r:-1;if(i!=i)return(r=t(o.call(a,s,l),U))>=0?r+s:-1;for(r=e>0?s:l-1;r>=0&&r=3;return function(t,n,a,i){var r=!tt(t)&&ee(t),o=(r||t).length,s=e>0?0:o-1;for(i||(a=t[r?r[s]:s],s+=e);s>=0&&s=0}var Et=y((function(e,t,n){var a,i;return N(t)?i=t:(t=Pe(t),a=t.slice(0,-1),t=t[t.length-1]),bt(e,(function(e){var r=i;if(!r){if(a&&a.length&&(e=Ae(e,a)),null==e)return;r=e[t]}return null==r?r:r.apply(e,n)}))}));function Pt(e,t){return bt(e,ze(t))}function At(e,t,n){var a,i,r=-1/0,o=-1/0;if(null==t||"number"==typeof t&&"object"!=typeof e[0]&&null!=e)for(var s=0,l=(e=tt(e)?e:be(e)).length;sr&&(r=a);else t=De(t,n),vt(e,(function(e,n,a){((i=t(e,n,a))>o||i===-1/0&&r===-1/0)&&(r=e,o=i)}));return r}var Lt=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function Mt(e){return e?B(e)?o.call(e):C(e)?e.match(Lt):tt(e)?bt(e,Me):be(e):[]}function Rt(e,t,n){if(null==t||n)return tt(e)||(e=be(e)),e[je(e.length-1)];var a=Mt(e),i=J(a);t=Math.max(Math.min(t,i),0);for(var r=i-1,o=0;o1&&(a=Ne(a,t[1])),t=se(e)):(a=qt,t=nt(t,!1,!1),e=Object(e));for(var i=0,r=t.length;i1&&(n=t[1])):(t=bt(nt(t,!1,!1),String),a=function(e,n){return!Tt(t,n)}),jt(e,a,n)}));function Ft(e,t,n){return o.call(e,0,Math.max(0,e.length-(null==t||n?1:t)))}function $t(e,t,n){return null==e||e.length<1?null==t||n?void 0:[]:null==t||n?e[0]:Ft(e,e.length-t)}function Vt(e,t,n){return o.call(e,null==t||n?1:t)}var Ut=y((function(e,t){return t=nt(t,!0,!0),xt(e,(function(e){return!Tt(t,e)}))})),Ht=y((function(e,t){return Ut(e,t)}));function Wt(e,t,n,a){x(t)||(a=n,n=t,t=!1),null!=n&&(n=De(n,a));for(var i=[],r=[],o=0,s=J(e);ot?(a&&(clearTimeout(a),a=null),s=u,o=e.apply(i,r),a||(i=r=null)):a||!1===n.trailing||(a=setTimeout(l,c)),o};return u.cancel=function(){clearTimeout(a),s=0,a=i=r=null},u},debounce:function(e,t,n){var a,i,r,o,s,l=function(){var u=Be()-i;t>u?a=setTimeout(l,t-u):(a=null,n||(o=e.apply(s,r)),a||(r=s=null))},u=y((function(u){return s=this,r=u,i=Be(),a||(a=setTimeout(l,t),n&&(o=e.apply(s,r))),o}));return u.cancel=function(){clearTimeout(a),a=r=s=null},u},wrap:function(e,t){return Xe(t,e)},negate:ot,compose:function(){var e=arguments,t=e.length-1;return function(){for(var n=t,a=e[t].apply(this,arguments);n--;)a=e[n].call(this,a);return a}},after:function(e,t){return function(){if(--e<1)return t.apply(this,arguments)}},before:st,once:lt,findKey:ut,findIndex:dt,findLastIndex:ht,sortedIndex:pt,indexOf:mt,lastIndexOf:gt,find:_t,detect:_t,findWhere:function(e,t){return _t(e,Re(t))},each:vt,forEach:vt,map:bt,collect:bt,reduce:wt,foldl:wt,inject:wt,reduceRight:kt,foldr:kt,filter:xt,select:xt,reject:function(e,t,n){return xt(e,ot(De(t)),n)},every:St,all:St,some:Ct,any:Ct,contains:Tt,includes:Tt,include:Tt,invoke:Et,pluck:Pt,where:function(e,t){return xt(e,Re(t))},max:At,min:function(e,t,n){var a,i,r=1/0,o=1/0;if(null==t||"number"==typeof t&&"object"!=typeof e[0]&&null!=e)for(var s=0,l=(e=tt(e)?e:be(e)).length;sa||void 0===n)return 1;if(n=0;--r){var o=this.tryEntries[r],s=o.completion;if("root"===o.tryLoc)return i("end");if(o.tryLoc<=this.prev){var l=a.call(o,"catchLoc"),u=a.call(o,"finallyLoc");if(l&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&a.call(i,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),L(n),_}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var a=n.completion;if("throw"===a.type){var i=a.arg;L(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,a){return this.delegate={iterator:R(t),resultName:n,nextLoc:a},"next"===this.method&&(this.arg=e),_}},t}function u(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function d(t){return function(){return new e(t.apply(this,arguments))}}function h(e,t,n,a,i,r,o){try{var s=e[r](o),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(a,i)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(a,i){var r=e.apply(t,n);function o(e){h(r,a,i,o,s,"next",e)}function s(e){h(r,a,i,o,s,"throw",e)}o(void 0)}))}}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function m(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,a=new Array(t);n2&&void 0!==arguments[2]?arguments[2]:{}).allOwnKeys,r=void 0!==i&&i;if(null!=e)if("object"!==c(e)&&(e=[e]),M(e))for(n=0,a=e.length;n0;)if(t===(n=a[i]).toLowerCase())return n;return null}var J="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,X=function(e){return!R(e)&&e!==J};var ee,te=(ee="undefined"!=typeof Uint8Array&&C(Uint8Array),function(e){return ee&&e instanceof ee}),ne=A("HTMLFormElement"),ae=function(){var e=Object.prototype.hasOwnProperty;return function(t,n){return e.call(t,n)}}(),ie=A("RegExp"),re=function(e,t){var n=Object.getOwnPropertyDescriptors(e),a={};Q(n,(function(n,i){var r;!1!==(r=t(n,i,e))&&(a[i]=r||n)})),Object.defineProperties(e,a)};var oe,se,le,ue,ce=A("AsyncFunction"),de=(oe="function"==typeof setImmediate,se=O(J.postMessage),oe?setImmediate:se?(le="axios@".concat(Math.random()),ue=[],J.addEventListener("message",(function(e){var t=e.source,n=e.data;t===J&&n===le&&ue.length&&ue.shift()()}),!1),function(e){ue.push(e),J.postMessage(le,"*")}):function(e){return setTimeout(e)}),he="undefined"!=typeof queueMicrotask?queueMicrotask.bind(J):"undefined"!=typeof process&&process.nextTick||de,pe={isArray:M,isArrayBuffer:N,isBuffer:z,isFormData:function(e){var t;return e&&("function"==typeof FormData&&e instanceof FormData||O(e.append)&&("formdata"===(t=P(e))||"object"===t&&O(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&N(e.buffer)},isString:I,isNumber:D,isBoolean:function(e){return!0===e||!1===e},isObject:q,isPlainObject:j,isEmptyObject:function(e){if(!q(e)||z(e))return!1;try{return 0===Object.keys(e).length&&Object.getPrototypeOf(e)===Object.prototype}catch(e){return!1}},isReadableStream:W,isRequest:G,isResponse:Y,isHeaders:K,isUndefined:R,isDate:B,isFile:F,isBlob:$,isRegExp:ie,isFunction:O,isStream:function(e){return q(e)&&O(e.pipe)},isURLSearchParams:U,isTypedArray:te,isFileList:V,forEach:Q,merge:function e(){for(var t=X(this)&&this||{},n=t.caseless,a=t.skipUndefined,i={},r=function(t,r){var o=n&&Z(i,r)||r;j(i[o])&&j(t)?i[o]=e(i[o],t):j(t)?i[o]=e({},t):M(t)?i[o]=t.slice():a&&R(t)||(i[o]=t)},o=0,s=arguments.length;o3&&void 0!==arguments[3]?arguments[3]:{}).allOwnKeys}),e},trim:function(e){return e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e},inherits:function(e,t,n,a){e.prototype=Object.create(t.prototype,a),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:function(e,t,n,a){var i,r,o,s={};if(t=t||{},null==e)return t;do{for(r=(i=Object.getOwnPropertyNames(e)).length;r-- >0;)o=i[r],a&&!a(o,e,t)||s[o]||(t[o]=e[o],s[o]=!0);e=!1!==n&&C(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:P,kindOfTest:A,endsWith:function(e,t,n){e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;var a=e.indexOf(t,n);return-1!==a&&a===n},toArray:function(e){if(!e)return null;if(M(e))return e;var t=e.length;if(!D(t))return null;for(var n=new Array(t);t-- >0;)n[t]=e[t];return n},forEachEntry:function(e,t){for(var n,a=(e&&e[T]).call(e);(n=a.next())&&!n.done;){var i=n.value;t.call(e,i[0],i[1])}},matchAll:function(e,t){for(var n,a=[];null!==(n=e.exec(t));)a.push(n);return a},isHTMLForm:ne,hasOwnProperty:ae,hasOwnProp:ae,reduceDescriptors:re,freezeMethods:function(e){re(e,(function(t,n){if(O(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;var a=e[n];O(a)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=function(){throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:function(e,t){var n={},a=function(e){e.forEach((function(e){n[e]=!0}))};return M(e)?a(e):a(String(e).split(t)),n},toCamelCase:function(e){return e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n}))},noop:function(){},toFiniteNumber:function(e,t){return null!=e&&Number.isFinite(e=+e)?e:t},findKey:Z,global:J,isContextDefined:X,isSpecCompliantForm:function(e){return!!(e&&O(e.append)&&"FormData"===e[E]&&e[T])},toJSONObject:function(e){var t=new Array(10);return function e(n,a){if(q(n)){if(t.indexOf(n)>=0)return;if(z(n))return n;if(!("toJSON"in n)){t[a]=n;var i=M(n)?[]:{};return Q(n,(function(t,n){var r=e(t,a+1);!R(r)&&(i[n]=r)})),t[a]=void 0,i}}return n}(e,0)},isAsyncFn:ce,isThenable:function(e){return e&&(q(e)||O(e))&&O(e.then)&&O(e.catch)},setImmediate:de,asap:he,isIterable:function(e){return null!=e&&O(e[T])}};function fe(e,t,n,a,i){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),a&&(this.request=a),i&&(this.response=i,this.status=i.status?i.status:null)}pe.inherits(fe,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:pe.toJSONObject(this.config),code:this.code,status:this.status}}});var me=fe.prototype,ge={};["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((function(e){ge[e]={value:e}})),Object.defineProperties(fe,ge),Object.defineProperty(me,"isAxiosError",{value:!0}),fe.from=function(e,t,n,a,i,r){var o=Object.create(me);pe.toFlatObject(e,o,(function(e){return e!==Error.prototype}),(function(e){return"isAxiosError"!==e}));var s=e&&e.message?e.message:"Error",l=null==t&&e?e.code:t;return fe.call(o,s,l,n,a,i),e&&null==o.cause&&Object.defineProperty(o,"cause",{value:e,configurable:!0}),o.name=e&&e.name||"Error",r&&Object.assign(o,r),o};function _e(e){return pe.isPlainObject(e)||pe.isArray(e)}function ve(e){return pe.endsWith(e,"[]")?e.slice(0,-2):e}function be(e,t,n){return e?e.concat(t).map((function(e,t){return e=ve(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}var ye=pe.toFlatObject(pe,{},null,(function(e){return/^is[A-Z]/.test(e)}));function we(e,t,n){if(!pe.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;var a=(n=pe.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!pe.isUndefined(t[e])}))).metaTokens,i=n.visitor||u,r=n.dots,o=n.indexes,s=(n.Blob||"undefined"!=typeof Blob&&Blob)&&pe.isSpecCompliantForm(t);if(!pe.isFunction(i))throw new TypeError("visitor must be a function");function l(e){if(null===e)return"";if(pe.isDate(e))return e.toISOString();if(pe.isBoolean(e))return e.toString();if(!s&&pe.isBlob(e))throw new fe("Blob is not supported. Use a Buffer instead.");return pe.isArrayBuffer(e)||pe.isTypedArray(e)?s&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,i){var s=e;if(e&&!i&&"object"===c(e))if(pe.endsWith(n,"{}"))n=a?n:n.slice(0,-2),e=JSON.stringify(e);else if(pe.isArray(e)&&function(e){return pe.isArray(e)&&!e.some(_e)}(e)||(pe.isFileList(e)||pe.endsWith(n,"[]"))&&(s=pe.toArray(e)))return n=ve(n),s.forEach((function(e,a){!pe.isUndefined(e)&&null!==e&&t.append(!0===o?be([n],a,r):null===o?n:n+"[]",l(e))})),!1;return!!_e(e)||(t.append(be(i,n,r),l(e)),!1)}var d=[],h=Object.assign(ye,{defaultVisitor:u,convertValue:l,isVisitable:_e});if(!pe.isObject(e))throw new TypeError("data must be an object");return function e(n,a){if(!pe.isUndefined(n)){if(-1!==d.indexOf(n))throw Error("Circular reference detected in "+a.join("."));d.push(n),pe.forEach(n,(function(n,r){!0===(!(pe.isUndefined(n)||null===n)&&i.call(t,n,pe.isString(r)?r.trim():r,a,h))&&e(n,a?a.concat(r):[r])})),d.pop()}}(e),t}function ke(e){var t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function xe(e,t){this._pairs=[],e&&we(e,this,t)}var Se=xe.prototype;function Ce(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Te(e,t,n){if(!t)return e;var a=n&&n.encode||Ce;pe.isFunction(n)&&(n={serialize:n});var i,r=n&&n.serialize;if(i=r?r(t,n):pe.isURLSearchParams(t)?t.toString():new xe(t,n).toString(a)){var o=e.indexOf("#");-1!==o&&(e=e.slice(0,o)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}Se.append=function(e,t){this._pairs.push([e,t])},Se.toString=function(e){var t=e?function(t){return e.call(this,t,ke)}:ke;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};var Ee=function(){function e(){f(this,e),this.handlers=[]}return g(e,[{key:"use",value:function(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}},{key:"eject",value:function(e){this.handlers[e]&&(this.handlers[e]=null)}},{key:"clear",value:function(){this.handlers&&(this.handlers=[])}},{key:"forEach",value:function(e){pe.forEach(this.handlers,(function(t){null!==t&&e(t)}))}}]),e}(),Pe={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Ae={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:xe,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},Le="undefined"!=typeof window&&"undefined"!=typeof document,Me="object"===("undefined"==typeof navigator?"undefined":c(navigator))&&navigator||void 0,Re=Le&&(!Me||["ReactNative","NativeScript","NS"].indexOf(Me.product)<0),ze="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,Ne=Le&&window.location.href||"http://localhost",Ie=s(s({},Object.freeze({__proto__:null,hasBrowserEnv:Le,hasStandardBrowserWebWorkerEnv:ze,hasStandardBrowserEnv:Re,navigator:Me,origin:Ne})),Ae);function Oe(e){function t(e,n,a,i){var r=e[i++];if("__proto__"===r)return!0;var o=Number.isFinite(+r),s=i>=e.length;return r=!r&&pe.isArray(a)?a.length:r,s?(pe.hasOwnProp(a,r)?a[r]=[a[r],n]:a[r]=n,!o):(a[r]&&pe.isObject(a[r])||(a[r]=[]),t(e,n,a[r],i)&&pe.isArray(a[r])&&(a[r]=function(e){var t,n,a={},i=Object.keys(e),r=i.length;for(t=0;t-1,r=pe.isObject(e);if(r&&pe.isHTMLForm(e)&&(e=new FormData(e)),pe.isFormData(e))return i?JSON.stringify(Oe(e)):e;if(pe.isArrayBuffer(e)||pe.isBuffer(e)||pe.isStream(e)||pe.isFile(e)||pe.isBlob(e)||pe.isReadableStream(e))return e;if(pe.isArrayBufferView(e))return e.buffer;if(pe.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();if(r){if(a.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return we(e,new Ie.classes.URLSearchParams,s({visitor:function(e,t,n,a){return Ie.isNode&&pe.isBuffer(e)?(this.append(t,e.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((n=pe.isFileList(e))||a.indexOf("multipart/form-data")>-1){var o=this.env&&this.env.FormData;return we(n?{"files[]":e}:e,o&&new o,this.formSerializer)}}return r||i?(t.setContentType("application/json",!1),function(e,t,n){if(pe.isString(e))try{return(t||JSON.parse)(e),pe.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||De.transitional,n=t&&t.forcedJSONParsing,a="json"===this.responseType;if(pe.isResponse(e)||pe.isReadableStream(e))return e;if(e&&pe.isString(e)&&(n&&!this.responseType||a)){var i=!(t&&t.silentJSONParsing)&&a;try{return JSON.parse(e,this.parseReviver)}catch(e){if(i){if("SyntaxError"===e.name)throw fe.from(e,fe.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Ie.classes.FormData,Blob:Ie.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};pe.forEach(["delete","get","head","post","put","patch"],(function(e){De.headers[e]={}}));var qe=De,je=pe.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"]),Be=Symbol("internals");function Fe(e){return e&&String(e).trim().toLowerCase()}function $e(e){return!1===e||null==e?e:pe.isArray(e)?e.map($e):String(e)}function Ve(e,t,n,a,i){return pe.isFunction(a)?a.call(this,t,n):(i&&(t=n),pe.isString(t)?pe.isString(a)?-1!==t.indexOf(a):pe.isRegExp(a)?a.test(t):void 0:void 0)}var Ue=function(){function e(t){f(this,e),t&&this.set(t)}return g(e,[{key:"set",value:function(e,t,n){var a=this;function i(e,t,n){var i=Fe(t);if(!i)throw new Error("header name must be a non-empty string");var r=pe.findKey(a,i);(!r||void 0===a[r]||!0===n||void 0===n&&!1!==a[r])&&(a[r||t]=$e(e))}var r=function(e,t){return pe.forEach(e,(function(e,n){return i(e,n,t)}))};if(pe.isPlainObject(e)||e instanceof this.constructor)r(e,t);else if(pe.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))r(function(e){var t,n,a,i={};return e&&e.split("\n").forEach((function(e){a=e.indexOf(":"),t=e.substring(0,a).trim().toLowerCase(),n=e.substring(a+1).trim(),!t||i[t]&&je[t]||("set-cookie"===t?i[t]?i[t].push(n):i[t]=[n]:i[t]=i[t]?i[t]+", "+n:n)})),i}(e),t);else if(pe.isObject(e)&&pe.isIterable(e)){var o,s,l,u={},c=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=y(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0,i=function(){};return{s:i,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,r=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw r}}}}(e);try{for(c.s();!(l=c.n()).done;){var d=l.value;if(!pe.isArray(d))throw TypeError("Object iterator must return a key-value pair");u[s=d[0]]=(o=u[s])?pe.isArray(o)?[].concat(b(o),[d[1]]):[o,d[1]]:d[1]}}catch(e){c.e(e)}finally{c.f()}r(u,t)}else null!=e&&i(t,e,n);return this}},{key:"get",value:function(e,t){if(e=Fe(e)){var n=pe.findKey(this,e);if(n){var a=this[n];if(!t)return a;if(!0===t)return function(e){for(var t,n=Object.create(null),a=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;t=a.exec(e);)n[t[1]]=t[2];return n}(a);if(pe.isFunction(t))return t.call(this,a,n);if(pe.isRegExp(t))return t.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}},{key:"has",value:function(e,t){if(e=Fe(e)){var n=pe.findKey(this,e);return!(!n||void 0===this[n]||t&&!Ve(0,this[n],n,t))}return!1}},{key:"delete",value:function(e,t){var n=this,a=!1;function i(e){if(e=Fe(e)){var i=pe.findKey(n,e);!i||t&&!Ve(0,n[i],i,t)||(delete n[i],a=!0)}}return pe.isArray(e)?e.forEach(i):i(e),a}},{key:"clear",value:function(e){for(var t=Object.keys(this),n=t.length,a=!1;n--;){var i=t[n];e&&!Ve(0,this[i],i,e,!0)||(delete this[i],a=!0)}return a}},{key:"normalize",value:function(e){var t=this,n={};return pe.forEach(this,(function(a,i){var r=pe.findKey(n,i);if(r)return t[r]=$e(a),void delete t[i];var o=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n}))}(i):String(i).trim();o!==i&&delete t[i],t[o]=$e(a),n[o]=!0})),this}},{key:"concat",value:function(){for(var e,t=arguments.length,n=new Array(t),a=0;a1?n-1:0),i=1;i2&&void 0!==arguments[2]?arguments[2]:3,a=0,i=function(e,t){e=e||10;var n,a=new Array(e),i=new Array(e),r=0,o=0;return t=void 0!==t?t:1e3,function(s){var l=Date.now(),u=i[o];n||(n=l),a[r]=s,i[r]=l;for(var c=o,d=0;c!==r;)d+=a[c++],c%=e;if((r=(r+1)%e)===o&&(o=(o+1)%e),!(l-n1&&void 0!==arguments[1]?arguments[1]:Date.now();i=r,n=null,a&&(clearTimeout(a),a=null),e.apply(void 0,b(t))};return[function(){for(var e=Date.now(),t=e-i,s=arguments.length,l=new Array(s),u=0;u=r?o(l,e):(n=l,a||(a=setTimeout((function(){a=null,o(n)}),r-t)))},function(){return n&&o(n)}]}((function(n){var r=n.loaded,o=n.lengthComputable?n.total:void 0,s=r-a,l=i(s);a=r;var u=_({loaded:r,total:o,progress:o?r/o:void 0,bytes:s,rate:l||void 0,estimated:l&&o&&r<=o?(o-r)/l:void 0,event:n,lengthComputable:null!=o},t?"download":"upload",!0);e(u)}),n)},Ze=function(e,t){var n=null!=e;return[function(a){return t[0]({lengthComputable:n,total:e,loaded:a})},t[1]]},Je=function(e){return function(){for(var t=arguments.length,n=new Array(t),a=0;a1?t-1:0),a=1;a1?"since :\n"+l.map(kt).join("\n"):" "+kt(l[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return a};function Ct(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Ye(null,e)}function Tt(e){return Ct(e),e.headers=He.from(e.headers),e.data=We.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),St(e.adapter||qe.adapter,e)(e).then((function(t){return Ct(e),t.data=We.call(e,e.transformResponse,t),t.headers=He.from(t.headers),t}),(function(t){return Ge(t)||(Ct(e),t&&t.response&&(t.response.data=We.call(e,e.transformResponse,t.response),t.response.headers=He.from(t.response.headers))),Promise.reject(t)}))}var Et="1.12.0",Pt={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){Pt[e]=function(n){return c(n)===e||"a"+(t<1?"n ":" ")+e}}));var At={};Pt.transitional=function(e,t,n){function a(e,t){return"[Axios v"+Et+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return function(n,i,r){if(!1===e)throw new fe(a(i," has been removed"+(t?" in "+t:"")),fe.ERR_DEPRECATED);return t&&!At[i]&&(At[i]=!0,console.warn(a(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,i,r)}},Pt.spelling=function(e){return function(t,n){return console.warn("".concat(n," is likely a misspelling of ").concat(e)),!0}};var Lt={assertOptions:function(e,t,n){if("object"!==c(e))throw new fe("options must be an object",fe.ERR_BAD_OPTION_VALUE);for(var a=Object.keys(e),i=a.length;i-- >0;){var r=a[i],o=t[r];if(o){var s=e[r],l=void 0===s||o(s,r,e);if(!0!==l)throw new fe("option "+r+" must be "+l,fe.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new fe("Unknown option "+r,fe.ERR_BAD_OPTION)}},validators:Pt},Mt=Lt.validators,Rt=function(){function e(t){f(this,e),this.defaults=t||{},this.interceptors={request:new Ee,response:new Ee}}var t;return g(e,[{key:"request",value:(t=p(l().mark((function e(t,n){var a,i;return l().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this._request(t,n);case 3:return e.abrupt("return",e.sent);case 6:if(e.prev=6,e.t0=e.catch(0),e.t0 instanceof Error){a={},Error.captureStackTrace?Error.captureStackTrace(a):a=new Error,i=a.stack?a.stack.replace(/^.+\n/,""):"";try{e.t0.stack?i&&!String(e.t0.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(e.t0.stack+="\n"+i):e.t0.stack=i}catch(e){}}throw e.t0;case 10:case"end":return e.stop()}}),e,this,[[0,6]])}))),function(e,n){return t.apply(this,arguments)})},{key:"_request",value:function(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{};var n=t=at(this.defaults,t),a=n.transitional,i=n.paramsSerializer,r=n.headers;void 0!==a&&Lt.assertOptions(a,{silentJSONParsing:Mt.transitional(Mt.boolean),forcedJSONParsing:Mt.transitional(Mt.boolean),clarifyTimeoutError:Mt.transitional(Mt.boolean)},!1),null!=i&&(pe.isFunction(i)?t.paramsSerializer={serialize:i}:Lt.assertOptions(i,{encode:Mt.function,serialize:Mt.function},!0)),void 0!==t.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),Lt.assertOptions(t,{baseUrl:Mt.spelling("baseURL"),withXsrfToken:Mt.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();var o=r&&pe.merge(r.common,r[t.method]);r&&pe.forEach(["delete","get","head","post","put","patch","common"],(function(e){delete r[e]})),t.headers=He.concat(o,r);var s=[],l=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(l=l&&e.synchronous,s.unshift(e.fulfilled,e.rejected))}));var u,c=[];this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));var d,h=0;if(!l){var p=[Tt.bind(this),void 0];for(p.unshift.apply(p,s),p.push.apply(p,c),d=p.length,u=Promise.resolve(t);h0;)a._listeners[t](e);a._listeners=null}})),this.promise.then=function(e){var t,n=new Promise((function(e){a.subscribe(e),t=e})).then(e);return n.cancel=function(){a.unsubscribe(t)},n},t((function(e,t,i){a.reason||(a.reason=new Ye(e,t,i),n(a.reason))}))}return g(e,[{key:"throwIfRequested",value:function(){if(this.reason)throw this.reason}},{key:"subscribe",value:function(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}},{key:"unsubscribe",value:function(e){if(this._listeners){var t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}}},{key:"toAbortSignal",value:function(){var e=this,t=new AbortController,n=function(e){t.abort(e)};return this.subscribe(n),t.signal.unsubscribe=function(){return e.unsubscribe(n)},t.signal}}],[{key:"source",value:function(){var t;return{token:new e((function(e){t=e})),cancel:t}}}]),e}(),It=Nt;var Ot={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(Ot).forEach((function(e){var t=v(e,2),n=t[0],a=t[1];Ot[a]=n}));var Dt=Ot;var qt=function e(t){var n=new zt(t),a=k(zt.prototype.request,n);return pe.extend(a,zt.prototype,n,{allOwnKeys:!0}),pe.extend(a,n,null,{allOwnKeys:!0}),a.create=function(n){return e(at(t,n))},a}(qe);return qt.Axios=zt,qt.CanceledError=Ye,qt.CancelToken=It,qt.isCancel=Ge,qt.VERSION=Et,qt.toFormData=we,qt.AxiosError=fe,qt.Cancel=qt.CanceledError,qt.all=function(e){return Promise.all(e)},qt.spread=function(e){return function(t){return e.apply(null,t)}},qt.isAxiosError=function(e){return pe.isObject(e)&&!0===e.isAxiosError},qt.mergeConfig=at,qt.AxiosHeaders=He,qt.formToJSON=function(e){return Oe(pe.isHTMLForm(e)?new FormData(e):e)},qt.getAdapter=St,qt.HttpStatusCode=Dt,qt.default=qt,qt})); +n.version="2.30.1",e=Nt,n.fn=Pn,n.min=function(){return qt("isBefore",[].slice.call(arguments,0))},n.max=function(){return qt("isAfter",[].slice.call(arguments,0))},n.now=function(){return Date.now?Date.now():+new Date},n.utc=h,n.unix=function(e){return Nt(1e3*e)},n.months=function(e,t){return Rn(e,t,"months")},n.isDate=u,n.locale=ft,n.invalid=m,n.duration=Qt,n.isMoment=y,n.weekdays=function(e,t,n){return zn(e,t,n,"weekdays")},n.parseZone=function(){return Nt.apply(null,arguments).parseZone()},n.localeData=gt,n.isDuration=Bt,n.monthsShort=function(e,t){return Rn(e,t,"monthsShort")},n.weekdaysMin=function(e,t,n){return zn(e,t,n,"weekdaysMin")},n.defineLocale=mt,n.updateLocale=function(e,t){if(null!=t){var n,a,i=lt;null!=ut[e]&&null!=ut[e].parentLocale?ut[e].set(E(ut[e]._config,t)):(null!=(a=pt(e))&&(i=a._config),t=E(i,t),null==a&&(t.abbr=e),(n=new P(t)).parentLocale=ut[e],ut[e]=n),ft(e)}else null!=ut[e]&&(null!=ut[e].parentLocale?(ut[e]=ut[e].parentLocale,e===ft()&&ft(e)):null!=ut[e]&&delete ut[e]);return ut[e]},n.locales=function(){return x(ut)},n.weekdaysShort=function(e,t,n){return zn(e,t,n,"weekdaysShort")},n.normalizeUnits=j,n.relativeTimeRounding=function(e){return void 0===e?ia:"function"==typeof e&&(ia=e,!0)},n.relativeTimeThreshold=function(e,t){return void 0!==ra[e]&&(void 0===t?ra[e]:(ra[e]=t,"s"===e&&(ra.ss=t-1),!0))},n.calendarFormat=function(e,t){var n=e.diff(t,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"},n.prototype=Pn,n.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},n}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define("underscore",t):(e="undefined"!=typeof globalThis?globalThis:e||self,function(){var n=e._,a=e._=t();a.noConflict=function(){return e._=n,a}}())}(this,function(){var e="1.13.7",t="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},n=Array.prototype,a=Object.prototype,i="undefined"!=typeof Symbol?Symbol.prototype:null,r=n.push,o=n.slice,s=a.toString,l=a.hasOwnProperty,u="undefined"!=typeof ArrayBuffer,c="undefined"!=typeof DataView,d=Array.isArray,h=Object.keys,p=Object.create,f=u&&ArrayBuffer.isView,m=isNaN,g=isFinite,_=!{toString:null}.propertyIsEnumerable("toString"),v=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],b=Math.pow(2,53)-1;function y(e,t){return t=null==t?e.length-1:+t,function(){for(var n=Math.max(arguments.length-t,0),a=Array(n),i=0;i=0&&n<=b}}function G(e){return function(t){return null==t?void 0:t[e]}}var Y=G("byteLength"),K=W(Y),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var Z=u?function(e){return f?f(e)&&!j(e):K(e)&&Q.test(s.call(e))}:H(!1),J=G("length");function X(e,t){t=function(e){for(var t={},n=e.length,a=0;a":">",'"':""","'":"'","`":"`"},Ve=Fe($e),Ue=Fe(ye($e)),He=ne.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},We=/(.)^/,Ge={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Ye=/\\|'|\r|\n|\u2028|\u2029/g;function Ke(e){return"\\"+Ge[e]}var Qe=/^\s*(\w|\$)+\s*$/;var Ze=0;function Je(e,t,n,a,i){if(!(a instanceof t))return e.apply(n,i);var r=Te(e.prototype),o=e.apply(r,i);return w(o)?o:r}var Xe=y(function(e,t){var n=Xe.placeholder,a=function(){for(var i=0,r=t.length,o=Array(r),s=0;s1)nt(s,t-1,n,a),i=a.length;else for(var l=0,u=s.length;l0&&(n=t.apply(this,arguments)),e<=1&&(t=null),n}}var lt=Xe(st,2);function ut(e,t,n){t=qe(t,n);for(var a,i=ee(e),r=0,o=i.length;r0?0:i-1;r>=0&&r0?s=r>=0?r:Math.max(r+l,s):l=r>=0?Math.min(r+1,l):r+l+1;else if(n&&r&&l)return a[r=n(a,i)]===i?r:-1;if(i!=i)return(r=t(o.call(a,s,l),U))>=0?r+s:-1;for(r=e>0?s:l-1;r>=0&&r=3;return function(t,n,a,i){var r=!tt(t)&&ee(t),o=(r||t).length,s=e>0?0:o-1;for(i||(a=t[r?r[s]:s],s+=e);s>=0&&s=0}var Et=y(function(e,t,n){var a,i;return N(t)?i=t:(t=Pe(t),a=t.slice(0,-1),t=t[t.length-1]),bt(e,function(e){var r=i;if(!r){if(a&&a.length&&(e=Ae(e,a)),null==e)return;r=e[t]}return null==r?r:r.apply(e,n)})});function Pt(e,t){return bt(e,ze(t))}function At(e,t,n){var a,i,r=-1/0,o=-1/0;if(null==t||"number"==typeof t&&"object"!=typeof e[0]&&null!=e)for(var s=0,l=(e=tt(e)?e:be(e)).length;sr&&(r=a);else t=qe(t,n),vt(e,function(e,n,a){((i=t(e,n,a))>o||i===-1/0&&r===-1/0)&&(r=e,o=i)});return r}var Mt=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function Lt(e){return e?B(e)?o.call(e):C(e)?e.match(Mt):tt(e)?bt(e,Le):be(e):[]}function Rt(e,t,n){if(null==t||n)return tt(e)||(e=be(e)),e[je(e.length-1)];var a=Lt(e),i=J(a);t=Math.max(Math.min(t,i),0);for(var r=i-1,o=0;o1&&(a=Ne(a,t[1])),t=se(e)):(a=Dt,t=nt(t,!1,!1),e=Object(e));for(var i=0,r=t.length;i1&&(n=t[1])):(t=bt(nt(t,!1,!1),String),a=function(e,n){return!Tt(t,n)}),jt(e,a,n)});function Ft(e,t,n){return o.call(e,0,Math.max(0,e.length-(null==t||n?1:t)))}function $t(e,t,n){return null==e||e.length<1?null==t||n?void 0:[]:null==t||n?e[0]:Ft(e,e.length-t)}function Vt(e,t,n){return o.call(e,null==t||n?1:t)}var Ut=y(function(e,t){return t=nt(t,!0,!0),xt(e,function(e){return!Tt(t,e)})}),Ht=y(function(e,t){return Ut(e,t)});function Wt(e,t,n,a){x(t)||(a=n,n=t,t=!1),null!=n&&(n=qe(n,a));for(var i=[],r=[],o=0,s=J(e);ot?(a&&(clearTimeout(a),a=null),s=u,o=e.apply(i,r),a||(i=r=null)):a||!1===n.trailing||(a=setTimeout(l,c)),o};return u.cancel=function(){clearTimeout(a),s=0,a=i=r=null},u},debounce:function(e,t,n){var a,i,r,o,s,l=function(){var u=Be()-i;t>u?a=setTimeout(l,t-u):(a=null,n||(o=e.apply(s,r)),a||(r=s=null))},u=y(function(u){return s=this,r=u,i=Be(),a||(a=setTimeout(l,t),n&&(o=e.apply(s,r))),o});return u.cancel=function(){clearTimeout(a),a=r=s=null},u},wrap:function(e,t){return Xe(t,e)},negate:ot,compose:function(){var e=arguments,t=e.length-1;return function(){for(var n=t,a=e[t].apply(this,arguments);n--;)a=e[n].call(this,a);return a}},after:function(e,t){return function(){if(--e<1)return t.apply(this,arguments)}},before:st,once:lt,findKey:ut,findIndex:dt,findLastIndex:ht,sortedIndex:pt,indexOf:mt,lastIndexOf:gt,find:_t,detect:_t,findWhere:function(e,t){return _t(e,Re(t))},each:vt,forEach:vt,map:bt,collect:bt,reduce:wt,foldl:wt,inject:wt,reduceRight:kt,foldr:kt,filter:xt,select:xt,reject:function(e,t,n){return xt(e,ot(qe(t)),n)},every:St,all:St,some:Ct,any:Ct,contains:Tt,includes:Tt,include:Tt,invoke:Et,pluck:Pt,where:function(e,t){return xt(e,Re(t))},max:At,min:function(e,t,n){var a,i,r=1/0,o=1/0;if(null==t||"number"==typeof t&&"object"!=typeof e[0]&&null!=e)for(var s=0,l=(e=tt(e)?e:be(e)).length;sa||void 0===n)return 1;if(n=0;--r){var o=this.tryEntries[r],s=o.completion;if("root"===o.tryLoc)return i("end");if(o.tryLoc<=this.prev){var l=a.call(o,"catchLoc"),u=a.call(o,"finallyLoc");if(l&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&a.call(i,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),M(n),_}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var a=n.completion;if("throw"===a.type){var i=a.arg;M(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,a){return this.delegate={iterator:R(t),resultName:n,nextLoc:a},"next"===this.method&&(this.arg=e),_}},t}function u(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function d(t){return function(){return new e(t.apply(this,arguments))}}function h(e,t,n,a,i,r,o){try{var s=e[r](o),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(a,i)}function p(e){return function(){var t=this,n=arguments;return new Promise(function(a,i){var r=e.apply(t,n);function o(e){h(r,a,i,o,s,"next",e)}function s(e){h(r,a,i,o,s,"throw",e)}o(void 0)})}}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function m(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,a=new Array(t);n2&&void 0!==arguments[2]?arguments[2]:{}).allOwnKeys,r=void 0!==i&&i;if(null!=e)if("object"!==c(e)&&(e=[e]),L(e))for(n=0,a=e.length;n0;)if(t===(n=a[i]).toLowerCase())return n;return null}var J="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,X=function(e){return!R(e)&&e!==J};var ee,te=(ee="undefined"!=typeof Uint8Array&&C(Uint8Array),function(e){return ee&&e instanceof ee}),ne=A("HTMLFormElement"),ae=function(){var e=Object.prototype.hasOwnProperty;return function(t,n){return e.call(t,n)}}(),ie=A("RegExp"),re=function(e,t){var n=Object.getOwnPropertyDescriptors(e),a={};Q(n,function(n,i){var r;!1!==(r=t(n,i,e))&&(a[i]=r||n)}),Object.defineProperties(e,a)};var oe,se,le,ue,ce=A("AsyncFunction"),de=(oe="function"==typeof setImmediate,se=I(J.postMessage),oe?setImmediate:se?(le="axios@".concat(Math.random()),ue=[],J.addEventListener("message",function(e){var t=e.source,n=e.data;t===J&&n===le&&ue.length&&ue.shift()()},!1),function(e){ue.push(e),J.postMessage(le,"*")}):function(e){return setTimeout(e)}),he="undefined"!=typeof queueMicrotask?queueMicrotask.bind(J):"undefined"!=typeof process&&process.nextTick||de,pe={isArray:L,isArrayBuffer:N,isBuffer:z,isFormData:function(e){var t;return e&&("function"==typeof FormData&&e instanceof FormData||I(e.append)&&("formdata"===(t=P(e))||"object"===t&&I(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&N(e.buffer)},isString:O,isNumber:q,isBoolean:function(e){return!0===e||!1===e},isObject:D,isPlainObject:j,isEmptyObject:function(e){if(!D(e)||z(e))return!1;try{return 0===Object.keys(e).length&&Object.getPrototypeOf(e)===Object.prototype}catch(e){return!1}},isReadableStream:W,isRequest:G,isResponse:Y,isHeaders:K,isUndefined:R,isDate:B,isFile:F,isBlob:$,isRegExp:ie,isFunction:I,isStream:function(e){return D(e)&&I(e.pipe)},isURLSearchParams:U,isTypedArray:te,isFileList:V,forEach:Q,merge:function e(){for(var t=X(this)&&this||{},n=t.caseless,a=t.skipUndefined,i={},r=function(t,r){var o=n&&Z(i,r)||r;j(i[o])&&j(t)?i[o]=e(i[o],t):j(t)?i[o]=e({},t):L(t)?i[o]=t.slice():a&&R(t)||(i[o]=t)},o=0,s=arguments.length;o3&&void 0!==arguments[3]?arguments[3]:{}).allOwnKeys}),e},trim:function(e){return e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e},inherits:function(e,t,n,a){e.prototype=Object.create(t.prototype,a),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:function(e,t,n,a){var i,r,o,s={};if(t=t||{},null==e)return t;do{for(r=(i=Object.getOwnPropertyNames(e)).length;r-- >0;)o=i[r],a&&!a(o,e,t)||s[o]||(t[o]=e[o],s[o]=!0);e=!1!==n&&C(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:P,kindOfTest:A,endsWith:function(e,t,n){e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;var a=e.indexOf(t,n);return-1!==a&&a===n},toArray:function(e){if(!e)return null;if(L(e))return e;var t=e.length;if(!q(t))return null;for(var n=new Array(t);t-- >0;)n[t]=e[t];return n},forEachEntry:function(e,t){for(var n,a=(e&&e[T]).call(e);(n=a.next())&&!n.done;){var i=n.value;t.call(e,i[0],i[1])}},matchAll:function(e,t){for(var n,a=[];null!==(n=e.exec(t));)a.push(n);return a},isHTMLForm:ne,hasOwnProperty:ae,hasOwnProp:ae,reduceDescriptors:re,freezeMethods:function(e){re(e,function(t,n){if(I(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;var a=e[n];I(a)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=function(){throw Error("Can not rewrite read-only method '"+n+"'")}))})},toObjectSet:function(e,t){var n={},a=function(e){e.forEach(function(e){n[e]=!0})};return L(e)?a(e):a(String(e).split(t)),n},toCamelCase:function(e){return e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(e,t,n){return t.toUpperCase()+n})},noop:function(){},toFiniteNumber:function(e,t){return null!=e&&Number.isFinite(e=+e)?e:t},findKey:Z,global:J,isContextDefined:X,isSpecCompliantForm:function(e){return!!(e&&I(e.append)&&"FormData"===e[E]&&e[T])},toJSONObject:function(e){var t=new Array(10);return function e(n,a){if(D(n)){if(t.indexOf(n)>=0)return;if(z(n))return n;if(!("toJSON"in n)){t[a]=n;var i=L(n)?[]:{};return Q(n,function(t,n){var r=e(t,a+1);!R(r)&&(i[n]=r)}),t[a]=void 0,i}}return n}(e,0)},isAsyncFn:ce,isThenable:function(e){return e&&(D(e)||I(e))&&I(e.then)&&I(e.catch)},setImmediate:de,asap:he,isIterable:function(e){return null!=e&&I(e[T])}};function fe(e,t,n,a,i){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),a&&(this.request=a),i&&(this.response=i,this.status=i.status?i.status:null)}pe.inherits(fe,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:pe.toJSONObject(this.config),code:this.code,status:this.status}}});var me=fe.prototype,ge={};["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(function(e){ge[e]={value:e}}),Object.defineProperties(fe,ge),Object.defineProperty(me,"isAxiosError",{value:!0}),fe.from=function(e,t,n,a,i,r){var o=Object.create(me);pe.toFlatObject(e,o,function(e){return e!==Error.prototype},function(e){return"isAxiosError"!==e});var s=e&&e.message?e.message:"Error",l=null==t&&e?e.code:t;return fe.call(o,s,l,n,a,i),e&&null==o.cause&&Object.defineProperty(o,"cause",{value:e,configurable:!0}),o.name=e&&e.name||"Error",r&&Object.assign(o,r),o};function _e(e){return pe.isPlainObject(e)||pe.isArray(e)}function ve(e){return pe.endsWith(e,"[]")?e.slice(0,-2):e}function be(e,t,n){return e?e.concat(t).map(function(e,t){return e=ve(e),!n&&t?"["+e+"]":e}).join(n?".":""):t}var ye=pe.toFlatObject(pe,{},null,function(e){return/^is[A-Z]/.test(e)});function we(e,t,n){if(!pe.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;var a=(n=pe.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(e,t){return!pe.isUndefined(t[e])})).metaTokens,i=n.visitor||u,r=n.dots,o=n.indexes,s=(n.Blob||"undefined"!=typeof Blob&&Blob)&&pe.isSpecCompliantForm(t);if(!pe.isFunction(i))throw new TypeError("visitor must be a function");function l(e){if(null===e)return"";if(pe.isDate(e))return e.toISOString();if(pe.isBoolean(e))return e.toString();if(!s&&pe.isBlob(e))throw new fe("Blob is not supported. Use a Buffer instead.");return pe.isArrayBuffer(e)||pe.isTypedArray(e)?s&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,i){var s=e;if(e&&!i&&"object"===c(e))if(pe.endsWith(n,"{}"))n=a?n:n.slice(0,-2),e=JSON.stringify(e);else if(pe.isArray(e)&&function(e){return pe.isArray(e)&&!e.some(_e)}(e)||(pe.isFileList(e)||pe.endsWith(n,"[]"))&&(s=pe.toArray(e)))return n=ve(n),s.forEach(function(e,a){!pe.isUndefined(e)&&null!==e&&t.append(!0===o?be([n],a,r):null===o?n:n+"[]",l(e))}),!1;return!!_e(e)||(t.append(be(i,n,r),l(e)),!1)}var d=[],h=Object.assign(ye,{defaultVisitor:u,convertValue:l,isVisitable:_e});if(!pe.isObject(e))throw new TypeError("data must be an object");return function e(n,a){if(!pe.isUndefined(n)){if(-1!==d.indexOf(n))throw Error("Circular reference detected in "+a.join("."));d.push(n),pe.forEach(n,function(n,r){!0===(!(pe.isUndefined(n)||null===n)&&i.call(t,n,pe.isString(r)?r.trim():r,a,h))&&e(n,a?a.concat(r):[r])}),d.pop()}}(e),t}function ke(e){var t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(e){return t[e]})}function xe(e,t){this._pairs=[],e&&we(e,this,t)}var Se=xe.prototype;function Ce(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Te(e,t,n){if(!t)return e;var a=n&&n.encode||Ce;pe.isFunction(n)&&(n={serialize:n});var i,r=n&&n.serialize;if(i=r?r(t,n):pe.isURLSearchParams(t)?t.toString():new xe(t,n).toString(a)){var o=e.indexOf("#");-1!==o&&(e=e.slice(0,o)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}Se.append=function(e,t){this._pairs.push([e,t])},Se.toString=function(e){var t=e?function(t){return e.call(this,t,ke)}:ke;return this._pairs.map(function(e){return t(e[0])+"="+t(e[1])},"").join("&")};var Ee=function(){function e(){f(this,e),this.handlers=[]}return g(e,[{key:"use",value:function(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}},{key:"eject",value:function(e){this.handlers[e]&&(this.handlers[e]=null)}},{key:"clear",value:function(){this.handlers&&(this.handlers=[])}},{key:"forEach",value:function(e){pe.forEach(this.handlers,function(t){null!==t&&e(t)})}}]),e}(),Pe={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Ae={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:xe,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},Me="undefined"!=typeof window&&"undefined"!=typeof document,Le="object"===("undefined"==typeof navigator?"undefined":c(navigator))&&navigator||void 0,Re=Me&&(!Le||["ReactNative","NativeScript","NS"].indexOf(Le.product)<0),ze="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,Ne=Me&&window.location.href||"http://localhost",Oe=s(s({},Object.freeze({__proto__:null,hasBrowserEnv:Me,hasStandardBrowserWebWorkerEnv:ze,hasStandardBrowserEnv:Re,navigator:Le,origin:Ne})),Ae);function Ie(e){function t(e,n,a,i){var r=e[i++];if("__proto__"===r)return!0;var o=Number.isFinite(+r),s=i>=e.length;return r=!r&&pe.isArray(a)?a.length:r,s?(pe.hasOwnProp(a,r)?a[r]=[a[r],n]:a[r]=n,!o):(a[r]&&pe.isObject(a[r])||(a[r]=[]),t(e,n,a[r],i)&&pe.isArray(a[r])&&(a[r]=function(e){var t,n,a={},i=Object.keys(e),r=i.length;for(t=0;t-1,r=pe.isObject(e);if(r&&pe.isHTMLForm(e)&&(e=new FormData(e)),pe.isFormData(e))return i?JSON.stringify(Ie(e)):e;if(pe.isArrayBuffer(e)||pe.isBuffer(e)||pe.isStream(e)||pe.isFile(e)||pe.isBlob(e)||pe.isReadableStream(e))return e;if(pe.isArrayBufferView(e))return e.buffer;if(pe.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();if(r){if(a.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return we(e,new Oe.classes.URLSearchParams,s({visitor:function(e,t,n,a){return Oe.isNode&&pe.isBuffer(e)?(this.append(t,e.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((n=pe.isFileList(e))||a.indexOf("multipart/form-data")>-1){var o=this.env&&this.env.FormData;return we(n?{"files[]":e}:e,o&&new o,this.formSerializer)}}return r||i?(t.setContentType("application/json",!1),function(e,t,n){if(pe.isString(e))try{return(t||JSON.parse)(e),pe.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||qe.transitional,n=t&&t.forcedJSONParsing,a="json"===this.responseType;if(pe.isResponse(e)||pe.isReadableStream(e))return e;if(e&&pe.isString(e)&&(n&&!this.responseType||a)){var i=!(t&&t.silentJSONParsing)&&a;try{return JSON.parse(e,this.parseReviver)}catch(e){if(i){if("SyntaxError"===e.name)throw fe.from(e,fe.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Oe.classes.FormData,Blob:Oe.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};pe.forEach(["delete","get","head","post","put","patch"],function(e){qe.headers[e]={}});var De=qe,je=pe.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"]),Be=Symbol("internals");function Fe(e){return e&&String(e).trim().toLowerCase()}function $e(e){return!1===e||null==e?e:pe.isArray(e)?e.map($e):String(e)}function Ve(e,t,n,a,i){return pe.isFunction(a)?a.call(this,t,n):(i&&(t=n),pe.isString(t)?pe.isString(a)?-1!==t.indexOf(a):pe.isRegExp(a)?a.test(t):void 0:void 0)}var Ue=function(){function e(t){f(this,e),t&&this.set(t)}return g(e,[{key:"set",value:function(e,t,n){var a=this;function i(e,t,n){var i=Fe(t);if(!i)throw new Error("header name must be a non-empty string");var r=pe.findKey(a,i);(!r||void 0===a[r]||!0===n||void 0===n&&!1!==a[r])&&(a[r||t]=$e(e))}var r=function(e,t){return pe.forEach(e,function(e,n){return i(e,n,t)})};if(pe.isPlainObject(e)||e instanceof this.constructor)r(e,t);else if(pe.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))r(function(e){var t,n,a,i={};return e&&e.split("\n").forEach(function(e){a=e.indexOf(":"),t=e.substring(0,a).trim().toLowerCase(),n=e.substring(a+1).trim(),!t||i[t]&&je[t]||("set-cookie"===t?i[t]?i[t].push(n):i[t]=[n]:i[t]=i[t]?i[t]+", "+n:n)}),i}(e),t);else if(pe.isObject(e)&&pe.isIterable(e)){var o,s,l,u={},c=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=y(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0,i=function(){};return{s:i,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,r=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw r}}}}(e);try{for(c.s();!(l=c.n()).done;){var d=l.value;if(!pe.isArray(d))throw TypeError("Object iterator must return a key-value pair");u[s=d[0]]=(o=u[s])?pe.isArray(o)?[].concat(b(o),[d[1]]):[o,d[1]]:d[1]}}catch(e){c.e(e)}finally{c.f()}r(u,t)}else null!=e&&i(t,e,n);return this}},{key:"get",value:function(e,t){if(e=Fe(e)){var n=pe.findKey(this,e);if(n){var a=this[n];if(!t)return a;if(!0===t)return function(e){for(var t,n=Object.create(null),a=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;t=a.exec(e);)n[t[1]]=t[2];return n}(a);if(pe.isFunction(t))return t.call(this,a,n);if(pe.isRegExp(t))return t.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}},{key:"has",value:function(e,t){if(e=Fe(e)){var n=pe.findKey(this,e);return!(!n||void 0===this[n]||t&&!Ve(0,this[n],n,t))}return!1}},{key:"delete",value:function(e,t){var n=this,a=!1;function i(e){if(e=Fe(e)){var i=pe.findKey(n,e);!i||t&&!Ve(0,n[i],i,t)||(delete n[i],a=!0)}}return pe.isArray(e)?e.forEach(i):i(e),a}},{key:"clear",value:function(e){for(var t=Object.keys(this),n=t.length,a=!1;n--;){var i=t[n];e&&!Ve(0,this[i],i,e,!0)||(delete this[i],a=!0)}return a}},{key:"normalize",value:function(e){var t=this,n={};return pe.forEach(this,function(a,i){var r=pe.findKey(n,i);if(r)return t[r]=$e(a),void delete t[i];var o=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,function(e,t,n){return t.toUpperCase()+n})}(i):String(i).trim();o!==i&&delete t[i],t[o]=$e(a),n[o]=!0}),this}},{key:"concat",value:function(){for(var e,t=arguments.length,n=new Array(t),a=0;a1?n-1:0),i=1;i2&&void 0!==arguments[2]?arguments[2]:3,a=0,i=function(e,t){e=e||10;var n,a=new Array(e),i=new Array(e),r=0,o=0;return t=void 0!==t?t:1e3,function(s){var l=Date.now(),u=i[o];n||(n=l),a[r]=s,i[r]=l;for(var c=o,d=0;c!==r;)d+=a[c++],c%=e;if((r=(r+1)%e)===o&&(o=(o+1)%e),!(l-n1&&void 0!==arguments[1]?arguments[1]:Date.now();i=r,n=null,a&&(clearTimeout(a),a=null),e.apply(void 0,b(t))};return[function(){for(var e=Date.now(),t=e-i,s=arguments.length,l=new Array(s),u=0;u=r?o(l,e):(n=l,a||(a=setTimeout(function(){a=null,o(n)},r-t)))},function(){return n&&o(n)}]}(function(n){var r=n.loaded,o=n.lengthComputable?n.total:void 0,s=r-a,l=i(s);a=r;var u=_({loaded:r,total:o,progress:o?r/o:void 0,bytes:s,rate:l||void 0,estimated:l&&o&&r<=o?(o-r)/l:void 0,event:n,lengthComputable:null!=o},t?"download":"upload",!0);e(u)},n)},Ze=function(e,t){var n=null!=e;return[function(a){return t[0]({lengthComputable:n,total:e,loaded:a})},t[1]]},Je=function(e){return function(){for(var t=arguments.length,n=new Array(t),a=0;a1?t-1:0),a=1;a1?"since :\n"+l.map(kt).join("\n"):" "+kt(l[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return a},adapters:wt};function Ct(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Ye(null,e)}function Tt(e){return Ct(e),e.headers=He.from(e.headers),e.data=We.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),St.getAdapter(e.adapter||De.adapter,e)(e).then(function(t){return Ct(e),t.data=We.call(e,e.transformResponse,t),t.headers=He.from(t.headers),t},function(t){return Ge(t)||(Ct(e),t&&t.response&&(t.response.data=We.call(e,e.transformResponse,t.response),t.response.headers=He.from(t.response.headers))),Promise.reject(t)})}var Et="1.13.2",Pt={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){Pt[e]=function(n){return c(n)===e||"a"+(t<1?"n ":" ")+e}});var At={};Pt.transitional=function(e,t,n){function a(e,t){return"[Axios v"+Et+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return function(n,i,r){if(!1===e)throw new fe(a(i," has been removed"+(t?" in "+t:"")),fe.ERR_DEPRECATED);return t&&!At[i]&&(At[i]=!0,console.warn(a(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,i,r)}},Pt.spelling=function(e){return function(t,n){return console.warn("".concat(n," is likely a misspelling of ").concat(e)),!0}};var Mt={assertOptions:function(e,t,n){if("object"!==c(e))throw new fe("options must be an object",fe.ERR_BAD_OPTION_VALUE);for(var a=Object.keys(e),i=a.length;i-- >0;){var r=a[i],o=t[r];if(o){var s=e[r],l=void 0===s||o(s,r,e);if(!0!==l)throw new fe("option "+r+" must be "+l,fe.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new fe("Unknown option "+r,fe.ERR_BAD_OPTION)}},validators:Pt},Lt=Mt.validators,Rt=function(){function e(t){f(this,e),this.defaults=t||{},this.interceptors={request:new Ee,response:new Ee}}var t;return g(e,[{key:"request",value:(t=p(l().mark(function e(t,n){var a,i;return l().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this._request(t,n);case 3:return e.abrupt("return",e.sent);case 6:if(e.prev=6,e.t0=e.catch(0),e.t0 instanceof Error){a={},Error.captureStackTrace?Error.captureStackTrace(a):a=new Error,i=a.stack?a.stack.replace(/^.+\n/,""):"";try{e.t0.stack?i&&!String(e.t0.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(e.t0.stack+="\n"+i):e.t0.stack=i}catch(e){}}throw e.t0;case 10:case"end":return e.stop()}},e,this,[[0,6]])})),function(e,n){return t.apply(this,arguments)})},{key:"_request",value:function(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{};var n=t=at(this.defaults,t),a=n.transitional,i=n.paramsSerializer,r=n.headers;void 0!==a&&Mt.assertOptions(a,{silentJSONParsing:Lt.transitional(Lt.boolean),forcedJSONParsing:Lt.transitional(Lt.boolean),clarifyTimeoutError:Lt.transitional(Lt.boolean)},!1),null!=i&&(pe.isFunction(i)?t.paramsSerializer={serialize:i}:Mt.assertOptions(i,{encode:Lt.function,serialize:Lt.function},!0)),void 0!==t.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),Mt.assertOptions(t,{baseUrl:Lt.spelling("baseURL"),withXsrfToken:Lt.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();var o=r&&pe.merge(r.common,r[t.method]);r&&pe.forEach(["delete","get","head","post","put","patch","common"],function(e){delete r[e]}),t.headers=He.concat(o,r);var s=[],l=!0;this.interceptors.request.forEach(function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(l=l&&e.synchronous,s.unshift(e.fulfilled,e.rejected))});var u,c=[];this.interceptors.response.forEach(function(e){c.push(e.fulfilled,e.rejected)});var d,h=0;if(!l){var p=[Tt.bind(this),void 0];for(p.unshift.apply(p,s),p.push.apply(p,c),d=p.length,u=Promise.resolve(t);h0;)a._listeners[t](e);a._listeners=null}}),this.promise.then=function(e){var t,n=new Promise(function(e){a.subscribe(e),t=e}).then(e);return n.cancel=function(){a.unsubscribe(t)},n},t(function(e,t,i){a.reason||(a.reason=new Ye(e,t,i),n(a.reason))})}return g(e,[{key:"throwIfRequested",value:function(){if(this.reason)throw this.reason}},{key:"subscribe",value:function(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}},{key:"unsubscribe",value:function(e){if(this._listeners){var t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}}},{key:"toAbortSignal",value:function(){var e=this,t=new AbortController,n=function(e){t.abort(e)};return this.subscribe(n),t.signal.unsubscribe=function(){return e.unsubscribe(n)},t.signal}}],[{key:"source",value:function(){var t;return{token:new e(function(e){t=e}),cancel:t}}}]),e}(),Ot=Nt;var It={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,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(It).forEach(function(e){var t=v(e,2),n=t[0],a=t[1];It[a]=n});var qt=It;var Dt=function e(t){var n=new zt(t),a=k(zt.prototype.request,n);return pe.extend(a,zt.prototype,n,{allOwnKeys:!0}),pe.extend(a,n,null,{allOwnKeys:!0}),a.create=function(n){return e(at(t,n))},a}(De);return Dt.Axios=zt,Dt.CanceledError=Ye,Dt.CancelToken=Ot,Dt.isCancel=Ge,Dt.VERSION=Et,Dt.toFormData=we,Dt.AxiosError=fe,Dt.Cancel=Dt.CanceledError,Dt.all=function(e){return Promise.all(e)},Dt.spread=function(e){return function(t){return e.apply(null,t)}},Dt.isAxiosError=function(e){return pe.isObject(e)&&!0===e.isAxiosError},Dt.mergeConfig=at,Dt.AxiosHeaders=He,Dt.formToJSON=function(e){return Ie(pe.isHTMLForm(e)?new FormData(e):e)},Dt.getAdapter=St.getAdapter,Dt.HttpStatusCode=qt,Dt.default=Dt,Dt}); /** -* vue v3.5.8 +* vue v3.5.25 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT **/ -var Vue=function(e){"use strict";var t,n;let a,i,r,o,s,l,u,c,d,h,p,f;/*! #__NO_SIDE_EFFECTS__ */function m(e){let t=Object.create(null);for(let n of e.split(","))t[n]=1;return e=>e in t}let g={},_=[],v=()=>{},b=()=>!1,y=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||97>e.charCodeAt(2)),w=e=>e.startsWith("onUpdate:"),k=Object.assign,x=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},S=Object.prototype.hasOwnProperty,C=(e,t)=>S.call(e,t),T=Array.isArray,E=e=>"[object Map]"===O(e),P=e=>"[object Set]"===O(e),A=e=>"[object Date]"===O(e),L=e=>"function"==typeof e,M=e=>"string"==typeof e,R=e=>"symbol"==typeof e,z=e=>null!==e&&"object"==typeof e,N=e=>(z(e)||L(e))&&L(e.then)&&L(e.catch),I=Object.prototype.toString,O=e=>I.call(e),D=e=>O(e).slice(8,-1),q=e=>"[object Object]"===O(e),j=e=>M(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,B=m(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),F=m("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),$=e=>{let t=Object.create(null);return n=>t[n]||(t[n]=e(n))},V=/-(\w)/g,U=$((e=>e.replace(V,((e,t)=>t?t.toUpperCase():"")))),H=/\B([A-Z])/g,W=$((e=>e.replace(H,"-$1").toLowerCase())),G=$((e=>e.charAt(0).toUpperCase()+e.slice(1))),Y=$((e=>e?`on${G(e)}`:"")),K=(e,t)=>!Object.is(e,t),Q=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:a,value:n})},J=e=>{let t=parseFloat(e);return isNaN(t)?e:t},X=e=>{let t=M(e)?Number(e):NaN;return isNaN(t)?e:t},ee=()=>a||(a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}),te=m("Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol");function ne(e){if(T(e)){let t={};for(let n=0;n{if(e){let n=e.split(ie);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function se(e){let t="";if(M(e))t=e;else if(T(e))for(let n=0;npe(e,t)))}let me=e=>!(!e||!0!==e.__v_isRef),ge=e=>M(e)?e:null==e?"":T(e)||z(e)&&(e.toString===I||!L(e.toString))?me(e)?ge(e.value):JSON.stringify(e,_e,2):String(e),_e=(e,t)=>me(t)?_e(e,t.value):E(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n],a)=>(e[ve(t,a)+" =>"]=n,e)),{})}:P(t)?{[`Set(${t.size})`]:[...t.values()].map((e=>ve(e)))}:R(t)?ve(t):!z(t)||T(t)||q(t)?t:String(t),ve=(e,t="")=>{var n;return R(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};class be{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=i,!e&&i&&(this.index=(i.scopes||(i.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){let e,t;if(this._isPaused=!0,this.scopes)for(e=0,t=this.scopes.length;e0)){for(;o;){let t=o;for(o=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,1&t.flags)try{t.trigger()}catch(t){e||(e=t)}t=n}}if(e)throw e}}function Ce(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Te(e,t=!1){let n,a=e.depsTail,i=a;for(;i;){let e=i.prevDep;-1===i.version?(i===a&&(a=e),Ae(i,t),function(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}(i)):n=i,i.dep.activeLink=i.prevActiveLink,i.prevActiveLink=void 0,i=e}e.deps=n,e.depsTail=a}function Ee(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Pe(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Pe(e){if(4&e.flags&&!(16&e.flags)||(e.flags&=-17,e.globalVersion===Ie))return;e.globalVersion=Ie;let t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!Ee(e))return void(e.flags&=-3);let n=r,a=Le;r=e,Le=!0;try{Ce(e);let n=e.fn(e._value);(0===t.version||K(n,e._value))&&(e._value=n,t.version++)}catch(e){throw t.version++,e}finally{r=n,Le=a,Te(e,!0),e.flags&=-3}}function Ae(e,t=!1){let{dep:n,prevSub:a,nextSub:i}=e;if(a&&(a.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=a,e.nextSub=void 0),n.subs===e&&(n.subs=a),!n.subs)if(n.computed){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)Ae(e,!0)}else!n.map||t||(n.map.delete(n.key),n.map.size||qe.delete(n.target))}let Le=!0,Me=[];function Re(){Me.push(Le),Le=!1}function ze(){let e=Me.pop();Le=void 0===e||e}function Ne(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=r;r=void 0;try{t()}finally{r=e}}}let Ie=0;class Oe{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class De{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.target=void 0,this.map=void 0,this.key=void 0}track(e){if(!r||!Le||r===this.computed)return;let t=this.activeLink;if(void 0===t||t.sub!==r)t=this.activeLink=new Oe(r,this),r.deps?(t.prevDep=r.depsTail,r.depsTail.nextDep=t,r.depsTail=t):r.deps=r.depsTail=t,4&r.flags&&function e(t){let n=t.dep.computed;if(n&&!t.dep.subs){n.flags|=20;for(let t=n.deps;t;t=t.nextDep)e(t)}let a=t.dep.subs;a!==t&&(t.prevSub=a,a&&(a.nextSub=t)),t.dep.subs=t}(t);else if(-1===t.version&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=r.depsTail,t.nextDep=void 0,r.depsTail.nextDep=t,r.depsTail=t,r.deps===t&&(r.deps=e)}return t}trigger(e){this.version++,Ie++,this.notify(e)}notify(e){ke++;try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{Se()}}}let qe=new WeakMap,je=Symbol(""),Be=Symbol(""),Fe=Symbol("");function $e(e,t,n){if(Le&&r){let t=qe.get(e);t||qe.set(e,t=new Map);let a=t.get(n);a||(t.set(n,a=new De),a.target=e,a.map=t,a.key=n),a.track()}}function Ve(e,t,n,a,i,r){let o=qe.get(e);if(!o)return void Ie++;let s=e=>{e&&e.trigger()};if(ke++,"clear"===t)o.forEach(s);else{let i=T(e),r=i&&j(n);if(i&&"length"===n){let e=Number(a);o.forEach(((t,n)=>{("length"===n||n===Fe||!R(n)&&n>=e)&&s(t)}))}else switch(void 0!==n&&s(o.get(n)),r&&s(o.get(Fe)),t){case"add":i?r&&s(o.get("length")):(s(o.get(je)),E(e)&&s(o.get(Be)));break;case"delete":!i&&(s(o.get(je)),E(e)&&s(o.get(Be)));break;case"set":E(e)&&s(o.get(je))}}Se()}function Ue(e){let t=$t(e);return t===e?t:($e(t,0,Fe),Bt(e)?t:t.map(Ut))}function He(e){return $e(e=$t(e),0,Fe),e}let We={__proto__:null,[Symbol.iterator](){return Ge(this,Symbol.iterator,Ut)},concat(...e){return Ue(this).concat(...e.map((e=>T(e)?Ue(e):e)))},entries(){return Ge(this,"entries",(e=>(e[1]=Ut(e[1]),e)))},every(e,t){return Ke(this,"every",e,t,void 0,arguments)},filter(e,t){return Ke(this,"filter",e,t,(e=>e.map(Ut)),arguments)},find(e,t){return Ke(this,"find",e,t,Ut,arguments)},findIndex(e,t){return Ke(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Ke(this,"findLast",e,t,Ut,arguments)},findLastIndex(e,t){return Ke(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Ke(this,"forEach",e,t,void 0,arguments)},includes(...e){return Ze(this,"includes",e)},indexOf(...e){return Ze(this,"indexOf",e)},join(e){return Ue(this).join(e)},lastIndexOf(...e){return Ze(this,"lastIndexOf",e)},map(e,t){return Ke(this,"map",e,t,void 0,arguments)},pop(){return Je(this,"pop")},push(...e){return Je(this,"push",e)},reduce(e,...t){return Qe(this,"reduce",e,t)},reduceRight(e,...t){return Qe(this,"reduceRight",e,t)},shift(){return Je(this,"shift")},some(e,t){return Ke(this,"some",e,t,void 0,arguments)},splice(...e){return Je(this,"splice",e)},toReversed(){return Ue(this).toReversed()},toSorted(e){return Ue(this).toSorted(e)},toSpliced(...e){return Ue(this).toSpliced(...e)},unshift(...e){return Je(this,"unshift",e)},values(){return Ge(this,"values",Ut)}};function Ge(e,t,n){let a=He(e),i=a[t]();return a===e||Bt(e)||(i._next=i.next,i.next=()=>{let e=i._next();return e.value&&(e.value=n(e.value)),e}),i}let Ye=Array.prototype;function Ke(e,t,n,a,i,r){let o=He(e),s=o!==e&&!Bt(e),l=o[t];if(l!==Ye[t]){let t=l.apply(e,r);return s?Ut(t):t}let u=n;o!==e&&(s?u=function(t,a){return n.call(this,Ut(t),a,e)}:n.length>2&&(u=function(t,a){return n.call(this,t,a,e)}));let c=l.call(o,u,a);return s&&i?i(c):c}function Qe(e,t,n,a){let i=He(e),r=n;return i!==e&&(Bt(e)?n.length>3&&(r=function(t,a,i){return n.call(this,t,a,i,e)}):r=function(t,a,i){return n.call(this,t,Ut(a),i,e)}),i[t](r,...a)}function Ze(e,t,n){let a=$t(e);$e(a,0,Fe);let i=a[t](...n);return-1!==i&&!1!==i||!Ft(n[0])?i:(n[0]=$t(n[0]),a[t](...n))}function Je(e,t,n=[]){Re(),ke++;let a=$t(e)[t].apply(e,n);return Se(),ze(),a}let Xe=m("__proto__,__v_isRef,__isVue"),et=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(R));function tt(e){R(e)||(e=String(e));let t=$t(this);return $e(t,0,e),t.hasOwnProperty(e)}class nt{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){let a=this._isReadonly,i=this._isShallow;if("__v_isReactive"===t)return!a;if("__v_isReadonly"===t)return a;if("__v_isShallow"===t)return i;if("__v_raw"===t)return n===(a?i?zt:Rt:i?Mt:Lt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let r=T(e);if(!a){let e;if(r&&(e=We[t]))return e;if("hasOwnProperty"===t)return tt}let o=Reflect.get(e,t,Wt(e)?e:n);return(R(t)?et.has(t):Xe(t))?o:(a||$e(e,0,t),i?o:Wt(o)?r&&j(t)?o:o.value:z(o)?a?Ot(o):Nt(o):o)}}class at extends nt{constructor(e=!1){super(!1,e)}set(e,t,n,a){let i=e[t];if(!this._isShallow){let t=jt(i);if(Bt(n)||jt(n)||(i=$t(i),n=$t(n)),!T(e)&&Wt(i)&&!Wt(n))return!t&&(i.value=n,!0)}let r=T(e)&&j(t)?Number(t)e,ct=e=>Reflect.getPrototypeOf(e);function dt(e,t,n=!1,a=!1){let i=$t(e=e.__v_raw),r=$t(t);n||(K(t,r)&&$e(i,0,t),$e(i,0,r));let{has:o}=ct(i),s=a?ut:n?Ht:Ut;return o.call(i,t)?s(e.get(t)):o.call(i,r)?s(e.get(r)):void(e!==i&&e.get(t))}function ht(e,t=!1){let n=this.__v_raw,a=$t(n),i=$t(e);return t||(K(e,i)&&$e(a,0,e),$e(a,0,i)),e===i?n.has(e):n.has(e)||n.has(i)}function pt(e,t=!1){return e=e.__v_raw,t||$e($t(e),0,je),Reflect.get(e,"size",e)}function ft(e,t=!1){t||Bt(e)||jt(e)||(e=$t(e));let n=$t(this);return ct(n).has.call(n,e)||(n.add(e),Ve(n,"add",e,e)),this}function mt(e,t,n=!1){n||Bt(t)||jt(t)||(t=$t(t));let a=$t(this),{has:i,get:r}=ct(a),o=i.call(a,e);o||(e=$t(e),o=i.call(a,e));let s=r.call(a,e);return a.set(e,t),o?K(t,s)&&Ve(a,"set",e,t):Ve(a,"add",e,t),this}function gt(e){let t=$t(this),{has:n,get:a}=ct(t),i=n.call(t,e);i||(e=$t(e),i=n.call(t,e)),a&&a.call(t,e);let r=t.delete(e);return i&&Ve(t,"delete",e,void 0),r}function _t(){let e=$t(this),t=0!==e.size,n=e.clear();return t&&Ve(e,"clear",void 0,void 0),n}function vt(e,t){return function(n,a){let i=this,r=i.__v_raw,o=$t(r),s=t?ut:e?Ht:Ut;return e||$e(o,0,je),r.forEach(((e,t)=>n.call(a,s(e),s(t),i)))}}function bt(e,t,n){return function(...a){let i=this.__v_raw,r=$t(i),o=E(r),s="entries"===e||e===Symbol.iterator&&o,l=i[e](...a),u=n?ut:t?Ht:Ut;return t||$e(r,0,"keys"===e&&o?Be:je),{next(){let{value:e,done:t}=l.next();return t?{value:e,done:t}:{value:s?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function yt(e){return function(...t){return"delete"!==e&&("clear"===e?void 0:this)}}let[wt,kt,xt,St]=function(){let e={get(e){return dt(this,e)},get size(){return pt(this)},has:ht,add:ft,set:mt,delete:gt,clear:_t,forEach:vt(!1,!1)},t={get(e){return dt(this,e,!1,!0)},get size(){return pt(this)},has:ht,add(e){return ft.call(this,e,!0)},set(e,t){return mt.call(this,e,t,!0)},delete:gt,clear:_t,forEach:vt(!1,!0)},n={get(e){return dt(this,e,!0)},get size(){return pt(this,!0)},has(e){return ht.call(this,e,!0)},add:yt("add"),set:yt("set"),delete:yt("delete"),clear:yt("clear"),forEach:vt(!0,!1)},a={get(e){return dt(this,e,!0,!0)},get size(){return pt(this,!0)},has(e){return ht.call(this,e,!0)},add:yt("add"),set:yt("set"),delete:yt("delete"),clear:yt("clear"),forEach:vt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((i=>{e[i]=bt(i,!1,!1),n[i]=bt(i,!0,!1),t[i]=bt(i,!1,!0),a[i]=bt(i,!0,!0)})),[e,n,t,a]}();function Ct(e,t){let n=t?e?St:xt:e?kt:wt;return(t,a,i)=>"__v_isReactive"===a?!e:"__v_isReadonly"===a?e:"__v_raw"===a?t:Reflect.get(C(n,a)&&a in t?n:t,a,i)}let Tt={get:Ct(!1,!1)},Et={get:Ct(!1,!0)},Pt={get:Ct(!0,!1)},At={get:Ct(!0,!0)},Lt=new WeakMap,Mt=new WeakMap,Rt=new WeakMap,zt=new WeakMap;function Nt(e){return jt(e)?e:Dt(e,!1,rt,Tt,Lt)}function It(e){return Dt(e,!1,st,Et,Mt)}function Ot(e){return Dt(e,!0,ot,Pt,Rt)}function Dt(e,t,n,a,i){if(!z(e)||e.__v_raw&&(!t||!e.__v_isReactive))return e;let r=i.get(e);if(r)return r;let o=e.__v_skip||!Object.isExtensible(e)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}(D(e));if(0===o)return e;let s=new Proxy(e,2===o?a:n);return i.set(e,s),s}function qt(e){return jt(e)?qt(e.__v_raw):!(!e||!e.__v_isReactive)}function jt(e){return!(!e||!e.__v_isReadonly)}function Bt(e){return!(!e||!e.__v_isShallow)}function Ft(e){return!!e&&!!e.__v_raw}function $t(e){let t=e&&e.__v_raw;return t?$t(t):e}function Vt(e){return!C(e,"__v_skip")&&Object.isExtensible(e)&&Z(e,"__v_skip",!0),e}let Ut=e=>z(e)?Nt(e):e,Ht=e=>z(e)?Ot(e):e;function Wt(e){return!!e&&!0===e.__v_isRef}function Gt(e){return Kt(e,!1)}function Yt(e){return Kt(e,!0)}function Kt(e,t){return Wt(e)?e:new Qt(e,t)}class Qt{constructor(e,t){this.dep=new De,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:$t(e),this._value=t?e:Ut(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||Bt(e)||jt(e);K(e=n?e:$t(e),t)&&(this._rawValue=e,this._value=n?e:Ut(e),this.dep.trigger())}}function Zt(e){return Wt(e)?e.value:e}let Jt={get:(e,t,n)=>"__v_raw"===t?e:Zt(Reflect.get(e,t,n)),set:(e,t,n,a)=>{let i=e[t];return Wt(i)&&!Wt(n)?(i.value=n,!0):Reflect.set(e,t,n,a)}};function Xt(e){return qt(e)?e:new Proxy(e,Jt)}class en{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new De,{get:n,set:a}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=a}get value(){return this._value=this._get()}set value(e){this._set(e)}}function tn(e){return new en(e)}class nn{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0}get value(){let e=this._object[this._key];return this._value=void 0===e?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){var e,t,n;return e=$t(this._object),t=this._key,null==(n=qe.get(e))?void 0:n.get(t)}}class an{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function rn(e,t,n){let a=e[t];return Wt(a)?a:new nn(e,t,n)}class on{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new De(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ie-1,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(8&this.flags)&&r!==this)return xe(this),!0}get value(){let e=this.dep.track();return Pe(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}let sn={},ln=new WeakMap;function un(e,t=!1,n=p){if(n){let t=ln.get(n);t||ln.set(n,t=[]),t.push(e)}}function cn(e,t=1/0,n){if(t<=0||!z(e)||e.__v_skip||(n=n||new Set).has(e))return e;if(n.add(e),t--,Wt(e))cn(e.value,t,n);else if(T(e))for(let a=0;a{cn(e,t,n)}));else if(q(e)){for(let a in e)cn(e[a],t,n);for(let a of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,a)&&cn(e[a],t,n)}return e}function dn(e,t,n,a){try{return a?e(...a):e()}catch(e){pn(e,t,n)}}function hn(e,t,n,a){if(L(e)){let i=dn(e,t,n,a);return i&&N(i)&&i.catch((e=>{pn(e,t,n)})),i}if(T(e)){let i=[];for(let r=0;r=An(n)?gn.push(e):gn.splice(function(e){let t=fn?_n+1:0,n=gn.length;for(;t>>1,i=gn[a],r=An(i);rAn(e)-An(t)));if(vn.length=0,bn)return void bn.push(...e);for(yn=0,bn=e;ynnull==e.id?2&e.flags?-1:1/0:e.id,Ln=null,Mn=null;function Rn(e){let t=Ln;return Ln=e,Mn=e&&e.type.__scopeId||null,t}function zn(e,t=Ln,n){if(!t||e._n)return e;let a=(...n)=>{let i;a._d&&sr(-1);let r=Rn(t);try{i=e(...n)}finally{Rn(r),a._d&&sr(1)}return i};return a._n=!0,a._c=!0,a._d=!0,a}function Nn(e,t,n,a){let i=e.dirs,r=t&&t.dirs;for(let o=0;oe.__isTeleport,Dn=e=>e&&(e.disabled||""===e.disabled),qn=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,jn=e=>"function"==typeof MathMLElement&&e instanceof MathMLElement,Bn=(e,t)=>{let n=e&&e.to;return M(n)?t?t(n):null:n};function Fn(e,t,n,{o:{insert:a},m:i},r=2){0===r&&a(e.targetAnchor,t,n);let{el:o,anchor:s,shapeFlag:l,children:u,props:c}=e,d=2===r;if(d&&a(o,t,n),(!d||Dn(c))&&16&l)for(let e=0;e{e.isMounted=!0})),La((()=>{e.isUnmounting=!0})),e}let Gn=[Function,Array],Yn={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Gn,onEnter:Gn,onAfterEnter:Gn,onEnterCancelled:Gn,onBeforeLeave:Gn,onLeave:Gn,onAfterLeave:Gn,onLeaveCancelled:Gn,onBeforeAppear:Gn,onAppear:Gn,onAfterAppear:Gn,onAppearCancelled:Gn},Kn=e=>{let t=e.subTree;return t.component?Kn(t.component):t};function Qn(e){let t=e[0];if(e.length>1)for(let n of e)if(n.type!==er){t=n;break}return t}let Zn={name:"BaseTransition",props:Yn,setup(e,{slots:t}){let n=Er(),a=Wn();return()=>{let i=t.default&&aa(t.default(),!0);if(!i||!i.length)return;let r=Qn(i),o=$t(e),{mode:s}=o;if(a.isLeaving)return ea(r);let l=ta(r);if(!l)return ea(r);let u=Xn(l,o,a,n,(e=>u=e));l.type!==er&&na(l,u);let c=n.subTree,d=c&&ta(c);if(d&&d.type!==er&&!dr(l,d)&&Kn(n).type!==er){let e=Xn(d,o,a,n);if(na(d,e),"out-in"===s&&l.type!==er)return a.isLeaving=!0,e.afterLeave=()=>{a.isLeaving=!1,8&n.job.flags||n.update(),delete e.afterLeave},ea(r);"in-out"===s&&l.type!==er&&(e.delayLeave=(e,t,n)=>{Jn(a,d)[String(d.key)]=d,e[Un]=()=>{t(),e[Un]=void 0,delete u.delayedLeave},u.delayedLeave=n})}return r}}};function Jn(e,t){let{leavingVNodes:n}=e,a=n.get(t.type);return a||(a=Object.create(null),n.set(t.type,a)),a}function Xn(e,t,n,a,i){let{appear:r,mode:o,persisted:s=!1,onBeforeEnter:l,onEnter:u,onAfterEnter:c,onEnterCancelled:d,onBeforeLeave:h,onLeave:p,onAfterLeave:f,onLeaveCancelled:m,onBeforeAppear:g,onAppear:_,onAfterAppear:v,onAppearCancelled:b}=t,y=String(e.key),w=Jn(n,e),k=(e,t)=>{e&&hn(e,a,9,t)},x=(e,t)=>{let n=t[1];k(e,t),T(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},S={mode:o,persisted:s,beforeEnter(t){let a=l;if(!n.isMounted){if(!r)return;a=g||l}t[Un]&&t[Un](!0);let i=w[y];i&&dr(e,i)&&i.el[Un]&&i.el[Un](),k(a,[t])},enter(e){let t=u,a=c,i=d;if(!n.isMounted){if(!r)return;t=_||u,a=v||c,i=b||d}let o=!1,s=e[Hn]=t=>{o||(o=!0,k(t?i:a,[e]),S.delayedLeave&&S.delayedLeave(),e[Hn]=void 0)};t?x(t,[e,s]):s()},leave(t,a){let i=String(e.key);if(t[Hn]&&t[Hn](!0),n.isUnmounting)return a();k(h,[t]);let r=!1,o=t[Un]=n=>{r||(r=!0,a(),k(n?m:f,[t]),t[Un]=void 0,w[i]!==e||delete w[i])};w[i]=e,p?x(p,[t,o]):o()},clone(e){let r=Xn(e,t,n,a,i);return i&&i(r),r}};return S}function ea(e){if(_a(e))return(e=_r(e)).children=null,e}function ta(e){if(!_a(e))return On(e.type)&&e.children?Qn(e.children):e;let{shapeFlag:t,children:n}=e;if(n){if(16&t)return n[0];if(32&t&&L(n.default))return n.default()}}function na(e,t){6&e.shapeFlag&&e.component?(e.transition=t,na(e.component.subTree,t)):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function aa(e,t=!1,n){let a=[],i=0;for(let r=0;r1)for(let e=0;eoa(e,t&&(T(t)?t[r]:t),n,a,i)));if(ma(a)&&!i)return;let r=4&a.shapeFlag?Dr(a.component):a.el,o=i?null:r,{i:s,r:l}=e,u=t&&t.r,c=s.refs===g?s.refs={}:s.refs,d=s.setupState,h=$t(d),p=d===g?()=>!1:e=>C(h,e);if(null!=u&&u!==l&&(M(u)?(c[u]=null,p(u)&&(d[u]=null)):Wt(u)&&(u.value=null)),L(l))dn(l,s,12,[o,c]);else{let t=M(l),a=Wt(l);if(t||a){let s=()=>{if(e.f){let n=t?p(l)?d[l]:c[l]:l.value;i?T(n)&&x(n,r):T(n)?n.includes(r)||n.push(r):t?(c[l]=[r],p(l)&&(d[l]=c[l])):(l.value=[r],e.k&&(c[e.k]=l.value))}else t?(c[l]=o,p(l)&&(d[l]=o)):a&&(l.value=o,e.k&&(c[e.k]=o))};o?(s.id=-1,xi(s,n)):s()}}}let sa=!1,la=()=>{sa||(console.error("Hydration completed but contains mismatches."),sa=!0)},ua=e=>{if(1===e.nodeType){if((e=>e.namespaceURI.includes("svg")&&"foreignObject"!==e.tagName)(e))return"svg";if((e=>e.namespaceURI.includes("MathML"))(e))return"mathml"}},ca=e=>8===e.nodeType;function da(e){let{mt:t,p:n,o:{patchProp:a,createText:i,nextSibling:r,parentNode:o,remove:s,insert:l,createComment:u}}=e,c=(n,a,s,u,v,b=!1)=>{b=b||!!a.dynamicChildren;let y=ca(n)&&"["===n.data,w=()=>f(n,a,s,u,v,y),{type:k,ref:x,shapeFlag:S,patchFlag:C}=a,T=n.nodeType;a.el=n,-2===C&&(b=!1,a.dynamicChildren=null);let E=null;switch(k){case Xi:3!==T?""===a.children?(l(a.el=i(""),o(n),n),E=n):E=w():(n.data!==a.children&&(la(),n.data=a.children),E=r(n));break;case er:_(n)?(E=r(n),g(a.el=n.content.firstChild,n,s)):E=8!==T||y?w():r(n);break;case tr:if(y&&(T=(n=r(n)).nodeType),1===T||3===T){E=n;let e=!a.children.length;for(let t=0;t{o=o||!!t.dynamicChildren;let{type:l,props:u,patchFlag:c,shapeFlag:d,dirs:p,transition:f}=t,m="input"===l||"option"===l;if(m||-1!==c){let l;p&&Nn(t,null,n,"created");let v=!1;if(_(e)){v=Pi(i,f)&&n&&n.vnode.props&&n.vnode.props.appear;let a=e.content.firstChild;v&&f.beforeEnter(a),g(a,e,n),t.el=e=a}if(16&d&&(!u||!u.innerHTML&&!u.textContent)){let a=h(e.firstChild,t,e,n,i,r,o);for(;a;){fa(e,1)||la();let t=a;a=a.nextSibling,s(t)}}else if(8&d){let n=t.children;"\n"===n[0]&&("PRE"===e.tagName||"TEXTAREA"===e.tagName)&&(n=n.slice(1)),e.textContent!==n&&(fa(e,0)||la(),e.textContent=t.children)}if(u)if(m||!o||48&c){let t=e.tagName.includes("-");for(let i in u)(m&&(i.endsWith("value")||"indeterminate"===i)||y(i)&&!B(i)||"."===i[0]||t)&&a(e,i,null,u[i],void 0,n)}else if(u.onClick)a(e,"onClick",null,u.onClick,void 0,n);else if(4&c&&qt(u.style))for(let e in u.style)u.style[e];(l=u&&u.onVnodeBeforeMount)&&xr(l,n,t),p&&Nn(t,null,n,"beforeMount"),((l=u&&u.onVnodeMounted)||p||v)&&Qi((()=>{l&&xr(l,n,t),v&&f.enter(e),p&&Nn(t,null,n,"mounted")}),i)}return e.nextSibling},h=(e,t,a,o,s,u,d)=>{d=d||!!t.dynamicChildren;let h=t.children,p=h.length;for(let t=0;t{let{slotScopeIds:c}=t;c&&(i=i?i.concat(c):c);let d=o(e),p=h(r(e),t,d,n,a,i,s);return p&&ca(p)&&"]"===p.data?r(t.anchor=p):(la(),l(t.anchor=u("]"),d,p),p)},f=(e,t,a,i,l,u)=>{if(fa(e.parentElement,1)||la(),t.el=null,u){let t=m(e);for(;;){let n=r(e);if(!n||n===t)break;s(n)}}let c=r(e),d=o(e);return s(e),n(null,t,d,c,a,i,ua(d),l),c},m=(e,t="[",n="]")=>{let a=0;for(;e;)if((e=r(e))&&ca(e)&&(e.data===t&&a++,e.data===n)){if(0===a)return r(e);a--}return e},g=(e,t,n)=>{let a=t.parentNode;a&&a.replaceChild(e,t);let i=n;for(;i;)i.vnode.el===t&&(i.vnode.el=i.subTree.el=e),i=i.parent},_=e=>1===e.nodeType&&"TEMPLATE"===e.tagName;return[(e,t)=>{if(!t.hasChildNodes())return n(null,e,t),Pn(),void(t._vnode=e);c(t.firstChild,e,null,null,null),Pn(),t._vnode=e},c]}let ha="data-allow-mismatch",pa={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function fa(e,t){if(0===t||1===t)for(;e&&!e.hasAttribute(ha);)e=e.parentElement;let n=e&&e.getAttribute(ha);if(null==n)return!1;if(""===n)return!0;{let e=n.split(",");return!(0!==t||!e.includes("children"))||n.split(",").includes(pa[t])}}let ma=e=>!!e.type.__asyncLoader;function ga(e,t){let{ref:n,props:a,children:i,ce:r}=t.vnode,o=mr(e,a,i);return o.ref=n,o.ce=r,delete t.vnode.ce,o}let _a=e=>e.type.__isKeepAlive;function va(e,t){return T(e)?e.some((e=>va(e,t))):M(e)?e.split(",").includes(t):!!(e=>"[object RegExp]"===O(e))(e)&&(e.lastIndex=0,e.test(t))}function ba(e,t){wa(e,"a",t)}function ya(e,t){wa(e,"da",t)}function wa(e,t,n=Tr){let a=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(Sa(t,a,n),n){let e=n.parent;for(;e&&e.parent;)_a(e.parent.vnode)&&function(e,t,n,a){let i=Sa(t,e,a,!0);Ma((()=>{x(a[t],i)}),n)}(a,t,n,e),e=e.parent}}function ka(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function xa(e){return 128&e.shapeFlag?e.ssContent:e}function Sa(e,t,n=Tr,a=!1){if(n){let i=n[e]||(n[e]=[]),r=t.__weh||(t.__weh=(...a)=>{Re();let i=Pr(n),r=hn(t,n,e,a);return i(),ze(),r});return a?i.unshift(r):i.push(r),r}}let Ca=e=>(t,n=Tr)=>{Mr&&"sp"!==e||Sa(e,((...e)=>t(...e)),n)},Ta=Ca("bm"),Ea=Ca("m"),Pa=Ca("bu"),Aa=Ca("u"),La=Ca("bum"),Ma=Ca("um"),Ra=Ca("sp"),za=Ca("rtg"),Na=Ca("rtc");function Ia(e,t=Tr){Sa("ec",e,t)}let Oa="components",Da=Symbol.for("v-ndc");function qa(e,t,n=!0,a=!1){let i=Ln||Tr;if(i){let n=i.type;if(e===Oa){let e=qr(n,!1);if(e&&(e===t||e===U(t)||e===G(U(t))))return n}let r=ja(i[e]||n[e],t)||ja(i.appContext[e],t);return!r&&a?n:r}}function ja(e,t){return e&&(e[t]||e[U(t)]||e[G(U(t))])}let Ba=e=>e?Lr(e)?Dr(e):Ba(e.parent):null,Fa=k(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=>Ba(e.parent),$root:e=>Ba(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ka(e),$forceUpdate:e=>e.f||(e.f=()=>{Sn(e.update)}),$nextTick:e=>e.n||(e.n=xn.bind(e.proxy)),$watch:e=>Ii.bind(e)}),$a=(e,t)=>e!==g&&!e.__isScriptSetup&&C(e,t),Va={get({_:e},t){let n,a,i;if("__v_skip"===t)return!0;let{ctx:r,setupState:o,data:s,props:l,accessCache:u,type:c,appContext:d}=e;if("$"!==t[0]){let a=u[t];if(void 0!==a)switch(a){case 1:return o[t];case 2:return s[t];case 4:return r[t];case 3:return l[t]}else{if($a(o,t))return u[t]=1,o[t];if(s!==g&&C(s,t))return u[t]=2,s[t];if((n=e.propsOptions[0])&&C(n,t))return u[t]=3,l[t];if(r!==g&&C(r,t))return u[t]=4,r[t];Ga&&(u[t]=0)}}let h=Fa[t];return h?("$attrs"===t&&$e(e.attrs,0,""),h(e)):(a=c.__cssModules)&&(a=a[t])?a:r!==g&&C(r,t)?(u[t]=4,r[t]):C(i=d.config.globalProperties,t)?i[t]:void 0},set({_:e},t,n){let{data:a,setupState:i,ctx:r}=e;return $a(i,t)?(i[t]=n,!0):a!==g&&C(a,t)?(a[t]=n,!0):!(C(e.props,t)||"$"===t[0]&&t.slice(1)in e||(r[t]=n,0))},has({_:{data:e,setupState:t,accessCache:n,ctx:a,appContext:i,propsOptions:r}},o){let s;return!!n[o]||e!==g&&C(e,o)||$a(t,o)||(s=r[0])&&C(s,o)||C(a,o)||C(Fa,o)||C(i.config.globalProperties,o)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:C(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},Ua=k({},Va,{get(e,t){if(t!==Symbol.unscopables)return Va.get(e,t,e)},has:(e,t)=>"_"!==t[0]&&!te(t)});function Ha(){let e=Er();return e.setupContext||(e.setupContext=Or(e))}function Wa(e){return T(e)?e.reduce(((e,t)=>(e[t]=null,e)),{}):e}let Ga=!0;function Ya(e,t,n){hn(T(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function Ka(e){let t,n=e.type,{mixins:a,extends:i}=n,{mixins:r,optionsCache:o,config:{optionMergeStrategies:s}}=e.appContext,l=o.get(n);return l?t=l:r.length||a||i?(t={},r.length&&r.forEach((e=>Qa(t,e,s,!0))),Qa(t,n,s)):t=n,z(n)&&o.set(n,t),t}function Qa(e,t,n,a=!1){let{mixins:i,extends:r}=t;for(let o in r&&Qa(e,r,n,!0),i&&i.forEach((t=>Qa(e,t,n,!0))),t)if(a&&"expose"===o);else{let a=Za[o]||n&&n[o];e[o]=a?a(e[o],t[o]):t[o]}return e}let Za={data:Ja,props:ni,emits:ni,methods:ti,computed:ti,beforeCreate:ei,created:ei,beforeMount:ei,mounted:ei,beforeUpdate:ei,updated:ei,beforeDestroy:ei,beforeUnmount:ei,destroyed:ei,unmounted:ei,activated:ei,deactivated:ei,errorCaptured:ei,serverPrefetch:ei,components:ti,directives:ti,watch:function(e,t){if(!e)return t;if(!t)return e;let n=k(Object.create(null),e);for(let a in t)n[a]=ei(e[a],t[a]);return n},provide:Ja,inject:function(e,t){return ti(Xa(e),Xa(t))}};function Ja(e,t){return t?e?function(){return k(L(e)?e.call(this,this):e,L(t)?t.call(this,this):t)}:t:e}function Xa(e){if(T(e)){let t={};for(let n=0;n1)return n&&L(t)?t.call(a&&a.proxy):t}}let li={},ui=()=>Object.create(li),ci=e=>Object.getPrototypeOf(e)===li;function di(e,t,n,a){let i,[r,o]=e.propsOptions,s=!1;if(t)for(let l in t){let u;if(B(l))continue;let c=t[l];r&&C(r,u=U(l))?o&&o.includes(u)?(i||(i={}))[u]=c:n[u]=c:ji(e.emitsOptions,l)||l in a&&c===a[l]||(a[l]=c,s=!0)}if(o){let t=$t(n),a=i||g;for(let i=0;i"_"===e[0]||"$stable"===e,gi=e=>T(e)?e.map(br):[br(e)],_i=(e,t,n)=>{if(t._n)return t;let a=zn(((...e)=>gi(t(...e))),n);return a._c=!1,a},vi=(e,t,n)=>{let a=e._ctx;for(let n in e){if(mi(n))continue;let i=e[n];if(L(i))t[n]=_i(0,i,a);else if(null!=i){let e=gi(i);t[n]=()=>e}}},bi=(e,t)=>{let n=gi(t);e.slots.default=()=>n},yi=(e,t,n)=>{for(let a in t)(n||"_"!==a)&&(e[a]=t[a])},wi=(e,t,n)=>{let a=e.slots=ui();if(32&e.vnode.shapeFlag){let e=t._;e?(yi(a,t,n),n&&Z(a,"_",e,!0)):vi(t,a)}else t&&bi(e,t)},ki=(e,t,n)=>{let{vnode:a,slots:i}=e,r=!0,o=g;if(32&a.shapeFlag){let e=t._;e?n&&1===e?r=!1:yi(i,t,n):(r=!t.$stable,vi(t,i)),o=t}else t&&(bi(e,t),o={default:1});if(r)for(let e in i)mi(e)||null!=o[e]||delete i[e]},xi=Qi;function Si(e){return Ci(e,da)}function Ci(e,t){var n;let a,i;ee().__VUE__=!0;let{insert:r,remove:o,patchProp:s,createElement:u,createText:c,createComment:d,setText:h,setElementText:p,parentNode:f,nextSibling:m,setScopeId:b=v,insertStaticContent:y}=e,w=(e,t,n,a=null,i=null,r=null,o,s=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!dr(e,t)&&(a=ie(e),J(e,i,r,!0),e=null),-2===t.patchFlag&&(l=!1,t.dynamicChildren=null);let{type:u,ref:c,shapeFlag:d}=t;switch(u){case Xi:x(e,t,n,a);break;case er:S(e,t,n,a);break;case tr:null==e&&E(t,n,a,o);break;case Ji:q(e,t,n,a,i,r,o,s,l);break;default:1&d?P(e,t,n,a,i,r,o,s,l):6&d?j(e,t,n,a,i,r,o,s,l):(64&d||128&d)&&u.process(e,t,n,a,i,r,o,s,l,se)}null!=c&&i&&oa(c,e&&e.ref,r,t||e,!t)},x=(e,t,n,a)=>{if(null==e)r(t.el=c(t.children),n,a);else{let n=t.el=e.el;t.children!==e.children&&h(n,t.children)}},S=(e,t,n,a)=>{null==e?r(t.el=d(t.children||""),n,a):t.el=e.el},E=(e,t,n,a)=>{[e.el,e.anchor]=y(e.children,t,n,a,e.el,e.anchor)},P=(e,t,n,a,i,r,o,s,l)=>{"svg"===t.type?o="svg":"math"===t.type&&(o="mathml"),null==e?A(t,n,a,i,r,o,s,l):I(e,t,i,r,o,s,l)},A=(e,t,n,a,i,o,l,c)=>{let d,h,{props:f,shapeFlag:m,transition:g,dirs:_}=e;if(d=e.el=u(e.type,o,f&&f.is,f),8&m?p(d,e.children):16&m&&R(e.children,d,null,a,i,Ti(e,o),l,c),_&&Nn(e,null,a,"created"),M(d,e,e.scopeId,l,a),f){for(let e in f)"value"===e||B(e)||s(d,e,null,f[e],o,a);"value"in f&&s(d,"value",null,f.value,o),(h=f.onVnodeBeforeMount)&&xr(h,a,e)}_&&Nn(e,null,a,"beforeMount");let v=Pi(i,g);v&&g.beforeEnter(d),r(d,t,n),((h=f&&f.onVnodeMounted)||v||_)&&xi((()=>{h&&xr(h,a,e),v&&g.enter(d),_&&Nn(e,null,a,"mounted")}),i)},M=(e,t,n,a,i)=>{if(n&&b(e,n),a)for(let t=0;t{for(let u=l;u{let l,u=t.el=e.el,{patchFlag:c,dynamicChildren:d,dirs:h}=t;c|=16&e.patchFlag;let f=e.props||g,m=t.props||g;if(n&&Ei(n,!1),(l=m.onVnodeBeforeUpdate)&&xr(l,n,t,e),h&&Nn(t,e,n,"beforeUpdate"),n&&Ei(n,!0),(f.innerHTML&&null==m.innerHTML||f.textContent&&null==m.textContent)&&p(u,""),d?O(e.dynamicChildren,d,u,n,a,Ti(t,i),r):o||G(e,t,u,null,n,a,Ti(t,i),r,!1),c>0){if(16&c)D(u,f,m,n,i);else if(2&c&&f.class!==m.class&&s(u,"class",null,m.class,i),4&c&&s(u,"style",f.style,m.style,i),8&c){let e=t.dynamicProps;for(let t=0;t{l&&xr(l,n,t,e),h&&Nn(t,e,n,"updated")}),a)},O=(e,t,n,a,i,r,o)=>{for(let s=0;s{if(t!==n){if(t!==g)for(let r in t)B(r)||r in n||s(e,r,t[r],null,i,a);for(let r in n){if(B(r))continue;let o=n[r],l=t[r];o!==l&&"value"!==r&&s(e,r,l,o,i,a)}"value"in n&&s(e,"value",t.value,n.value,i)}},q=(e,t,n,a,i,o,s,l,u)=>{let d=t.el=e?e.el:c(""),h=t.anchor=e?e.anchor:c(""),{patchFlag:p,dynamicChildren:f,slotScopeIds:m}=t;m&&(l=l?l.concat(m):m),null==e?(r(d,n,a),r(h,n,a),R(t.children||[],n,h,i,o,s,l,u)):p>0&&64&p&&f&&e.dynamicChildren?(O(e.dynamicChildren,f,n,i,o,s,l),(null!=t.key||i&&t===i.subTree)&&Ai(e,t,!0)):G(e,t,n,h,i,o,s,l,u)},j=(e,t,n,a,i,r,o,s,l)=>{t.slotScopeIds=s,null==e?512&t.shapeFlag?i.ctx.activate(t,n,a,o,l):F(t,n,a,i,r,o,l):$(e,t,l)},F=(e,t,n,a,i,r,o)=>{let s=e.component=function(e,t,n){let a=e.type,i=(t?t.appContext:e.appContext)||Sr,r={uid:Cr++,vnode:e,type:a,parent:t,appContext:i,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new be(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(i.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:function e(t,n,a=!1){let i=a?pi:n.propsCache,r=i.get(t);if(r)return r;let o=t.props,s={},l=[],u=!1;if(!L(t)){let i=t=>{u=!0;let[a,i]=e(t,n,!0);k(s,a),i&&l.push(...i)};!a&&n.mixins.length&&n.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}if(!o&&!u)return z(t)&&i.set(t,_),_;if(T(o))for(let e=0;e{let a=e(t,n,!0);a&&(l=!0,k(s,a))};!a&&n.mixins.length&&n.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}return o||l?(T(o)?o.forEach((e=>s[e]=null)):k(s,o),z(t)&&i.set(t,s),s):(z(t)&&i.set(t,null),null)}(a,i),emit:null,emitted:null,propsDefaults:g,inheritAttrs:a.inheritAttrs,ctx:g,data:g,props:g,attrs:g,slots:g,refs:g,setupState:g,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return r.ctx={_:r},r.root=t?t.root:r,r.emit=qi.bind(null,r),e.ce&&e.ce(r),r}(e,a,i);_a(e)&&(s.ctx.renderer=se),function(e,t=!1,n=!1){t&&l(t);let{props:a,children:i}=e.vnode,r=Lr(e);(function(e,t,n,a=!1){let i={},r=ui();for(let n in e.propsDefaults=Object.create(null),di(e,t,i,r),e.propsOptions[0])n in i||(i[n]=void 0);n?e.props=a?i:It(i):e.type.props?e.props=i:e.props=r,e.attrs=r})(e,a,r,t),wi(e,i,n),r&&function(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Va);let{setup:a}=n;if(a){let n=e.setupContext=a.length>1?Or(e):null,i=Pr(e);Re();let r=dn(a,e,0,[e.props,n]);if(ze(),i(),N(r)){if(ma(e)||ra(e),r.then(Ar,Ar),t)return r.then((n=>{Rr(e,n,t)})).catch((t=>{pn(t,e,0)}));e.asyncDep=r}else Rr(e,r,t)}else Nr(e,t)}(e,t),t&&l(!1)}(s,!1,o),s.asyncDep?(i&&i.registerDep(s,V,o),e.el||S(null,s.subTree=mr(er),t,n)):V(s,e,t,n,i,r,o)},$=(e,t,n)=>{let a=t.component=e.component;if(function(e,t,n){let{props:a,children:i,component:r}=e,{props:o,children:s,patchFlag:l}=t,u=r.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&l>=0))return(!!i||!!s)&&(!s||!s.$stable)||a!==o&&(a?!o||Vi(a,o,u):!!o);if(1024&l)return!0;if(16&l)return a?Vi(a,o,u):!!o;if(8&l){let e=t.dynamicProps;for(let t=0;t{let l=()=>{if(e.isMounted){let t,{next:n,bu:a,u:i,parent:u,vnode:c}=e;{let t=function e(t){let n=t.subTree.component;if(n)return n.asyncDep&&!n.asyncResolved?n:e(n)}(e);if(t)return n&&(n.el=c.el,H(e,n,s)),void t.asyncDep.then((()=>{e.isUnmounted||l()}))}let d=n;Ei(e,!1),n?(n.el=c.el,H(e,n,s)):n=c,a&&Q(a),(t=n.props&&n.props.onVnodeBeforeUpdate)&&xr(t,u,n,c),Ei(e,!0);let h=Bi(e),p=e.subTree;e.subTree=h,w(p,h,f(p.el),ie(p),e,r,o),n.el=h.el,null===d&&Ui(e,h.el),i&&xi(i,r),(t=n.props&&n.props.onVnodeUpdated)&&xi((()=>xr(t,u,n,c)),r)}else{let s,{el:l,props:u}=t,{bm:c,m:d,parent:h,root:p,type:f}=e,m=ma(t);if(Ei(e,!1),c&&Q(c),!m&&(s=u&&u.onVnodeBeforeMount)&&xr(s,h,t),Ei(e,!0),l&&i){let t=()=>{e.subTree=Bi(e),i(l,e.subTree,e,r,null)};m&&f.__asyncHydrate?f.__asyncHydrate(l,e,t):t()}else{p.ce&&p.ce._injectChildStyle(f);let i=e.subTree=Bi(e);w(null,i,n,a,e,r,o),t.el=i.el}if(d&&xi(d,r),!m&&(s=u&&u.onVnodeMounted)){let e=t;xi((()=>xr(s,h,e)),r)}(256&t.shapeFlag||h&&ma(h.vnode)&&256&h.vnode.shapeFlag)&&e.a&&xi(e.a,r),e.isMounted=!0,t=n=a=null}};e.scope.on();let u=e.effect=new we(l);e.scope.off();let c=e.update=u.run.bind(u),d=e.job=u.runIfDirty.bind(u);d.i=e,d.id=e.uid,u.scheduler=()=>Sn(d),Ei(e,!0),c()},H=(e,t,n)=>{t.component=e;let a=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,a){let{props:i,attrs:r,vnode:{patchFlag:o}}=e,s=$t(i),[l]=e.propsOptions,u=!1;if(!(a||o>0)||16&o){let a;for(let o in di(e,t,i,r)&&(u=!0),s)t&&(C(t,o)||(a=W(o))!==o&&C(t,a))||(l?n&&(void 0!==n[o]||void 0!==n[a])&&(i[o]=hi(l,s,o,void 0,e,!0)):delete i[o]);if(r!==s)for(let e in r)t&&C(t,e)||(delete r[e],u=!0)}else if(8&o){let n=e.vnode.dynamicProps;for(let a=0;a{let u=e&&e.children,c=e?e.shapeFlag:0,d=t.children,{patchFlag:h,shapeFlag:f}=t;if(h>0){if(128&h)return void K(u,d,n,a,i,r,o,s,l);if(256&h)return void Y(u,d,n,a,i,r,o,s,l)}8&f?(16&c&&ae(u,i,r),d!==u&&p(n,d)):16&c?16&f?K(u,d,n,a,i,r,o,s,l):ae(u,i,r,!0):(8&c&&p(n,""),16&f&&R(d,n,a,i,r,o,s,l))},Y=(e,t,n,a,i,r,o,s,l)=>{let u;t=t||_;let c=(e=e||_).length,d=t.length,h=Math.min(c,d);for(u=0;ud?ae(e,i,r,!0,!1,h):R(t,n,a,i,r,o,s,l,h)},K=(e,t,n,a,i,r,o,s,l)=>{let u=0,c=t.length,d=e.length-1,h=c-1;for(;u<=d&&u<=h;){let a=e[u],c=t[u]=l?yr(t[u]):br(t[u]);if(!dr(a,c))break;w(a,c,n,null,i,r,o,s,l),u++}for(;u<=d&&u<=h;){let a=e[d],u=t[h]=l?yr(t[h]):br(t[h]);if(!dr(a,u))break;w(a,u,n,null,i,r,o,s,l),d--,h--}if(u>d){if(u<=h){let e=h+1,d=eh)for(;u<=d;)J(e[u],i,r,!0),u++;else{let p,f=u,m=u,g=new Map;for(u=m;u<=h;u++){let e=t[u]=l?yr(t[u]):br(t[u]);null!=e.key&&g.set(e.key,u)}let v=0,b=h-m+1,y=!1,k=0,x=Array(b);for(u=0;u=b)J(c,i,r,!0);else{if(null!=c.key)a=g.get(c.key);else for(p=m;p<=h;p++)if(0===x[p-m]&&dr(c,t[p])){a=p;break}void 0===a?J(c,i,r,!0):(x[a-m]=u+1,a>=k?k=a:y=!0,w(c,t[a],n,null,i,r,o,s,l),v++)}}let S=y?function(e){let t,n,a,i,r,o=e.slice(),s=[0],l=e.length;for(t=0;t>1]]0&&(o[t]=s[a-1]),s[a]=t)}}for(a=s.length,i=s[a-1];a-- >0;)s[a]=i,i=o[i];return s}(x):_;for(p=S.length-1,u=b-1;u>=0;u--){let e=m+u,d=t[e],h=e+1{let{el:o,type:s,transition:l,children:u,shapeFlag:c}=e;if(6&c)Z(e.component.subTree,t,n,a);else if(128&c)e.suspense.move(t,n,a);else if(64&c)s.move(e,t,n,se);else if(s!==Ji)if(s!==tr)if(2!==a&&1&c&&l)if(0===a)l.beforeEnter(o),r(o,t,n),xi((()=>l.enter(o)),i);else{let{leave:e,delayLeave:a,afterLeave:i}=l,s=()=>r(o,t,n),u=()=>{e(o,(()=>{s(),i&&i()}))};a?a(o,s,u):u()}else r(o,t,n);else(({el:e,anchor:t},n,a)=>{let i;for(;e&&e!==t;)i=m(e),r(e,n,a),e=i;r(t,n,a)})(e,t,n);else{r(o,t,n);for(let e=0;e{let r,{type:o,props:s,ref:l,children:u,dynamicChildren:c,shapeFlag:d,patchFlag:h,dirs:p,cacheIndex:f}=e;if(-2===h&&(i=!1),null!=l&&oa(l,null,n,e,!0),null!=f&&(t.renderCache[f]=void 0),256&d)return void t.ctx.deactivate(e);let m=1&d&&p,g=!ma(e);if(g&&(r=s&&s.onVnodeBeforeUnmount)&&xr(r,t,e),6&d)ne(e.component,n,a);else{if(128&d)return void e.suspense.unmount(n,a);m&&Nn(e,null,t,"beforeUnmount"),64&d?e.type.remove(e,t,n,se,a):c&&!c.hasOnce&&(o!==Ji||h>0&&64&h)?ae(c,t,n,!1,!0):(o===Ji&&384&h||!i&&16&d)&&ae(u,t,n),a&&X(e)}(g&&(r=s&&s.onVnodeUnmounted)||m)&&xi((()=>{r&&xr(r,t,e),m&&Nn(e,null,t,"unmounted")}),n)},X=e=>{let{type:t,el:n,anchor:a,transition:i}=e;if(t===Ji)return void te(n,a);if(t===tr)return void(({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=m(e),o(e),e=n;o(t)})(e);let r=()=>{o(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(1&e.shapeFlag&&i&&!i.persisted){let{leave:t,delayLeave:a}=i,o=()=>t(n,r);a?a(e.el,r,o):o()}else r()},te=(e,t)=>{let n;for(;e!==t;)n=m(e),o(e),e=n;o(t)},ne=(e,t,n)=>{let{bum:a,scope:i,job:r,subTree:o,um:s,m:l,a:u}=e;Li(l),Li(u),a&&Q(a),i.stop(),r&&(r.flags|=8,J(o,e,t,n)),s&&xi(s,t),xi((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},ae=(e,t,n,a=!1,i=!1,r=0)=>{for(let o=r;o{if(6&e.shapeFlag)return ie(e.component.subTree);if(128&e.shapeFlag)return e.suspense.next();let t=m(e.anchor||e.el),n=t&&t[In];return n?m(n):t},re=!1,oe=(e,t,n)=>{null==e?t._vnode&&J(t._vnode,null,null,!0):w(t._vnode||null,e,t,null,null,null,n),t._vnode=e,re||(re=!0,En(),Pn(),re=!1)},se={p:w,um:J,m:Z,r:X,mt:F,mc:R,pc:G,pbc:O,n:ie,o:e};return t&&([a,i]=t(se)),{render:oe,hydrate:a,createApp:(n=a,function(e,t=null){L(e)||(e=k({},e)),null==t||z(t)||(t=null);let a=ai(),i=new WeakSet,r=[],o=!1,s=a.app={_uid:ii++,_component:e,_props:t,_container:null,_context:a,_instance:null,version:$r,get config(){return a.config},set config(e){},use:(e,...t)=>(i.has(e)||(e&&L(e.install)?(i.add(e),e.install(s,...t)):L(e)&&(i.add(e),e(s,...t))),s),mixin:e=>(a.mixins.includes(e)||a.mixins.push(e),s),component:(e,t)=>t?(a.components[e]=t,s):a.components[e],directive:(e,t)=>t?(a.directives[e]=t,s):a.directives[e],mount(i,r,l){if(!o){let u=s._ceVNode||mr(e,t);return u.appContext=a,!0===l?l="svg":!1===l&&(l=void 0),r&&n?n(u,i):oe(u,i,l),o=!0,s._container=i,i.__vue_app__=s,Dr(u.component)}},onUnmount(e){r.push(e)},unmount(){o&&(hn(r,s._instance,16),oe(null,s._container),delete s._container.__vue_app__)},provide:(e,t)=>(a.provides[e]=t,s),runWithContext(e){let t=ri;ri=s;try{return e()}finally{ri=t}}};return s})}}function Ti({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Ei({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Pi(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ai(e,t,n=!1){let a=e.children,i=t.children;if(T(a)&&T(i))for(let e=0;ehn(e,u,t,n);let c=!1;return"post"===o?l.scheduler=e=>{xi(e,u&&u.suspense)}:"sync"!==o&&(c=!0,l.scheduler=(e,t)=>{t?e():Sn(e)}),l.augmentJob=e=>{t&&(e.flags|=4),c&&(e.flags|=2,u&&(e.id=u.uid,e.i=u))},function(e,t,n=g){let a,r,o,s,{immediate:l,deep:u,once:c,scheduler:d,augmentJob:h,call:f}=n,m=e=>u?e:Bt(e)||!1===u||0===u?cn(e,1):cn(e),_=!1,b=!1;if(Wt(e)?(r=()=>e.value,_=Bt(e)):qt(e)?(r=()=>m(e),_=!0):T(e)?(b=!0,_=e.some((e=>qt(e)||Bt(e))),r=()=>e.map((e=>Wt(e)?e.value:qt(e)?m(e):L(e)?f?f(e,2):e():void 0))):r=L(e)?t?f?()=>f(e,2):e:()=>{if(o){Re();try{o()}finally{ze()}}let t=p;p=a;try{return f?f(e,3,[s]):e(s)}finally{p=t}}:v,t&&u){let e=r,t=!0===u?1/0:u;r=()=>cn(e(),t)}let y=i,w=()=>{a.stop(),y&&x(y.effects,a)};if(c&&t){let e=t;t=(...t)=>{e(...t),w()}}let k=b?Array(e.length).fill(sn):sn,S=e=>{if(1&a.flags&&(a.dirty||e))if(t){let e=a.run();if(u||_||(b?e.some(((e,t)=>K(e,k[t]))):K(e,k))){o&&o();let n=p;p=a;try{let n=[e,k===sn?void 0:b&&k[0]===sn?[]:k,s];f?f(t,3,n):t(...n),k=e}finally{p=n}}}else a.run()};return h&&h(S),(a=new we(r)).scheduler=d?()=>d(S,!1):S,s=e=>un(e,!1,a),o=a.onStop=()=>{let e=ln.get(a);if(e){if(f)f(e,4);else for(let t of e)t();ln.delete(a)}},t?l?S(!0):k=a.run():d?d(S.bind(null,!0),!0):a.run(),w.pause=a.pause.bind(a),w.resume=a.resume.bind(a),w.stop=w,w}(e,t,l)}function Ii(e,t,n){let a,i=this.proxy,r=M(e)?e.includes(".")?Oi(i,e):()=>i[e]:e.bind(i,i);L(t)?a=t:(a=t.handler,n=t);let o=Pr(this),s=Ni(r,a.bind(i),n);return o(),s}function Oi(e,t){let n=t.split(".");return()=>{let t=e;for(let e=0;e"modelValue"===t||"model-value"===t?e.modelModifiers:e[`${t}Modifiers`]||e[`${U(t)}Modifiers`]||e[`${W(t)}Modifiers`];function qi(e,t,...n){let a;if(e.isUnmounted)return;let i=e.vnode.props||g,r=n,o=t.startsWith("update:"),s=o&&Di(i,t.slice(7));s&&(s.trim&&(r=n.map((e=>M(e)?e.trim():e))),s.number&&(r=n.map(J)));let l=i[a=Y(t)]||i[a=Y(U(t))];!l&&o&&(l=i[a=Y(W(t))]),l&&hn(l,e,6,r);let u=i[a+"Once"];if(u){if(e.emitted){if(e.emitted[a])return}else e.emitted={};e.emitted[a]=!0,hn(u,e,6,r)}}function ji(e,t){return!(!e||!y(t))&&(C(e,(t=t.slice(2).replace(/Once$/,""))[0].toLowerCase()+t.slice(1))||C(e,W(t))||C(e,t))}function Bi(e){let t,n,{type:a,vnode:i,proxy:r,withProxy:o,propsOptions:[s],slots:l,attrs:u,emit:c,render:d,renderCache:h,props:p,data:f,setupState:m,ctx:g,inheritAttrs:_}=e,v=Rn(e);try{if(4&i.shapeFlag){let e=o||r;t=br(d.call(e,e,h,p,m,f,g)),n=u}else t=br(a.length>1?a(p,{attrs:u,slots:l,emit:c}):a(p,null)),n=a.props?u:Fi(u)}catch(n){nr.length=0,pn(n,e,1),t=mr(er)}let b=t;if(n&&!1!==_){let e=Object.keys(n),{shapeFlag:t}=b;e.length&&7&t&&(s&&e.some(w)&&(n=$i(n,s)),b=_r(b,n,!1,!0))}return i.dirs&&((b=_r(b,null,!1,!0)).dirs=b.dirs?b.dirs.concat(i.dirs):i.dirs),i.transition&&na(b,i.transition),t=b,Rn(v),t}let Fi=e=>{let t;for(let n in e)("class"===n||"style"===n||y(n))&&((t||(t={}))[n]=e[n]);return t},$i=(e,t)=>{let n={};for(let a in e)w(a)&&a.slice(9)in t||(n[a]=e[a]);return n};function Vi(e,t,n){let a=Object.keys(t);if(a.length!==Object.keys(e).length)return!0;for(let i=0;ie.__isSuspense,Wi=0;function Gi(e,t){let n=e.props&&e.props[t];L(n)&&n()}function Yi(e,t,n,a,i,r,o,s,l,u,c=!1){let d,{p:h,m:p,um:f,n:m,o:{parentNode:g,remove:_}}=u,v=function(e){let t=e.props&&e.props.suspensible;return null!=t&&!1!==t}(e);v&&t&&t.pendingBranch&&(d=t.pendingId,t.deps++);let b=e.props?X(e.props.timeout):void 0,y=r,w={vnode:e,parent:t,parentComponent:n,namespace:o,container:a,hiddenContainer:i,deps:0,pendingId:Wi++,timeout:"number"==typeof b?b:-1,activeBranch:null,pendingBranch:null,isInFallback:!c,isHydrating:c,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){let{vnode:a,activeBranch:i,pendingBranch:o,pendingId:s,effects:l,parentComponent:u,container:c}=w,h=!1;w.isHydrating?w.isHydrating=!1:e||((h=i&&o.transition&&"out-in"===o.transition.mode)&&(i.transition.afterLeave=()=>{s===w.pendingId&&(p(o,c,r===y?m(i):r,0),Tn(l))}),i&&(g(i.el)===c&&(r=m(i)),f(i,u,w,!0)),h||p(o,c,r,0)),Zi(w,o),w.pendingBranch=null,w.isInFallback=!1;let _=w.parent,b=!1;for(;_;){if(_.pendingBranch){_.effects.push(...l),b=!0;break}_=_.parent}b||h||Tn(l),w.effects=[],v&&t&&t.pendingBranch&&d===t.pendingId&&(t.deps--,0!==t.deps||n||t.resolve()),Gi(a,"onResolve")},fallback(e){if(!w.pendingBranch)return;let{vnode:t,activeBranch:n,parentComponent:a,container:i,namespace:r}=w;Gi(t,"onFallback");let o=m(n),u=()=>{w.isInFallback&&(h(null,e,i,o,a,null,r,s,l),Zi(w,e))},c=e.transition&&"out-in"===e.transition.mode;c&&(n.transition.afterLeave=u),w.isInFallback=!0,f(n,a,null,!0),c||u()},move(e,t,n){w.activeBranch&&p(w.activeBranch,e,t,n),w.container=e},next:()=>w.activeBranch&&m(w.activeBranch),registerDep(e,t,n){let a=!!w.pendingBranch;a&&w.deps++;let i=e.vnode.el;e.asyncDep.catch((t=>{pn(t,e,0)})).then((r=>{if(e.isUnmounted||w.isUnmounted||w.pendingId!==e.suspenseId)return;e.asyncResolved=!0;let{vnode:s}=e;Rr(e,r,!1),i&&(s.el=i);let l=!i&&e.subTree.el;t(e,s,g(i||e.subTree.el),i?null:m(e.subTree),w,o,n),l&&_(l),Ui(e,s.el),a&&0==--w.deps&&w.resolve()}))},unmount(e,t){w.isUnmounted=!0,w.activeBranch&&f(w.activeBranch,n,e,t),w.pendingBranch&&f(w.pendingBranch,n,e,t)}};return w}function Ki(e){let t;if(L(e)){let n=or&&e._c;n&&(e._d=!1,ir()),e=e(),n&&(e._d=!0,t=ar,rr())}return T(e)&&(e=function(e){let t;for(let n=0;nt!==e))),e}function Qi(e,t){t&&t.pendingBranch?T(e)?t.effects.push(...e):t.effects.push(e):Tn(e)}function Zi(e,t){e.activeBranch=t;let{vnode:n,parentComponent:a}=e,i=t.el;for(;!i&&t.component;)i=(t=t.component.subTree).el;n.el=i,a&&a.subTree===n&&(a.vnode.el=i,Ui(a,i))}let Ji=Symbol.for("v-fgt"),Xi=Symbol.for("v-txt"),er=Symbol.for("v-cmt"),tr=Symbol.for("v-stc"),nr=[],ar=null;function ir(e=!1){nr.push(ar=e?null:[])}function rr(){nr.pop(),ar=nr[nr.length-1]||null}let or=1;function sr(e){or+=e,e<0&&ar&&(ar.hasOnce=!0)}function lr(e){return e.dynamicChildren=or>0?ar||_:null,rr(),or>0&&ar&&ar.push(e),e}function ur(e,t,n,a,i){return lr(mr(e,t,n,a,i,!0))}function cr(e){return!!e&&!0===e.__v_isVNode}function dr(e,t){return e.type===t.type&&e.key===t.key}let hr=({key:e})=>null!=e?e:null,pr=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?M(e)||Wt(e)||L(e)?{i:Ln,r:e,k:t,f:!!n}:e:null);function fr(e,t=null,n=null,a=0,i=null,r=(e===Ji?0:1),o=!1,s=!1){let l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&hr(t),ref:t&&pr(t),scopeId:Mn,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:r,patchFlag:a,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:Ln};return s?(wr(l,n),128&r&&e.normalize(l)):n&&(l.shapeFlag|=M(n)?8:16),or>0&&!o&&ar&&(l.patchFlag>0||6&r)&&32!==l.patchFlag&&ar.push(l),l}let mr=function(e,t=null,n=null,a=0,i=null,r=!1){var o;if(e&&e!==Da||(e=er),cr(e)){let a=_r(e,t,!0);return n&&wr(a,n),or>0&&!r&&ar&&(6&a.shapeFlag?ar[ar.indexOf(e)]=a:ar.push(a)),a.patchFlag=-2,a}if(L(o=e)&&"__vccOpts"in o&&(e=e.__vccOpts),t){let{class:e,style:n}=t=gr(t);e&&!M(e)&&(t.class=se(e)),z(n)&&(Ft(n)&&!T(n)&&(n=k({},n)),t.style=ne(n))}return fr(e,t,n,a,i,M(e)?1:Hi(e)?128:On(e)?64:z(e)?4:L(e)?2:0,r,!0)};function gr(e){return e?Ft(e)||ci(e)?k({},e):e:null}function _r(e,t,n=!1,a=!1){let{props:i,ref:r,patchFlag:o,children:s,transition:l}=e,u=t?kr(i||{},t):i,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&hr(u),ref:t&&t.ref?n&&r?T(r)?r.concat(pr(t)):[r,pr(t)]:pr(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ji?-1===o?16:16|o:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&_r(e.ssContent),ssFallback:e.ssFallback&&_r(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&a&&na(c,l.clone(c)),c}function vr(e=" ",t=0){return mr(Xi,null,e,t)}function br(e){return null==e||"boolean"==typeof e?mr(er):T(e)?mr(Ji,null,e.slice()):"object"==typeof e?yr(e):mr(Xi,null,String(e))}function yr(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:_r(e)}function wr(e,t){let n=0,{shapeFlag:a}=e;if(null==t)t=null;else if(T(t))n=16;else if("object"==typeof t){if(65&a){let n=t.default;return void(n&&(n._c&&(n._d=!1),wr(e,n()),n._c&&(n._d=!0)))}{n=32;let a=t._;a||ci(t)?3===a&&Ln&&(1===Ln.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=Ln}}else L(t)?(t={default:t,_ctx:Ln},n=32):(t=String(t),64&a?(n=16,t=[vr(t)]):n=8);e.children=t,e.shapeFlag|=n}function kr(...e){let t={};for(let n=0;nTr||Ln;s=e=>{Tr=e},l=e=>{Mr=e};let Pr=e=>{let t=Tr;return s(e),e.scope.on(),()=>{e.scope.off(),s(t)}},Ar=()=>{Tr&&Tr.scope.off(),s(null)};function Lr(e){return 4&e.vnode.shapeFlag}let Mr=!1;function Rr(e,t,n){L(t)?e.render=t:z(t)&&(e.setupState=Xt(t)),Nr(e,n)}function zr(e){u=e,c=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,Ua))}}function Nr(e,t,n){let a=e.type;if(!e.render){if(!t&&u&&!a.render){let t=a.template||Ka(e).template;if(t){let{isCustomElement:n,compilerOptions:i}=e.appContext.config,{delimiters:r,compilerOptions:o}=a,s=k(k({isCustomElement:n,delimiters:r},i),o);a.render=u(t,s)}}e.render=a.render||v,c&&c(e)}{let t=Pr(e);Re();try{!function(e){let t=Ka(e),n=e.proxy,a=e.ctx;Ga=!1,t.beforeCreate&&Ya(t.beforeCreate,e,"bc");let{data:i,computed:r,methods:o,watch:s,provide:l,inject:u,created:c,beforeMount:d,mounted:h,beforeUpdate:p,updated:f,activated:m,deactivated:g,beforeDestroy:_,beforeUnmount:b,destroyed:y,unmounted:w,render:k,renderTracked:x,renderTriggered:S,errorCaptured:C,serverPrefetch:E,expose:P,inheritAttrs:A,components:R,directives:N,filters:I}=t;if(u&&function(e,t){for(let n in T(e)&&(e=Xa(e)),e){let a,i=e[n];Wt(a=z(i)?"default"in i?si(i.from||n,i.default,!0):si(i.from||n):si(i))?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e}):t[n]=a}}(u,a,null),o)for(let e in o){let t=o[e];L(t)&&(a[e]=t.bind(n))}if(i){let t=i.call(n,n);z(t)&&(e.data=Nt(t))}if(Ga=!0,r)for(let e in r){let t=r[e],i=L(t)?t.bind(n,n):L(t.get)?t.get.bind(n,n):v,o=jr({get:i,set:!L(t)&&L(t.set)?t.set.bind(n):v});Object.defineProperty(a,e,{enumerable:!0,configurable:!0,get:()=>o.value,set:e=>o.value=e})}if(s)for(let e in s)!function e(t,n,a,i){let r=i.includes(".")?Oi(a,i):()=>a[i];if(M(t)){let e=n[t];L(e)&&Ni(r,e,void 0)}else if(L(t)){Ni(r,t.bind(a),void 0)}else if(z(t))if(T(t))t.forEach((t=>e(t,n,a,i)));else{let e=L(t.handler)?t.handler.bind(a):n[t.handler];L(e)&&Ni(r,e,t)}}(s[e],a,n,e);if(l){let e=L(l)?l.call(n):l;Reflect.ownKeys(e).forEach((t=>{oi(t,e[t])}))}function O(e,t){T(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(c&&Ya(c,e,"c"),O(Ta,d),O(Ea,h),O(Pa,p),O(Aa,f),O(ba,m),O(ya,g),O(Ia,C),O(Na,x),O(za,S),O(La,b),O(Ma,w),O(Ra,E),T(P))if(P.length){let t=e.exposed||(e.exposed={});P.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});k&&e.render===v&&(e.render=k),null!=A&&(e.inheritAttrs=A),R&&(e.components=R),N&&(e.directives=N)}(e)}finally{ze(),t()}}}let Ir={get:(e,t)=>($e(e,0,""),e[t])};function Or(e){return{attrs:new Proxy(e.attrs,Ir),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function Dr(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Xt(Vt(e.exposed)),{get:(t,n)=>n in t?t[n]:n in Fa?Fa[n](e):void 0,has:(e,t)=>t in e||t in Fa})):e.proxy}function qr(e,t=!0){return L(e)?e.displayName||e.name:e.name||t&&e.__name}let jr=(e,t)=>function(e,t,n=!1){let a,i;return L(e)?a=e:(a=e.get,i=e.set),new on(a,i,n)}(e,0,Mr);function Br(e,t,n){let a=arguments.length;return 2!==a?(a>3?n=Array.prototype.slice.call(arguments,2):3===a&&cr(n)&&(n=[n]),mr(e,t,n)):!z(t)||T(t)?mr(e,null,t):cr(t)?mr(e,null,[t]):mr(e,t)}function Fr(e,t){let n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&ar&&ar.push(e),!0}let $r="3.5.8",Vr="undefined"!=typeof window&&window.trustedTypes;if(Vr)try{f=Vr.createPolicy("vue",{createHTML:e=>e})}catch(e){}let Ur=f?e=>f.createHTML(e):e=>e,Hr="undefined"!=typeof document?document:null,Wr=Hr&&Hr.createElement("template"),Gr="transition",Yr="animation",Kr=Symbol("_vtc"),Qr={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},Zr=k({},Yn,Qr),Jr=((t=(e,{slots:t})=>Br(Zn,to(e),t)).displayName="Transition",t.props=Zr,t),Xr=(e,t=[])=>{T(e)?e.forEach((e=>e(...t))):e&&e(...t)},eo=e=>!!e&&(T(e)?e.some((e=>e.length>1)):e.length>1);function to(e){let t={};for(let n in e)n in Qr||(t[n]=e[n]);if(!1===e.css)return t;let{name:n="v",type:a,duration:i,enterFromClass:r=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:l=r,appearActiveClass:u=o,appearToClass:c=s,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,f=function(e){if(null==e)return null;if(z(e))return[X(e.enter),X(e.leave)];{let t=X(e);return[t,t]}}(i),m=f&&f[0],g=f&&f[1],{onBeforeEnter:_,onEnter:v,onEnterCancelled:b,onLeave:y,onLeaveCancelled:w,onBeforeAppear:x=_,onAppear:S=v,onAppearCancelled:C=b}=t,T=(e,t,n)=>{ao(e,t?c:s),ao(e,t?u:o),n&&n()},E=(e,t)=>{e._isLeaving=!1,ao(e,d),ao(e,p),ao(e,h),t&&t()},P=e=>(t,n)=>{let i=e?S:v,o=()=>T(t,e,n);Xr(i,[t,o]),io((()=>{ao(t,e?l:r),no(t,e?c:s),eo(i)||oo(t,a,m,o)}))};return k(t,{onBeforeEnter(e){Xr(_,[e]),no(e,r),no(e,o)},onBeforeAppear(e){Xr(x,[e]),no(e,l),no(e,u)},onEnter:P(!1),onAppear:P(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>E(e,t);no(e,d),no(e,h),co(),io((()=>{e._isLeaving&&(ao(e,d),no(e,p),eo(y)||oo(e,a,g,n))})),Xr(y,[e,n])},onEnterCancelled(e){T(e,!1),Xr(b,[e])},onAppearCancelled(e){T(e,!0),Xr(C,[e])},onLeaveCancelled(e){E(e),Xr(w,[e])}})}function no(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e[Kr]||(e[Kr]=new Set)).add(t)}function ao(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));let n=e[Kr];n&&(n.delete(t),n.size||(e[Kr]=void 0))}function io(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let ro=0;function oo(e,t,n,a){let i=e._endId=++ro,r=()=>{i===e._endId&&a()};if(null!=n)return setTimeout(r,n);let{type:o,timeout:s,propCount:l}=so(e,t);if(!o)return a();let u=o+"end",c=0,d=()=>{e.removeEventListener(u,h),r()},h=t=>{t.target===e&&++c>=l&&d()};setTimeout((()=>{c(n[e]||"").split(", "),i=a(`${Gr}Delay`),r=a(`${Gr}Duration`),o=lo(i,r),s=a(`${Yr}Delay`),l=a(`${Yr}Duration`),u=lo(s,l),c=null,d=0,h=0;return t===Gr?o>0&&(c=Gr,d=o,h=r.length):t===Yr?u>0&&(c=Yr,d=u,h=l.length):h=(c=(d=Math.max(o,u))>0?o>u?Gr:Yr:null)?c===Gr?r.length:l.length:0,{type:c,timeout:d,propCount:h,hasTransform:c===Gr&&/\b(transform|all)(,|$)/.test(a(`${Gr}Property`).toString())}}function lo(e,t){for(;e.lengthuo(t)+uo(e[n]))))}function uo(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}function co(){return document.body.offsetHeight}let ho=Symbol("_vod"),po=Symbol("_vsh");function fo(e,t){e.style.display=t?e[ho]:"none",e[po]=!t}let mo=Symbol("");function go(e,t){if(1===e.nodeType){let n=e.style,a="";for(let e in t)n.setProperty(`--${e}`,t[e]),a+=`--${e}: ${t[e]};`;n[mo]=a}}let _o=/(^|;)\s*display\s*:/,vo=/\s*!important$/;function bo(e,t,n){if(T(n))n.forEach((n=>bo(e,t,n)));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{let a=function(e,t){let n=wo[t];if(n)return n;let a=U(t);if("filter"!==a&&a in e)return wo[t]=a;a=G(a);for(let n=0;n111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&123>e.charCodeAt(2),Lo={};/*! #__NO_SIDE_EFFECTS__ */function Mo(e,t,n){let a=ia(e,t);q(a)&&k(a,t);class i extends zo{constructor(e){super(a,e,n)}}return i.def=a,i}let Ro="undefined"!=typeof HTMLElement?HTMLElement:class{};class zo extends Ro{constructor(e,t={},n=us){super(),this._def=e,this._props=t,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&n!==us?this._root=this.shadowRoot:!1!==e.shadowRoot?(this.attachShadow({mode:"open"}),this._root=this.shadowRoot):this._root=this,this._def.__asyncLoader||this._resolveProps(this._def)}connectedCallback(){if(!this.isConnected)return;this.shadowRoot||this._parseSlots(),this._connected=!0;let e=this;for(;e=e&&(e.parentNode||e.host);)if(e instanceof zo){this._parent=e;break}this._instance||(this._resolved?(this._setParent(),this._update()):e&&e._pendingResolve?this._pendingResolve=e._pendingResolve.then((()=>{this._pendingResolve=void 0,this._resolveDef()})):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._instance.provides=e._instance.provides)}disconnectedCallback(){this._connected=!1,xn((()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null)}))}_resolveDef(){if(this._pendingResolve)return;for(let e=0;e{for(let t of e)this._setAttr(t.attributeName)})),this._ob.observe(this,{attributes:!0});let e=(e,t=!1)=>{let n;this._resolved=!0,this._pendingResolve=void 0;let{props:a,styles:i}=e;if(a&&!T(a))for(let e in a){let t=a[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=X(this._props[e])),(n||(n=Object.create(null)))[U(e)]=!0)}this._numberProps=n,t&&this._resolveProps(e),this.shadowRoot&&this._applyStyles(i),this._mount(e)},t=this._def.__asyncLoader;t?this._pendingResolve=t().then((t=>e(this._def=t,!0))):e(this._def)}_mount(e){this._app=this._createApp(e),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);let t=this._instance&&this._instance.exposed;if(t)for(let e in t)C(this,e)||Object.defineProperty(this,e,{get:()=>Zt(t[e])})}_resolveProps(e){let{props:t}=e,n=T(t)?t:Object.keys(t||{});for(let e of Object.keys(this))"_"!==e[0]&&n.includes(e)&&this._setProp(e,this[e]);for(let e of n.map(U))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t,!0,!0)}})}_setAttr(e){if(e.startsWith("data-v-"))return;let t=this.hasAttribute(e),n=t?this.getAttribute(e):Lo,a=U(e);t&&this._numberProps&&this._numberProps[a]&&(n=X(n)),this._setProp(a,n,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,a=!1){t!==this._props[e]&&(t===Lo?delete this._props[e]:(this._props[e]=t,"key"===e&&this._app&&(this._app._ceVNode.key=t)),a&&this._instance&&this._update(),n&&(!0===t?this.setAttribute(W(e),""):"string"==typeof t||"number"==typeof t?this.setAttribute(W(e),t+""):t||this.removeAttribute(W(e))))}_update(){ls(this._createVNode(),this._root)}_createVNode(){let e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));let t=mr(this._def,k(e,this._props));return this._instance||(t.ce=e=>{this._instance=e,e.ce=this,e.isCE=!0;let t=(e,t)=>{this.dispatchEvent(new CustomEvent(e,q(t[0])?k({detail:t},t[0]):{detail:t}))};e.emit=(e,...n)=>{t(e,n),W(e)!==e&&t(W(e),n)},this._setParent()}),t}_applyStyles(e,t){if(!e)return;if(t){if(t===this._def||this._styleChildren.has(t))return;this._styleChildren.add(t)}let n=this._nonce;for(let t=e.length-1;t>=0;t--){let a=document.createElement("style");n&&a.setAttribute("nonce",n),a.textContent=e[t],this.shadowRoot.prepend(a)}}_parseSlots(){let e,t=this._slots={};for(;e=this.firstChild;){let n=1===e.nodeType&&e.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(e),this.removeChild(e)}}_renderSlots(){let e=(this._teleportTarget||this).querySelectorAll("slot"),t=this._instance.type.__scopeId;for(let n=0;n{if(!n.length)return;let t=e.moveClass||`${e.name||"v"}-move`;if(!function(e,t,n){let a=e.cloneNode(),i=e[Kr];i&&i.forEach((e=>{e.split(/\s+/).forEach((e=>e&&a.classList.remove(e)))})),n.split(/\s+/).forEach((e=>e&&a.classList.add(e))),a.style.display="none";let r=1===t.nodeType?t:t.parentNode;r.appendChild(a);let{hasTransform:o}=so(a);return r.removeChild(a),o}(n[0].el,i.vnode.el,t))return;n.forEach(Bo),n.forEach(Fo);let a=n.filter($o);co(),a.forEach((e=>{let n=e.el,a=n.style;no(n,t),a.transform=a.webkitTransform=a.transitionDuration="";let i=n[Do]=e=>{(!e||e.target===n)&&(!e||/transform$/.test(e.propertyName))&&(n.removeEventListener("transitionend",i),n[Do]=null,ao(n,t))};n.addEventListener("transitionend",i)}))})),()=>{let o=$t(e),s=to(o),l=o.tag||Ji;if(n=[],a)for(let e=0;e{let t=e.props["onUpdate:modelValue"]||!1;return T(t)?e=>Q(t,e):t};function Uo(e){e.target.composing=!0}function Ho(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}let Wo=Symbol("_assign"),Go={created(e,{modifiers:{lazy:t,trim:n,number:a}},i){e[Wo]=Vo(i);let r=a||i.props&&"number"===i.props.type;So(e,t?"change":"input",(t=>{if(t.target.composing)return;let a=e.value;n&&(a=a.trim()),r&&(a=J(a)),e[Wo](a)})),n&&So(e,"change",(()=>{e.value=e.value.trim()})),t||(So(e,"compositionstart",Uo),So(e,"compositionend",Ho),So(e,"change",Ho))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:a,trim:i,number:r}},o){if(e[Wo]=Vo(o),e.composing)return;let s=null==t?"":t;(!r&&"number"!==e.type||/^0\d/.test(e.value)?e.value:J(e.value))===s||document.activeElement===e&&"range"!==e.type&&(a&&t===n||i&&e.value.trim()===s)||(e.value=s)}},Yo={deep:!0,created(e,t,n){e[Wo]=Vo(n),So(e,"change",(()=>{let t=e._modelValue,n=Xo(e),a=e.checked,i=e[Wo];if(T(t)){let e=fe(t,n),r=-1!==e;if(a&&!r)i(t.concat(n));else if(!a&&r){let n=[...t];n.splice(e,1),i(n)}}else if(P(t)){let e=new Set(t);a?e.add(n):e.delete(n),i(e)}else i(es(e,a))}))},mounted:Ko,beforeUpdate(e,t,n){e[Wo]=Vo(n),Ko(e,t,n)}};function Ko(e,{value:t},n){let a;e._modelValue=t,a=T(t)?fe(t,n.props.value)>-1:P(t)?t.has(n.props.value):pe(t,es(e,!0)),e.checked!==a&&(e.checked=a)}let Qo={created(e,{value:t},n){e.checked=pe(t,n.props.value),e[Wo]=Vo(n),So(e,"change",(()=>{e[Wo](Xo(e))}))},beforeUpdate(e,{value:t,oldValue:n},a){e[Wo]=Vo(a),t!==n&&(e.checked=pe(t,a.props.value))}},Zo={deep:!0,created(e,{value:t,modifiers:{number:n}},a){let i=P(t);So(e,"change",(()=>{let t=Array.prototype.filter.call(e.options,(e=>e.selected)).map((e=>n?J(Xo(e)):Xo(e)));e[Wo](e.multiple?i?new Set(t):t:t[0]),e._assigning=!0,xn((()=>{e._assigning=!1}))})),e[Wo]=Vo(a)},mounted(e,{value:t}){Jo(e,t)},beforeUpdate(e,t,n){e[Wo]=Vo(n)},updated(e,{value:t}){e._assigning||Jo(e,t)}};function Jo(e,t,n){let a=e.multiple,i=T(t);if(!a||i||P(t)){for(let n=0,r=e.options.length;nString(e)===String(o))):fe(t,o)>-1}else r.selected=t.has(o);else if(pe(Xo(r),t))return void(e.selectedIndex!==n&&(e.selectedIndex=n))}a||-1===e.selectedIndex||(e.selectedIndex=-1)}}function Xo(e){return"_value"in e?e._value:e.value}function es(e,t){let n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}function ts(e,t,n,a,i){let r=function(e,t){switch(e){case"SELECT":return Zo;case"TEXTAREA":return Go;default:switch(t){case"checkbox":return Yo;case"radio":return Qo;default:return Go}}}(e.tagName,n.props&&n.props.type)[i];r&&r(e,t,n,a)}let ns=["ctrl","shift","alt","meta"],as={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>ns.some((n=>e[`${n}Key`]&&!t.includes(n)))},is={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},rs=k({patchProp:(e,t,n,a,i,r)=>{let o="svg"===i;"class"===t?function(e,t,n){let a=e[Kr];a&&(t=(t?[t,...a]:[...a]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,a,o):"style"===t?function(e,t,n){let a=e.style,i=M(n),r=!1;if(n&&!i){if(t)if(M(t))for(let e of t.split(";")){let t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&bo(a,t,"")}else for(let e in t)null==n[e]&&bo(a,e,"");for(let e in n)"display"===e&&(r=!0),bo(a,e,n[e])}else if(i){if(t!==n){let e=a[mo];e&&(n+=";"+e),a.cssText=n,r=_o.test(n)}}else t&&e.removeAttribute("style");ho in e&&(e[ho]=r?a.display:"",e[po]&&(a.display="none"))}(e,n,a):y(t)?w(t)||function(e,t,n,a,i=null){let r=e[Co]||(e[Co]={}),o=r[t];if(a&&o)o.value=a;else{let[n,s]=function(e){let t;if(To.test(e)){let n;for(t={};n=e.match(To);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[":"===e[2]?e.slice(3):W(e.slice(2)),t]}(t);a?So(e,n,r[t]=function(e,t){let n=e=>{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();hn(function(e,t){if(!T(t))return t;{let n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>t=>!t._stopped&&e&&e(t)))}}(e,n.value),t,5,[e])};return n.value=e,n.attached=Eo||(Po.then((()=>Eo=0)),Eo=Date.now()),n}(a,i),s):o&&(function(e,t,n,a){e.removeEventListener(t,n,a)}(e,n,o,s),r[t]=void 0)}}(e,t,0,a,r):("."===t[0]?(t=t.slice(1),0):"^"===t[0]?(t=t.slice(1),1):!function(e,t,n,a){if(a)return!!("innerHTML"===t||"textContent"===t||t in e&&Ao(t)&&L(n));if("spellcheck"===t||"draggable"===t||"translate"===t||"form"===t||"list"===t&&"INPUT"===e.tagName||"type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){let t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}return!(Ao(t)&&M(n)||!(t in e)&&(!e._isVueCE||!/[A-Z]/.test(t)&&M(n)))}(e,t,a,o))?("true-value"===t?e._trueValue=a:"false-value"===t&&(e._falseValue=a),xo(e,t,a,o)):(function(e,t,n){if("innerHTML"===t||"textContent"===t)return void(null!=n&&(e[t]="innerHTML"===t?Ur(n):n));let a=e.tagName;if("value"===t&&"PROGRESS"!==a&&!a.includes("-")){let i="OPTION"===a?e.getAttribute("value")||"":e.value,r=null==n?"checkbox"===e.type?"on":"":String(n);return i===r&&"_value"in e||(e.value=r),null==n&&e.removeAttribute(t),void(e._value=n)}let i=!1;if(""===n||null==n){let a=typeof e[t];var r;if("boolean"===a)n=!!(r=n)||""===r;else null==n&&"string"===a?(n="",i=!0):"number"===a&&(n=0,i=!0)}try{e[t]=n}catch(e){}i&&e.removeAttribute(t)}(e,t,a),e.tagName.includes("-")||"value"!==t&&"checked"!==t&&"selected"!==t||xo(e,t,a,o,0,"value"!==t))}},{insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,a)=>{let i="svg"===t?Hr.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?Hr.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?Hr.createElement(e,{is:n}):Hr.createElement(e);return"select"===e&&a&&null!=a.multiple&&i.setAttribute("multiple",a.multiple),i},createText:e=>Hr.createTextNode(e),createComment:e=>Hr.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Hr.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,a,i,r){let o=n?n.previousSibling:t.lastChild;if(i&&(i===r||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),i!==r&&(i=i.nextSibling););else{Wr.innerHTML=Ur("svg"===a?`${e}`:"mathml"===a?`${e}`:e);let i=Wr.content;if("svg"===a||"mathml"===a){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}}),os=!1;function ss(){return d=os?d:Si(rs),os=!0,d}let ls=(...e)=>{(d||(d=Ci(rs))).render(...e)},us=(...e)=>{let t=(d||(d=Ci(rs))).createApp(...e),{mount:n}=t;return t.mount=e=>{let a=hs(e);if(!a)return;let i=t._component;L(i)||i.render||i.template||(i.template=a.innerHTML),1===a.nodeType&&(a.textContent="");let r=n(a,!1,ds(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),r},t},cs=(...e)=>{let t=ss().createApp(...e),{mount:n}=t;return t.mount=e=>{let t=hs(e);if(t)return n(t,!0,ds(t))},t};function ds(e){return e instanceof SVGElement?"svg":"function"==typeof MathMLElement&&e instanceof MathMLElement?"mathml":void 0}function hs(e){return M(e)?document.querySelector(e):e}let ps=Symbol(""),fs=Symbol(""),ms=Symbol(""),gs=Symbol(""),_s=Symbol(""),vs=Symbol(""),bs=Symbol(""),ys=Symbol(""),ws=Symbol(""),ks=Symbol(""),xs=Symbol(""),Ss=Symbol(""),Cs=Symbol(""),Ts=Symbol(""),Es=Symbol(""),Ps=Symbol(""),As=Symbol(""),Ls=Symbol(""),Ms=Symbol(""),Rs=Symbol(""),zs=Symbol(""),Ns=Symbol(""),Is=Symbol(""),Os=Symbol(""),Ds=Symbol(""),qs=Symbol(""),js=Symbol(""),Bs=Symbol(""),Fs=Symbol(""),$s=Symbol(""),Vs=Symbol(""),Us=Symbol(""),Hs=Symbol(""),Ws=Symbol(""),Gs=Symbol(""),Ys=Symbol(""),Ks=Symbol(""),Qs=Symbol(""),Zs=Symbol(""),Js={[ps]:"Fragment",[fs]:"Teleport",[ms]:"Suspense",[gs]:"KeepAlive",[_s]:"BaseTransition",[vs]:"openBlock",[bs]:"createBlock",[ys]:"createElementBlock",[ws]:"createVNode",[ks]:"createElementVNode",[xs]:"createCommentVNode",[Ss]:"createTextVNode",[Cs]:"createStaticVNode",[Ts]:"resolveComponent",[Es]:"resolveDynamicComponent",[Ps]:"resolveDirective",[As]:"resolveFilter",[Ls]:"withDirectives",[Ms]:"renderList",[Rs]:"renderSlot",[zs]:"createSlots",[Ns]:"toDisplayString",[Is]:"mergeProps",[Os]:"normalizeClass",[Ds]:"normalizeStyle",[qs]:"normalizeProps",[js]:"guardReactiveProps",[Bs]:"toHandlers",[Fs]:"camelize",[$s]:"capitalize",[Vs]:"toHandlerKey",[Us]:"setBlockTracking",[Hs]:"pushScopeId",[Ws]:"popScopeId",[Gs]:"withCtx",[Ys]:"unref",[Ks]:"isRef",[Qs]:"withMemo",[Zs]:"isMemoSame"},Xs={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function el(e,t,n,a,i,r,o,s=!1,l=!1,u=!1,c=Xs){return e&&(s?(e.helper(vs),e.helper(e.inSSR||u?bs:ys)):e.helper(e.inSSR||u?ws:ks),o&&e.helper(Ls)),{type:13,tag:t,props:n,children:a,patchFlag:i,dynamicProps:r,directives:o,isBlock:s,disableTracking:l,isComponent:u,loc:c}}function tl(e,t=Xs){return{type:17,loc:t,elements:e}}function nl(e,t=Xs){return{type:15,loc:t,properties:e}}function al(e,t){return{type:16,loc:Xs,key:M(e)?il(e,!0):e,value:t}}function il(e,t=!1,n=Xs,a=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:a}}function rl(e,t=Xs){return{type:8,loc:t,children:e}}function ol(e,t=[],n=Xs){return{type:14,loc:n,callee:e,arguments:t}}function sl(e,t,n=!1,a=!1,i=Xs){return{type:18,params:e,returns:t,newline:n,isSlot:a,loc:i}}function ll(e,t,n,a=!0){return{type:19,test:e,consequent:t,alternate:n,newline:a,loc:Xs}}function ul(e,{helper:t,removeHelper:n,inSSR:a}){var i,r;e.isBlock||(e.isBlock=!0,n((i=e.isComponent,a||i?ws:ks)),t(vs),t((r=e.isComponent,a||r?bs:ys)))}let cl=new Uint8Array([123,123]),dl=new Uint8Array([125,125]);function hl(e){return e>=97&&e<=122||e>=65&&e<=90}function pl(e){return 32===e||10===e||9===e||12===e||13===e}function fl(e){return 47===e||62===e||pl(e)}function ml(e){let t=new Uint8Array(e.length);for(let n=0;n4===e.type&&e.isStatic;function wl(e){switch(e){case"Teleport":case"teleport":return fs;case"Suspense":case"suspense":return ms;case"KeepAlive":case"keep-alive":return gs;case"BaseTransition":case"base-transition":return _s}}let kl=/^\d|[^\$\w\xA0-\uFFFF]/,xl=e=>!kl.test(e),Sl=/[A-Za-z_$\xA0-\uFFFF]/,Cl=/[\.\?\w$\xA0-\uFFFF]/,Tl=/\s+[.[]\s*|\s*[.[]\s+/g,El=e=>4===e.type?e.content:e.loc.source,Pl=e=>{let t=El(e).trim().replace(Tl,(e=>e.trim())),n=0,a=[],i=0,r=0,o=null;for(let e=0;e|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/;function Ll(e,t,n=!1){for(let a=0;a4===e.key.type&&e.key.content===a))}return n}function Bl(e,t){return`_${t}_${e.replace(/[^\w]/g,((t,n)=>"-"===t?"_":e.charCodeAt(n).toString()))}`}let Fl=/([\s\S]*?)\s+(?:in|of)\s+(\S[\s\S]*)/,$l={parseMode:"base",ns:0,delimiters:["{{","}}"],getNamespace:()=>0,isVoidTag:b,isPreTag:b,isIgnoreNewlineTag:b,isCustomElement:b,onError:_l,onWarn:vl,comments:!1,prefixIdentifiers:!1},Vl=$l,Ul=null,Hl="",Wl=null,Gl=null,Yl="",Kl=-1,Ql=-1,Zl=0,Jl=!1,Xl=null,eu=[],tu=new class{constructor(e,t){this.stack=e,this.cbs=t,this.state=1,this.buffer="",this.sectionStart=0,this.index=0,this.entityStart=0,this.baseState=1,this.inRCDATA=!1,this.inXML=!1,this.inVPre=!1,this.newlines=[],this.mode=0,this.delimiterOpen=cl,this.delimiterClose=dl,this.delimiterIndex=-1,this.currentSequence=void 0,this.sequenceIndex=0}get inSFCRoot(){return 2===this.mode&&0===this.stack.length}reset(){this.state=1,this.mode=0,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=1,this.inRCDATA=!1,this.currentSequence=void 0,this.newlines.length=0,this.delimiterOpen=cl,this.delimiterClose=dl}getPos(e){let t=1,n=e+1;for(let a=this.newlines.length-1;a>=0;a--){let i=this.newlines[a];if(e>i){t=a+2,n=e-i;break}}return{column:n,line:t,offset:e}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(e){60===e?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):this.inVPre||e!==this.delimiterOpen[0]||(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(e))}stateInterpolationOpen(e){if(e===this.delimiterOpen[this.delimiterIndex])if(this.delimiterIndex===this.delimiterOpen.length-1){let e=this.index+1-this.delimiterOpen.length;e>this.sectionStart&&this.cbs.ontext(this.sectionStart,e),this.state=3,this.sectionStart=e}else this.delimiterIndex++;else this.inRCDATA?(this.state=32,this.stateInRCDATA(e)):(this.state=1,this.stateText(e))}stateInterpolation(e){e===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(e))}stateInterpolationClose(e){e===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(e))}stateSpecialStartSequence(e){let t=this.sequenceIndex===this.currentSequence.length;if(t?fl(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.inRCDATA=!1;this.sequenceIndex=0,this.state=6,this.stateInTagName(e)}stateInRCDATA(e){if(this.sequenceIndex===this.currentSequence.length){if(62===e||pl(e)){let t=this.index-this.currentSequence.length;if(this.sectionStart=e||(28===this.state?this.currentSequence===gl.CdataEnd?this.cbs.oncdata(this.sectionStart,e):this.cbs.oncomment(this.sectionStart,e):6===this.state||11===this.state||18===this.state||17===this.state||12===this.state||13===this.state||14===this.state||15===this.state||16===this.state||20===this.state||19===this.state||21===this.state||9===this.state||this.cbs.ontext(this.sectionStart,e))}emitCodePoint(e,t){}}(eu,{onerr:_u,ontext(e,t){ou(iu(e,t),e,t)},ontextentity(e,t,n){ou(e,t,n)},oninterpolation(e,t){if(Jl)return ou(iu(e,t),e,t);let n=e+tu.delimiterOpen.length,a=t-tu.delimiterClose.length;for(;pl(Hl.charCodeAt(n));)n++;for(;pl(Hl.charCodeAt(a-1));)a--;let i=iu(n,a);i.includes("&")&&(i=Vl.decodeEntities(i,!1)),pu({type:5,content:gu(i,!1,fu(n,a)),loc:fu(e,t)})},onopentagname(e,t){let n=iu(e,t);Wl={type:1,tag:n,ns:Vl.getNamespace(n,eu[0],Vl.ns),tagType:0,props:[],children:[],loc:fu(e-1,t),codegenNode:void 0}},onopentagend(e){ru(e)},onclosetag(e,t){let n=iu(e,t);if(!Vl.isVoidTag(n)){let e=!1;for(let a=0;a0&&eu[0].loc.start.offset;for(let e=0;e<=a;e++)su(eu.shift(),t,e(7===e.type?e.rawName:e.name)===t))},onattribend(e,t){Wl&&Gl&&(mu(Gl.loc,t),0!==e&&(Yl.includes("&")&&(Yl=Vl.decodeEntities(Yl,!0)),6===Gl.type?("class"===Gl.name&&(Yl=hu(Yl).trim()),Gl.value={type:2,content:Yl,loc:1===e?fu(Kl,Ql):fu(Kl-1,Ql+1)},tu.inSFCRoot&&"template"===Wl.tag&&"lang"===Gl.name&&Yl&&"html"!==Yl&&tu.enterRCDATA(ml("{let i=t.start.offset+n;return gu(e,!1,fu(i,i+e.length),0,a?1:0)},s={source:o(r.trim(),n.indexOf(r,i.length)),value:void 0,key:void 0,index:void 0,finalized:!1},l=i.trim().replace(au,"").trim(),u=i.indexOf(l),c=l.match(nu);if(c){let e;l=l.replace(nu,"").trim();let t=c[1].trim();if(t&&(e=n.indexOf(t,u+l.length),s.key=o(t,e,!0)),c[2]){let a=c[2].trim();a&&(s.index=o(a,n.indexOf(a,s.key?e+t.length:u+l.length),!0))}}return l&&(s.value=o(l,u,!0)),s}(Gl.exp)))),(7!==Gl.type||"pre"!==Gl.name)&&Wl.props.push(Gl)),Yl="",Kl=Ql=-1},oncomment(e,t){Vl.comments&&pu({type:3,content:iu(e,t),loc:fu(e-4,t+3)})},onend(){let e=Hl.length;for(let t=0;t64&&n<91||wl(e)||Vl.isBuiltInComponent&&Vl.isBuiltInComponent(e)||Vl.isNativeTag&&!Vl.isNativeTag(e))return!0;for(let e=0;e=0;)n--;return n}let uu=new Set(["if","else","else-if","for","slot"]),cu=/\r\n/g;function du(e,t){let n="preserve"!==Vl.whitespace,a=!1;for(let t=0;t1)for(let a=0;a{n--};for(;nt===e:t=>e.test(t);return(e,a)=>{if(1===e.type){let{props:i}=e;if(3===e.tagType&&i.some(Nl))return;let r=[];for(let o=0;o`${Js[e]}: _${Js[e]}`;function Eu(e,t,{helper:n,push:a,newline:i,isTS:r}){let o=n("component"===t?Ts:Ps);for(let n=0;n3;t.push("["),n&&t.indent(),Au(e,t,n),n&&t.deindent(),t.push("]")}function Au(e,t,n=!1,a=!0){let{push:i,newline:r}=t;for(let o=0;oe||"null"))}([o,s,l,n,c]),t),a(")"),h&&a(")"),d&&(a(", "),Lu(d,t),a(")"))}(e,t);break;case 14:!function(e,t){let{push:n,helper:a,pure:i}=t,r=M(e.callee)?e.callee:a(e.callee);i&&n(Cu),n(r+"(",-2,e),Au(e.arguments,t),n(")")}(e,t);break;case 15:!function(e,t){let{push:n,indent:a,deindent:i,newline:r}=t,{properties:o}=e;if(!o.length)return void n("{}",-2,e);let s=o.length>1;n(s?"{":"{ "),s&&a();for(let e=0;e "),(l||s)&&(n("{"),a()),o?(l&&n("return "),T(o)?Pu(o,t):Lu(o,t)):s&&Lu(s,t),(l||s)&&(i(),n("}")),u&&n(")")}(e,t);break;case 19:!function(e,t){let{test:n,consequent:a,alternate:i,newline:r}=e,{push:o,indent:s,deindent:l,newline:u}=t;if(4===n.type){let e=!xl(n.content);e&&o("("),Mu(n,t),e&&o(")")}else o("("),Lu(n,t),o(")");r&&s(),t.indentLevel++,r||o(" "),o("? "),Lu(a,t),t.indentLevel--,r&&u(),r||o(" "),o(": ");let c=19===i.type;!c&&t.indentLevel++,Lu(i,t),!c&&t.indentLevel--,r&&l(!0)}(e,t);break;case 20:!function(e,t){let{push:n,helper:a,indent:i,deindent:r,newline:o}=t,{needPauseTracking:s,needArraySpread:l}=e;l&&n("[...("),n(`_cache[${e.index}] || (`),s&&(i(),n(`${a(Us)}(-1),`),o(),n("(")),n(`_cache[${e.index}] = `),Lu(e.value,t),s&&(n(`).cacheIndex = ${e.index},`),o(),n(`${a(Us)}(1),`),o(),n(`_cache[${e.index}]`),r()),n(")"),l&&n(")]")}(e,t);break;case 21:Au(e.body,t,!0,!1)}}function Mu(e,t){let{content:n,isStatic:a}=e;t.push(a?JSON.stringify(n):n,-3,e)}function Ru(e,t){for(let n=0;nfunction(e,t,n,a){if(!("else"===t.name||t.exp&&t.exp.content.trim())){let a=t.exp?t.exp.loc:e.loc;n.onError(bl(28,t.loc)),t.exp=il("true",!1,a)}if("if"===t.name){let i=Nu(e,t),r={type:9,loc:e.loc,branches:[i]};if(n.replaceNode(r),a)return a(r,i,!0)}else{let i=n.parent.children,r=i.indexOf(e);for(;r-- >=-1;){let o=i[r];if(!(o&&3===o.type||o&&2===o.type&&!o.content.trim().length)){if(o&&9===o.type){"else-if"===t.name&&void 0===o.branches[o.branches.length-1].condition&&n.onError(bl(30,e.loc)),n.removeNode();let i=Nu(e,t);o.branches.push(i);let r=a&&a(o,i,!1);xu(i,n),r&&r(),n.currentNode=null}else n.onError(bl(30,e.loc));break}n.removeNode(o)}}}(e,t,n,((e,t,a)=>{let i=n.parent.children,r=i.indexOf(e),o=0;for(;r-- >=0;){let e=i[r];e&&9===e.type&&(o+=e.branches.length)}return()=>{a?e.codegenNode=Iu(t,o,n):(function(e){for(;;)if(19===e.type){if(19!==e.alternate.type)return e;e=e.alternate}else 20===e.type&&(e=e.value)}(e.codegenNode)).alternate=Iu(t,o+e.branches.length-1,n)}}))));function Nu(e,t){let n=3===e.tagType;return{type:10,loc:e.loc,condition:"else"===t.name?void 0:t.exp,children:n&&!Ll(e,"for")?e.children:[e],userKey:Ml(e,"key"),isTemplateIf:n}}function Iu(e,t,n){return e.condition?ll(e.condition,Ou(e,t,n),ol(n.helper(xs),['""',"true"])):Ou(e,t,n)}function Ou(e,t,n){let{helper:a}=n,i=al("key",il(`${t}`,!1,Xs,2)),{children:r}=e,o=r[0];if(1!==r.length||1!==o.type){if(1!==r.length||11!==o.type)return el(n,a(ps),nl([i]),r,64,void 0,void 0,!0,!1,!1,e.loc);{let e=o.codegenNode;return ql(e,i,n),e}}{let e=o.codegenNode,t=14===e.type&&e.callee===Qs?e.arguments[1].returns:e;return 13===t.type&&ul(t,n),ql(t,i,n),e}}let Du=(e,t,n)=>{let{modifiers:a,loc:i}=e,r=e.arg,{exp:o}=e;if(o&&4===o.type&&!o.content.trim()&&(o=void 0),!o){if(4!==r.type||!r.isStatic)return n.onError(bl(52,r.loc)),{props:[al(r,il("",!0,i))]};qu(e),o=e.exp}return 4!==r.type?(r.children.unshift("("),r.children.push(') || ""')):r.isStatic||(r.content=`${r.content} || ""`),a.some((e=>"camel"===e.content))&&(4===r.type?r.isStatic?r.content=U(r.content):r.content=`${n.helperString(Fs)}(${r.content})`:(r.children.unshift(`${n.helperString(Fs)}(`),r.children.push(")"))),!n.inSSR&&(a.some((e=>"prop"===e.content))&&ju(r,"."),a.some((e=>"attr"===e.content))&&ju(r,"^")),{props:[al(r,o)]}},qu=(e,t)=>{let n=e.arg,a=U(n.content);e.exp=il(a,!1,n.loc)},ju=(e,t)=>{4===e.type?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},Bu=Su("for",((e,t,n)=>{let{helper:a,removeHelper:i}=n;return function(e,t,n,a){if(!t.exp)return void n.onError(bl(31,t.loc));let i=t.forParseResult;if(!i)return void n.onError(bl(32,t.loc));Fu(i);let{addIdentifiers:r,removeIdentifiers:o,scopes:s}=n,{source:l,value:u,key:c,index:d}=i,h={type:11,loc:t.loc,source:l,valueAlias:u,keyAlias:c,objectIndexAlias:d,parseResult:i,children:Il(e)?e.children:[e]};n.replaceNode(h),s.vFor++;let p=a&&a(h);return()=>{s.vFor--,p&&p()}}(e,t,n,(t=>{let r=ol(a(Ms),[t.source]),o=Il(e),s=Ll(e,"memo"),l=Ml(e,"key",!1,!0);l&&7===l.type&&!l.exp&&qu(l);let u=l&&(6===l.type?l.value?il(l.value.content,!0):void 0:l.exp),c=l&&u?al("key",u):null,d=4===t.source.type&&t.source.constType>0,h=d?64:l?128:256;return t.codegenNode=el(n,a(ps),void 0,r,h,void 0,void 0,!0,!d,!1,e.loc),()=>{let l,{children:h}=t,p=1!==h.length||1!==h[0].type,f=Ol(e)?e:o&&1===e.children.length&&Ol(e.children[0])?e.children[0]:null;if(f)l=f.codegenNode,o&&c&&ql(l,c,n);else if(p)l=el(n,a(ps),c?nl([c]):void 0,e.children,64,void 0,void 0,!0,void 0,!1);else{var m,g,_,v,b,y,w,k;l=h[0].codegenNode,o&&c&&ql(l,c,n),!d!==l.isBlock&&(l.isBlock?(i(vs),i((m=n.inSSR,g=l.isComponent,m||g?bs:ys))):i((_=n.inSSR,v=l.isComponent,_||v?ws:ks))),l.isBlock=!d,l.isBlock?(a(vs),a((b=n.inSSR,y=l.isComponent,b||y?bs:ys))):a((w=n.inSSR,k=l.isComponent,w||k?ws:ks))}if(s){let e=sl($u(t.parseResult,[il("_cached")]));e.body={type:21,body:[rl(["const _memo = (",s.exp,")"]),rl(["if (_cached",...u?[" && _cached.key === ",u]:[],` && ${n.helperString(Zs)}(_cached, _memo)) return _cached`]),rl(["const _item = ",l]),il("_item.memo = _memo"),il("return _item")],loc:Xs},r.arguments.push(e,il("_cache"),il(String(n.cached.length))),n.cached.push(null)}else r.arguments.push(sl($u(t.parseResult),l,!0))}}))}));function Fu(e,t){e.finalized||(e.finalized=!0)}function $u({value:e,key:t,index:n},a=[]){return function(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map(((e,t)=>e||il("_".repeat(t+1),!1)))}([e,t,n,...a])}let Vu=il("undefined",!1),Uu=(e,t)=>{if(1===e.type&&(1===e.tagType||3===e.tagType)){let n=Ll(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},Hu=(e,t,n,a)=>sl(e,n,!1,!0,n.length?n[0].loc:a);function Wu(e,t,n){let a=[al("name",e),al("fn",t)];return null!=n&&a.push(al("key",il(String(n),!0))),nl(a)}let Gu=new WeakMap,Yu=(e,t)=>function(){let n,a,i,r,o;if(1!==(e=t.currentNode).type||0!==e.tagType&&1!==e.tagType)return;let{tag:s,props:l}=e,u=1===e.tagType,c=u?function(e,t,n=!1){let{tag:a}=e,i=Zu(a),r=Ml(e,"is",!1,!0);if(r)if(i){let e;if(6===r.type?e=r.value&&il(r.value.content,!0):(e=r.exp)||(e=il("is",!1,r.arg.loc)),e)return ol(t.helper(Es),[e])}else 6===r.type&&r.value.content.startsWith("vue:")&&(a=r.value.content.slice(4));let o=wl(a)||t.isBuiltInComponent(a);return o?(n||t.helper(o),o):(t.helper(Ts),t.components.add(a),Bl(a,"component"))}(e,t):`"${s}"`,d=z(c)&&c.callee===Es,h=0,p=d||c===fs||c===ms||!u&&("svg"===s||"foreignObject"===s||"math"===s);if(l.length>0){let a=Ku(e,t,void 0,u,d);n=a.props,h=a.patchFlag,r=a.dynamicPropNames;let i=a.directives;o=i&&i.length?tl(i.map((e=>function(e,t){let n=[],a=Gu.get(e);a?n.push(t.helperString(a)):(t.helper(Ps),t.directives.add(e.name),n.push(Bl(e.name,"directive")));let{loc:i}=e;if(e.exp&&n.push(e.exp),e.arg&&(e.exp||n.push("void 0"),n.push(e.arg)),Object.keys(e.modifiers).length){e.arg||(e.exp||n.push("void 0"),n.push("void 0"));let t=il("true",!1,i);n.push(nl(e.modifiers.map((e=>al(e,t))),i))}return tl(n,e.loc)}(e,t)))):void 0,a.shouldUseBlock&&(p=!0)}if(e.children.length>0)if(c===gs&&(p=!0,h|=1024),u&&c!==fs&&c!==gs){let{slots:n,hasDynamicSlots:i}=function(e,t,n=Hu){t.helper(Gs);let{children:a,loc:i}=e,r=[],o=[],s=t.scopes.vSlot>0||t.scopes.vFor>0,l=Ll(e,"slot",!0);if(l){let{arg:e,exp:t}=l;e&&!yl(e)&&(s=!0),r.push(al(e||il("default",!0),n(t,void 0,a,i)))}let u=!1,c=!1,d=[],h=new Set,p=0;for(let e=0;eal("default",n(e,void 0,t,i));u?d.length&&d.some((e=>function e(t){return 2!==t.type&&12!==t.type||(2===t.type?!!t.content.trim():e(t.content))}(e)))&&(c?t.onError(bl(39,d[0].loc)):r.push(e(void 0,d))):r.push(e(void 0,a))}let f=s?2:function e(t){for(let n=0;n0,f=!1,m=0,g=!1,_=!1,v=!1,b=!1,w=!1,k=!1,x=[],S=e=>{c.length&&(d.push(nl(Qu(c),l)),c=[]),e&&d.push(e)},C=()=>{t.scopes.vFor>0&&c.push(al(il("ref_for",!0),il("true")))},T=({key:e,value:n})=>{if(yl(e)){let r=e.content,o=y(r);o&&(!a||i)&&"onclick"!==r.toLowerCase()&&"onUpdate:modelValue"!==r&&!B(r)&&(b=!0),o&&B(r)&&(k=!0),o&&14===n.type&&(n=n.arguments[0]),20===n.type||(4===n.type||8===n.type)&&bu(n,t)>0||("ref"===r?g=!0:"class"===r?_=!0:"style"===r?v=!0:"key"===r||x.includes(r)||x.push(r),a&&("class"===r||"style"===r)&&!x.includes(r)&&x.push(r))}else w=!0};for(let i=0;i"prop"===e.content))&&(m|=32);let y=t.directiveTransforms[n];if(y){let{props:n,needRuntime:a}=y(o,e,t);r||n.forEach(T),b&&i&&!yl(i)?S(nl(n,l)):c.push(...n),a&&(h.push(o),R(a)&&Gu.set(o,a))}else!F(n)&&(h.push(o),p&&(f=!0))}}if(d.length?(S(),o=d.length>1?ol(t.helper(Is),d,l):d[0]):c.length&&(o=nl(Qu(c),l)),w?m|=16:(_&&!a&&(m|=2),v&&!a&&(m|=4),x.length&&(m|=8),b&&(m|=32)),!f&&(0===m||32===m)&&(g||k||h.length>0)&&(m|=512),!t.inSSR&&o)switch(o.type){case 15:let e=-1,n=-1,a=!1;for(let t=0;t{if(Ol(e)){let{children:n,loc:a}=e,{slotName:i,slotProps:r}=function(e,t){let n,a='"default"',i=[];for(let t=0;t0){let{props:a,directives:r}=Ku(e,t,i,!1,!1);n=a,r.length&&t.onError(bl(36,r[0].loc))}return{slotName:a,slotProps:n}}(e,t),o=[t.prefixIdentifiers?"_ctx.$slots":"$slots",i,"{}","undefined","true"],s=2;r&&(o[2]=r,s=3),n.length&&(o[3]=sl([],n,!1,!1,a),s=4),t.scopeId&&!t.slotted&&(s=5),o.splice(s),e.codegenNode=ol(t.helper(Rs),o,a)}},Xu=(e,t,n,a)=>{let i,{loc:r,modifiers:o,arg:s}=e;if(e.exp||o.length,4===s.type)if(s.isStatic){let e=s.content;e.startsWith("vue:")&&(e=`vnode-${e.slice(4)}`),i=il(0!==t.tagType||e.startsWith("vnode")||!/[A-Z]/.test(e)?Y(U(e)):`on:${e}`,!0,s.loc)}else i=rl([`${n.helperString(Vs)}(`,s,")"]);else(i=s).children.unshift(`${n.helperString(Vs)}(`),i.children.push(")");let l=e.exp;l&&!l.content.trim()&&(l=void 0);let u=n.cacheHandlers&&!l&&!n.inVOnce;if(l){let e=Pl(l),t=!(e||(e=>Al.test(El(e)))(l)),n=l.content.includes(";");(t||u&&e)&&(l=rl([`${t?"$event":"(...args)"} => ${n?"{":"("}`,l,n?"}":")"]))}let c={props:[al(i,l||il("() => {}",!1,r))]};return a&&(c=a(c)),u&&(c.props[0].value=n.cache(c.props[0].value)),c.props.forEach((e=>e.key.isHandlerKey=!0)),c},ec=(e,t)=>{if(0===e.type||1===e.type||11===e.type||10===e.type)return()=>{let n,a=e.children,i=!1;for(let e=0;e7===e.type&&!t.directiveTransforms[e.name])))))for(let e=0;e{if(1===e.type&&Ll(e,"once",!0)&&!tc.has(e)&&!t.inVOnce&&!t.inSSR)return tc.add(e),t.inVOnce=!0,t.helper(Us),()=>{t.inVOnce=!1;let e=t.currentNode;e.codegenNode&&(e.codegenNode=t.cache(e.codegenNode,!0))}},ac=(e,t,n)=>{let a,{exp:i,arg:r}=e;if(!i)return n.onError(bl(41,e.loc)),ic();let o=i.loc.source.trim(),s=4===i.type?i.content:o,l=n.bindingMetadata[o];if("props"===l||"props-aliased"===l)return i.loc,ic();if(!s.trim()||!Pl(i))return n.onError(bl(42,i.loc)),ic();let u=r||il("modelValue",!0),c=r?yl(r)?`onUpdate:${U(r.content)}`:rl(['"onUpdate:" + ',r]):"onUpdate:modelValue";a=rl([`${n.isTS?"($event: any)":"$event"} => ((`,i,") = $event)"]);let d=[al(u,e.exp),al(c,a)];if(e.modifiers.length&&1===t.tagType){let t=e.modifiers.map((e=>e.content)).map((e=>(xl(e)?e:JSON.stringify(e))+": true")).join(", "),n=r?yl(r)?`${r.content}Modifiers`:rl([r,' + "Modifiers"']):"modelModifiers";d.push(al(n,il(`{ ${t} }`,!1,e.loc,2)))}return ic(d)};function ic(e=[]){return{props:e}}let rc=new WeakSet,oc=(e,t)=>{if(1===e.type){let n=Ll(e,"memo");if(n&&!rc.has(e))return rc.add(e),()=>{let a=e.codegenNode||t.currentNode.codegenNode;a&&13===a.type&&(1!==e.tagType&&ul(a,t),e.codegenNode=ol(t.helper(Qs),[n.exp,sl(void 0,a),"_cache",String(t.cached.length)]),t.cached.push(null))}}},sc=Symbol(""),lc=Symbol(""),uc=Symbol(""),cc=Symbol(""),dc=Symbol(""),hc=Symbol(""),pc=Symbol(""),fc=Symbol(""),mc=Symbol(""),gc=Symbol("");!function(e){Object.getOwnPropertySymbols(e).forEach((t=>{Js[t]=e[t]}))}({[sc]:"vModelRadio",[lc]:"vModelCheckbox",[uc]:"vModelText",[cc]:"vModelSelect",[dc]:"vModelDynamic",[hc]:"withModifiers",[pc]:"withKeys",[fc]:"vShow",[mc]:"Transition",[gc]:"TransitionGroup"});let _c={parseMode:"html",isVoidTag:de,isNativeTag:e=>le(e)||ue(e)||ce(e),isPreTag:e=>"pre"===e,isIgnoreNewlineTag:e=>"pre"===e||"textarea"===e,decodeEntities:function(e,t=!1){return h||(h=document.createElement("div")),t?(h.innerHTML=`
`,h.children[0].getAttribute("foo")):(h.innerHTML=e,h.textContent)},isBuiltInComponent:e=>"Transition"===e||"transition"===e?mc:"TransitionGroup"===e||"transition-group"===e?gc:void 0,getNamespace(e,t,n){let a=t?t.ns:n;if(t&&2===a)if("annotation-xml"===t.tag){if("svg"===e)return 1;t.props.some((e=>6===e.type&&"encoding"===e.name&&null!=e.value&&("text/html"===e.value.content||"application/xhtml+xml"===e.value.content)))&&(a=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&"mglyph"!==e&&"malignmark"!==e&&(a=0);else t&&1===a&&("foreignObject"===t.tag||"desc"===t.tag||"title"===t.tag)&&(a=0);if(0===a){if("svg"===e)return 1;if("math"===e)return 2}return a}},vc=(e,t)=>il(JSON.stringify(oe(e)),!1,t,3),bc=m("passive,once,capture"),yc=m("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),wc=m("left,right"),kc=m("onkeyup,onkeydown,onkeypress"),xc=(e,t)=>yl(e)&&"onclick"===e.content.toLowerCase()?il(t,!0):4!==e.type?rl(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,Sc=(e,t)=>{1===e.type&&0===e.tagType&&("script"===e.tag||"style"===e.tag)&&t.removeNode()},Cc=[e=>{1===e.type&&e.props.forEach(((t,n)=>{6===t.type&&"style"===t.name&&t.value&&(e.props[n]={type:7,name:"bind",arg:il("style",!0,t.loc),exp:vc(t.value.content,t.loc),modifiers:[],loc:t.loc})}))}],Tc={cloak:()=>({props:[]}),html:(e,t,n)=>{let{exp:a,loc:i}=e;return a||n.onError(bl(53,i)),t.children.length&&(n.onError(bl(54,i)),t.children.length=0),{props:[al(il("innerHTML",!0,i),a||il("",!0))]}},text:(e,t,n)=>{let{exp:a,loc:i}=e;return a||n.onError(bl(55,i)),t.children.length&&(n.onError(bl(56,i)),t.children.length=0),{props:[al(il("textContent",!0),a?bu(a,n)>0?a:ol(n.helperString(Ns),[a],i):il("",!0))]}},model:(e,t,n)=>{let a=ac(e,t,n);if(!a.props.length||1===t.tagType)return a;e.arg&&n.onError(bl(58,e.arg.loc));let{tag:i}=t,r=n.isCustomElement(i);if("input"===i||"textarea"===i||"select"===i||r){let o=uc,s=!1;if("input"===i||r){let a=Ml(t,"type");if(a){if(7===a.type)o=dc;else if(a.value)switch(a.value.content){case"radio":o=sc;break;case"checkbox":o=lc;break;case"file":s=!0,n.onError(bl(59,e.loc))}}else t.props.some((e=>!(7!==e.type||"bind"!==e.name||e.arg&&4===e.arg.type&&e.arg.isStatic)))&&(o=dc)}else"select"===i&&(o=cc);s||(a.needRuntime=n.helper(o))}else n.onError(bl(57,e.loc));return a.props=a.props.filter((e=>!(4===e.key.type&&"modelValue"===e.key.content))),a},on:(e,t,n)=>Xu(e,t,n,(t=>{let{modifiers:a}=e;if(!a.length)return t;let{key:i,value:r}=t.props[0],{keyModifiers:o,nonKeyModifiers:s,eventOptionModifiers:l}=((e,t)=>{let n=[],a=[],i=[];for(let r=0;r{let{exp:a,loc:i}=e;return!a&&n.onError(bl(61,i)),{props:[],needRuntime:n.helper(fc)}}},Ec=new WeakMap;function Pc(e,t){let n;if(!M(e)){if(!e.nodeType)return v;e=e.innerHTML}let a=e,i=((n=Ec.get(null!=t?t:g))||(n=Object.create(null),Ec.set(null!=t?t:g,n)),n),r=i[a];if(r)return r;if("#"===e[0]){let t=document.querySelector(e);e=t?t.innerHTML:""}let o=k({hoistStatic:!0,onError:void 0,onWarn:v},t);o.isCustomElement||"undefined"==typeof customElements||(o.isCustomElement=e=>!!customElements.get(e));let{code:s}=function(e,t={}){return function(e,t={}){let n=t.onError||_l,a="module"===t.mode;!0===t.prefixIdentifiers?n(bl(47)):a&&n(bl(48)),t.cacheHandlers&&n(bl(49)),t.scopeId&&!a&&n(bl(50));let i=k({},t,{prefixIdentifiers:!1}),r=M(e)?function(e,t){if(tu.reset(),Wl=null,Gl=null,Yl="",Kl=-1,Ql=-1,eu.length=0,Hl=e,Vl=k({},$l),t){let e;for(e in t)null!=t[e]&&(Vl[e]=t[e])}tu.mode="html"===Vl.parseMode?1:"sfc"===Vl.parseMode?2:0,tu.inXML=1===Vl.ns||2===Vl.ns;let n=t&&t.delimiters;n&&(tu.delimiterOpen=ml(n[0]),tu.delimiterClose=ml(n[1]));let a=Ul=function(e,t=""){return{type:0,source:t,children:[],helpers:new Set,components:[],directives:[],hoists:[],imports:[],cached:[],temps:0,codegenNode:void 0,loc:Xs}}(0,e);return tu.parse(Hl),a.loc=fu(0,e.length),a.children=du(a.children),Ul=null,a}(e,i):e,[o,s]=[[nc,zu,oc,Bu,Ju,Yu,Uu,ec],{on:Xu,bind:Du,model:ac}];return function(e,t){let n=function(e,{filename:t="",prefixIdentifiers:n=!1,hoistStatic:a=!1,hmr:i=!1,cacheHandlers:r=!1,nodeTransforms:o=[],directiveTransforms:s={},transformHoist:l=null,isBuiltInComponent:u=v,isCustomElement:c=v,expressionPlugins:d=[],scopeId:h=null,slotted:p=!0,ssr:f=!1,inSSR:m=!1,ssrCssVars:_="",bindingMetadata:b=g,inline:y=!1,isTS:w=!1,onError:k=_l,onWarn:x=vl,compatConfig:S}){let C=t.replace(/\?.*$/,"").match(/([^/\\]+)\.\w+$/),T={filename:t,selfName:C&&G(U(C[1])),prefixIdentifiers:n,hoistStatic:a,hmr:i,cacheHandlers:r,nodeTransforms:o,directiveTransforms:s,transformHoist:l,isBuiltInComponent:u,isCustomElement:c,expressionPlugins:d,scopeId:h,slotted:p,ssr:f,inSSR:m,ssrCssVars:_,bindingMetadata:b,inline:y,isTS:w,onError:k,onWarn:x,compatConfig:S,root:e,helpers:new Map,components:new Set,directives:new Set,hoists:[],imports:[],cached:[],constantCache:new WeakMap,temps:0,identifiers:Object.create(null),scopes:{vFor:0,vSlot:0,vPre:0,vOnce:0},parent:null,grandParent:null,currentNode:e,childIndex:0,inVOnce:!1,helper(e){let t=T.helpers.get(e)||0;return T.helpers.set(e,t+1),e},removeHelper(e){let t=T.helpers.get(e);if(t){let n=t-1;n?T.helpers.set(e,n):T.helpers.delete(e)}},helperString:e=>`_${Js[T.helper(e)]}`,replaceNode(e){T.parent.children[T.childIndex]=T.currentNode=e},removeNode(e){let t=T.parent.children,n=e?t.indexOf(e):T.currentNode?T.childIndex:-1;e&&e!==T.currentNode?T.childIndex>n&&(T.childIndex--,T.onNodeRemoved()):(T.currentNode=null,T.onNodeRemoved()),T.parent.children.splice(n,1)},onNodeRemoved:v,addIdentifiers(e){},removeIdentifiers(e){},hoist(e){M(e)&&(e=il(e)),T.hoists.push(e);let t=il(`_hoisted_${T.hoists.length}`,!1,e.loc,2);return t.hoisted=e,t},cache(e,t=!1){let n=function(e,t,n=!1){return{type:20,index:e,value:t,needPauseTracking:n,needArraySpread:!1,loc:Xs}}(T.cached.length,e,t);return T.cached.push(n),n}};return T}(e,t);xu(e,n),t.hoistStatic&&function e(t,n,a,i=!1,r=!1){let{children:o}=t,s=[];for(let n=0;n0){if(e>=2){l.codegenNode.patchFlag=-1,s.push(l);continue}}else{let e=l.codegenNode;if(13===e.type){let t=e.patchFlag;if((void 0===t||512===t||1===t)&&wu(l,a)>=2){let t=ku(l);t&&(e.props=a.hoist(t))}e.dynamicProps&&(e.dynamicProps=a.hoist(e.dynamicProps))}}}else if(12===l.type&&(i?0:bu(l,a))>=2){s.push(l);continue}if(1===l.type){let n=1===l.tagType;n&&a.scopes.vSlot++,e(l,t,a,!1,r),n&&a.scopes.vSlot--}else if(11===l.type)e(l,t,a,1===l.children.length,!0);else if(9===l.type)for(let n=0;ne.key===t||e.key.content===t));return n&&n.value}}s.length&&a.transformHoist&&a.transformHoist(o,a,t)}(e,void 0,n,vu(e,e.children[0])),t.ssr||function(e,t){let{helper:n}=t,{children:a}=e;if(1===a.length){let n=a[0];if(vu(e,n)&&n.codegenNode){let a=n.codegenNode;13===a.type&&ul(a,t),e.codegenNode=a}else e.codegenNode=n}else a.length>1&&(e.codegenNode=el(t,n(ps),void 0,e.children,64,void 0,void 0,!0,void 0,!1))}(e,n),e.helpers=new Set([...n.helpers.keys()]),e.components=[...n.components],e.directives=[...n.directives],e.imports=n.imports,e.hoists=n.hoists,e.temps=n.temps,e.cached=n.cached,e.transformed=!0}(r,k({},i,{nodeTransforms:[...o,...t.nodeTransforms||[]],directiveTransforms:k({},s,t.directiveTransforms||{})})),function(e,t={}){let n=function(e,{mode:t="function",prefixIdentifiers:n="module"===t,sourceMap:a=!1,filename:i="template.vue.html",scopeId:r=null,optimizeImports:o=!1,runtimeGlobalName:s="Vue",runtimeModuleName:l="vue",ssrRuntimeModuleName:u="vue/server-renderer",ssr:c=!1,isTS:d=!1,inSSR:h=!1}){let p={mode:t,prefixIdentifiers:n,sourceMap:a,filename:i,scopeId:r,optimizeImports:o,runtimeGlobalName:s,runtimeModuleName:l,ssrRuntimeModuleName:u,ssr:c,isTS:d,inSSR:h,source:e.source,code:"",column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper:e=>`_${Js[e]}`,push(e,t=-2,n){p.code+=e},indent(){f(++p.indentLevel)},deindent(e=!1){e?--p.indentLevel:f(--p.indentLevel)},newline(){f(p.indentLevel)}};function f(e){p.push("\n"+" ".repeat(e),0)}return p}(e,t);t.onContextCreated&&t.onContextCreated(n);let{mode:a,push:i,prefixIdentifiers:r,indent:o,deindent:s,newline:l,scopeId:u,ssr:c}=n,d=Array.from(e.helpers),h=d.length>0,p=!r&&"module"!==a;if(function(e,t){let{ssr:n,prefixIdentifiers:a,push:i,newline:r,runtimeModuleName:o,runtimeGlobalName:s,ssrRuntimeModuleName:l}=t,u=Array.from(e.helpers);if(u.length>0&&(i(`const _Vue = ${s}\n`,-1),e.hoists.length)){i(`const { ${[ws,ks,xs,Ss,Cs].filter((e=>u.includes(e))).map(Tu).join(", ")} } = _Vue\n`,-1)}(function(e,t){if(!e.length)return;t.pure=!0;let{push:n,newline:a}=t;a();for(let i=0;i0)&&l()),e.directives.length&&(Eu(e.directives,"directive",n),e.temps>0&&l()),e.temps>0){i("let ");for(let t=0;t0?", ":""}_temp${t}`)}return(e.components.length||e.directives.length||e.temps)&&(i("\n",0),l()),c||i("return "),e.codegenNode?Lu(e.codegenNode,n):i("null"),p&&(s(),i("}")),s(),i("}"),{ast:e,code:n.code,preamble:"",map:n.map?n.map.toJSON():void 0}}(r,i)}(e,k({},_c,t,{nodeTransforms:[Sc,...Cc,...t.nodeTransforms||[]],directiveTransforms:k({},Tc,t.directiveTransforms||{}),transformHoist:null}))}(e,o),l=Function(s)();return l._rc=!0,i[a]=l}return zr(Pc),e.BaseTransition=Zn,e.BaseTransitionPropsValidators=Yn,e.Comment=er,e.DeprecationTypes=null,e.EffectScope=be,e.ErrorCodes={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},e.ErrorTypeStrings=null,e.Fragment=Ji,e.KeepAlive={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){let n=Er(),a=n.ctx,i=new Map,r=new Set,o=null,s=n.suspense,{renderer:{p:l,m:u,um:c,o:{createElement:d}}}=a,h=d("div");function p(e){ka(e),c(e,n,s,!0)}function f(e){i.forEach(((t,n)=>{let a=qr(t.type);a&&!e(a)&&m(n)}))}function m(e){let t=i.get(e);!t||o&&dr(t,o)?o&&ka(o):p(t),i.delete(e),r.delete(e)}a.activate=(e,t,n,a,i)=>{let r=e.component;u(e,t,n,0,s),l(r.vnode,e,t,n,r,s,a,e.slotScopeIds,i),xi((()=>{r.isDeactivated=!1,r.a&&Q(r.a);let t=e.props&&e.props.onVnodeMounted;t&&xr(t,r.parent,e)}),s)},a.deactivate=e=>{let t=e.component;Li(t.m),Li(t.a),u(e,h,null,1,s),xi((()=>{t.da&&Q(t.da);let n=e.props&&e.props.onVnodeUnmounted;n&&xr(n,t.parent,e),t.isDeactivated=!0}),s)},Ni((()=>[e.include,e.exclude]),(([e,t])=>{e&&f((t=>va(e,t))),t&&f((e=>!va(t,e)))}),{flush:"post",deep:!0});let g=null,_=()=>{null!=g&&(Hi(n.subTree.type)?xi((()=>{i.set(g,xa(n.subTree))}),n.subTree.suspense):i.set(g,xa(n.subTree)))};return Ea(_),Aa(_),La((()=>{i.forEach((e=>{let{subTree:t,suspense:a}=n,i=xa(t);if(e.type!==i.type||e.key!==i.key)p(e);else{ka(i);let e=i.component.da;e&&xi(e,a)}}))})),()=>{if(g=null,!t.default)return o=null;let n=t.default(),a=n[0];if(n.length>1)return o=null,n;if(!(cr(a)&&(4&a.shapeFlag||128&a.shapeFlag)))return o=null,a;let s=xa(a);if(s.type===er)return o=null,s;let l=s.type,u=qr(ma(s)?s.type.__asyncResolved||{}:l),{include:c,exclude:d,max:h}=e;if(c&&(!u||!va(c,u))||d&&u&&va(d,u))return s.shapeFlag&=-257,o=s,a;let p=null==s.key?l:s.key,f=i.get(p);return s.el&&(s=_r(s),128&a.shapeFlag&&(a.ssContent=s)),g=p,f?(s.el=f.el,s.component=f.component,s.transition&&na(s,s.transition),s.shapeFlag|=512,r.delete(p),r.add(p)):(r.add(p),h&&r.size>parseInt(h,10)&&m(r.values().next().value)),s.shapeFlag|=256,o=s,Hi(a.type)?a:s}}},e.ReactiveEffect=we,e.Static=tr,e.Suspense={name:"Suspense",__isSuspense:!0,process(e,t,n,a,i,r,o,s,l,u){if(null==e)!function(e,t,n,a,i,r,o,s,l){let{p:u,o:{createElement:c}}=l,d=c("div"),h=e.suspense=Yi(e,i,a,t,d,n,r,o,s,l);u(null,h.pendingBranch=e.ssContent,d,null,a,h,r,o),h.deps>0?(Gi(e,"onPending"),Gi(e,"onFallback"),u(null,e.ssFallback,t,n,a,null,r,o),Zi(h,e.ssFallback)):h.resolve(!1,!0)}(t,n,a,i,r,o,s,l,u);else{if(r&&r.deps>0&&!e.suspense.isInFallback)return t.suspense=e.suspense,t.suspense.vnode=t,void(t.el=e.el);!function(e,t,n,a,i,r,o,s,{p:l,um:u,o:{createElement:c}}){let d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;let h=t.ssContent,p=t.ssFallback,{activeBranch:f,pendingBranch:m,isInFallback:g,isHydrating:_}=d;if(m)d.pendingBranch=h,dr(h,m)?(l(m,h,d.hiddenContainer,null,i,d,r,o,s),d.deps<=0?d.resolve():g&&!_&&(l(f,p,n,a,i,null,r,o,s),Zi(d,p))):(d.pendingId=Wi++,_?(d.isHydrating=!1,d.activeBranch=m):u(m,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=c("div"),g?(l(null,h,d.hiddenContainer,null,i,d,r,o,s),d.deps<=0?d.resolve():(l(f,p,n,a,i,null,r,o,s),Zi(d,p))):f&&dr(h,f)?(l(f,h,n,a,i,d,r,o,s),d.resolve(!0)):(l(null,h,d.hiddenContainer,null,i,d,r,o,s),d.deps<=0&&d.resolve()));else if(f&&dr(h,f))l(f,h,n,a,i,d,r,o,s),Zi(d,h);else if(Gi(t,"onPending"),d.pendingBranch=h,512&h.shapeFlag?d.pendingId=h.component.suspenseId:d.pendingId=Wi++,l(null,h,d.hiddenContainer,null,i,d,r,o,s),d.deps<=0)d.resolve();else{let{timeout:e,pendingId:t}=d;e>0?setTimeout((()=>{d.pendingId===t&&d.fallback(p)}),e):0===e&&d.fallback(p)}}(e,t,n,a,i,o,s,l,u)}},hydrate:function(e,t,n,a,i,r,o,s,l){let u=t.suspense=Yi(t,a,n,e.parentNode,document.createElement("div"),null,i,r,o,s,!0),c=l(e,u.pendingBranch=t.ssContent,n,u,r,o);return 0===u.deps&&u.resolve(!1,!0),c},normalize:function(e){let{shapeFlag:t,children:n}=e,a=32&t;e.ssContent=Ki(a?n.default:n),e.ssFallback=a?Ki(n.fallback):mr(er)}},e.Teleport={name:"Teleport",__isTeleport:!0,process(e,t,n,a,i,r,o,s,l,u){let{mc:c,pc:d,pbc:h,o:{insert:p,querySelector:f,createText:m,createComment:g}}=u,_=Dn(t.props),{shapeFlag:v,children:b,dynamicChildren:y}=t;if(null==e){let e=t.el=m(""),u=t.anchor=m("");p(e,n,a),p(u,n,a);let d=(e,t)=>{16&v&&(i&&i.isCE&&(i.ce._teleportTarget=e),c(b,e,t,i,r,o,s,l))},h=()=>{let e=t.target=Bn(t.props,f),n=Vn(e,t,m,p);e&&("svg"!==o&&qn(e)?o="svg":"mathml"!==o&&jn(e)&&(o="mathml"),_||(d(e,n),$n(t)))};_&&(d(n,u),$n(t)),(e=>e&&(e.defer||""===e.defer))(t.props)?xi(h,r):h()}else{t.el=e.el,t.targetStart=e.targetStart;let a=t.anchor=e.anchor,c=t.target=e.target,p=t.targetAnchor=e.targetAnchor,m=Dn(e.props),g=m?n:c;if("svg"===o||qn(c)?o="svg":("mathml"===o||jn(c))&&(o="mathml"),y?(h(e.dynamicChildren,y,g,i,r,o,s),Ai(e,t,!0)):l||d(e,t,g,m?a:p,i,r,o,s,!1),_)m?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Fn(t,n,a,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=t.target=Bn(t.props,f);e&&Fn(t,e,null,u,0)}else m&&Fn(t,c,p,u,1);$n(t)}},remove(e,t,n,{um:a,o:{remove:i}},r){let{shapeFlag:o,children:s,anchor:l,targetStart:u,targetAnchor:c,target:d,props:h}=e;if(d&&(i(u),i(c)),r&&i(l),16&o){let e=r||!Dn(h);for(let i=0;ie[a]});return n},e.createRenderer=function(e){return Ci(e)},e.createSSRApp=cs,e.createSlots=function(e,t){for(let n=0;n{let t=a.fn(...e);return t&&(t.key=a.key),t}:a.fn)}return e},e.createStaticVNode=function(e,t){let n=mr(tr,null,e);return n.staticCount=t,n},e.createTextVNode=vr,e.createVNode=mr,e.customRef=tn,e.defineAsyncComponent=/*! #__NO_SIDE_EFFECTS__ */function(e){let t;L(e)&&(e={loader:e});let{loader:n,loadingComponent:a,errorComponent:i,delay:r=200,hydrate:o,timeout:s,suspensible:l=!0,onError:u}=e,c=null,d=0,h=()=>{let e;return c||(e=c=n().catch((e=>{if(e=e instanceof Error?e:Error(String(e)),u)return new Promise(((t,n)=>{u(e,(()=>t((d++,c=null,h()))),(()=>n(e)),d+1)}));throw e})).then((n=>e!==c&&c?c:(n&&(n.__esModule||"Module"===n[Symbol.toStringTag])&&(n=n.default),t=n,n))))};return ia({name:"AsyncComponentWrapper",__asyncLoader:h,__asyncHydrate(e,n,a){let i=o?()=>{let t=o(a,(t=>function(e,t){if(ca(e)&&"["===e.data){let n=1,a=e.nextSibling;for(;a;){if(1===a.nodeType){if(!1===t(a))break}else if(ca(a))if("]"===a.data){if(0==--n)break}else"["===a.data&&n++;a=a.nextSibling}}else t(e)}(e,t)));t&&(n.bum||(n.bum=[])).push(t)}:a;t?i():h().then((()=>!n.isUnmounted&&i()))},get __asyncResolved(){return t},setup(){let e=Tr;if(ra(e),t)return()=>ga(t,e);let n=t=>{c=null,pn(t,e,13,!i)};if(l&&e.suspense)return h().then((t=>()=>ga(t,e))).catch((e=>(n(e),()=>i?mr(i,{error:e}):null)));let o=Gt(!1),u=Gt(),d=Gt(!!r);return r&&setTimeout((()=>{d.value=!1}),r),null!=s&&setTimeout((()=>{if(!o.value&&!u.value){let e=Error(`Async component timed out after ${s}ms.`);n(e),u.value=e}}),s),h().then((()=>{o.value=!0,e.parent&&_a(e.parent.vnode)&&e.parent.update()})).catch((e=>{n(e),u.value=e})),()=>o.value&&t?ga(t,e):u.value&&i?mr(i,{error:u.value}):a&&!d.value?mr(a):void 0}})},e.defineComponent=ia,e.defineCustomElement=Mo,e.defineEmits=function(){return null},e.defineExpose=function(e){},e.defineModel=function(){},e.defineOptions=function(e){},e.defineProps=function(){return null},e.defineSSRCustomElement=(e,t)=>Mo(e,t,cs),e.defineSlots=function(){return null},e.devtools=void 0,e.effect=function(e,t){e.effect instanceof we&&(e=e.effect.fn);let n=new we(e);t&&k(n,t);try{n.run()}catch(e){throw n.stop(),e}let a=n.run.bind(n);return a.effect=n,a},e.effectScope=function(e){return new be(e)},e.getCurrentInstance=Er,e.getCurrentScope=function(){return i},e.getCurrentWatcher=function(){return p},e.getTransitionRawChildren=aa,e.guardReactiveProps=gr,e.h=Br,e.handleError=pn,e.hasInjectionContext=function(){return!!(Tr||Ln||ri)},e.hydrate=(...e)=>{ss().hydrate(...e)},e.hydrateOnIdle=(e=1e4)=>t=>{let n=requestIdleCallback(t,{timeout:e});return()=>cancelIdleCallback(n)},e.hydrateOnInteraction=(e=[])=>(t,n)=>{M(e)&&(e=[e]);let a=!1,i=e=>{a||(a=!0,r(),t(),e.target.dispatchEvent(new e.constructor(e.type,e)))},r=()=>{n((t=>{for(let n of e)t.removeEventListener(n,i)}))};return n((t=>{for(let n of e)t.addEventListener(n,i,{once:!0})})),r},e.hydrateOnMediaQuery=e=>t=>{if(e){let n=matchMedia(e);if(!n.matches)return n.addEventListener("change",t,{once:!0}),()=>n.removeEventListener("change",t);t()}},e.hydrateOnVisible=e=>(t,n)=>{let a=new IntersectionObserver((e=>{for(let n of e)if(n.isIntersecting){a.disconnect(),t();break}}),e);return n((e=>{if(e instanceof Element){if(function(e){let{top:t,left:n,bottom:a,right:i}=e.getBoundingClientRect(),{innerHeight:r,innerWidth:o}=window;return(t>0&&t0&&a0&&n0&&ia.disconnect()},e.initCustomFormatter=function(){},e.initDirectivesForSSR=v,e.inject=si,e.isMemoSame=Fr,e.isProxy=Ft,e.isReactive=qt,e.isReadonly=jt,e.isRef=Wt,e.isRuntimeOnly=()=>!u,e.isShallow=Bt,e.isVNode=cr,e.markRaw=Vt,e.mergeDefaults=function(e,t){let n=Wa(e);for(let e in t){if(e.startsWith("__skip"))continue;let a=n[e];a?T(a)||L(a)?a=n[e]={type:a,default:t[e]}:a.default=t[e]:null===a&&(a=n[e]={default:t[e]}),a&&t[`__skip_${e}`]&&(a.skipFactory=!0)}return n},e.mergeModels=function(e,t){return e&&t?T(e)&&T(t)?e.concat(t):k({},Wa(e),Wa(t)):e||t},e.mergeProps=kr,e.nextTick=xn,e.normalizeClass=se,e.normalizeProps=function(e){if(!e)return null;let{class:t,style:n}=e;return t&&!M(t)&&(e.class=se(t)),n&&(e.style=ne(n)),e},e.normalizeStyle=ne,e.onActivated=ba,e.onBeforeMount=Ta,e.onBeforeUnmount=La,e.onBeforeUpdate=Pa,e.onDeactivated=ya,e.onErrorCaptured=Ia,e.onMounted=Ea,e.onRenderTracked=Na,e.onRenderTriggered=za,e.onScopeDispose=function(e,t=!1){i&&i.cleanups.push(e)},e.onServerPrefetch=Ra,e.onUnmounted=Ma,e.onUpdated=Aa,e.onWatcherCleanup=un,e.openBlock=ir,e.popScopeId=function(){Mn=null},e.provide=oi,e.proxyRefs=Xt,e.pushScopeId=function(e){Mn=e},e.queuePostFlushCb=Tn,e.reactive=Nt,e.readonly=Ot,e.ref=Gt,e.registerRuntimeCompiler=zr,e.render=ls,e.renderList=function(e,t,n,a){let i,r=n&&n[a],o=T(e);if(o||M(e)){let n=!1;o&&qt(e)&&(n=!Bt(e),e=He(e)),i=Array(e.length);for(let a=0,o=e.length;at(e,n,void 0,r&&r[n])));else{let n=Object.keys(e);i=Array(n.length);for(let a=0,o=n.length;a!cr(t)||!(t.type===er||t.type===Ji&&!e(t.children))))?t:null}(r(n)),s=ur(Ji,{key:(n.key||o&&o.key||`_${t}`)+(!o&&a?"_fb":"")},o||(a?a():[]),o&&1===e._?64:-2);return!i&&s.scopeId&&(s.slotScopeIds=[s.scopeId+"-s"]),r&&r._c&&(r._d=!0),s},e.resolveComponent=function(e,t){return qa(Oa,e,!0,t)||e},e.resolveDirective=function(e){return qa("directives",e)},e.resolveDynamicComponent=function(e){return M(e)?qa(Oa,e,!1)||e:e||Da},e.resolveFilter=null,e.resolveTransitionHooks=Xn,e.setBlockTracking=sr,e.setDevtoolsHook=v,e.setTransitionHooks=na,e.shallowReactive=It,e.shallowReadonly=function(e){return Dt(e,!0,lt,At,zt)},e.shallowRef=Yt,e.ssrContextKey=Mi,e.ssrUtils=null,e.stop=function(e){e.effect.stop()},e.toDisplayString=ge,e.toHandlerKey=Y,e.toHandlers=function(e,t){let n={};for(let a in e)n[t&&/[A-Z]/.test(a)?`on:${a}`:Y(a)]=e[a];return n},e.toRaw=$t,e.toRef=function(e,t,n){return Wt(e)?e:L(e)?new an(e):z(e)&&arguments.length>1?rn(e,t,n):Gt(e)},e.toRefs=function(e){let t=T(e)?Array(e.length):{};for(let n in e)t[n]=rn(e,n);return t},e.toValue=function(e){return L(e)?e():Zt(e)},e.transformVNodeArgs=function(e){},e.triggerRef=function(e){e.dep&&e.dep.trigger()},e.unref=Zt,e.useAttrs=function(){return Ha().attrs},e.useCssModule=function(e="$style"){return g},e.useCssVars=function(e){let t=Er();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach((e=>go(e,n)))},a=()=>{let a=e(t.proxy);t.ce?go(t.ce,a):function e(t,n){if(128&t.shapeFlag){let a=t.suspense;t=a.activeBranch,a.pendingBranch&&!a.isHydrating&&a.effects.push((()=>{e(a.activeBranch,n)}))}for(;t.component;)t=t.component.subTree;if(1&t.shapeFlag&&t.el)go(t.el,n);else if(t.type===Ji)t.children.forEach((t=>e(t,n)));else if(t.type===tr){let{el:e,anchor:a}=t;for(;e&&(go(e,n),e!==a);)e=e.nextSibling}}(t.subTree,a),n(a)};Ta((()=>{Ri(a)})),Ea((()=>{let e=new MutationObserver(a);e.observe(t.subTree.el.parentNode,{childList:!0}),Ma((()=>e.disconnect()))}))},e.useHost=No,e.useId=function(){let e=Er();if(e)return(e.appContext.config.idPrefix||"v")+"-"+e.ids[0]+e.ids[1]++},e.useModel=function(e,t,n=g){let a=Er(),i=U(t),r=W(t),o=Di(e,t),s=tn(((o,s)=>{let l,u,c=g;return zi((()=>{let n=e[t];K(l,n)&&(l=n,s())})),{get:()=>(o(),n.get?n.get(l):l),set(e){let o=n.set?n.set(e):e;if(!(K(o,l)||c!==g&&K(e,c)))return;let d=a.vnode.props;d&&(t in d||i in d||r in d)&&(`onUpdate:${t}`in d||`onUpdate:${i}`in d||`onUpdate:${r}`in d)||(l=e,s()),a.emit(`update:${t}`,o),K(e,o)&&K(e,c)&&!K(o,u)&&s(),c=e,u=o}}}));return s[Symbol.iterator]=()=>{let e=0;return{next:()=>e<2?{value:e++?o||g:s,done:!1}:{done:!0}}},s},e.useSSRContext=()=>{},e.useShadowRoot=function(){let e=No();return e&&e.shadowRoot},e.useSlots=function(){return Ha().slots},e.useTemplateRef=function(e){let t=Er(),n=Yt(null);return t&&Object.defineProperty(t.refs===g?t.refs={}:t.refs,e,{enumerable:!0,get:()=>n.value,set:e=>n.value=e}),n},e.useTransitionState=Wn,e.vModelCheckbox=Yo,e.vModelDynamic={created(e,t,n){ts(e,t,n,null,"created")},mounted(e,t,n){ts(e,t,n,null,"mounted")},beforeUpdate(e,t,n,a){ts(e,t,n,a,"beforeUpdate")},updated(e,t,n,a){ts(e,t,n,a,"updated")}},e.vModelRadio=Qo,e.vModelSelect=Zo,e.vModelText=Go,e.vShow={beforeMount(e,{value:t},{transition:n}){e[ho]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):fo(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:a}){!t!=!n&&(a?t?(a.beforeEnter(e),fo(e,!0),a.enter(e)):a.leave(e,(()=>{fo(e,!1)})):fo(e,t))},beforeUnmount(e,{value:t}){fo(e,t)}},e.version=$r,e.warn=v,e.watch=function(e,t,n){return Ni(e,t,n)},e.watchEffect=function(e,t){return Ni(e,null,t)},e.watchPostEffect=Ri,e.watchSyncEffect=zi,e.withAsyncContext=function(e){let t=Er(),n=e();return Ar(),N(n)&&(n=n.catch((e=>{throw Pr(t),e}))),[n,()=>Pr(t)]},e.withCtx=zn,e.withDefaults=function(e,t){return null},e.withDirectives=function(e,t){if(null===Ln)return e;let n=Dr(Ln),a=e.dirs||(e.dirs=[]);for(let e=0;e{let n=e._withKeys||(e._withKeys={}),a=t.join(".");return n[a]||(n[a]=n=>{if(!("key"in n))return;let a=W(n.key);return t.some((e=>e===a||is[e]===a))?e(n):void 0})},e.withMemo=function(e,t,n,a){let i=n[a];if(i&&Fr(i,e))return i;let r=t();return r.memo=e.slice(),r.cacheIndex=a,n[a]=r},e.withModifiers=(e,t)=>{let n=e._withMods||(e._withMods={}),a=t.join(".");return n[a]||(n[a]=(n,...a)=>{for(let e=0;ezn,e}({}); +var Vue=function(e){"use strict";var t,n,a;let i,r,o,s,l,u,c,d,h,p,f,m,g;function _(e){let t=Object.create(null);for(let n of e.split(","))t[n]=1;return e=>e in t}let v={},b=[],y=()=>{},w=()=>!1,k=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||97>e.charCodeAt(2)),x=e=>e.startsWith("onUpdate:"),S=Object.assign,C=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},T=Object.prototype.hasOwnProperty,E=(e,t)=>T.call(e,t),P=Array.isArray,A=e=>"function"==typeof e,M=e=>"string"==typeof e,L=e=>"symbol"==typeof e,R=e=>null!==e&&"object"==typeof e,z=e=>(R(e)||A(e))&&A(e.then)&&A(e.catch),N=Object.prototype.toString,O=e=>M(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,I=_(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),q=_("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),D=e=>{let t=Object.create(null);return n=>t[n]||(t[n]=e(n))},j=/-\w/g,B=D(e=>e.replace(j,e=>e.slice(1).toUpperCase())),F=/\B([A-Z])/g,$=D(e=>e.replace(F,"-$1").toLowerCase()),V=D(e=>e.charAt(0).toUpperCase()+e.slice(1)),U=D(e=>e?`on${V(e)}`:""),H=(e,t)=>!Object.is(e,t),W=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:a,value:n})},Y=e=>{let t=parseFloat(e);return isNaN(t)?e:t},K=e=>{let t=M(e)?Number(e):NaN;return isNaN(t)?e:t},Q=()=>i||(i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}),Z=_("Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol");function J(e){if(P(e)){let t={};for(let n=0;n{if(e){let n=e.split(ee);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function ae(e){let t="";if(M(e))t=e;else if(P(e))for(let n=0;nue(e,t))}let de=e=>!(!e||!0!==e.__v_isRef),he=e=>M(e)?e:null==e?"":P(e)||R(e)&&(e.toString===N||!A(e.toString))?de(e)?he(e.value):JSON.stringify(e,pe,2):String(e),pe=(e,t)=>{let n;if(de(t))return pe(e,t.value);if("[object Map]"===(n=t,N.call(n)))return{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],a)=>(e[fe(t,a)+" =>"]=n,e),{})};{let e;if("[object Set]"===(e=t,N.call(e)))return{[`Set(${t.size})`]:[...t.values()].map(e=>fe(e))};{if(L(t))return fe(t);let e;if(R(t)&&!P(t)&&"[object Object]"!==(e=t,N.call(e)))return String(t)}}return t},fe=(e,t="")=>{var n;return L(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};class me{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=r,!e&&r&&(this.index=(r.scopes||(r.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){let e,t;if(this._isPaused=!0,this.scopes)for(e=0,t=this.scopes.length;e0&&0==--this._on&&(r=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){let t,n;for(t=0,this._active=!1,n=this.effects.length;t0)){if(l){let e=l;for(l=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}for(;s;){let t=s;for(s=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,1&t.flags)try{t.trigger()}catch(t){e||(e=t)}t=n}}if(e)throw e}}function we(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ke(e){let t,n=e.depsTail,a=n;for(;a;){let e=a.prevDep;-1===a.version?(a===n&&(n=e),Ce(a),function(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}(a)):t=a,a.dep.activeLink=a.prevActiveLink,a.prevActiveLink=void 0,a=e}e.deps=t,e.depsTail=n}function xe(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Se(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Se(e){if(4&e.flags&&!(16&e.flags)||(e.flags&=-17,e.globalVersion===Le)||(e.globalVersion=Le,!e.isSSR&&128&e.flags&&(!e.deps&&!e._dirty||!xe(e))))return;e.flags|=2;let t=e.dep,n=o,a=Te;o=e,Te=!0;try{we(e);let n=e.fn(e._value);(0===t.version||H(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{o=n,Te=a,ke(e),e.flags&=-3}}function Ce(e,t=!1){let{dep:n,prevSub:a,nextSub:i}=e;if(a&&(a.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=a,e.nextSub=void 0),n.subs===e&&(n.subs=a,!a&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)Ce(e,!0)}t||--n.sc||!n.map||n.map.delete(n.key)}let Te=!0,Ee=[];function Pe(){Ee.push(Te),Te=!1}function Ae(){let e=Ee.pop();Te=void 0===e||e}function Me(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=o;o=void 0;try{t()}finally{o=e}}}let Le=0;class Re{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ze{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,this.__v_skip=!0}track(e){if(!o||!Te||o===this.computed)return;let t=this.activeLink;if(void 0===t||t.sub!==o)t=this.activeLink=new Re(o,this),o.deps?(t.prevDep=o.depsTail,o.depsTail.nextDep=t,o.depsTail=t):o.deps=o.depsTail=t,function e(t){if(t.dep.sc++,4&t.sub.flags){let n=t.dep.computed;if(n&&!t.dep.subs){n.flags|=20;for(let t=n.deps;t;t=t.nextDep)e(t)}let a=t.dep.subs;a!==t&&(t.prevSub=a,a&&(a.nextSub=t)),t.dep.subs=t}}(t);else if(-1===t.version&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=o.depsTail,t.nextDep=void 0,o.depsTail.nextDep=t,o.depsTail=t,o.deps===t&&(o.deps=e)}return t}trigger(e){this.version++,Le++,this.notify(e)}notify(e){ve++;try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{ye()}}}let Ne=new WeakMap,Oe=Symbol(""),Ie=Symbol(""),qe=Symbol("");function De(e,t,n){if(Te&&o){let t=Ne.get(e);t||Ne.set(e,t=new Map);let a=t.get(n);a||(t.set(n,a=new ze),a.map=t,a.key=n),a.track()}}function je(e,t,n,a,i,r){let o=Ne.get(e);if(!o)return void Le++;let s=e=>{e&&e.trigger()};if(ve++,"clear"===t)o.forEach(s);else{let i=P(e),r=i&&O(n);if(i&&"length"===n){let e=Number(a);o.forEach((t,n)=>{("length"===n||n===qe||!L(n)&&n>=e)&&s(t)})}else switch((void 0!==n||o.has(void 0))&&s(o.get(n)),r&&s(o.get(qe)),t){case"add":if(i)r&&s(o.get("length"));else{let t;s(o.get(Oe)),"[object Map]"===(t=e,N.call(t))&&s(o.get(Ie))}break;case"delete":if(!i){let t;s(o.get(Oe)),"[object Map]"===(t=e,N.call(t))&&s(o.get(Ie))}break;case"set":let t;"[object Map]"===(t=e,N.call(t))&&s(o.get(Oe))}}ye()}function Be(e){let t=Ct(e);return t===e?t:(De(t,0,qe),xt(e)?t:t.map(Et))}function Fe(e){return De(e=Ct(e),0,qe),e}function $e(e,t){return kt(e)?wt(e)?Pt(Et(t)):Pt(t):Et(t)}let Ve={__proto__:null,[Symbol.iterator](){return Ue(this,Symbol.iterator,e=>$e(this,e))},concat(...e){return Be(this).concat(...e.map(e=>P(e)?Be(e):e))},entries(){return Ue(this,"entries",e=>(e[1]=$e(this,e[1]),e))},every(e,t){return We(this,"every",e,t,void 0,arguments)},filter(e,t){return We(this,"filter",e,t,e=>e.map(e=>$e(this,e)),arguments)},find(e,t){return We(this,"find",e,t,e=>$e(this,e),arguments)},findIndex(e,t){return We(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return We(this,"findLast",e,t,e=>$e(this,e),arguments)},findLastIndex(e,t){return We(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return We(this,"forEach",e,t,void 0,arguments)},includes(...e){return Ye(this,"includes",e)},indexOf(...e){return Ye(this,"indexOf",e)},join(e){return Be(this).join(e)},lastIndexOf(...e){return Ye(this,"lastIndexOf",e)},map(e,t){return We(this,"map",e,t,void 0,arguments)},pop(){return Ke(this,"pop")},push(...e){return Ke(this,"push",e)},reduce(e,...t){return Ge(this,"reduce",e,t)},reduceRight(e,...t){return Ge(this,"reduceRight",e,t)},shift(){return Ke(this,"shift")},some(e,t){return We(this,"some",e,t,void 0,arguments)},splice(...e){return Ke(this,"splice",e)},toReversed(){return Be(this).toReversed()},toSorted(e){return Be(this).toSorted(e)},toSpliced(...e){return Be(this).toSpliced(...e)},unshift(...e){return Ke(this,"unshift",e)},values(){return Ue(this,"values",e=>$e(this,e))}};function Ue(e,t,n){let a=Fe(e),i=a[t]();return a===e||xt(e)||(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}let He=Array.prototype;function We(e,t,n,a,i,r){let o=Fe(e),s=o!==e&&!xt(e),l=o[t];if(l!==He[t]){let t=l.apply(e,r);return s?Et(t):t}let u=n;o!==e&&(s?u=function(t,a){return n.call(this,$e(e,t),a,e)}:n.length>2&&(u=function(t,a){return n.call(this,t,a,e)}));let c=l.call(o,u,a);return s&&i?i(c):c}function Ge(e,t,n,a){let i=Fe(e),r=n;return i!==e&&(xt(e)?n.length>3&&(r=function(t,a,i){return n.call(this,t,a,i,e)}):r=function(t,a,i){return n.call(this,t,$e(e,a),i,e)}),i[t](r,...a)}function Ye(e,t,n){let a=Ct(e);De(a,0,qe);let i=a[t](...n);return-1!==i&&!1!==i||!St(n[0])?i:(n[0]=Ct(n[0]),a[t](...n))}function Ke(e,t,n=[]){Pe(),ve++;let a=Ct(e)[t].apply(e,n);return ye(),Ae(),a}let Qe=_("__proto__,__v_isRef,__isVue"),Ze=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>"arguments"!==e&&"caller"!==e).map(e=>Symbol[e]).filter(L));function Je(e){L(e)||(e=String(e));let t=Ct(this);return De(t,0,e),t.hasOwnProperty(e)}class Xe{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if("__v_skip"===t)return e.__v_skip;let a=this._isReadonly,i=this._isShallow;if("__v_isReactive"===t)return!a;if("__v_isReadonly"===t)return a;if("__v_isShallow"===t)return i;if("__v_raw"===t)return n===(a?i?gt:mt:i?ft:pt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let r=P(e);if(!a){let e;if(r&&(e=Ve[t]))return e;if("hasOwnProperty"===t)return Je}let o=Reflect.get(e,t,At(e)?e:n);if((L(t)?Ze.has(t):Qe(t))||(a||De(e,0,t),i))return o;if(At(o)){let e=r&&O(t)?o:o.value;return a&&R(e)?bt(e):e}return R(o)?a?bt(o):_t(o):o}}class et extends Xe{constructor(e=!1){super(!1,e)}set(e,t,n,a){let i=e[t],r=P(e)&&O(t);if(!this._isShallow){let e=kt(i);if(xt(n)||kt(n)||(i=Ct(i),n=Ct(n)),!r&&At(i)&&!At(n))return e||(i.value=n),!0}let o=r?Number(t)e;function st(e){return function(){return"delete"!==e&&("clear"===e?void 0:this)}}function lt(e,t){let n,a=(S(n={get(n){let a=this.__v_raw,i=Ct(a),r=Ct(n);e||(H(n,r)&&De(i,0,n),De(i,0,r));let{has:o}=Reflect.getPrototypeOf(i),s=t?ot:e?Pt:Et;return o.call(i,n)?s(a.get(n)):o.call(i,r)?s(a.get(r)):void(a!==i&&a.get(n))},get size(){let t=this.__v_raw;return e||De(Ct(t),0,Oe),t.size},has(t){let n=this.__v_raw,a=Ct(n),i=Ct(t);return e||(H(t,i)&&De(a,0,t),De(a,0,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,a){let i=this,r=i.__v_raw,o=Ct(r),s=t?ot:e?Pt:Et;return e||De(o,0,Oe),r.forEach((e,t)=>n.call(a,s(e),s(t),i))}},e?{add:st("add"),set:st("set"),delete:st("delete"),clear:st("clear")}:{add(e){t||xt(e)||kt(e)||(e=Ct(e));let n=Ct(this);return Reflect.getPrototypeOf(n).has.call(n,e)||(n.add(e),je(n,"add",e,e)),this},set(e,n){t||xt(n)||kt(n)||(n=Ct(n));let a=Ct(this),{has:i,get:r}=Reflect.getPrototypeOf(a),o=i.call(a,e);o||(e=Ct(e),o=i.call(a,e));let s=r.call(a,e);return a.set(e,n),o?H(n,s)&&je(a,"set",e,n):je(a,"add",e,n),this},delete(e){let t=Ct(this),{has:n,get:a}=Reflect.getPrototypeOf(t),i=n.call(t,e);i||(e=Ct(e),i=n.call(t,e)),a&&a.call(t,e);let r=t.delete(e);return i&&je(t,"delete",e,void 0),r},clear(){let e=Ct(this),t=0!==e.size,n=e.clear();return t&&je(e,"clear",void 0,void 0),n}}),["keys","values","entries",Symbol.iterator].forEach(a=>{n[a]=function(...n){let i,r=this.__v_raw,o=Ct(r),s="[object Map]"===(i=o,N.call(i)),l="entries"===a||a===Symbol.iterator&&s,u=r[a](...n),c=t?ot:e?Pt:Et;return e||De(o,0,"keys"===a&&s?Ie:Oe),{next(){let{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:l?[c(e[0]),c(e[1])]:c(e),done:t}},[Symbol.iterator](){return this}}}}),n);return(t,n,i)=>"__v_isReactive"===n?!e:"__v_isReadonly"===n?e:"__v_raw"===n?t:Reflect.get(E(a,n)&&n in t?a:t,n,i)}let ut={get:lt(!1,!1)},ct={get:lt(!1,!0)},dt={get:lt(!0,!1)},ht={get:lt(!0,!0)},pt=new WeakMap,ft=new WeakMap,mt=new WeakMap,gt=new WeakMap;function _t(e){return kt(e)?e:yt(e,!1,nt,ut,pt)}function vt(e){return yt(e,!1,it,ct,ft)}function bt(e){return yt(e,!0,at,dt,mt)}function yt(e,t,n,a,i){var r;let o;if(!R(e)||e.__v_raw&&(!t||!e.__v_isReactive))return e;let s=(r=e).__v_skip||!Object.isExtensible(r)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}((o=r,N.call(o)).slice(8,-1));if(0===s)return e;let l=i.get(e);if(l)return l;let u=new Proxy(e,2===s?a:n);return i.set(e,u),u}function wt(e){return kt(e)?wt(e.__v_raw):!(!e||!e.__v_isReactive)}function kt(e){return!(!e||!e.__v_isReadonly)}function xt(e){return!(!e||!e.__v_isShallow)}function St(e){return!!e&&!!e.__v_raw}function Ct(e){let t=e&&e.__v_raw;return t?Ct(t):e}function Tt(e){return!E(e,"__v_skip")&&Object.isExtensible(e)&&G(e,"__v_skip",!0),e}let Et=e=>R(e)?_t(e):e,Pt=e=>R(e)?bt(e):e;function At(e){return!!e&&!0===e.__v_isRef}function Mt(e){return Rt(e,!1)}function Lt(e){return Rt(e,!0)}function Rt(e,t){return At(e)?e:new zt(e,t)}class zt{constructor(e,t){this.dep=new ze,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:Ct(e),this._value=t?e:Et(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||xt(e)||kt(e);H(e=n?e:Ct(e),t)&&(this._rawValue=e,this._value=n?e:Et(e),this.dep.trigger())}}function Nt(e){return At(e)?e.value:e}let Ot={get:(e,t,n)=>"__v_raw"===t?e:Nt(Reflect.get(e,t,n)),set:(e,t,n,a)=>{let i=e[t];return At(i)&&!At(n)?(i.value=n,!0):Reflect.set(e,t,n,a)}};function It(e){return wt(e)?e:new Proxy(e,Ot)}class qt{constructor(e){this.__v_isRef=!0,this._value=void 0;const t=this.dep=new ze,{get:n,set:a}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=a}get value(){return this._value=this._get()}set value(e){this._set(e)}}function Dt(e){return new qt(e)}class jt{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._raw=Ct(e);let a=!0,i=e;if(!P(e)||!O(String(t)))do{a=!St(i)||xt(i)}while(a&&(i=i.__v_raw));this._shallow=a}get value(){let e=this._object[this._key];return this._shallow&&(e=Nt(e)),this._value=void 0===e?this._defaultValue:e}set value(e){if(this._shallow&&At(this._raw[this._key])){let t=this._object[this._key];if(At(t))return void(t.value=e)}this._object[this._key]=e}get dep(){var e,t;let n;return e=this._raw,t=this._key,(n=Ne.get(e))&&n.get(t)}}class Bt{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}class Ft{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new ze(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Le-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(8&this.flags)&&o!==this)return be(this,!0),!0}get value(){let e=this.dep.track();return Se(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}let $t={},Vt=new WeakMap;function Ut(e,t=!1,n=m){if(n){let t=Vt.get(n);t||Vt.set(n,t=[]),t.push(e)}}function Ht(e,t=1/0,n){if(t<=0||!R(e)||e.__v_skip||((n=n||new Map).get(e)||0)>=t)return e;if(n.set(e,t),t--,At(e))Ht(e.value,t,n);else if(P(e))for(let a=0;a{Ht(e,t,n)});else{let a;if("[object Object]"===(a=e,N.call(a))){for(let a in e)Ht(e[a],t,n);for(let a of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,a)&&Ht(e[a],t,n)}}}return e}function Wt(e,t,n,a){try{return a?e(...a):e()}catch(e){Yt(e,t,n)}}function Gt(e,t,n,a){if(A(e)){let i=Wt(e,t,n,a);return i&&z(i)&&i.catch(e=>{Yt(e,t,n)}),i}if(P(e)){let i=[];for(let r=0;r=un(n)?Kt.push(e):Kt.splice(function(e){let t=Qt+1,n=Kt.length;for(;t>>1,i=Kt[a],r=un(i);run(e)-un(t));if(Zt.length=0,Jt)return void Jt.push(...e);for(Xt=0,Jt=e;Xtnull==e.id?2&e.flags?-1:1/0:e.id,cn=null,dn=null;function hn(e){let t=cn;return cn=e,dn=e&&e.type.__scopeId||null,t}function pn(e,t=cn,n){if(!t||e._n)return e;let a=(...n)=>{let i;a._d&&Vi(-1);let r=hn(t);try{i=e(...n)}finally{hn(r),a._d&&Vi(1)}return i};return a._n=!0,a._c=!0,a._d=!0,a}function fn(e,t,n,a){let i=e.dirs,r=t&&t.dirs;for(let o=0;oe&&(e.disabled||""===e.disabled),_n=e=>e&&(e.defer||""===e.defer),vn=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,bn=e=>"function"==typeof MathMLElement&&e instanceof MathMLElement,yn=(e,t)=>{let n=e&&e.to;return M(n)?t?t(n):null:n},wn={name:"Teleport",__isTeleport:!0,process(e,t,n,a,i,r,o,s,l,u){let{mc:c,pc:d,pbc:h,o:{insert:p,querySelector:f,createText:m}}=u,g=gn(t.props),{shapeFlag:_,children:v,dynamicChildren:b}=t;if(null==e){let e=t.el=m(""),u=t.anchor=m("");p(e,n,a),p(u,n,a);let d=(e,t)=>{16&_&&c(v,e,t,i,r,o,s,l)},h=()=>{let e=t.target=yn(t.props,f),n=Sn(e,t,m,p);e&&("svg"!==o&&vn(e)?o="svg":"mathml"!==o&&bn(e)&&(o="mathml"),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(e),g||(d(e,n),xn(t,!1)))};g&&(d(n,u),xn(t,!0)),_n(t.props)?(t.el.__isMounted=!1,bi(()=>{h(),delete t.el.__isMounted},r)):h()}else{if(_n(t.props)&&!1===e.el.__isMounted)return void bi(()=>{wn.process(e,t,n,a,i,r,o,s,l,u)},r);t.el=e.el,t.targetStart=e.targetStart;let c=t.anchor=e.anchor,p=t.target=e.target,m=t.targetAnchor=e.targetAnchor,_=gn(e.props),v=_?n:p,y=_?c:m;if("svg"===o||vn(p)?o="svg":("mathml"===o||bn(p))&&(o="mathml"),b?(h(e.dynamicChildren,b,v,i,r,o,s),Ci(e,t,!0)):l||d(e,t,v,y,i,r,o,s,!1),g)_?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):kn(t,n,c,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=t.target=yn(t.props,f);e&&kn(t,e,null,u,0)}else _&&kn(t,p,m,u,1);xn(t,g)}},remove(e,t,n,{um:a,o:{remove:i}},r){let{shapeFlag:o,children:s,anchor:l,targetStart:u,targetAnchor:c,target:d,props:h}=e;if(d&&(i(u),i(c)),r&&i(l),16&o){let e=r||!gn(h);for(let i=0;i{e.isMounted=!0}),ma(()=>{e.isUnmounting=!0}),e}let Pn=[Function,Array],An={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Pn,onEnter:Pn,onAfterEnter:Pn,onEnterCancelled:Pn,onBeforeLeave:Pn,onLeave:Pn,onAfterLeave:Pn,onLeaveCancelled:Pn,onBeforeAppear:Pn,onAppear:Pn,onAfterAppear:Pn,onAppearCancelled:Pn},Mn=e=>{let t=e.subTree;return t.component?Mn(t.component):t};function Ln(e){let t=e[0];if(e.length>1)for(let n of e)if(n.type!==Ii){t=n;break}return t}let Rn={name:"BaseTransition",props:An,setup(e,{slots:t}){let n=ur(),a=En();return()=>{let i=t.default&&Dn(t.default(),!0);if(!i||!i.length)return;let r=Ln(i),o=Ct(e),{mode:s}=o;if(a.isLeaving)return On(r);let l=In(r);if(!l)return On(r);let u=Nn(l,o,a,n,e=>u=e);l.type!==Ii&&qn(l,u);let c=n.subTree&&In(n.subTree);if(c&&c.type!==Ii&&!Gi(c,l)&&Mn(n).type!==Ii){let e=Nn(c,o,a,n);if(qn(c,e),"out-in"===s&&l.type!==Ii)return a.isLeaving=!0,e.afterLeave=()=>{a.isLeaving=!1,8&n.job.flags||n.update(),delete e.afterLeave,c=void 0},On(r);"in-out"===s&&l.type!==Ii?e.delayLeave=(e,t,n)=>{zn(a,c)[String(c.key)]=c,e[Cn]=()=>{t(),e[Cn]=void 0,delete u.delayedLeave,c=void 0},u.delayedLeave=()=>{n(),delete u.delayedLeave,c=void 0}}:c=void 0}else c&&(c=void 0);return r}}};function zn(e,t){let{leavingVNodes:n}=e,a=n.get(t.type);return a||(a=Object.create(null),n.set(t.type,a)),a}function Nn(e,t,n,a,i){let{appear:r,mode:o,persisted:s=!1,onBeforeEnter:l,onEnter:u,onAfterEnter:c,onEnterCancelled:d,onBeforeLeave:h,onLeave:p,onAfterLeave:f,onLeaveCancelled:m,onBeforeAppear:g,onAppear:_,onAfterAppear:v,onAppearCancelled:b}=t,y=String(e.key),w=zn(n,e),k=(e,t)=>{e&&Gt(e,a,9,t)},x=(e,t)=>{let n=t[1];k(e,t),P(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},S={mode:o,persisted:s,beforeEnter(t){let a=l;if(!n.isMounted){if(!r)return;a=g||l}t[Cn]&&t[Cn](!0);let i=w[y];i&&Gi(e,i)&&i.el[Cn]&&i.el[Cn](),k(a,[t])},enter(e){let t=u,a=c,i=d;if(!n.isMounted){if(!r)return;t=_||u,a=v||c,i=b||d}let o=!1,s=e[Tn]=t=>{o||(o=!0,k(t?i:a,[e]),S.delayedLeave&&S.delayedLeave(),e[Tn]=void 0)};t?x(t,[e,s]):s()},leave(t,a){let i=String(e.key);if(t[Tn]&&t[Tn](!0),n.isUnmounting)return a();k(h,[t]);let r=!1,o=t[Cn]=n=>{r||(r=!0,a(),k(n?m:f,[t]),t[Cn]=void 0,w[i]===e&&delete w[i])};w[i]=e,p?x(p,[t,o]):o()},clone(e){let r=Nn(e,t,n,a,i);return i&&i(r),r}};return S}function On(e){if(na(e))return(e=Xi(e)).children=null,e}function In(e){if(!na(e))return e.type.__isTeleport&&e.children?Ln(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(16&t)return n[0];if(32&t&&A(n.default))return n.default()}}function qn(e,t){6&e.shapeFlag&&e.component?(e.transition=t,qn(e.component.subTree,t)):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Dn(e,t=!1,n){let a=[],i=0;for(let r=0;r1)for(let e=0;e$n(e,t&&(P(t)?t[r]:t),n,a,i));if(ea(a)&&!i)return void(512&a.shapeFlag&&a.type.__asyncResolved&&a.component.subTree.component&&$n(e,t,n,a.component.subTree));let r=4&a.shapeFlag?br(a.component):a.el,o=i?null:r,{i:s,r:l}=e,u=t&&t.r,c=s.refs===v?s.refs={}:s.refs,d=s.setupState,h=Ct(d),p=d===v?w:e=>E(h,e);if(null!=u&&u!==l&&(Vn(t),M(u)?(c[u]=null,p(u)&&(d[u]=null)):At(u)&&(u.value=null,t.k&&(c[t.k]=null))),A(l))Wt(l,s,12,[o,c]);else{let t=M(l),a=At(l);if(t||a){let s=()=>{if(e.f){let n=t?p(l)?d[l]:c[l]:l.value;if(i)P(n)&&C(n,r);else if(P(n))n.includes(r)||n.push(r);else if(t)c[l]=[r],p(l)&&(d[l]=c[l]);else{let t=[r];l.value=t,e.k&&(c[e.k]=t)}}else t?(c[l]=o,p(l)&&(d[l]=o)):a&&(l.value=o,e.k&&(c[e.k]=o))};if(o){let t=()=>{s(),Fn.delete(e)};t.id=-1,Fn.set(e,t),bi(t,n)}else Vn(e),s()}}}function Vn(e){let t=Fn.get(e);t&&(t.flags|=8,Fn.delete(e))}let Un=!1,Hn=()=>{Un||(console.error("Hydration completed but contains mismatches."),Un=!0)},Wn=e=>{if(1===e.nodeType){if(e.namespaceURI.includes("svg")&&"foreignObject"!==e.tagName)return"svg";if(e.namespaceURI.includes("MathML"))return"mathml"}},Gn=e=>8===e.nodeType;function Yn(e){let{mt:t,p:n,o:{patchProp:a,createText:i,nextSibling:r,parentNode:o,remove:s,insert:l,createComment:u}}=e,c=(n,a,s,u,v,b=!1)=>{b=b||!!a.dynamicChildren;let y=Gn(n)&&"["===n.data,w=()=>f(n,a,s,u,v,y),{type:k,ref:x,shapeFlag:S,patchFlag:C}=a,T=n.nodeType;a.el=n,-2===C&&(b=!1,a.dynamicChildren=null);let E=null;switch(k){case Oi:3!==T?""===a.children?(l(a.el=i(""),o(n),n),E=n):E=w():(n.data!==a.children&&(Hn(),n.data=a.children),E=r(n));break;case Ii:_(n)?(E=r(n),g(a.el=n.content.firstChild,n,s)):E=8!==T||y?w():r(n);break;case qi:if(y&&(T=(n=r(n)).nodeType),1===T||3===T){E=n;let e=!a.children.length;for(let t=0;t{o=o||!!t.dynamicChildren;let{type:l,props:u,patchFlag:c,shapeFlag:d,dirs:p,transition:f}=t,m="input"===l||"option"===l;if(m||-1!==c){let l;p&&fn(t,null,n,"created");let v=!1;if(_(e)){v=Si(null,f)&&n&&n.vnode.props&&n.vnode.props.appear;let a=e.content.firstChild;if(v){let e=a.getAttribute("class");e&&(a.$cls=e),f.beforeEnter(a)}g(a,e,n),t.el=e=a}if(16&d&&(!u||!u.innerHTML&&!u.textContent)){let a=h(e.firstChild,t,e,n,i,r,o);for(;a;){Zn(e,1)||Hn();let t=a;a=a.nextSibling,s(t)}}else if(8&d){let n=t.children;"\n"===n[0]&&("PRE"===e.tagName||"TEXTAREA"===e.tagName)&&(n=n.slice(1));let{textContent:a}=e;a!==n&&a!==n.replace(/\r\n|\r/g,"\n")&&(Zn(e,0)||Hn(),e.textContent=t.children)}if(u)if(m||!o||48&c){let t=e.tagName.includes("-");for(let i in u)(m&&(i.endsWith("value")||"indeterminate"===i)||k(i)&&!I(i)||"."===i[0]||t)&&a(e,i,null,u[i],void 0,n)}else if(u.onClick)a(e,"onClick",null,u.onClick,void 0,n);else if(4&c&&wt(u.style))for(let e in u.style)u.style[e];(l=u&&u.onVnodeBeforeMount)&&rr(l,n,t),p&&fn(t,null,n,"beforeMount"),((l=u&&u.onVnodeMounted)||p||v)&&Ri(()=>{l&&rr(l,n,t),v&&f.enter(e),p&&fn(t,null,n,"mounted")},i)}return e.nextSibling},h=(e,t,a,o,s,u,d)=>{d=d||!!t.dynamicChildren;let h=t.children,p=h.length;for(let t=0;t{let{slotScopeIds:c}=t;c&&(i=i?i.concat(c):c);let d=o(e),p=h(r(e),t,d,n,a,i,s);return p&&Gn(p)&&"]"===p.data?r(t.anchor=p):(Hn(),l(t.anchor=u("]"),d,p),p)},f=(e,t,a,i,l,u)=>{if(Zn(e.parentElement,1)||Hn(),t.el=null,u){let t=m(e);for(;;){let n=r(e);if(!n||n===t)break;s(n)}}let c=r(e),d=o(e);return s(e),n(null,t,d,c,a,i,Wn(d),l),a&&(a.vnode.el=t.el,oi(a,t.el)),c},m=(e,t="[",n="]")=>{let a=0;for(;e;)if((e=r(e))&&Gn(e)&&(e.data===t&&a++,e.data===n)){if(0===a)return r(e);a--}return e},g=(e,t,n)=>{let a=t.parentNode;a&&a.replaceChild(e,t);let i=n;for(;i;)i.vnode.el===t&&(i.vnode.el=i.subTree.el=e),i=i.parent},_=e=>1===e.nodeType&&"TEMPLATE"===e.tagName;return[(e,t)=>{if(!t.hasChildNodes())return n(null,e,t),ln(),void(t._vnode=e);c(t.firstChild,e,null,null,null),ln(),t._vnode=e},c]}let Kn="data-allow-mismatch",Qn={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function Zn(e,t){if(0===t||1===t)for(;e&&!e.hasAttribute(Kn);)e=e.parentElement;let n=e&&e.getAttribute(Kn);if(null==n)return!1;{if(""===n)return!0;let e=n.split(",");return!(0!==t||!e.includes("children"))||e.includes(Qn[t])}}let Jn=Q().requestIdleCallback||(e=>setTimeout(e,1)),Xn=Q().cancelIdleCallback||(e=>clearTimeout(e)),ea=e=>!!e.type.__asyncLoader;function ta(e,t){let{ref:n,props:a,children:i,ce:r}=t.vnode,o=Zi(e,a,i);return o.ref=n,o.ce=r,delete t.vnode.ce,o}let na=e=>e.type.__isKeepAlive;function aa(e,t){let n;return P(e)?e.some(e=>aa(e,t)):M(e)?e.split(",").includes(t):"[object RegExp]"===(n=e,N.call(n))&&(e.lastIndex=0,e.test(t))}function ia(e,t){oa(e,"a",t)}function ra(e,t){oa(e,"da",t)}function oa(e,t,n=lr){let a=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(ua(t,a,n),n){let e=n.parent;for(;e&&e.parent;)na(e.parent.vnode)&&function(e,t,n,a){let i=ua(t,e,a,!0);ga(()=>{C(a[t],i)},n)}(a,t,n,e),e=e.parent}}function sa(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function la(e){return 128&e.shapeFlag?e.ssContent:e}function ua(e,t,n=lr,a=!1){if(n){let i=n[e]||(n[e]=[]),r=t.__weh||(t.__weh=(...a)=>{Pe();let i=cr(n),r=Gt(t,n,e,a);return i(),Ae(),r});return a?i.unshift(r):i.push(r),r}}let ca=e=>(t,n=lr)=>{pr&&"sp"!==e||ua(e,(...e)=>t(...e),n)},da=ca("bm"),ha=ca("m"),pa=ca("bu"),fa=ca("u"),ma=ca("bum"),ga=ca("um"),_a=ca("sp"),va=ca("rtg"),ba=ca("rtc");function ya(e,t=lr){ua("ec",e,t)}let wa="components",ka=Symbol.for("v-ndc");function xa(e,t,n=!0,a=!1){let i=cn||lr;if(i){let n=i.type;if(e===wa){let e=yr(n,!1);if(e&&(e===t||e===B(t)||e===V(B(t))))return n}let r=Sa(i[e]||n[e],t)||Sa(i.appContext[e],t);return!r&&a?n:r}}function Sa(e,t){return e&&(e[t]||e[B(t)]||e[V(B(t))])}let Ca=e=>e?hr(e)?br(e):Ca(e.parent):null,Ta=S(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=>Ca(e.parent),$root:e=>Ca(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Na(e),$forceUpdate:e=>e.f||(e.f=()=>{an(e.update)}),$nextTick:e=>e.n||(e.n=nn.bind(e.proxy)),$watch:e=>Qa.bind(e)}),Ea=(e,t)=>e!==v&&!e.__isScriptSetup&&E(e,t),Pa={get({_:e},t){let n,a;if("__v_skip"===t)return!0;let{ctx:i,setupState:r,data:o,props:s,accessCache:l,type:u,appContext:c}=e;if("$"!==t[0]){let e=l[t];if(void 0!==e)switch(e){case 1:return r[t];case 2:return o[t];case 4:return i[t];case 3:return s[t]}else{if(Ea(r,t))return l[t]=1,r[t];if(o!==v&&E(o,t))return l[t]=2,o[t];if(E(s,t))return l[t]=3,s[t];if(i!==v&&E(i,t))return l[t]=4,i[t];Ra&&(l[t]=0)}}let d=Ta[t];return d?("$attrs"===t&&De(e.attrs,0,""),d(e)):(n=u.__cssModules)&&(n=n[t])?n:i!==v&&E(i,t)?(l[t]=4,i[t]):E(a=c.config.globalProperties,t)?a[t]:void 0},set({_:e},t,n){let{data:a,setupState:i,ctx:r}=e;return Ea(i,t)?(i[t]=n,!0):a!==v&&E(a,t)?(a[t]=n,!0):!(E(e.props,t)||"$"===t[0]&&t.slice(1)in e||(r[t]=n,0))},has({_:{data:e,setupState:t,accessCache:n,ctx:a,appContext:i,props:r,type:o}},s){let l;return!!(n[s]||e!==v&&"$"!==s[0]&&E(e,s)||Ea(t,s)||E(r,s)||E(a,s)||E(Ta,s)||E(i.config.globalProperties,s)||(l=o.__cssModules)&&l[s])},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:E(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},Aa=S({},Pa,{get(e,t){if(t!==Symbol.unscopables)return Pa.get(e,t,e)},has:(e,t)=>"_"!==t[0]&&!Z(t)});function Ma(e){let t=ur();return t.setupContext||(t.setupContext=vr(t))}function La(e){return P(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}let Ra=!0;function za(e,t,n){Gt(P(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function Na(e){let t,n=e.type,{mixins:a,extends:i}=n,{mixins:r,optionsCache:o,config:{optionMergeStrategies:s}}=e.appContext,l=o.get(n);return l?t=l:r.length||a||i?(t={},r.length&&r.forEach(e=>Oa(t,e,s,!0)),Oa(t,n,s)):t=n,R(n)&&o.set(n,t),t}function Oa(e,t,n,a=!1){let{mixins:i,extends:r}=t;for(let o in r&&Oa(e,r,n,!0),i&&i.forEach(t=>Oa(e,t,n,!0)),t)if(a&&"expose"===o);else{let a=Ia[o]||n&&n[o];e[o]=a?a(e[o],t[o]):t[o]}return e}let Ia={data:qa,props:Fa,emits:Fa,methods:Ba,computed:Ba,beforeCreate:ja,created:ja,beforeMount:ja,mounted:ja,beforeUpdate:ja,updated:ja,beforeDestroy:ja,beforeUnmount:ja,destroyed:ja,unmounted:ja,activated:ja,deactivated:ja,errorCaptured:ja,serverPrefetch:ja,components:Ba,directives:Ba,watch:function(e,t){if(!e)return t;if(!t)return e;let n=S(Object.create(null),e);for(let a in t)n[a]=ja(e[a],t[a]);return n},provide:qa,inject:function(e,t){return Ba(Da(e),Da(t))}};function qa(e,t){return t?e?function(){return S(A(e)?e.call(this,this):e,A(t)?t.call(this,this):t)}:t:e}function Da(e){if(P(e)){let t={};for(let n=0;n1)return n&&A(t)?t.call(a&&a.proxy):t}}let Ga=Symbol.for("v-scx");function Ya(e,t){return Ka(e,null,{flush:"sync"})}function Ka(e,t,n=v){let{flush:a}=n,i=S({},n),o=lr;i.call=(e,t,n)=>Gt(e,o,t,n);let s=!1;return"post"===a?i.scheduler=e=>{bi(e,o&&o.suspense)}:"sync"!==a&&(s=!0,i.scheduler=(e,t)=>{t?e():an(e)}),i.augmentJob=e=>{t&&(e.flags|=4),s&&(e.flags|=2,o&&(e.id=o.uid,e.i=o))},function(e,t,n=v){let a,i,o,s,{immediate:l,deep:u,once:c,scheduler:d,augmentJob:h,call:p}=n,f=e=>u?e:xt(e)||!1===u||0===u?Ht(e,1):Ht(e),g=!1,_=!1;if(At(e)?(i=()=>e.value,g=xt(e)):wt(e)?(i=()=>f(e),g=!0):P(e)?(_=!0,g=e.some(e=>wt(e)||xt(e)),i=()=>e.map(e=>At(e)?e.value:wt(e)?f(e):A(e)?p?p(e,2):e():void 0)):i=A(e)?t?p?()=>p(e,2):e:()=>{if(o){Pe();try{o()}finally{Ae()}}let t=m;m=a;try{return p?p(e,3,[s]):e(s)}finally{m=t}}:y,t&&u){let e=i,t=!0===u?1/0:u;i=()=>Ht(e(),t)}let b=r,w=()=>{a.stop(),b&&b.active&&C(b.effects,a)};if(c&&t){let e=t;t=(...t)=>{e(...t),w()}}let k=_?Array(e.length).fill($t):$t,x=e=>{if(1&a.flags&&(a.dirty||e))if(t){let e=a.run();if(u||g||(_?e.some((e,t)=>H(e,k[t])):H(e,k))){o&&o();let n=m;m=a;try{let n=[e,k===$t?void 0:_&&k[0]===$t?[]:k,s];k=e,p?p(t,3,n):t(...n)}finally{m=n}}}else a.run()};return h&&h(x),(a=new _e(i)).scheduler=d?()=>d(x,!1):x,s=e=>Ut(e,!1,a),o=a.onStop=()=>{let e=Vt.get(a);if(e){if(p)p(e,4);else for(let t of e)t();Vt.delete(a)}},t?l?x(!0):k=a.run():d?d(x.bind(null,!0),!0):a.run(),w.pause=a.pause.bind(a),w.resume=a.resume.bind(a),w.stop=w,w}(e,t,i)}function Qa(e,t,n){let a,i=this.proxy,r=M(e)?e.includes(".")?Za(i,e):()=>i[e]:e.bind(i,i);A(t)?a=t:(a=t.handler,n=t);let o=cr(this),s=Ka(r,a.bind(i),n);return o(),s}function Za(e,t){let n=t.split(".");return()=>{let t=e;for(let e=0;e"modelValue"===t||"model-value"===t?e.modelModifiers:e[`${t}Modifiers`]||e[`${B(t)}Modifiers`]||e[`${$(t)}Modifiers`];function Xa(e,t,...n){let a;if(e.isUnmounted)return;let i=e.vnode.props||v,r=n,o=t.startsWith("update:"),s=o&&Ja(i,t.slice(7));s&&(s.trim&&(r=n.map(e=>M(e)?e.trim():e)),s.number&&(r=n.map(Y)));let l=i[a=U(t)]||i[a=U(B(t))];!l&&o&&(l=i[a=U($(t))]),l&&Gt(l,e,6,r);let u=i[a+"Once"];if(u){if(e.emitted){if(e.emitted[a])return}else e.emitted={};e.emitted[a]=!0,Gt(u,e,6,r)}}let ei=new WeakMap;function ti(e,t){return!!e&&!!k(t)&&(E(e,(t=t.slice(2).replace(/Once$/,""))[0].toLowerCase()+t.slice(1))||E(e,$(t))||E(e,t))}function ni(e){let t,n,{type:a,vnode:i,proxy:r,withProxy:o,propsOptions:[s],slots:l,attrs:u,emit:c,render:d,renderCache:h,props:p,data:f,setupState:m,ctx:g,inheritAttrs:_}=e,v=hn(e);try{if(4&i.shapeFlag){let e=o||r;t=tr(d.call(e,e,h,p,m,f,g)),n=u}else t=tr(a.length>1?a(p,{attrs:u,slots:l,emit:c}):a(p,null)),n=a.props?u:ai(u)}catch(n){Di.length=0,Yt(n,e,1),t=Zi(Ii)}let b=t;if(n&&!1!==_){let e=Object.keys(n),{shapeFlag:t}=b;e.length&&7&t&&(s&&e.some(x)&&(n=ii(n,s)),b=Xi(b,n,!1,!0))}return i.dirs&&((b=Xi(b,null,!1,!0)).dirs=b.dirs?b.dirs.concat(i.dirs):i.dirs),i.transition&&qn(b,i.transition),t=b,hn(v),t}let ai=e=>{let t;for(let n in e)("class"===n||"style"===n||k(n))&&((t||(t={}))[n]=e[n]);return t},ii=(e,t)=>{let n={};for(let a in e)x(a)&&a.slice(9)in t||(n[a]=e[a]);return n};function ri(e,t,n){let a=Object.keys(t);if(a.length!==Object.keys(e).length)return!0;for(let i=0;iObject.getPrototypeOf(e)===si;function ui(e,t,n,a){let i,[r,o]=e.propsOptions,s=!1;if(t)for(let l in t){let u;if(I(l))continue;let c=t[l];r&&E(r,u=B(l))?o&&o.includes(u)?(i||(i={}))[u]=c:n[u]=c:ti(e.emitsOptions,l)||l in a&&c===a[l]||(a[l]=c,s=!0)}if(o){let t=Ct(n),a=i||v;for(let i=0;i"_"===e||"_ctx"===e||"$stable"===e,fi=e=>P(e)?e.map(tr):[tr(e)],mi=(e,t,n)=>{if(t._n)return t;let a=pn((...e)=>fi(t(...e)),n);return a._c=!1,a},gi=(e,t,n)=>{let a=e._ctx;for(let n in e){if(pi(n))continue;let i=e[n];if(A(i))t[n]=mi(0,i,a);else if(null!=i){let e=fi(i);t[n]=()=>e}}},_i=(e,t)=>{let n=fi(t);e.slots.default=()=>n},vi=(e,t,n)=>{for(let a in t)(n||!pi(a))&&(e[a]=t[a])},bi=Ri;function yi(e){return wi(e,Yn)}function wi(e,t){var n;let a,i;Q().__VUE__=!0;let{insert:r,remove:o,patchProp:s,createElement:l,createText:u,createComment:d,setText:h,setElementText:p,parentNode:f,nextSibling:m,setScopeId:g=y,insertStaticContent:_}=e,w=(e,t,n,a=null,i=null,r=null,o,s=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!Gi(e,t)&&(a=re(e),ee(e,i,r,!0),e=null),-2===t.patchFlag&&(l=!1,t.dynamicChildren=null);let{type:u,ref:c,shapeFlag:d}=t;switch(u){case Oi:k(e,t,n,a);break;case Ii:x(e,t,n,a);break;case qi:null==e&&C(t,n,a,o);break;case Ni:j(e,t,n,a,i,r,o,s,l);break;default:1&d?T(e,t,n,a,i,r,o,s,l):6&d?F(e,t,n,a,i,r,o,s,l):(64&d||128&d)&&u.process(e,t,n,a,i,r,o,s,l,le)}null!=c&&i?$n(c,e&&e.ref,r,t||e,!t):null==c&&e&&null!=e.ref&&$n(e.ref,null,r,e,!0)},k=(e,t,n,a)=>{if(null==e)r(t.el=u(t.children),n,a);else{let n=t.el=e.el;t.children!==e.children&&h(n,t.children)}},x=(e,t,n,a)=>{null==e?r(t.el=d(t.children||""),n,a):t.el=e.el},C=(e,t,n,a)=>{[e.el,e.anchor]=_(e.children,t,n,a,e.el,e.anchor)},T=(e,t,n,a,i,r,o,s,l)=>{if("svg"===t.type?o="svg":"math"===t.type&&(o="mathml"),null==e)M(t,n,a,i,r,o,s,l);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),O(e,t,i,r,o,s,l)}finally{n&&n._endPatch()}}},M=(e,t,n,a,i,o,u,c)=>{let d,h,{props:f,shapeFlag:m,transition:g,dirs:_}=e;if(d=e.el=l(e.type,o,f&&f.is,f),8&m?p(d,e.children):16&m&&N(e.children,d,null,a,i,ki(e,o),u,c),_&&fn(e,null,a,"created"),L(d,e,e.scopeId,u,a),f){for(let e in f)"value"===e||I(e)||s(d,e,null,f[e],o,a);"value"in f&&s(d,"value",null,f.value,o),(h=f.onVnodeBeforeMount)&&rr(h,a,e)}_&&fn(e,null,a,"beforeMount");let v=Si(i,g);v&&g.beforeEnter(d),r(d,t,n),((h=f&&f.onVnodeMounted)||v||_)&&bi(()=>{h&&rr(h,a,e),v&&g.enter(d),_&&fn(e,null,a,"mounted")},i)},L=(e,t,n,a,i)=>{if(n&&g(e,n),a)for(let t=0;t{for(let u=l;u{let l,u=t.el=e.el,{patchFlag:c,dynamicChildren:d,dirs:h}=t;c|=16&e.patchFlag;let f=e.props||v,m=t.props||v;if(n&&xi(n,!1),(l=m.onVnodeBeforeUpdate)&&rr(l,n,t,e),h&&fn(t,e,n,"beforeUpdate"),n&&xi(n,!0),(f.innerHTML&&null==m.innerHTML||f.textContent&&null==m.textContent)&&p(u,""),d?q(e.dynamicChildren,d,u,n,a,ki(t,i),r):o||K(e,t,u,null,n,a,ki(t,i),r,!1),c>0){if(16&c)D(u,f,m,n,i);else if(2&c&&f.class!==m.class&&s(u,"class",null,m.class,i),4&c&&s(u,"style",f.style,m.style,i),8&c){let e=t.dynamicProps;for(let t=0;t{l&&rr(l,n,t,e),h&&fn(t,e,n,"updated")},a)},q=(e,t,n,a,i,r,o)=>{for(let s=0;s{if(t!==n){if(t!==v)for(let r in t)I(r)||r in n||s(e,r,t[r],null,i,a);for(let r in n){if(I(r))continue;let o=n[r],l=t[r];o!==l&&"value"!==r&&s(e,r,l,o,i,a)}"value"in n&&s(e,"value",t.value,n.value,i)}},j=(e,t,n,a,i,o,s,l,c)=>{let d=t.el=e?e.el:u(""),h=t.anchor=e?e.anchor:u(""),{patchFlag:p,dynamicChildren:f,slotScopeIds:m}=t;m&&(l=l?l.concat(m):m),null==e?(r(d,n,a),r(h,n,a),N(t.children||[],n,h,i,o,s,l,c)):p>0&&64&p&&f&&e.dynamicChildren?(q(e.dynamicChildren,f,n,i,o,s,l),(null!=t.key||i&&t===i.subTree)&&Ci(e,t,!0)):K(e,t,n,h,i,o,s,l,c)},F=(e,t,n,a,i,r,o,s,l)=>{t.slotScopeIds=s,null==e?512&t.shapeFlag?i.ctx.activate(t,n,a,o,l):V(t,n,a,i,r,o,l):U(e,t,l)},V=(e,t,n,a,i,r,o)=>{var s,l,u;let d,h,p,f=(l=a,u=i,d=(s=e).type,h=(l?l.appContext:s.appContext)||or,(p={uid:sr++,vnode:s,type:d,parent:l,appContext:h,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new me(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:l?l.provides:Object.create(h.provides),ids:l?l.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:function e(t,n,a=!1){let i=a?di:n.propsCache,r=i.get(t);if(r)return r;let o=t.props,s={},l=[],u=!1;if(!A(t)){let i=t=>{u=!0;let[a,i]=e(t,n,!0);S(s,a),i&&l.push(...i)};!a&&n.mixins.length&&n.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}if(!o&&!u)return R(t)&&i.set(t,b),b;if(P(o))for(let e=0;e{let a=e(t,n,!0);a&&(l=!0,S(s,a))};!a&&n.mixins.length&&n.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}return o||l?(P(o)?o.forEach(e=>s[e]=null):S(s,o),R(t)&&i.set(t,s),s):(R(t)&&i.set(t,null),null)}(d,h),emit:null,emitted:null,propsDefaults:v,inheritAttrs:d.inheritAttrs,ctx:v,data:v,props:v,attrs:v,slots:v,refs:v,setupState:v,setupContext:null,suspense:u,suspenseId:u?u.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null}).ctx={_:p},p.root=l?l.root:p,p.emit=Xa.bind(null,p),s.ce&&s.ce(p),e.component=p);if(na(e)&&(f.ctx.renderer=le),function(e,t=!1,n=!1){t&&c(t);let{props:a,children:i}=e.vnode,r=hr(e);!function(e,t,n,a=!1){let i={},r=Object.create(si);for(let n in e.propsDefaults=Object.create(null),ui(e,t,i,r),e.propsOptions[0])n in i||(i[n]=void 0);n?e.props=a?i:vt(i):e.type.props?e.props=i:e.props=r,e.attrs=r}(e,a,r,t);var o=n||t;let s=e.slots=Object.create(si);if(32&e.vnode.shapeFlag){let e=i._;e?(vi(s,i,o),o&&G(s,"_",e,!0)):gi(i,s)}else i&&_i(e,i);r&&function(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Pa);let{setup:a}=n;if(a){Pe();let n=e.setupContext=a.length>1?vr(e):null,i=cr(e),r=Wt(a,e,0,[e.props,n]),o=z(r);if(Ae(),i(),(o||e.sp)&&!ea(e)&&Bn(e),o){if(r.then(dr,dr),t)return r.then(n=>{fr(e,n,t)}).catch(t=>{Yt(t,e,0)});e.asyncDep=r}else fr(e,r,t)}else gr(e,t)}(e,t),t&&c(!1)}(f,!1,o),f.asyncDep){if(i&&i.registerDep(f,H,o),!e.el){let a=f.subTree=Zi(Ii);x(null,a,t,n),e.placeholder=a.el}}else H(f,e,t,n,i,r,o)},U=(e,t,n)=>{let a=t.component=e.component;if(function(e,t,n){let{props:a,children:i,component:r}=e,{props:o,children:s,patchFlag:l}=t,u=r.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&l>=0))return(!!i||!!s)&&(!s||!s.$stable)||a!==o&&(a?!o||ri(a,o,u):!!o);if(1024&l)return!0;if(16&l)return a?ri(a,o,u):!!o;if(8&l){let e=t.dynamicProps;for(let t=0;t{let l=()=>{if(e.isMounted){let t,{next:n,bu:a,u:i,parent:u,vnode:c}=e;{let t=function e(t){let n=t.subTree.component;if(n)return n.asyncDep&&!n.asyncResolved?n:e(n)}(e);if(t)return n&&(n.el=c.el,Y(e,n,s)),void t.asyncDep.then(()=>{e.isUnmounted||l()})}let d=n;xi(e,!1),n?(n.el=c.el,Y(e,n,s)):n=c,a&&W(a),(t=n.props&&n.props.onVnodeBeforeUpdate)&&rr(t,u,n,c),xi(e,!0);let h=ni(e),p=e.subTree;e.subTree=h,w(p,h,f(p.el),re(p),e,r,o),n.el=h.el,null===d&&oi(e,h.el),i&&bi(i,r),(t=n.props&&n.props.onVnodeUpdated)&&bi(()=>rr(t,u,n,c),r)}else{let s,{el:l,props:u}=t,{bm:c,m:d,parent:h,root:p,type:f}=e,m=ea(t);if(xi(e,!1),c&&W(c),!m&&(s=u&&u.onVnodeBeforeMount)&&rr(s,h,t),xi(e,!0),l&&i){let t=()=>{e.subTree=ni(e),i(l,e.subTree,e,r,null)};m&&f.__asyncHydrate?f.__asyncHydrate(l,e,t):t()}else{p.ce&&!1!==p.ce._def.shadowRoot&&p.ce._injectChildStyle(f);let i=e.subTree=ni(e);w(null,i,n,a,e,r,o),t.el=i.el}if(d&&bi(d,r),!m&&(s=u&&u.onVnodeMounted)){let e=t;bi(()=>rr(s,h,e),r)}(256&t.shapeFlag||h&&ea(h.vnode)&&256&h.vnode.shapeFlag)&&e.a&&bi(e.a,r),e.isMounted=!0,t=n=a=null}};e.scope.on();let u=e.effect=new _e(l);e.scope.off();let c=e.update=u.run.bind(u),d=e.job=u.runIfDirty.bind(u);d.i=e,d.id=e.uid,u.scheduler=()=>an(d),xi(e,!0),c()},Y=(e,t,n)=>{t.component=e;let a=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,a){let{props:i,attrs:r,vnode:{patchFlag:o}}=e,s=Ct(i),[l]=e.propsOptions,u=!1;if(!(a||o>0)||16&o){let a;for(let o in ui(e,t,i,r)&&(u=!0),s)t&&(E(t,o)||(a=$(o))!==o&&E(t,a))||(l?n&&(void 0!==n[o]||void 0!==n[a])&&(i[o]=ci(l,s,o,void 0,e,!0)):delete i[o]);if(r!==s)for(let e in r)t&&E(t,e)||(delete r[e],u=!0)}else if(8&o){let n=e.vnode.dynamicProps;for(let a=0;a{let{vnode:a,slots:i}=e,r=!0,o=v;if(32&a.shapeFlag){let e=t._;e?n&&1===e?r=!1:vi(i,t,n):(r=!t.$stable,gi(t,i)),o=t}else t&&(_i(e,t),o={default:1});if(r)for(let e in i)pi(e)||null!=o[e]||delete i[e]})(e,t.children,n),Pe(),sn(e),Ae()},K=(e,t,n,a,i,r,o,s,l=!1)=>{let u=e&&e.children,c=e?e.shapeFlag:0,d=t.children,{patchFlag:h,shapeFlag:f}=t;if(h>0){if(128&h)return void J(u,d,n,a,i,r,o,s,l);if(256&h)return void Z(u,d,n,a,i,r,o,s,l)}8&f?(16&c&&ie(u,i,r),d!==u&&p(n,d)):16&c?16&f?J(u,d,n,a,i,r,o,s,l):ie(u,i,r,!0):(8&c&&p(n,""),16&f&&N(d,n,a,i,r,o,s,l))},Z=(e,t,n,a,i,r,o,s,l)=>{let u;t=t||b;let c=(e=e||b).length,d=t.length,h=Math.min(c,d);for(u=0;ud?ie(e,i,r,!0,!1,h):N(t,n,a,i,r,o,s,l,h)},J=(e,t,n,a,i,r,o,s,l)=>{let u=0,c=t.length,d=e.length-1,h=c-1;for(;u<=d&&u<=h;){let a=e[u],c=t[u]=l?nr(t[u]):tr(t[u]);if(!Gi(a,c))break;w(a,c,n,null,i,r,o,s,l),u++}for(;u<=d&&u<=h;){let a=e[d],u=t[h]=l?nr(t[h]):tr(t[h]);if(!Gi(a,u))break;w(a,u,n,null,i,r,o,s,l),d--,h--}if(u>d){if(u<=h){let e=h+1,d=eh)for(;u<=d;)ee(e[u],i,r,!0),u++;else{let p,f=u,m=u,g=new Map;for(u=m;u<=h;u++){let e=t[u]=l?nr(t[u]):tr(t[u]);null!=e.key&&g.set(e.key,u)}let _=0,v=h-m+1,y=!1,k=0,x=Array(v);for(u=0;u=v)ee(c,i,r,!0);else{if(null!=c.key)a=g.get(c.key);else for(p=m;p<=h;p++)if(0===x[p-m]&&Gi(c,t[p])){a=p;break}void 0===a?ee(c,i,r,!0):(x[a-m]=u+1,a>=k?k=a:y=!0,w(c,t[a],n,null,i,r,o,s,l),_++)}}let S=y?function(e){let t,n,a,i,r,o=e.slice(),s=[0],l=e.length;for(t=0;t>1]]0&&(o[t]=s[a-1]),s[a]=t)}}for(a=s.length,i=s[a-1];a-- >0;)s[a]=i,i=o[i];return s}(x):b;for(p=S.length-1,u=v-1;u>=0;u--){let e=m+u,d=t[e],h=t[e+1],f=e+1{let{el:s,type:l,transition:u,children:c,shapeFlag:d}=e;if(6&d)X(e.component.subTree,t,n,a);else if(128&d)e.suspense.move(t,n,a);else if(64&d)l.move(e,t,n,le);else if(l!==Ni)if(l!==qi)if(2!==a&&1&d&&u)if(0===a)u.beforeEnter(s),r(s,t,n),bi(()=>u.enter(s),i);else{let{leave:a,delayLeave:i,afterLeave:l}=u,c=()=>{e.ctx.isUnmounted?o(s):r(s,t,n)},d=()=>{s._isLeaving&&s[Cn](!0),a(s,()=>{c(),l&&l()})};i?i(s,c,d):d()}else r(s,t,n);else(({el:e,anchor:t},n,a)=>{let i;for(;e&&e!==t;)i=m(e),r(e,n,a),e=i;r(t,n,a)})(e,t,n);else{r(s,t,n);for(let e=0;e{let r,{type:o,props:s,ref:l,children:u,dynamicChildren:c,shapeFlag:d,patchFlag:h,dirs:p,cacheIndex:f}=e;if(-2===h&&(i=!1),null!=l&&(Pe(),$n(l,null,n,e,!0),Ae()),null!=f&&(t.renderCache[f]=void 0),256&d)return void t.ctx.deactivate(e);let m=1&d&&p,g=!ea(e);if(g&&(r=s&&s.onVnodeBeforeUnmount)&&rr(r,t,e),6&d)ae(e.component,n,a);else{if(128&d)return void e.suspense.unmount(n,a);m&&fn(e,null,t,"beforeUnmount"),64&d?e.type.remove(e,t,n,le,a):c&&!c.hasOnce&&(o!==Ni||h>0&&64&h)?ie(c,t,n,!1,!0):(o===Ni&&384&h||!i&&16&d)&&ie(u,t,n),a&&te(e)}(g&&(r=s&&s.onVnodeUnmounted)||m)&&bi(()=>{r&&rr(r,t,e),m&&fn(e,null,t,"unmounted")},n)},te=e=>{let{type:t,el:n,anchor:a,transition:i}=e;if(t===Ni)return void ne(n,a);if(t===qi)return void(({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=m(e),o(e),e=n;o(t)})(e);let r=()=>{o(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(1&e.shapeFlag&&i&&!i.persisted){let{leave:t,delayLeave:a}=i,o=()=>t(n,r);a?a(e.el,r,o):o()}else r()},ne=(e,t)=>{let n;for(;e!==t;)n=m(e),o(e),e=n;o(t)},ae=(e,t,n)=>{let{bum:a,scope:i,job:r,subTree:o,um:s,m:l,a:u}=e;Ti(l),Ti(u),a&&W(a),i.stop(),r&&(r.flags|=8,ee(o,e,t,n)),s&&bi(s,t),bi(()=>{e.isUnmounted=!0},t)},ie=(e,t,n,a=!1,i=!1,r=0)=>{for(let o=r;o{if(6&e.shapeFlag)return re(e.component.subTree);if(128&e.shapeFlag)return e.suspense.next();let t=m(e.anchor||e.el),n=t&&t[mn];return n?m(n):t},oe=!1,se=(e,t,n)=>{null==e?t._vnode&&ee(t._vnode,null,null,!0):w(t._vnode||null,e,t,null,null,null,n),t._vnode=e,oe||(oe=!0,sn(),ln(),oe=!1)},le={p:w,um:ee,m:X,r:te,mt:V,mc:N,pc:K,pbc:q,n:re,o:e};return t&&([a,i]=t(le)),{render:se,hydrate:a,createApp:(n=a,function(e,t=null){A(e)||(e=S({},e)),null==t||R(t)||(t=null);let a=$a(),i=new WeakSet,r=[],o=!1,s=a.app={_uid:Va++,_component:e,_props:t,_container:null,_context:a,_instance:null,version:Sr,get config(){return a.config},set config(e){},use:(e,...t)=>(i.has(e)||(e&&A(e.install)?(i.add(e),e.install(s,...t)):A(e)&&(i.add(e),e(s,...t))),s),mixin:e=>(a.mixins.includes(e)||a.mixins.push(e),s),component:(e,t)=>t?(a.components[e]=t,s):a.components[e],directive:(e,t)=>t?(a.directives[e]=t,s):a.directives[e],mount(i,r,l){if(!o){let u=s._ceVNode||Zi(e,t);return u.appContext=a,!0===l?l="svg":!1===l&&(l=void 0),r&&n?n(u,i):se(u,i,l),o=!0,s._container=i,i.__vue_app__=s,br(u.component)}},onUnmount(e){r.push(e)},unmount(){o&&(Gt(r,s._instance,16),se(null,s._container),delete s._container.__vue_app__)},provide:(e,t)=>(a.provides[e]=t,s),runWithContext(e){let t=Ua;Ua=s;try{return e()}finally{Ua=t}}};return s})}}function ki({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function xi({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Si(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ci(e,t,n=!1){let a=e.children,i=t.children;if(P(a)&&P(i))for(let e=0;ee.__isSuspense,Pi=0;function Ai(e,t){let n=e.props&&e.props[t];A(n)&&n()}function Mi(e,t,n,a,i,r,o,s,l,u,c=!1){var d;let h,p,{p:f,m:m,um:g,n:_,o:{parentNode:v,remove:b}}=u,y=null!=(h=(d=e).props&&d.props.suspensible)&&!1!==h;y&&t&&t.pendingBranch&&(p=t.pendingId,t.deps++);let w=e.props?K(e.props.timeout):void 0,k=r,x={vnode:e,parent:t,parentComponent:n,namespace:o,container:a,hiddenContainer:i,deps:0,pendingId:Pi++,timeout:"number"==typeof w?w:-1,activeBranch:null,pendingBranch:null,isInFallback:!c,isHydrating:c,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){let{vnode:a,activeBranch:i,pendingBranch:o,pendingId:s,effects:l,parentComponent:u,container:c,isInFallback:d}=x,h=!1;x.isHydrating?x.isHydrating=!1:!e&&((h=i&&o.transition&&"out-in"===o.transition.mode)&&(i.transition.afterLeave=()=>{s===x.pendingId&&(m(o,c,r===k?_(i):r,0),on(l),d&&a.ssFallback&&(a.ssFallback.el=null))}),i&&(v(i.el)===c&&(r=_(i)),g(i,u,x,!0),!h&&d&&a.ssFallback&&bi(()=>a.ssFallback.el=null,x)),h||m(o,c,r,0)),zi(x,o),x.pendingBranch=null,x.isInFallback=!1;let f=x.parent,b=!1;for(;f;){if(f.pendingBranch){f.effects.push(...l),b=!0;break}f=f.parent}b||h||on(l),x.effects=[],y&&t&&t.pendingBranch&&p===t.pendingId&&(t.deps--,0!==t.deps||n||t.resolve()),Ai(a,"onResolve")},fallback(e){if(!x.pendingBranch)return;let{vnode:t,activeBranch:n,parentComponent:a,container:i,namespace:r}=x;Ai(t,"onFallback");let o=_(n),u=()=>{x.isInFallback&&(f(null,e,i,o,a,null,r,s,l),zi(x,e))},c=e.transition&&"out-in"===e.transition.mode;c&&(n.transition.afterLeave=u),x.isInFallback=!0,g(n,a,null,!0),c||u()},move(e,t,n){x.activeBranch&&m(x.activeBranch,e,t,n),x.container=e},next:()=>x.activeBranch&&_(x.activeBranch),registerDep(e,t,n){let a=!!x.pendingBranch;a&&x.deps++;let i=e.vnode.el;e.asyncDep.catch(t=>{Yt(t,e,0)}).then(r=>{if(e.isUnmounted||x.isUnmounted||x.pendingId!==e.suspenseId)return;e.asyncResolved=!0;let{vnode:s}=e;fr(e,r,!1),i&&(s.el=i);let l=!i&&e.subTree.el;t(e,s,v(i||e.subTree.el),i?null:_(e.subTree),x,o,n),l&&(s.placeholder=null,b(l)),oi(e,s.el),a&&0==--x.deps&&x.resolve()})},unmount(e,t){x.isUnmounted=!0,x.activeBranch&&g(x.activeBranch,n,e,t),x.pendingBranch&&g(x.pendingBranch,n,e,t)}};return x}function Li(e){let t;if(A(e)){let n=$i&&e._c;n&&(e._d=!1,Bi()),e=e(),n&&(e._d=!0,t=ji,Fi())}return P(e)&&(e=function(e){let t;for(let n=0;nt!==e)),e}function Ri(e,t){t&&t.pendingBranch?P(e)?t.effects.push(...e):t.effects.push(e):on(e)}function zi(e,t){e.activeBranch=t;let{vnode:n,parentComponent:a}=e,i=t.el;for(;!i&&t.component;)i=(t=t.component.subTree).el;n.el=i,a&&a.subTree===n&&(a.vnode.el=i,oi(a,i))}let Ni=Symbol.for("v-fgt"),Oi=Symbol.for("v-txt"),Ii=Symbol.for("v-cmt"),qi=Symbol.for("v-stc"),Di=[],ji=null;function Bi(e=!1){Di.push(ji=e?null:[])}function Fi(){Di.pop(),ji=Di[Di.length-1]||null}let $i=1;function Vi(e,t=!1){$i+=e,e<0&&ji&&t&&(ji.hasOnce=!0)}function Ui(e){return e.dynamicChildren=$i>0?ji||b:null,Fi(),$i>0&&ji&&ji.push(e),e}function Hi(e,t,n,a,i){return Ui(Zi(e,t,n,a,i,!0))}function Wi(e){return!!e&&!0===e.__v_isVNode}function Gi(e,t){return e.type===t.type&&e.key===t.key}let Yi=({key:e})=>null!=e?e:null,Ki=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?M(e)||At(e)||A(e)?{i:cn,r:e,k:t,f:!!n}:e:null);function Qi(e,t=null,n=null,a=0,i=null,r=+(e!==Ni),o=!1,s=!1){let l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Yi(t),ref:t&&Ki(t),scopeId:dn,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:r,patchFlag:a,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:cn};return s?(ar(l,n),128&r&&e.normalize(l)):n&&(l.shapeFlag|=M(n)?8:16),$i>0&&!o&&ji&&(l.patchFlag>0||6&r)&&32!==l.patchFlag&&ji.push(l),l}let Zi=function(e,t=null,n=null,a=0,i=null,r=!1){var o;if(e&&e!==ka||(e=Ii),Wi(e)){let a=Xi(e,t,!0);return n&&ar(a,n),$i>0&&!r&&ji&&(6&a.shapeFlag?ji[ji.indexOf(e)]=a:ji.push(a)),a.patchFlag=-2,a}if(A(o=e)&&"__vccOpts"in o&&(e=e.__vccOpts),t){let{class:e,style:n}=t=Ji(t);e&&!M(e)&&(t.class=ae(e)),R(n)&&(St(n)&&!P(n)&&(n=S({},n)),t.style=J(n))}return Qi(e,t,n,a,i,M(e)?1:Ei(e)?128:e.__isTeleport?64:R(e)?4:2*!!A(e),r,!0)};function Ji(e){return e?St(e)||li(e)?S({},e):e:null}function Xi(e,t,n=!1,a=!1){let{props:i,ref:r,patchFlag:o,children:s,transition:l}=e,u=t?ir(i||{},t):i,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&Yi(u),ref:t&&t.ref?n&&r?P(r)?r.concat(Ki(t)):[r,Ki(t)]:Ki(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ni?-1===o?16:16|o:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Xi(e.ssContent),ssFallback:e.ssFallback&&Xi(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&a&&qn(c,l.clone(c)),c}function er(e=" ",t=0){return Zi(Oi,null,e,t)}function tr(e){return null==e||"boolean"==typeof e?Zi(Ii):P(e)?Zi(Ni,null,e.slice()):Wi(e)?nr(e):Zi(Oi,null,String(e))}function nr(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:Xi(e)}function ar(e,t){let n=0,{shapeFlag:a}=e;if(null==t)t=null;else if(P(t))n=16;else if("object"==typeof t){if(65&a){let n=t.default;return void(n&&(n._c&&(n._d=!1),ar(e,n()),n._c&&(n._d=!0)))}{n=32;let a=t._;a||li(t)?3===a&&cn&&(1===cn.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=cn}}else A(t)?(t={default:t,_ctx:cn},n=32):(t=String(t),64&a?(n=16,t=[er(t)]):n=8);e.children=t,e.shapeFlag|=n}function ir(...e){let t={};for(let n=0;nlr||cn;u=e=>{lr=e},c=e=>{pr=e};let cr=e=>{let t=lr;return u(e),e.scope.on(),()=>{e.scope.off(),u(t)}},dr=()=>{lr&&lr.scope.off(),u(null)};function hr(e){return 4&e.vnode.shapeFlag}let pr=!1;function fr(e,t,n){A(t)?e.render=t:R(t)&&(e.setupState=It(t)),gr(e,n)}function mr(e){d=e,h=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,Aa))}}function gr(e,t,n){let a=e.type;if(!e.render){if(!t&&d&&!a.render){let t=a.template||Na(e).template;if(t){let{isCustomElement:n,compilerOptions:i}=e.appContext.config,{delimiters:r,compilerOptions:o}=a,s=S(S({isCustomElement:n,delimiters:r},i),o);a.render=d(t,s)}}e.render=a.render||y,h&&h(e)}{let t=cr(e);Pe();try{!function(e){let t=Na(e),n=e.proxy,a=e.ctx;Ra=!1,t.beforeCreate&&za(t.beforeCreate,e,"bc");let{data:i,computed:r,methods:o,watch:s,provide:l,inject:u,created:c,beforeMount:d,mounted:h,beforeUpdate:p,updated:f,activated:m,deactivated:g,beforeUnmount:_,unmounted:v,render:b,renderTracked:w,renderTriggered:k,errorCaptured:x,serverPrefetch:S,expose:C,inheritAttrs:T,components:E,directives:L}=t;if(u&&function(e,t){for(let n in P(e)&&(e=Da(e)),e){let a,i=e[n];At(a=R(i)?"default"in i?Wa(i.from||n,i.default,!0):Wa(i.from||n):Wa(i))?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e}):t[n]=a}}(u,a,null),o)for(let e in o){let t=o[e];A(t)&&(a[e]=t.bind(n))}if(i){let t=i.call(n,n);R(t)&&(e.data=_t(t))}if(Ra=!0,r)for(let e in r){let t=r[e],i=A(t)?t.bind(n,n):A(t.get)?t.get.bind(n,n):y,o=wr({get:i,set:!A(t)&&A(t.set)?t.set.bind(n):y});Object.defineProperty(a,e,{enumerable:!0,configurable:!0,get:()=>o.value,set:e=>o.value=e})}if(s)for(let e in s)!function e(t,n,a,i){let r=i.includes(".")?Za(a,i):()=>a[i];if(M(t)){let e=n[t];A(e)&&Ka(r,e,void 0)}else if(A(t))Ka(r,t.bind(a),void 0);else if(R(t))if(P(t))t.forEach(t=>e(t,n,a,i));else{let e=A(t.handler)?t.handler.bind(a):n[t.handler];A(e)&&Ka(r,e,t)}}(s[e],a,n,e);if(l){let e=A(l)?l.call(n):l;Reflect.ownKeys(e).forEach(t=>{Ha(t,e[t])})}function z(e,t){P(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(c&&za(c,e,"c"),z(da,d),z(ha,h),z(pa,p),z(fa,f),z(ia,m),z(ra,g),z(ya,x),z(ba,w),z(va,k),z(ma,_),z(ga,v),z(_a,S),P(C))if(C.length){let t=e.exposed||(e.exposed={});C.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||(e.exposed={});b&&e.render===y&&(e.render=b),null!=T&&(e.inheritAttrs=T),E&&(e.components=E),L&&(e.directives=L)}(e)}finally{Ae(),t()}}}let _r={get:(e,t)=>(De(e,0,""),e[t])};function vr(e){return{attrs:new Proxy(e.attrs,_r),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function br(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(It(Tt(e.exposed)),{get:(t,n)=>n in t?t[n]:n in Ta?Ta[n](e):void 0,has:(e,t)=>t in e||t in Ta})):e.proxy}function yr(e,t=!0){return A(e)?e.displayName||e.name:e.name||t&&e.__name}let wr=(e,t)=>function(e,t,n=!1){let a,i;return A(e)?a=e:(a=e.get,i=e.set),new Ft(a,i,n)}(e,0,pr);function kr(e,t,n){try{Vi(-1);let a=arguments.length;return 2!==a?(a>3?n=Array.prototype.slice.call(arguments,2):3===a&&Wi(n)&&(n=[n]),Zi(e,t,n)):!R(t)||P(t)?Zi(e,null,t):Wi(t)?Zi(e,null,[t]):Zi(e,t)}finally{Vi(1)}}function xr(e,t){let n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&ji&&ji.push(e),!0}let Sr="3.5.25",Cr="undefined"!=typeof window&&window.trustedTypes;if(Cr)try{g=Cr.createPolicy("vue",{createHTML:e=>e})}catch(e){}let Tr=g?e=>g.createHTML(e):e=>e,Er="undefined"!=typeof document?document:null,Pr=Er&&Er.createElement("template"),Ar={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,a)=>{let i="svg"===t?Er.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?Er.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?Er.createElement(e,{is:n}):Er.createElement(e);return"select"===e&&a&&null!=a.multiple&&i.setAttribute("multiple",a.multiple),i},createText:e=>Er.createTextNode(e),createComment:e=>Er.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Er.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,a,i,r){let o=n?n.previousSibling:t.lastChild;if(i&&(i===r||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),i!==r&&(i=i.nextSibling););else{Pr.innerHTML=Tr("svg"===a?`${e}`:"mathml"===a?`${e}`:e);let i=Pr.content;if("svg"===a||"mathml"===a){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Mr="transition",Lr="animation",Rr=Symbol("_vtc"),zr={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},Nr=S({},An,zr),Or=((t=(e,{slots:t})=>kr(Rn,Dr(e),t)).displayName="Transition",t.props=Nr,t),Ir=(e,t=[])=>{P(e)?e.forEach(e=>e(...t)):e&&e(...t)},qr=e=>!!e&&(P(e)?e.some(e=>e.length>1):e.length>1);function Dr(e){let t={};for(let n in e)n in zr||(t[n]=e[n]);if(!1===e.css)return t;let{name:n="v",type:a,duration:i,enterFromClass:r=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:l=r,appearActiveClass:u=o,appearToClass:c=s,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,f=function(e){if(null==e)return null;{if(R(e))return[function(e){return K(e)}(e.enter),function(e){return K(e)}(e.leave)];let t=function(e){return K(e)}(e);return[t,t]}}(i),m=f&&f[0],g=f&&f[1],{onBeforeEnter:_,onEnter:v,onEnterCancelled:b,onLeave:y,onLeaveCancelled:w,onBeforeAppear:k=_,onAppear:x=v,onAppearCancelled:C=b}=t,T=(e,t,n,a)=>{e._enterCancelled=a,Br(e,t?c:s),Br(e,t?u:o),n&&n()},E=(e,t)=>{e._isLeaving=!1,Br(e,d),Br(e,p),Br(e,h),t&&t()},P=e=>(t,n)=>{let i=e?x:v,o=()=>T(t,e,n);Ir(i,[t,o]),Fr(()=>{Br(t,e?l:r),jr(t,e?c:s),qr(i)||Vr(t,a,m,o)})};return S(t,{onBeforeEnter(e){Ir(_,[e]),jr(e,r),jr(e,o)},onBeforeAppear(e){Ir(k,[e]),jr(e,l),jr(e,u)},onEnter:P(!1),onAppear:P(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>E(e,t);jr(e,d),e._enterCancelled?(jr(e,h),Gr(e)):(Gr(e),jr(e,h)),Fr(()=>{e._isLeaving&&(Br(e,d),jr(e,p),qr(y)||Vr(e,a,g,n))}),Ir(y,[e,n])},onEnterCancelled(e){T(e,!1,void 0,!0),Ir(b,[e])},onAppearCancelled(e){T(e,!0,void 0,!0),Ir(C,[e])},onLeaveCancelled(e){E(e),Ir(w,[e])}})}function jr(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[Rr]||(e[Rr]=new Set)).add(t)}function Br(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[Rr];n&&(n.delete(t),n.size||(e[Rr]=void 0))}function Fr(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let $r=0;function Vr(e,t,n,a){let i=e._endId=++$r,r=()=>{i===e._endId&&a()};if(null!=n)return setTimeout(r,n);let{type:o,timeout:s,propCount:l}=Ur(e,t);if(!o)return a();let u=o+"end",c=0,d=()=>{e.removeEventListener(u,h),r()},h=t=>{t.target===e&&++c>=l&&d()};setTimeout(()=>{c(n[e]||"").split(", "),i=a(`${Mr}Delay`),r=a(`${Mr}Duration`),o=Hr(i,r),s=a(`${Lr}Delay`),l=a(`${Lr}Duration`),u=Hr(s,l),c=null,d=0,h=0;return t===Mr?o>0&&(c=Mr,d=o,h=r.length):t===Lr?u>0&&(c=Lr,d=u,h=l.length):h=(c=(d=Math.max(o,u))>0?o>u?Mr:Lr:null)?c===Mr?r.length:l.length:0,{type:c,timeout:d,propCount:h,hasTransform:c===Mr&&/\b(?:transform|all)(?:,|$)/.test(a(`${Mr}Property`).toString())}}function Hr(e,t){for(;e.lengthWr(t)+Wr(e[n])))}function Wr(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}function Gr(e){return(e?e.ownerDocument:document).body.offsetHeight}let Yr=Symbol("_vod"),Kr=Symbol("_vsh");function Qr(e,t){e.style.display=t?e[Yr]:"none",e[Kr]=!t}let Zr=Symbol("");function Jr(e,t){if(1===e.nodeType){let a=e.style,i="";for(let e in t){var n;let r=null==(n=t[e])?"initial":"string"==typeof n?""===n?" ":n:String(n);a.setProperty(`--${e}`,r),i+=`--${e}: ${r};`}a[Zr]=i}}let Xr=/(?:^|;)\s*display\s*:/,eo=/\s*!important$/;function to(e,t,n){if(P(n))n.forEach(n=>to(e,t,n));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{let a=function(e,t){let n=ao[t];if(n)return n;let a=B(t);if("filter"!==a&&a in e)return ao[t]=a;a=V(a);for(let n=0;n111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&123>e.charCodeAt(2),fo=(e,t,n,a,i,r)=>{let o="svg"===i;if("class"===t){var s;let t;s=a,(t=e[Rr])&&(s=(s?[s,...t]:[...t]).join(" ")),null==s?e.removeAttribute("class"):o?e.setAttribute("class",s):e.className=s}else"style"===t?function(e,t,n){let a=e.style,i=M(n),r=!1;if(n&&!i){if(t)if(M(t))for(let e of t.split(";")){let t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&to(a,t,"")}else for(let e in t)null==n[e]&&to(a,e,"");for(let e in n)"display"===e&&(r=!0),to(a,e,n[e])}else if(i){if(t!==n){let e=a[Zr];e&&(n+=";"+e),a.cssText=n,r=Xr.test(n)}}else t&&e.removeAttribute("style");Yr in e&&(e[Yr]=r?a.display:"",e[Kr]&&(a.display="none"))}(e,n,a):k(t)?x(t)||function(e,t,n,a,i=null){let r=e[lo]||(e[lo]={}),o=r[t];if(a&&o)o.value=a;else{let[n,l]=function(e){let t;if(uo.test(e)){let n;for(t={};n=e.match(uo);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[":"===e[2]?e.slice(3):$(e.slice(2)),t]}(t);if(a){var s;let o;so(e,n,r[t]=(s=i,(o=e=>{if(e._vts){if(e._vts<=o.attached)return}else e._vts=Date.now();Gt(function(e,t){if(!P(t))return t;{let n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(e=>t=>!t._stopped&&e&&e(t))}}(e,o.value),s,5,[e])}).value=a,o.attached=co||(ho.then(()=>co=0),co=Date.now()),o),l)}else o&&(e.removeEventListener(n,o,l),r[t]=void 0)}}(e,t,0,a,r):("."===t[0]?(t=t.slice(1),0):"^"===t[0]?(t=t.slice(1),1):!function(e,t,n,a){if(a)return!!("innerHTML"===t||"textContent"===t||t in e&&po(t)&&A(n));if("spellcheck"===t||"draggable"===t||"translate"===t||"autocorrect"===t||"sandbox"===t&&"IFRAME"===e.tagName||"form"===t||"list"===t&&"INPUT"===e.tagName||"type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){let t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}return!(po(t)&&M(n))&&t in e}(e,t,a,o))?!e._isVueCE||!/[A-Z]/.test(t)&&M(a)?("true-value"===t?e._trueValue=a:"false-value"===t&&(e._falseValue=a),ro(e,t,a,o)):oo(e,B(t),a,0,t):(oo(e,t,a),e.tagName.includes("-")||"value"!==t&&"checked"!==t&&"selected"!==t||ro(e,t,a,o,0,"value"!==t))},mo={};function go(e,t,n){let a,i=jn(e,t);"[object Object]"===(a=i,N.call(a))&&(i=S({},i,t));class r extends vo{constructor(e){super(i,e,n)}}return r.def=i,r}let _o="undefined"!=typeof HTMLElement?HTMLElement:class{};class vo extends _o{constructor(e,t={},n=Ko){super(),this._def=e,this._props=t,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&n!==Ko?this._root=this.shadowRoot:!1!==e.shadowRoot?(this.attachShadow(S({},e.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;this.shadowRoot||this._resolved||this._parseSlots(),this._connected=!0;let e=this;for(;e=e&&(e.parentNode||e.host);)if(e instanceof vo){this._parent=e;break}this._instance||(this._resolved?this._mount(this._def):e&&e._pendingResolve?this._pendingResolve=e._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._inheritParentContext(e))}_inheritParentContext(e=this._parent){e&&this._app&&Object.setPrototypeOf(this._app._context.provides,e._instance.provides)}disconnectedCallback(){this._connected=!1,nn(()=>{!this._connected&&(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(e){for(let t of e)this._setAttr(t.attributeName)}_resolveDef(){if(this._pendingResolve)return;for(let e=0;e{let n;this._resolved=!0,this._pendingResolve=void 0;let{props:a,styles:i}=e;if(a&&!P(a))for(let e in a){let t=a[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=K(this._props[e])),(n||(n=Object.create(null)))[B(e)]=!0)}this._numberProps=n,this._resolveProps(e),this.shadowRoot&&this._applyStyles(i),this._mount(e)},t=this._def.__asyncLoader;t?this._pendingResolve=t().then(t=>{t.configureApp=this._def.configureApp,e(this._def=t,!0)}):e(this._def)}_mount(e){this._app=this._createApp(e),this._inheritParentContext(),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);let t=this._instance&&this._instance.exposed;if(t)for(let e in t)E(this,e)||Object.defineProperty(this,e,{get:()=>Nt(t[e])})}_resolveProps(e){let{props:t}=e,n=P(t)?t:Object.keys(t||{});for(let e of Object.keys(this))"_"!==e[0]&&n.includes(e)&&this._setProp(e,this[e]);for(let e of n.map(B))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t,!0,!this._patching)}})}_setAttr(e){if(e.startsWith("data-v-"))return;let t=this.hasAttribute(e),n=t?this.getAttribute(e):mo,a=B(e);t&&this._numberProps&&this._numberProps[a]&&(n=K(n)),this._setProp(a,n,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,a=!1){if(t!==this._props[e]&&(this._dirty=!0,t===mo?delete this._props[e]:(this._props[e]=t,"key"===e&&this._app&&(this._app._ceVNode.key=t)),a&&this._instance&&this._update(),n)){let n=this._ob;n&&(this._processMutations(n.takeRecords()),n.disconnect()),!0===t?this.setAttribute($(e),""):"string"==typeof t||"number"==typeof t?this.setAttribute($(e),t+""):t||this.removeAttribute($(e)),n&&n.observe(this,{attributes:!0})}}_update(){let e=this._createVNode();this._app&&(e.appContext=this._app._context),Yo(e,this._root)}_createVNode(){let e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));let t=Zi(this._def,S(e,this._props));return this._instance||(t.ce=e=>{this._instance=e,e.ce=this,e.isCE=!0;let t=(e,t)=>{let n;this.dispatchEvent(new CustomEvent(e,"[object Object]"===(n=t[0],N.call(n))?S({detail:t},t[0]):{detail:t}))};e.emit=(e,...n)=>{t(e,n),$(e)!==e&&t($(e),n)},this._setParent()}),t}_applyStyles(e,t){if(!e)return;if(t){if(t===this._def||this._styleChildren.has(t))return;this._styleChildren.add(t)}let n=this._nonce;for(let t=e.length-1;t>=0;t--){let a=document.createElement("style");n&&a.setAttribute("nonce",n),a.textContent=e[t],this.shadowRoot.prepend(a)}}_parseSlots(){let e,t=this._slots={};for(;e=this.firstChild;){let n=1===e.nodeType&&e.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(e),this.removeChild(e)}}_renderSlots(){let e=this._getSlots(),t=this._instance.type.__scopeId;for(let n=0;n{if(!n.length)return;let t=e.moveClass||`${e.name||"v"}-move`;if(!function(e,t,n){let a=e.cloneNode(),i=e[Rr];i&&i.forEach(e=>{e.split(/\s+/).forEach(e=>e&&a.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&a.classList.add(e)),a.style.display="none";let r=1===t.nodeType?t:t.parentNode;r.appendChild(a);let{hasTransform:o}=Ur(a);return r.removeChild(a),o}(n[0].el,i.vnode.el,t))return void(n=[]);n.forEach(Co),n.forEach(To);let a=n.filter(Eo);Gr(i.vnode.el),a.forEach(e=>{let n=e.el,a=n.style;jr(n,t),a.transform=a.webkitTransform=a.transitionDuration="";let i=n[ko]=e=>{(!e||e.target===n)&&(!e||e.propertyName.endsWith("transform"))&&(n.removeEventListener("transitionend",i),n[ko]=null,Br(n,t))};n.addEventListener("transitionend",i)}),n=[]}),()=>{let o=Ct(e),s=Dr(o),l=o.tag||Ni;if(n=[],a)for(let e=0;e{let t=e.props["onUpdate:modelValue"]||!1;return P(t)?e=>W(t,e):t};function Ao(e){e.target.composing=!0}function Mo(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}let Lo=Symbol("_assign");function Ro(e,t,n){return t&&(e=e.trim()),n&&(e=Y(e)),e}let zo={created(e,{modifiers:{lazy:t,trim:n,number:a}},i){e[Lo]=Po(i);let r=a||i.props&&"number"===i.props.type;so(e,t?"change":"input",t=>{t.target.composing||e[Lo](Ro(e.value,n,r))}),(n||r)&&so(e,"change",()=>{e.value=Ro(e.value,n,r)}),t||(so(e,"compositionstart",Ao),so(e,"compositionend",Mo),so(e,"change",Mo))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:a,trim:i,number:r}},o){if(e[Lo]=Po(o),e.composing)return;let s=null==t?"":t;if((!r&&"number"!==e.type||/^0\d/.test(e.value)?e.value:Y(e.value))!==s){if(document.activeElement===e&&"range"!==e.type&&(a&&t===n||i&&e.value.trim()===s))return;e.value=s}}},No={deep:!0,created(e,t,n){e[Lo]=Po(n),so(e,"change",()=>{let t=e._modelValue,n=jo(e),a=e.checked,i=e[Lo];if(P(t)){let e=ce(t,n),r=-1!==e;if(a&&!r)i(t.concat(n));else if(!a&&r){let n=[...t];n.splice(e,1),i(n)}}else{let r;if("[object Set]"===(r=t,N.call(r))){let e=new Set(t);a?e.add(n):e.delete(n),i(e)}else i(Bo(e,a))}})},mounted:Oo,beforeUpdate(e,t,n){e[Lo]=Po(n),Oo(e,t,n)}};function Oo(e,{value:t,oldValue:n},a){let i;if(e._modelValue=t,P(t))i=ce(t,a.props.value)>-1;else{let r;if("[object Set]"===(r=t,N.call(r)))i=t.has(a.props.value);else{if(t===n)return;i=ue(t,Bo(e,!0))}}e.checked!==i&&(e.checked=i)}let Io={created(e,{value:t},n){e.checked=ue(t,n.props.value),e[Lo]=Po(n),so(e,"change",()=>{e[Lo](jo(e))})},beforeUpdate(e,{value:t,oldValue:n},a){e[Lo]=Po(a),t!==n&&(e.checked=ue(t,a.props.value))}},qo={deep:!0,created(e,{value:t,modifiers:{number:n}},a){let i,r="[object Set]"===(i=t,N.call(i));so(e,"change",()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?Y(jo(e)):jo(e));e[Lo](e.multiple?r?new Set(t):t:t[0]),e._assigning=!0,nn(()=>{e._assigning=!1})}),e[Lo]=Po(a)},mounted(e,{value:t}){Do(e,t)},beforeUpdate(e,t,n){e[Lo]=Po(n)},updated(e,{value:t}){e._assigning||Do(e,t)}};function Do(e,t){let n,a=e.multiple,i=P(t);if(!a||i||"[object Set]"===(n=t,N.call(n))){for(let n=0,r=e.options.length;nString(e)===String(o)):ce(t,o)>-1}else r.selected=t.has(o);else if(ue(jo(r),t))return void(e.selectedIndex!==n&&(e.selectedIndex=n))}a||-1===e.selectedIndex||(e.selectedIndex=-1)}}function jo(e){return"_value"in e?e._value:e.value}function Bo(e,t){let n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}function Fo(e,t,n,a,i){let r=function(e,t){switch(e){case"SELECT":return qo;case"TEXTAREA":return zo;default:switch(t){case"checkbox":return No;case"radio":return Io;default:return zo}}}(e.tagName,n.props&&n.props.type)[i];r&&r(e,t,n,a)}let $o=["ctrl","shift","alt","meta"],Vo={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>$o.some(n=>e[`${n}Key`]&&!t.includes(n))},Uo={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Ho=S({patchProp:fo},Ar),Wo=!1;function Go(){return p=Wo?p:yi(Ho),Wo=!0,p}let Yo=(...e)=>{(p||(p=wi(Ho))).render(...e)},Ko=(...e)=>{let t=(p||(p=wi(Ho))).createApp(...e),{mount:n}=t;return t.mount=e=>{let a=Jo(e);if(!a)return;let i=t._component;A(i)||i.render||i.template||(i.template=a.innerHTML),1===a.nodeType&&(a.textContent="");let r=n(a,!1,Zo(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),r},t},Qo=(...e)=>{let t=Go().createApp(...e),{mount:n}=t;return t.mount=e=>{let t=Jo(e);if(t)return n(t,!0,Zo(t))},t};function Zo(e){return e instanceof SVGElement?"svg":"function"==typeof MathMLElement&&e instanceof MathMLElement?"mathml":void 0}function Jo(e){return M(e)?document.querySelector(e):e}let Xo=Symbol(""),es=Symbol(""),ts=Symbol(""),ns=Symbol(""),as=Symbol(""),is=Symbol(""),rs=Symbol(""),os=Symbol(""),ss=Symbol(""),ls=Symbol(""),us=Symbol(""),cs=Symbol(""),ds=Symbol(""),hs=Symbol(""),ps=Symbol(""),fs=Symbol(""),ms=Symbol(""),gs=Symbol(""),_s=Symbol(""),vs=Symbol(""),bs=Symbol(""),ys=Symbol(""),ws=Symbol(""),ks=Symbol(""),xs=Symbol(""),Ss=Symbol(""),Cs=Symbol(""),Ts=Symbol(""),Es=Symbol(""),Ps=Symbol(""),As=Symbol(""),Ms=Symbol(""),Ls=Symbol(""),Rs=Symbol(""),zs=Symbol(""),Ns=Symbol(""),Os=Symbol(""),Is=Symbol(""),qs=Symbol(""),Ds={[Xo]:"Fragment",[es]:"Teleport",[ts]:"Suspense",[ns]:"KeepAlive",[as]:"BaseTransition",[is]:"openBlock",[rs]:"createBlock",[os]:"createElementBlock",[ss]:"createVNode",[ls]:"createElementVNode",[us]:"createCommentVNode",[cs]:"createTextVNode",[ds]:"createStaticVNode",[hs]:"resolveComponent",[ps]:"resolveDynamicComponent",[fs]:"resolveDirective",[ms]:"resolveFilter",[gs]:"withDirectives",[_s]:"renderList",[vs]:"renderSlot",[bs]:"createSlots",[ys]:"toDisplayString",[ws]:"mergeProps",[ks]:"normalizeClass",[xs]:"normalizeStyle",[Ss]:"normalizeProps",[Cs]:"guardReactiveProps",[Ts]:"toHandlers",[Es]:"camelize",[Ps]:"capitalize",[As]:"toHandlerKey",[Ms]:"setBlockTracking",[Ls]:"pushScopeId",[Rs]:"popScopeId",[zs]:"withCtx",[Ns]:"unref",[Os]:"isRef",[Is]:"withMemo",[qs]:"isMemoSame"},js={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function Bs(e,t,n,a,i,r,o,s=!1,l=!1,u=!1,c=js){return e&&(s?(e.helper(is),e.helper(e.inSSR||u?rs:os)):e.helper(e.inSSR||u?ss:ls),o&&e.helper(gs)),{type:13,tag:t,props:n,children:a,patchFlag:i,dynamicProps:r,directives:o,isBlock:s,disableTracking:l,isComponent:u,loc:c}}function Fs(e,t=js){return{type:17,loc:t,elements:e}}function $s(e,t=js){return{type:15,loc:t,properties:e}}function Vs(e,t){return{type:16,loc:js,key:M(e)?Us(e,!0):e,value:t}}function Us(e,t=!1,n=js,a=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:a}}function Hs(e,t=js){return{type:8,loc:t,children:e}}function Ws(e,t=[],n=js){return{type:14,loc:n,callee:e,arguments:t}}function Gs(e,t,n=!1,a=!1,i=js){return{type:18,params:e,returns:t,newline:n,isSlot:a,loc:i}}function Ys(e,t,n,a=!0){return{type:19,test:e,consequent:t,alternate:n,newline:a,loc:js}}function Ks(e,{helper:t,removeHelper:n,inSSR:a}){var i,r;e.isBlock||(e.isBlock=!0,n((i=e.isComponent,a||i?ss:ls)),t(is),t((r=e.isComponent,a||r?rs:os)))}let Qs=new Uint8Array([123,123]),Zs=new Uint8Array([125,125]);function Js(e){return e>=97&&e<=122||e>=65&&e<=90}function Xs(e){return 32===e||10===e||9===e||12===e||13===e}function el(e){return 47===e||62===e||Xs(e)}function tl(e){let t=new Uint8Array(e.length);for(let n=0;n4===e.type&&e.isStatic;function sl(e){switch(e){case"Teleport":case"teleport":return es;case"Suspense":case"suspense":return ts;case"KeepAlive":case"keep-alive":return ns;case"BaseTransition":case"base-transition":return as}}let ll=/^$|^\d|[^\$\w\xA0-\uFFFF]/,ul=/[A-Za-z_$\xA0-\uFFFF]/,cl=/[\.\?\w$\xA0-\uFFFF]/,dl=/\s+[.[]\s*|\s*[.[]\s+/g,hl=e=>4===e.type?e.content:e.loc.source,pl=e=>{let t=hl(e).trim().replace(dl,e=>e.trim()),n=0,a=[],i=0,r=0,o=null;for(let e=0;e|^\s*(?:async\s+)?function(?:\s+[\w$]+)?\s*\(/;function ml(e,t,n=!1){for(let a=0;a4===e.key.type&&e.key.content===a)}return n}function Tl(e,t){return`_${t}_${e.replace(/[^\w]/g,(t,n)=>"-"===t?"_":e.charCodeAt(n).toString())}`}let El=/([\s\S]*?)\s+(?:in|of)\s+(\S[\s\S]*)/;function Pl(e){for(let t=0;t0,isVoidTag:w,isPreTag:w,isIgnoreNewlineTag:w,isCustomElement:w,onError:al,onWarn:il,comments:!1,prefixIdentifiers:!1},Rl=Ll,zl=null,Nl="",Ol=null,Il=null,ql="",Dl=-1,jl=-1,Bl=0,Fl=!1,$l=null,Vl=[],Ul=new class{constructor(e,t){this.stack=e,this.cbs=t,this.state=1,this.buffer="",this.sectionStart=0,this.index=0,this.entityStart=0,this.baseState=1,this.inRCDATA=!1,this.inXML=!1,this.inVPre=!1,this.newlines=[],this.mode=0,this.delimiterOpen=Qs,this.delimiterClose=Zs,this.delimiterIndex=-1,this.currentSequence=void 0,this.sequenceIndex=0}get inSFCRoot(){return 2===this.mode&&0===this.stack.length}reset(){this.state=1,this.mode=0,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=1,this.inRCDATA=!1,this.currentSequence=void 0,this.newlines.length=0,this.delimiterOpen=Qs,this.delimiterClose=Zs}getPos(e){let t=1,n=e+1;for(let a=this.newlines.length-1;a>=0;a--){let i=this.newlines[a];if(e>i){t=a+2,n=e-i;break}}return{column:n,line:t,offset:e}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(e){60===e?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):this.inVPre||e!==this.delimiterOpen[0]||(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(e))}stateInterpolationOpen(e){if(e===this.delimiterOpen[this.delimiterIndex])if(this.delimiterIndex===this.delimiterOpen.length-1){let e=this.index+1-this.delimiterOpen.length;e>this.sectionStart&&this.cbs.ontext(this.sectionStart,e),this.state=3,this.sectionStart=e}else this.delimiterIndex++;else this.inRCDATA?(this.state=32,this.stateInRCDATA(e)):(this.state=1,this.stateText(e))}stateInterpolation(e){e===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(e))}stateInterpolationClose(e){e===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(e))}stateSpecialStartSequence(e){let t=this.sequenceIndex===this.currentSequence.length;if(t?el(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.inRCDATA=!1;this.sequenceIndex=0,this.state=6,this.stateInTagName(e)}stateInRCDATA(e){if(this.sequenceIndex===this.currentSequence.length){if(62===e||Xs(e)){let t=this.index-this.currentSequence.length;if(this.sectionStart=e||(28===this.state?this.currentSequence===nl.CdataEnd?this.cbs.oncdata(this.sectionStart,e):this.cbs.oncomment(this.sectionStart,e):6===this.state||11===this.state||18===this.state||17===this.state||12===this.state||13===this.state||14===this.state||15===this.state||16===this.state||20===this.state||19===this.state||21===this.state||9===this.state||this.cbs.ontext(this.sectionStart,e))}emitCodePoint(e,t){}}(Vl,{onerr:ou,ontext(e,t){Kl(Gl(e,t),e,t)},ontextentity(e,t,n){Kl(e,t,n)},oninterpolation(e,t){if(Fl)return Kl(Gl(e,t),e,t);let n=e+Ul.delimiterOpen.length,a=t-Ul.delimiterClose.length;for(;Xs(Nl.charCodeAt(n));)n++;for(;Xs(Nl.charCodeAt(a-1));)a--;let i=Gl(n,a);i.includes("&")&&(i=Rl.decodeEntities(i,!1)),nu({type:5,content:ru(i,!1,au(n,a)),loc:au(e,t)})},onopentagname(e,t){let n=Gl(e,t);Ol={type:1,tag:n,ns:Rl.getNamespace(n,Vl[0],Rl.ns),tagType:0,props:[],children:[],loc:au(e-1,t),codegenNode:void 0}},onopentagend(e){Yl(e)},onclosetag(e,t){let n=Gl(e,t);if(!Rl.isVoidTag(n)){let a=!1;for(let e=0;e0&&Vl[0].loc.start.offset;for(let n=0;n<=e;n++)Ql(Vl.shift(),t,n(7===e.type?e.rawName:e.name)===t)},onattribend(e,t){Ol&&Il&&(iu(Il.loc,t),0!==e&&(ql.includes("&")&&(ql=Rl.decodeEntities(ql,!0)),6===Il.type?("class"===Il.name&&(ql=tu(ql).trim()),Il.value={type:2,content:ql,loc:1===e?au(Dl,jl):au(Dl-1,jl+1)},Ul.inSFCRoot&&"template"===Ol.tag&&"lang"===Il.name&&ql&&"html"!==ql&&Ul.enterRCDATA(tl("{let i=t.start.offset+n;return ru(e,!1,au(i,i+e.length),0,+!!a)},s={source:o(r.trim(),n.indexOf(r,i.length)),value:void 0,key:void 0,index:void 0,finalized:!1},l=i.trim().replace(Wl,"").trim(),u=i.indexOf(l),c=l.match(Hl);if(c){let e;l=l.replace(Hl,"").trim();let t=c[1].trim();if(t&&(e=n.indexOf(t,u+l.length),s.key=o(t,e,!0)),c[2]){let a=c[2].trim();a&&(s.index=o(a,n.indexOf(a,s.key?e+t.length:u+l.length),!0))}}return l&&(s.value=o(l,u,!0)),s}(Il.exp)))),(7!==Il.type||"pre"!==Il.name)&&Ol.props.push(Il)),ql="",Dl=jl=-1},oncomment(e,t){Rl.comments&&nu({type:3,content:Gl(e,t),loc:au(e-4,t+3)})},onend(){let e=Nl.length;for(let t=0;t64&&n<91||sl(e)||Rl.isBuiltInComponent&&Rl.isBuiltInComponent(e)||Rl.isNativeTag&&!Rl.isNativeTag(e))return!0;for(let e=0;e=0;)n--;return n}let Jl=new Set(["if","else","else-if","for","slot"]),Xl=/\r\n/g;function eu(e){let t="preserve"!==Rl.whitespace,n=!1;for(let a=0;a3!==e.type);return 1!==t.length||1!==t[0].type||kl(t[0])?null:t[0]}function lu(e,t){let{constantCache:n}=t;switch(e.type){case 1:if(0!==e.tagType)return 0;let s=n.get(e);if(void 0!==s)return s;let l=e.codegenNode;if(13!==l.type||l.isBlock&&"svg"!==e.tag&&"foreignObject"!==e.tag&&"math"!==e.tag)return 0;if(void 0!==l.patchFlag)return n.set(e,0),0;{let s=3,u=cu(e,t);if(0===u)return n.set(e,0),0;u1)for(let a=0;a{n--};for(;nt===e:t=>e.test(t);return(e,a)=>{if(1===e.type){let{props:i}=e;if(3===e.tagType&&i.some(yl))return;let r=[];for(let o=0;o`${Ds[e]}: _${Ds[e]}`;function gu(e,t,{helper:n,push:a,newline:i,isTS:r}){let o=n("component"===t?hs:fs);for(let n=0;n3;t.push("["),n&&t.indent(),vu(e,t,n),n&&t.deindent(),t.push("]")}function vu(e,t,n=!1,a=!0){let{push:i,newline:r}=t;for(let o=0;oe||"null")}([o,s,l,n,c]),t),a(")"),h&&a(")"),d&&(a(", "),bu(d,t),a(")"))}(e,t);break;case 14:!function(e,t){let{push:n,helper:a,pure:i}=t,r=M(e.callee)?e.callee:a(e.callee);i&&n(fu),n(r+"(",-2,e),vu(e.arguments,t),n(")")}(e,t);break;case 15:!function(e,t){let{push:n,indent:a,deindent:i,newline:r}=t,{properties:o}=e;if(!o.length)return n("{}",-2,e);let s=o.length>1;n(s?"{":"{ "),s&&a();for(let e=0;e "),(l||s)&&(n("{"),a()),o?(l&&n("return "),P(o)?_u(o,t):bu(o,t)):s&&bu(s,t),(l||s)&&(i(),n("}")),u&&n(")")}(e,t);break;case 19:!function(e,t){let{test:n,consequent:a,alternate:i,newline:r}=e,{push:o,indent:s,deindent:l,newline:u}=t;if(4===n.type){let e,a=(e=n.content,!!ll.test(e));a&&o("("),yu(n,t),a&&o(")")}else o("("),bu(n,t),o(")");r&&s(),t.indentLevel++,r||o(" "),o("? "),bu(a,t),t.indentLevel--,r&&u(),r||o(" "),o(": ");let c=19===i.type;!c&&t.indentLevel++,bu(i,t),!c&&t.indentLevel--,r&&l(!0)}(e,t);break;case 20:!function(e,t){let{push:n,helper:a,indent:i,deindent:r,newline:o}=t,{needPauseTracking:s,needArraySpread:l}=e;l&&n("[...("),n(`_cache[${e.index}] || (`),s&&(i(),n(`${a(Ms)}(-1`),e.inVOnce&&n(", true"),n("),"),o(),n("(")),n(`_cache[${e.index}] = `),bu(e.value,t),s&&(n(`).cacheIndex = ${e.index},`),o(),n(`${a(Ms)}(1),`),o(),n(`_cache[${e.index}]`),r()),n(")"),l&&n(")]")}(e,t);break;case 21:vu(e.body,t,!0,!1)}}function yu(e,t){let{content:n,isStatic:a}=e;t.push(a?JSON.stringify(n):n,-3,e)}function wu(e,t){for(let n=0;nfunction(e,t,n,a){if(!("else"===t.name||t.exp&&t.exp.content.trim())){let a=t.exp?t.exp.loc:e.loc;n.onError(rl(28,t.loc)),t.exp=Us("true",!1,a)}if("if"===t.name){var i;let r=xu(e,t),o={type:9,loc:au((i=e.loc).start.offset,i.end.offset),branches:[r]};if(n.replaceNode(o),a)return a(o,r,!0)}else{let i=n.parent.children,r=i.indexOf(e);for(;r-- >=-1;){let o=i[r];if(!o||!Ml(o)){if(o&&9===o.type){("else-if"===t.name||"else"===t.name)&&void 0===o.branches[o.branches.length-1].condition&&n.onError(rl(30,e.loc)),n.removeNode();let i=xu(e,t);o.branches.push(i);let r=a&&a(o,i,!1);hu(i,n),r&&r(),n.currentNode=null}else n.onError(rl(30,e.loc));break}n.removeNode(o)}}}(e,t,n,(e,t,a)=>{let i=n.parent.children,r=i.indexOf(e),o=0;for(;r-- >=0;){let e=i[r];e&&9===e.type&&(o+=e.branches.length)}return()=>{a?e.codegenNode=Su(t,o,n):(function(e){for(;;)if(19===e.type){if(19!==e.alternate.type)return e;e=e.alternate}else 20===e.type&&(e=e.value)}(e.codegenNode)).alternate=Su(t,o+e.branches.length-1,n)}}));function xu(e,t){let n=3===e.tagType;return{type:10,loc:e.loc,condition:"else"===t.name?void 0:t.exp,children:n&&!ml(e,"for")?e.children:[e],userKey:gl(e,"key"),isTemplateIf:n}}function Su(e,t,n){return e.condition?Ys(e.condition,Cu(e,t,n),Ws(n.helper(us),['""',"true"])):Cu(e,t,n)}function Cu(e,t,n){let{helper:a}=n,i=Vs("key",Us(`${t}`,!1,js,2)),{children:r}=e,o=r[0];if(1!==r.length||1!==o.type){if(1!==r.length||11!==o.type)return Bs(n,a(Xo),$s([i]),r,64,void 0,void 0,!0,!1,!1,e.loc);{let e=o.codegenNode;return Sl(e,i,n),e}}{let e=o.codegenNode,t=14===e.type&&e.callee===Is?e.arguments[1].returns:e;return 13===t.type&&Ks(t,n),Sl(t,i,n),e}}let Tu=pu("for",(e,t,n)=>{let{helper:a,removeHelper:i}=n;return function(e,t,n,a){if(!t.exp)return void n.onError(rl(31,t.loc));let i=t.forParseResult;if(!i)return void n.onError(rl(32,t.loc));Eu(i);let{scopes:r}=n,{source:o,value:s,key:l,index:u}=i,c={type:11,loc:t.loc,source:o,valueAlias:s,keyAlias:l,objectIndexAlias:u,parseResult:i,children:wl(e)?e.children:[e]};n.replaceNode(c),r.vFor++;let d=a&&a(c);return()=>{r.vFor--,d&&d()}}(e,t,n,t=>{let r=Ws(a(_s),[t.source]),o=wl(e),s=ml(e,"memo"),l=gl(e,"key",!1,!0);l&&l.type;let u=l&&(6===l.type?l.value?Us(l.value.content,!0):void 0:l.exp),c=l&&u?Vs("key",u):null,d=4===t.source.type&&t.source.constType>0,h=d?64:l?128:256;return t.codegenNode=Bs(n,a(Xo),void 0,r,h,void 0,void 0,!0,!d,!1,e.loc),()=>{let l,{children:h}=t,p=1!==h.length||1!==h[0].type,f=kl(e)?e:o&&1===e.children.length&&kl(e.children[0])?e.children[0]:null;if(f)l=f.codegenNode,o&&c&&Sl(l,c,n);else if(p)l=Bs(n,a(Xo),c?$s([c]):void 0,e.children,64,void 0,void 0,!0,void 0,!1);else{var m,g,_,v,b,y,w,k;l=h[0].codegenNode,o&&c&&Sl(l,c,n),!d!==l.isBlock&&(l.isBlock?(i(is),i((m=n.inSSR,g=l.isComponent,m||g?rs:os))):i((_=n.inSSR,v=l.isComponent,_||v?ss:ls))),l.isBlock=!d,l.isBlock?(a(is),a((b=n.inSSR,y=l.isComponent,b||y?rs:os))):a((w=n.inSSR,k=l.isComponent,w||k?ss:ls))}if(s){let e=Gs(Pu(t.parseResult,[Us("_cached")]));e.body={type:21,body:[Hs(["const _memo = (",s.exp,")"]),Hs(["if (_cached",...u?[" && _cached.key === ",u]:[],` && ${n.helperString(qs)}(_cached, _memo)) return _cached`]),Hs(["const _item = ",l]),Us("_item.memo = _memo"),Us("return _item")],loc:js},r.arguments.push(e,Us("_cache"),Us(String(n.cached.length))),n.cached.push(null)}else r.arguments.push(Gs(Pu(t.parseResult),l,!0))}})});function Eu(e,t){e.finalized||(e.finalized=!0)}function Pu({value:e,key:t,index:n},a=[]){var i=[e,t,n,...a];let r=i.length;for(;r--&&!i[r];);return i.slice(0,r+1).map((e,t)=>e||Us("_".repeat(t+1),!1))}let Au=Us("undefined",!1),Mu=(e,t)=>{if(1===e.type&&(1===e.tagType||3===e.tagType)){let n=ml(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}};function Lu(e,t,n){let a=[Vs("name",e),Vs("fn",t)];return null!=n&&a.push(Vs("key",Us(String(n),!0))),$s(a)}let Ru=new WeakMap,zu=(e,t)=>function(){let n,a,i,r,o;if(1!==(e=t.currentNode).type||0!==e.tagType&&1!==e.tagType)return;let{tag:s,props:l}=e,u=1===e.tagType,c=u?function(e,t,n=!1){let{tag:a}=e,i=Iu(a),r=gl(e,"is",!1,!0);if(r)if(i){let e;if(6===r.type?e=r.value&&Us(r.value.content,!0):(e=r.exp)||(e=Us("is",!1,r.arg.loc)),e)return Ws(t.helper(ps),[e])}else 6===r.type&&r.value.content.startsWith("vue:")&&(a=r.value.content.slice(4));let o=sl(a)||t.isBuiltInComponent(a);return o?(n||t.helper(o),o):(t.helper(hs),t.components.add(a),Tl(a,"component"))}(e,t):`"${s}"`,d=R(c)&&c.callee===ps,h=0,p=d||c===es||c===ts||!u&&("svg"===s||"foreignObject"===s||"math"===s);if(l.length>0){let a=Nu(e,t,void 0,u,d);n=a.props,h=a.patchFlag,r=a.dynamicPropNames;let i=a.directives;o=i&&i.length?Fs(i.map(e=>function(e,t){let n=[],a=Ru.get(e);a?n.push(t.helperString(a)):(t.helper(fs),t.directives.add(e.name),n.push(Tl(e.name,"directive")));let{loc:i}=e;if(e.exp&&n.push(e.exp),e.arg&&(e.exp||n.push("void 0"),n.push(e.arg)),Object.keys(e.modifiers).length){e.arg||(e.exp||n.push("void 0"),n.push("void 0"));let t=Us("true",!1,i);n.push($s(e.modifiers.map(e=>Vs(e,t)),i))}return Fs(n,e.loc)}(e,t))):void 0,a.shouldUseBlock&&(p=!0)}if(e.children.length>0)if(c===ns&&(p=!0,h|=1024),u&&c!==es&&c!==ns){let{slots:n,hasDynamicSlots:i}=function(e,t,n=(e,t,n,a)=>Gs(e,n,!1,!0,n.length?n[0].loc:a)){t.helper(zs);let{children:a,loc:i}=e,r=[],o=[],s=t.scopes.vSlot>0||t.scopes.vFor>0,l=ml(e,"slot",!0);if(l){let{arg:e,exp:t}=l;e&&!ol(e)&&(s=!0),r.push(Vs(e||Us("default",!0),n(t,void 0,a,i)))}let u=!1,c=!1,d=[],h=new Set,p=0;for(let e=0;eVs("default",n(e,void 0,t,i));u?d.length&&!d.every(Al)&&(c?t.onError(rl(39,d[0].loc)):r.push(e(void 0,d))):r.push(e(void 0,a))}let f=s?2:function e(t){for(let n=0;n0,f=!1,m=0,g=!1,_=!1,v=!1,b=!1,y=!1,w=!1,x=[],S=e=>{c.length&&(d.push($s(Ou(c),l)),c=[]),e&&d.push(e)},C=()=>{t.scopes.vFor>0&&c.push(Vs(Us("ref_for",!0),Us("true")))},T=({key:e,value:n})=>{if(ol(e)){let r=e.content,o=k(r);o&&(!a||i)&&"onclick"!==r.toLowerCase()&&"onUpdate:modelValue"!==r&&!I(r)&&(b=!0),o&&I(r)&&(w=!0),o&&14===n.type&&(n=n.arguments[0]),20===n.type||(4===n.type||8===n.type)&&lu(n,t)>0||("ref"===r?g=!0:"class"===r?_=!0:"style"===r?v=!0:"key"===r||x.includes(r)||x.push(r),a&&("class"===r||"style"===r)&&!x.includes(r)&&x.push(r))}else y=!0};for(let i=0;i"prop"===e.content)&&(m|=32);let w=t.directiveTransforms[n];if(w){let{props:n,needRuntime:a}=w(o,e,t);r||n.forEach(T),b&&i&&!ol(i)?S($s(n,l)):c.push(...n),a&&(h.push(o),L(a)&&Ru.set(o,a))}else!q(n)&&(h.push(o),p&&(f=!0))}}if(d.length?(S(),o=d.length>1?Ws(t.helper(ws),d,l):d[0]):c.length&&(o=$s(Ou(c),l)),y?m|=16:(_&&!a&&(m|=2),v&&!a&&(m|=4),x.length&&(m|=8),b&&(m|=32)),!f&&(0===m||32===m)&&(g||w||h.length>0)&&(m|=512),!t.inSSR&&o)switch(o.type){case 15:let e=-1,n=-1,a=!1;for(let t=0;t{if(kl(e)){let{children:n,loc:a}=e,{slotName:i,slotProps:r}=function(e,t){let n,a='"default"',i=[];for(let t=0;t0){let{props:a,directives:r}=Nu(e,t,i,!1,!1);n=a,r.length&&t.onError(rl(36,r[0].loc))}return{slotName:a,slotProps:n}}(e,t),o=[t.prefixIdentifiers?"_ctx.$slots":"$slots",i,"{}","undefined","true"],s=2;r&&(o[2]=r,s=3),n.length&&(o[3]=Gs([],n,!1,!1,a),s=4),t.scopeId&&!t.slotted&&(s=5),o.splice(s),e.codegenNode=Ws(t.helper(vs),o,a)}},Du=(e,t,n,a)=>{let i,{loc:r,modifiers:o,arg:s}=e;if(!e.exp&&o.length,4===s.type)if(s.isStatic){let e=s.content;e.startsWith("vue:")&&(e=`vnode-${e.slice(4)}`),i=Us(0!==t.tagType||e.startsWith("vnode")||!/[A-Z]/.test(e)?U(B(e)):`on:${e}`,!0,s.loc)}else i=Hs([`${n.helperString(As)}(`,s,")"]);else(i=s).children.unshift(`${n.helperString(As)}(`),i.children.push(")");let l=e.exp;l&&!l.content.trim()&&(l=void 0);let u=n.cacheHandlers&&!l&&!n.inVOnce;if(l){let e,t=pl(l),n=!(t||(e=l,fl.test(hl(e)))),a=l.content.includes(";");(n||u&&t)&&(l=Hs([`${n?"$event":"(...args)"} => ${a?"{":"("}`,l,a?"}":")"]))}let c={props:[Vs(i,l||Us("() => {}",!1,r))]};return a&&(c=a(c)),u&&(c.props[0].value=n.cache(c.props[0].value)),c.props.forEach(e=>e.key.isHandlerKey=!0),c},ju=(e,t,n)=>{let{modifiers:a}=e,i=e.arg,{exp:r}=e;return r&&4===r.type&&!r.content.trim()&&(r=void 0),4!==i.type?(i.children.unshift("("),i.children.push(') || ""')):i.isStatic||(i.content=i.content?`${i.content} || ""`:'""'),a.some(e=>"camel"===e.content)&&(4===i.type?i.isStatic?i.content=B(i.content):i.content=`${n.helperString(Es)}(${i.content})`:(i.children.unshift(`${n.helperString(Es)}(`),i.children.push(")"))),!n.inSSR&&(a.some(e=>"prop"===e.content)&&Bu(i,"."),a.some(e=>"attr"===e.content)&&Bu(i,"^")),{props:[Vs(i,r)]}},Bu=(e,t)=>{4===e.type?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},Fu=(e,t)=>{if(0===e.type||1===e.type||11===e.type||10===e.type)return()=>{let n,a=e.children,i=!1;for(let e=0;e7===e.type&&!t.directiveTransforms[e.name]))))for(let e=0;e{if(1===e.type&&ml(e,"once",!0)&&!$u.has(e)&&!t.inVOnce&&!t.inSSR)return $u.add(e),t.inVOnce=!0,t.helper(Ms),()=>{t.inVOnce=!1;let e=t.currentNode;e.codegenNode&&(e.codegenNode=t.cache(e.codegenNode,!0,!0))}},Uu=(e,t,n)=>{let a,{exp:i,arg:r}=e;if(!i)return n.onError(rl(41,e.loc)),Hu();let o=i.loc.source.trim(),s=4===i.type?i.content:o,l=n.bindingMetadata[o];if("props"===l||"props-aliased"===l)return i.loc,Hu();if(!s.trim()||!pl(i))return n.onError(rl(42,i.loc)),Hu();let u=r||Us("modelValue",!0),c=r?ol(r)?`onUpdate:${B(r.content)}`:Hs(['"onUpdate:" + ',r]):"onUpdate:modelValue";a=Hs([`${n.isTS?"($event: any)":"$event"} => ((`,i,") = $event)"]);let d=[Vs(u,e.exp),Vs(c,a)];if(e.modifiers.length&&1===t.tagType){let t=e.modifiers.map(e=>e.content).map(e=>(ll.test(e)?JSON.stringify(e):e)+": true").join(", "),n=r?ol(r)?`${r.content}Modifiers`:Hs([r,' + "Modifiers"']):"modelModifiers";d.push(Vs(n,Us(`{ ${t} }`,!1,e.loc,2)))}return Hu(d)};function Hu(e=[]){return{props:e}}let Wu=new WeakSet,Gu=(e,t)=>{if(1===e.type){let n=ml(e,"memo");if(n&&!Wu.has(e)&&!t.inSSR)return Wu.add(e),()=>{let a=e.codegenNode||t.currentNode.codegenNode;a&&13===a.type&&(1!==e.tagType&&Ks(a,t),e.codegenNode=Ws(t.helper(Is),[n.exp,Gs(void 0,a),"_cache",String(t.cached.length)]),t.cached.push(null))}}},Yu=(e,t)=>{if(1===e.type)for(let n of e.props)if(7===n.type&&"bind"===n.name&&(!n.exp||4===n.exp.type&&!n.exp.content.trim())&&n.arg){let e=n.arg;if(4===e.type&&e.isStatic){let t=B(e.content);(ul.test(t[0])||"-"===t[0])&&(n.exp=Us(t,!1,e.loc))}else t.onError(rl(52,e.loc)),n.exp=Us("",!0,e.loc)}},Ku=Symbol(""),Qu=Symbol(""),Zu=Symbol(""),Ju=Symbol(""),Xu=Symbol(""),ec=Symbol(""),tc=Symbol(""),nc=Symbol(""),ac=Symbol(""),ic=Symbol("");Object.getOwnPropertySymbols(a={[Ku]:"vModelRadio",[Qu]:"vModelCheckbox",[Zu]:"vModelText",[Ju]:"vModelSelect",[Xu]:"vModelDynamic",[ec]:"withModifiers",[tc]:"withKeys",[nc]:"vShow",[ac]:"Transition",[ic]:"TransitionGroup"}).forEach(e=>{Ds[e]=a[e]});let rc={parseMode:"html",isVoidTag:se,isNativeTag:e=>ie(e)||re(e)||oe(e),isPreTag:e=>"pre"===e,isIgnoreNewlineTag:e=>"pre"===e||"textarea"===e,decodeEntities:function(e,t=!1){return f||(f=document.createElement("div")),t?(f.innerHTML=`
`,f.children[0].getAttribute("foo")):(f.innerHTML=e,f.textContent)},isBuiltInComponent:e=>"Transition"===e||"transition"===e?ac:"TransitionGroup"===e||"transition-group"===e?ic:void 0,getNamespace(e,t,n){let a=t?t.ns:n;if(t&&2===a)if("annotation-xml"===t.tag){if("svg"===e)return 1;t.props.some(e=>6===e.type&&"encoding"===e.name&&null!=e.value&&("text/html"===e.value.content||"application/xhtml+xml"===e.value.content))&&(a=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&"mglyph"!==e&&"malignmark"!==e&&(a=0);else t&&1===a&&("foreignObject"===t.tag||"desc"===t.tag||"title"===t.tag)&&(a=0);if(0===a){if("svg"===e)return 1;if("math"===e)return 2}return a}},oc=_("passive,once,capture"),sc=_("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),lc=_("left,right"),uc=_("onkeyup,onkeydown,onkeypress"),cc=(e,t)=>ol(e)&&"onclick"===e.content.toLowerCase()?Us(t,!0):4!==e.type?Hs(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,dc=(e,t)=>{1===e.type&&0===e.tagType&&("script"===e.tag||"style"===e.tag)&&t.removeNode()},hc=[e=>{1===e.type&&e.props.forEach((t,n)=>{let a,i;6===t.type&&"style"===t.name&&t.value&&(e.props[n]={type:7,name:"bind",arg:Us("style",!0,t.loc),exp:(a=t.value.content,i=t.loc,Us(JSON.stringify(ne(a)),!1,i,3)),modifiers:[],loc:t.loc})})}],pc={cloak:()=>({props:[]}),html:(e,t,n)=>{let{exp:a,loc:i}=e;return a||n.onError(rl(53,i)),t.children.length&&(n.onError(rl(54,i)),t.children.length=0),{props:[Vs(Us("innerHTML",!0,i),a||Us("",!0))]}},text:(e,t,n)=>{let{exp:a,loc:i}=e;return a||n.onError(rl(55,i)),t.children.length&&(n.onError(rl(56,i)),t.children.length=0),{props:[Vs(Us("textContent",!0),a?lu(a,n)>0?a:Ws(n.helperString(ys),[a],i):Us("",!0))]}},model:(e,t,n)=>{let a=Uu(e,t,n);if(!a.props.length||1===t.tagType)return a;e.arg&&n.onError(rl(58,e.arg.loc));let{tag:i}=t,r=n.isCustomElement(i);if("input"===i||"textarea"===i||"select"===i||r){let o=Zu,s=!1;if("input"===i||r){let a=gl(t,"type");if(a){if(7===a.type)o=Xu;else if(a.value)switch(a.value.content){case"radio":o=Ku;break;case"checkbox":o=Qu;break;case"file":s=!0,n.onError(rl(59,e.loc))}}else t.props.some(e=>!(7!==e.type||"bind"!==e.name||e.arg&&4===e.arg.type&&e.arg.isStatic))&&(o=Xu)}else"select"===i&&(o=Ju);s||(a.needRuntime=n.helper(o))}else n.onError(rl(57,e.loc));return a.props=a.props.filter(e=>4!==e.key.type||"modelValue"!==e.key.content),a},on:(e,t,n)=>Du(e,t,n,t=>{let{modifiers:a}=e;if(!a.length)return t;let{key:i,value:r}=t.props[0],{keyModifiers:o,nonKeyModifiers:s,eventOptionModifiers:l}=((e,t)=>{let n=[],a=[],i=[];for(let r=0;r{let{exp:a,loc:i}=e;return a||n.onError(rl(61,i)),{props:[],needRuntime:n.helper(nc)}}},fc=Object.create(null);function mc(e,t){if(!M(e)){if(!e.nodeType)return y;e=e.innerHTML}let n=e+JSON.stringify(t,(e,t)=>"function"==typeof t?t.toString():t),a=fc[n];if(a)return a;if("#"===e[0]){let t=document.querySelector(e);e=t?t.innerHTML:""}let i=S({hoistStatic:!0,onError:void 0,onWarn:y},t);i.isCustomElement||"undefined"==typeof customElements||(i.isCustomElement=e=>!!customElements.get(e));let{code:r}=function(e,t={}){return function(e,t={}){var n;let a,i=t.onError||al,r="module"===t.mode;!0===t.prefixIdentifiers?i(rl(47)):r&&i(rl(48)),t.cacheHandlers&&i(rl(49)),t.scopeId&&!r&&i(rl(50));let o=S({},t,{prefixIdentifiers:!1}),s=M(e)?function(e,t){if(Ul.reset(),Ol=null,Il=null,ql="",Dl=-1,jl=-1,Vl.length=0,Nl=e,Rl=S({},Ll),t){let e;for(e in t)null!=t[e]&&(Rl[e]=t[e])}Ul.mode="html"===Rl.parseMode?1:2*("sfc"===Rl.parseMode),Ul.inXML=1===Rl.ns||2===Rl.ns;let n=t&&t.delimiters;n&&(Ul.delimiterOpen=tl(n[0]),Ul.delimiterClose=tl(n[1]));let a=zl=function(e,t=""){return{type:0,source:t,children:[],helpers:new Set,components:[],directives:[],hoists:[],imports:[],cached:[],temps:0,codegenNode:void 0,loc:js}}(0,e);return Ul.parse(Nl),a.loc=au(0,e.length),a.children=eu(a.children),zl=null,a}(e,o):e,[l,u]=[[Yu,Vu,ku,Gu,Tu,qu,zu,Mu,Fu],{on:Du,bind:ju,model:Uu}];return a=function(e,{filename:t="",prefixIdentifiers:n=!1,hoistStatic:a=!1,hmr:i=!1,cacheHandlers:r=!1,nodeTransforms:o=[],directiveTransforms:s={},transformHoist:l=null,isBuiltInComponent:u=y,isCustomElement:c=y,expressionPlugins:d=[],scopeId:h=null,slotted:p=!0,ssr:f=!1,inSSR:m=!1,ssrCssVars:g="",bindingMetadata:_=v,inline:b=!1,isTS:w=!1,onError:k=al,onWarn:x=il,compatConfig:S}){let C=t.replace(/\?.*$/,"").match(/([^/\\]+)\.\w+$/),T={filename:t,selfName:C&&V(B(C[1])),prefixIdentifiers:n,hoistStatic:a,hmr:i,cacheHandlers:r,nodeTransforms:o,directiveTransforms:s,transformHoist:l,isBuiltInComponent:u,isCustomElement:c,expressionPlugins:d,scopeId:h,slotted:p,ssr:f,inSSR:m,ssrCssVars:g,bindingMetadata:_,inline:b,isTS:w,onError:k,onWarn:x,compatConfig:S,root:e,helpers:new Map,components:new Set,directives:new Set,hoists:[],imports:[],cached:[],constantCache:new WeakMap,temps:0,identifiers:Object.create(null),scopes:{vFor:0,vSlot:0,vPre:0,vOnce:0},parent:null,grandParent:null,currentNode:e,childIndex:0,inVOnce:!1,helper(e){let t=T.helpers.get(e)||0;return T.helpers.set(e,t+1),e},removeHelper(e){let t=T.helpers.get(e);if(t){let n=t-1;n?T.helpers.set(e,n):T.helpers.delete(e)}},helperString:e=>`_${Ds[T.helper(e)]}`,replaceNode(e){T.parent.children[T.childIndex]=T.currentNode=e},removeNode(e){let t=T.parent.children,n=e?t.indexOf(e):T.currentNode?T.childIndex:-1;e&&e!==T.currentNode?T.childIndex>n&&(T.childIndex--,T.onNodeRemoved()):(T.currentNode=null,T.onNodeRemoved()),T.parent.children.splice(n,1)},onNodeRemoved:y,addIdentifiers(e){},removeIdentifiers(e){},hoist(e){M(e)&&(e=Us(e)),T.hoists.push(e);let t=Us(`_hoisted_${T.hoists.length}`,!1,e.loc,2);return t.hoisted=e,t},cache(e,t=!1,n=!1){let a=function(e,t,n=!1,a=!1){return{type:20,index:e,value:t,needPauseTracking:n,inVOnce:a,needArraySpread:!1,loc:js}}(T.cached.length,e,t,n);return T.cached.push(a),a}};return T}(s,n=S({},o,{nodeTransforms:[...l,...t.nodeTransforms||[]],directiveTransforms:S({},u,t.directiveTransforms||{})})),hu(s,a),n.hoistStatic&&function e(t,n,a,i=!1,r=!1){let{children:o}=t,s=[];for(let n=0;n0){if(e>=2){l.codegenNode.patchFlag=-1,s.push(l);continue}}else{let e=l.codegenNode;if(13===e.type){let t=e.patchFlag;if((void 0===t||512===t||1===t)&&cu(l,a)>=2){let t=du(l);t&&(e.props=a.hoist(t))}e.dynamicProps&&(e.dynamicProps=a.hoist(e.dynamicProps))}}}else if(12===l.type&&(i?0:lu(l,a))>=2){14===l.codegenNode.type&&l.codegenNode.arguments.length>0&&l.codegenNode.arguments.push("-1"),s.push(l);continue}if(1===l.type){let n=1===l.tagType;n&&a.scopes.vSlot++,e(l,t,a,!1,r),n&&a.scopes.vSlot--}else if(11===l.type)e(l,t,a,1===l.children.length,!0);else if(9===l.type)for(let n=0;ne.key===t||e.key.content===t);return n&&n.value}}s.length&&a.transformHoist&&a.transformHoist(o,a,t)}(s,void 0,a,!!su(s)),n.ssr||function(e,t){let{helper:n}=t,{children:a}=e;if(1===a.length){let n=su(e);if(n&&n.codegenNode){let a=n.codegenNode;13===a.type&&Ks(a,t),e.codegenNode=a}else e.codegenNode=a[0]}else a.length>1&&(e.codegenNode=Bs(t,n(Xo),void 0,e.children,64,void 0,void 0,!0,void 0,!1))}(s,a),s.helpers=new Set([...a.helpers.keys()]),s.components=[...a.components],s.directives=[...a.directives],s.imports=a.imports,s.hoists=a.hoists,s.temps=a.temps,s.cached=a.cached,s.transformed=!0,function(e,t={}){let n=function(e,{mode:t="function",prefixIdentifiers:n="module"===t,sourceMap:a=!1,filename:i="template.vue.html",scopeId:r=null,optimizeImports:o=!1,runtimeGlobalName:s="Vue",runtimeModuleName:l="vue",ssrRuntimeModuleName:u="vue/server-renderer",ssr:c=!1,isTS:d=!1,inSSR:h=!1}){let p={mode:t,prefixIdentifiers:n,sourceMap:a,filename:i,scopeId:r,optimizeImports:o,runtimeGlobalName:s,runtimeModuleName:l,ssrRuntimeModuleName:u,ssr:c,isTS:d,inSSR:h,source:e.source,code:"",column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper:e=>`_${Ds[e]}`,push(e,t=-2,n){p.code+=e},indent(){f(++p.indentLevel)},deindent(e=!1){e?--p.indentLevel:f(--p.indentLevel)},newline(){f(p.indentLevel)}};function f(e){p.push("\n"+" ".repeat(e),0)}return p}(e,t);t.onContextCreated&&t.onContextCreated(n);let{mode:a,push:i,prefixIdentifiers:r,indent:o,deindent:s,newline:l,ssr:u}=n,c=Array.from(e.helpers),d=c.length>0,h=!r&&"module"!==a;if(function(e,t){let{push:n,newline:a,runtimeGlobalName:i}=t,r=Array.from(e.helpers);if(r.length>0&&(n(`const _Vue = ${i}\n`,-1),e.hoists.length)){n(`const { ${[ss,ls,us,cs,ds].filter(e=>r.includes(e)).map(mu).join(", ")} } = _Vue\n`,-1)}(function(e,t){if(!e.length)return;t.pure=!0;let{push:n,newline:a}=t;a();for(let i=0;i0)&&l()),e.directives.length&&(gu(e.directives,"directive",n),e.temps>0&&l()),e.temps>0){i("let ");for(let t=0;t0?", ":""}_temp${t}`)}return(e.components.length||e.directives.length||e.temps)&&(i("\n",0),l()),u||i("return "),e.codegenNode?bu(e.codegenNode,n):i("null"),h&&(s(),i("}")),s(),i("}"),{ast:e,code:n.code,preamble:"",map:n.map?n.map.toJSON():void 0}}(s,o)}(e,S({},rc,t,{nodeTransforms:[dc,...hc,...t.nodeTransforms||[]],directiveTransforms:S({},pc,t.directiveTransforms||{}),transformHoist:null}))}(e,i),o=Function(r)();return o._rc=!0,fc[n]=o}return mr(mc),e.BaseTransition=Rn,e.BaseTransitionPropsValidators=An,e.Comment=Ii,e.DeprecationTypes=null,e.EffectScope=me,e.ErrorCodes={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},e.ErrorTypeStrings=null,e.Fragment=Ni,e.KeepAlive={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){let n=ur(),a=n.ctx,i=new Map,r=new Set,o=null,s=n.suspense,{renderer:{p:l,m:u,um:c,o:{createElement:d}}}=a,h=d("div");function p(e){sa(e),c(e,n,s,!0)}function f(e){i.forEach((t,n)=>{let a=yr(t.type);a&&!e(a)&&m(n)})}function m(e){let t=i.get(e);!t||o&&Gi(t,o)?o&&sa(o):p(t),i.delete(e),r.delete(e)}a.activate=(e,t,n,a,i)=>{let r=e.component;u(e,t,n,0,s),l(r.vnode,e,t,n,r,s,a,e.slotScopeIds,i),bi(()=>{r.isDeactivated=!1,r.a&&W(r.a);let t=e.props&&e.props.onVnodeMounted;t&&rr(t,r.parent,e)},s)},a.deactivate=e=>{let t=e.component;Ti(t.m),Ti(t.a),u(e,h,null,1,s),bi(()=>{t.da&&W(t.da);let n=e.props&&e.props.onVnodeUnmounted;n&&rr(n,t.parent,e),t.isDeactivated=!0},s)},Ka(()=>[e.include,e.exclude],([e,t])=>{e&&f(t=>aa(e,t)),t&&f(e=>!aa(t,e))},{flush:"post",deep:!0});let g=null,_=()=>{null!=g&&(Ei(n.subTree.type)?bi(()=>{i.set(g,la(n.subTree))},n.subTree.suspense):i.set(g,la(n.subTree)))};return ha(_),fa(_),ma(()=>{i.forEach(e=>{let{subTree:t,suspense:a}=n,i=la(t);if(e.type===i.type&&e.key===i.key){sa(i);let e=i.component.da;return void(e&&bi(e,a))}p(e)})}),()=>{if(g=null,!t.default)return o=null;let n=t.default(),a=n[0];if(n.length>1)return o=null,n;if(!(Wi(a)&&(4&a.shapeFlag||128&a.shapeFlag)))return o=null,a;let s=la(a);if(s.type===Ii)return o=null,s;let l=s.type,u=yr(ea(s)?s.type.__asyncResolved||{}:l),{include:c,exclude:d,max:h}=e;if(c&&(!u||!aa(c,u))||d&&u&&aa(d,u))return s.shapeFlag&=-257,o=s,a;let p=null==s.key?l:s.key,f=i.get(p);return s.el&&(s=Xi(s),128&a.shapeFlag&&(a.ssContent=s)),g=p,f?(s.el=f.el,s.component=f.component,s.transition&&qn(s,s.transition),s.shapeFlag|=512,r.delete(p),r.add(p)):(r.add(p),h&&r.size>parseInt(h,10)&&m(r.values().next().value)),s.shapeFlag|=256,o=s,Ei(a.type)?a:s}}},e.ReactiveEffect=_e,e.Static=qi,e.Suspense={name:"Suspense",__isSuspense:!0,process(e,t,n,a,i,r,o,s,l,u){if(null==e)!function(e,t,n,a,i,r,o,s,l){let{p:u,o:{createElement:c}}=l,d=c("div"),h=e.suspense=Mi(e,i,a,t,d,n,r,o,s,l);u(null,h.pendingBranch=e.ssContent,d,null,a,h,r,o),h.deps>0?(Ai(e,"onPending"),Ai(e,"onFallback"),u(null,e.ssFallback,t,n,a,null,r,o),zi(h,e.ssFallback)):h.resolve(!1,!0)}(t,n,a,i,r,o,s,l,u);else{if(r&&r.deps>0&&!e.suspense.isInFallback)return t.suspense=e.suspense,t.suspense.vnode=t,void(t.el=e.el);!function(e,t,n,a,i,r,o,s,{p:l,um:u,o:{createElement:c}}){let d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;let h=t.ssContent,p=t.ssFallback,{activeBranch:f,pendingBranch:m,isInFallback:g,isHydrating:_}=d;if(m)d.pendingBranch=h,Gi(m,h)?(l(m,h,d.hiddenContainer,null,i,d,r,o,s),d.deps<=0?d.resolve():g&&!_&&(l(f,p,n,a,i,null,r,o,s),zi(d,p))):(d.pendingId=Pi++,_?(d.isHydrating=!1,d.activeBranch=m):u(m,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=c("div"),g?(l(null,h,d.hiddenContainer,null,i,d,r,o,s),d.deps<=0?d.resolve():(l(f,p,n,a,i,null,r,o,s),zi(d,p))):f&&Gi(f,h)?(l(f,h,n,a,i,d,r,o,s),d.resolve(!0)):(l(null,h,d.hiddenContainer,null,i,d,r,o,s),d.deps<=0&&d.resolve()));else if(f&&Gi(f,h))l(f,h,n,a,i,d,r,o,s),zi(d,h);else if(Ai(t,"onPending"),d.pendingBranch=h,512&h.shapeFlag?d.pendingId=h.component.suspenseId:d.pendingId=Pi++,l(null,h,d.hiddenContainer,null,i,d,r,o,s),d.deps<=0)d.resolve();else{let{timeout:e,pendingId:t}=d;e>0?setTimeout(()=>{d.pendingId===t&&d.fallback(p)},e):0===e&&d.fallback(p)}}(e,t,n,a,i,o,s,l,u)}},hydrate:function(e,t,n,a,i,r,o,s,l){let u=t.suspense=Mi(t,a,n,e.parentNode,document.createElement("div"),null,i,r,o,s,!0),c=l(e,u.pendingBranch=t.ssContent,n,u,r,o);return 0===u.deps&&u.resolve(!1,!0),c},normalize:function(e){let{shapeFlag:t,children:n}=e,a=32&t;e.ssContent=Li(a?n.default:n),e.ssFallback=a?Li(n.fallback):Zi(Ii)}},e.Teleport=wn,e.Text=Oi,e.TrackOpTypes={GET:"get",HAS:"has",ITERATE:"iterate"},e.Transition=Or,e.TransitionGroup=So,e.TriggerOpTypes={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},e.VueElement=vo,e.assertNumber=function(e,t){},e.callWithAsyncErrorHandling=Gt,e.callWithErrorHandling=Wt,e.camelize=B,e.capitalize=V,e.cloneVNode=Xi,e.compatUtils=null,e.compile=mc,e.computed=wr,e.createApp=Ko,e.createBlock=Hi,e.createCommentVNode=function(e="",t=!1){return t?(Bi(),Hi(Ii,null,e)):Zi(Ii,null,e)},e.createElementBlock=function(e,t,n,a,i,r){return Ui(Qi(e,t,n,a,i,r,!0))},e.createElementVNode=Qi,e.createHydrationRenderer=yi,e.createPropsRestProxy=function(e,t){let n={};for(let a in e)t.includes(a)||Object.defineProperty(n,a,{enumerable:!0,get:()=>e[a]});return n},e.createRenderer=function(e){return wi(e)},e.createSSRApp=Qo,e.createSlots=function(e,t){for(let n=0;n{let t=a.fn(...e);return t&&(t.key=a.key),t}:a.fn)}return e},e.createStaticVNode=function(e,t){let n=Zi(qi,null,e);return n.staticCount=t,n},e.createTextVNode=er,e.createVNode=Zi,e.customRef=Dt,e.defineAsyncComponent=function(e){let t;A(e)&&(e={loader:e});let{loader:n,loadingComponent:a,errorComponent:i,delay:r=200,hydrate:o,timeout:s,suspensible:l=!0,onError:u}=e,c=null,d=0,h=()=>{let e;return c||(e=c=n().catch(e=>{if(e=e instanceof Error?e:Error(String(e)),u)return new Promise((t,n)=>{u(e,()=>t((d++,c=null,h())),()=>n(e),d+1)});throw e}).then(n=>e!==c&&c?c:(n&&(n.__esModule||"Module"===n[Symbol.toStringTag])&&(n=n.default),t=n,n)))};return jn({name:"AsyncComponentWrapper",__asyncLoader:h,__asyncHydrate(e,n,a){let i=!1;(n.bu||(n.bu=[])).push(()=>i=!0);let r=()=>{i||a()},s=o?()=>{let t=o(r,t=>function(e,t){if(Gn(e)&&"["===e.data){let n=1,a=e.nextSibling;for(;a;){if(1===a.nodeType){if(!1===t(a))break}else if(Gn(a))if("]"===a.data){if(0==--n)break}else"["===a.data&&n++;a=a.nextSibling}}else t(e)}(e,t));t&&(n.bum||(n.bum=[])).push(t)}:r;t?s():h().then(()=>!n.isUnmounted&&s())},get __asyncResolved(){return t},setup(){let e=lr;if(Bn(e),t)return()=>ta(t,e);let n=t=>{c=null,Yt(t,e,13,!i)};if(l&&e.suspense)return h().then(t=>()=>ta(t,e)).catch(e=>(n(e),()=>i?Zi(i,{error:e}):null));let o=Mt(!1),u=Mt(),d=Mt(!!r);return r&&setTimeout(()=>{d.value=!1},r),null!=s&&setTimeout(()=>{if(!o.value&&!u.value){let e=Error(`Async component timed out after ${s}ms.`);n(e),u.value=e}},s),h().then(()=>{o.value=!0,e.parent&&na(e.parent.vnode)&&e.parent.update()}).catch(e=>{n(e),u.value=e}),()=>o.value&&t?ta(t,e):u.value&&i?Zi(i,{error:u.value}):a&&!d.value?ta(a,e):void 0}})},e.defineComponent=jn,e.defineCustomElement=go,e.defineEmits=function(){return null},e.defineExpose=function(e){},e.defineModel=function(){},e.defineOptions=function(e){},e.defineProps=function(){return null},e.defineSSRCustomElement=(e,t)=>go(e,t,Qo),e.defineSlots=function(){return null},e.devtools=void 0,e.effect=function(e,t){e.effect instanceof _e&&(e=e.effect.fn);let n=new _e(e);t&&S(n,t);try{n.run()}catch(e){throw n.stop(),e}let a=n.run.bind(n);return a.effect=n,a},e.effectScope=function(e){return new me(e)},e.getCurrentInstance=ur,e.getCurrentScope=function(){return r},e.getCurrentWatcher=function(){return m},e.getTransitionRawChildren=Dn,e.guardReactiveProps=Ji,e.h=kr,e.handleError=Yt,e.hasInjectionContext=function(){return!(!ur()&&!Ua)},e.hydrate=(...e)=>{Go().hydrate(...e)},e.hydrateOnIdle=(e=1e4)=>t=>{let n=Jn(t,{timeout:e});return()=>Xn(n)},e.hydrateOnInteraction=(e=[])=>(t,n)=>{M(e)&&(e=[e]);let a=!1,i=e=>{a||(a=!0,r(),t(),e.target.dispatchEvent(new e.constructor(e.type,e)))},r=()=>{n(t=>{for(let n of e)t.removeEventListener(n,i)})};return n(t=>{for(let n of e)t.addEventListener(n,i,{once:!0})}),r},e.hydrateOnMediaQuery=e=>t=>{if(e){let n=matchMedia(e);if(!n.matches)return n.addEventListener("change",t,{once:!0}),()=>n.removeEventListener("change",t);t()}},e.hydrateOnVisible=e=>(t,n)=>{let a=new IntersectionObserver(e=>{for(let n of e)if(n.isIntersecting){a.disconnect(),t();break}},e);return n(e=>{if(e instanceof Element){if(function(e){let{top:t,left:n,bottom:a,right:i}=e.getBoundingClientRect(),{innerHeight:r,innerWidth:o}=window;return(t>0&&t0&&a0&&n0&&ia.disconnect()},e.initCustomFormatter=function(){},e.initDirectivesForSSR=y,e.inject=Wa,e.isMemoSame=xr,e.isProxy=St,e.isReactive=wt,e.isReadonly=kt,e.isRef=At,e.isRuntimeOnly=()=>!d,e.isShallow=xt,e.isVNode=Wi,e.markRaw=Tt,e.mergeDefaults=function(e,t){let n=La(e);for(let e in t){if(e.startsWith("__skip"))continue;let a=n[e];a?P(a)||A(a)?a=n[e]={type:a,default:t[e]}:a.default=t[e]:null===a&&(a=n[e]={default:t[e]}),a&&t[`__skip_${e}`]&&(a.skipFactory=!0)}return n},e.mergeModels=function(e,t){return e&&t?P(e)&&P(t)?e.concat(t):S({},La(e),La(t)):e||t},e.mergeProps=ir,e.nextTick=nn,e.nodeOps=Ar,e.normalizeClass=ae,e.normalizeProps=function(e){if(!e)return null;let{class:t,style:n}=e;return t&&!M(t)&&(e.class=ae(t)),n&&(e.style=J(n)),e},e.normalizeStyle=J,e.onActivated=ia,e.onBeforeMount=da,e.onBeforeUnmount=ma,e.onBeforeUpdate=pa,e.onDeactivated=ra,e.onErrorCaptured=ya,e.onMounted=ha,e.onRenderTracked=ba,e.onRenderTriggered=va,e.onScopeDispose=function(e,t=!1){r&&r.cleanups.push(e)},e.onServerPrefetch=_a,e.onUnmounted=ga,e.onUpdated=fa,e.onWatcherCleanup=Ut,e.openBlock=Bi,e.patchProp=fo,e.popScopeId=function(){dn=null},e.provide=Ha,e.proxyRefs=It,e.pushScopeId=function(e){dn=e},e.queuePostFlushCb=on,e.reactive=_t,e.readonly=bt,e.ref=Mt,e.registerRuntimeCompiler=mr,e.render=Yo,e.renderList=function(e,t,n,a){let i,r=n&&n[a],o=P(e);if(o||M(e)){let n=!1,a=!1;o&&wt(e)&&(n=!xt(e),a=kt(e),e=Fe(e)),i=Array(e.length);for(let o=0,s=e.length;ot(e,n,void 0,r&&r[n]));else{let n=Object.keys(e);i=Array(n.length);for(let a=0,o=n.length;a0;return"default"!==t&&(n.name=t),Bi(),Hi(Ni,null,[Zi("slot",n,a&&a())],e?-2:64)}let r=e[t];r&&r._c&&(r._d=!1),Bi();let o=r&&function e(t){return t.some(t=>!Wi(t)||t.type!==Ii&&(t.type!==Ni||!!e(t.children)))?t:null}(r(n)),s=n.key||o&&o.key,l=Hi(Ni,{key:(s&&!L(s)?s:`_${t}`)+(!o&&a?"_fb":"")},o||(a?a():[]),o&&1===e._?64:-2);return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),r&&r._c&&(r._d=!0),l},e.resolveComponent=function(e,t){return xa(wa,e,!0,t)||e},e.resolveDirective=function(e){return xa("directives",e)},e.resolveDynamicComponent=function(e){return M(e)?xa(wa,e,!1)||e:e||ka},e.resolveFilter=null,e.resolveTransitionHooks=Nn,e.setBlockTracking=Vi,e.setDevtoolsHook=y,e.setTransitionHooks=qn,e.shallowReactive=vt,e.shallowReadonly=function(e){return yt(e,!0,rt,ht,gt)},e.shallowRef=Lt,e.ssrContextKey=Ga,e.ssrUtils=null,e.stop=function(e){e.effect.stop()},e.toDisplayString=he,e.toHandlerKey=U,e.toHandlers=function(e,t){let n={};for(let a in e)n[t&&/[A-Z]/.test(a)?`on:${a}`:U(a)]=e[a];return n},e.toRaw=Ct,e.toRef=function(e,t,n){return At(e)?e:A(e)?new Bt(e):R(e)&&arguments.length>1?new jt(e,t,n):Mt(e)},e.toRefs=function(e){let t=P(e)?Array(e.length):{};for(let n in e)t[n]=new jt(e,n,void 0);return t},e.toValue=function(e){return A(e)?e():Nt(e)},e.transformVNodeArgs=function(e){},e.triggerRef=function(e){e.dep&&e.dep.trigger()},e.unref=Nt,e.useAttrs=function(){return Ma().attrs},e.useCssModule=function(e="$style"){return v},e.useCssVars=function(e){let t=ur();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>Jr(e,n))},a=()=>{let a=e(t.proxy);t.ce?Jr(t.ce,a):function e(t,n){if(128&t.shapeFlag){let a=t.suspense;t=a.activeBranch,a.pendingBranch&&!a.isHydrating&&a.effects.push(()=>{e(a.activeBranch,n)})}for(;t.component;)t=t.component.subTree;if(1&t.shapeFlag&&t.el)Jr(t.el,n);else if(t.type===Ni)t.children.forEach(t=>e(t,n));else if(t.type===qi){let{el:e,anchor:a}=t;for(;e&&(Jr(e,n),e!==a);)e=e.nextSibling}}(t.subTree,a),n(a)};pa(()=>{on(a)}),ha(()=>{Ka(a,y,{flush:"post"});let e=new MutationObserver(a);e.observe(t.subTree.el.parentNode,{childList:!0}),ga(()=>e.disconnect())})},e.useHost=bo,e.useId=function(){let e=ur();return e?(e.appContext.config.idPrefix||"v")+"-"+e.ids[0]+e.ids[1]++:""},e.useModel=function(e,t,n=v){let a=ur(),i=B(t),r=$(t),o=Ja(e,i),s=Dt((o,s)=>{let l,u,c=v;return Ya(()=>{let t=e[i];H(l,t)&&(l=t,s())}),{get:()=>(o(),n.get?n.get(l):l),set(e){let o=n.set?n.set(e):e;if(!(H(o,l)||c!==v&&H(e,c)))return;let d=a.vnode.props;d&&(t in d||i in d||r in d)&&(`onUpdate:${t}`in d||`onUpdate:${i}`in d||`onUpdate:${r}`in d)||(l=e,s()),a.emit(`update:${t}`,o),H(e,o)&&H(e,c)&&!H(o,u)&&s(),c=e,u=o}}});return s[Symbol.iterator]=()=>{let e=0;return{next:()=>e<2?{value:e++?o||v:s,done:!1}:{done:!0}}},s},e.useSSRContext=()=>{},e.useShadowRoot=function(){let e=bo();return e&&e.shadowRoot},e.useSlots=function(){return Ma().slots},e.useTemplateRef=function(e){let t=ur(),n=Lt(null);return t&&Object.defineProperty(t.refs===v?t.refs={}:t.refs,e,{enumerable:!0,get:()=>n.value,set:e=>n.value=e}),n},e.useTransitionState=En,e.vModelCheckbox=No,e.vModelDynamic={created(e,t,n){Fo(e,t,n,null,"created")},mounted(e,t,n){Fo(e,t,n,null,"mounted")},beforeUpdate(e,t,n,a){Fo(e,t,n,a,"beforeUpdate")},updated(e,t,n,a){Fo(e,t,n,a,"updated")}},e.vModelRadio=Io,e.vModelSelect=qo,e.vModelText=zo,e.vShow={name:"show",beforeMount(e,{value:t},{transition:n}){e[Yr]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):Qr(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:a}){!t!=!n&&(a?t?(a.beforeEnter(e),Qr(e,!0),a.enter(e)):a.leave(e,()=>{Qr(e,!1)}):Qr(e,t))},beforeUnmount(e,{value:t}){Qr(e,t)}},e.version=Sr,e.warn=y,e.watch=function(e,t,n){return Ka(e,t,n)},e.watchEffect=function(e,t){return Ka(e,null,t)},e.watchPostEffect=function(e,t){return Ka(e,null,{flush:"post"})},e.watchSyncEffect=Ya,e.withAsyncContext=function(e){let t=ur(),n=e();return dr(),z(n)&&(n=n.catch(e=>{throw cr(t),e})),[n,()=>cr(t)]},e.withCtx=pn,e.withDefaults=function(e,t){return null},e.withDirectives=function(e,t){if(null===cn)return e;let n=br(cn),a=e.dirs||(e.dirs=[]);for(let e=0;e{let n=e._withKeys||(e._withKeys={}),a=t.join(".");return n[a]||(n[a]=n=>{if(!("key"in n))return;let a=$(n.key);return t.some(e=>e===a||Uo[e]===a)?e(n):void 0})},e.withMemo=function(e,t,n,a){let i=n[a];if(i&&xr(i,e))return i;let r=t();return r.memo=e.slice(),r.cacheIndex=a,n[a]=r},e.withModifiers=(e,t)=>{let n=e._withMods||(e._withMods={}),a=t.join(".");return n[a]||(n[a]=(n,...a)=>{for(let e=0;epn,e}({}); /*! - * Quasar Framework v2.17.0 + * Quasar Framework v2.18.6 * (c) 2015-present Razvan Stoenescu * Released under the MIT License. - */(()=>{var e=Object.defineProperty,t=(t,n)=>{for(var a in n)e(t,a,{get:n[a],enumerable:!0})},{h:n,ref:a,computed:i,watch:r,isRef:o,toRaw:s,unref:l,reactive:u,shallowReactive:c,nextTick:d,onActivated:h,onDeactivated:p,onBeforeMount:f,onMounted:m,onBeforeUnmount:g,onUnmounted:_,onBeforeUpdate:v,onUpdated:b,inject:y,provide:w,getCurrentInstance:k,markRaw:x,Transition:S,TransitionGroup:C,KeepAlive:T,Teleport:E,useSSRContext:P,withDirectives:A,vShow:L,defineComponent:M,createApp:R}=window.Vue;function z(e,t,n,a){return Object.defineProperty(e,t,{get:n,set:a,enumerable:!0}),e}function N(e,t){for(let n in t)z(e,n,t[n]);return e}var I,O=a(!1);var D="ontouchstart"in window||window.navigator.maxTouchPoints>0;var q=navigator.userAgent||navigator.vendor||window.opera,j={userAgent:q,is:function(e){let t=e.toLowerCase(),n=function(e){return/(ipad)/.exec(e)||/(ipod)/.exec(e)||/(windows phone)/.exec(e)||/(iphone)/.exec(e)||/(kindle)/.exec(e)||/(silk)/.exec(e)||/(android)/.exec(e)||/(win)/.exec(e)||/(mac)/.exec(e)||/(linux)/.exec(e)||/(cros)/.exec(e)||/(playbook)/.exec(e)||/(bb)/.exec(e)||/(blackberry)/.exec(e)||[]}(t),a=function(e,t){let n=/(edg|edge|edga|edgios)\/([\w.]+)/.exec(e)||/(opr)[\/]([\w.]+)/.exec(e)||/(vivaldi)[\/]([\w.]+)/.exec(e)||/(chrome|crios)[\/]([\w.]+)/.exec(e)||/(version)(applewebkit)[\/]([\w.]+).*(safari)[\/]([\w.]+)/.exec(e)||/(webkit)[\/]([\w.]+).*(version)[\/]([\w.]+).*(safari)[\/]([\w.]+)/.exec(e)||/(firefox|fxios)[\/]([\w.]+)/.exec(e)||/(webkit)[\/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[\/]([\w.]+)/.exec(e)||[];return{browser:n[5]||n[3]||n[1]||"",version:n[4]||n[2]||"0",platform:t[0]||""}}(t,n),i={mobile:!1,desktop:!1,cordova:!1,capacitor:!1,nativeMobile:!1,electron:!1,bex:!1,linux:!1,mac:!1,win:!1,cros:!1,chrome:!1,firefox:!1,opera:!1,safari:!1,vivaldi:!1,edge:!1,edgeChromium:!1,ie:!1,webkit:!1,android:!1,ios:!1,ipad:!1,iphone:!1,ipod:!1,kindle:!1,winphone:!1,blackberry:!1,playbook:!1,silk:!1};a.browser&&(i[a.browser]=!0,i.version=a.version,i.versionNumber=parseInt(a.version,10)),a.platform&&(i[a.platform]=!0);let r=i.android||i.ios||i.bb||i.blackberry||i.ipad||i.iphone||i.ipod||i.kindle||i.playbook||i.silk||i["windows phone"];if(!0===r||-1!==t.indexOf("mobile")?i.mobile=!0:i.desktop=!0,i["windows phone"]&&(i.winphone=!0,delete i["windows phone"]),i.edga||i.edgios||i.edg?(i.edge=!0,a.browser="edge"):i.crios?(i.chrome=!0,a.browser="chrome"):i.fxios&&(i.firefox=!0,a.browser="firefox"),(i.ipod||i.ipad||i.iphone)&&(i.ios=!0),i.vivaldi&&(a.browser="vivaldi",i.vivaldi=!0),(i.chrome||i.opr||i.safari||i.vivaldi||!0===i.mobile&&!0!==i.ios&&!0!==r)&&(i.webkit=!0),i.opr&&(a.browser="opera",i.opera=!0),i.safari&&(i.blackberry||i.bb?(a.browser="blackberry",i.blackberry=!0):i.playbook?(a.browser="playbook",i.playbook=!0):i.android?(a.browser="android",i.android=!0):i.kindle?(a.browser="kindle",i.kindle=!0):i.silk&&(a.browser="silk",i.silk=!0)),i.name=a.browser,i.platform=a.platform,-1!==t.indexOf("electron"))i.electron=!0;else if(-1!==document.location.href.indexOf("-extension://"))i.bex=!0;else{if(void 0!==window.Capacitor?(i.capacitor=!0,i.nativeMobile=!0,i.nativeMobileWrapper="capacitor"):(void 0!==window._cordovaNative||void 0!==window.cordova)&&(i.cordova=!0,i.nativeMobile=!0,i.nativeMobileWrapper="cordova"),!0===O.value&&(I={is:{...i}}),!0===D&&!0===i.mac&&(!0===i.desktop&&!0===i.safari||!0===i.nativeMobile&&!0!==i.android&&!0!==i.ios&&!0!==i.ipad)){delete i.mac,delete i.desktop;let e=Math.min(window.innerHeight,window.innerWidth)>414?"ipad":"iphone";Object.assign(i,{mobile:!0,ios:!0,platform:e,[e]:!0})}!0!==i.mobile&&window.navigator.userAgentData&&window.navigator.userAgentData.mobile&&(delete i.desktop,i.mobile=!0)}return i}(q),has:{touch:D},within:{iframe:window.self!==window.top}},B={install(e){let{$q:t}=e;!0===O.value?(e.onSSRHydrated.push((()=>{Object.assign(t.platform,j),O.value=!1})),t.platform=u(this)):t.platform=this}};{let e;z(j.has,"webStorage",(()=>{if(void 0!==e)return e;try{if(window.localStorage)return e=!0,!0}catch{}return e=!1,!1})),Object.assign(B,j),!0===O.value&&(Object.assign(B,I,{has:{touch:!1,webStorage:!1},within:{iframe:!1}}),I=null)}var F=B;function $(e){return x(M(e))}function V(e){return x(e)}var U=(e,t)=>{let n=u(e);for(let a in e)z(t,a,(()=>n[a]),(e=>{n[a]=e}));return t},H={hasPassive:!1,passiveCapture:!0,notPassiveCapture:!0};try{let e=Object.defineProperty({},"passive",{get(){Object.assign(H,{hasPassive:!0,passive:{passive:!0},notPassive:{passive:!1},passiveCapture:{passive:!0,capture:!0},notPassiveCapture:{passive:!1,capture:!0}})}});window.addEventListener("qtest",null,e),window.removeEventListener("qtest",null,e)}catch{}function W(){}function G(e){return 0===e.button}function Y(e){return e.touches&&e.touches[0]?e=e.touches[0]:e.changedTouches&&e.changedTouches[0]?e=e.changedTouches[0]:e.targetTouches&&e.targetTouches[0]&&(e=e.targetTouches[0]),{top:e.clientY,left:e.clientX}}function K(e){if(e.path)return e.path;if(e.composedPath)return e.composedPath();let t=[],n=e.target;for(;n;){if(t.push(n),"HTML"===n.tagName)return t.push(document),t.push(window),t;n=n.parentElement}}function Q(e){e.stopPropagation()}function Z(e){!1!==e.cancelable&&e.preventDefault()}function J(e){!1!==e.cancelable&&e.preventDefault(),e.stopPropagation()}function X(e,t){if(void 0===e||!0===t&&!0===e.__dragPrevented)return;let n=!0===t?e=>{e.__dragPrevented=!0,e.addEventListener("dragstart",Z,H.notPassiveCapture)}:e=>{delete e.__dragPrevented,e.removeEventListener("dragstart",Z,H.notPassiveCapture)};e.querySelectorAll("a, img").forEach(n)}function ee(e,t,n){let a=`__q_${t}_evt`;e[a]=void 0!==e[a]?e[a].concat(n):n,n.forEach((t=>{t[0].addEventListener(t[1],e[t[2]],H[t[3]])}))}function te(e,t){let n=`__q_${t}_evt`;void 0!==e[n]&&(e[n].forEach((t=>{t[0].removeEventListener(t[1],e[t[2]],H[t[3]])})),e[n]=void 0)}var ne={listenOpts:H,leftClick:G,middleClick:function(e){return 1===e.button},rightClick:function(e){return 2===e.button},position:Y,getEventPath:K,getMouseWheelDistance:function(e){let t=e.deltaX,n=e.deltaY;if((t||n)&&e.deltaMode){let a=1===e.deltaMode?40:800;t*=a,n*=a}return e.shiftKey&&!t&&([n,t]=[t,n]),{x:t,y:n}},stop:Q,prevent:Z,stopAndPrevent:J,preventDraggable:X};function ae(e,t=250,n){let a=null;function i(){let i=arguments;null!==a?clearTimeout(a):!0===n&&e.apply(this,i),a=setTimeout((()=>{a=null,!0!==n&&e.apply(this,i)}),t)}return i.cancel=()=>{null!==a&&clearTimeout(a)},i}var ie=["sm","md","lg","xl"],{passive:re}=H,oe=U({width:0,height:0,name:"xs",sizes:{sm:600,md:1024,lg:1440,xl:1920},lt:{sm:!0,md:!0,lg:!0,xl:!0},gt:{xs:!1,sm:!1,md:!1,lg:!1},xs:!0,sm:!1,md:!1,lg:!1,xl:!1},{setSizes:W,setDebounce:W,install({$q:e,onSSRHydrated:t}){if(e.screen=this,!0===this.__installed)return void(void 0!==e.config.screen&&(!1===e.config.screen.bodyClasses?document.body.classList.remove(`screen--${this.name}`):this.__update(!0)));let{visualViewport:n}=window,a=n||window,i=document.scrollingElement||document.documentElement,r=void 0===n||!0===j.is.mobile?()=>[Math.max(window.innerWidth,i.clientWidth),Math.max(window.innerHeight,i.clientHeight)]:()=>[n.width*n.scale+window.innerWidth-i.clientWidth,n.height*n.scale+window.innerHeight-i.clientHeight],o=void 0!==e.config.screen&&!0===e.config.screen.bodyClasses;this.__update=e=>{let[t,n]=r();if(n!==this.height&&(this.height=n),t!==this.width)this.width=t;else if(!0!==e)return;let a=this.sizes;this.gt.xs=t>=a.sm,this.gt.sm=t>=a.md,this.gt.md=t>=a.lg,this.gt.lg=t>=a.xl,this.lt.sm=t{ie.forEach((t=>{void 0!==e[t]&&(l[t]=e[t])}))},this.setDebounce=e=>{u=e};let c=()=>{let e=getComputedStyle(document.body);e.getPropertyValue("--q-size-sm")&&ie.forEach((t=>{this.sizes[t]=parseInt(e.getPropertyValue(`--q-size-${t}`),10)})),this.setSizes=e=>{ie.forEach((t=>{e[t]&&(this.sizes[t]=e[t])})),this.__update(!0)},this.setDebounce=e=>{void 0!==s&&a.removeEventListener("resize",s,re),s=e>0?ae(this.__update,e):this.__update,a.addEventListener("resize",s,re)},this.setDebounce(u),0!==Object.keys(l).length?(this.setSizes(l),l=void 0):this.__update(),!0===o&&"xs"===this.name&&document.body.classList.add("screen--xs")};!0===O.value?t.push(c):c()}}),se=U({isActive:!1,mode:!1},{__media:void 0,set(e){se.mode=e,"auto"===e?(void 0===se.__media&&(se.__media=window.matchMedia("(prefers-color-scheme: dark)"),se.__updateMedia=()=>{se.set("auto")},se.__media.addListener(se.__updateMedia)),e=se.__media.matches):void 0!==se.__media&&(se.__media.removeListener(se.__updateMedia),se.__media=void 0),se.isActive=!0===e,document.body.classList.remove("body--"+(!0===e?"light":"dark")),document.body.classList.add("body--"+(!0===e?"dark":"light"))},toggle(){se.set(!1===se.isActive)},install({$q:e,ssrContext:t}){let{dark:n}=e.config;e.dark=this,!0!==this.__installed&&this.set(void 0!==n&&n)}}),le=se;function ue(e,t,n=document.body){if("string"!=typeof e)throw new TypeError("Expected a string as propName");if("string"!=typeof t)throw new TypeError("Expected a string as value");if(!(n instanceof Element))throw new TypeError("Expected a DOM element");n.style.setProperty(`--q-${e}`,t)}var ce=!1;function de(e){ce=!0===e.isComposing}function he(e){return!0===ce||e!==Object(e)||!0===e.isComposing||!0===e.qKeyEvent}function pe(e,t){return!0!==he(e)&&[].concat(t).includes(e.keyCode)}function fe(e){return!0===e.ios?"ios":!0===e.android?"android":void 0}var me={install(e){if(!0!==this.__installed){if(!0===O.value)!function(){let{is:e}=j,t=document.body.className,n=new Set(t.replace(/ {2}/g," ").split(" "));if(!0!==e.nativeMobile&&!0!==e.electron&&!0!==e.bex)if(!0===e.desktop)n.delete("mobile"),n.delete("platform-ios"),n.delete("platform-android"),n.add("desktop");else if(!0===e.mobile){n.delete("desktop"),n.add("mobile"),n.delete("platform-ios"),n.delete("platform-android");let t=fe(e);void 0!==t&&n.add(`platform-${t}`)}!0===j.has.touch&&(n.delete("no-touch"),n.add("touch")),!0===j.within.iframe&&n.add("within-iframe");let a=Array.from(n).join(" ");t!==a&&(document.body.className=a)}();else{let{$q:t}=e;void 0!==t.config.brand&&function(e){for(let t in e)ue(t,e[t])}(t.config.brand);let n=function({is:e,has:t,within:n},a){let i=[!0===e.desktop?"desktop":"mobile",(!1===t.touch?"no-":"")+"touch"];if(!0===e.mobile){let t=fe(e);void 0!==t&&i.push("platform-"+t)}if(!0===e.nativeMobile){let t=e.nativeMobileWrapper;i.push(t),i.push("native-mobile"),!0===e.ios&&(void 0===a[t]||!1!==a[t].iosStatusBarPadding)&&i.push("q-ios-padding")}else!0===e.electron?i.push("electron"):!0===e.bex&&i.push("bex");return!0===n.iframe&&i.push("within-iframe"),i}(j,t.config);document.body.classList.add.apply(document.body.classList,n)}!0===j.is.ios&&document.body.addEventListener("touchstart",W),window.addEventListener("keydown",de,!0)}}},ge=()=>!0;function _e(e){return"string"==typeof e&&""!==e&&"/"!==e&&"#/"!==e}function ve(e){return!0===e.startsWith("#")&&(e=e.substring(1)),!1===e.startsWith("/")&&(e="/"+e),!0===e.endsWith("/")&&(e=e.substring(0,e.length-1)),"#"+e}var be={__history:[],add:W,remove:W,install({$q:e}){if(!0===this.__installed)return;let{cordova:t,capacitor:n}=j.is;if(!0!==t&&!0!==n)return;let a=e.config[!0===t?"cordova":"capacitor"];if(void 0!==a&&!1===a.backButton||!0===n&&(void 0===window.Capacitor||void 0===window.Capacitor.Plugins.App))return;this.add=e=>{void 0===e.condition&&(e.condition=ge),this.__history.push(e)},this.remove=e=>{let t=this.__history.indexOf(e);t>=0&&this.__history.splice(t,1)};let i=function(e){if(!1===e.backButtonExit)return()=>!1;if("*"===e.backButtonExit)return ge;let t=["#/"];return!0===Array.isArray(e.backButtonExit)&&t.push(...e.backButtonExit.filter(_e).map(ve)),()=>t.includes(window.location.hash)}(Object.assign({backButtonExit:!0},a)),r=()=>{if(this.__history.length){let e=this.__history[this.__history.length-1];!0===e.condition()&&(this.__history.pop(),e.handler())}else!0===i()?navigator.app.exitApp():window.history.back()};!0===t?document.addEventListener("deviceready",(()=>{document.addEventListener("backbutton",r,!1)})):window.Capacitor.Plugins.App.addListener("backButton",r)}},ye={isoName:"en-US",nativeName:"English (US)",label:{clear:"Clear",ok:"OK",cancel:"Cancel",close:"Close",set:"Set",select:"Select",reset:"Reset",remove:"Remove",update:"Update",create:"Create",search:"Search",filter:"Filter",refresh:"Refresh",expand:e=>e?`Expand "${e}"`:"Expand",collapse:e=>e?`Collapse "${e}"`:"Collapse"},date:{days:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),daysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),firstDayOfWeek:0,format24h:!1,pluralDay:"days"},table:{noData:"No data available",noResults:"No matching records found",loading:"Loading...",selectedRecords:e=>1===e?"1 record selected.":(0===e?"No":e)+" records selected.",recordsPerPage:"Records per page:",allRows:"All",pagination:(e,t,n)=>e+"-"+t+" of "+n,columns:"Columns"},editor:{url:"URL",bold:"Bold",italic:"Italic",strikethrough:"Strikethrough",underline:"Underline",unorderedList:"Unordered List",orderedList:"Ordered List",subscript:"Subscript",superscript:"Superscript",hyperlink:"Hyperlink",toggleFullscreen:"Toggle Fullscreen",quote:"Quote",left:"Left align",center:"Center align",right:"Right align",justify:"Justify align",print:"Print",outdent:"Decrease indentation",indent:"Increase indentation",removeFormat:"Remove formatting",formatting:"Formatting",fontSize:"Font Size",align:"Align",hr:"Insert Horizontal Rule",undo:"Undo",redo:"Redo",heading1:"Heading 1",heading2:"Heading 2",heading3:"Heading 3",heading4:"Heading 4",heading5:"Heading 5",heading6:"Heading 6",paragraph:"Paragraph",code:"Code",size1:"Very small",size2:"A bit small",size3:"Normal",size4:"Medium-large",size5:"Big",size6:"Very big",size7:"Maximum",defaultFont:"Default Font",viewSource:"View Source"},tree:{noNodes:"No nodes available",noResults:"No matching nodes found"}};function we(){let e=!0===Array.isArray(navigator.languages)&&0!==navigator.languages.length?navigator.languages[0]:navigator.language;if("string"==typeof e)return e.split(/[-_]/).map(((e,t)=>0===t?e.toLowerCase():t>1||e.length<4?e.toUpperCase():e[0].toUpperCase()+e.slice(1).toLowerCase())).join("-")}var ke=U({__qLang:{}},{getLocale:we,set(e=ye,t){let n={...e,rtl:!0===e.rtl,getLocale:we};if(n.set=ke.set,void 0===ke.__langConfig||!0!==ke.__langConfig.noHtmlAttrs){let e=document.documentElement;e.setAttribute("dir",!0===n.rtl?"rtl":"ltr"),e.setAttribute("lang",n.isoName)}Object.assign(ke.__qLang,n)},install({$q:e,lang:t,ssrContext:n}){e.lang=ke.__qLang,ke.__langConfig=e.config.lang,!0===this.__installed?void 0!==t&&this.set(t):(this.props=new Proxy(this.__qLang,{get(){return Reflect.get(...arguments)},ownKeys:e=>Reflect.ownKeys(e).filter((e=>"set"!==e&&"getLocale"!==e))}),this.set(t||ye))}}),xe=ke,Se={name:"material-icons",type:{positive:"check_circle",negative:"warning",info:"info",warning:"priority_high"},arrow:{up:"arrow_upward",right:"arrow_forward",down:"arrow_downward",left:"arrow_back",dropdown:"arrow_drop_down"},chevron:{left:"chevron_left",right:"chevron_right"},colorPicker:{spectrum:"gradient",tune:"tune",palette:"style"},pullToRefresh:{icon:"refresh"},carousel:{left:"chevron_left",right:"chevron_right",up:"keyboard_arrow_up",down:"keyboard_arrow_down",navigationIcon:"lens"},chip:{remove:"cancel",selected:"check"},datetime:{arrowLeft:"chevron_left",arrowRight:"chevron_right",now:"access_time",today:"today"},editor:{bold:"format_bold",italic:"format_italic",strikethrough:"strikethrough_s",underline:"format_underlined",unorderedList:"format_list_bulleted",orderedList:"format_list_numbered",subscript:"vertical_align_bottom",superscript:"vertical_align_top",hyperlink:"link",toggleFullscreen:"fullscreen",quote:"format_quote",left:"format_align_left",center:"format_align_center",right:"format_align_right",justify:"format_align_justify",print:"print",outdent:"format_indent_decrease",indent:"format_indent_increase",removeFormat:"format_clear",formatting:"text_format",fontSize:"format_size",align:"format_align_left",hr:"remove",undo:"undo",redo:"redo",heading:"format_size",code:"code",size:"format_size",font:"font_download",viewSource:"code"},expansionItem:{icon:"keyboard_arrow_down",denseIcon:"arrow_drop_down"},fab:{icon:"add",activeIcon:"close"},field:{clear:"cancel",error:"error"},pagination:{first:"first_page",prev:"keyboard_arrow_left",next:"keyboard_arrow_right",last:"last_page"},rating:{icon:"grade"},stepper:{done:"check",active:"edit",error:"warning"},tabs:{left:"chevron_left",right:"chevron_right",up:"keyboard_arrow_up",down:"keyboard_arrow_down"},table:{arrowUp:"arrow_upward",warning:"warning",firstPage:"first_page",prevPage:"chevron_left",nextPage:"chevron_right",lastPage:"last_page"},tree:{icon:"play_arrow"},uploader:{done:"done",clear:"clear",add:"add_box",upload:"cloud_upload",removeQueue:"clear_all",removeUploaded:"done_all"}},Ce=U({iconMapFn:null,__qIconSet:{}},{set(e,t){let n={...e};n.set=Ce.set,Object.assign(Ce.__qIconSet,n)},install({$q:e,iconSet:t,ssrContext:n}){void 0!==e.config.iconMapFn&&(this.iconMapFn=e.config.iconMapFn),e.iconSet=this.__qIconSet,z(e,"iconMapFn",(()=>this.iconMapFn),(e=>{this.iconMapFn=e})),!0===this.__installed?void 0!==t&&this.set(t):(this.props=new Proxy(this.__qIconSet,{get(){return Reflect.get(...arguments)},ownKeys:e=>Reflect.ownKeys(e).filter((e=>"set"!==e))}),this.set(t||Se))}}),Te=Ce,Ee="_q_t_",Pe="_q_s_",Ae="_q_l_",Le="_q_pc_",Me="_q_f_",Re="_q_fo_",ze="_q_tabs_",Ne="_q_u_";function Ie(){}var Oe={},De=!1;function qe(e,t){if(e===t)return!0;if(null!==e&&null!==t&&"object"==typeof e&&"object"==typeof t){if(e.constructor!==t.constructor)return!1;let n,a;if(e.constructor===Array){if(n=e.length,n!==t.length)return!1;for(a=n;0!=a--;)if(!0!==qe(e[a],t[a]))return!1;return!0}if(e.constructor===Map){if(e.size!==t.size)return!1;let n=e.entries();for(a=n.next();!0!==a.done;){if(!0!==t.has(a.value[0]))return!1;a=n.next()}for(n=e.entries(),a=n.next();!0!==a.done;){if(!0!==qe(a.value[1],t.get(a.value[0])))return!1;a=n.next()}return!0}if(e.constructor===Set){if(e.size!==t.size)return!1;let n=e.entries();for(a=n.next();!0!==a.done;){if(!0!==t.has(a.value[0]))return!1;a=n.next()}return!0}if(null!=e.buffer&&e.buffer.constructor===ArrayBuffer){if(n=e.length,n!==t.length)return!1;for(a=n;0!=a--;)if(e[a]!==t[a])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();let i=Object.keys(e).filter((t=>void 0!==e[t]));if(n=i.length,n!==Object.keys(t).filter((e=>void 0!==t[e])).length)return!1;for(a=n;0!=a--;){let n=i[a];if(!0!==qe(e[n],t[n]))return!1}return!0}return e!=e&&t!=t}function je(e){return null!==e&&"object"==typeof e&&!0!==Array.isArray(e)}function Be(e){return"[object Date]"===Object.prototype.toString.call(e)}function Fe(e){return"[object RegExp]"===Object.prototype.toString.call(e)}function $e(e){return"number"==typeof e&&isFinite(e)}var Ve={deepEqual:qe,object:je,date:Be,regexp:Fe,number:$e},Ue=[F,me,le,oe,be,xe,Te];function He(e,t){let n=R(e);n.config.globalProperties=t.config.globalProperties;let{reload:a,...i}=t._context;return Object.assign(n._context,i),n}function We(e,t){t.forEach((t=>{t.install(e),t.__installed=!0}))}var Ge=function(e,t={}){let n={version:"2.17.0"};!1===De?(void 0!==t.config&&Object.assign(Oe,t.config),n.config={...Oe},De=!0):n.config=t.config||{},function(e,t,n){e.config.globalProperties.$q=n.$q,e.provide("_q_",n.$q),We(n,Ue),void 0!==t.components&&Object.values(t.components).forEach((t=>{!0===je(t)&&void 0!==t.name&&e.component(t.name,t)})),void 0!==t.directives&&Object.values(t.directives).forEach((t=>{!0===je(t)&&void 0!==t.name&&e.directive(t.name,t)})),void 0!==t.plugins&&We(n,Object.values(t.plugins).filter((e=>"function"==typeof e.install&&!1===Ue.includes(e)))),!0===O.value&&(n.$q.onSSRHydrated=()=>{n.onSSRHydrated.forEach((e=>{e()})),n.$q.onSSRHydrated=()=>{}})}(e,t,{parentApp:e,$q:n,lang:t.lang,iconSet:t.iconSet,onSSRHydrated:[]})},Ye={};t(Ye,{QAjaxBar:()=>st,QAvatar:()=>Mt,QBadge:()=>zt,QBanner:()=>Ot,QBar:()=>Dt,QBreadcrumbs:()=>Yt,QBreadcrumbsEl:()=>nn,QBtn:()=>An,QBtnDropdown:()=>ai,QBtnGroup:()=>Ln,QBtnToggle:()=>li,QCard:()=>ui,QCardActions:()=>di,QCardSection:()=>ci,QCarousel:()=>Mi,QCarouselControl:()=>zi,QCarouselSlide:()=>Ri,QChatMessage:()=>Ni,QCheckbox:()=>Bi,QChip:()=>$i,QCircularProgress:()=>Wi,QColor:()=>qr,QDate:()=>Mo,QDialog:()=>Zo,QDrawer:()=>Jo,QEditor:()=>vs,QExpansionItem:()=>Ts,QFab:()=>Rs,QFabAction:()=>Is,QField:()=>Hs,QFile:()=>Js,QFooter:()=>Xs,QForm:()=>el,QFormChildMixin:()=>tl,QHeader:()=>nl,QIcon:()=>Lt,QImg:()=>rl,QInfiniteScroll:()=>sl,QInnerLoading:()=>ll,QInput:()=>vl,QIntersection:()=>xl,QItem:()=>rs,QItemLabel:()=>bs,QItemSection:()=>os,QKnob:()=>Pl,QLayout:()=>Rl,QLinearProgress:()=>iu,QList:()=>Cl,QMarkupTable:()=>Nl,QMenu:()=>Ya,QNoSsr:()=>Il,QOptionGroup:()=>Fl,QPage:()=>$l,QPageContainer:()=>Vl,QPageScroller:()=>Wl,QPageSticky:()=>Gl,QPagination:()=>Kl,QParallax:()=>Jl,QPopupEdit:()=>eu,QPopupProxy:()=>tu,QPullToRefresh:()=>ou,QRadio:()=>Ol,QRange:()=>cu,QRating:()=>du,QResizeObserver:()=>lr,QResponsive:()=>hu,QRouteTab:()=>Oc,QScrollArea:()=>vu,QScrollObserver:()=>Ml,QSelect:()=>Nu,QSeparator:()=>xs,QSkeleton:()=>Du,QSlideItem:()=>ju,QSlideTransition:()=>ys,QSlider:()=>ir,QSpace:()=>Bu,QSpinner:()=>on,QSpinnerAudio:()=>Fu,QSpinnerBall:()=>$u,QSpinnerBars:()=>Vu,QSpinnerBox:()=>Uu,QSpinnerClock:()=>Hu,QSpinnerComment:()=>Wu,QSpinnerCube:()=>Gu,QSpinnerDots:()=>Yu,QSpinnerFacebook:()=>Ku,QSpinnerGears:()=>Qu,QSpinnerGrid:()=>Zu,QSpinnerHearts:()=>Ju,QSpinnerHourglass:()=>Xu,QSpinnerInfinity:()=>ec,QSpinnerIos:()=>tc,QSpinnerOrbit:()=>nc,QSpinnerOval:()=>ac,QSpinnerPie:()=>ic,QSpinnerPuff:()=>rc,QSpinnerRadio:()=>oc,QSpinnerRings:()=>sc,QSpinnerTail:()=>lc,QSplitter:()=>uc,QStep:()=>pc,QStepper:()=>mc,QStepperNavigation:()=>gc,QTab:()=>_r,QTabPanel:()=>br,QTabPanels:()=>vr,QTable:()=>zc,QTabs:()=>hr,QTd:()=>Ic,QTh:()=>_c,QTime:()=>qc,QTimeline:()=>jc,QTimelineEntry:()=>Bc,QToggle:()=>Dl,QToolbar:()=>Fc,QToolbarTitle:()=>$c,QTooltip:()=>is,QTr:()=>Nc,QTree:()=>Uc,QUploader:()=>td,QUploaderAddTrigger:()=>nd,QVideo:()=>ad,QVirtualScroll:()=>wc});var Ke=["B","KB","MB","GB","TB","PB"];function Qe(e,t=1){let n=0;for(;parseInt(e,10)>=1024&&n=t?a:new Array(t-a.length+1).join(n)+a}var tt={humanStorageSize:Qe,capitalize:Ze,between:Je,normalizeToInterval:Xe,pad:et},nt=XMLHttpRequest,at=nt.prototype.open,it=["top","right","bottom","left"],rt=[],ot=0;var st=$({name:"QAjaxBar",props:{position:{type:String,default:"top",validator:e=>it.includes(e)},size:{type:String,default:"2px"},color:String,skipHijack:Boolean,reverse:Boolean,hijackFilter:Function},emits:["start","stop"],setup(e,{emit:t}){let r,o,{proxy:s}=k(),l=a(0),u=a(!1),c=a(!0),d=0,h=null,p=i((()=>`q-loading-bar q-loading-bar--${e.position}`+(void 0!==e.color?` bg-${e.color}`:"")+(!0===c.value?"":" no-transition"))),f=i((()=>"top"===e.position||"bottom"===e.position)),_=i((()=>!0===f.value?"height":"width")),v=i((()=>{let t=u.value,n=function({p:e,pos:t,active:n,horiz:a,reverse:i,dir:r}){let o=1,s=1;return!0===a?(!0===i&&(o=-1),"bottom"===t&&(s=-1),{transform:`translate3d(${o*(e-100)}%,${n?0:-200*s}%,0)`}):(!0===i&&(s=-1),"right"===t&&(o=-1),{transform:`translate3d(${n?0:r*o*-200}%,${s*(e-100)}%,0)`})}({p:l.value,pos:e.position,active:t,horiz:f.value,reverse:!0===s.$q.lang.rtl&&["top","bottom"].includes(e.position)?!1===e.reverse:e.reverse,dir:!0===s.$q.lang.rtl?-1:1});return n[_.value]=e.size,n.opacity=t?1:0,n})),b=i((()=>!0===u.value?{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":l.value}:{"aria-hidden":"true"}));function y(e=300){let n=r;return r=Math.max(0,e)||0,d++,d>1?(0===n&&e>0?S():null!==h&&n>0&&e<=0&&(clearTimeout(h),h=null),d):(null!==h&&clearTimeout(h),t("start"),l.value=0,h=setTimeout((()=>{h=null,c.value=!0,e>0&&S()}),!0===u._value?500:1),!0!==u._value&&(u.value=!0,c.value=!1),d)}function w(e){return d>0&&(l.value=function(e,t){return"number"!=typeof t&&(t=e<25?3*Math.random()+3:e<65?3*Math.random():e<85?2*Math.random():e<99?.6:0),Je(e+t,0,100)}(l.value,e)),d}function x(){if(d=Math.max(0,d-1),d>0)return d;null!==h&&(clearTimeout(h),h=null),t("stop");let e=()=>{c.value=!0,l.value=100,h=setTimeout((()=>{h=null,u.value=!1}),1e3)};return 0===l.value?h=setTimeout(e,1):e(),d}function S(){l.value<100&&(h=setTimeout((()=>{h=null,w(),S()}),r))}return m((()=>{!0!==e.skipHijack&&(o=!0,function(e){ot++,rt.push(e),!(ot>1)&&(nt.prototype.open=function(e,t){let n=[];this.addEventListener("loadstart",(()=>{rt.forEach((e=>{(null===e.hijackFilter.value||!0===e.hijackFilter.value(t))&&(e.start(),n.push(e.stop))}))}),{once:!0}),this.addEventListener("loadend",(()=>{n.forEach((e=>{e()}))}),{once:!0}),at.apply(this,arguments)})}({start:y,stop:x,hijackFilter:i((()=>e.hijackFilter||null))}))})),g((()=>{null!==h&&clearTimeout(h),!0===o&&function(e){rt=rt.filter((t=>t.start!==e)),0===(ot=Math.max(0,ot-1))&&(nt.prototype.open=at)}(y)})),Object.assign(s,{start:y,stop:x,increment:w}),()=>n("div",{class:p.value,style:v.value,...b.value})}}),lt={xs:18,sm:24,md:32,lg:38,xl:46},ut={size:String};function ct(e,t=lt){return i((()=>void 0!==e.size?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null))}function dt(e,t){return void 0!==e&&e()||t}function ht(e,t){if(void 0!==e){let t=e();if(null!=t)return t.slice()}return t}function pt(e,t){return void 0!==e?t.concat(e()):t}function ft(e,t){return void 0===e?t:void 0!==t?t.concat(e()):e()}function mt(e,t,a,i,r,o){t.key=i+r;let s=n(e,t,a);return!0===r?A(s,o()):s}var gt="0 0 24 24",_t=e=>e,vt=e=>`ionicons ${e}`,bt={"mdi-":e=>`mdi ${e}`,"icon-":_t,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":vt,"ion-ios":vt,"ion-logo":vt,"iconfont ":_t,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`},yt={o_:"-outlined",r_:"-round",s_:"-sharp"},wt={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},kt=new RegExp("^("+Object.keys(bt).join("|")+")"),xt=new RegExp("^("+Object.keys(yt).join("|")+")"),St=new RegExp("^("+Object.keys(wt).join("|")+")"),Ct=/^[Mm]\s?[-+]?\.?\d/,Tt=/^img:/,Et=/^svguse:/,Pt=/^ion-/,At=/^(fa-(classic|sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /,Lt=$({name:"QIcon",props:{...ut,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=ct(e),o=i((()=>"q-icon"+(!0===e.left?" on-left":"")+(!0===e.right?" on-right":"")+(void 0!==e.color?` text-${e.color}`:""))),s=i((()=>{let t,i=e.name;if("none"===i||!i)return{none:!0};if(null!==a.iconMapFn){let e=a.iconMapFn(i);if(void 0!==e){if(void 0===e.icon)return{cls:e.cls,content:void 0!==e.content?e.content:" "};if(i=e.icon,"none"===i||!i)return{none:!0}}}if(!0===Ct.test(i)){let[e,t=gt]=i.split("|");return{svg:!0,viewBox:t,nodes:e.split("&&").map((e=>{let[t,a,i]=e.split("@@");return n("path",{style:a,d:t,transform:i})}))}}if(!0===Tt.test(i))return{img:!0,src:i.substring(4)};if(!0===Et.test(i)){let[e,t=gt]=i.split("|");return{svguse:!0,src:e.substring(7),viewBox:t}}let r=" ",o=i.match(kt);if(null!==o)t=bt[o[1]](i);else if(!0===At.test(i))t=i;else if(!0===Pt.test(i))t=`ionicons ion-${!0===a.platform.is.ios?"ios":"md"}${i.substring(3)}`;else if(!0===St.test(i)){t="notranslate material-symbols";let e=i.match(St);null!==e&&(i=i.substring(6),t+=wt[e[1]]),r=i}else{t="notranslate material-icons";let e=i.match(xt);null!==e&&(i=i.substring(2),t+=yt[e[1]]),r=i}return{cls:t,content:r}}));return()=>{let a={class:o.value,style:r.value,"aria-hidden":"true",role:"presentation"};return!0===s.value.none?n(e.tag,a,dt(t.default)):!0===s.value.img?n(e.tag,a,pt(t.default,[n("img",{src:s.value.src})])):!0===s.value.svg?n(e.tag,a,pt(t.default,[n("svg",{viewBox:s.value.viewBox||"0 0 24 24"},s.value.nodes)])):!0===s.value.svguse?n(e.tag,a,pt(t.default,[n("svg",{viewBox:s.value.viewBox},[n("use",{"xlink:href":s.value.src})])])):(void 0!==s.value.cls&&(a.class+=" "+s.value.cls),n(e.tag,a,pt(t.default,[s.value.content])))}}}),Mt=$({name:"QAvatar",props:{...ut,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){let a=ct(e),r=i((()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(!0===e.square?" q-avatar--square":!0===e.rounded?" rounded-borders":""))),o=i((()=>e.fontSize?{fontSize:e.fontSize}:null));return()=>{let i=void 0!==e.icon?[n(Lt,{name:e.icon})]:void 0;return n("div",{class:r.value,style:a.value},[n("div",{class:"q-avatar__content row flex-center overflow-hidden",style:o.value},ft(t.default,i))])}}}),Rt=["top","middle","bottom"],zt=$({name:"QBadge",props:{color:String,textColor:String,floating:Boolean,transparent:Boolean,multiLine:Boolean,outline:Boolean,rounded:Boolean,label:[Number,String],align:{type:String,validator:e=>Rt.includes(e)}},setup(e,{slots:t}){let a=i((()=>void 0!==e.align?{verticalAlign:e.align}:null)),r=i((()=>{let t=!0===e.outline&&e.color||e.textColor;return`q-badge flex inline items-center no-wrap q-badge--${!0===e.multiLine?"multi":"single"}-line`+(!0===e.outline?" q-badge--outline":void 0!==e.color?` bg-${e.color}`:"")+(void 0!==t?` text-${t}`:"")+(!0===e.floating?" q-badge--floating":"")+(!0===e.rounded?" q-badge--rounded":"")+(!0===e.transparent?" q-badge--transparent":"")}));return()=>n("div",{class:r.value,style:a.value,role:"status","aria-label":e.label},pt(t.default,void 0!==e.label?[e.label]:[]))}}),Nt={dark:{type:Boolean,default:null}};function It(e,t){return i((()=>null===e.dark?t.dark.isActive:e.dark))}var Ot=$({name:"QBanner",props:{...Nt,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=It(e,a),o=i((()=>"q-banner row items-center"+(!0===e.dense?" q-banner--dense":"")+(!0===r.value?" q-banner--dark q-dark":"")+(!0===e.rounded?" rounded-borders":""))),s=i((()=>"q-banner__actions row items-center justify-end col-"+(!0===e.inlineActions?"auto":"all")));return()=>{let a=[n("div",{class:"q-banner__avatar col-auto row items-center self-start"},dt(t.avatar)),n("div",{class:"q-banner__content col text-body2"},dt(t.default))],i=dt(t.action);return void 0!==i&&a.push(n("div",{class:s.value},i)),n("div",{class:o.value+(!1===e.inlineActions&&void 0!==i?" q-banner--top-padding":""),role:"alert"},a)}}}),Dt=$({name:"QBar",props:{...Nt,dense:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=It(e,a),o=i((()=>`q-bar row no-wrap items-center q-bar--${!0===e.dense?"dense":"standard"} q-bar--${!0===r.value?"dark":"light"}`));return()=>n("div",{class:o.value,role:"toolbar"},dt(t.default))}}),qt={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},jt=Object.keys(qt),Bt={align:{type:String,validator:e=>jt.includes(e)}};function Ft(e){return i((()=>{let t=void 0===e.align?!0===e.vertical?"stretch":"left":e.align;return`${!0===e.vertical?"items":"justify"}-${qt[t]}`}))}function $t(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Vt(e,t){"symbol"==typeof t.type?!0===Array.isArray(t.children)&&t.children.forEach((t=>{Vt(e,t)})):e.add(t)}function Ut(e){let t=new Set;return e.forEach((e=>{Vt(t,e)})),Array.from(t)}function Ht(e){return void 0!==e.appContext.config.globalProperties.$router}function Wt(e){return!0===e.isUnmounted||!0===e.isDeactivated}var Gt=["",!0],Yt=$({name:"QBreadcrumbs",props:{...Bt,separator:{type:String,default:"/"},separatorColor:String,activeColor:{type:String,default:"primary"},gutter:{type:String,validator:e=>["none","xs","sm","md","lg","xl"].includes(e),default:"sm"}},setup(e,{slots:t}){let a=Ft(e),r=i((()=>`flex items-center ${a.value}${"none"===e.gutter?"":` q-gutter-${e.gutter}`}`)),o=i((()=>e.separatorColor?` text-${e.separatorColor}`:"")),s=i((()=>` text-${e.activeColor}`));return()=>{if(void 0===t.default)return;let a=Ut(dt(t.default));if(0===a.length)return;let i=1,l=[],u=a.filter((e=>void 0!==e.type&&"QBreadcrumbsEl"===e.type.name)).length,c=void 0!==t.separator?t.separator:()=>e.separator;return a.forEach((e=>{if(void 0!==e.type&&"QBreadcrumbsEl"===e.type.name){let t=ie===t[n])):1===e.length&&e[0]===t}function Jt(e,t){return!0===Array.isArray(e)?Zt(e,t):!0===Array.isArray(t)?Zt(t,e):e===t}var Xt={to:[String,Object],replace:Boolean,href:String,target:String,disable:Boolean},en={...Xt,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"}};function tn({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){let n=k(),{props:a,proxy:r,emit:o}=n,s=Ht(n),l=i((()=>!0!==a.disable&&void 0!==a.href)),u=i(!0===t?()=>!0===s&&!0!==a.disable&&!0!==l.value&&void 0!==a.to&&null!==a.to&&""!==a.to:()=>!0===s&&!0!==l.value&&void 0!==a.to&&null!==a.to&&""!==a.to),c=i((()=>!0===u.value?b(a.to):null)),d=i((()=>null!==c.value)),h=i((()=>!0===l.value||!0===d.value)),p=i((()=>"a"===a.type||!0===h.value?"a":a.tag||e||"div")),f=i((()=>!0===l.value?{href:a.href,target:a.target}:!0===d.value?{href:c.value.href,target:a.target}:{})),m=i((()=>{if(!1===d.value)return-1;let{matched:e}=c.value,{length:t}=e,n=e[t-1];if(void 0===n)return-1;let a=r.$route.matched;if(0===a.length)return-1;let i=a.findIndex(Qt.bind(null,n));if(-1!==i)return i;let o=Kt(e[t-2]);return t>1&&Kt(n)===o&&a[a.length-1].path!==o?a.findIndex(Qt.bind(null,e[t-2])):i})),g=i((()=>!0===d.value&&-1!==m.value&&function(e,t){for(let n in t){let a=t[n],i=e[n];if("string"==typeof a){if(a!==i)return!1}else if(!1===Array.isArray(i)||i.length!==a.length||a.some(((e,t)=>e!==i[t])))return!1}return!0}(r.$route.params,c.value.params))),_=i((()=>!0===g.value&&m.value===r.$route.matched.length-1&&function(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(!1===Jt(e[n],t[n]))return!1;return!0}(r.$route.params,c.value.params))),v=i((()=>!0===d.value?!0===_.value?` ${a.exactActiveClass} ${a.activeClass}`:!0===a.exact?"":!0===g.value?` ${a.activeClass}`:"":""));function b(e){try{return r.$router.resolve(e)}catch{}return null}function y(e,{returnRouterError:t,to:n=a.to,replace:i=a.replace}={}){if(!0===a.disable)return e.preventDefault(),Promise.resolve(!1);if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey||void 0!==e.button&&0!==e.button||"_blank"===a.target)return Promise.resolve(!1);e.preventDefault();let o=r.$router[!0===i?"replace":"push"](n);return!0===t?o:o.then((()=>{})).catch((()=>{}))}return{hasRouterLink:d,hasHrefLink:l,hasLink:h,linkTag:p,resolvedLink:c,linkIsActive:g,linkIsExactActive:_,linkClass:v,linkAttrs:f,getLink:b,navigateToRouterLink:y,navigateOnClick:function(e){if(!0===d.value){let t=t=>y(e,t);o("click",e,t),!0!==e.defaultPrevented&&t()}else o("click",e)}}}var nn=$({name:"QBreadcrumbsEl",props:{...en,label:String,icon:String,tag:{type:String,default:"span"}},emits:["click"],setup(e,{slots:t}){let{linkTag:a,linkAttrs:r,linkClass:o,navigateOnClick:s}=tn(),l=i((()=>({class:"q-breadcrumbs__el q-link flex inline items-center relative-position "+(!0!==e.disable?"q-link--focusable"+o.value:"q-breadcrumbs__el--disable"),...r.value,onClick:s}))),u=i((()=>"q-breadcrumbs__el-icon"+(void 0!==e.label?" q-breadcrumbs__el-icon--with-label":"")));return()=>{let i=[];return void 0!==e.icon&&i.push(n(Lt,{class:u.value,name:e.icon})),void 0!==e.label&&i.push(e.label),n(a.value,{...l.value},pt(t.default,i))}}}),an={size:{type:[String,Number],default:"1em"},color:String};function rn(e){return{cSize:i((()=>e.size in lt?`${lt[e.size]}px`:e.size)),classes:i((()=>"q-spinner"+(e.color?` text-${e.color}`:"")))}}var on=$({name:"QSpinner",props:{...an,thickness:{type:Number,default:5}},setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[n("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function sn(e){if(e===window)return{top:0,left:0};let{top:t,left:n}=e.getBoundingClientRect();return{top:t,left:n}}function ln(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function un(e,t){let n=e.style;for(let e in t)n[e]=t[e]}function cn(e,t){if(null==e||!0===e.contains(t))return!0;for(let n=e.nextElementSibling;null!==n;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}var dn={offset:sn,style:function(e,t){return window.getComputedStyle(e).getPropertyValue(t)},height:ln,width:function(e){return e===window?window.innerWidth:e.getBoundingClientRect().width},css:un,cssBatch:function(e,t){e.forEach((e=>un(e,t)))},ready:function(e){if("function"==typeof e){if("loading"!==document.readyState)return e();document.addEventListener("DOMContentLoaded",e,!1)}}};function hn(e,t=250){let n,a=!1;return function(){return!1===a&&(a=!0,setTimeout((()=>{a=!1}),t),n=e.apply(this,arguments)),n}}function pn(e,t,n,a){!0===n.modifiers.stop&&Q(e);let i=n.modifiers.color,r=n.modifiers.center;r=!0===r||!0===a;let o=document.createElement("span"),s=document.createElement("span"),l=Y(e),{left:u,top:c,width:d,height:h}=t.getBoundingClientRect(),p=Math.sqrt(d*d+h*h),f=p/2,m=(d-p)/2+"px",g=r?m:l.left-u-f+"px",_=(h-p)/2+"px",v=r?_:l.top-c-f+"px";s.className="q-ripple__inner",un(s,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${g},${v},0) scale3d(.2,.2,1)`,opacity:0}),o.className="q-ripple"+(i?" text-"+i:""),o.setAttribute("dir","ltr"),o.appendChild(s),t.appendChild(o);let b=()=>{o.remove(),clearTimeout(y)};n.abort.push(b);let y=setTimeout((()=>{s.classList.add("q-ripple__inner--enter"),s.style.transform=`translate3d(${m},${_},0) scale3d(1,1,1)`,s.style.opacity=.2,y=setTimeout((()=>{s.classList.remove("q-ripple__inner--enter"),s.classList.add("q-ripple__inner--leave"),s.style.opacity=0,y=setTimeout((()=>{o.remove(),n.abort.splice(n.abort.indexOf(b),1)}),275)}),250)}),50)}function fn(e,{modifiers:t,value:n,arg:a}){let i=Object.assign({},e.cfg.ripple,t,n);e.modifiers={early:!0===i.early,stop:!0===i.stop,center:!0===i.center,color:i.color||a,keyCodes:[].concat(i.keyCodes||13)}}var mn=V({name:"ripple",beforeMount(e,t){let n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(!1===n.ripple)return;let a={cfg:n,enabled:!1!==t.value,modifiers:{},abort:[],start(t){!0===a.enabled&&!0!==t.qSkipRipple&&t.type===(!0===a.modifiers.early?"pointerdown":"click")&&pn(t,e,a,!0===t.qKeyEvent)},keystart:hn((t=>{!0===a.enabled&&!0!==t.qSkipRipple&&!0===pe(t,a.modifiers.keyCodes)&&t.type==="key"+(!0===a.modifiers.early?"down":"up")&&pn(t,e,a,!0)}),300)};fn(a,t),e.__qripple=a,ee(a,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){let n=e.__qripple;void 0!==n&&(n.enabled=!1!==t.value,!0===n.enabled&&Object(t.value)===t.value&&fn(n,t))}},beforeUnmount(e){let t=e.__qripple;void 0!==t&&(t.abort.forEach((e=>{e()})),te(t,"main"),delete e._qripple)}}),gn={none:0,xs:4,sm:8,md:16,lg:24,xl:32},_n={xs:8,sm:10,md:14,lg:20,xl:24},vn=["button","submit","reset"],bn=/[^\s]\/[^\s]/,yn=["flat","outline","push","unelevated"];function wn(e,t){return!0===e.flat?"flat":!0===e.outline?"outline":!0===e.push?"push":!0===e.unelevated?"unelevated":t}function kn(e){let t=wn(e);return void 0!==t?{[t]:!0}:{}}var xn={...ut,...Xt,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...yn.reduce(((e,t)=>(e[t]=Boolean)&&e),{}),square:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Bt.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean},Sn={...xn,round:Boolean};var{passiveCapture:Cn}=H,Tn=null,En=null,Pn=null,An=$({name:"QBtn",props:{...Sn,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:r}){let o,{proxy:s}=k(),{classes:l,style:u,innerClasses:c,attributes:d,hasLink:h,linkTag:p,navigateOnClick:f,isActionable:m}=function(e){let t=ct(e,_n),n=Ft(e),{hasRouterLink:a,hasLink:r,linkTag:o,linkAttrs:s,navigateOnClick:l}=tn({fallbackTag:"button"}),u=i((()=>{let n=!1===e.fab&&!1===e.fabMini?t.value:{};return void 0!==e.padding?Object.assign({},n,{padding:e.padding.split(/\s+/).map((e=>e in gn?gn[e]+"px":e)).join(" "),minWidth:"0",minHeight:"0"}):n})),c=i((()=>!0===e.rounded||!0===e.fab||!0===e.fabMini)),d=i((()=>!0!==e.disable&&!0!==e.loading)),h=i((()=>!0===d.value?e.tabindex||0:-1)),p=i((()=>wn(e,"standard"))),f=i((()=>{let t={tabindex:h.value};return!0===r.value?Object.assign(t,s.value):!0===vn.includes(e.type)&&(t.type=e.type),"a"===o.value?(!0===e.disable?t["aria-disabled"]="true":void 0===t.href&&(t.role="button"),!0!==a.value&&!0===bn.test(e.type)&&(t.type=e.type)):!0===e.disable&&(t.disabled="",t["aria-disabled"]="true"),!0===e.loading&&void 0!==e.percentage&&Object.assign(t,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),t}));return{classes:i((()=>{let t;void 0!==e.color?t=!0===e.flat||!0===e.outline?`text-${e.textColor||e.color}`:`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(t=`text-${e.textColor}`);let n=!0===e.round?"round":"rectangle"+(!0===c.value?" q-btn--rounded":!0===e.square?" q-btn--square":"");return`q-btn--${p.value} q-btn--${n}`+(void 0!==t?" "+t:"")+(!0===d.value?" q-btn--actionable q-focusable q-hoverable":!0===e.disable?" disabled":"")+(!0===e.fab?" q-btn--fab":!0===e.fabMini?" q-btn--fab-mini":"")+(!0===e.noCaps?" q-btn--no-uppercase":"")+(!0===e.dense?" q-btn--dense":"")+(!0===e.stretch?" no-border-radius self-stretch":"")+(!0===e.glossy?" glossy":"")+(e.square?" q-btn--square":"")})),style:u,innerClasses:i((()=>n.value+(!0===e.stack?" column":" row")+(!0===e.noWrap?" no-wrap text-no-wrap":"")+(!0===e.loading?" q-btn__content--hidden":""))),attributes:f,hasLink:r,linkTag:o,navigateOnClick:l,isActionable:d}}(e),_=a(null),v=a(null),b=null,y=null,w=i((()=>void 0!==e.label&&null!==e.label&&""!==e.label)),x=i((()=>!0!==e.disable&&!1!==e.ripple&&{keyCodes:!0===h.value?[13,32]:[13],...!0===e.ripple?{}:e.ripple})),C=i((()=>({center:e.round}))),T=i((()=>{let t=Math.max(0,Math.min(100,e.percentage));return t>0?{transition:"transform 0.6s",transform:`translateX(${t-100}%)`}:{}})),E=i((()=>{if(!0===e.loading)return{onMousedown:O,onTouchstart:O,onClick:O,onKeydown:O,onKeyup:O};if(!0===m.value){let t={onClick:L,onKeydown:M,onMousedown:z};if(!0===s.$q.platform.has.touch){t[`onTouchstart${void 0!==e.onTouchstart?"":"Passive"}`]=R}return t}return{onClick:J}})),P=i((()=>({ref:_,class:"q-btn q-btn-item non-selectable no-outline "+l.value,style:u.value,...d.value,...E.value})));function L(t){if(null!==_.value){if(void 0!==t){if(!0===t.defaultPrevented)return;let n=document.activeElement;if("submit"===e.type&&n!==document.body&&!1===_.value.contains(n)&&!1===n.contains(_.value)){_.value.focus();let e=()=>{document.removeEventListener("keydown",J,!0),document.removeEventListener("keyup",e,Cn),null!==_.value&&_.value.removeEventListener("blur",e,Cn)};document.addEventListener("keydown",J,!0),document.addEventListener("keyup",e,Cn),_.value.addEventListener("blur",e,Cn)}}f(t)}}function M(e){null!==_.value&&(r("keydown",e),!0===pe(e,[13,32])&&En!==_.value&&(null!==En&&I(),!0!==e.defaultPrevented&&(_.value.focus(),En=_.value,_.value.classList.add("q-btn--active"),document.addEventListener("keyup",N,!0),_.value.addEventListener("blur",N,Cn)),J(e)))}function R(e){null!==_.value&&(r("touchstart",e),!0!==e.defaultPrevented&&(Tn!==_.value&&(null!==Tn&&I(),Tn=_.value,b=e.target,b.addEventListener("touchcancel",N,Cn),b.addEventListener("touchend",N,Cn)),o=!0,null!==y&&clearTimeout(y),y=setTimeout((()=>{y=null,o=!1}),200)))}function z(e){null!==_.value&&(e.qSkipRipple=!0===o,r("mousedown",e),!0!==e.defaultPrevented&&Pn!==_.value&&(null!==Pn&&I(),Pn=_.value,_.value.classList.add("q-btn--active"),document.addEventListener("mouseup",N,Cn)))}function N(e){if(null!==_.value&&(void 0===e||"blur"!==e.type||document.activeElement!==_.value)){if(void 0!==e&&"keyup"===e.type){if(En===_.value&&!0===pe(e,[13,32])){let t=new MouseEvent("click",e);t.qKeyEvent=!0,!0===e.defaultPrevented&&Z(t),!0===e.cancelBubble&&Q(t),_.value.dispatchEvent(t),J(e),e.qKeyEvent=!0}r("keyup",e)}I()}}function I(e){let t=v.value;!0!==e&&(Tn===_.value||Pn===_.value)&&null!==t&&t!==document.activeElement&&(t.setAttribute("tabindex",-1),t.focus()),Tn===_.value&&(null!==b&&(b.removeEventListener("touchcancel",N,Cn),b.removeEventListener("touchend",N,Cn)),Tn=b=null),Pn===_.value&&(document.removeEventListener("mouseup",N,Cn),Pn=null),En===_.value&&(document.removeEventListener("keyup",N,!0),null!==_.value&&_.value.removeEventListener("blur",N,Cn),En=null),null!==_.value&&_.value.classList.remove("q-btn--active")}function O(e){J(e),e.qSkipRipple=!0}return g((()=>{I(!0)})),Object.assign(s,{click:e=>{!0===m.value&&L(e)}}),()=>{let a=[];void 0!==e.icon&&a.push(n(Lt,{name:e.icon,left:!0!==e.stack&&!0===w.value,role:"img"})),!0===w.value&&a.push(n("span",{class:"block"},[e.label])),a=pt(t.default,a),void 0!==e.iconRight&&!1===e.round&&a.push(n(Lt,{name:e.iconRight,right:!0!==e.stack&&!0===w.value,role:"img"}));let i=[n("span",{class:"q-focus-helper",ref:v})];return!0===e.loading&&void 0!==e.percentage&&i.push(n("span",{class:"q-btn__progress absolute-full overflow-hidden"+(!0===e.darkPercentage?" q-btn__progress--dark":"")},[n("span",{class:"q-btn__progress-indicator fit block",style:T.value})])),i.push(n("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+c.value},a)),null!==e.loading&&i.push(n(S,{name:"q-transition--fade"},(()=>!0===e.loading?[n("span",{key:"loading",class:"absolute-full flex flex-center"},void 0!==t.loading?t.loading():[n(on)])]:null))),A(n(p.value,P.value,i),[[mn,x.value,void 0,C.value]])}}}),Ln=$({name:"QBtnGroup",props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){let a=i((()=>{let t=["unelevated","outline","flat","rounded","square","push","stretch","glossy"].filter((t=>!0===e[t])).map((e=>`q-btn-group--${e}`)).join(" ");return"q-btn-group row no-wrap"+(0!==t.length?" "+t:"")+(!0===e.spread?" q-btn-group--spread":" inline")}));return()=>n("div",{class:a.value},dt(t.default))}});function Mn(){if(void 0!==window.getSelection){let e=window.getSelection();void 0!==e.empty?e.empty():void 0!==e.removeAllRanges&&(e.removeAllRanges(),!0!==F.is.mobile&&e.addRange(document.createRange()))}else void 0!==document.selection&&document.selection.empty()}var Rn={target:{type:[Boolean,String,Element],default:!0},noParentEvent:Boolean},zn={...Rn,contextMenu:Boolean};function Nn({showing:e,avoidEmit:t,configureAnchorEl:n}){let{props:i,proxy:o,emit:s}=k(),l=a(null),u=null;function c(e){return null!==l.value&&(void 0===e||void 0===e.touches||e.touches.length<=1)}let h={};function p(){te(h,"anchor")}function f(){if(!1===i.target||""===i.target||null===o.$el.parentNode)l.value=null;else if(!0===i.target)!function(e){for(l.value=e;l.value.classList.contains("q-anchor--skip");)l.value=l.value.parentNode;n()}(o.$el.parentNode);else{let e=i.target;if("string"==typeof i.target)try{e=document.querySelector(i.target)}catch{e=void 0}null!=e?(l.value=e.$el||e,n()):(l.value=null,console.error(`Anchor: target "${i.target}" not found`))}}return void 0===n&&(Object.assign(h,{hide(e){o.hide(e)},toggle(e){o.toggle(e),e.qAnchorHandled=!0},toggleKey(e){!0===pe(e,13)&&h.toggle(e)},contextClick(e){o.hide(e),Z(e),d((()=>{o.show(e),e.qAnchorHandled=!0}))},prevent:Z,mobileTouch(e){if(h.mobileCleanup(e),!0!==c(e))return;o.hide(e),l.value.classList.add("non-selectable");let t=e.target;ee(h,"anchor",[[t,"touchmove","mobileCleanup","passive"],[t,"touchend","mobileCleanup","passive"],[t,"touchcancel","mobileCleanup","passive"],[l.value,"contextmenu","prevent","notPassive"]]),u=setTimeout((()=>{u=null,o.show(e),e.qAnchorHandled=!0}),300)},mobileCleanup(t){l.value.classList.remove("non-selectable"),null!==u&&(clearTimeout(u),u=null),!0===e.value&&void 0!==t&&Mn()}}),n=function(e=i.contextMenu){if(!0===i.noParentEvent||null===l.value)return;let t;t=!0===e?!0===o.$q.platform.is.mobile?[[l.value,"touchstart","mobileTouch","passive"]]:[[l.value,"mousedown","hide","passive"],[l.value,"contextmenu","contextClick","notPassive"]]:[[l.value,"click","toggle","passive"],[l.value,"keyup","toggleKey","passive"]],ee(h,"anchor",t)}),r((()=>i.contextMenu),(e=>{null!==l.value&&(p(),n(e))})),r((()=>i.target),(()=>{null!==l.value&&p(),f()})),r((()=>i.noParentEvent),(e=>{null!==l.value&&(!0===e?p():n())})),m((()=>{f(),!0!==t&&!0===i.modelValue&&null===l.value&&s("update:modelValue",!1)})),g((()=>{null!==u&&clearTimeout(u),p()})),{anchorEl:l,canShow:c,anchorEvents:h}}function In(e,t){let n,i=a(null);function o(e,t){let a=(void 0!==t?"add":"remove")+"EventListener",i=void 0!==t?t:n;e!==window&&e[a]("scroll",i,H.passive),window[a]("scroll",i,H.passive),n=t}function s(){null!==i.value&&(o(i.value),i.value=null)}let l=r((()=>e.noParentEvent),(()=>{null!==i.value&&(s(),t())}));return g(l),{localScrollTarget:i,unconfigureScrollTarget:s,changeScrollEvent:o}}var On={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},Dn=["beforeShow","show","beforeHide","hide"];function qn({showing:e,canShow:t,hideOnRouteChange:n,handleShow:a,handleHide:i,processOnMount:o}){let s,l=k(),{props:u,emit:c,proxy:h}=l;function p(e){if(!0===u.disable||void 0!==e&&!0===e.qAnchorHandled||void 0!==t&&!0!==t(e))return;let n=void 0!==u["onUpdate:modelValue"];!0===n&&(c("update:modelValue",!0),s=e,d((()=>{s===e&&(s=void 0)}))),(null===u.modelValue||!1===n)&&f(e)}function f(t){!0!==e.value&&(e.value=!0,c("beforeShow",t),void 0!==a?a(t):c("show",t))}function g(e){if(!0===u.disable)return;let t=void 0!==u["onUpdate:modelValue"];!0===t&&(c("update:modelValue",!1),s=e,d((()=>{s===e&&(s=void 0)}))),(null===u.modelValue||!1===t)&&_(e)}function _(t){!1!==e.value&&(e.value=!1,c("beforeHide",t),void 0!==i?i(t):c("hide",t))}function v(t){!0===u.disable&&!0===t?void 0!==u["onUpdate:modelValue"]&&c("update:modelValue",!1):!0===t!==e.value&&(!0===t?f:_)(s)}r((()=>u.modelValue),v),void 0!==n&&!0===Ht(l)&&r((()=>h.$route.fullPath),(()=>{!0===n.value&&!0===e.value&&g()})),!0===o&&m((()=>{v(u.modelValue)}));let b={show:p,hide:g,toggle:function(t){!0===e.value?g(t):p(t)}};return Object.assign(h,b),b}var jn=[],Bn=[];function Fn(e){Bn=Bn.filter((t=>t!==e))}function $n(e){Fn(e),0===Bn.length&&0!==jn.length&&(jn[jn.length-1](),jn=[])}function Vn(e){0===Bn.length?e():jn.push(e)}var Un=[],Hn=[],Wn=1,Gn=document.body;function Yn(e,t){let n=document.createElement("div");if(n.id=void 0!==t?`q-portal--${t}--${Wn++}`:e,void 0!==Oe.globalNodes){let e=Oe.globalNodes.class;void 0!==e&&(n.className=e)}return Gn.appendChild(n),Un.push(n),Hn.push(t),n}function Kn(e){let t=Un.indexOf(e);Un.splice(t,1),Hn.splice(t,1),e.remove()}var Qn=[];function Zn(e,t){do{if("QMenu"===e.$options.name){if(e.hide(t),!0===e.$props.separateClosePopup)return $t(e)}else if(!0===e.__qPortal){let n=$t(e);return void 0!==n&&"QPopupProxy"===n.$options.name?(e.hide(t),n):e}e=$t(e)}while(null!=e)}var Jn=$({name:"QPortal",setup:(e,{slots:t})=>()=>t.default()});function Xn(e,t,i,r){let o=a(!1),s=a(!1),l=null,u={},c="dialog"===r&&function(e){for(e=e.parent;null!=e;){if("QGlobalDialog"===e.type.name)return!0;if("QDialog"===e.type.name||"QMenu"===e.type.name)return!1;e=e.parent}return!1}(e);function d(t){if(s.value=!1,!0!==t)return;$n(u),o.value=!1;let n=Qn.indexOf(e.proxy);-1!==n&&Qn.splice(n,1),null!==l&&(Kn(l),l=null)}return _((()=>{d(!0)})),e.proxy.__qPortal=!0,z(e.proxy,"contentEl",(()=>t.value)),{showPortal:function(t){if(!0===t)return $n(u),void(s.value=!0);s.value=!1,!1===o.value&&(!1===c&&null===l&&(l=Yn(!1,r)),o.value=!0,Qn.push(e.proxy),function(e){Fn(e),Bn.push(e)}(u))},hidePortal:d,portalIsActive:o,portalIsAccessible:s,renderPortal:()=>!0===c?i():!0===o.value?[n(E,{to:l},n(Jn,i))]:void 0}}var ea={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function ta(e,t=()=>{},n=()=>{}){return{transitionProps:i((()=>{let a=`q-transition--${e.transitionShow||t()}`,i=`q-transition--${e.transitionHide||n()}`;return{appear:!0,enterFromClass:`${a}-enter-from`,enterActiveClass:`${a}-enter-active`,enterToClass:`${a}-enter-to`,leaveFromClass:`${i}-leave-from`,leaveActiveClass:`${i}-leave-active`,leaveToClass:`${i}-leave-to`}})),transitionStyle:i((()=>`--q-transition-duration: ${e.transitionDuration}ms`))}}function na(){let e,t=k();function n(){e=void 0}return p(n),g(n),{removeTick:n,registerTick(n){e=n,d((()=>{e===n&&(!1===Wt(t)&&e(),e=void 0)}))}}}function aa(){let e=null,t=k();function n(){null!==e&&(clearTimeout(e),e=null)}return p(n),g(n),{removeTimeout:n,registerTimeout(a,i){n(),!1===Wt(t)&&(e=setTimeout((()=>{e=null,a()}),i))}}}var ia,ra=[Element,String],oa=[null,document,document.body,document.scrollingElement,document.documentElement];function sa(e,t){let n=function(e){if(null==e)return;if("string"==typeof e)try{return document.querySelector(e)||void 0}catch{return}let t=l(e);return t?t.$el||t:void 0}(t);if(void 0===n){if(null==e)return window;n=e.closest(".scroll,.scroll-y,.overflow-auto")}return oa.includes(n)?window:n}function la(e){return(e===window?document.body:e).scrollHeight}function ua(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function ca(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function da(e,t,n=0){let a=void 0===arguments[3]?performance.now():arguments[3],i=ua(e);n<=0?i!==t&&pa(e,t):requestAnimationFrame((r=>{let o=r-a,s=i+(t-i)/Math.max(o,n)*o;pa(e,s),s!==t&&da(e,t,n-o,r)}))}function ha(e,t,n=0){let a=void 0===arguments[3]?performance.now():arguments[3],i=ca(e);n<=0?i!==t&&fa(e,t):requestAnimationFrame((r=>{let o=r-a,s=i+(t-i)/Math.max(o,n)*o;fa(e,s),s!==t&&ha(e,t,n-o,r)}))}function pa(e,t){e!==window?e.scrollTop=t:window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t)}function fa(e,t){e!==window?e.scrollLeft=t:window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)}function ma(e,t,n){n?da(e,t,n):pa(e,t)}function ga(e,t,n){n?ha(e,t,n):fa(e,t)}function _a(){if(void 0!==ia)return ia;let e=document.createElement("p"),t=document.createElement("div");un(e,{width:"100%",height:"200px"}),un(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);let n=e.offsetWidth;t.style.overflow="scroll";let a=e.offsetWidth;return n===a&&(a=t.clientWidth),t.remove(),ia=n-a}function va(e,t=!0){return!(!e||e.nodeType!==Node.ELEMENT_NODE)&&(t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"])))}var ba,ya={getScrollTarget:sa,getScrollHeight:la,getScrollWidth:function(e){return(e===window?document.body:e).scrollWidth},getVerticalScrollPosition:ua,getHorizontalScrollPosition:ca,animVerticalScrollTo:da,animHorizontalScrollTo:ha,setVerticalScrollPosition:ma,setHorizontalScrollPosition:ga,getScrollbarWidth:_a,hasScrollbar:va},wa=[];function ka(e){ba=27===e.keyCode}function xa(){!0===ba&&(ba=!1)}function Sa(e){!0===ba&&(ba=!1,!0===pe(e,27)&&wa[wa.length-1](e))}function Ca(e){window[e]("keydown",ka),window[e]("blur",xa),window[e]("keyup",Sa),ba=!1}function Ta(e){!0===j.is.desktop&&(wa.push(e),1===wa.length&&Ca("addEventListener"))}function Ea(e){let t=wa.indexOf(e);-1!==t&&(wa.splice(t,1),0===wa.length&&Ca("removeEventListener"))}var Pa=[];function Aa(e){Pa[Pa.length-1](e)}function La(e){!0===j.is.desktop&&(Pa.push(e),1===Pa.length&&document.body.addEventListener("focusin",Aa))}function Ma(e){let t=Pa.indexOf(e);-1!==t&&(Pa.splice(t,1),0===Pa.length&&document.body.removeEventListener("focusin",Aa))}var Ra,za,Na=null,{notPassiveCapture:Ia}=H,Oa=[];function Da(e){null!==Na&&(clearTimeout(Na),Na=null);let t=e.target;if(void 0===t||8===t.nodeType||!0===t.classList.contains("no-pointer-events"))return;let n=Qn.length-1;for(;n>=0;){let e=Qn[n].$;if("QTooltip"!==e.type.name){if("QDialog"!==e.type.name)break;if(!0!==e.props.seamless)return;n--}else n--}for(let n=Oa.length-1;n>=0;n--){let a=Oa[n];if(null!==a.anchorEl.value&&!1!==a.anchorEl.value.contains(t)||t!==document.body&&(null===a.innerRef.value||!1!==a.innerRef.value.contains(t)))return;e.qClickOutside=!0,a.onClickOutside(e)}}function qa(e){Oa.push(e),1===Oa.length&&(document.addEventListener("mousedown",Da,Ia),document.addEventListener("touchstart",Da,Ia))}function ja(e){let t=Oa.findIndex((t=>t===e));-1!==t&&(Oa.splice(t,1),0===Oa.length&&(null!==Na&&(clearTimeout(Na),Na=null),document.removeEventListener("mousedown",Da,Ia),document.removeEventListener("touchstart",Da,Ia)))}function Ba(e){let t=e.split(" ");return 2===t.length&&(!0!==["top","center","bottom"].includes(t[0])?(console.error("Anchor/Self position must start with one of top/center/bottom"),!1):!0===["left","middle","right","start","end"].includes(t[1])||(console.error("Anchor/Self position must end with one of left/middle/right/start/end"),!1))}function Fa(e){return!e||!(2!==e.length||"number"!=typeof e[0]||"number"!=typeof e[1])}var $a={"start#ltr":"left","start#rtl":"right","end#ltr":"right","end#rtl":"left"};function Va(e,t){let n=e.split(" ");return{vertical:n[0],horizontal:$a[`${n[1]}#${!0===t?"rtl":"ltr"}`]}}function Ua(e,t,n,a){return{top:e[n.vertical]-t[a.vertical],left:e[n.horizontal]-t[a.horizontal]}}function Ha(e,t=0){if(null===e.targetEl||null===e.anchorEl||t>5)return;if(0===e.targetEl.offsetHeight||0===e.targetEl.offsetWidth)return void setTimeout((()=>{Ha(e,t+1)}),10);let{targetEl:n,offset:a,anchorEl:i,anchorOrigin:r,selfOrigin:o,absoluteOffset:s,fit:l,cover:u,maxHeight:c,maxWidth:d}=e;if(!0===j.is.ios&&void 0!==window.visualViewport){let e=document.body.style,{offsetLeft:t,offsetTop:n}=window.visualViewport;t!==Ra&&(e.setProperty("--q-pe-left",t+"px"),Ra=t),n!==za&&(e.setProperty("--q-pe-top",n+"px"),za=n)}let{scrollLeft:h,scrollTop:p}=n,f=void 0===s?function(e,t){let{top:n,left:a,right:i,bottom:r,width:o,height:s}=e.getBoundingClientRect();return void 0!==t&&(n-=t[1],a-=t[0],r+=t[1],i+=t[0],o+=t[0],s+=t[1]),{top:n,bottom:r,height:s,left:a,right:i,width:o,middle:a+(i-a)/2,center:n+(r-n)/2}}(i,!0===u?[0,0]:a):function(e,t,n){let{top:a,left:i}=e.getBoundingClientRect();return a+=t.top,i+=t.left,void 0!==n&&(a+=n[1],i+=n[0]),{top:a,bottom:a+1,height:1,left:i,right:i+1,width:1,middle:i,center:a}}(i,s,a);Object.assign(n.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:d,maxHeight:c,visibility:"visible"});let{offsetWidth:m,offsetHeight:g}=n,{elWidth:_,elHeight:v}=!0===l||!0===u?{elWidth:Math.max(f.width,m),elHeight:!0===u?Math.max(f.height,g):g}:{elWidth:m,elHeight:g},b={maxWidth:d,maxHeight:c};(!0===l||!0===u)&&(b.minWidth=f.width+"px",!0===u&&(b.minHeight=f.height+"px")),Object.assign(n.style,b);let y=function(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}(_,v),w=Ua(f,y,r,o);if(void 0===s||void 0===a)Wa(w,f,y,r,o);else{let{top:e,left:t}=w;Wa(w,f,y,r,o);let n=!1;if(w.top!==e){n=!0;let e=2*a[1];f.center=f.top-=e,f.bottom-=e+2}if(w.left!==t){n=!0;let e=2*a[0];f.middle=f.left-=e,f.right-=e+2}!0===n&&(w=Ua(f,y,r,o),Wa(w,f,y,r,o))}b={top:w.top+"px",left:w.left+"px"},void 0!==w.maxHeight&&(b.maxHeight=w.maxHeight+"px",f.height>w.maxHeight&&(b.minHeight=b.maxHeight)),void 0!==w.maxWidth&&(b.maxWidth=w.maxWidth+"px",f.width>w.maxWidth&&(b.minWidth=b.maxWidth)),Object.assign(n.style,b),n.scrollTop!==p&&(n.scrollTop=p),n.scrollLeft!==h&&(n.scrollLeft=h)}function Wa(e,t,n,a,i){let r=n.bottom,o=n.right,s=_a(),l=window.innerHeight-s,u=document.body.clientWidth;if(e.top<0||e.top+r>l)if("center"===i.vertical)e.top=t[a.vertical]>l/2?Math.max(0,l-r):0,e.maxHeight=Math.min(r,l);else if(t[a.vertical]>l/2){let n=Math.min(l,"center"===a.vertical?t.center:a.vertical===i.vertical?t.bottom:t.top);e.maxHeight=Math.min(r,n),e.top=Math.max(0,n-r)}else e.top=Math.max(0,"center"===a.vertical?t.center:a.vertical===i.vertical?t.top:t.bottom),e.maxHeight=Math.min(r,l-e.top);if(e.left<0||e.left+o>u)if(e.maxWidth=Math.min(o,u),"middle"===i.horizontal)e.left=t[a.horizontal]>u/2?Math.max(0,u-o):0;else if(t[a.horizontal]>u/2){let n=Math.min(u,"middle"===a.horizontal?t.middle:a.horizontal===i.horizontal?t.right:t.left);e.maxWidth=Math.min(o,n),e.left=Math.max(0,n-e.maxWidth)}else e.left=Math.max(0,"middle"===a.horizontal?t.middle:a.horizontal===i.horizontal?t.left:t.right),e.maxWidth=Math.min(o,u-e.left)}["left","middle","right"].forEach((e=>{$a[`${e}#ltr`]=e,$a[`${e}#rtl`]=e}));var Ga,Ya=$({name:"QMenu",inheritAttrs:!1,props:{...zn,...On,...Nt,...ea,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:Ba},self:{type:String,validator:Ba},offset:{type:Array,validator:Fa},scrollTarget:ra,touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...Dn,"click","escapeKey"],setup(e,{slots:t,emit:o,attrs:s}){let l,u,c,d=null,h=k(),{proxy:p}=h,{$q:f}=p,m=a(null),_=a(!1),v=i((()=>!0!==e.persistent&&!0!==e.noRouteDismiss)),b=It(e,f),{registerTick:y,removeTick:w}=na(),{registerTimeout:x}=aa(),{transitionProps:C,transitionStyle:T}=ta(e),{localScrollTarget:E,changeScrollEvent:P,unconfigureScrollTarget:A}=In(e,U),{anchorEl:L,canShow:M}=Nn({showing:_}),{hide:R}=qn({showing:_,canShow:M,handleShow:function(t){if(d=!1===e.noRefocus?document.activeElement:null,La(W),z(),U(),l=void 0,void 0!==t&&(e.touchPosition||e.contextMenu)){let e=Y(t);if(void 0!==e.left){let{top:t,left:n}=L.value.getBoundingClientRect();l={left:e.left-n,top:e.top-t}}}void 0===u&&(u=r((()=>f.screen.width+"|"+f.screen.height+"|"+e.self+"|"+e.anchor+"|"+f.lang.rtl),K)),!0!==e.noFocus&&document.activeElement.blur(),y((()=>{K(),!0!==e.noFocus&&$()})),x((()=>{!0===f.platform.is.ios&&(c=e.autoClose,m.value.click()),K(),z(!0),o("show",t)}),e.transitionDuration)},handleHide:function(t){w(),N(),V(!0),null!==d&&(void 0===t||!0!==t.qClickOutside)&&(((t&&0===t.type.indexOf("key")?d.closest('[tabindex]:not([tabindex^="-"])'):void 0)||d).focus(),d=null),x((()=>{N(!0),o("hide",t)}),e.transitionDuration)},hideOnRouteChange:v,processOnMount:!0}),{showPortal:z,hidePortal:N,renderPortal:I}=Xn(h,m,(function(){return n(S,C.value,(()=>!0===_.value?n("div",{role:"menu",...s,ref:m,tabindex:-1,class:["q-menu q-position-engine scroll"+j.value,s.class],style:[s.style,T.value],...B.value},dt(t.default)):null))}),"menu"),O={anchorEl:L,innerRef:m,onClickOutside(t){if(!0!==e.persistent&&!0===_.value)return R(t),("touchstart"===t.type||t.target.classList.contains("q-dialog__backdrop"))&&J(t),!0}},D=i((()=>Va(e.anchor||(!0===e.cover?"center middle":"bottom start"),f.lang.rtl))),q=i((()=>!0===e.cover?D.value:Va(e.self||"top start",f.lang.rtl))),j=i((()=>(!0===e.square?" q-menu--square":"")+(!0===b.value?" q-menu--dark q-dark":""))),B=i((()=>!0===e.autoClose?{onClick:H}:{})),F=i((()=>!0===_.value&&!0!==e.persistent));function $(){Vn((()=>{let e=m.value;e&&!0!==e.contains(document.activeElement)&&(e=e.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||e.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||e.querySelector("[autofocus], [data-autofocus]")||e,e.focus({preventScroll:!0}))}))}function V(e){l=void 0,void 0!==u&&(u(),u=void 0),(!0===e||!0===_.value)&&(Ma(W),A(),ja(O),Ea(G)),!0!==e&&(d=null)}function U(){(null!==L.value||void 0!==e.scrollTarget)&&(E.value=sa(L.value,e.scrollTarget),P(E.value,K))}function H(e){!0!==c?(Zn(p,e),o("click",e)):c=!1}function W(t){!0===F.value&&!0!==e.noFocus&&!0!==cn(m.value,t.target)&&$()}function G(e){o("escapeKey"),R(e)}function K(){Ha({targetEl:m.value,offset:e.offset,anchorEl:L.value,anchorOrigin:D.value,selfOrigin:q.value,absoluteOffset:l,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}return r(F,(e=>{!0===e?(Ta(G),qa(O)):(Ea(G),ja(O))})),g(V),Object.assign(p,{focus:$,updatePosition:K}),I}}),Ka=0,Qa=new Array(256);for(let e=0;e<256;e++)Qa[e]=(e+256).toString(16).substring(1);var Za=(()=>{let e=typeof crypto<"u"?crypto:typeof window<"u"?window.crypto||window.msCrypto:void 0;if(void 0!==e){if(void 0!==e.randomBytes)return e.randomBytes;if(void 0!==e.getRandomValues)return t=>{let n=new Uint8Array(t);return e.getRandomValues(n),n}}return e=>{let t=[];for(let n=e;n>0;n--)t.push(Math.floor(256*Math.random()));return t}})(),Ja=4096;function Xa(){(void 0===Ga||Ka+16>Ja)&&(Ka=0,Ga=Za(Ja));let e=Array.prototype.slice.call(Ga,Ka,Ka+=16);return e[6]=15&e[6]|64,e[8]=63&e[8]|128,Qa[e[0]]+Qa[e[1]]+Qa[e[2]]+Qa[e[3]]+"-"+Qa[e[4]]+Qa[e[5]]+"-"+Qa[e[6]]+Qa[e[7]]+"-"+Qa[e[8]]+Qa[e[9]]+"-"+Qa[e[10]]+Qa[e[11]]+Qa[e[12]]+Qa[e[13]]+Qa[e[14]]+Qa[e[15]]}function ei(e,t){return e??(!0===t?`f_${Xa()}`:null)}function ti({getValue:e,required:t=!0}={}){if(!0===O.value){let n=a(void 0!==e?function(e){return e??null}(e()):null);return!0===t&&null===n.value&&m((()=>{n.value=`f_${Xa()}`})),void 0!==e&&r(e,(e=>{n.value=ei(e,t)})),n}return void 0!==e?i((()=>ei(e(),t))):a(`f_${Xa()}`)}var ni=Object.keys(xn);var ai=$({name:"QBtnDropdown",props:{...xn,...ea,modelValue:Boolean,split:Boolean,dropdownIcon:String,contentClass:[Array,String,Object],contentStyle:[Array,String,Object],cover:Boolean,persistent:Boolean,noRouteDismiss:Boolean,autoClose:Boolean,menuAnchor:{type:String,default:"bottom end"},menuSelf:{type:String,default:"top end"},menuOffset:Array,disableMainBtn:Boolean,disableDropdown:Boolean,noIconAnimation:Boolean,toggleAriaLabel:String},emits:["update:modelValue","click","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:o}){let{proxy:s}=k(),l=a(e.modelValue),u=a(null),c=ti(),d=i((()=>{let t={"aria-expanded":!0===l.value?"true":"false","aria-haspopup":"true","aria-controls":c.value,"aria-label":e.toggleAriaLabel||s.$q.lang.label[!0===l.value?"collapse":"expand"](e.label)};return(!0===e.disable||!1===e.split&&!0===e.disableMainBtn||!0===e.disableDropdown)&&(t["aria-disabled"]="true"),t})),h=i((()=>"q-btn-dropdown__arrow"+(!0===l.value&&!1===e.noIconAnimation?" rotate-180":"")+(!1===e.split?" q-btn-dropdown__arrow-container":""))),p=i((()=>kn(e))),f=i((()=>function(e){return ni.reduce(((t,n)=>{let a=e[n];return void 0!==a&&(t[n]=a),t}),{})}(e)));function g(e){l.value=!0,o("beforeShow",e)}function _(e){o("show",e),o("update:modelValue",!0)}function v(e){l.value=!1,o("beforeHide",e)}function b(e){o("hide",e),o("update:modelValue",!1)}function y(e){o("click",e)}function w(e){Q(e),S(),o("click",e)}function x(e){null!==u.value&&u.value.show(e)}function S(e){null!==u.value&&u.value.hide(e)}return r((()=>e.modelValue),(e=>{null!==u.value&&u.value[e?"show":"hide"]()})),r((()=>e.split),S),Object.assign(s,{show:x,hide:S,toggle:function(e){null!==u.value&&u.value.toggle(e)}}),m((()=>{!0===e.modelValue&&x()})),()=>{let a=[n(Lt,{class:h.value,name:e.dropdownIcon||s.$q.iconSet.arrow.dropdown})];return!0!==e.disableDropdown&&a.push(n(Ya,{ref:u,id:c.value,class:e.contentClass,style:e.contentStyle,cover:e.cover,fit:!0,persistent:e.persistent,noRouteDismiss:e.noRouteDismiss,autoClose:e.autoClose,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,separateClosePopup:!0,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:g,onShow:_,onBeforeHide:v,onHide:b},t.default)),!1===e.split?n(An,{class:"q-btn-dropdown q-btn-dropdown--simple",...f.value,...d.value,disable:!0===e.disable||!0===e.disableMainBtn,noWrap:!0,round:!1,onClick:y},{default:()=>dt(t.label,[]).concat(a),loading:t.loading}):n(Ln,{class:"q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item",rounded:e.rounded,square:e.square,...p.value,glossy:e.glossy,stretch:e.stretch},(()=>[n(An,{class:"q-btn-dropdown--current",...f.value,disable:!0===e.disable||!0===e.disableMainBtn,noWrap:!0,round:!1,onClick:w},{default:t.label,loading:t.loading}),n(An,{class:"q-btn-dropdown__arrow-container q-anchor--skip",...d.value,...p.value,disable:!0===e.disable||!0===e.disableDropdown,rounded:e.rounded,color:e.color,textColor:e.textColor,dense:e.dense,size:e.size,padding:e.padding,ripple:e.ripple},(()=>a))]))}}}),ii={name:String};function ri(e){return i((()=>({type:"hidden",name:e.name,value:e.modelValue})))}function oi(e={}){return(t,a,i)=>{t[a](n("input",{class:"hidden"+(i||""),...e.value}))}}function si(e){return i((()=>e.name||e.for))}var li=$({name:"QBtnToggle",props:{...ii,modelValue:{required:!0},options:{type:Array,required:!0,validator:e=>e.every((e=>("label"in e||"icon"in e||"slot"in e)&&"value"in e))},color:String,textColor:String,toggleColor:{type:String,default:"primary"},toggleTextColor:String,outline:Boolean,flat:Boolean,unelevated:Boolean,rounded:Boolean,push:Boolean,glossy:Boolean,size:String,padding:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,readonly:Boolean,disable:Boolean,stack:Boolean,stretch:Boolean,spread:Boolean,clearable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","clear","click"],setup(e,{slots:t,emit:a}){let r=i((()=>void 0!==e.options.find((t=>t.value===e.modelValue)))),o=oi(i((()=>({type:"hidden",name:e.name,value:e.modelValue})))),s=i((()=>kn(e))),l=i((()=>({rounded:e.rounded,dense:e.dense,...s.value}))),u=i((()=>e.options.map(((t,n)=>{let{attrs:i,value:r,slot:o,...s}=t;return{slot:o,props:{key:n,"aria-pressed":r===e.modelValue?"true":"false",...i,...s,...l.value,disable:!0===e.disable||!0===s.disable,color:r===e.modelValue?c(s,"toggleColor"):c(s,"color"),textColor:r===e.modelValue?c(s,"toggleTextColor"):c(s,"textColor"),noCaps:!0===c(s,"noCaps"),noWrap:!0===c(s,"noWrap"),size:c(s,"size"),padding:c(s,"padding"),ripple:c(s,"ripple"),stack:!0===c(s,"stack"),stretch:!0===c(s,"stretch"),onClick(n){!function(t,n,i){!0!==e.readonly&&(e.modelValue===t?!0===e.clearable&&(a("update:modelValue",null,null),a("clear")):a("update:modelValue",t,n),a("click",i))}(r,t,n)}}}}))));function c(t,n){return void 0===t[n]?e[n]:t[n]}function d(){let a=u.value.map((e=>n(An,e.props,void 0!==e.slot?t[e.slot]:void 0)));return void 0!==e.name&&!0!==e.disable&&!0===r.value&&o(a,"push"),pt(t.default,a)}return()=>n(Ln,{class:"q-btn-toggle",...s.value,rounded:e.rounded,stretch:e.stretch,glossy:e.glossy,spread:e.spread},d)}}),ui=$({name:"QCard",props:{...Nt,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=It(e,a),o=i((()=>"q-card"+(!0===r.value?" q-card--dark q-dark":"")+(!0===e.bordered?" q-card--bordered":"")+(!0===e.square?" q-card--square no-border-radius":"")+(!0===e.flat?" q-card--flat no-shadow":"")));return()=>n(e.tag,{class:o.value},dt(t.default))}}),ci=$({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){let a=i((()=>"q-card__section q-card__section--"+(!0===e.horizontal?"horiz row no-wrap":"vert")));return()=>n(e.tag,{class:a.value},dt(t.default))}}),di=$({name:"QCardActions",props:{...Bt,vertical:Boolean},setup(e,{slots:t}){let a=Ft(e),r=i((()=>`q-card__actions ${a.value} q-card__actions--${!0===e.vertical?"vert column":"horiz row"}`));return()=>n("div",{class:r.value},dt(t.default))}}),hi={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},pi=Object.keys(hi);function fi(e){let t={};for(let n of pi)!0===e[n]&&(t[n]=!0);return 0===Object.keys(t).length?hi:(!0===t.horizontal?t.left=t.right=!0:!0===t.left&&!0===t.right&&(t.horizontal=!0),!0===t.vertical?t.up=t.down=!0:!0===t.up&&!0===t.down&&(t.vertical=!0),!0===t.horizontal&&!0===t.vertical&&(t.all=!0),t)}hi.all=!0;var mi=["INPUT","TEXTAREA"];function gi(e,t){return void 0===t.event&&void 0!==e.target&&!0!==e.target.draggable&&"function"==typeof t.handler&&!1===mi.includes(e.target.nodeName.toUpperCase())&&(void 0===e.qClonedBy||-1===e.qClonedBy.indexOf(t.uid))}function _i(e){let t=[.06,6,50];return"string"==typeof e&&e.length&&e.split(":").forEach(((e,n)=>{let a=parseFloat(e);a&&(t[n]=a)})),t}var vi=V({name:"touch-swipe",beforeMount(e,{value:t,arg:n,modifiers:a}){if(!0!==a.mouse&&!0!==j.has.touch)return;let i=!0===a.mouseCapture?"Capture":"",r={handler:t,sensitivity:_i(n),direction:fi(a),noop:W,mouseStart(e){gi(e,r)&&G(e)&&(ee(r,"temp",[[document,"mousemove","move",`notPassive${i}`],[document,"mouseup","end","notPassiveCapture"]]),r.start(e,!0))},touchStart(e){if(gi(e,r)){let t=e.target;ee(r,"temp",[[t,"touchmove","move","notPassiveCapture"],[t,"touchcancel","end","notPassiveCapture"],[t,"touchend","end","notPassiveCapture"]]),r.start(e)}},start(t,n){!0===j.is.firefox&&X(e,!0);let a=Y(t);r.event={x:a.left,y:a.top,time:Date.now(),mouse:!0===n,dir:!1}},move(e){if(void 0===r.event)return;if(!1!==r.event.dir)return void J(e);let t=Date.now()-r.event.time;if(0===t)return;let n=Y(e),a=n.left-r.event.x,i=Math.abs(a),o=n.top-r.event.y,s=Math.abs(o);if(!0!==r.event.mouse){if(ir.sensitivity[0]&&(r.event.dir=o<0?"up":"down"),!0===r.direction.horizontal&&i>s&&s<100&&l>r.sensitivity[0]&&(r.event.dir=a<0?"left":"right"),!0===r.direction.up&&ir.sensitivity[0]&&(r.event.dir="up"),!0===r.direction.down&&i0&&i<100&&u>r.sensitivity[0]&&(r.event.dir="down"),!0===r.direction.left&&i>s&&a<0&&s<100&&l>r.sensitivity[0]&&(r.event.dir="left"),!0===r.direction.right&&i>s&&a>0&&s<100&&l>r.sensitivity[0]&&(r.event.dir="right"),!1!==r.event.dir?(J(e),!0===r.event.mouse&&(document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),Mn(),r.styleCleanup=e=>{r.styleCleanup=void 0,document.body.classList.remove("non-selectable");let t=()=>{document.body.classList.remove("no-pointer-events--children")};!0===e?setTimeout(t,50):t()}),r.handler({evt:e,touch:!0!==r.event.mouse,mouse:r.event.mouse,direction:r.event.dir,duration:t,distance:{x:i,y:s}})):r.end(e)},end(t){void 0!==r.event&&(te(r,"temp"),!0===j.is.firefox&&X(e,!1),void 0!==r.styleCleanup&&r.styleCleanup(!0),void 0!==t&&!1!==r.event.dir&&J(t),r.event=void 0)}};if(e.__qtouchswipe=r,!0===a.mouse){let t=!0===a.mouseCapture||!0===a.mousecapture?"Capture":"";ee(r,"main",[[e,"mousedown","mouseStart",`passive${t}`]])}!0===j.has.touch&&ee(r,"main",[[e,"touchstart","touchStart","passive"+(!0===a.capture?"Capture":"")],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){let n=e.__qtouchswipe;void 0!==n&&(t.oldValue!==t.value&&("function"!=typeof t.value&&n.end(),n.handler=t.value),n.direction=fi(t.modifiers))},beforeUnmount(e){let t=e.__qtouchswipe;void 0!==t&&(te(t,"main"),te(t,"temp"),!0===j.is.firefox&&X(e,!1),void 0!==t.styleCleanup&&t.styleCleanup(),delete e.__qtouchswipe)}});function bi(){let e=Object.create(null);return{getCache:(t,n)=>void 0===e[t]?e[t]="function"==typeof n?n():n:e[t],setCache(t,n){e[t]=n},hasCache:t=>Object.hasOwnProperty.call(e,t),clearCache(t){void 0!==t?delete e[t]:e=Object.create(null)}}}var yi={name:{required:!0},disable:Boolean},wi={setup:(e,{slots:t})=>()=>n("div",{class:"q-panel scroll",role:"tabpanel"},dt(t.default))},ki={modelValue:{required:!0},animated:Boolean,infinite:Boolean,swipeable:Boolean,vertical:Boolean,transitionPrev:String,transitionNext:String,transitionDuration:{type:[String,Number],default:300},keepAlive:Boolean,keepAliveInclude:[String,Array,RegExp],keepAliveExclude:[String,Array,RegExp],keepAliveMax:Number},xi=["update:modelValue","beforeTransition","transition"];function Si(){let e,t,{props:o,emit:s,proxy:l}=k(),{getCache:u}=bi(),{registerTimeout:c}=aa(),d=a(null),h=a(null);function p(e){let t=!0===o.vertical?"up":"left";L((!0===l.$q.lang.rtl?-1:1)*(e.direction===t?1:-1))}let f=i((()=>[[vi,p,void 0,{horizontal:!0!==o.vertical,vertical:o.vertical,mouse:!0}]])),m=i((()=>o.transitionPrev||"slide-"+(!0===o.vertical?"down":"right"))),g=i((()=>o.transitionNext||"slide-"+(!0===o.vertical?"up":"left"))),_=i((()=>`--q-transition-duration: ${o.transitionDuration}ms`)),v=i((()=>"string"==typeof o.modelValue||"number"==typeof o.modelValue?o.modelValue:String(o.modelValue))),b=i((()=>({include:o.keepAliveInclude,exclude:o.keepAliveExclude,max:o.keepAliveMax}))),y=i((()=>void 0!==o.keepAliveInclude||void 0!==o.keepAliveExclude));function w(){L(1)}function x(){L(-1)}function C(e){s("update:modelValue",e)}function E(e){return null!=e&&""!==e}function P(t){return e.findIndex((e=>e.props.name===t&&""!==e.props.disable&&!0!==e.props.disable))}function A(e){let t=0!==e&&!0===o.animated&&-1!==d.value?"q-transition--"+(-1===e?m.value:g.value):null;h.value!==t&&(h.value=t)}function L(n,a=d.value){let i=a+n;for(;-1!==i&&i{t=!1}));i+=n}!0===o.infinite&&0!==e.length&&-1!==a&&a!==e.length&&L(n,-1===n?e.length:-1)}function M(){let e=P(o.modelValue);return d.value!==e&&(d.value=e),!0}function R(){let t=!0===E(o.modelValue)&&M()&&e[d.value];return!0===o.keepAlive?[n(T,b.value,[n(!0===y.value?u(v.value,(()=>({...wi,name:v.value}))):wi,{key:v.value,style:_.value},(()=>t))])]:[n("div",{class:"q-panel scroll",style:_.value,key:v.value,role:"tabpanel"},[t])]}return r((()=>o.modelValue),((e,n)=>{let a=!0===E(e)?P(e):-1;!0!==t&&A(-1===a?0:a{s("transition",e,n)}),o.transitionDuration))})),Object.assign(l,{next:w,previous:x,goTo:C}),{panelIndex:d,panelDirectives:f,updatePanelsList:function(t){return e=Ut(dt(t.default,[])).filter((e=>null!==e.props&&void 0===e.props.slot&&!0===E(e.props.name))),e.length},updatePanelIndex:M,getPanelContent:function(){if(0!==e.length)return!0===o.animated?[n(S,{name:h.value},R)]:R()},getEnabledPanels:function(){return e.filter((e=>""!==e.props.disable&&!0!==e.props.disable))},getPanels:function(){return e},isValidPanelName:E,keepAliveProps:b,needsUniqueKeepAliveWrapper:y,goToPanelByOffset:L,goToPanel:C,nextPanel:w,previousPanel:x}}var Ci=0,Ti={fullscreen:Boolean,noRouteFullscreenExit:Boolean},Ei=["update:fullscreen","fullscreen"];function Pi(){let e,t,n,i=k(),{props:o,emit:s,proxy:l}=i,u=a(!1);function c(){!0===u.value?h():d()}function d(){!0!==u.value&&(u.value=!0,n=l.$el.parentNode,n.replaceChild(t,l.$el),document.body.appendChild(l.$el),1===++Ci&&document.body.classList.add("q-body--fullscreen-mixin"),e={handler:h},be.add(e))}function h(){!0===u.value&&(void 0!==e&&(be.remove(e),e=void 0),n.replaceChild(l.$el,t),u.value=!1,0===(Ci=Math.max(0,Ci-1))&&(document.body.classList.remove("q-body--fullscreen-mixin"),void 0!==l.$el.scrollIntoView&&setTimeout((()=>{l.$el.scrollIntoView()}))))}return!0===Ht(i)&&r((()=>l.$route.fullPath),(()=>{!0!==o.noRouteFullscreenExit&&h()})),r((()=>o.fullscreen),(e=>{u.value!==e&&c()})),r(u,(e=>{s("update:fullscreen",e),s("fullscreen",e)})),f((()=>{t=document.createElement("span")})),m((()=>{!0===o.fullscreen&&d()})),g(h),Object.assign(l,{toggleFullscreen:c,setFullscreen:d,exitFullscreen:h}),{inFullscreen:u,toggleFullscreen:c}}var Ai=["top","right","bottom","left"],Li=["regular","flat","outline","push","unelevated"],Mi=$({name:"QCarousel",props:{...Nt,...ki,...Ti,transitionPrev:{type:String,default:"fade"},transitionNext:{type:String,default:"fade"},height:String,padding:Boolean,controlColor:String,controlTextColor:String,controlType:{type:String,validator:e=>Li.includes(e),default:"flat"},autoplay:[Number,Boolean],arrows:Boolean,prevIcon:String,nextIcon:String,navigation:Boolean,navigationPosition:{type:String,validator:e=>Ai.includes(e)},navigationIcon:String,navigationActiveIcon:String,thumbnails:Boolean},emits:[...Ei,...xi],setup(e,{slots:t}){let a,{proxy:{$q:o}}=k(),s=It(e,o),l=null,{updatePanelsList:u,getPanelContent:c,panelDirectives:d,goToPanel:h,previousPanel:p,nextPanel:f,getEnabledPanels:_,panelIndex:v}=Si(),{inFullscreen:b}=Pi(),y=i((()=>!0!==b.value&&void 0!==e.height?{height:e.height}:{})),w=i((()=>!0===e.vertical?"vertical":"horizontal")),x=i((()=>e.navigationPosition||(!0===e.vertical?"right":"bottom"))),S=i((()=>`q-carousel q-panel-parent q-carousel--with${!0===e.padding?"":"out"}-padding`+(!0===b.value?" fullscreen":"")+(!0===s.value?" q-carousel--dark q-dark":"")+(!0===e.arrows?` q-carousel--arrows-${w.value}`:"")+(!0===e.navigation?` q-carousel--navigation-${x.value}`:""))),C=i((()=>{let t=[e.prevIcon||o.iconSet.carousel[!0===e.vertical?"up":"left"],e.nextIcon||o.iconSet.carousel[!0===e.vertical?"down":"right"]];return!1===e.vertical&&!0===o.lang.rtl?t.reverse():t})),T=i((()=>e.navigationIcon||o.iconSet.carousel.navigationIcon)),E=i((()=>e.navigationActiveIcon||T.value)),P=i((()=>({color:e.controlColor,textColor:e.controlTextColor,round:!0,[e.controlType]:!0,dense:!0})));function A(){let t=!0===$e(e.autoplay)?Math.abs(e.autoplay):5e3;null!==l&&clearTimeout(l),l=setTimeout((()=>{l=null,t>=0?f():p()}),t)}function L(t,a){return n("div",{class:`q-carousel__control q-carousel__navigation no-wrap absolute flex q-carousel__navigation--${t} q-carousel__navigation--${x.value}`+(void 0!==e.controlColor?` text-${e.controlColor}`:"")},[n("div",{class:"q-carousel__navigation-inner flex flex-center no-wrap"},_().map(a))])}return r((()=>e.modelValue),(()=>{e.autoplay&&A()})),r((()=>e.autoplay),(e=>{e?A():null!==l&&(clearTimeout(l),l=null)})),m((()=>{e.autoplay&&A()})),g((()=>{null!==l&&clearTimeout(l)})),()=>(a=u(t),n("div",{class:S.value,style:y.value},[mt("div",{class:"q-carousel__slides-container"},c(),"sl-cont",e.swipeable,(()=>d.value))].concat(function(){let i=[];if(!0===e.navigation){let e=void 0!==t["navigation-icon"]?t["navigation-icon"]:e=>n(An,{key:"nav"+e.name,class:`q-carousel__navigation-icon q-carousel__navigation-icon--${!0===e.active?"":"in"}active`,...e.btnProps,onClick:e.onClick}),r=a-1;i.push(L("buttons",((t,n)=>{let a=t.props.name,i=v.value===n;return e({index:n,maxIndex:r,name:a,active:i,btnProps:{icon:!0===i?E.value:T.value,size:"sm",...P.value},onClick:()=>{h(a)}})})))}else if(!0===e.thumbnails){let t=void 0!==e.controlColor?` text-${e.controlColor}`:"";i.push(L("thumbnails",(a=>{let i=a.props;return n("img",{key:"tmb#"+i.name,class:`q-carousel__thumbnail q-carousel__thumbnail--${i.name===e.modelValue?"":"in"}active`+t,src:i.imgSrc||i["img-src"],onClick:()=>{h(i.name)}})})))}return!0===e.arrows&&v.value>=0&&((!0===e.infinite||v.value>0)&&i.push(n("div",{key:"prev",class:`q-carousel__control q-carousel__arrow q-carousel__prev-arrow q-carousel__prev-arrow--${w.value} absolute flex flex-center`},[n(An,{icon:C.value[0],...P.value,onClick:p})])),(!0===e.infinite||v.valuee.imgSrc?{backgroundImage:`url("${e.imgSrc}")`}:{}));return()=>n("div",{class:"q-carousel__slide",style:a.value},dt(t.default))}}),zi=$({name:"QCarouselControl",props:{position:{type:String,default:"bottom-right",validator:e=>["top-right","top-left","bottom-right","bottom-left","top","right","bottom","left"].includes(e)},offset:{type:Array,default:()=>[18,18],validator:e=>2===e.length}},setup(e,{slots:t}){let a=i((()=>`q-carousel__control absolute absolute-${e.position}`)),r=i((()=>({margin:`${e.offset[1]}px ${e.offset[0]}px`})));return()=>n("div",{class:a.value,style:r.value},dt(t.default))}}),Ni=$({name:"QChatMessage",props:{sent:Boolean,label:String,bgColor:String,textColor:String,name:String,avatar:String,text:Array,stamp:String,size:String,labelHtml:Boolean,nameHtml:Boolean,textHtml:Boolean,stampHtml:Boolean},setup(e,{slots:t}){let a=i((()=>!0===e.sent?"sent":"received")),r=i((()=>`q-message-text-content q-message-text-content--${a.value}`+(void 0!==e.textColor?` text-${e.textColor}`:""))),o=i((()=>`q-message-text q-message-text--${a.value}`+(void 0!==e.bgColor?` text-${e.bgColor}`:""))),s=i((()=>"q-message-container row items-end no-wrap"+(!0===e.sent?" reverse":""))),l=i((()=>void 0!==e.size?`col-${e.size}`:"")),u=i((()=>({msg:!0===e.textHtml?"innerHTML":"textContent",stamp:!0===e.stampHtml?"innerHTML":"textContent",name:!0===e.nameHtml?"innerHTML":"textContent",label:!0===e.labelHtml?"innerHTML":"textContent"})));function c(a){return void 0!==t.stamp?[a,n("div",{class:"q-message-stamp"},t.stamp())]:e.stamp?[a,n("div",{class:"q-message-stamp",[u.value.stamp]:e.stamp})]:[a]}function d(e,t){let a=!0===t?e.length>1?e=>e:e=>n("div",[e]):e=>n("div",{[u.value.msg]:e});return e.map(((e,t)=>n("div",{key:t,class:o.value},[n("div",{class:r.value},c(a(e)))])))}return()=>{let i=[];void 0!==t.avatar?i.push(t.avatar()):void 0!==e.avatar&&i.push(n("img",{class:`q-message-avatar q-message-avatar--${a.value}`,src:e.avatar,"aria-hidden":"true"}));let r=[];void 0!==t.name?r.push(n("div",{class:`q-message-name q-message-name--${a.value}`},t.name())):void 0!==e.name&&r.push(n("div",{class:`q-message-name q-message-name--${a.value}`,[u.value.name]:e.name})),void 0!==t.default?r.push(d(Ut(t.default()),!0)):void 0!==e.text&&r.push(d(e.text)),i.push(n("div",{class:l.value},r));let o=[];return void 0!==t.label?o.push(n("div",{class:"q-message-label"},t.label())):void 0!==e.label&&o.push(n("div",{class:"q-message-label",[u.value.label]:e.label})),o.push(n("div",{class:s.value},i)),n("div",{class:`q-message q-message-${a.value}`},o)}}});function Ii(e,t){let r=a(null);return{refocusTargetEl:i((()=>!0===e.disable?null:n("span",{ref:r,class:"no-outline",tabindex:-1}))),refocusTarget:function(e){let n=t.value;void 0!==e&&0===e.type.indexOf("key")?null!==n&&document.activeElement!==n&&!0===n.contains(document.activeElement)&&n.focus():null!==r.value&&(void 0===e||null!==n&&!0===n.contains(e.target))&&r.value.focus()}}}var Oi={xs:30,sm:35,md:40,lg:50,xl:60},Di={...Nt,...ut,...ii,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>"tf"===e||"ft"===e},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},qi=["update:modelValue"];function ji(e,t){let{props:r,slots:o,emit:l,proxy:u}=k(),{$q:c}=u,d=It(r,c),h=a(null),{refocusTargetEl:p,refocusTarget:f}=Ii(r,h),m=ct(r,Oi),g=i((()=>void 0!==r.val&&Array.isArray(r.modelValue))),_=i((()=>{let e=s(r.val);return!0===g.value?r.modelValue.findIndex((t=>s(t)===e)):-1})),v=i((()=>!0===g.value?-1!==_.value:s(r.modelValue)===s(r.trueValue))),b=i((()=>!0===g.value?-1===_.value:s(r.modelValue)===s(r.falseValue))),y=i((()=>!1===v.value&&!1===b.value)),w=i((()=>!0===r.disable?-1:r.tabindex||0)),x=i((()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(!0===r.disable?" disabled":"")+(!0===d.value?` q-${e}--dark`:"")+(!0===r.dense?` q-${e}--dense`:"")+(!0===r.leftLabel?" reverse":""))),S=i((()=>{let t=!0===v.value?"truthy":!0===b.value?"falsy":"indet",n=void 0===r.color||!0!==r.keepColor&&("toggle"===e?!0!==v.value:!0===b.value)?"":` text-${r.color}`;return`q-${e}__inner relative-position non-selectable q-${e}__inner--${t}${n}`})),C=oi(i((()=>{let e={type:"checkbox"};return void 0!==r.name&&Object.assign(e,{".checked":v.value,"^checked":!0===v.value?"checked":void 0,name:r.name,value:!0===g.value?r.val:r.trueValue}),e}))),T=i((()=>{let t={tabindex:w.value,role:"toggle"===e?"switch":"checkbox","aria-label":r.label,"aria-checked":!0===y.value?"mixed":!0===v.value?"true":"false"};return!0===r.disable&&(t["aria-disabled"]="true"),t}));function E(e){void 0!==e&&(J(e),f(e)),!0!==r.disable&&l("update:modelValue",function(){if(!0===g.value){if(!0===v.value){let e=r.modelValue.slice();return e.splice(_.value,1),e}return r.modelValue.concat([r.val])}if(!0===v.value){if("ft"!==r.toggleOrder||!1===r.toggleIndeterminate)return r.falseValue}else{if(!0!==b.value)return"ft"!==r.toggleOrder?r.trueValue:r.falseValue;if("ft"===r.toggleOrder||!1===r.toggleIndeterminate)return r.trueValue}return r.indeterminateValue}(),e)}function P(e){(13===e.keyCode||32===e.keyCode)&&J(e)}function A(e){(13===e.keyCode||32===e.keyCode)&&E(e)}let L=t(v,y);return Object.assign(u,{toggle:E}),()=>{let t=L();!0!==r.disable&&C(t,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);let a=[n("div",{class:S.value,style:m.value,"aria-hidden":"true"},t)];null!==p.value&&a.push(p.value);let i=void 0!==r.label?pt(o.default,[r.label]):dt(o.default);return void 0!==i&&a.push(n("div",{class:`q-${e}__label q-anchor--skip`},i)),n("div",{ref:h,class:x.value,...T.value,onClick:E,onKeydown:P,onKeyup:A},a)}}var Bi=$({name:"QCheckbox",props:Di,emits:qi,setup(e){let t=n("div",{key:"svg",class:"q-checkbox__bg absolute"},[n("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[n("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),n("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]);return ji("checkbox",(function(a,r){let o=i((()=>(!0===a.value?e.checkedIcon:!0===r.value?e.indeterminateIcon:e.uncheckedIcon)||null));return()=>null!==o.value?[n("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[n(Lt,{class:"q-checkbox__icon",name:o.value})])]:[t]}))}}),Fi={xs:8,sm:10,md:14,lg:20,xl:24},$i=$({name:"QChip",props:{...Nt,...ut,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:t,emit:a}){let{proxy:{$q:r}}=k(),o=It(e,r),s=ct(e,Fi),l=i((()=>!0===e.selected||void 0!==e.icon)),u=i((()=>!0===e.selected?e.iconSelected||r.iconSet.chip.selected:e.icon)),c=i((()=>e.iconRemove||r.iconSet.chip.remove)),d=i((()=>!1===e.disable&&(!0===e.clickable||null!==e.selected))),h=i((()=>{let t=!0===e.outline&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(!1===e.outline&&void 0!==e.color?` bg-${e.color}`:"")+(t?` text-${t} q-chip--colored`:"")+(!0===e.disable?" disabled":"")+(!0===e.dense?" q-chip--dense":"")+(!0===e.outline?" q-chip--outline":"")+(!0===e.selected?" q-chip--selected":"")+(!0===d.value?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(!0===e.square?" q-chip--square":"")+(!0===o.value?" q-chip--dark q-dark":"")})),p=i((()=>{let t=!0===e.disable?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0};return{chip:t,remove:{...t,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||r.lang.label.remove}}}));function f(e){13===e.keyCode&&m(e)}function m(t){e.disable||(a("update:selected",!e.selected),a("click",t))}function g(t){(void 0===t.keyCode||13===t.keyCode)&&(J(t),!1===e.disable&&(a("update:modelValue",!1),a("remove")))}return()=>{if(!1===e.modelValue)return;let a={class:h.value,style:s.value};return!0===d.value&&Object.assign(a,p.value.chip,{onClick:m,onKeyup:f}),mt("div",a,function(){let a=[];!0===d.value&&a.push(n("div",{class:"q-focus-helper"})),!0===l.value&&a.push(n(Lt,{class:"q-chip__icon q-chip__icon--left",name:u.value}));let i=void 0!==e.label?[n("div",{class:"ellipsis"},[e.label])]:void 0;return a.push(n("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},ft(t.default,i))),e.iconRight&&a.push(n(Lt,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),!0===e.removable&&a.push(n(Lt,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:c.value,...p.value.remove,onClick:g,onKeyup:g})),a}(),"ripple",!1!==e.ripple&&!0!==e.disable,(()=>[[mn,e.ripple]]))}}}),Vi={...ut,min:{type:Number,default:0},max:{type:Number,default:100},color:String,centerColor:String,trackColor:String,fontSize:String,rounded:Boolean,thickness:{type:Number,default:.2,validator:e=>e>=0&&e<=1},angle:{type:Number,default:0},showValue:Boolean,reverse:Boolean,instantFeedback:Boolean},Ui=100*Math.PI,Hi=Math.round(1e3*Ui)/1e3,Wi=$({name:"QCircularProgress",props:{...Vi,value:{type:Number,default:0},animationSpeed:{type:[String,Number],default:600},indeterminate:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=ct(e),o=i((()=>{let t=(!0===a.lang.rtl?-1:1)*e.angle;return{transform:e.reverse!==(!0===a.lang.rtl)?`scale3d(-1, 1, 1) rotate3d(0, 0, 1, ${-90-t}deg)`:`rotate3d(0, 0, 1, ${t-90}deg)`}})),s=i((()=>!0!==e.instantFeedback&&!0!==e.indeterminate?{transition:`stroke-dashoffset ${e.animationSpeed}ms ease 0s, stroke ${e.animationSpeed}ms ease`}:"")),l=i((()=>100/(1-e.thickness/2))),u=i((()=>`${l.value/2} ${l.value/2} ${l.value} ${l.value}`)),c=i((()=>Je(e.value,e.min,e.max))),d=i((()=>e.max-e.min)),h=i((()=>e.thickness/2*l.value)),p=i((()=>{let t=(e.max-c.value)/d.value,n=!0===e.rounded&&c.value{let a=[];void 0!==e.centerColor&&"transparent"!==e.centerColor&&a.push(n("circle",{class:`q-circular-progress__center text-${e.centerColor}`,fill:"currentColor",r:50-h.value/2,cx:l.value,cy:l.value})),void 0!==e.trackColor&&"transparent"!==e.trackColor&&a.push(f({cls:"track",thickness:h.value,offset:0,color:e.trackColor})),a.push(f({cls:"circle",thickness:h.value,offset:p.value,color:e.color,rounded:!0===e.rounded?"round":void 0}));let i=[n("svg",{class:"q-circular-progress__svg",style:o.value,viewBox:u.value,"aria-hidden":"true"},a)];return!0===e.showValue&&i.push(n("div",{class:"q-circular-progress__text absolute-full row flex-center content-center",style:{fontSize:e.fontSize}},void 0!==t.default?t.default():[n("div",c.value)])),n("div",{class:`q-circular-progress q-circular-progress--${!0===e.indeterminate?"in":""}determinate`,style:r.value,role:"progressbar","aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":!0===e.indeterminate?void 0:c.value},ft(t.internal,i))}}});function Gi(e,t,n){let a,i=Y(e),r=i.left-t.event.x,o=i.top-t.event.y,s=Math.abs(r),l=Math.abs(o),u=t.direction;!0===u.horizontal&&!0!==u.vertical?a=r<0?"left":"right":!0!==u.horizontal&&!0===u.vertical?a=o<0?"up":"down":!0===u.up&&o<0?(a="up",s>l&&(!0===u.left&&r<0?a="left":!0===u.right&&r>0&&(a="right"))):!0===u.down&&o>0?(a="down",s>l&&(!0===u.left&&r<0?a="left":!0===u.right&&r>0&&(a="right"))):!0===u.left&&r<0?(a="left",s0&&(a="down"))):!0===u.right&&r>0&&(a="right",s0&&(a="down")));let c=!1;if(void 0===a&&!1===n){if(!0===t.event.isFirst||void 0===t.event.lastDir)return{};a=t.event.lastDir,c=!0,"left"===a||"right"===a?(i.left-=r,s=0,r=0):(i.top-=o,l=0,o=0)}return{synthetic:c,payload:{evt:e,touch:!0!==t.event.mouse,mouse:!0===t.event.mouse,position:i,direction:a,isFirst:t.event.isFirst,isFinal:!0===n,duration:Date.now()-t.event.time,distance:{x:s,y:l},offset:{x:r,y:o},delta:{x:i.left-t.event.lastX,y:i.top-t.event.lastY}}}}var Yi=0,Ki=V({name:"touch-pan",beforeMount(e,{value:t,modifiers:n}){if(!0!==n.mouse&&!0!==j.has.touch)return;function a(e,t){!0===n.mouse&&!0===t?J(e):(!0===n.stop&&Q(e),!0===n.prevent&&Z(e))}let i={uid:"qvtp_"+Yi++,handler:t,modifiers:n,direction:fi(n),noop:W,mouseStart(e){gi(e,i)&&G(e)&&(ee(i,"temp",[[document,"mousemove","move","notPassiveCapture"],[document,"mouseup","end","passiveCapture"]]),i.start(e,!0))},touchStart(e){if(gi(e,i)){let t=e.target;ee(i,"temp",[[t,"touchmove","move","notPassiveCapture"],[t,"touchcancel","end","passiveCapture"],[t,"touchend","end","passiveCapture"]]),i.start(e)}},start(t,a){if(!0===j.is.firefox&&X(e,!0),i.lastEvt=t,!0===a||!0===n.stop){if(!0!==i.direction.all&&(!0!==a||!0!==i.modifiers.mouseAllDir&&!0!==i.modifiers.mousealldir)){let e=-1!==t.type.indexOf("mouse")?new MouseEvent(t.type,t):new TouchEvent(t.type,t);!0===t.defaultPrevented&&Z(e),!0===t.cancelBubble&&Q(e),Object.assign(e,{qKeyEvent:t.qKeyEvent,qClickOutside:t.qClickOutside,qAnchorHandled:t.qAnchorHandled,qClonedBy:void 0===t.qClonedBy?[i.uid]:t.qClonedBy.concat(i.uid)}),i.initialEvent={target:t.target,event:e}}Q(t)}let{left:r,top:o}=Y(t);i.event={x:r,y:o,time:Date.now(),mouse:!0===a,detected:!1,isFirst:!0,isFinal:!1,lastX:r,lastY:o}},move(e){if(void 0===i.event)return;let t=Y(e),r=t.left-i.event.x,o=t.top-i.event.y;if(0===r&&0===o)return;i.lastEvt=e;let s=!0===i.event.mouse,l=()=>{let t;a(e,s),!0!==n.preserveCursor&&!0!==n.preservecursor&&(t=document.documentElement.style.cursor||"",document.documentElement.style.cursor="grabbing"),!0===s&&document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),Mn(),i.styleCleanup=e=>{if(i.styleCleanup=void 0,void 0!==t&&(document.documentElement.style.cursor=t),document.body.classList.remove("non-selectable"),!0===s){let t=()=>{document.body.classList.remove("no-pointer-events--children")};void 0!==e?setTimeout((()=>{t(),e()}),50):t()}else void 0!==e&&e()}};if(!0===i.event.detected){!0!==i.event.isFirst&&a(e,i.event.mouse);let{payload:t,synthetic:n}=Gi(e,i,!1);return void(void 0!==t&&(!1===i.handler(t)?i.end(e):(void 0===i.styleCleanup&&!0===i.event.isFirst&&l(),i.event.lastX=t.position.left,i.event.lastY=t.position.top,i.event.lastDir=!0===n?void 0:t.direction,i.event.isFirst=!1)))}if(!0===i.direction.all||!0===s&&(!0===i.modifiers.mouseAllDir||!0===i.modifiers.mousealldir))return l(),i.event.detected=!0,void i.move(e);let u=Math.abs(r),c=Math.abs(o);u!==c&&(!0===i.direction.horizontal&&u>c||!0===i.direction.vertical&&u0||!0===i.direction.left&&u>c&&r<0||!0===i.direction.right&&u>c&&r>0?(i.event.detected=!0,i.move(e)):i.end(e,!0))},end(t,n){if(void 0!==i.event){if(te(i,"temp"),!0===j.is.firefox&&X(e,!1),!0===n)void 0!==i.styleCleanup&&i.styleCleanup(),!0!==i.event.detected&&void 0!==i.initialEvent&&i.initialEvent.target.dispatchEvent(i.initialEvent.event);else if(!0===i.event.detected){!0===i.event.isFirst&&i.handler(Gi(void 0===t?i.lastEvt:t,i).payload);let{payload:e}=Gi(void 0===t?i.lastEvt:t,i,!0),n=()=>{i.handler(e)};void 0!==i.styleCleanup?i.styleCleanup(n):n()}i.event=void 0,i.initialEvent=void 0,i.lastEvt=void 0}}};if(e.__qtouchpan=i,!0===n.mouse){let t=!0===n.mouseCapture||!0===n.mousecapture?"Capture":"";ee(i,"main",[[e,"mousedown","mouseStart",`passive${t}`]])}!0===j.has.touch&&ee(i,"main",[[e,"touchstart","touchStart","passive"+(!0===n.capture?"Capture":"")],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){let n=e.__qtouchpan;void 0!==n&&(t.oldValue!==t.value&&("function"!=typeof value&&n.end(),n.handler=t.value),n.direction=fi(t.modifiers))},beforeUnmount(e){let t=e.__qtouchpan;void 0!==t&&(void 0!==t.event&&t.end(),te(t,"main"),te(t,"temp"),!0===j.is.firefox&&X(e,!1),void 0!==t.styleCleanup&&t.styleCleanup(),delete e.__qtouchpan)}}),Qi="q-slider__marker-labels",Zi=e=>({value:e}),Ji=({marker:e})=>n("div",{key:e.value,style:e.style,class:e.classes},e.label),Xi=[34,37,40,33,39,38],er={...Nt,...ii,min:{type:Number,default:0},max:{type:Number,default:100},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},snap:Boolean,vertical:Boolean,reverse:Boolean,color:String,markerLabelsClass:String,label:Boolean,labelColor:String,labelTextColor:String,labelAlways:Boolean,switchLabelSide:Boolean,markers:[Boolean,Number],markerLabels:[Boolean,Array,Object,Function],switchMarkerLabelsSide:Boolean,trackImg:String,trackColor:String,innerTrackImg:String,innerTrackColor:String,selectionColor:String,selectionImg:String,thumbSize:{type:String,default:"20px"},trackSize:{type:String,default:"4px"},disable:Boolean,readonly:Boolean,dense:Boolean,tabindex:[String,Number],thumbColor:String,thumbPath:{type:String,default:"M 4, 10 a 6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"}},tr=["pan","update:modelValue","change"];function nr({updateValue:e,updatePosition:t,getDragging:r,formAttrs:o}){let{props:s,emit:l,slots:u,proxy:{$q:c}}=k(),d=It(s,c),h=oi(o),p=a(!1),f=a(!1),m=a(!1),_=a(!1),v=i((()=>!0===s.vertical?"--v":"--h")),b=i((()=>"-"+(!0===s.switchLabelSide?"switched":"standard"))),y=i((()=>!0===s.vertical?!0===s.reverse:s.reverse!==(!0===c.lang.rtl))),w=i((()=>!0===isNaN(s.innerMin)||s.innerMin!0===isNaN(s.innerMax)||s.innerMax>s.max?s.max:s.innerMax)),S=i((()=>!0!==s.disable&&!0!==s.readonly&&w.value{if(0===s.step)return e=>e;let e=(String(s.step).trim().split(".")[1]||"").length;return t=>parseFloat(t.toFixed(e))})),T=i((()=>0===s.step?1:s.step)),E=i((()=>!0===S.value?s.tabindex||0:-1)),P=i((()=>s.max-s.min)),A=i((()=>x.value-w.value)),L=i((()=>J(w.value))),M=i((()=>J(x.value))),R=i((()=>!0===s.vertical?!0===y.value?"bottom":"top":!0===y.value?"right":"left")),z=i((()=>!0===s.vertical?"height":"width")),N=i((()=>!0===s.vertical?"width":"height")),I=i((()=>!0===s.vertical?"vertical":"horizontal")),O=i((()=>{let e={role:"slider","aria-valuemin":w.value,"aria-valuemax":x.value,"aria-orientation":I.value,"data-step":s.step};return!0===s.disable?e["aria-disabled"]="true":!0===s.readonly&&(e["aria-readonly"]="true"),e})),D=i((()=>`q-slider q-slider${v.value} q-slider--${!0===p.value?"":"in"}active inline no-wrap `+(!0===s.vertical?"row":"column")+(!0===s.disable?" disabled":" q-slider--enabled"+(!0===S.value?" q-slider--editable":""))+("both"===m.value?" q-slider--focus":"")+(s.label||!0===s.labelAlways?" q-slider--label":"")+(!0===s.labelAlways?" q-slider--label-always":"")+(!0===d.value?" q-slider--dark":"")+(!0===s.dense?" q-slider--dense q-slider--dense"+v.value:"")));function q(e){let t="q-slider__"+e;return`${t} ${t}${v.value} ${t}${v.value}${b.value}`}function j(e){let t="q-slider__"+e;return`${t} ${t}${v.value}`}let B=i((()=>{let e=s.selectionColor||s.color;return"q-slider__selection absolute"+(void 0!==e?` text-${e}`:"")})),F=i((()=>j("markers")+" absolute overflow-hidden")),$=i((()=>j("track-container"))),V=i((()=>q("pin"))),U=i((()=>q("label"))),H=i((()=>q("text-container"))),W=i((()=>q("marker-labels-container")+(void 0!==s.markerLabelsClass?` ${s.markerLabelsClass}`:""))),G=i((()=>"q-slider__track relative-position no-outline"+(void 0!==s.trackColor?` bg-${s.trackColor}`:""))),K=i((()=>{let e={[N.value]:s.trackSize};return void 0!==s.trackImg&&(e.backgroundImage=`url(${s.trackImg}) !important`),e})),Q=i((()=>"q-slider__inner absolute"+(void 0!==s.innerTrackColor?` bg-${s.innerTrackColor}`:""))),Z=i((()=>{let e=M.value-L.value,t={[R.value]:100*L.value+"%",[z.value]:0===e?"2px":100*e+"%"};return void 0!==s.innerTrackImg&&(t.backgroundImage=`url(${s.innerTrackImg}) !important`),t}));function J(e){return 0===P.value?0:(e-s.min)/P.value}let X=i((()=>!0===$e(s.markers)?s.markers:T.value)),ee=i((()=>{let e=[],t=X.value,n=s.max,a=s.min;do{e.push(a),a+=t}while(a{let e=` ${Qi}${v.value}-`;return Qi+`${e}${!0===s.switchMarkerLabelsSide?"switched":"standard"}${e}${!0===y.value?"rtl":"ltr"}`})),ne=i((()=>!1===s.markerLabels?null:function(e){if(!1===e)return null;if(!0===e)return ee.value.map(Zi);if("function"==typeof e)return ee.value.map((t=>{let n=e(t);return!0===je(n)?{...n,value:t}:{value:t,label:n}}));let t=({value:e})=>e>=s.min&&e<=s.max;return!0===Array.isArray(e)?e.map((e=>!0===je(e)?e:{value:e})).filter(t):Object.keys(e).map((t=>{let n=e[t],a=Number(t);return!0===je(n)?{...n,value:a}:{value:a,label:n}})).filter(t)}(s.markerLabels).map(((e,t)=>({index:t,value:e.value,label:e.label||e.value,classes:te.value+(void 0!==e.classes?" "+e.classes:""),style:{...re(e.value),...e.style||{}}}))))),ae=i((()=>({markerList:ne.value,markerMap:oe.value,classes:te.value,getStyle:re}))),ie=i((()=>{let e=0===A.value?"2px":100*X.value/A.value;return{...Z.value,backgroundSize:!0===s.vertical?`2px ${e}%`:`${e}% 2px`}}));function re(e){return{[R.value]:100*(e-s.min)/P.value+"%"}}let oe=i((()=>{if(!1===s.markerLabels)return null;let e={};return ne.value.forEach((t=>{e[t.value]=t})),e}));let se=i((()=>[[Ki,le,void 0,{[I.value]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]));function le(n){!0===n.isFinal?(void 0!==_.value&&(t(n.evt),!0===n.touch&&e(!0),_.value=void 0,l("pan","end")),p.value=!1,m.value=!1):!0===n.isFirst?(_.value=r(n.evt),t(n.evt),e(),p.value=!0,l("pan","start")):(t(n.evt),e())}function ue(){m.value=!1}function ce(){f.value=!1,p.value=!1,e(!0),ue(),document.removeEventListener("mouseup",ce,!0)}return g((()=>{document.removeEventListener("mouseup",ce,!0)})),{state:{active:p,focus:m,preventFocus:f,dragging:_,editable:S,classes:D,tabindex:E,attributes:O,roundValueFn:C,keyStep:T,trackLen:P,innerMin:w,innerMinRatio:L,innerMax:x,innerMaxRatio:M,positionProp:R,sizeProp:z,isReversed:y},methods:{onActivate:function(n){t(n,r(n)),e(),f.value=!0,p.value=!0,document.addEventListener("mouseup",ce,!0)},onMobileClick:function(n){t(n,r(n)),e(!0)},onBlur:ue,onKeyup:function(t){Xi.includes(t.keyCode)&&e(!0)},getContent:function(e,t,a,i){let r=[];"transparent"!==s.innerTrackColor&&r.push(n("div",{key:"inner",class:Q.value,style:Z.value})),"transparent"!==s.selectionColor&&r.push(n("div",{key:"selection",class:B.value,style:e.value})),!1!==s.markers&&r.push(n("div",{key:"marker",class:F.value,style:ie.value})),i(r);let o=[mt("div",{key:"trackC",class:$.value,tabindex:t.value,...a.value},[n("div",{class:G.value,style:K.value},r)],"slide",S.value,(()=>se.value))];if(!1!==s.markerLabels){o[!0===s.switchMarkerLabelsSide?"unshift":"push"](n("div",{key:"markerL",class:W.value},function(){if(void 0!==u["marker-label-group"])return u["marker-label-group"](ae.value);let e=u["marker-label"]||Ji;return ne.value.map((t=>e({marker:t,...ae.value})))}()))}return o},getThumbRenderFn:function(e){let t=i((()=>!1!==f.value||m.value!==e.focusValue&&"both"!==m.value?"":" q-slider--focus")),a=i((()=>`q-slider__thumb q-slider__thumb${v.value} q-slider__thumb${v.value}-${!0===y.value?"rtl":"ltr"} absolute non-selectable`+t.value+(void 0!==e.thumbColor.value?` text-${e.thumbColor.value}`:""))),r=i((()=>({width:s.thumbSize,height:s.thumbSize,[R.value]:100*e.ratio.value+"%",zIndex:m.value===e.focusValue?2:void 0}))),o=i((()=>void 0!==e.labelColor.value?` text-${e.labelColor.value}`:"")),l=i((()=>function(e){if(!0===s.vertical)return null;let t=c.lang.rtl!==s.reverse?1-e:e;return{transform:`translateX(calc(${2*t-1} * ${s.thumbSize} / 2 + ${50-100*t}%))`}}(e.ratio.value))),u=i((()=>"q-slider__text"+(void 0!==e.labelTextColor.value?` text-${e.labelTextColor.value}`:"")));return()=>{let t=[n("svg",{class:"q-slider__thumb-shape absolute-full",viewBox:"0 0 20 20","aria-hidden":"true"},[n("path",{d:s.thumbPath})]),n("div",{class:"q-slider__focus-ring fit"})];return(!0===s.label||!0===s.labelAlways)&&(t.push(n("div",{class:V.value+" absolute fit no-pointer-events"+o.value},[n("div",{class:U.value,style:{minWidth:s.thumbSize}},[n("div",{class:H.value,style:l.value},[n("span",{class:u.value},e.label.value)])])])),void 0!==s.name&&!0!==s.disable&&h(t,"push")),n("div",{class:a.value,style:r.value,...e.getNodeData()},t)}},convertRatioToModel:function(e){let{min:t,max:n,step:a}=s,i=t+e*(n-t);if(a>0){let e=(i-w.value)%a;i+=(Math.abs(e)>=a/2?(e<0?-1:1)*a:0)-e}return i=C.value(i),Je(i,w.value,x.value)},convertModelToRatio:J,getDraggingRatio:function(e,t){let n=Y(e),a=!0===s.vertical?Je((n.top-t.top)/t.height,0,1):Je((n.left-t.left)/t.width,0,1);return Je(!0===y.value?1-a:a,L.value,M.value)}}}}var ar=()=>({}),ir=$({name:"QSlider",props:{...er,modelValue:{required:!0,default:null,validator:e=>"number"==typeof e||null===e},labelValue:[String,Number]},emits:tr,setup(e,{emit:t}){let{proxy:{$q:o}}=k(),{state:s,methods:l}=nr({updateValue:v,updatePosition:function(t,n=s.dragging.value){let a=l.getDraggingRatio(t,n);d.value=l.convertRatioToModel(a),c.value=!0!==e.snap||0===e.step?a:l.convertModelToRatio(d.value)},getDragging:function(){return u.value.getBoundingClientRect()},formAttrs:ri(e)}),u=a(null),c=a(0),d=a(0);function h(){d.value=null===e.modelValue?s.innerMin.value:Je(e.modelValue,s.innerMin.value,s.innerMax.value)}r((()=>`${e.modelValue}|${s.innerMin.value}|${s.innerMax.value}`),h),h();let p=i((()=>l.convertModelToRatio(d.value))),f=i((()=>!0===s.active.value?c.value:p.value)),m=i((()=>{let t={[s.positionProp.value]:100*s.innerMinRatio.value+"%",[s.sizeProp.value]:100*(f.value-s.innerMinRatio.value)+"%"};return void 0!==e.selectionImg&&(t.backgroundImage=`url(${e.selectionImg}) !important`),t})),g=l.getThumbRenderFn({focusValue:!0,getNodeData:ar,ratio:f,label:i((()=>void 0!==e.labelValue?e.labelValue:d.value)),thumbColor:i((()=>e.thumbColor||e.color)),labelColor:i((()=>e.labelColor)),labelTextColor:i((()=>e.labelTextColor))}),_=i((()=>!0!==s.editable.value?{}:!0===o.platform.is.mobile?{onClick:l.onMobileClick}:{onMousedown:l.onActivate,onFocus:b,onBlur:l.onBlur,onKeydown:y,onKeyup:l.onKeyup}));function v(n){d.value!==e.modelValue&&t("update:modelValue",d.value),!0===n&&t("change",d.value)}function b(){s.focus.value=!0}function y(t){if(!Xi.includes(t.keyCode))return;J(t);let n=([34,33].includes(t.keyCode)?10:1)*s.keyStep.value,a=([34,37,40].includes(t.keyCode)?-1:1)*(!0===s.isReversed.value?-1:1)*(!0===e.vertical?-1:1)*n;d.value=Je(s.roundValueFn.value(d.value+a),s.innerMin.value,s.innerMax.value),v()}return()=>{let t=l.getContent(m,s.tabindex,_,(e=>{e.push(g())}));return n("div",{ref:u,class:s.classes.value+(null===e.modelValue?" q-slider--no-value":""),...s.attributes.value,"aria-valuenow":e.modelValue},t)}}});function rr(){let e=a(!O.value);return!1===e.value&&m((()=>{e.value=!0})),{isHydrated:e}}var or=typeof ResizeObserver<"u",sr=!0===or?{}:{style:"display:block;position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1;",url:"about:blank"},lr=$({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(e,{emit:t}){let a,i=null,r={width:-1,height:-1};function o(t){!0===t||0===e.debounce||"0"===e.debounce?s():null===i&&(i=setTimeout(s,e.debounce))}function s(){if(null!==i&&(clearTimeout(i),i=null),a){let{offsetWidth:e,offsetHeight:n}=a;(e!==r.width||n!==r.height)&&(r={width:e,height:n},t("resize",r))}}let{proxy:l}=k();if(l.trigger=o,!0===or){let e,t=n=>{a=l.$el.parentNode,a?(e=new ResizeObserver(o),e.observe(a),s()):!0!==n&&d((()=>{t(!0)}))};return m((()=>{t()})),g((()=>{null!==i&&clearTimeout(i),void 0!==e&&(void 0!==e.disconnect?e.disconnect():a&&e.unobserve(a))})),W}{let e,t=function(){null!==i&&(clearTimeout(i),i=null),void 0!==e&&(void 0!==e.removeEventListener&&e.removeEventListener("resize",o,H.passive),e=void 0)},r=function(){t(),a&&a.contentDocument&&(e=a.contentDocument.defaultView,e.addEventListener("resize",o,H.passive),s())},{isHydrated:u}=rr();return m((()=>{d((()=>{a=l.$el,a&&r()}))})),g(t),()=>{if(!0===u.value)return n("object",{class:"q--avoid-card-border",style:sr.style,tabindex:-1,type:"text/html",data:sr.url,"aria-hidden":"true",onLoad:r})}}}}),ur=!1;{let e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});let t=document.createElement("div");Object.assign(t.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(t),e.scrollLeft=-1e3,ur=e.scrollLeft>=0,e.remove()}function cr(e,t,n){let a=!0===n?["left","right"]:["top","bottom"];return`absolute-${!0===t?a[0]:a[1]}${e?` text-${e}`:""}`}var dr=["left","center","right","justify"],hr=$({name:"QTabs",props:{modelValue:[Number,String],align:{type:String,default:"center",validator:e=>dr.includes(e)},breakpoint:{type:[String,Number],default:600},vertical:Boolean,shrink:Boolean,stretch:Boolean,activeClass:String,activeColor:String,activeBgColor:String,indicatorColor:String,leftIcon:String,rightIcon:String,outsideArrows:Boolean,mobileArrows:Boolean,switchIndicator:Boolean,narrowIndicator:Boolean,inlineLabel:Boolean,noCaps:Boolean,dense:Boolean,contentClass:String,"onUpdate:modelValue":[Function,Array]},setup(e,{slots:t,emit:o}){let s,{proxy:l}=k(),{$q:u}=l,{registerTick:c}=na(),{registerTick:d}=na(),{registerTick:f}=na(),{registerTimeout:m,removeTimeout:_}=aa(),{registerTimeout:v,removeTimeout:b}=aa(),y=a(null),x=a(null),S=a(e.modelValue),C=a(!1),T=a(!0),E=a(!1),P=a(!1),A=[],L=a(0),M=a(!1),R=null,z=null,N=i((()=>({activeClass:e.activeClass,activeColor:e.activeColor,activeBgColor:e.activeBgColor,indicatorClass:cr(e.indicatorColor,e.switchIndicator,e.vertical),narrowIndicator:e.narrowIndicator,inlineLabel:e.inlineLabel,noCaps:e.noCaps}))),I=i((()=>{let e=L.value,t=S.value;for(let n=0;n`q-tabs__content--align-${!0===C.value?"left":!0===P.value?"justify":e.align}`)),D=i((()=>`q-tabs row no-wrap items-center q-tabs--${!0===C.value?"":"not-"}scrollable q-tabs--${!0===e.vertical?"vertical":"horizontal"} q-tabs__arrows--${!0===e.outsideArrows?"outside":"inside"} q-tabs--mobile-with${!0===e.mobileArrows?"":"out"}-arrows`+(!0===e.dense?" q-tabs--dense":"")+(!0===e.shrink?" col-shrink":"")+(!0===e.stretch?" self-stretch":""))),q=i((()=>"q-tabs__content scroll--mobile row no-wrap items-center self-stretch hide-scrollbar relative-position "+O.value+(void 0!==e.contentClass?` ${e.contentClass}`:""))),j=i((()=>!0===e.vertical?{container:"height",content:"offsetHeight",scroll:"scrollHeight"}:{container:"width",content:"offsetWidth",scroll:"scrollWidth"})),B=i((()=>!0!==e.vertical&&!0===u.lang.rtl)),F=i((()=>!1===ur&&!0===B.value));function $({name:t,setCurrent:n,skipEmit:a}){S.value!==t&&(!0!==a&&void 0!==e["onUpdate:modelValue"]&&o("update:modelValue",t),(!0===n||void 0===e["onUpdate:modelValue"])&&(function(t,n){let a=null!=t&&""!==t?A.find((e=>e.name.value===t)):null,i=null!=n&&""!==n?A.find((e=>e.name.value===n)):null;if(!0===re)re=!1;else if(a&&i){let t=a.tabIndicatorRef.value,n=i.tabIndicatorRef.value;null!==R&&(clearTimeout(R),R=null),t.style.transition="none",t.style.transform="none",n.style.transition="none",n.style.transform="none";let r=t.getBoundingClientRect(),o=n.getBoundingClientRect();n.style.transform=!0===e.vertical?`translate3d(0,${r.top-o.top}px,0) scale3d(1,${o.height?r.height/o.height:1},1)`:`translate3d(${r.left-o.left}px,0,0) scale3d(${o.width?r.width/o.width:1},1,1)`,f((()=>{R=setTimeout((()=>{R=null,n.style.transition="transform .25s cubic-bezier(.4, 0, .2, 1)",n.style.transform="none"}),70)}))}i&&!0===C.value&&H(i.rootRef.value)}(S.value,t),S.value=t))}function V(){c((()=>{U({width:y.value.offsetWidth,height:y.value.offsetHeight})}))}function U(t){if(void 0===j.value||null===x.value)return;let n=t[j.value.container],a=Math.min(x.value[j.value.scroll],Array.prototype.reduce.call(x.value.children,((e,t)=>e+(t[j.value.content]||0)),0)),i=n>0&&a>n;C.value=i,!0===i&&d(W),P.value=n0&&(x.value[!0===e.vertical?"scrollTop":"scrollLeft"]+=Math.ceil(s),W())}function W(){let t=x.value;if(null===t)return;let n=t.getBoundingClientRect(),a=!0===e.vertical?t.scrollTop:Math.abs(t.scrollLeft);!0===B.value?(T.value=Math.ceil(a+n.width)0):(T.value=a>0,E.value=!0===e.vertical?Math.ceil(a+n.height){!0===function(e){let t=x.value,{get:n,set:a}=Z.value,i=!1,r=n(t),o=e=e)&&(i=!0,r=e),a(t,r),W(),i}(e)&&Q()}),5)}function Y(){G(!0===F.value?Number.MAX_SAFE_INTEGER:0)}function K(){G(!0===F.value?0:Number.MAX_SAFE_INTEGER)}function Q(){null!==z&&(clearInterval(z),z=null)}r(B,W),r((()=>e.modelValue),(e=>{$({name:e,setCurrent:!0,skipEmit:!0})})),r((()=>e.outsideArrows),V);let Z=i((()=>!0===F.value?{get:e=>Math.abs(e.scrollLeft),set:(e,t)=>{e.scrollLeft=-t}}:!0===e.vertical?{get:e=>e.scrollTop,set:(e,t)=>{e.scrollTop=t}}:{get:e=>e.scrollLeft,set:(e,t)=>{e.scrollLeft=t}}));function J(e,t){for(let n in e)if(e[n]!==t[n])return!1;return!0}function X(){let e=null,t={matchedLen:0,queryDiff:9999,hrefLen:0},n=A.filter((e=>void 0!==e.routeData&&!0===e.routeData.hasRouterLink.value)),{hash:a,query:i}=l.$route,r=Object.keys(i).length;for(let o of n){let n=!0===o.routeData.exact.value;if(!0!==o.routeData[!0===n?"linkIsExactActive":"linkIsActive"].value)continue;let{hash:s,query:l,matched:u,href:c}=o.routeData.resolvedLink.value,d=Object.keys(l).length;if(!0===n){if(s!==a||d!==r||!1===J(i,l))continue;e=o.name.value;break}if(""!==s&&s!==a||0!==d&&!1===J(l,i))continue;let h={matchedLen:u.length,queryDiff:r-d,hrefLen:c.length-s.length};if(h.matchedLen>t.matchedLen)e=o.name.value,t=h;else if(h.matchedLen===t.matchedLen){if(h.queryDifft.hrefLen&&(e=o.name.value,t=h)}}null!==e||!0!==A.some((e=>void 0===e.routeData&&e.name.value===S.value))?$({name:e,setCurrent:!0}):re=!1}function ee(e){if(_(),!0!==M.value&&null!==y.value&&e.target&&"function"==typeof e.target.closest){let t=e.target.closest(".q-tab");t&&!0===y.value.contains(t)&&(M.value=!0,!0===C.value&&H(t))}}function te(){m((()=>{M.value=!1}),30)}function ne(){!1===oe.avoidRouteWatcher?v(X):b()}function ae(){if(void 0===s){let e=r((()=>l.$route.fullPath),ne);s=()=>{e(),s=void 0}}}let ie,re,oe={currentModel:S,tabProps:N,hasFocus:M,hasActiveTab:I,registerTab:function(e){A.push(e),L.value++,V(),void 0===e.routeData||void 0===l.$route?v((()=>{if(!0===C.value){let e=S.value,t=null!=e&&""!==e?A.find((t=>t.name.value===e)):null;t&&H(t.rootRef.value)}})):(ae(),!0===e.routeData.hasRouterLink.value&&ne())},unregisterTab:function(e){A.splice(A.indexOf(e),1),L.value--,V(),void 0!==s&&void 0!==e.routeData&&(!0===A.every((e=>void 0===e.routeData))&&s(),ne())},verifyRouteModel:ne,updateModel:$,onKbdNavigate:function(t,n){let a=Array.prototype.filter.call(x.value.children,(e=>e===n||e.matches&&!0===e.matches(".q-tab.q-focusable"))),i=a.length;if(0===i)return;if(36===t)return H(a[0]),a[0].focus(),!0;if(35===t)return H(a[i-1]),a[i-1].focus(),!0;let r=t===(!0===e.vertical?38:37),o=t===(!0===e.vertical?40:39),s=!0===r?-1:!0===o?1:void 0;if(void 0!==s){let e=!0===B.value?-1:1,t=a.indexOf(n)+s*e;return t>=0&&t{ie=void 0!==s,se()})),h((()=>{!0===ie&&(ae(),re=!0,ne()),V()})),()=>n("div",{ref:y,class:D.value,role:"tablist",onFocusin:ee,onFocusout:te},[n(lr,{onResize:U}),n("div",{ref:x,class:q.value,onScroll:W},dt(t.default)),n(Lt,{class:"q-tabs__arrow q-tabs__arrow--left absolute q-tab__icon"+(!0===T.value?"":" q-tabs__arrow--faded"),name:e.leftIcon||u.iconSet.tabs[!0===e.vertical?"up":"left"],onMousedownPassive:Y,onTouchstartPassive:Y,onMouseupPassive:Q,onMouseleavePassive:Q,onTouchendPassive:Q}),n(Lt,{class:"q-tabs__arrow q-tabs__arrow--right absolute q-tab__icon"+(!0===E.value?"":" q-tabs__arrow--faded"),name:e.rightIcon||u.iconSet.tabs[!0===e.vertical?"down":"right"],onMousedownPassive:K,onTouchstartPassive:K,onMouseupPassive:Q,onMouseleavePassive:Q,onTouchendPassive:Q})])}}),pr=0,fr=["click","keydown"],mr={icon:String,label:[Number,String],alert:[Boolean,String],alertIcon:String,name:{type:[Number,String],default:()=>"t_"+pr++},noCaps:Boolean,tabindex:[String,Number],disable:Boolean,contentClass:String,ripple:{type:[Boolean,Object],default:!0}};function gr(e,t,r,o){let s=y(ze,Ie);if(s===Ie)return console.error("QTab/QRouteTab component needs to be child of QTabs"),Ie;let{proxy:l}=k(),u=a(null),c=a(null),d=a(null),h=i((()=>!0!==e.disable&&!1!==e.ripple&&Object.assign({keyCodes:[13,32],early:!0},!0===e.ripple?{}:e.ripple))),p=i((()=>s.currentModel.value===e.name)),f=i((()=>"q-tab relative-position self-stretch flex flex-center text-center"+(!0===p.value?" q-tab--active"+(s.tabProps.value.activeClass?" "+s.tabProps.value.activeClass:"")+(s.tabProps.value.activeColor?` text-${s.tabProps.value.activeColor}`:"")+(s.tabProps.value.activeBgColor?` bg-${s.tabProps.value.activeBgColor}`:""):" q-tab--inactive")+(e.icon&&e.label&&!1===s.tabProps.value.inlineLabel?" q-tab--full":"")+(!0===e.noCaps||!0===s.tabProps.value.noCaps?" q-tab--no-caps":"")+(!0===e.disable?" disabled":" q-focusable q-hoverable cursor-pointer")+(void 0!==o?o.linkClass.value:""))),_=i((()=>"q-tab__content self-stretch flex-center relative-position q-anchor--skip non-selectable "+(!0===s.tabProps.value.inlineLabel?"row no-wrap q-tab__content--inline":"column")+(void 0!==e.contentClass?` ${e.contentClass}`:""))),v=i((()=>!0===e.disable||!0===s.hasFocus.value||!1===p.value&&!0===s.hasActiveTab.value?-1:e.tabindex||0));function b(t,n){if(!0!==n&&null!==u.value&&u.value.focus(),!0!==e.disable){if(void 0===o)return s.updateModel({name:e.name}),void r("click",t);if(!0===o.hasRouterLink.value){let n=(n={})=>{let a,i=void 0===n.to||!0===qe(n.to,e.to)?s.avoidRouteWatcher=Xa():null;return o.navigateToRouterLink(t,{...n,returnRouterError:!0}).catch((e=>{a=e})).then((t=>{if(i===s.avoidRouteWatcher&&(s.avoidRouteWatcher=!1,void 0===a&&(void 0===t||void 0!==t.message&&!0===t.message.startsWith("Avoided redundant navigation"))&&s.updateModel({name:e.name})),!0===n.returnRouterError)return void 0!==a?Promise.reject(a):t}))};return r("click",t,n),void(!0!==t.defaultPrevented&&n())}r("click",t)}else void 0!==o&&!0===o.hasRouterLink.value&&J(t)}function w(e){pe(e,[13,32])?b(e,!0):!0!==he(e)&&e.keyCode>=35&&e.keyCode<=40&&!0!==e.altKey&&!0!==e.metaKey&&!0===s.onKbdNavigate(e.keyCode,l.$el)&&J(e),r("keydown",e)}let x={name:i((()=>e.name)),rootRef:c,tabIndicatorRef:d,routeData:o};return g((()=>{s.unregisterTab(x)})),m((()=>{s.registerTab(x)})),{renderTab:function(a,i){let r={ref:c,class:f.value,tabindex:v.value,role:"tab","aria-selected":!0===p.value?"true":"false","aria-disabled":!0===e.disable?"true":void 0,onClick:b,onKeydown:w,...i};return A(n(a,r,function(){let a=s.tabProps.value.narrowIndicator,i=[],r=n("div",{ref:d,class:["q-tab__indicator",s.tabProps.value.indicatorClass]});void 0!==e.icon&&i.push(n(Lt,{class:"q-tab__icon",name:e.icon})),void 0!==e.label&&i.push(n("div",{class:"q-tab__label"},e.label)),!1!==e.alert&&i.push(void 0!==e.alertIcon?n(Lt,{class:"q-tab__alert-icon",color:!0!==e.alert?e.alert:void 0,name:e.alertIcon}):n("div",{class:"q-tab__alert"+(!0!==e.alert?` text-${e.alert}`:"")})),!0===a&&i.push(r);let o=[n("div",{class:"q-focus-helper",tabindex:-1,ref:u}),n("div",{class:_.value},pt(t.default,i))];return!1===a&&o.push(r),o}()),[[mn,h.value]])},$tabs:s}}var _r=$({name:"QTab",props:mr,emits:fr,setup(e,{slots:t,emit:n}){let{renderTab:a}=gr(e,t,n);return()=>a("div")}}),vr=$({name:"QTabPanels",props:{...ki,...Nt},emits:xi,setup(e,{slots:t}){let n=k(),a=It(e,n.proxy.$q),{updatePanelsList:r,getPanelContent:o,panelDirectives:s}=Si(),l=i((()=>"q-tab-panels q-panel-parent"+(!0===a.value?" q-tab-panels--dark q-dark":"")));return()=>(r(t),mt("div",{class:l.value},o(),"pan",e.swipeable,(()=>s.value)))}}),br=$({name:"QTabPanel",props:yi,setup:(e,{slots:t})=>()=>n("div",{class:"q-tab-panel",role:"tabpanel"},dt(t.default))}),yr=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,wr=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,kr=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,xr=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,Sr=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,Cr={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>yr.test(e),hexaColor:e=>wr.test(e),hexOrHexaColor:e=>kr.test(e),rgbColor:e=>xr.test(e),rgbaColor:e=>Sr.test(e),rgbOrRgbaColor:e=>xr.test(e)||Sr.test(e),hexOrRgbColor:e=>yr.test(e)||xr.test(e),hexaOrRgbaColor:e=>wr.test(e)||Sr.test(e),anyColor:e=>kr.test(e)||xr.test(e)||Sr.test(e)},Tr={testPattern:Cr},Er=/^rgb(a)?\((\d{1,3}),(\d{1,3}),(\d{1,3}),?([01]?\.?\d*?)?\)$/;function Pr({r:e,g:t,b:n,a:a}){let i=void 0!==a;if(e=Math.round(e),t=Math.round(t),n=Math.round(n),e>255||t>255||n>255||i&&a>100)throw new TypeError("Expected 3 numbers below 256 (and optionally one below 100)");return a=i?(256|Math.round(255*a/100)).toString(16).slice(1):"","#"+(n|t<<8|e<<16|1<<24).toString(16).slice(1)+a}function Ar({r:e,g:t,b:n,a:a}){return`rgb${void 0!==a?"a":""}(${e},${t},${n}${void 0!==a?","+a/100:""})`}function Lr(e){if("string"!=typeof e)throw new TypeError("Expected a string");3===(e=e.replace(/^#/,"")).length?e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]:4===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);let t=parseInt(e,16);return e.length>6?{r:t>>24&255,g:t>>16&255,b:t>>8&255,a:Math.round((255&t)/2.55)}:{r:t>>16,g:t>>8&255,b:255&t}}function Mr({h:e,s:t,v:n,a:a}){let i,r,o;t/=100,n/=100,e/=360;let s=Math.floor(6*e),l=6*e-s,u=n*(1-t),c=n*(1-l*t),d=n*(1-(1-l)*t);switch(s%6){case 0:i=n,r=d,o=u;break;case 1:i=c,r=n,o=u;break;case 2:i=u,r=n,o=d;break;case 3:i=u,r=c,o=n;break;case 4:i=d,r=u,o=n;break;case 5:i=n,r=u,o=c}return{r:Math.round(255*i),g:Math.round(255*r),b:Math.round(255*o),a:a}}function Rr({r:e,g:t,b:n,a:a}){let i,r=Math.max(e,t,n),o=Math.min(e,t,n),s=r-o,l=0===r?0:s/r,u=r/255;switch(r){case o:i=0;break;case e:i=t-n+s*(t1)throw new TypeError("Expected offset to be between -1 and 1");let{r:n,g:a,b:i,a:r}=zr(e),o=void 0!==r?r/100:0;return Pr({r:n,g:a,b:i,a:Math.round(100*Math.min(1,Math.max(0,o+t)))})},getPaletteColor:function(e){if("string"!=typeof e)throw new TypeError("Expected a string as color");let t=document.createElement("div");t.className=`text-${e} invisible fixed no-pointer-events`,document.body.appendChild(t);let n=getComputedStyle(t).getPropertyValue("color");return t.remove(),Pr(zr(n))}},Or=["rgb(255,204,204)","rgb(255,230,204)","rgb(255,255,204)","rgb(204,255,204)","rgb(204,255,230)","rgb(204,255,255)","rgb(204,230,255)","rgb(204,204,255)","rgb(230,204,255)","rgb(255,204,255)","rgb(255,153,153)","rgb(255,204,153)","rgb(255,255,153)","rgb(153,255,153)","rgb(153,255,204)","rgb(153,255,255)","rgb(153,204,255)","rgb(153,153,255)","rgb(204,153,255)","rgb(255,153,255)","rgb(255,102,102)","rgb(255,179,102)","rgb(255,255,102)","rgb(102,255,102)","rgb(102,255,179)","rgb(102,255,255)","rgb(102,179,255)","rgb(102,102,255)","rgb(179,102,255)","rgb(255,102,255)","rgb(255,51,51)","rgb(255,153,51)","rgb(255,255,51)","rgb(51,255,51)","rgb(51,255,153)","rgb(51,255,255)","rgb(51,153,255)","rgb(51,51,255)","rgb(153,51,255)","rgb(255,51,255)","rgb(255,0,0)","rgb(255,128,0)","rgb(255,255,0)","rgb(0,255,0)","rgb(0,255,128)","rgb(0,255,255)","rgb(0,128,255)","rgb(0,0,255)","rgb(128,0,255)","rgb(255,0,255)","rgb(245,0,0)","rgb(245,123,0)","rgb(245,245,0)","rgb(0,245,0)","rgb(0,245,123)","rgb(0,245,245)","rgb(0,123,245)","rgb(0,0,245)","rgb(123,0,245)","rgb(245,0,245)","rgb(214,0,0)","rgb(214,108,0)","rgb(214,214,0)","rgb(0,214,0)","rgb(0,214,108)","rgb(0,214,214)","rgb(0,108,214)","rgb(0,0,214)","rgb(108,0,214)","rgb(214,0,214)","rgb(163,0,0)","rgb(163,82,0)","rgb(163,163,0)","rgb(0,163,0)","rgb(0,163,82)","rgb(0,163,163)","rgb(0,82,163)","rgb(0,0,163)","rgb(82,0,163)","rgb(163,0,163)","rgb(92,0,0)","rgb(92,46,0)","rgb(92,92,0)","rgb(0,92,0)","rgb(0,92,46)","rgb(0,92,92)","rgb(0,46,92)","rgb(0,0,92)","rgb(46,0,92)","rgb(92,0,92)","rgb(255,255,255)","rgb(205,205,205)","rgb(178,178,178)","rgb(153,153,153)","rgb(127,127,127)","rgb(102,102,102)","rgb(76,76,76)","rgb(51,51,51)","rgb(25,25,25)","rgb(0,0,0)"],Dr="M5 5 h10 v10 h-10 v-10 z",qr=$({name:"QColor",props:{...Nt,...ii,modelValue:String,defaultValue:String,defaultView:{type:String,default:"spectrum",validator:e=>["spectrum","tune","palette"].includes(e)},formatModel:{type:String,default:"auto",validator:e=>["auto","hex","rgb","hexa","rgba"].includes(e)},palette:Array,noHeader:Boolean,noHeaderTabs:Boolean,noFooter:Boolean,square:Boolean,flat:Boolean,bordered:Boolean,disable:Boolean,readonly:Boolean},emits:["update:modelValue","change"],setup(e,{emit:t}){let{proxy:o}=k(),{$q:s}=o,l=It(e,s),{getCache:u}=bi(),c=a(null),h=a(null),p=i((()=>"auto"===e.formatModel?null:-1!==e.formatModel.indexOf("hex"))),f=i((()=>"auto"===e.formatModel?null:-1!==e.formatModel.indexOf("a"))),m=a("auto"===e.formatModel?void 0===e.modelValue||null===e.modelValue||""===e.modelValue||e.modelValue.startsWith("#")?"hex":"rgb":e.formatModel.startsWith("hex")?"hex":"rgb"),g=a(e.defaultView),_=a(z(e.modelValue||e.defaultValue)),v=i((()=>!0!==e.disable&&!0!==e.readonly)),b=i((()=>void 0===e.modelValue||null===e.modelValue||""===e.modelValue||e.modelValue.startsWith("#"))),y=i((()=>null!==p.value?p.value:b.value)),w=oi(i((()=>({type:"hidden",name:e.name,value:_.value[!0===y.value?"hex":"rgb"]})))),x=i((()=>null!==f.value?f.value:void 0!==_.value.a)),S=i((()=>({backgroundColor:_.value.rgb||"#000"}))),C=i((()=>"q-color-picker__header-content q-color-picker__header-content--"+(void 0!==_.value.a&&_.value.a<65||Nr(_.value)>.4?"light":"dark"))),T=i((()=>({background:`hsl(${_.value.h},100%,50%)`}))),E=i((()=>({top:100-_.value.v+"%",[!0===s.lang.rtl?"right":"left"]:`${_.value.s}%`}))),P=i((()=>void 0!==e.palette&&0!==e.palette.length?e.palette:Or)),A=i((()=>"q-color-picker"+(!0===e.bordered?" q-color-picker--bordered":"")+(!0===e.square?" q-color-picker--square no-border-radius":"")+(!0===e.flat?" q-color-picker--flat no-shadow":"")+(!0===e.disable?" disabled":"")+(!0===l.value?" q-color-picker--dark q-dark":""))),L=i((()=>!0===e.disable?{"aria-disabled":"true"}:{})),M=i((()=>[[Ki,j,void 0,{prevent:!0,stop:!0,mouse:!0}]]));function R(e,n){_.value.hex=Pr(e),_.value.rgb=Ar(e),_.value.r=e.r,_.value.g=e.g,_.value.b=e.b,_.value.a=e.a;let a=_.value[!0===y.value?"hex":"rgb"];t("update:modelValue",a),!0===n&&t("change",a)}function z(t){let n=void 0!==f.value?f.value:"auto"===e.formatModel?null:-1!==e.formatModel.indexOf("a");if("string"!=typeof t||0===t.length||!0!==Cr.anyColor(t.replace(/ /g,"")))return{h:0,s:0,v:0,r:0,g:0,b:0,a:!0===n?100:void 0,hex:void 0,rgb:void 0};let a=zr(t);return!0===n&&void 0===a.a&&(a.a=100),a.hex=Pr(a),a.rgb=Ar(a),Object.assign(a,Rr(a))}function N(e,t,n){let a=c.value;if(null===a)return;let i=a.clientWidth,r=a.clientHeight,o=a.getBoundingClientRect(),l=Math.min(i,Math.max(0,e-o.left));!0===s.lang.rtl&&(l=i-l);let u=Math.min(r,Math.max(0,t-o.top)),d=Math.round(100*l/i),h=Math.round(100*Math.max(0,Math.min(1,-u/r+1))),p=Mr({h:_.value.h,s:d,v:h,a:!0===x.value?_.value.a:void 0});_.value.s=d,_.value.v=h,R(p,n)}function I(e,t){let n=Math.round(e),a=Mr({h:n,s:_.value.s,v:_.value.v,a:!0===x.value?_.value.a:void 0});_.value.h=n,R(a,t)}function O(e){I(e,!0)}function D(e,t,n,a,i){if(void 0!==a&&Q(a),!/^[0-9]+$/.test(e))return void(!0===i&&o.$forceUpdate());let r=Math.floor(Number(e));if(r<0||r>n)return void(!0===i&&o.$forceUpdate());let s={r:"r"===t?r:_.value.r,g:"g"===t?r:_.value.g,b:"b"===t?r:_.value.b,a:!0===x.value?"a"===t?r:_.value.a:void 0};if("a"!==t){let e=Rr(s);_.value.h=e.h,_.value.s=e.s,_.value.v=e.v}if(R(s,i),void 0!==a&&!0!==i&&void 0!==a.target.selectionEnd){let e=a.target.selectionEnd;d((()=>{a.target.setSelectionRange(e,e)}))}}function q(e,t){let n,a=e.target.value;if(Q(e),"hex"===m.value){if(a.length!==(!0===x.value?9:7)||!/^#[0-9A-Fa-f]+$/.test(a))return!0;n=Lr(a)}else{let e;if(!a.endsWith(")"))return!0;if(!0!==x.value&&a.startsWith("rgb(")){if(e=a.substring(4,a.length-1).split(",").map((e=>parseInt(e,10))),3!==e.length||!/^rgb\([0-9]{1,3},[0-9]{1,3},[0-9]{1,3}\)$/.test(a))return!0}else{if(!0!==x.value||!a.startsWith("rgba("))return!0;{if(e=a.substring(5,a.length-1).split(","),4!==e.length||!/^rgba\([0-9]{1,3},[0-9]{1,3},[0-9]{1,3},(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/.test(a))return!0;for(let t=0;t<3;t++){let n=parseInt(e[t],10);if(n<0||n>255)return!0;e[t]=n}let t=parseFloat(e[3]);if(t<0||t>1)return!0;e[3]=t}}if(e[0]<0||e[0]>255||e[1]<0||e[1]>255||e[2]<0||e[2]>255||!0===x.value&&(e[3]<0||e[3]>1))return!0;n={r:e[0],g:e[1],b:e[2],a:!0===x.value?100*e[3]:void 0}}let i=Rr(n);if(_.value.h=i.h,_.value.s=i.s,_.value.v=i.v,R(n,t),!0!==t){let t=e.target.selectionEnd;d((()=>{e.target.setSelectionRange(t,t)}))}}function j(e){e.isFinal?N(e.position.left,e.position.top,!0):B(e)}r((()=>e.modelValue),(t=>{let n=z(t||e.defaultValue);n.hex!==_.value.hex&&(_.value=n)})),r((()=>e.defaultValue),(t=>{if(!e.modelValue&&t){let e=z(t);e.hex!==_.value.hex&&(_.value=e)}}));let B=hn((e=>{N(e.position.left,e.position.top)}),20);function F(e){N(e.pageX-window.pageXOffset,e.pageY-window.pageYOffset,!0)}function $(e){N(e.pageX-window.pageXOffset,e.pageY-window.pageYOffset)}function V(e){null!==h.value&&(h.value.$el.style.opacity=e?1:0)}function U(e){m.value=e}function H(e){g.value=e}function W(){let e={ref:c,class:"q-color-picker__spectrum non-selectable relative-position cursor-pointer"+(!0!==v.value?" readonly":""),style:T.value,...!0===v.value?{onClick:F,onMousedown:$}:{}},t=[n("div",{style:{paddingBottom:"100%"}}),n("div",{class:"q-color-picker__spectrum-white absolute-full"}),n("div",{class:"q-color-picker__spectrum-black absolute-full"}),n("div",{class:"absolute",style:E.value},[void 0!==_.value.hex?n("div",{class:"q-color-picker__spectrum-circle"}):null])],a=[n(ir,{class:"q-color-picker__hue non-selectable",modelValue:_.value.h,min:0,max:360,trackSize:"8px",innerTrackColor:"transparent",selectionColor:"transparent",readonly:!0!==v.value,thumbPath:Dr,"onUpdate:modelValue":I,onChange:O})];return!0===x.value&&a.push(n(ir,{class:"q-color-picker__alpha non-selectable",modelValue:_.value.a,min:0,max:100,trackSize:"8px",trackColor:"white",innerTrackColor:"transparent",selectionColor:"transparent",trackImg:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==",readonly:!0!==v.value,hideSelection:!0,thumbPath:Dr,...u("alphaSlide",{"onUpdate:modelValue":e=>D(e,"a",100),onChange:e=>D(e,"a",100,void 0,!0)})})),[mt("div",e,t,"spec",v.value,(()=>M.value)),n("div",{class:"q-color-picker__sliders"},a)]}function G(){return[n("div",{class:"row items-center no-wrap"},[n("div","R"),n(ir,{modelValue:_.value.r,min:0,max:255,color:"red",dark:l.value,readonly:!0!==v.value,...u("rSlide",{"onUpdate:modelValue":e=>D(e,"r",255),onChange:e=>D(e,"r",255,void 0,!0)})}),n("input",{value:_.value.r,maxlength:3,readonly:!0!==v.value,onChange:Q,...u("rIn",{onInput:e=>D(e.target.value,"r",255,e),onBlur:e=>D(e.target.value,"r",255,e,!0)})})]),n("div",{class:"row items-center no-wrap"},[n("div","G"),n(ir,{modelValue:_.value.g,min:0,max:255,color:"green",dark:l.value,readonly:!0!==v.value,...u("gSlide",{"onUpdate:modelValue":e=>D(e,"g",255),onChange:e=>D(e,"g",255,void 0,!0)})}),n("input",{value:_.value.g,maxlength:3,readonly:!0!==v.value,onChange:Q,...u("gIn",{onInput:e=>D(e.target.value,"g",255,e),onBlur:e=>D(e.target.value,"g",255,e,!0)})})]),n("div",{class:"row items-center no-wrap"},[n("div","B"),n(ir,{modelValue:_.value.b,min:0,max:255,color:"blue",readonly:!0!==v.value,dark:l.value,...u("bSlide",{"onUpdate:modelValue":e=>D(e,"b",255),onChange:e=>D(e,"b",255,void 0,!0)})}),n("input",{value:_.value.b,maxlength:3,readonly:!0!==v.value,onChange:Q,...u("bIn",{onInput:e=>D(e.target.value,"b",255,e),onBlur:e=>D(e.target.value,"b",255,e,!0)})})]),!0===x.value?n("div",{class:"row items-center no-wrap"},[n("div","A"),n(ir,{modelValue:_.value.a,color:"grey",readonly:!0!==v.value,dark:l.value,...u("aSlide",{"onUpdate:modelValue":e=>D(e,"a",100),onChange:e=>D(e,"a",100,void 0,!0)})}),n("input",{value:_.value.a,maxlength:3,readonly:!0!==v.value,onChange:Q,...u("aIn",{onInput:e=>D(e.target.value,"a",100,e),onBlur:e=>D(e.target.value,"a",100,e,!0)})})]):null]}function Y(){return[n("div",{class:"row items-center q-color-picker__palette-rows"+(!0===v.value?" q-color-picker__palette-rows--editable":"")},P.value.map((e=>n("div",{class:"q-color-picker__cube col-auto",style:{backgroundColor:e},...!0===v.value?u("palette#"+e,{onClick:()=>{!function(e){let t=z(e),n={r:t.r,g:t.g,b:t.b,a:t.a};void 0===n.a&&(n.a=_.value.a),_.value.h=t.h,_.value.s=t.s,_.value.v=t.v,R(n,!0)}(e)}}):{}}))))]}return()=>{let t=[n(vr,{modelValue:g.value,animated:!0},(()=>[n(br,{class:"q-color-picker__spectrum-tab overflow-hidden",name:"spectrum"},W),n(br,{class:"q-pa-md q-color-picker__tune-tab",name:"tune"},G),n(br,{class:"q-color-picker__palette-tab",name:"palette"},Y)]))];return void 0!==e.name&&!0!==e.disable&&w(t,"push"),!0!==e.noHeader&&t.unshift(function(){let t=[];return!0!==e.noHeaderTabs&&t.push(n(hr,{class:"q-color-picker__header-tabs",modelValue:m.value,dense:!0,align:"justify","onUpdate:modelValue":U},(()=>[n(_r,{label:"HEX"+(!0===x.value?"A":""),name:"hex",ripple:!1}),n(_r,{label:"RGB"+(!0===x.value?"A":""),name:"rgb",ripple:!1})]))),t.push(n("div",{class:"q-color-picker__header-banner row flex-center no-wrap"},[n("input",{class:"fit",value:_.value[m.value],...!0!==v.value?{readonly:!0}:{},...u("topIn",{onInput:e=>{V(!0===q(e))},onChange:Q,onBlur:e=>{!0===q(e,!0)&&o.$forceUpdate(),V(!1)}})}),n(Lt,{ref:h,class:"q-color-picker__error-icon absolute no-pointer-events",name:s.iconSet.type.negative})])),n("div",{class:"q-color-picker__header relative-position overflow-hidden"},[n("div",{class:"q-color-picker__header-bg absolute-full"}),n("div",{class:C.value,style:S.value},t)])}()),!0!==e.noFooter&&t.push(n("div",{class:"q-color-picker__footer relative-position overflow-hidden"},[n(hr,{class:"absolute-full",modelValue:g.value,dense:!0,align:"justify","onUpdate:modelValue":H},(()=>[n(_r,{icon:s.iconSet.colorPicker.spectrum,name:"spectrum",ripple:!1}),n(_r,{icon:s.iconSet.colorPicker.tune,name:"tune",ripple:!1}),n(_r,{icon:s.iconSet.colorPicker.palette,name:"palette",ripple:!1})]))])),n("div",{class:A.value,...L.value},t)}}}),jr=[-61,9,38,199,426,686,756,818,1111,1181,1210,1635,2060,2097,2192,2262,2324,2394,2456,3178];function Br(e,t,n){return"[object Date]"===Object.prototype.toString.call(e)&&(n=e.getDate(),t=e.getMonth()+1,e=e.getFullYear()),function(e){let t,n,a,i=Wr(e).gy,r=i-621,o=Ur(r,!1),s=Hr(i,3,o.march);if(a=e-s,a>=0){if(a<=185)return n=1+Gr(a,31),t=Yr(a,31)+1,{jy:r,jm:n,jd:t};a-=186}else r-=1,a+=179,1===o.leap&&(a+=1);return n=7+Gr(a,30),t=Yr(a,30)+1,{jy:r,jm:n,jd:t}}(Hr(e,t,n))}function Fr(e,t,n){return Wr(function(e,t,n){let a=Ur(e,!0);return Hr(a.gy,3,a.march)+31*(t-1)-Gr(t,7)*(t-7)+n-1}(e,t,n))}function $r(e){return 0===function(e){let t,n,a,i,r,o=jr.length,s=jr[0];if(e=jr[o-1])throw new Error("Invalid Jalaali year "+e);for(r=1;r=jr[s-1])throw new Error("Invalid Jalaali year "+e);for(o=1;oKr.includes(e),default:"gregorian"},landscape:Boolean,color:String,textColor:String,square:Boolean,flat:Boolean,bordered:Boolean,readonly:Boolean,disable:Boolean},Zr=["update:modelValue"];function Jr(e){return e.year+"/"+et(e.month)+"/"+et(e.day)}function Xr(e,t){let n=i((()=>!0!==e.disable&&!0!==e.readonly)),a=i((()=>!0===n.value?0:-1)),r=i((()=>{let t=[];return void 0!==e.color&&t.push(`bg-${e.color}`),void 0!==e.textColor&&t.push(`text-${e.textColor}`),t.join(" ")}));return{editable:n,tabindex:a,headerClass:r,getLocale:function(){return void 0!==e.locale?{...t.lang.date,...e.locale}:t.lang.date},getCurrentDate:function(t){let n=new Date,a=!0===t?null:0;if("persian"===e.calendar){let e=Br(n);return{year:e.jy,month:e.jm,day:e.jd}}return{year:n.getFullYear(),month:n.getMonth()+1,day:n.getDate(),hour:a,minute:a,second:a,millisecond:a}}}}var eo=864e5,to=36e5,no=6e4,ao="YYYY-MM-DDTHH:mm:ss.SSSZ",io=/\[((?:[^\]\\]|\\]|\\)*)\]|do|d{1,4}|Mo|M{1,4}|m{1,2}|wo|w{1,2}|Qo|Do|DDDo|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]/g,ro=/(\[[^\]]*\])|do|d{1,4}|Mo|M{1,4}|m{1,2}|wo|w{1,2}|Qo|Do|DDDo|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]|([.*+:?^,\s${}()|\\]+)/g,oo={};function so(e,t){return void 0!==e?e:void 0!==t?t.date:ye.date}function lo(e,t=""){let n=e>0?"-":"+",a=Math.abs(e),i=a%60;return n+et(Math.floor(a/60))+t+et(i)}function uo(e,t,n){let a=co(t),i=new Date(e),r=void 0!==a.year||void 0!==a.month||void 0!==a.date?function(e,t,n){let a=e.getFullYear(),i=e.getMonth(),r=e.getDate();return void 0!==t.year&&(a+=n*t.year,delete t.year),void 0!==t.month&&(i+=n*t.month,delete t.month),e.setDate(1),e.setMonth(2),e.setFullYear(a),e.setMonth(i),e.setDate(Math.min(r,yo(e))),void 0!==t.date&&(e.setDate(e.getDate()+n*t.date),delete t.date),e}(i,a,n):i;for(let e in a){let t=Ze(e);r[`set${t}`](r[`get${t}`]()+n*a[e])}return r}function co(e){let t={...e};return void 0!==e.years&&(t.year=e.years,delete t.years),void 0!==e.months&&(t.month=e.months,delete t.months),void 0!==e.days&&(t.date=e.days,delete t.days),void 0!==e.day&&(t.date=e.day,delete t.day),void 0!==e.hour&&(t.hours=e.hour,delete t.hour),void 0!==e.minute&&(t.minutes=e.minute,delete t.minute),void 0!==e.second&&(t.seconds=e.second,delete t.second),void 0!==e.millisecond&&(t.milliseconds=e.millisecond,delete t.millisecond),t}function ho(e,t,n){let a=co(t),i=!0===n?"UTC":"",r=new Date(e),o=void 0!==a.year||void 0!==a.month||void 0!==a.date?function(e,t,n){let a=void 0!==t.year?t.year:e[`get${n}FullYear`](),i=void 0!==t.month?t.month-1:e[`get${n}Month`](),r=new Date(a,i+1,0).getDate(),o=Math.min(r,void 0!==t.date?t.date:e[`get${n}Date`]());return e[`set${n}Date`](1),e[`set${n}Month`](2),e[`set${n}FullYear`](a),e[`set${n}Month`](i),e[`set${n}Date`](o),delete t.year,delete t.month,delete t.date,e}(r,a,i):r;for(let e in a){o[`set${i}${e.charAt(0).toUpperCase()+e.slice(1)}`](a[e])}return o}function po(e,t,n,a,i){let r={year:null,month:null,day:null,hour:null,minute:null,second:null,millisecond:null,timezoneOffset:null,dateHash:null,timeHash:null};if(void 0!==i&&Object.assign(r,i),null==e||""===e||"string"!=typeof e)return r;void 0===t&&(t=ao);let o=so(n,xe.props),s=o.months,l=o.monthsShort,{regex:u,map:c}=function(e,t){let n="("+t.days.join("|")+")",a=e+n;if(void 0!==oo[a])return oo[a];let i="("+t.daysShort.join("|")+")",r="("+t.months.join("|")+")",o="("+t.monthsShort.join("|")+")",s={},l=0,u=e.replace(ro,(e=>{switch(l++,e){case"YY":return s.YY=l,"(-?\\d{1,2})";case"YYYY":return s.YYYY=l,"(-?\\d{1,4})";case"M":return s.M=l,"(\\d{1,2})";case"Mo":return s.M=l++,"(\\d{1,2}(st|nd|rd|th))";case"MM":return s.M=l,"(\\d{2})";case"MMM":return s.MMM=l,o;case"MMMM":return s.MMMM=l,r;case"D":return s.D=l,"(\\d{1,2})";case"Do":return s.D=l++,"(\\d{1,2}(st|nd|rd|th))";case"DD":return s.D=l,"(\\d{2})";case"H":return s.H=l,"(\\d{1,2})";case"HH":return s.H=l,"(\\d{2})";case"h":return s.h=l,"(\\d{1,2})";case"hh":return s.h=l,"(\\d{2})";case"m":return s.m=l,"(\\d{1,2})";case"mm":return s.m=l,"(\\d{2})";case"s":return s.s=l,"(\\d{1,2})";case"ss":return s.s=l,"(\\d{2})";case"S":return s.S=l,"(\\d{1})";case"SS":return s.S=l,"(\\d{2})";case"SSS":return s.S=l,"(\\d{3})";case"A":return s.A=l,"(AM|PM)";case"a":return s.a=l,"(am|pm)";case"aa":return s.aa=l,"(a\\.m\\.|p\\.m\\.)";case"ddd":return i;case"dddd":return n;case"Q":case"d":case"E":return"(\\d{1})";case"do":return l++,"(\\d{1}(st|nd|rd|th))";case"Qo":return"(1st|2nd|3rd|4th)";case"DDD":case"DDDD":return"(\\d{1,3})";case"DDDo":return l++,"(\\d{1,3}(st|nd|rd|th))";case"w":return"(\\d{1,2})";case"wo":return l++,"(\\d{1,2}(st|nd|rd|th))";case"ww":return"(\\d{2})";case"Z":return s.Z=l,"(Z|[+-]\\d{2}:\\d{2})";case"ZZ":return s.ZZ=l,"(Z|[+-]\\d{2}\\d{2})";case"X":return s.X=l,"(-?\\d+)";case"x":return s.x=l,"(-?\\d{4,})";default:return l--,"["===e[0]&&(e=e.substring(1,e.length-1)),e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}})),c={map:s,regex:new RegExp("^"+u)};return oo[a]=c,c}(t,o),d=e.match(u);if(null===d)return r;let h="";if(void 0!==c.X||void 0!==c.x){let e=parseInt(d[void 0!==c.X?c.X:c.x],10);if(!0===isNaN(e)||e<0)return r;let t=new Date(e*(void 0!==c.X?1e3:1));r.year=t.getFullYear(),r.month=t.getMonth()+1,r.day=t.getDate(),r.hour=t.getHours(),r.minute=t.getMinutes(),r.second=t.getSeconds(),r.millisecond=t.getMilliseconds()}else{if(void 0!==c.YYYY)r.year=parseInt(d[c.YYYY],10);else if(void 0!==c.YY){let e=parseInt(d[c.YY],10);r.year=e<0?e:2e3+e}if(void 0!==c.M){if(r.month=parseInt(d[c.M],10),r.month<1||r.month>12)return r}else void 0!==c.MMM?r.month=l.indexOf(d[c.MMM])+1:void 0!==c.MMMM&&(r.month=s.indexOf(d[c.MMMM])+1);if(void 0!==c.D){if(r.day=parseInt(d[c.D],10),null===r.year||null===r.month||r.day<1)return r;let e="persian"!==a?new Date(r.year,r.month,0).getDate():Vr(r.year,r.month);if(r.day>e)return r}void 0!==c.H?r.hour=parseInt(d[c.H],10)%24:void 0!==c.h&&(r.hour=parseInt(d[c.h],10)%12,(c.A&&"PM"===d[c.A]||c.a&&"pm"===d[c.a]||c.aa&&"p.m."===d[c.aa])&&(r.hour+=12),r.hour=r.hour%24),void 0!==c.m&&(r.minute=parseInt(d[c.m],10)%60),void 0!==c.s&&(r.second=parseInt(d[c.s],10)%60),void 0!==c.S&&(r.millisecond=parseInt(d[c.S],10)*10**(3-d[c.S].length)),(void 0!==c.Z||void 0!==c.ZZ)&&(h=void 0!==c.Z?d[c.Z].replace(":",""):d[c.ZZ],r.timezoneOffset=("+"===h[0]?-1:1)*(60*h.slice(1,3)+1*h.slice(3,5)))}return r.dateHash=et(r.year,6)+"/"+et(r.month)+"/"+et(r.day),r.timeHash=et(r.hour)+":"+et(r.minute)+":"+et(r.second)+h,r}function fo(e){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate());t.setDate(t.getDate()-(t.getDay()+6)%7+3);let n=new Date(t.getFullYear(),0,4);n.setDate(n.getDate()-(n.getDay()+6)%7+3);let a=t.getTimezoneOffset()-n.getTimezoneOffset();t.setHours(t.getHours()-a);let i=(t-n)/(7*eo);return 1+Math.floor(i)}function mo(e,t){let n=new Date(e);return!0===t?function(e){return 1e4*e.getFullYear()+100*e.getMonth()+e.getDate()}(n):n.getTime()}function go(e,t,n){let a=new Date(e),i="set"+(!0===n?"UTC":"");switch(t){case"year":case"years":a[`${i}Month`](0);case"month":case"months":a[`${i}Date`](1);case"day":case"days":case"date":a[`${i}Hours`](0);case"hour":case"hours":a[`${i}Minutes`](0);case"minute":case"minutes":a[`${i}Seconds`](0);case"second":case"seconds":a[`${i}Milliseconds`](0)}return a}function _o(e,t,n){return(e.getTime()-e.getTimezoneOffset()*no-(t.getTime()-t.getTimezoneOffset()*no))/n}function vo(e,t,n="days"){let a=new Date(e),i=new Date(t);switch(n){case"years":case"year":return a.getFullYear()-i.getFullYear();case"months":case"month":return 12*(a.getFullYear()-i.getFullYear())+a.getMonth()-i.getMonth();case"days":case"day":case"date":return _o(go(a,"day"),go(i,"day"),eo);case"hours":case"hour":return _o(go(a,"hour"),go(i,"hour"),to);case"minutes":case"minute":return _o(go(a,"minute"),go(i,"minute"),no);case"seconds":case"second":return _o(go(a,"second"),go(i,"second"),1e3)}}function bo(e){return vo(e,go(e,"year"),"days")+1}function yo(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function wo(e){if(e>=11&&e<=13)return`${e}th`;switch(e%10){case 1:return`${e}st`;case 2:return`${e}nd`;case 3:return`${e}rd`}return`${e}th`}var ko={YY(e,t,n){let a=this.YYYY(e,t,n)%100;return a>=0?et(a):"-"+et(Math.abs(a))},YYYY:(e,t,n)=>n??e.getFullYear(),M:e=>e.getMonth()+1,Mo:e=>wo(e.getMonth()+1),MM:e=>et(e.getMonth()+1),MMM:(e,t)=>t.monthsShort[e.getMonth()],MMMM:(e,t)=>t.months[e.getMonth()],Q:e=>Math.ceil((e.getMonth()+1)/3),Qo(e){return wo(this.Q(e))},D:e=>e.getDate(),Do:e=>wo(e.getDate()),DD:e=>et(e.getDate()),DDD:e=>bo(e),DDDo:e=>wo(bo(e)),DDDD:e=>et(bo(e),3),d:e=>e.getDay(),do:e=>wo(e.getDay()),dd:(e,t)=>t.days[e.getDay()].slice(0,2),ddd:(e,t)=>t.daysShort[e.getDay()],dddd:(e,t)=>t.days[e.getDay()],E:e=>e.getDay()||7,w:e=>fo(e),wo:e=>wo(fo(e)),ww:e=>et(fo(e)),H:e=>e.getHours(),HH:e=>et(e.getHours()),h(e){let t=e.getHours();return 0===t?12:t>12?t%12:t},hh(e){return et(this.h(e))},m:e=>e.getMinutes(),mm:e=>et(e.getMinutes()),s:e=>e.getSeconds(),ss:e=>et(e.getSeconds()),S:e=>Math.floor(e.getMilliseconds()/100),SS:e=>et(Math.floor(e.getMilliseconds()/10)),SSS:e=>et(e.getMilliseconds(),3),A:e=>e.getHours()<12?"AM":"PM",a:e=>e.getHours()<12?"am":"pm",aa:e=>e.getHours()<12?"a.m.":"p.m.",Z:(e,t,n,a)=>lo(a??e.getTimezoneOffset(),":"),ZZ:(e,t,n,a)=>lo(a??e.getTimezoneOffset()),X:e=>Math.floor(e.getTime()/1e3),x:e=>e.getTime()};function xo(e,t,n,a,i){if(0!==e&&!e||e===1/0||e===-1/0)return;let r=new Date(e);if(isNaN(r))return;void 0===t&&(t=ao);let o=so(n,xe.props);return t.replace(io,((e,t)=>e in ko?ko[e](r,o,a,i):void 0===t?e:t.split("\\]").join("]")))}var So={isValid:function(e){return"number"==typeof e||!1===isNaN(Date.parse(e))},extractDate:function(e,t,n){let a=po(e,t,n),i=new Date(a.year,null===a.month?null:a.month-1,null===a.day?1:a.day,a.hour,a.minute,a.second,a.millisecond),r=i.getTimezoneOffset();return null===a.timezoneOffset||a.timezoneOffset===r?i:uo(i,{minutes:a.timezoneOffset-r},1)},buildDate:function(e,t){return ho(new Date,e,t)},getDayOfWeek:function(e){let t=new Date(e).getDay();return 0===t?7:t},getWeekOfYear:fo,isBetweenDates:function(e,t,n,a={}){let i=mo(t,a.onlyDate),r=mo(n,a.onlyDate),o=mo(e,a.onlyDate);return(o>i||!0===a.inclusiveFrom&&o===i)&&(o{t=Math.max(t,new Date(e))})),t},getMinDate:function(e){let t=new Date(e);return Array.prototype.slice.call(arguments,1).forEach((e=>{t=Math.min(t,new Date(e))})),t},getDateDiff:vo,getDayOfYear:bo,inferDateFormat:function(e){return!0===Be(e)?"date":"number"==typeof e?"number":"string"},getDateBetween:function(e,t,n){let a=new Date(e);if(t){let e=new Date(t);if(ae)return e}return a},isSameDate:function(e,t,n){let a=new Date(e),i=new Date(t);if(void 0===n)return a.getTime()===i.getTime();switch(n){case"second":case"seconds":if(a.getSeconds()!==i.getSeconds())return!1;case"minute":case"minutes":if(a.getMinutes()!==i.getMinutes())return!1;case"hour":case"hours":if(a.getHours()!==i.getHours())return!1;case"day":case"days":case"date":if(a.getDate()!==i.getDate())return!1;case"month":case"months":if(a.getMonth()!==i.getMonth())return!1;case"year":case"years":if(a.getFullYear()!==i.getFullYear())return!1;break;default:throw new Error(`date isSameDate unknown unit ${n}`)}return!0},daysInMonth:yo,formatDate:xo,clone:function(e){return!0===Be(e)?new Date(e.getTime()):e}},Co=20,To=["Calendar","Years","Months"],Eo=e=>To.includes(e),Po=e=>/^-?[\d]+\/[0-1]\d$/.test(e),Ao=" — ";function Lo(e){return e.year+"/"+et(e.month)}var Mo=$({name:"QDate",props:{...Qr,...ii,...Nt,modelValue:{required:!0,validator:e=>"string"==typeof e||!0===Array.isArray(e)||Object(e)===e||null===e},multiple:Boolean,range:Boolean,title:String,subtitle:String,mask:{...Qr.mask,default:"YYYY/MM/DD"},defaultYearMonth:{type:String,validator:Po},yearsInMonthView:Boolean,events:[Array,Function],eventColor:[String,Function],emitImmediately:Boolean,options:[Array,Function],navigationMinYearMonth:{type:String,validator:Po},navigationMaxYearMonth:{type:String,validator:Po},noUnset:Boolean,firstDayOfWeek:[String,Number],todayBtn:Boolean,minimal:Boolean,defaultView:{type:String,default:"Calendar",validator:Eo}},emits:[...Zr,"rangeStart","rangeEnd","navigation"],setup(e,{slots:t,emit:o}){let s,{proxy:l}=k(),{$q:u}=l,c=It(e,u),{getCache:h}=bi(),{tabindex:p,headerClass:f,getLocale:m,getCurrentDate:g}=Xr(e,u),_=oi(ri(e)),v=a(null),b=a(pe()),y=a(m()),w=i((()=>pe())),x=i((()=>m())),C=i((()=>g())),T=a(me(b.value,y.value)),E=a(e.defaultView),P=i((()=>!0===u.lang.rtl?"right":"left")),A=a(P.value),L=a(P.value),M=T.value.year,R=a(M-M%Co-(M<0?Co:0)),z=a(null),N=i((()=>{let t=!0===e.landscape?"landscape":"portrait";return`q-date q-date--${t} q-date--${t}-${!0===e.minimal?"minimal":"standard"}`+(!0===c.value?" q-date--dark q-dark":"")+(!0===e.bordered?" q-date--bordered":"")+(!0===e.square?" q-date--square no-border-radius":"")+(!0===e.flat?" q-date--flat no-shadow":"")+(!0===e.disable?" disabled":!0===e.readonly?" q-date--readonly":"")})),I=i((()=>e.color||"primary")),O=i((()=>e.textColor||"white")),D=i((()=>!0===e.emitImmediately&&!0!==e.multiple&&!0!==e.range)),q=i((()=>!0===Array.isArray(e.modelValue)?e.modelValue:null!==e.modelValue&&void 0!==e.modelValue?[e.modelValue]:[])),j=i((()=>q.value.filter((e=>"string"==typeof e)).map((e=>fe(e,b.value,y.value))).filter((e=>null!==e.dateHash&&null!==e.day&&null!==e.month&&null!==e.year)))),B=i((()=>{let e=e=>fe(e,b.value,y.value);return q.value.filter((e=>!0===je(e)&&void 0!==e.from&&void 0!==e.to)).map((t=>({from:e(t.from),to:e(t.to)}))).filter((e=>null!==e.from.dateHash&&null!==e.to.dateHash&&e.from.dateHash"persian"!==e.calendar?e=>new Date(e.year,e.month-1,e.day):e=>{let t=Fr(e.year,e.month,e.day);return new Date(t.gy,t.gm-1,t.gd)})),$=i((()=>"persian"===e.calendar?Jr:(e,t,n)=>xo(new Date(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond),void 0===t?b.value:t,void 0===n?y.value:n,e.year,e.timezoneOffset))),V=i((()=>j.value.length+B.value.reduce(((e,t)=>e+1+vo(F.value(t.to),F.value(t.from))),0))),U=i((()=>{if(void 0!==e.title&&null!==e.title&&0!==e.title.length)return e.title;if(null!==z.value){let e=z.value.init,t=F.value(e);return y.value.daysShort[t.getDay()]+", "+y.value.monthsShort[e.month-1]+" "+e.day+Ao+"?"}if(0===V.value)return Ao;if(V.value>1)return`${V.value} ${y.value.pluralDay}`;let t=j.value[0],n=F.value(t);return!0===isNaN(n.valueOf())?Ao:void 0!==y.value.headerTitle?y.value.headerTitle(n,t):y.value.daysShort[n.getDay()]+", "+y.value.monthsShort[t.month-1]+" "+t.day})),H=i((()=>j.value.concat(B.value.map((e=>e.from))).sort(((e,t)=>e.year-t.year||e.month-t.month))[0])),W=i((()=>j.value.concat(B.value.map((e=>e.to))).sort(((e,t)=>t.year-e.year||t.month-e.month))[0])),G=i((()=>{if(void 0!==e.subtitle&&null!==e.subtitle&&0!==e.subtitle.length)return e.subtitle;if(0===V.value)return Ao;if(V.value>1){let e=H.value,t=W.value,n=y.value.monthsShort;return n[e.month-1]+(e.year!==t.year?" "+e.year+Ao+n[t.month-1]+" ":e.month!==t.month?Ao+n[t.month-1]:"")+" "+t.year}return j.value[0].year})),Y=i((()=>{let e=[u.iconSet.datetime.arrowLeft,u.iconSet.datetime.arrowRight];return!0===u.lang.rtl?e.reverse():e})),K=i((()=>void 0!==e.firstDayOfWeek?Number(e.firstDayOfWeek):y.value.firstDayOfWeek)),Q=i((()=>{let e=y.value.daysShort,t=K.value;return t>0?e.slice(t,7).concat(e.slice(0,t)):e})),Z=i((()=>{let t=T.value;return"persian"!==e.calendar?new Date(t.year,t.month,0).getDate():Vr(t.year,t.month)})),J=i((()=>"function"==typeof e.eventColor?e.eventColor:()=>e.eventColor)),X=i((()=>{if(void 0===e.navigationMinYearMonth)return null;let t=e.navigationMinYearMonth.split("/");return{year:parseInt(t[0],10),month:parseInt(t[1],10)}})),ee=i((()=>{if(void 0===e.navigationMaxYearMonth)return null;let t=e.navigationMaxYearMonth.split("/");return{year:parseInt(t[0],10),month:parseInt(t[1],10)}})),te=i((()=>{let e={month:{prev:!0,next:!0},year:{prev:!0,next:!0}};return null!==X.value&&X.value.year>=T.value.year&&(e.year.prev=!1,X.value.year===T.value.year&&X.value.month>=T.value.month&&(e.month.prev=!1)),null!==ee.value&&ee.value.year<=T.value.year&&(e.year.next=!1,ee.value.year===T.value.year&&ee.value.month<=T.value.month&&(e.month.next=!1)),e})),ne=i((()=>{let e={};return j.value.forEach((t=>{let n=Lo(t);void 0===e[n]&&(e[n]=[]),e[n].push(t.day)})),e})),ae=i((()=>{let e={};return B.value.forEach((t=>{let n=Lo(t.from),a=Lo(t.to);if(void 0===e[n]&&(e[n]=[]),e[n].push({from:t.from.day,to:n===a?t.to.day:void 0,range:t}),n12&&(o.year++,o.month=1)}})),e})),ie=i((()=>{if(null===z.value)return;let{init:e,initHash:t,final:n,finalHash:a}=z.value,[i,r]=t<=a?[e,n]:[n,e],o=Lo(i),s=Lo(r);if(o!==re.value&&s!==re.value)return;let l={};return o===re.value?(l.from=i.day,l.includeFrom=!0):l.from=1,s===re.value?(l.to=r.day,l.includeTo=!0):l.to=Z.value,l})),re=i((()=>Lo(T.value))),oe=i((()=>{let t={};if(void 0===e.options){for(let e=1;e<=Z.value;e++)t[e]=!0;return t}let n="function"==typeof e.options?e.options:t=>e.options.includes(t);for(let e=1;e<=Z.value;e++){let a=re.value+"/"+et(e);t[e]=n(a)}return t})),se=i((()=>{let t={};if(void 0===e.events)for(let e=1;e<=Z.value;e++)t[e]=!1;else{let n="function"==typeof e.events?e.events:t=>e.events.includes(t);for(let e=1;e<=Z.value;e++){let a=re.value+"/"+et(e);t[e]=!0===n(a)&&J.value(a)}}return t})),le=i((()=>{let t,n,{year:a,month:i}=T.value;if("persian"!==e.calendar)t=new Date(a,i-1,1),n=new Date(a,i-1,0).getDate();else{let e=Fr(a,i,1);t=new Date(e.gy,e.gm-1,e.gd);let r=i-1,o=a;0===r&&(r=12,o--),n=Vr(o,r)}return{days:t.getDay()-K.value-1,endDay:n}})),ue=i((()=>{let e=[],{days:t,endDay:n}=le.value,a=t<0?t+7:t;if(a<6)for(let t=n-a;t<=n;t++)e.push({i:t,fill:!0});let i=e.length;for(let t=1;t<=Z.value;t++){let n={i:t,event:se.value[t],classes:[]};!0===oe.value[t]&&(n.in=!0,n.flat=!0),e.push(n)}if(void 0!==ne.value[re.value]&&ne.value[re.value].forEach((t=>{let n=i+t-1;Object.assign(e[n],{selected:!0,unelevated:!0,flat:!1,color:I.value,textColor:O.value})})),void 0!==ae.value[re.value]&&ae.value[re.value].forEach((t=>{if(void 0!==t.from){let n=i+t.from-1,a=i+(t.to||Z.value)-1;for(let i=n;i<=a;i++)Object.assign(e[i],{range:t.range,unelevated:!0,color:I.value,textColor:O.value});Object.assign(e[n],{rangeFrom:!0,flat:!1}),void 0!==t.to&&Object.assign(e[a],{rangeTo:!0,flat:!1})}else if(void 0!==t.to){let n=i+t.to-1;for(let a=i;a<=n;a++)Object.assign(e[a],{range:t.range,unelevated:!0,color:I.value,textColor:O.value});Object.assign(e[n],{flat:!1,rangeTo:!0})}else{let n=i+Z.value-1;for(let a=i;a<=n;a++)Object.assign(e[a],{range:t.range,unelevated:!0,color:I.value,textColor:O.value})}})),void 0!==ie.value){let t=i+ie.value.from-1,n=i+ie.value.to-1;for(let a=t;a<=n;a++)e[a].color=I.value,e[a].editRange=!0;!0===ie.value.includeFrom&&(e[t].editRangeFrom=!0),!0===ie.value.includeTo&&(e[n].editRangeTo=!0)}T.value.year===C.value.year&&T.value.month===C.value.month&&(e[i+C.value.day-1].today=!0);let r=e.length%7;if(r>0){let t=7-r;for(let n=1;n<=t;n++)e.push({i:n,fill:!0})}return e.forEach((e=>{let t="q-date__calendar-item ";!0===e.fill?t+="q-date__calendar-item--fill":(t+="q-date__calendar-item--"+(!0===e.in?"in":"out"),void 0!==e.range&&(t+=" q-date__range"+(!0===e.rangeTo?"-to":!0===e.rangeFrom?"-from":"")),!0===e.editRange&&(t+=` q-date__edit-range${!0===e.editRangeFrom?"-from":""}${!0===e.editRangeTo?"-to":""}`),(void 0!==e.range||!0===e.editRange)&&(t+=` text-${e.color}`)),e.classes=t})),e})),ce=i((()=>!0===e.disable?{"aria-disabled":"true"}:{}));function de(){let{year:e,month:t,day:n}=C.value,a={...T.value,year:e,month:t,day:n},i=ne.value[Lo(a)];(void 0===i||!1===i.includes(a.day))&&Te(a),he(a.year,a.month)}function he(e,t){E.value="Calendar",we(e,t)}function pe(){return"persian"===e.calendar?"YYYY/MM/DD":e.mask}function fe(t,n,a){return po(t,n,a,e.calendar,{hour:0,minute:0,second:0,millisecond:0})}function me(t,n){let a=!0===Array.isArray(e.modelValue)?e.modelValue:e.modelValue?[e.modelValue]:[];if(0===a.length)return ge();let i=a[a.length-1],r=fe(void 0!==i.from?i.from:i,t,n);return null===r.dateHash?ge():r}function ge(){let t,n;if(void 0!==e.defaultYearMonth){let a=e.defaultYearMonth.split("/");t=parseInt(a[0],10),n=parseInt(a[1],10)}else{let e=void 0!==C.value?C.value:g();t=e.year,n=e.month}return{year:t,month:n,day:1,hour:0,minute:0,second:0,millisecond:0,dateHash:t+"/"+et(n)+"/01"}}function _e(e){let t=T.value.year,n=Number(T.value.month)+e;13===n?(n=1,t++):0===n&&(n=12,t--),we(t,n),!0===D.value&&xe("month")}function ve(e){we(Number(T.value.year)+e,T.value.month),!0===D.value&&xe("year")}function be(t){we(t,T.value.month),E.value="Years"===e.defaultView?"Months":"Calendar",!0===D.value&&xe("year")}function ye(e){return{year:e.year,month:e.month,day:e.day}}function we(e,t,n){if(null!==X.value&&e<=X.value.year&&((t=ee.value.year&&((t>ee.value.month||e>ee.value.year)&&(t=ee.value.month),e=ee.value.year),void 0!==n){let{hour:e,minute:t,second:a,millisecond:i,timezoneOffset:r,timeHash:o}=n;Object.assign(T.value,{hour:e,minute:t,second:a,millisecond:i,timezoneOffset:r,timeHash:o})}let a=e+"/"+et(t)+"/01";a!==T.value.dateHash&&(A.value=T.value.dateHash{R.value=e-e%Co-(e<0?Co:0),Object.assign(T.value,{year:e,month:t,day:1,dateHash:a})})))}function ke(t,n,a){let i=null!==t&&1===t.length&&!1===e.multiple?t[0]:t;s=i;let{reason:r,details:l}=Se(n,a);o("update:modelValue",i,r,l)}function xe(t){let n=void 0!==j.value[0]&&null!==j.value[0].dateHash?{...j.value[0]}:{...T.value};d((()=>{n.year=T.value.year,n.month=T.value.month;let a="persian"!==e.calendar?new Date(n.year,n.month,0).getDate():Vr(n.year,n.month);n.day=Math.min(Math.max(1,n.day),a);let i=Ce(n);s=i;let{details:r}=Se("",n);o("update:modelValue",i,t,r)}))}function Se(e,t){return void 0!==t.from?{reason:`${e}-range`,details:{...ye(t.target),from:ye(t.from),to:ye(t.to)}}:{reason:`${e}-day`,details:ye(t)}}function Ce(e,t,n){return void 0!==e.from?{from:$.value(e.from,t,n),to:$.value(e.to,t,n)}:$.value(e,t,n)}function Te(t){let n;if(!0===e.multiple)if(void 0!==t.from){let e=Jr(t.from),a=Jr(t.to),i=j.value.filter((t=>t.dateHasha)),r=B.value.filter((({from:t,to:n})=>n.dateHasha));n=i.concat(r).concat(t).map((e=>Ce(e)))}else{let e=q.value.slice();e.push(Ce(t)),n=e}else n=Ce(t);ke(n,"add",t)}function Ee(t){if(!0===e.noUnset)return;let n=null;if(!0===e.multiple&&!0===Array.isArray(e.modelValue)){let a=Ce(t);n=void 0!==t.from?e.modelValue.filter((e=>void 0===e.from||e.from!==a.from&&e.to!==a.to)):e.modelValue.filter((e=>e!==a)),0===n.length&&(n=null)}ke(n,"remove",t)}function Pe(t,n,a){let i=j.value.concat(B.value).map((e=>Ce(e,t,n))).filter((e=>void 0!==e.from?null!==e.from.dateHash&&null!==e.to.dateHash:null!==e.dateHash));o("update:modelValue",(!0===e.multiple?i:i[0])||null,a)}function Ae(){if(!0!==e.minimal)return n("div",{class:"q-date__header "+f.value},[n("div",{class:"relative-position"},[n(S,{name:"q-transition--fade"},(()=>n("div",{key:"h-yr-"+G.value,class:"q-date__header-subtitle q-date__header-link "+("Years"===E.value?"q-date__header-link--active":"cursor-pointer"),tabindex:p.value,...h("vY",{onClick(){E.value="Years"},onKeyup(e){13===e.keyCode&&(E.value="Years")}})},[G.value])))]),n("div",{class:"q-date__header-title relative-position flex no-wrap"},[n("div",{class:"relative-position col"},[n(S,{name:"q-transition--fade"},(()=>n("div",{key:"h-sub"+U.value,class:"q-date__header-title-label q-date__header-link "+("Calendar"===E.value?"q-date__header-link--active":"cursor-pointer"),tabindex:p.value,...h("vC",{onClick(){E.value="Calendar"},onKeyup(e){13===e.keyCode&&(E.value="Calendar")}})},[U.value])))]),!0===e.todayBtn?n(An,{class:"q-date__header-today self-start",icon:u.iconSet.datetime.today,flat:!0,size:"sm",round:!0,tabindex:p.value,onClick:de}):null])])}function Le({label:e,type:t,key:a,dir:i,goTo:r,boundaries:o,cls:s}){return[n("div",{class:"row items-center q-date__arrow"},[n(An,{round:!0,dense:!0,size:"sm",flat:!0,icon:Y.value[0],tabindex:p.value,disable:!1===o.prev,...h("go-#"+t,{onClick(){r(-1)}})})]),n("div",{class:"relative-position overflow-hidden flex flex-center"+s},[n(S,{name:"q-transition--jump-"+i},(()=>n("div",{key:a},[n(An,{flat:!0,dense:!0,noCaps:!0,label:e,tabindex:p.value,...h("view#"+t,{onClick:()=>{E.value=t}})})])))]),n("div",{class:"row items-center q-date__arrow"},[n(An,{round:!0,dense:!0,size:"sm",flat:!0,icon:Y.value[1],tabindex:p.value,disable:!1===o.next,...h("go+#"+t,{onClick(){r(1)}})})])]}r((()=>e.modelValue),(e=>{if(s===e)s=0;else{let e=me(b.value,y.value);we(e.year,e.month,e)}})),r(E,(()=>{null!==v.value&&!0===l.$el.contains(document.activeElement)&&v.value.focus()})),r((()=>T.value.year+"|"+T.value.month),(()=>{o("navigation",{year:T.value.year,month:T.value.month})})),r(w,(e=>{Pe(e,y.value,"mask"),b.value=e})),r(x,(e=>{Pe(b.value,e,"locale"),y.value=e}));let Me={Calendar:()=>[n("div",{key:"calendar-view",class:"q-date__view q-date__calendar"},[n("div",{class:"q-date__navigation row items-center no-wrap"},Le({label:y.value.months[T.value.month-1],type:"Months",key:T.value.month,dir:A.value,goTo:_e,boundaries:te.value.month,cls:" col"}).concat(Le({label:T.value.year,type:"Years",key:T.value.year,dir:L.value,goTo:ve,boundaries:te.value.year,cls:""}))),n("div",{class:"q-date__calendar-weekdays row items-center no-wrap"},Q.value.map((e=>n("div",{class:"q-date__calendar-item"},[n("div",e)])))),n("div",{class:"q-date__calendar-days-container relative-position overflow-hidden"},[n(S,{name:"q-transition--slide-"+A.value},(()=>n("div",{key:re.value,class:"q-date__calendar-days fit"},ue.value.map((t=>n("div",{class:t.classes},[!0===t.in?n(An,{class:!0===t.today?"q-date__today":"",dense:!0,flat:t.flat,unelevated:t.unelevated,color:t.color,textColor:t.textColor,label:t.i,tabindex:p.value,...h("day#"+t.i,{onClick:()=>{!function(t){let n={...T.value,day:t};if(!1===e.range)return void function(e,t){let n=ne.value[t];(void 0!==n&&!0===n.includes(e.day)?Ee:Te)(e)}(n,re.value);if(null===z.value){let a=ue.value.find((e=>!0!==e.fill&&e.i===t));if(!0!==e.noUnset&&void 0!==a.range)return void Ee({target:n,from:a.range.from,to:a.range.to});if(!0===a.selected)return void Ee(n);let i=Jr(n);z.value={init:n,initHash:i,final:n,finalHash:i},o("rangeStart",ye(n))}else{let e=z.value.initHash,t=Jr(n),a=e<=t?{from:z.value.init,to:n}:{from:n,to:z.value.init};z.value=null,Te(e===t?n:{target:n,...a}),o("rangeEnd",{from:ye(a.from),to:ye(a.to)})}}(t.i)},onMouseover:()=>{!function(e){if(null!==z.value){let t={...T.value,day:e};Object.assign(z.value,{final:t,finalHash:Jr(t)})}}(t.i)}})},!1!==t.event?()=>n("div",{class:"q-date__event bg-"+t.event}):null):n("div",""+t.i)]))))))])])],Months(){let t=T.value.year===C.value.year,a=e=>null!==X.value&&T.value.year===X.value.year&&X.value.month>e||null!==ee.value&&T.value.year===ee.value.year&&ee.value.month{let r=T.value.month===i+1;return n("div",{class:"q-date__months-item flex flex-center"},[n(An,{class:!0===t&&C.value.month===i+1?"q-date__today":null,flat:!0!==r,label:e,unelevated:r,color:!0===r?I.value:null,textColor:!0===r?O.value:null,tabindex:p.value,disable:a(i+1),...h("month#"+i,{onClick:()=>{!function(e){we(T.value.year,e),E.value="Calendar",!0===D.value&&xe("month")}(i+1)}})})])}));return!0===e.yearsInMonthView&&i.unshift(n("div",{class:"row no-wrap full-width"},[Le({label:T.value.year,type:"Years",key:T.value.year,dir:L.value,goTo:ve,boundaries:te.value.year,cls:" col"})])),n("div",{key:"months-view",class:"q-date__view q-date__months flex flex-center"},i)},Years(){let e=R.value,t=e+Co,a=[],i=e=>null!==X.value&&X.value.year>e||null!==ee.value&&ee.value.year{be(r)}})})]))}return n("div",{class:"q-date__view q-date__years flex flex-center"},[n("div",{class:"col-auto"},[n(An,{round:!0,dense:!0,flat:!0,icon:Y.value[0],tabindex:p.value,disable:i(e),...h("y-",{onClick:()=>{R.value-=Co}})})]),n("div",{class:"q-date__years-content col self-stretch row items-center"},a),n("div",{class:"col-auto"},[n(An,{round:!0,dense:!0,flat:!0,icon:Y.value[1],tabindex:p.value,disable:i(t),...h("y+",{onClick:()=>{R.value+=Co}})})])])}};return Object.assign(l,{setToday:de,setView:function(e){!0===Eo(e)&&(E.value=e)},offsetCalendar:function(e,t){["month","year"].includes(e)&&("month"===e?_e:ve)(!0===t?-1:1)},setCalendarTo:he,setEditingRange:function(t,n){if(!1===e.range||!t)return void(z.value=null);let a=Object.assign({...T.value},t),i=void 0!==n?Object.assign({...T.value},n):a;z.value={init:a,initHash:Jr(a),final:i,finalHash:Jr(i)},he(a.year,a.month)}}),()=>{let a=[n("div",{class:"q-date__content col relative-position"},[n(S,{name:"q-transition--fade"},Me[E.value])])],i=dt(t.default);return void 0!==i&&a.push(n("div",{class:"q-date__actions"},i)),void 0!==e.name&&!0!==e.disable&&_(a,"push"),n("div",{class:N.value,...ce.value},[Ae(),n("div",{ref:v,class:"q-date__main col column",tabindex:-1},a)])}}});function Ro(e,t,n){let a;function i(){void 0!==a&&(be.remove(a),a=void 0)}return g((()=>{!0===e.value&&i()})),{removeFromHistory:i,addToHistory(){a={condition:()=>!0===n.value,handler:t},be.add(a)}}}var zo,No,Io,Oo,Do,qo,jo=0,Bo=!1,Fo=null;function $o(e){(function(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;let t=K(e),n=e.shiftKey&&!e.deltaX,a=!n&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),i=n||a?e.deltaY:e.deltaX;for(let e=0;e0&&n.scrollTop+n.clientHeight===n.scrollHeight:i<0&&0===n.scrollLeft||i>0&&n.scrollLeft+n.clientWidth===n.scrollWidth}return!0})(e)&&J(e)}function Vo(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function Uo(e){!0!==Bo&&(Bo=!0,requestAnimationFrame((()=>{Bo=!1;let{height:t}=e.target,{clientHeight:n,scrollTop:a}=document.scrollingElement;(void 0===Io||t!==window.innerHeight)&&(Io=n-t,document.scrollingElement.scrollTop=a),a>Io&&(document.scrollingElement.scrollTop-=Math.ceil((a-Io)/8))})))}function Ho(e){let t=document.body,n=void 0!==window.visualViewport;if("add"===e){let{overflowY:e,overflowX:a}=window.getComputedStyle(t);zo=ca(window),No=ua(window),Oo=t.style.left,Do=t.style.top,qo=window.location.href,t.style.left=`-${zo}px`,t.style.top=`-${No}px`,"hidden"!==a&&("scroll"===a||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),"hidden"!==e&&("scroll"===e||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,!0===j.is.ios&&(!0===n?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",Uo,H.passiveCapture),window.visualViewport.addEventListener("scroll",Uo,H.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",Vo,H.passiveCapture))}!0===j.is.desktop&&!0===j.is.mac&&window[`${e}EventListener`]("wheel",$o,H.notPassive),"remove"===e&&(!0===j.is.ios&&(!0===n?(window.visualViewport.removeEventListener("resize",Uo,H.passiveCapture),window.visualViewport.removeEventListener("scroll",Uo,H.passiveCapture)):window.removeEventListener("scroll",Vo,H.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=Oo,t.style.top=Do,window.location.href===qo&&window.scrollTo(zo,No),Io=void 0)}function Wo(e){let t="add";if(!0===e){if(jo++,null!==Fo)return clearTimeout(Fo),void(Fo=null);if(jo>1)return}else{if(0===jo||--jo>0)return;if(t="remove",!0===j.is.ios&&!0===j.is.nativeMobile)return null!==Fo&&clearTimeout(Fo),void(Fo=setTimeout((()=>{Ho(t),Fo=null}),100))}Ho(t)}function Go(){let e;return{preventBodyScroll(t){t!==e&&(void 0!==e||!0===t)&&(e=t,Wo(t))}}}var Yo=0,Ko={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},Qo={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]},Zo=$({name:"QDialog",inheritAttrs:!1,props:{...On,...ea,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,backdropFilter:String,position:{type:String,default:"standard",validator:e=>["standard","top","bottom","left","right"].includes(e)}},emits:[...Dn,"shake","click","escapeKey"],setup(e,{slots:t,emit:o,attrs:s}){let l,u,c=k(),d=a(null),h=a(!1),p=a(!1),f=null,m=null,_=i((()=>!0!==e.persistent&&!0!==e.noRouteDismiss&&!0!==e.seamless)),{preventBodyScroll:v}=Go(),{registerTimeout:b}=aa(),{registerTick:y,removeTick:w}=na(),{transitionProps:x,transitionStyle:C}=ta(e,(()=>Qo[e.position][0]),(()=>Qo[e.position][1])),T=i((()=>C.value+(void 0!==e.backdropFilter?`;backdrop-filter:${e.backdropFilter};-webkit-backdrop-filter:${e.backdropFilter}`:""))),{showPortal:E,hidePortal:P,portalIsAccessible:A,renderPortal:L}=Xn(c,d,(function(){return n("div",{role:"dialog","aria-modal":!0===I.value?"true":"false",...s,class:D.value},[n(S,{name:"q-transition--fade",appear:!0},(()=>!0===I.value?n("div",{class:"q-dialog__backdrop fixed-full",style:T.value,"aria-hidden":"true",tabindex:-1,onClick:U}):null)),n(S,x.value,(()=>!0===h.value?n("div",{ref:d,class:N.value,style:C.value,tabindex:-1,...O.value},dt(t.default)):null))])}),"dialog"),{hide:M}=qn({showing:h,hideOnRouteChange:_,handleShow:function(t){R(),m=!1===e.noRefocus&&null!==document.activeElement?document.activeElement:null,$(e.maximized),E(),p.value=!0,!0!==e.noFocus?(null!==document.activeElement&&document.activeElement.blur(),y(q)):w(),b((()=>{if(!0===c.proxy.$q.platform.is.ios){if(!0!==e.seamless&&document.activeElement){let{top:e,bottom:t}=document.activeElement.getBoundingClientRect(),{innerHeight:n}=window,a=void 0!==window.visualViewport?window.visualViewport.height:n;e>0&&t>a/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-a,t>=n?1/0:Math.ceil(document.scrollingElement.scrollTop+t-a/2))),document.activeElement.scrollIntoView()}u=!0,d.value.click(),u=!1}E(!0),p.value=!1,o("show",t)}),e.transitionDuration)},handleHide:function(t){w(),z(),F(!0),p.value=!0,P(),null!==m&&(((t&&0===t.type.indexOf("key")?m.closest('[tabindex]:not([tabindex^="-"])'):void 0)||m).focus(),m=null),b((()=>{P(!0),p.value=!1,o("hide",t)}),e.transitionDuration)},processOnMount:!0}),{addToHistory:R,removeFromHistory:z}=Ro(h,M,_),N=i((()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${!0===e.maximized?"maximized":"minimized"} q-dialog__inner--${e.position} ${Ko[e.position]}`+(!0===p.value?" q-dialog__inner--animating":"")+(!0===e.fullWidth?" q-dialog__inner--fullwidth":"")+(!0===e.fullHeight?" q-dialog__inner--fullheight":"")+(!0===e.square?" q-dialog__inner--square":""))),I=i((()=>!0===h.value&&!0!==e.seamless)),O=i((()=>!0===e.autoClose?{onClick:V}:{})),D=i((()=>["q-dialog fullscreen no-pointer-events q-dialog--"+(!0===I.value?"modal":"seamless"),s.class]));function q(e){Vn((()=>{let t=d.value;if(null!==t){if(void 0!==e){let n=t.querySelector(e);if(null!==n)return void n.focus({preventScroll:!0})}!0!==t.contains(document.activeElement)&&(t=t.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||t.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||t.querySelector("[autofocus], [data-autofocus]")||t,t.focus({preventScroll:!0}))}}))}function j(e){e&&"function"==typeof e.focus?e.focus({preventScroll:!0}):q(),o("shake");let t=d.value;null!==t&&(t.classList.remove("q-animate--scale"),t.classList.add("q-animate--scale"),null!==f&&clearTimeout(f),f=setTimeout((()=>{f=null,null!==d.value&&(t.classList.remove("q-animate--scale"),q())}),170))}function B(){!0!==e.seamless&&(!0===e.persistent||!0===e.noEscDismiss?!0!==e.maximized&&!0!==e.noShake&&j():(o("escapeKey"),M()))}function F(t){null!==f&&(clearTimeout(f),f=null),(!0===t||!0===h.value)&&($(!1),!0!==e.seamless&&(v(!1),Ma(H),Ea(B))),!0!==t&&(m=null)}function $(e){!0===e?!0!==l&&(Yo<1&&document.body.classList.add("q-body--dialog"),Yo++,l=!0):!0===l&&(Yo<2&&document.body.classList.remove("q-body--dialog"),Yo--,l=!1)}function V(e){!0!==u&&(M(e),o("click",e))}function U(t){!0!==e.persistent&&!0!==e.noBackdropDismiss?M(t):!0!==e.noShake&&j()}function H(t){!0!==e.allowFocusOutside&&!0===A.value&&!0!==cn(d.value,t.target)&&q('[tabindex]:not([tabindex="-1"])')}return r((()=>e.maximized),(e=>{!0===h.value&&$(e)})),r(I,(e=>{v(e),!0===e?(La(H),Ta(B)):(Ma(H),Ea(B))})),Object.assign(c.proxy,{focus:q,shake:j,__updateRefocusTarget(e){m=e||null}}),g(F),L}}),Jo=$({name:"QDrawer",inheritAttrs:!1,props:{...On,...Nt,side:{type:String,default:"left",validator:e=>["left","right"].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>["default","desktop","mobile"].includes(e),default:"default"},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...Dn,"onLayout","miniState"],setup(e,{slots:t,emit:o,attrs:s}){let l=k(),{proxy:{$q:u}}=l,c=It(e,u),{preventBodyScroll:h}=Go(),{registerTimeout:p,removeTimeout:f}=aa(),_=y(Ae,Ie);if(_===Ie)return console.error("QDrawer needs to be child of QLayout"),Ie;let v,b,w=null,x=a("mobile"===e.behavior||"desktop"!==e.behavior&&_.totalWidth.value<=e.breakpoint),S=i((()=>!0===e.mini&&!0!==x.value)),C=i((()=>!0===S.value?e.miniWidth:e.width)),T=a(!0===e.showIfAbove&&!1===x.value||!0===e.modelValue),E=i((()=>!0!==e.persistent&&(!0===x.value||!0===W.value)));function P(e,t){if(z(),!1!==e&&_.animate(),re(0),!0===x.value){let e=_.instances[$.value];void 0!==e&&!0===e.belowBreakpoint&&e.hide(!1),oe(1),!0!==_.isContainer.value&&h(!0)}else oe(0),!1!==e&&se(!1);p((()=>{!1!==e&&se(!0),!0!==t&&o("show",e)}),150)}function L(e,t){N(),!1!==e&&_.animate(),oe(0),re(D.value*C.value),ce(),!0!==t?p((()=>{o("hide",e)}),150):f()}let{show:M,hide:R}=qn({showing:T,hideOnRouteChange:E,handleShow:P,handleHide:L}),{addToHistory:z,removeFromHistory:N}=Ro(T,R,E),I={belowBreakpoint:x,hide:R},O=i((()=>"right"===e.side)),D=i((()=>(!0===u.lang.rtl?-1:1)*(!0===O.value?1:-1))),q=a(0),j=a(!1),B=a(!1),F=a(C.value*D.value),$=i((()=>!0===O.value?"left":"right")),V=i((()=>!0===T.value&&!1===x.value&&!1===e.overlay?!0===e.miniToOverlay?e.miniWidth:C.value:0)),U=i((()=>!0===e.overlay||!0===e.miniToOverlay||-1!==_.view.value.indexOf(O.value?"R":"L")||!0===u.platform.is.ios&&!0===_.isContainer.value)),H=i((()=>!1===e.overlay&&!0===T.value&&!1===x.value)),W=i((()=>!0===e.overlay&&!0===T.value&&!1===x.value)),G=i((()=>"fullscreen q-drawer__backdrop"+(!1===T.value&&!1===j.value?" hidden":""))),Y=i((()=>({backgroundColor:`rgba(0,0,0,${.4*q.value})`}))),K=i((()=>!0===O.value?"r"===_.rows.value.top[2]:"l"===_.rows.value.top[0])),Q=i((()=>!0===O.value?"r"===_.rows.value.bottom[2]:"l"===_.rows.value.bottom[0])),Z=i((()=>{let e={};return!0===_.header.space&&!1===K.value&&(!0===U.value?e.top=`${_.header.offset}px`:!0===_.header.space&&(e.top=`${_.header.size}px`)),!0===_.footer.space&&!1===Q.value&&(!0===U.value?e.bottom=`${_.footer.offset}px`:!0===_.footer.space&&(e.bottom=`${_.footer.size}px`)),e})),J=i((()=>{let e={width:`${C.value}px`,transform:`translateX(${F.value}px)`};return!0===x.value?e:Object.assign(e,Z.value)})),X=i((()=>"q-drawer__content fit "+(!0!==_.isContainer.value?"scroll":"overflow-auto"))),ee=i((()=>`q-drawer q-drawer--${e.side}`+(!0===B.value?" q-drawer--mini-animate":"")+(!0===e.bordered?" q-drawer--bordered":"")+(!0===c.value?" q-drawer--dark q-dark":"")+(!0===j.value?" no-transition":!0===T.value?"":" q-layout--prevent-focus")+(!0===x.value?" fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding":" q-drawer--"+(!0===S.value?"mini":"standard")+(!0===U.value||!0!==H.value?" fixed":"")+(!0===e.overlay||!0===e.miniToOverlay?" q-drawer--on-top":"")+(!0===K.value?" q-drawer--top-padding":"")))),te=i((()=>{let t=!0===u.lang.rtl?e.side:$.value;return[[Ki,le,void 0,{[t]:!0,mouse:!0}]]})),ne=i((()=>{let t=!0===u.lang.rtl?$.value:e.side;return[[Ki,ue,void 0,{[t]:!0,mouse:!0}]]})),ae=i((()=>{let t=!0===u.lang.rtl?$.value:e.side;return[[Ki,ue,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0}]]}));function ie(){var t,n;t=x,n="mobile"===e.behavior||"desktop"!==e.behavior&&_.totalWidth.value<=e.breakpoint,t.value!==n&&(t.value=n)}function re(e){void 0===e?d((()=>{e=!0===T.value?0:C.value,re(D.value*e)})):(!0===_.isContainer.value&&!0===O.value&&(!0===x.value||Math.abs(e)===C.value)&&(e+=D.value*_.scrollbarWidth.value),F.value=e)}function oe(e){q.value=e}function se(e){let t=!0===e?"remove":!0!==_.isContainer.value?"add":"";""!==t&&document.body.classList[t]("q-body--drawer-toggle")}function le(e){if(!1!==T.value)return;let t=C.value,n=Je(e.distance.x,0,t);if(!0===e.isFinal)return n>=Math.min(75,t)==!0?M():(_.animate(),oe(0),re(D.value*t)),void(j.value=!1);re((!0===u.lang.rtl?!0!==O.value:O.value)?Math.max(t-n,0):Math.min(0,n-t)),oe(Je(n/t,0,1)),!0===e.isFirst&&(j.value=!0)}function ue(t){if(!0!==T.value)return;let n=C.value,a=t.direction===e.side,i=(!0===u.lang.rtl?!0!==a:a)?Je(t.distance.x,0,n):0;if(!0===t.isFinal)return Math.abs(i){!0===t?(v=T.value,!0===T.value&&R(!1)):!1===e.overlay&&"mobile"!==e.behavior&&!1!==v&&(!0===T.value?(re(0),oe(0),ce()):M(!1))})),r((()=>e.side),((e,t)=>{_.instances[t]===I&&(_.instances[t]=void 0,_[t].space=!1,_[t].offset=0),_.instances[e]=I,_[e].size=C.value,_[e].space=H.value,_[e].offset=V.value})),r(_.totalWidth,(()=>{(!0===_.isContainer.value||!0!==document.qScrollPrevented)&&ie()})),r((()=>e.behavior+e.breakpoint),ie),r(_.isContainer,(e=>{!0===T.value&&h(!0!==e),!0===e&&ie()})),r(_.scrollbarWidth,(()=>{re(!0===T.value?0:void 0)})),r(V,(e=>{de("offset",e)})),r(H,(e=>{o("onLayout",e),de("space",e)})),r(O,(()=>{re()})),r(C,(t=>{re(),he(e.miniToOverlay,t)})),r((()=>e.miniToOverlay),(e=>{he(e,C.value)})),r((()=>u.lang.rtl),(()=>{re()})),r((()=>e.mini),(()=>{e.noMiniAnimation||!0===e.modelValue&&(null!==w&&clearTimeout(w),l.proxy&&l.proxy.$el&&l.proxy.$el.classList.add("q-drawer--mini-animate"),B.value=!0,w=setTimeout((()=>{w=null,B.value=!1,l&&l.proxy&&l.proxy.$el&&l.proxy.$el.classList.remove("q-drawer--mini-animate")}),150),_.animate())})),r(S,(e=>{o("miniState",e)})),_.instances[e.side]=I,he(e.miniToOverlay,C.value),de("space",H.value),de("offset",V.value),!0===e.showIfAbove&&!0!==e.modelValue&&!0===T.value&&void 0!==e["onUpdate:modelValue"]&&o("update:modelValue",!0),m((()=>{o("onLayout",H.value),o("miniState",S.value),v=!0===e.showIfAbove;let t=()=>{(!0===T.value?P:L)(!1,!0)};0===_.totalWidth.value?b=r(_.totalWidth,(()=>{b(),b=void 0,!1===T.value&&!0===e.showIfAbove&&!1===x.value?M(!1):t()})):d(t)})),g((()=>{void 0!==b&&b(),null!==w&&(clearTimeout(w),w=null),!0===T.value&&ce(),_.instances[e.side]===I&&(_.instances[e.side]=void 0,de("size",0),de("offset",0),de("space",!1))})),()=>{let a=[];!0===x.value&&(!1===e.noSwipeOpen&&a.push(A(n("div",{key:"open",class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":"true"}),te.value)),a.push(mt("div",{ref:"backdrop",class:G.value,style:Y.value,"aria-hidden":"true",onClick:R},void 0,"backdrop",!0!==e.noSwipeBackdrop&&!0===T.value,(()=>ae.value))));let i=!0===S.value&&void 0!==t.mini,r=[n("div",{...s,key:""+i,class:[X.value,s.class]},!0===i?t.mini():dt(t.default))];return!0===e.elevated&&!0===T.value&&r.push(n("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),a.push(mt("aside",{ref:"content",class:ee.value,style:J.value},r,"contentclose",!0!==e.noSwipeClose&&!0===x.value,(()=>ne.value))),n("div",{class:"q-drawer-container"},a)}}});function Xo(e,t){if(t&&e===t)return null;let n=e.nodeName.toLowerCase();if(!0===["div","li","ul","ol","blockquote"].includes(n))return e;let a=(window.getComputedStyle?window.getComputedStyle(e):e.currentStyle).display;return"block"===a||"table"===a?e:Xo(e.parentNode)}function es(e,t,n){return!(!e||e===document.body)&&(!0===n&&e===t||(t===document?document.body:t).contains(e.parentNode))}function ts(e,t,n){if(n||((n=document.createRange()).selectNode(e),n.setStart(e,0)),0===t.count)n.setEnd(e,t.count);else if(t.count>0)if(e.nodeType===Node.TEXT_NODE)e.textContent.length0&&this.savedPos\n \n \n Print - ${document.title}\n \n \n
${this.el.innerHTML}
\n \n \n `),e.print(),void e.close()}if("link"===e){let e=this.getParentAttribute("href");if(null===e){let e=this.selectWord(this.selection),t=e?e.toString():"";if(!(t.length||this.range&&this.range.cloneContents().querySelector("img")))return;this.eVm.editLinkUrl.value=ns.test(t)?t:"https://",document.execCommand("createLink",!1,this.eVm.editLinkUrl.value),this.save(e.getRangeAt(0))}else this.eVm.editLinkUrl.value=e,this.range.selectNodeContents(this.parent),this.save();return}if("fullscreen"===e)return this.eVm.toggleFullscreen(),void n();if("viewsource"===e)return this.eVm.isViewingSource.value=!1===this.eVm.isViewingSource.value,this.eVm.setContent(this.eVm.props.modelValue),void n()}document.execCommand(e,!1,t),n()}selectWord(e){if(null===e||!0!==e.isCollapsed||void 0===e.modify)return e;let t=document.createRange();t.setStart(e.anchorNode,e.anchorOffset),t.setEnd(e.focusNode,e.focusOffset);let n=t.collapsed?["backward","forward"]:["forward","backward"];t.detach();let a=e.focusNode,i=e.focusOffset;return e.collapse(e.anchorNode,e.anchorOffset),e.modify("move",n[0],"character"),e.modify("move",n[1],"word"),e.extend(a,i),e.modify("extend",n[1],"character"),e.modify("extend",n[0],"word"),e}},is=$({name:"QTooltip",inheritAttrs:!1,props:{...Rn,...On,...ea,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...ea.transitionShow,default:"jump-down"},transitionHide:{...ea.transitionHide,default:"jump-up"},anchor:{type:String,default:"bottom middle",validator:Ba},self:{type:String,default:"top middle",validator:Ba},offset:{type:Array,default:()=>[14,14],validator:Fa},scrollTarget:ra,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...Dn],setup(e,{slots:t,emit:o,attrs:s}){let l,u,c=k(),{proxy:{$q:d}}=c,h=a(null),p=a(!1),f=i((()=>Va(e.anchor,d.lang.rtl))),m=i((()=>Va(e.self,d.lang.rtl))),_=i((()=>!0!==e.persistent)),{registerTick:v,removeTick:b}=na(),{registerTimeout:y}=aa(),{transitionProps:w,transitionStyle:x}=ta(e),{localScrollTarget:C,changeScrollEvent:T,unconfigureScrollTarget:E}=In(e,q),{anchorEl:P,canShow:A,anchorEvents:L}=Nn({showing:p,configureAnchorEl:function(){if(!0===e.noParentEvent||null===P.value)return;let t=!0===d.platform.is.mobile?[[P.value,"touchstart","delayShow","passive"]]:[[P.value,"mouseenter","delayShow","passive"],[P.value,"mouseleave","delayHide","passive"]];ee(L,"anchor",t)}}),{show:M,hide:R}=qn({showing:p,canShow:A,handleShow:function(t){z(),v((()=>{u=new MutationObserver((()=>D())),u.observe(h.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),D(),q()})),void 0===l&&(l=r((()=>d.screen.width+"|"+d.screen.height+"|"+e.self+"|"+e.anchor+"|"+d.lang.rtl),D)),y((()=>{z(!0),o("show",t)}),e.transitionDuration)},handleHide:function(t){b(),N(),O(),y((()=>{N(!0),o("hide",t)}),e.transitionDuration)},hideOnRouteChange:_,processOnMount:!0});Object.assign(L,{delayShow:function(t){if(!0===d.platform.is.mobile){Mn(),document.body.classList.add("non-selectable");let e=P.value,t=["touchmove","touchcancel","touchend","click"].map((t=>[e,t,"delayHide","passiveCapture"]));ee(L,"tooltipTemp",t)}y((()=>{M(t)}),e.delay)},delayHide:function(t){!0===d.platform.is.mobile&&(te(L,"tooltipTemp"),Mn(),setTimeout((()=>{document.body.classList.remove("non-selectable")}),10)),y((()=>{R(t)}),e.hideDelay)}});let{showPortal:z,hidePortal:N,renderPortal:I}=Xn(c,h,(function(){return n(S,w.value,j)}),"tooltip");if(!0===d.platform.is.mobile){let t={anchorEl:P,innerRef:h,onClickOutside:e=>(R(e),e.target.classList.contains("q-dialog__backdrop")&&J(e),!0)},n=i((()=>null===e.modelValue&&!0!==e.persistent&&!0===p.value));r(n,(e=>{(!0===e?qa:ja)(t)})),g((()=>{ja(t)}))}function O(){void 0!==u&&(u.disconnect(),u=void 0),void 0!==l&&(l(),l=void 0),E(),te(L,"tooltipTemp")}function D(){Ha({targetEl:h.value,offset:e.offset,anchorEl:P.value,anchorOrigin:f.value,selfOrigin:m.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function q(){if(null!==P.value||void 0!==e.scrollTarget){C.value=sa(P.value,e.scrollTarget);let t=!0===e.noParentEvent?D:R;T(C.value,t)}}function j(){return!0===p.value?n("div",{...s,ref:h,class:["q-tooltip q-tooltip--style q-position-engine no-pointer-events",s.class],style:[s.style,x.value],role:"tooltip"},dt(t.default)):null}return g(O),Object.assign(c.proxy,{updatePosition:D}),I}}),rs=$({name:"QItem",props:{...Nt,...en,tag:{type:String,default:"div"},active:{type:Boolean,default:null},clickable:Boolean,dense:Boolean,insetLevel:Number,tabindex:[String,Number],focused:Boolean,manualFocus:Boolean},emits:["click","keyup"],setup(e,{slots:t,emit:r}){let{proxy:{$q:o}}=k(),s=It(e,o),{hasLink:l,linkAttrs:u,linkClass:c,linkTag:d,navigateOnClick:h}=tn(),p=a(null),f=a(null),m=i((()=>!0===e.clickable||!0===l.value||"label"===e.tag)),g=i((()=>!0!==e.disable&&!0===m.value)),_=i((()=>"q-item q-item-type row no-wrap"+(!0===e.dense?" q-item--dense":"")+(!0===s.value?" q-item--dark":"")+(!0===l.value&&null===e.active?c.value:!0===e.active?" q-item--active"+(void 0!==e.activeClass?` ${e.activeClass}`:""):"")+(!0===e.disable?" disabled":"")+(!0===g.value?" q-item--clickable q-link cursor-pointer "+(!0===e.manualFocus?"q-manual-focusable":"q-focusable q-hoverable")+(!0===e.focused?" q-manual-focusable--focused":""):""))),v=i((()=>void 0===e.insetLevel?null:{["padding"+(!0===o.lang.rtl?"Right":"Left")]:16+56*e.insetLevel+"px"}));function b(e){!0===g.value&&(null!==f.value&&(!0!==e.qKeyEvent&&document.activeElement===p.value?f.value.focus():document.activeElement===f.value&&p.value.focus()),h(e))}function y(e){if(!0===g.value&&!0===pe(e,[13,32])){J(e),e.qKeyEvent=!0;let t=new MouseEvent("click",e);t.qKeyEvent=!0,p.value.dispatchEvent(t)}r("keyup",e)}return()=>{let a={ref:p,class:_.value,style:v.value,role:"listitem",onClick:b,onKeyup:y};return!0===g.value?(a.tabindex=e.tabindex||"0",Object.assign(a,u.value)):!0===m.value&&(a["aria-disabled"]="true"),n(d.value,a,function(){let e=ht(t.default,[]);return!0===g.value&&e.unshift(n("div",{class:"q-focus-helper",tabindex:-1,ref:f})),e}())}}}),os=$({name:"QItemSection",props:{avatar:Boolean,thumbnail:Boolean,side:Boolean,top:Boolean,noWrap:Boolean},setup(e,{slots:t}){let a=i((()=>"q-item__section column q-item__section--"+(!0===e.avatar||!0===e.side||!0===e.thumbnail?"side":"main")+(!0===e.top?" q-item__section--top justify-start":" justify-center")+(!0===e.avatar?" q-item__section--avatar":"")+(!0===e.thumbnail?" q-item__section--thumbnail":"")+(!0===e.noWrap?" q-item__section--nowrap":"")));return()=>n("div",{class:a.value},dt(t.default))}});function ss(e,t,n){t.handler?t.handler(e,n,n.caret):n.runCmd(t.cmd,t.param)}function ls(e){return n("div",{class:"q-editor__toolbar-group"},e)}function us(e,t,a,i=!1){let r=i||"toggle"===t.type&&(t.toggled?t.toggled(e):t.cmd&&e.caret.is(t.cmd,t.param)),o=[];if(t.tip&&e.$q.platform.is.desktop){let e=t.key?n("div",[n("small",`(CTRL + ${String.fromCharCode(t.key)})`)]):null;o.push(n(is,{delay:1e3},(()=>[n("div",{innerHTML:t.tip}),e])))}return n(An,{...e.buttonProps.value,icon:null!==t.icon?t.icon:void 0,color:r?t.toggleColor||e.props.toolbarToggleColor:t.color||e.props.toolbarColor,textColor:r&&!e.props.toolbarPush?null:t.textColor||e.props.toolbarTextColor,label:t.label,disable:!!t.disable&&("function"!=typeof t.disable||t.disable(e)),size:"sm",onClick(n){a&&a(),ss(n,t,e)}},(()=>o))}function cs(e){if(e.caret)return e.buttons.value.filter((t=>!e.isViewingSource.value||t.find((e=>"viewsource"===e.cmd)))).map((t=>ls(t.map((t=>(!e.isViewingSource.value||"viewsource"===t.cmd)&&("slot"===t.type?dt(e.slots[t.slot]):"dropdown"===t.type?function(e,t){let a,i,r="only-icons"===t.list,o=t.label,s=null!==t.icon?t.icon:void 0;function l(){c.component.proxy.hide()}if(r)i=t.options.map((t=>{let n=void 0===t.type&&e.caret.is(t.cmd,t.param);return n&&(o=t.tip,s=null!==t.icon?t.icon:void 0),us(e,t,l,n)})),a=e.toolbarBackgroundClass.value,i=[ls(i)];else{let r=void 0!==e.props.toolbarToggleColor?`text-${e.props.toolbarToggleColor}`:null,u=void 0!==e.props.toolbarTextColor?`text-${e.props.toolbarTextColor}`:null,c="no-icons"===t.list;i=t.options.map((t=>{let a=!!t.disable&&t.disable(e),i=void 0===t.type&&e.caret.is(t.cmd,t.param);i&&(o=t.tip,s=null!==t.icon?t.icon:void 0);let d=t.htmlTip;return n(rs,{active:i,activeClass:r,clickable:!0,disable:a,dense:!0,onClick(n){l(),null!==e.contentRef.value&&e.contentRef.value.focus(),e.caret.restore(),ss(n,t,e)}},(()=>[!0===c?null:n(os,{class:i?r:u,side:!0},(()=>n(Lt,{name:null!==t.icon?t.icon:void 0}))),n(os,d?()=>n("div",{class:"text-no-wrap",innerHTML:t.htmlTip}):t.tip?()=>n("div",{class:"text-no-wrap"},t.tip):void 0)]))})),a=[e.toolbarBackgroundClass.value,u]}let u=t.highlight&&o!==t.label,c=n(ai,{...e.buttonProps.value,noCaps:!0,noWrap:!0,color:u?e.props.toolbarToggleColor:e.props.toolbarColor,textColor:u&&!e.props.toolbarPush?null:e.props.toolbarTextColor,label:t.fixedLabel?t.label:o,icon:t.fixedIcon?null!==t.icon?t.icon:void 0:s,contentClass:a,onShow:t=>e.emit("dropdownShow",t),onHide:t=>e.emit("dropdownHide",t),onBeforeShow:t=>e.emit("dropdownBeforeShow",t),onBeforeHide:t=>e.emit("dropdownBeforeHide",t)},(()=>i));return c}(e,t):us(e,t)))))))}var ds=/^on[A-Z]/;function hs(){let{attrs:e,vnode:t}=k(),n={listeners:a({}),attributes:a({})};function i(){let a={},i={};for(let t in e)"class"!==t&&"style"!==t&&!1===ds.test(t)&&(a[t]=e[t]);for(let e in t.props)!0===ds.test(e)&&(i[e]=t.props[e]);n.attributes.value=a,n.listeners.value=i}return v(i),i(),n}var ps=Object.prototype.toString,fs=Object.prototype.hasOwnProperty,ms=new Set(["Boolean","Number","String","Function","Array","Date","RegExp"].map((e=>"[object "+e+"]")));function gs(e){if(e!==Object(e)||!0===ms.has(ps.call(e))||e.constructor&&!1===fs.call(e,"constructor")&&!1===fs.call(e.constructor.prototype,"isPrototypeOf"))return!1;let t;for(t in e);return void 0===t||fs.call(e,t)}function _s(){let e,t,n,a,i,r,o=arguments[0]||{},s=1,l=!1,u=arguments.length;for("boolean"==typeof o&&(l=o,o=arguments[1]||{},s=2),Object(o)!==o&&"function"!=typeof o&&(o={}),u===s&&(o=this,s--);s0===e.length||e.every((e=>e.length)),default:()=>[["left","center","right","justify"],["bold","italic","underline","strike"],["undo","redo"]]},toolbarColor:String,toolbarBg:String,toolbarTextColor:String,toolbarToggleColor:{type:String,default:"primary"},toolbarOutline:Boolean,toolbarPush:Boolean,toolbarRounded:Boolean,paragraphTag:{type:String,validator:e=>["div","p"].includes(e),default:"div"},contentStyle:Object,contentClass:[Object,Array,String],square:Boolean,flat:Boolean,dense:Boolean},emits:[...Ei,"update:modelValue","keydown","click","focus","blur","dropdownShow","dropdownHide","dropdownBeforeShow","dropdownBeforeHide","linkShow","linkHide"],setup(e,{slots:t,emit:o}){let s,l,{proxy:u}=k(),{$q:c}=u,h=It(e,c),{inFullscreen:p,toggleFullscreen:f}=Pi(),_=hs(),v=a(null),b=a(null),y=a(null),w=a(!1),x=i((()=>!e.readonly&&!e.disable)),S=e.modelValue;document.execCommand("defaultParagraphSeparator",!1,e.paragraphTag),s=window.getComputedStyle(document.body).fontFamily;let C=i((()=>e.toolbarBg?` bg-${e.toolbarBg}`:"")),T=i((()=>({type:"a",flat:!0!==e.toolbarOutline&&!0!==e.toolbarPush,noWrap:!0,outline:e.toolbarOutline,push:e.toolbarPush,rounded:e.toolbarRounded,dense:!0,color:e.toolbarColor,disable:!x.value,size:"sm"}))),E=i((()=>{let t=c.lang.editor,n=c.iconSet.editor;return{bold:{cmd:"bold",icon:n.bold,tip:t.bold,key:66},italic:{cmd:"italic",icon:n.italic,tip:t.italic,key:73},strike:{cmd:"strikeThrough",icon:n.strikethrough,tip:t.strikethrough,key:83},underline:{cmd:"underline",icon:n.underline,tip:t.underline,key:85},unordered:{cmd:"insertUnorderedList",icon:n.unorderedList,tip:t.unorderedList},ordered:{cmd:"insertOrderedList",icon:n.orderedList,tip:t.orderedList},subscript:{cmd:"subscript",icon:n.subscript,tip:t.subscript,htmlTip:"x2"},superscript:{cmd:"superscript",icon:n.superscript,tip:t.superscript,htmlTip:"x2"},link:{cmd:"link",disable:e=>e.caret&&!e.caret.can("link"),icon:n.hyperlink,tip:t.hyperlink,key:76},fullscreen:{cmd:"fullscreen",icon:n.toggleFullscreen,tip:t.toggleFullscreen,key:70},viewsource:{cmd:"viewsource",icon:n.viewSource,tip:t.viewSource},quote:{cmd:"formatBlock",param:"BLOCKQUOTE",icon:n.quote,tip:t.quote,key:81},left:{cmd:"justifyLeft",icon:n.left,tip:t.left},center:{cmd:"justifyCenter",icon:n.center,tip:t.center},right:{cmd:"justifyRight",icon:n.right,tip:t.right},justify:{cmd:"justifyFull",icon:n.justify,tip:t.justify},print:{type:"no-state",cmd:"print",icon:n.print,tip:t.print,key:80},outdent:{type:"no-state",disable:e=>e.caret&&!e.caret.can("outdent"),cmd:"outdent",icon:n.outdent,tip:t.outdent},indent:{type:"no-state",disable:e=>e.caret&&!e.caret.can("indent"),cmd:"indent",icon:n.indent,tip:t.indent},removeFormat:{type:"no-state",cmd:"removeFormat",icon:n.removeFormat,tip:t.removeFormat},hr:{type:"no-state",cmd:"insertHorizontalRule",icon:n.hr,tip:t.hr},undo:{type:"no-state",cmd:"undo",icon:n.undo,tip:t.undo,key:90},redo:{type:"no-state",cmd:"redo",icon:n.redo,tip:t.redo,key:89},h1:{cmd:"formatBlock",param:"H1",icon:n.heading1||n.heading,tip:t.heading1,htmlTip:`

${t.heading1}

`},h2:{cmd:"formatBlock",param:"H2",icon:n.heading2||n.heading,tip:t.heading2,htmlTip:`

${t.heading2}

`},h3:{cmd:"formatBlock",param:"H3",icon:n.heading3||n.heading,tip:t.heading3,htmlTip:`

${t.heading3}

`},h4:{cmd:"formatBlock",param:"H4",icon:n.heading4||n.heading,tip:t.heading4,htmlTip:`

${t.heading4}

`},h5:{cmd:"formatBlock",param:"H5",icon:n.heading5||n.heading,tip:t.heading5,htmlTip:`
${t.heading5}
`},h6:{cmd:"formatBlock",param:"H6",icon:n.heading6||n.heading,tip:t.heading6,htmlTip:`
${t.heading6}
`},p:{cmd:"formatBlock",param:e.paragraphTag,icon:n.heading,tip:t.paragraph},code:{cmd:"formatBlock",param:"PRE",icon:n.code,htmlTip:`${t.code}`},"size-1":{cmd:"fontSize",param:"1",icon:n.size1||n.size,tip:t.size1,htmlTip:`${t.size1}`},"size-2":{cmd:"fontSize",param:"2",icon:n.size2||n.size,tip:t.size2,htmlTip:`${t.size2}`},"size-3":{cmd:"fontSize",param:"3",icon:n.size3||n.size,tip:t.size3,htmlTip:`${t.size3}`},"size-4":{cmd:"fontSize",param:"4",icon:n.size4||n.size,tip:t.size4,htmlTip:`${t.size4}`},"size-5":{cmd:"fontSize",param:"5",icon:n.size5||n.size,tip:t.size5,htmlTip:`${t.size5}`},"size-6":{cmd:"fontSize",param:"6",icon:n.size6||n.size,tip:t.size6,htmlTip:`${t.size6}`},"size-7":{cmd:"fontSize",param:"7",icon:n.size7||n.size,tip:t.size7,htmlTip:`${t.size7}`}}})),P=i((()=>{let t=e.definitions||{},n=e.definitions||e.fonts?_s(!0,{},E.value,t,function(e,t,n,a={}){let i=Object.keys(a);if(0===i.length)return{};let r={default_font:{cmd:"fontName",param:e,icon:n,tip:t}};return i.forEach((e=>{let t=a[e];r[e]={cmd:"fontName",param:t,icon:n,tip:t,htmlTip:`${t}`}})),r}(s,c.lang.editor.defaultFont,c.iconSet.editor.font,e.fonts)):E.value;return e.toolbar.map((e=>e.map((e=>{if(e.options)return{type:"dropdown",icon:e.icon,label:e.label,size:"sm",dense:!0,fixedLabel:e.fixedLabel,fixedIcon:e.fixedIcon,highlight:e.highlight,list:e.list,options:e.options.map((e=>n[e]))};let a=n[e];return a?"no-state"===a.type||t[e]&&(void 0===a.cmd||E.value[a.cmd]&&"no-state"===E.value[a.cmd].type)?a:Object.assign({type:"toggle"},a):{type:"slot",slot:e}}))))})),A={$q:c,props:e,slots:t,emit:o,inFullscreen:p,toggleFullscreen:f,runCmd:W,isViewingSource:w,editLinkUrl:y,toolbarBackgroundClass:C,buttonProps:T,contentRef:b,buttons:P,setContent:H};r((()=>e.modelValue),(e=>{S!==e&&(S=e,H(e,!0))})),r(y,(e=>{o("link"+(e?"Show":"Hide"))}));let L=i((()=>e.toolbar&&0!==e.toolbar.length)),M=i((()=>{let e={},t=t=>{t.key&&(e[t.key]={cmd:t.cmd,param:t.param})};return P.value.forEach((e=>{e.forEach((e=>{e.options?e.options.forEach(t):t(e)}))})),e})),R=i((()=>p.value?e.contentStyle:[{minHeight:e.minHeight,height:e.height,maxHeight:e.maxHeight},e.contentStyle])),z=i((()=>"q-editor q-editor--"+(!0===w.value?"source":"default")+(!0===e.disable?" disabled":"")+(!0===p.value?" fullscreen column":"")+(!0===e.square?" q-editor--square no-border-radius":"")+(!0===e.flat?" q-editor--flat":"")+(!0===e.dense?" q-editor--dense":"")+(!0===h.value?" q-editor--dark q-dark":""))),N=i((()=>[e.contentClass,"q-editor__content",{col:p.value,"overflow-auto":p.value||e.maxHeight}])),I=i((()=>!0===e.disable?{"aria-disabled":"true"}:{}));function O(){if(null!==b.value){let t="inner"+(!0===w.value?"Text":"HTML"),n=b.value[t];n!==e.modelValue&&(S=n,o("update:modelValue",n))}}function D(e){if(o("keydown",e),!0!==e.ctrlKey||!0===he(e))return void G();let t=e.keyCode,n=M.value[t];if(void 0!==n){let{cmd:t,param:a}=n;J(e),W(t,a,!1)}}function q(e){G(),o("click",e)}function j(e){if(null!==b.value){let{scrollTop:e,scrollHeight:t}=b.value;l=t-e}A.caret.save(),o("blur",e)}function B(e){d((()=>{null!==b.value&&void 0!==l&&(b.value.scrollTop=b.value.scrollHeight-l)})),o("focus",e)}function F(e){let t=v.value;if(null!==t&&!0===t.contains(e.target)&&(null===e.relatedTarget||!0!==t.contains(e.relatedTarget))){let e="inner"+(!0===w.value?"Text":"HTML");A.caret.restorePosition(b.value[e].length),G()}}function $(e){let t=v.value;null!==t&&!0===t.contains(e.target)&&(null===e.relatedTarget||!0!==t.contains(e.relatedTarget))&&(A.caret.savePosition(),G())}function V(){l=void 0}function U(e){A.caret.save()}function H(e,t){if(null!==b.value){!0===t&&A.caret.savePosition();let n="inner"+(!0===w.value?"Text":"HTML");b.value[n]=e,!0===t&&(A.caret.restorePosition(b.value[n].length),G())}}function W(e,t,n=!0){Y(),A.caret.restore(),A.caret.apply(e,t,(()=>{Y(),A.caret.save(),n&&G()}))}function G(){setTimeout((()=>{y.value=null,u.$forceUpdate()}),1)}function Y(){Vn((()=>{null!==b.value&&b.value.focus({preventScroll:!0})}))}return m((()=>{A.caret=u.caret=new as(b.value,A),H(e.modelValue),G(),document.addEventListener("selectionchange",U)})),g((()=>{document.removeEventListener("selectionchange",U)})),Object.assign(u,{runCmd:W,refreshToolbar:G,focus:Y,getContentEl:function(){return b.value}}),()=>{let t;if(L.value){let e=[n("div",{key:"qedt_top",class:"q-editor__toolbar row no-wrap scroll-x"+C.value},cs(A))];null!==y.value&&e.push(n("div",{key:"qedt_btm",class:"q-editor__toolbar row no-wrap items-center scroll-x"+C.value},function(e){if(e.caret){let t=e.props.toolbarColor||e.props.toolbarTextColor,a=e.editLinkUrl.value,i=()=>{e.caret.restore(),a!==e.editLinkUrl.value&&document.execCommand("createLink",!1,""===a?" ":a),e.editLinkUrl.value=null};return[n("div",{class:`q-mx-xs text-${t}`},`${e.$q.lang.editor.url}: `),n("input",{key:"qedt_btm_input",class:"col q-editor__link-input",value:a,onInput:e=>{Q(e),a=e.target.value},onKeydown:t=>{if(!0!==he(t))switch(t.keyCode){case 13:return Z(t),i();case 27:Z(t),e.caret.restore(),(!e.editLinkUrl.value||"https://"===e.editLinkUrl.value)&&document.execCommand("unlink"),e.editLinkUrl.value=null}}}),ls([n(An,{key:"qedt_btm_rem",tabindex:-1,...e.buttonProps.value,label:e.$q.lang.label.remove,noCaps:!0,onClick:()=>{e.caret.restore(),document.execCommand("unlink"),e.editLinkUrl.value=null}}),n(An,{key:"qedt_btm_upd",...e.buttonProps.value,label:e.$q.lang.label.update,noCaps:!0,onClick:i})])]}}(A))),t=n("div",{key:"toolbar_ctainer",class:"q-editor__toolbars-container"},e)}return n("div",{ref:v,class:z.value,style:{height:!0===p.value?"100%":null},...I.value,onFocusin:F,onFocusout:$},[t,n("div",{ref:b,style:R.value,class:N.value,contenteditable:x.value,placeholder:e.placeholder,..._.listeners.value,onInput:O,onKeydown:D,onClick:q,onBlur:j,onFocus:B,onMousedown:V,onTouchstartPassive:V})])}}}),bs=$({name:"QItemLabel",props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){let a=i((()=>parseInt(e.lines,10))),r=i((()=>"q-item__label"+(!0===e.overline?" q-item__label--overline text-overline":"")+(!0===e.caption?" q-item__label--caption text-caption":"")+(!0===e.header?" q-item__label--header":"")+(1===a.value?" ellipsis":""))),o=i((()=>void 0!==e.lines&&a.value>1?{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":a.value}:null));return()=>n("div",{style:o.value,class:r.value},dt(t.default))}}),ys=$({name:"QSlideTransition",props:{appear:Boolean,duration:{type:Number,default:300}},emits:["show","hide"],setup(e,{slots:t,emit:a}){let i,r,o,s,l=!1,u=null,c=null;function d(){i&&i(),i=null,l=!1,null!==u&&(clearTimeout(u),u=null),null!==c&&(clearTimeout(c),c=null),void 0!==r&&r.removeEventListener("transitionend",o),o=null}function h(t,n,a){void 0!==n&&(t.style.height=`${n}px`),t.style.transition=`height ${e.duration}ms cubic-bezier(.25, .8, .50, 1)`,l=!0,i=a}function p(e,t){e.style.overflowY=null,e.style.height=null,e.style.transition=null,d(),t!==s&&a(t)}function f(t,n){let a=0;r=t,!0===l?(d(),a=t.offsetHeight===t.scrollHeight?0:void 0):(s="hide",t.style.overflowY="hidden"),h(t,a,n),u=setTimeout((()=>{u=null,t.style.height=`${t.scrollHeight}px`,o=e=>{c=null,(Object(e)!==e||e.target===t)&&p(t,"show")},t.addEventListener("transitionend",o),c=setTimeout(o,1.1*e.duration)}),100)}function m(t,n){let a;r=t,!0===l?d():(s="show",t.style.overflowY="hidden",a=t.scrollHeight),h(t,a,n),u=setTimeout((()=>{u=null,t.style.height=0,o=e=>{c=null,(Object(e)!==e||e.target===t)&&p(t,"hide")},t.addEventListener("transitionend",o),c=setTimeout(o,1.1*e.duration)}),100)}return g((()=>{!0===l&&d()})),()=>n(S,{css:!1,appear:e.appear,onEnter:f,onLeave:m},t.default)}}),ws={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},ks={xs:2,sm:4,md:8,lg:16,xl:24},xs=$({name:"QSeparator",props:{...Nt,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){let t=k(),a=It(e,t.proxy.$q),r=i((()=>!0===e.vertical?"vertical":"horizontal")),o=i((()=>` q-separator--${r.value}`)),s=i((()=>!1!==e.inset?`${o.value}-${ws[e.inset]}`:"")),l=i((()=>`q-separator${o.value}${s.value}`+(void 0!==e.color?` bg-${e.color}`:"")+(!0===a.value?" q-separator--dark":""))),u=i((()=>{let t={};if(void 0!==e.size&&(t[!0===e.vertical?"width":"height"]=e.size),!1!==e.spaced){let n=!0===e.spaced?`${ks.md}px`:e.spaced in ks?`${ks[e.spaced]}px`:e.spaced,a=!0===e.vertical?["Left","Right"]:["Top","Bottom"];t[`margin${a[0]}`]=t[`margin${a[1]}`]=n}return t}));return()=>n("hr",{class:l.value,style:u.value,"aria-orientation":r.value})}}),Ss=c({}),Cs=Object.keys(en),Ts=$({name:"QExpansionItem",props:{...en,...On,...Nt,icon:String,label:String,labelLines:[Number,String],caption:String,captionLines:[Number,String],dense:Boolean,toggleAriaLabel:String,expandIcon:String,expandedIcon:String,expandIconClass:[Array,String,Object],duration:{},headerInsetLevel:Number,contentInsetLevel:Number,expandSeparator:Boolean,defaultOpened:Boolean,hideExpandIcon:Boolean,expandIconToggle:Boolean,switchToggleSide:Boolean,denseToggle:Boolean,group:String,popup:Boolean,headerStyle:[Array,String,Object],headerClass:[Array,String,Object]},emits:[...Dn,"click","afterShow","afterHide"],setup(e,{slots:t,emit:o}){let s,l,{proxy:{$q:u}}=k(),c=It(e,u),d=a(null!==e.modelValue?e.modelValue:e.defaultOpened),h=a(null),p=ti(),{show:f,hide:m,toggle:_}=qn({showing:d}),v=i((()=>`q-expansion-item q-item-type q-expansion-item--${!0===d.value?"expanded":"collapsed"} q-expansion-item--${!0===e.popup?"popup":"standard"}`)),b=i((()=>void 0===e.contentInsetLevel?null:{["padding"+(!0===u.lang.rtl?"Right":"Left")]:56*e.contentInsetLevel+"px"})),y=i((()=>!0!==e.disable&&(void 0!==e.href||void 0!==e.to&&null!==e.to&&""!==e.to))),w=i((()=>{let t={};return Cs.forEach((n=>{t[n]=e[n]})),t})),x=i((()=>!0===y.value||!0!==e.expandIconToggle)),S=i((()=>void 0!==e.expandedIcon&&!0===d.value?e.expandedIcon:e.expandIcon||u.iconSet.expansionItem[!0===e.denseToggle?"denseIcon":"icon"])),C=i((()=>!0!==e.disable&&(!0===y.value||!0===e.expandIconToggle))),T=i((()=>({expanded:!0===d.value,detailsId:p.value,toggle:_,show:f,hide:m}))),E=i((()=>{let t=void 0!==e.toggleAriaLabel?e.toggleAriaLabel:u.lang.label[!0===d.value?"collapse":"expand"](e.label);return{role:"button","aria-expanded":!0===d.value?"true":"false","aria-controls":p.value,"aria-label":t}}));function P(e){!0!==y.value&&_(e),o("click",e)}function M(e){13===e.keyCode&&R(e,!0)}function R(e,t){!0!==t&&null!==h.value&&h.value.focus(),_(e),J(e)}function z(){o("afterShow")}function N(){o("afterHide")}function I(){void 0===s&&(s=Xa()),!0===d.value&&(Ss[e.group]=s);let t=r(d,(t=>{!0===t?Ss[e.group]=s:Ss[e.group]===s&&delete Ss[e.group]})),n=r((()=>Ss[e.group]),((e,t)=>{t===s&&void 0!==e&&e!==s&&m()}));l=()=>{t(),n(),Ss[e.group]===s&&delete Ss[e.group],l=void 0}}function O(){let a;return void 0!==t.header?a=[].concat(t.header(T.value)):(a=[n(os,(()=>[n(bs,{lines:e.labelLines},(()=>e.label||"")),e.caption?n(bs,{lines:e.captionLines,caption:!0},(()=>e.caption)):null]))],e.icon&&a[!0===e.switchToggleSide?"push":"unshift"](n(os,{side:!0===e.switchToggleSide,avatar:!0!==e.switchToggleSide},(()=>n(Lt,{name:e.icon}))))),!0!==e.disable&&!0!==e.hideExpandIcon&&a[!0===e.switchToggleSide?"unshift":"push"](function(){let t={class:["q-focusable relative-position cursor-pointer"+(!0===e.denseToggle&&!0===e.switchToggleSide?" items-end":""),e.expandIconClass],side:!0!==e.switchToggleSide,avatar:e.switchToggleSide},a=[n(Lt,{class:"q-expansion-item__toggle-icon"+(void 0===e.expandedIcon&&!0===d.value?" q-expansion-item__toggle-icon--rotated":""),name:S.value})];return!0===C.value&&(Object.assign(t,{tabindex:0,...E.value,onClick:R,onKeyup:M}),a.unshift(n("div",{ref:h,class:"q-expansion-item__toggle-focus q-icon q-focus-helper q-focus-helper--rounded",tabindex:-1}))),n(os,t,(()=>a))}()),a}function D(){let t={ref:"item",style:e.headerStyle,class:e.headerClass,dark:c.value,disable:e.disable,dense:e.dense,insetLevel:e.headerInsetLevel};return!0===x.value&&(t.clickable=!0,t.onClick=P,Object.assign(t,!0===y.value?w.value:E.value)),n(rs,t,O)}function q(){return A(n("div",{key:"e-content",class:"q-expansion-item__content relative-position",style:b.value,id:p.value},dt(t.default)),[[L,d.value]])}function j(){let t=[D(),n(ys,{duration:e.duration,onShow:z,onHide:N},q)];return!0===e.expandSeparator&&t.push(n(xs,{class:"q-expansion-item__border q-expansion-item__border--top absolute-top",dark:c.value}),n(xs,{class:"q-expansion-item__border q-expansion-item__border--bottom absolute-bottom",dark:c.value})),t}return r((()=>e.group),(e=>{void 0!==l&&l(),void 0!==e&&I()})),void 0!==e.group&&I(),g((()=>{void 0!==l&&l()})),()=>n("div",{class:v.value},[n("div",{class:"q-expansion-item__container relative-position"},j())])}}),Es=["top","right","bottom","left"],Ps={type:{type:String,default:"a"},outline:Boolean,push:Boolean,flat:Boolean,unelevated:Boolean,color:String,textColor:String,glossy:Boolean,square:Boolean,padding:String,label:{type:[String,Number],default:""},labelPosition:{type:String,default:"right",validator:e=>Es.includes(e)},externalLabel:Boolean,hideLabel:{type:Boolean},labelClass:[Array,String,Object],labelStyle:[Array,String,Object],disable:Boolean,tabindex:[Number,String]};function As(e,t){return{formClass:i((()=>"q-fab--form-"+(!0===e.square?"square":"rounded"))),stacked:i((()=>!1===e.externalLabel&&["top","bottom"].includes(e.labelPosition))),labelProps:i((()=>{if(!0===e.externalLabel){let n=null===e.hideLabel?!1===t.value:e.hideLabel;return{action:"push",data:{class:[e.labelClass,`q-fab__label q-tooltip--style q-fab__label--external q-fab__label--external-${e.labelPosition}`+(!0===n?" q-fab__label--external-hidden":"")],style:e.labelStyle}}}return{action:["left","top"].includes(e.labelPosition)?"unshift":"push",data:{class:[e.labelClass,`q-fab__label q-fab__label--internal q-fab__label--internal-${e.labelPosition}`+(!0===e.hideLabel?" q-fab__label--internal-hidden":"")],style:e.labelStyle}}}))}}var Ls=["up","right","down","left"],Ms=["left","center","right"],Rs=$({name:"QFab",props:{...Ps,...On,icon:String,activeIcon:String,hideIcon:Boolean,hideLabel:{...Ps.hideLabel,default:null},direction:{type:String,default:"right",validator:e=>Ls.includes(e)},persistent:Boolean,verticalActionsAlign:{type:String,default:"center",validator:e=>Ms.includes(e)}},emits:Dn,setup(e,{slots:t}){let r=a(null),o=a(!0===e.modelValue),s=ti(),{proxy:{$q:l}}=k(),{formClass:u,labelProps:c}=As(e,o),d=i((()=>!0!==e.persistent)),{hide:h,toggle:p}=qn({showing:o,hideOnRouteChange:d}),f=i((()=>({opened:o.value}))),m=i((()=>`q-fab z-fab row inline justify-center q-fab--align-${e.verticalActionsAlign} ${u.value}`+(!0===o.value?" q-fab--opened":" q-fab--closed"))),g=i((()=>`q-fab__actions flex no-wrap inline q-fab__actions--${e.direction} q-fab__actions--${!0===o.value?"opened":"closed"}`)),_=i((()=>{let e={id:s.value,role:"menu"};return!0!==o.value&&(e["aria-hidden"]="true"),e})),v=i((()=>"q-fab__icon-holder q-fab__icon-holder--"+(!0===o.value?"opened":"closed")));function b(a,i){let r=t[a],o=`q-fab__${a} absolute-full`;return void 0===r?n(Lt,{class:o,name:e[i]||l.iconSet.fab[i]}):n("div",{class:o},r(f.value))}function y(){let a=[];return!0!==e.hideIcon&&a.push(n("div",{class:v.value},[b("icon","icon"),b("active-icon","activeIcon")])),(""!==e.label||void 0!==t.label)&&a[c.value.action](n("div",c.value.data,void 0!==t.label?t.label(f.value):[e.label])),pt(t.tooltip,a)}return w(Me,{showing:o,onChildClick(e){h(e),null!==r.value&&r.value.$el.focus()}}),()=>n("div",{class:m.value},[n(An,{ref:r,class:u.value,...e,noWrap:!0,stack:e.stacked,align:void 0,icon:void 0,label:void 0,noCaps:!0,fab:!0,"aria-expanded":!0===o.value?"true":"false","aria-haspopup":"true","aria-controls":s.value,onClick:p},y),n("div",{class:g.value,..._.value},dt(t.default))])}}),zs={start:"self-end",center:"self-center",end:"self-start"},Ns=Object.keys(zs),Is=$({name:"QFabAction",props:{...Ps,icon:{type:String,default:""},anchor:{type:String,validator:e=>Ns.includes(e)},to:[String,Object],replace:Boolean},emits:["click"],setup(e,{slots:t,emit:a}){let r=y(Me,(()=>({showing:{value:!0},onChildClick:W}))),{formClass:o,labelProps:s}=As(e,r.showing),l=i((()=>{let t=zs[e.anchor];return o.value+(void 0!==t?` ${t}`:"")})),u=i((()=>!0===e.disable||!0!==r.showing.value));function c(e){r.onChildClick(e),a("click",e)}function d(){let a=[];return void 0!==t.icon?a.push(t.icon()):""!==e.icon&&a.push(n(Lt,{name:e.icon})),(""!==e.label||void 0!==t.label)&&a[s.value.action](n("div",s.value.data,void 0!==t.label?t.label():[e.label])),pt(t.default,a)}let h=k();return Object.assign(h.proxy,{click:c}),()=>n(An,{class:l.value,...e,noWrap:!0,stack:e.stacked,icon:void 0,label:void 0,noCaps:!0,fabMini:!0,disable:u.value,onClick:c},d)}});function Os({validate:e,resetValidation:t,requiresQForm:n}){let a=y(Re,!1);if(!1!==a){let{props:n,proxy:i}=k();Object.assign(i,{validate:e,resetValidation:t}),r((()=>n.disable),(e=>{!0===e?("function"==typeof t&&t(),a.unbindComponent(i)):a.bindComponent(i)})),m((()=>{!0!==n.disable&&a.bindComponent(i)})),g((()=>{!0!==n.disable&&a.unbindComponent(i)}))}else!0===n&&console.error("Parent QForm not found on useFormChild()!")}var Ds=[!0,!1,"ondemand"],qs={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],default:!1,validator:e=>Ds.includes(e)}};function js(e){return null!=e&&0!==(""+e).length}var Bs={...Nt,...qs,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String},Fs={...Bs,maxlength:[Number,String]},$s=["update:modelValue","clear","focus","blur"];function Vs({requiredForAttr:e=!0,tagProp:t,changeEvent:n=!1}={}){let{props:r,proxy:o}=k(),s=It(r,o.$q),l=ti({required:e,getValue:()=>r.for});return{requiredForAttr:e,changeEvent:n,tag:!0===t?i((()=>r.tag)):{value:"label"},isDark:s,editable:i((()=>!0!==r.disable&&!0!==r.readonly)),innerLoading:a(!1),focused:a(!1),hasPopupOpen:!1,splitAttrs:hs(),targetUid:l,rootRef:a(null),targetRef:a(null),controlRef:a(null)}}function Us(e){let{props:t,emit:o,slots:s,attrs:l,proxy:u}=k(),{$q:c}=u,f=null;void 0===e.hasValue&&(e.hasValue=i((()=>js(t.modelValue)))),void 0===e.emitValue&&(e.emitValue=e=>{o("update:modelValue",e)}),void 0===e.controlEvents&&(e.controlEvents={onFocusin:O,onFocusout:D}),Object.assign(e,{clearValue:q,onControlFocusin:O,onControlFocusout:D,focus:I}),void 0===e.computedCounter&&(e.computedCounter=i((()=>{if(!1!==t.counter){let e="string"==typeof t.modelValue||"number"==typeof t.modelValue?(""+t.modelValue).length:!0===Array.isArray(t.modelValue)?t.modelValue.length:0,n=void 0!==t.maxlength?t.maxlength:t.maxValues;return e+(void 0!==n?" / "+n:"")}})));let{isDirtyModel:_,hasRules:v,hasError:b,errorMessage:y,resetValidation:w}=function(e,t){let{props:n,proxy:o}=k(),s=a(!1),l=a(null),u=a(!1);Os({validate:b,resetValidation:v});let c,d=0,h=i((()=>void 0!==n.rules&&null!==n.rules&&0!==n.rules.length)),p=i((()=>!0!==n.disable&&!0===h.value&&!1===t.value)),f=i((()=>!0===n.error||!0===s.value)),m=i((()=>"string"==typeof n.errorMessage&&0!==n.errorMessage.length?n.errorMessage:l.value));function _(){"ondemand"!==n.lazyRules&&!0===p.value&&!0===u.value&&y()}function v(){d++,t.value=!1,u.value=!1,s.value=!1,l.value=null,y.cancel()}function b(e=n.modelValue){if(!0===n.disable||!1===h.value)return!0;let a=++d,i=!0!==t.value?()=>{u.value=!0}:()=>{},r=(e,n)=>{!0===e&&i(),s.value=e,l.value=n||null,t.value=!1},o=[];for(let t=0;t{if(void 0===e||!1===Array.isArray(e)||0===e.length)return a===d&&r(!1),!0;let t=e.find((e=>!1===e||"string"==typeof e));return a===d&&r(void 0!==t,t),void 0===t}),(e=>(a===d&&(console.error(e),r(!0)),!1))))}r((()=>n.modelValue),(()=>{u.value=!0,!0===p.value&&!1===n.lazyRules&&y()})),r((()=>n.reactiveRules),(e=>{!0===e?void 0===c&&(c=r((()=>n.rules),_,{immediate:!0,deep:!0})):void 0!==c&&(c(),c=void 0)}),{immediate:!0}),r((()=>n.lazyRules),_),r(e,(e=>{!0===e?u.value=!0:!0===p.value&&"ondemand"!==n.lazyRules&&y()}));let y=ae(b,0);return g((()=>{void 0!==c&&c(),y.cancel()})),Object.assign(o,{resetValidation:v,validate:b}),z(o,"hasError",(()=>f.value)),{isDirtyModel:u,hasRules:h,hasError:f,errorMessage:m,validate:b,resetValidation:v}}(e.focused,e.innerLoading),x=void 0!==e.floatingLabel?i((()=>!0===t.stackLabel||!0===e.focused.value||!0===e.floatingLabel.value)):i((()=>!0===t.stackLabel||!0===e.focused.value||!0===e.hasValue.value)),C=i((()=>!0===t.bottomSlots||void 0!==t.hint||!0===v.value||!0===t.counter||null!==t.error)),T=i((()=>!0===t.filled?"filled":!0===t.outlined?"outlined":!0===t.borderless?"borderless":t.standout?"standout":"standard")),E=i((()=>`q-field row no-wrap items-start q-field--${T.value}`+(void 0!==e.fieldClass?` ${e.fieldClass.value}`:"")+(!0===t.rounded?" q-field--rounded":"")+(!0===t.square?" q-field--square":"")+(!0===x.value?" q-field--float":"")+(!0===A.value?" q-field--labeled":"")+(!0===t.dense?" q-field--dense":"")+(!0===t.itemAligned?" q-field--item-aligned q-item-type":"")+(!0===e.isDark.value?" q-field--dark":"")+(void 0===e.getControl?" q-field--auto-height":"")+(!0===e.focused.value?" q-field--focused":"")+(!0===b.value?" q-field--error":"")+(!0===b.value||!0===e.focused.value?" q-field--highlighted":"")+(!0!==t.hideBottomSpace&&!0===C.value?" q-field--with-bottom":"")+(!0===t.disable?" q-field--disabled":!0===t.readonly?" q-field--readonly":""))),P=i((()=>"q-field__control relative-position row no-wrap"+(void 0!==t.bgColor?` bg-${t.bgColor}`:"")+(!0===b.value?" text-negative":"string"==typeof t.standout&&0!==t.standout.length&&!0===e.focused.value?` ${t.standout}`:void 0!==t.color?` text-${t.color}`:""))),A=i((()=>!0===t.labelSlot||void 0!==t.label)),L=i((()=>"q-field__label no-pointer-events absolute ellipsis"+(void 0!==t.labelColor&&!0!==b.value?` text-${t.labelColor}`:""))),M=i((()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:x.value,modelValue:t.modelValue,emitValue:e.emitValue}))),R=i((()=>{let n={};return e.targetUid.value&&(n.for=e.targetUid.value),!0===t.disable&&(n["aria-disabled"]="true"),n}));function N(){let t=document.activeElement,n=void 0!==e.targetRef&&e.targetRef.value;n&&(null===t||t.id!==e.targetUid.value)&&(!0===n.hasAttribute("tabindex")||(n=n.querySelector("[tabindex]")),n&&n!==t&&n.focus({preventScroll:!0}))}function I(){Vn(N)}function O(t){null!==f&&(clearTimeout(f),f=null),!0===e.editable.value&&!1===e.focused.value&&(e.focused.value=!0,o("focus",t))}function D(t,n){null!==f&&clearTimeout(f),f=setTimeout((()=>{f=null,(!0!==document.hasFocus()||!0!==e.hasPopupOpen&&void 0!==e.controlRef&&null!==e.controlRef.value&&!1===e.controlRef.value.contains(document.activeElement))&&(!0===e.focused.value&&(e.focused.value=!1,o("blur",t)),void 0!==n&&n())}))}function q(n){J(n),!0!==c.platform.is.mobile?(void 0!==e.targetRef&&e.targetRef.value||e.rootRef.value).focus():!0===e.rootRef.value.contains(document.activeElement)&&document.activeElement.blur(),"file"===t.type&&(e.inputRef.value.value=null),o("update:modelValue",null),!0===e.changeEvent&&o("change",null),o("clear",t.modelValue),d((()=>{let e=_.value;w(),_.value=e}))}function j(e){[13,32].includes(e.keyCode)&&q(e)}function B(){let a=[];return void 0!==s.prepend&&a.push(n("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:Z},s.prepend())),a.push(n("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},function(){let a=[];return void 0!==t.prefix&&null!==t.prefix&&a.push(n("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),void 0!==e.getShadowControl&&!0===e.hasShadow.value&&a.push(e.getShadowControl()),void 0!==e.getControl?a.push(e.getControl()):void 0!==s.rawControl?a.push(s.rawControl()):void 0!==s.control&&a.push(n("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":!0===t.autofocus||void 0},s.control(M.value))),!0===A.value&&a.push(n("div",{class:L.value},dt(s.label,t.label))),void 0!==t.suffix&&null!==t.suffix&&a.push(n("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),a.concat(dt(s.default))}())),!0===b.value&&!1===t.noErrorIcon&&a.push($("error",[n(Lt,{name:c.iconSet.field.error,color:"negative"})])),!0===t.loading||!0===e.innerLoading.value?a.push($("inner-loading-append",void 0!==s.loading?s.loading():[n(on,{color:t.color})])):!0===t.clearable&&!0===e.hasValue.value&&!0===e.editable.value&&a.push($("inner-clearable-append",[n(Lt,{class:"q-field__focusable-action",name:t.clearIcon||c.iconSet.field.clear,tabindex:0,role:"button","aria-hidden":"false","aria-label":c.lang.label.clear,onKeyup:j,onClick:q})])),void 0!==s.append&&a.push(n("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:Z},s.append())),void 0!==e.getInnerAppend&&a.push($("inner-append",e.getInnerAppend())),void 0!==e.getControlChild&&a.push(e.getControlChild()),a}function F(){let a,i;!0===b.value?null!==y.value?(a=[n("div",{role:"alert"},y.value)],i=`q--slot-error-${y.value}`):(a=dt(s.error),i="q--slot-error"):(!0!==t.hideHint||!0===e.focused.value)&&(void 0!==t.hint?(a=[n("div",t.hint)],i=`q--slot-hint-${t.hint}`):(a=dt(s.hint),i="q--slot-hint"));let r=!0===t.counter||void 0!==s.counter;if(!0===t.hideBottomSpace&&!1===r&&void 0===a)return;let o=n("div",{key:i,class:"q-field__messages col"},a);return n("div",{class:"q-field__bottom row items-start q-field__bottom--"+(!0!==t.hideBottomSpace?"animated":"stale"),onClick:Z},[!0===t.hideBottomSpace?o:n(S,{name:"q-transition--field-message"},(()=>o)),!0===r?n("div",{class:"q-field__counter"},void 0!==s.counter?s.counter():e.computedCounter.value):null])}function $(e,t){return null===t?null:n("div",{key:e,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},t)}let V=!1;return p((()=>{V=!0})),h((()=>{!0===V&&!0===t.autofocus&&u.focus()})),!0===t.autofocus&&m((()=>{u.focus()})),g((()=>{null!==f&&clearTimeout(f)})),Object.assign(u,{focus:I,blur:function(){!function(e){jn=jn.filter((t=>t!==e))}(N);let t=document.activeElement;null!==t&&e.rootRef.value.contains(t)&&t.blur()}}),function(){let a=void 0===e.getControl&&void 0===s.control?{...e.splitAttrs.attributes.value,"data-autofocus":!0===t.autofocus||void 0,...R.value}:R.value;return n(e.tag.value,{ref:e.rootRef,class:[E.value,l.class],style:l.style,...a},[void 0!==s.before?n("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:Z},s.before()):null,n("div",{class:"q-field__inner relative-position col self-stretch"},[n("div",{ref:e.controlRef,class:P.value,tabindex:-1,...e.controlEvents},B()),!0===C.value?F():null]),void 0!==s.after?n("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:Z},s.after()):null])}}var Hs=$({name:"QField",inheritAttrs:!1,props:{...Fs,tag:{type:String,default:"label"}},emits:$s,setup:()=>Us(Vs({tagProp:!0}))});function Ws(e,t,n,a){let i=[];return e.forEach((e=>{!0===a(e)?i.push(e):t.push({failedPropValidation:n,file:e})})),i}function Gs(e){e&&e.dataTransfer&&(e.dataTransfer.dropEffect="copy"),J(e)}var Ys={multiple:Boolean,accept:String,capture:String,maxFileSize:[Number,String],maxTotalSize:[Number,String],maxFiles:[Number,String],filter:Function},Ks=["rejected"];function Qs({editable:e,dnd:t,getFileInput:r,addFilesToQueue:o}){let{props:s,emit:l,proxy:u}=k(),c=a(null),d=i((()=>void 0!==s.accept?s.accept.split(",").map((e=>"*"===(e=e.trim())?"*/":(e.endsWith("/*")&&(e=e.slice(0,e.length-1)),e.toUpperCase()))):null)),h=i((()=>parseInt(s.maxFiles,10))),p=i((()=>parseInt(s.maxTotalSize,10)));function f(t){if(e.value)if(t!==Object(t)&&(t={target:null}),null!==t.target&&!0===t.target.matches('input[type="file"]'))0===t.clientX&&0===t.clientY&&Q(t);else{let e=r();e&&e!==t.target&&e.click(t)}}function m(t){e.value&&t&&o(null,t)}function g(e){J(e),!0==(null!==e.relatedTarget||!0!==j.is.safari?e.relatedTarget!==c.value:!1===document.elementsFromPoint(e.clientX,e.clientY).includes(c.value))&&(t.value=!1)}function _(e){Gs(e);let n=e.dataTransfer.files;0!==n.length&&o(null,n),t.value=!1}return Object.assign(u,{pickFiles:f,addFiles:m}),{pickFiles:f,addFiles:m,onDragover:function(e){Gs(e),!0!==t.value&&(t.value=!0)},onDragleave:g,processFiles:function(e,t,n,a){let i=Array.from(t||e.target.files),r=[],o=()=>{0!==r.length&&l("rejected",r)};if(void 0!==s.accept&&-1===d.value.indexOf("*/")&&(i=Ws(i,r,"accept",(e=>d.value.some((t=>e.type.toUpperCase().startsWith(t)||e.name.toUpperCase().endsWith(t))))),0===i.length))return o();if(void 0!==s.maxFileSize){let e=parseInt(s.maxFileSize,10);if(i=Ws(i,r,"max-file-size",(t=>t.size<=e)),0===i.length)return o()}if(!0!==s.multiple&&0!==i.length&&(i=[i[0]]),i.forEach((e=>{e.__key=e.webkitRelativePath+e.lastModified+e.name+e.size})),!0===a){let e=n.map((e=>e.__key));i=Ws(i,r,"duplicate",(t=>!1===e.includes(t.__key)))}if(0===i.length)return o();if(void 0!==s.maxTotalSize){let e=!0===a?n.reduce(((e,t)=>e+t.size),0):0;if(i=Ws(i,r,"max-total-size",(t=>(e+=t.size,e<=p.value))),0===i.length)return o()}if("function"==typeof s.filter){let e=s.filter(i);i=Ws(i,r,"filter",(t=>e.includes(t)))}if(void 0!==s.maxFiles){let e=!0===a?n.length:0;if(i=Ws(i,r,"max-files",(()=>(e++,e<=h.value))),0===i.length)return o()}return o(),0!==i.length?i:void 0},getDndNode:function(e){if(!0===t.value)return n("div",{ref:c,class:`q-${e}__dnd absolute-full`,onDragenter:Gs,onDragover:Gs,onDragleave:g,onDrop:_})},maxFilesNumber:h,maxTotalSizeNumber:p}}function Zs(e,t){function n(){let t=e.modelValue;try{let e="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(t)===t&&("length"in t?Array.from(t):[t]).forEach((t=>{e.items.add(t)})),{files:e.files}}catch{return{files:void 0}}}return i(!0===t?()=>{if("file"===e.type)return n()}:n)}var Js=$({name:"QFile",inheritAttrs:!1,props:{...Bs,...ii,...Ys,modelValue:[File,FileList,Array],append:Boolean,useChips:Boolean,displayValue:[String,Number],tabindex:{type:[String,Number],default:0},counterLabel:Function,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...$s,...Ks],setup(e,{slots:t,emit:r,attrs:o}){let{proxy:s}=k(),l=Vs(),u=a(null),c=a(!1),d=si(e),{pickFiles:h,onDragover:p,onDragleave:f,processFiles:m,getDndNode:g}=Qs({editable:l.editable,dnd:c,getFileInput:M,addFilesToQueue:R}),_=Zs(e),v=i((()=>Object(e.modelValue)===e.modelValue?"length"in e.modelValue?Array.from(e.modelValue):[e.modelValue]:[])),b=i((()=>js(v.value))),y=i((()=>v.value.map((e=>e.name)).join(", "))),w=i((()=>Qe(v.value.reduce(((e,t)=>e+t.size),0)))),x=i((()=>({totalSize:w.value,filesNumber:v.value.length,maxFiles:e.maxFiles}))),S=i((()=>({tabindex:-1,type:"file",title:"",accept:e.accept,capture:e.capture,name:d.value,...o,id:l.targetUid.value,disabled:!0!==l.editable.value}))),C=i((()=>"q-file q-field--auto-height"+(!0===c.value?" q-file--dnd":""))),T=i((()=>!0===e.multiple&&!0===e.append));function E(e){let t=v.value.slice();t.splice(e,1),P(t)}function P(t){r("update:modelValue",!0===e.multiple?t:t[0])}function A(e){13===e.keyCode&&Z(e)}function L(e){(13===e.keyCode||32===e.keyCode)&&h(e)}function M(){return u.value}function R(t,n){let a=m(t,n,v.value,T.value),i=M();null!=i&&(i.value=""),void 0!==a&&((!0===e.multiple?e.modelValue&&a.every((e=>v.value.includes(e))):e.modelValue===a[0])||P(!0===T.value?v.value.concat(a):a))}function N(){return[n("input",{class:[e.inputClass,"q-file__filler"],style:e.inputStyle})]}function I(){let t={ref:u,...S.value,..._.value,class:"q-field__input fit absolute-full cursor-pointer",onChange:R};return!0===e.multiple&&(t.multiple=!0),n("input",t)}return Object.assign(l,{fieldClass:C,emitValue:P,hasValue:b,inputRef:u,innerValue:v,floatingLabel:i((()=>!0===b.value||js(e.displayValue))),computedCounter:i((()=>{if(void 0!==e.counterLabel)return e.counterLabel(x.value);let t=e.maxFiles;return`${v.value.length}${void 0!==t?" / "+t:""} (${w.value})`})),getControlChild:()=>g("file"),getControl:()=>{let a={ref:l.targetRef,class:"q-field__native row items-center cursor-pointer",tabindex:e.tabindex};return!0===l.editable.value&&Object.assign(a,{onDragover:p,onDragleave:f,onKeydown:A,onKeyup:L}),n("div",a,[I()].concat(function(){if(void 0!==t.file)return 0===v.value.length?N():v.value.map(((e,n)=>t.file({index:n,file:e,ref:this})));if(void 0!==t.selected)return 0===v.value.length?N():t.selected({files:v.value,ref:this});if(!0===e.useChips)return 0===v.value.length?N():v.value.map(((t,a)=>n($i,{key:"file-"+a,removable:l.editable.value,dense:!0,textColor:e.color,tabindex:e.tabindex,onRemove:()=>{E(a)}},(()=>n("span",{class:"ellipsis",textContent:t.name})))));let a=void 0!==e.displayValue?e.displayValue:y.value;return 0!==a.length?[n("div",{class:e.inputClass,style:e.inputStyle,textContent:a})]:N()}()))}}),Object.assign(s,{removeAtIndex:E,removeFile:function(e){let t=v.value.indexOf(e);-1!==t&&E(t)},getNativeElement:()=>u.value}),z(s,"nativeEl",(()=>u.value)),Us(l)}}),Xs=$({name:"QFooter",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:t,emit:o}){let{proxy:{$q:s}}=k(),l=y(Ae,Ie);if(l===Ie)return console.error("QFooter needs to be child of QLayout"),Ie;let u=a(parseInt(e.heightHint,10)),c=a(!0),d=a(!0===O.value||!0===l.isContainer.value?0:window.innerHeight),h=i((()=>!0===e.reveal||-1!==l.view.value.indexOf("F")||s.platform.is.ios&&!0===l.isContainer.value)),p=i((()=>!0===l.isContainer.value?l.containerHeight.value:d.value)),f=i((()=>{if(!0!==e.modelValue)return 0;if(!0===h.value)return!0===c.value?u.value:0;let t=l.scroll.value.position+p.value+u.value-l.height.value;return t>0?t:0})),m=i((()=>!0!==e.modelValue||!0===h.value&&!0!==c.value)),_=i((()=>!0===e.modelValue&&!0===m.value&&!0===e.reveal)),v=i((()=>"q-footer q-layout__section--marginal "+(!0===h.value?"fixed":"absolute")+"-bottom"+(!0===e.bordered?" q-footer--bordered":"")+(!0===m.value?" q-footer--hidden":"")+(!0!==e.modelValue?" q-layout--prevent-focus"+(!0!==h.value?" hidden":""):""))),b=i((()=>{let e=l.rows.value.bottom,t={};return"l"===e[0]&&!0===l.left.space&&(t[!0===s.lang.rtl?"right":"left"]=`${l.left.size}px`),"r"===e[2]&&!0===l.right.space&&(t[!0===s.lang.rtl?"left":"right"]=`${l.right.size}px`),t}));function w(e,t){l.update("footer",e,t)}function x(e,t){e.value!==t&&(e.value=t)}function S({height:e}){x(u,e),w("size",e)}function C(e){!0===_.value&&x(c,!0),o("focusin",e)}r((()=>e.modelValue),(e=>{w("space",e),x(c,!0),l.animate()})),r(f,(e=>{w("offset",e)})),r((()=>e.reveal),(t=>{!1===t&&x(c,e.modelValue)})),r(c,(e=>{l.animate(),o("reveal",e)})),r([u,l.scroll,l.height],(function(){if(!0!==e.reveal)return;let{direction:t,position:n,inflectionPoint:a}=l.scroll.value;x(c,"up"===t||n-a<100||l.height.value-p.value-n-u.value<300)})),r((()=>s.screen.height),(e=>{!0!==l.isContainer.value&&x(d,e)}));let T={};return l.instances.footer=T,!0===e.modelValue&&w("size",u.value),w("space",e.modelValue),w("offset",f.value),g((()=>{l.instances.footer===T&&(l.instances.footer=void 0,w("size",0),w("offset",0),w("space",!1))})),()=>{let a=pt(t.default,[n(lr,{debounce:0,onResize:S})]);return!0===e.elevated&&a.push(n("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),n("footer",{class:v.value,style:b.value,onFocusin:C},a)}}}),el=$({name:"QForm",props:{autofocus:Boolean,noErrorFocus:Boolean,noResetFocus:Boolean,greedy:Boolean,onSubmit:Function},emits:["reset","validationSuccess","validationError"],setup(e,{slots:t,emit:i}){let r=k(),o=a(null),s=0,l=[];function u(t){let n="boolean"==typeof t?t:!0!==e.noErrorFocus,a=++s,r=(e,t)=>{i("validation"+(!0===e?"Success":"Error"),t)},o=e=>{let t=e.validate();return"function"==typeof t.then?t.then((t=>({valid:t,comp:e})),(t=>({valid:!1,comp:e,err:t}))):Promise.resolve({valid:t,comp:e})};return(!0===e.greedy?Promise.all(l.map(o)).then((e=>e.filter((e=>!0!==e.valid)))):l.reduce(((e,t)=>e.then((()=>o(t).then((e=>{if(!1===e.valid)return Promise.reject(e)}))))),Promise.resolve()).catch((e=>[e]))).then((e=>{if(void 0===e||0===e.length)return a===s&&r(!0),!0;if(a===s){let{comp:t,err:a}=e[0];if(void 0!==a&&console.error(a),r(!1,t),!0===n){let t=e.find((({comp:e})=>"function"==typeof e.focus&&!1===Wt(e.$)));void 0!==t&&t.comp.focus()}}return!1}))}function c(){s++,l.forEach((e=>{"function"==typeof e.resetValidation&&e.resetValidation()}))}function f(t){void 0!==t&&J(t);let n=s+1;u().then((a=>{n===s&&!0===a&&(void 0!==e.onSubmit?i("submit",t):void 0!==t&&void 0!==t.target&&"function"==typeof t.target.submit&&t.target.submit())}))}function g(t){void 0!==t&&J(t),i("reset"),d((()=>{c(),!0===e.autofocus&&!0!==e.noResetFocus&&_()}))}function _(){Vn((()=>{if(null===o.value)return;let e=o.value.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||o.value.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||o.value.querySelector("[autofocus], [data-autofocus]")||Array.prototype.find.call(o.value.querySelectorAll("[tabindex]"),(e=>-1!==e.tabIndex));e?.focus({preventScroll:!0})}))}w(Re,{bindComponent(e){l.push(e)},unbindComponent(e){let t=l.indexOf(e);-1!==t&&l.splice(t,1)}});let v=!1;return p((()=>{v=!0})),h((()=>{!0===v&&!0===e.autofocus&&_()})),m((()=>{!0===e.autofocus&&_()})),Object.assign(r.proxy,{validate:u,resetValidation:c,submit:f,reset:g,focus:_,getValidationComponents:()=>l}),()=>n("form",{class:"q-form",ref:o,onSubmit:f,onReset:g},dt(t.default))}}),tl={inject:{[Re]:{default:W}},watch:{disable(e){let t=this.$.provides[Re];void 0!==t&&(!0===e?(this.resetValidation(),t.unbindComponent(this)):t.bindComponent(this))}},methods:{validate(){},resetValidation(){}},mounted(){let e=this.$.provides[Re];void 0!==e&&!0!==this.disable&&e.bindComponent(this)},beforeUnmount(){let e=this.$.provides[Re];void 0!==e&&!0!==this.disable&&e.unbindComponent(this)}},nl=$({name:"QHeader",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,revealOffset:{type:Number,default:250},bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:t,emit:o}){let{proxy:{$q:s}}=k(),l=y(Ae,Ie);if(l===Ie)return console.error("QHeader needs to be child of QLayout"),Ie;let u=a(parseInt(e.heightHint,10)),c=a(!0),d=i((()=>!0===e.reveal||-1!==l.view.value.indexOf("H")||s.platform.is.ios&&!0===l.isContainer.value)),h=i((()=>{if(!0!==e.modelValue)return 0;if(!0===d.value)return!0===c.value?u.value:0;let t=u.value-l.scroll.value.position;return t>0?t:0})),p=i((()=>!0!==e.modelValue||!0===d.value&&!0!==c.value)),f=i((()=>!0===e.modelValue&&!0===p.value&&!0===e.reveal)),m=i((()=>"q-header q-layout__section--marginal "+(!0===d.value?"fixed":"absolute")+"-top"+(!0===e.bordered?" q-header--bordered":"")+(!0===p.value?" q-header--hidden":"")+(!0!==e.modelValue?" q-layout--prevent-focus":""))),_=i((()=>{let e=l.rows.value.top,t={};return"l"===e[0]&&!0===l.left.space&&(t[!0===s.lang.rtl?"right":"left"]=`${l.left.size}px`),"r"===e[2]&&!0===l.right.space&&(t[!0===s.lang.rtl?"left":"right"]=`${l.right.size}px`),t}));function v(e,t){l.update("header",e,t)}function b(e,t){e.value!==t&&(e.value=t)}function w({height:e}){b(u,e),v("size",e)}function x(e){!0===f.value&&b(c,!0),o("focusin",e)}r((()=>e.modelValue),(e=>{v("space",e),b(c,!0),l.animate()})),r(h,(e=>{v("offset",e)})),r((()=>e.reveal),(t=>{!1===t&&b(c,e.modelValue)})),r(c,(e=>{l.animate(),o("reveal",e)})),r(l.scroll,(t=>{!0===e.reveal&&b(c,"up"===t.direction||t.position<=e.revealOffset||t.position-t.inflectionPoint<100)}));let S={};return l.instances.header=S,!0===e.modelValue&&v("size",u.value),v("space",e.modelValue),v("offset",h.value),g((()=>{l.instances.header===S&&(l.instances.header=void 0,v("size",0),v("offset",0),v("space",!1))})),()=>{let a=ht(t.default,[]);return!0===e.elevated&&a.push(n("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),a.push(n(lr,{debounce:0,onResize:w})),n("header",{class:m.value,style:_.value,onFocusin:x},a)}}}),al={ratio:[String,Number]};function il(e,t){return i((()=>{let n=Number(e.ratio||(void 0!==t?t.value:void 0));return!0!==isNaN(n)&&n>0?{paddingBottom:100/n+"%"}:null}))}var rl=$({name:"QImg",props:{...al,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},loadingShowDelay:{type:[Number,String],default:0},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:1.7778},placeholderSrc:String,errorSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:t,emit:o}){let s=a(e.initialRatio),l=il(e,s),u=k(),{registerTimeout:c,removeTimeout:d}=aa(),{registerTimeout:h,removeTimeout:p}=aa(),f=i((()=>void 0!==e.placeholderSrc?{src:e.placeholderSrc}:null)),g=i((()=>void 0!==e.errorSrc?{src:e.errorSrc,__qerror:!0}:null)),_=[a(null),a(f.value)],v=a(0),b=a(!1),y=a(!1),w=i((()=>`q-img q-img--${!0===e.noNativeMenu?"no-":""}menu`)),x=i((()=>({width:e.width,height:e.height}))),C=i((()=>`q-img__image ${void 0!==e.imgClass?e.imgClass+" ":""}q-img__image--with${!0===e.noTransition?"out":""}-transition q-img__image--`)),T=i((()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position})));function E(){p(),b.value=!1}function P({target:e}){!1===Wt(u)&&(d(),s.value=0===e.naturalHeight?.5:e.naturalWidth/e.naturalHeight,A(e,1))}function A(e,t){1e3===t||!0===Wt(u)||(!0===e.complete?function(e){!0!==Wt(u)&&(v.value=1^v.value,_[v.value].value=null,E(),"true"!==e.getAttribute("__qerror")&&(y.value=!1),o("load",e.currentSrc||e.src))}(e):c((()=>{A(e,t+1)}),50))}function L(e){d(),E(),y.value=!0,_[v.value].value=g.value,_[1^v.value].value=f.value,o("error",e)}function M(t){let a=_[t].value,i={key:"img_"+t,class:C.value,style:T.value,alt:e.alt,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...a};return v.value===t?Object.assign(i,{class:i.class+"current",onLoad:P,onError:L}):i.class+="loaded",n("div",{class:"q-img__container absolute-full",key:"img"+t},n("img",i))}function R(){return!1===b.value?n("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},dt(t[!0===y.value?"error":"default"])):n("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},void 0!==t.loading?t.loading():!0===e.noSpinner?void 0:[n(on,{color:e.spinnerColor,size:e.spinnerSize})])}{let t=function(){r((()=>e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null),(t=>{d(),y.value=!1,null===t?(E(),_[1^v.value].value=f.value):(p(),0!==e.loadingShowDelay?h((()=>{b.value=!0}),e.loadingShowDelay):b.value=!0),_[v.value].value=t}),{immediate:!0})};!0===O.value?m(t):t()}return()=>{let t=[];return null!==l.value&&t.push(n("div",{key:"filler",style:l.value})),null!==_[0].value&&t.push(M(0)),null!==_[1].value&&t.push(M(1)),t.push(n(S,{name:"q-transition--fade"},R)),n("div",{key:"main",class:w.value,style:x.value,role:"img","aria-label":e.alt},t)}}}),{passive:ol}=H,sl=$({name:"QInfiniteScroll",props:{offset:{type:Number,default:500},debounce:{type:[String,Number],default:100},scrollTarget:ra,initialIndex:{type:Number,default:0},disable:Boolean,reverse:Boolean},emits:["load"],setup(e,{slots:t,emit:o}){let s,l,u=a(!1),c=a(!0),f=a(null),_=a(null),v=e.initialIndex,b=i((()=>"q-infinite-scroll__loading"+(!0===u.value?"":" invisible")));function y(){if(!0===e.disable||!0===u.value||!1===c.value)return;let t=la(s),n=ua(s),a=ln(s);!1===e.reverse?Math.round(n+a+e.offset)>=Math.round(t)&&w():Math.round(n)<=e.offset&&w()}function w(){if(!0===e.disable||!0===u.value||!1===c.value)return;v++,u.value=!0;let t=la(s);o("load",v,(n=>{!0===c.value&&(u.value=!1,d((()=>{if(!0===e.reverse){let e=la(s),n=ua(s);ma(s,n+(e-t))}!0===n?S():f.value&&f.value.closest("body")&&l()})))}))}function x(){!1===c.value&&(c.value=!0,s.addEventListener("scroll",l,ol)),y()}function S(){!0===c.value&&(c.value=!1,u.value=!1,s.removeEventListener("scroll",l,ol),void 0!==l&&void 0!==l.cancel&&l.cancel())}function C(){if(s&&!0===c.value&&s.removeEventListener("scroll",l,ol),s=sa(f.value,e.scrollTarget),!0===c.value){if(s.addEventListener("scroll",l,ol),!0===e.reverse){let e=la(s),t=ln(s);ma(s,e-t)}y()}}function T(e){e=parseInt(e,10);let t=l;l=e<=0?y:ae(y,!0===isNaN(e)?100:e),s&&!0===c.value&&(void 0!==t&&s.removeEventListener("scroll",t,ol),s.addEventListener("scroll",l,ol))}function E(e){if(!0===P.value){if(null===_.value)return void(!0!==e&&d((()=>{E(!0)})));let t=(!0===u.value?"un":"")+"pauseAnimations";Array.from(_.value.getElementsByTagName("svg")).forEach((e=>{e[t]()}))}}let P=i((()=>!0!==e.disable&&!0===c.value));r([u,P],(()=>{E()})),r((()=>e.disable),(e=>{!0===e?S():x()})),r((()=>e.reverse),(()=>{!1===u.value&&!0===c.value&&y()})),r((()=>e.scrollTarget),C),r((()=>e.debounce),T);let A=!1;h((()=>{!1!==A&&s&&ma(s,A)})),p((()=>{A=!!s&&ua(s)})),g((()=>{!0===c.value&&s.removeEventListener("scroll",l,ol)})),m((()=>{T(e.debounce),C(),!1===u.value&&E()}));let L=k();return Object.assign(L.proxy,{poll:()=>{void 0!==l&&l()},trigger:w,stop:S,reset:function(){v=0},resume:x,setIndex:function(e){v=e},updateScrollTarget:C}),()=>{let a=ht(t.default,[]);return!0===P.value&&a[!1===e.reverse?"push":"unshift"](n("div",{ref:_,class:b.value},dt(t.loading))),n("div",{class:"q-infinite-scroll",ref:f},a)}}}),ll=$({name:"QInnerLoading",props:{...Nt,...ea,showing:Boolean,color:String,size:{type:[String,Number],default:"42px"},label:String,labelClass:String,labelStyle:[String,Array,Object]},setup(e,{slots:t}){let a=k(),r=It(e,a.proxy.$q),{transitionProps:o,transitionStyle:s}=ta(e),l=i((()=>"q-inner-loading q--avoid-card-border absolute-full column flex-center"+(!0===r.value?" q-inner-loading--dark":""))),u=i((()=>"q-inner-loading__label"+(void 0!==e.labelClass?` ${e.labelClass}`:"")));function c(){return!0===e.showing?n("div",{class:l.value,style:s.value},void 0!==t.default?t.default():function(){let t=[n(on,{size:e.size,color:e.color})];return void 0!==e.label&&t.push(n("div",{class:u.value,style:e.labelStyle},[e.label])),t}()):null}return()=>n(S,o.value,c)}}),ul={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},cl={"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}},dl=Object.keys(cl);dl.forEach((e=>{cl[e].regex=new RegExp(cl[e].pattern)}));var hl=new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+dl.join("")+"])|(.)","g"),pl=/[.*+?^${}()|[\]\\]/g,fl="",ml={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean};function gl(e,t,n,i){let o,s,l,u,c,h,p=a(null),f=a(function(){if(g(),!0===p.value){let t=b(y(e.modelValue));return!1!==e.fillMask?w(t):t}return e.modelValue}());function m(e){if(e0;a--)t+=fl;n=n.slice(0,a)+t+n.slice(a)}return n}function g(){if(p.value=void 0!==e.mask&&0!==e.mask.length&&(!0===e.autogrow||["textarea","text","search","url","tel","password"].includes(e.type)),!1===p.value)return u=void 0,o="",void(s="");let t=void 0===ul[e.mask]?e.mask:ul[e.mask],n="string"==typeof e.fillMask&&0!==e.fillMask.length?e.fillMask.slice(0,1):"_",a=n.replace(pl,"\\$&"),i=[],r=[],c=[],d=!0===e.reverseFillMask,h="",f="";t.replace(hl,((e,t,n,a,o)=>{if(void 0!==a){let e=cl[a];c.push(e),f=e.negate,!0===d&&(r.push("(?:"+f+"+)?("+e.pattern+"+)?(?:"+f+"+)?("+e.pattern+"+)?"),d=!1),r.push("(?:"+f+"+)?("+e.pattern+")?")}else if(void 0!==n)h="\\"+("\\"===n?"":n),c.push(n),i.push("([^"+h+"]+)?"+h+"?");else{let e=void 0!==t?t:o;h="\\"===e?"\\\\\\\\":e.replace(pl,"\\\\$&"),c.push(e),i.push("([^"+h+"]+)?"+h+"?")}}));let m=new RegExp("^"+i.join("")+"("+(""===h?".":"[^"+h+"]")+"+)?"+(""===h?"":"["+h+"]*")+"$"),g=r.length-1,_=r.map(((t,n)=>0===n&&!0===e.reverseFillMask?new RegExp("^"+a+"*"+t):n===g?new RegExp("^"+t+"("+(""===f?".":f)+"+)?"+(!0===e.reverseFillMask?"$":a+"*")):new RegExp("^"+t)));l=c,u=t=>{let n=m.exec(!0===e.reverseFillMask?t:t.slice(0,c.length+1));null!==n&&(t=n.slice(1).join(""));let a=[],i=_.length;for(let e=0,n=t;e"string"==typeof e?e:fl)).join(""),s=o.split(fl).join(n)}function _(t,a,r){let l=i.value,u=l.selectionEnd,h=l.value.length-u,p=y(t);!0===a&&g();let m=b(p),_=!1!==e.fillMask?w(m):m,k=f.value!==_;l.value!==_&&(l.value=_),!0===k&&(f.value=_),document.activeElement===l&&d((()=>{if(_!==s)if("insertFromPaste"!==r||!0===e.reverseFillMask)if(-1===["deleteContentBackward","deleteContentForward"].indexOf(r))if(!0===e.reverseFillMask)if(!0===k){let e=Math.max(0,_.length-(_===s?0:Math.min(m.length,h+1)));1===e&&1===u?l.setSelectionRange(e,e,"forward"):v.rightReverse(l,e)}else{let e=_.length-h;l.setSelectionRange(e,e,"backward")}else if(!0===k){let e=Math.max(0,o.indexOf(fl),Math.min(m.length,u)-1);v.right(l,e)}else{let e=u-1;v.right(l,e)}else{let t=!0===e.reverseFillMask?0===u?_.length>m.length?1:0:Math.max(0,_.length-(_===s?0:Math.min(m.length,h)+1))+1:u;l.setSelectionRange(t,t,"forward")}else{let e=l.selectionEnd,t=u-1;for(let n=c;n<=t&&ne.type+e.autogrow),g),r((()=>e.mask),(n=>{if(void 0!==n)_(f.value,!0);else{let n=y(f.value);g(),e.modelValue!==n&&t("update:modelValue",n)}})),r((()=>e.fillMask+e.reverseFillMask),(()=>{!0===p.value&&_(f.value,!0)})),r((()=>e.unmaskedValue),(()=>{!0===p.value&&_(f.value)}));let v={left(e,t){let n=-1===o.slice(t-1).indexOf(fl),a=Math.max(0,t-1);for(;a>=0;a--)if(o[a]===fl){t=a,!0===n&&t++;break}if(a<0&&void 0!==o[t]&&o[t]!==fl)return v.right(e,0);t>=0&&e.setSelectionRange(t,t,"backward")},right(e,t){let n=e.value.length,a=Math.min(n,t+1);for(;a<=n;a++){if(o[a]===fl){t=a;break}o[a-1]===fl&&(t=a)}if(a>n&&void 0!==o[t-1]&&o[t-1]!==fl)return v.left(e,n);e.setSelectionRange(t,t,"forward")},leftReverse(e,t){let n=m(e.value.length),a=Math.max(0,t-1);for(;a>=0;a--){if(n[a-1]===fl){t=a;break}if(n[a]===fl&&(t=a,0===a))break}if(a<0&&void 0!==n[t]&&n[t]!==fl)return v.rightReverse(e,0);t>=0&&e.setSelectionRange(t,t,"backward")},rightReverse(e,t){let n=e.value.length,a=m(n),i=-1===a.slice(0,t+1).indexOf(fl),r=Math.min(n,t+1);for(;r<=n;r++)if(a[r-1]===fl){(t=r)>0&&!0===i&&t--;break}if(r>n&&void 0!==a[t-1]&&a[t-1]!==fl)return v.leftReverse(e,n);e.setSelectionRange(t,t,"forward")}};function b(t){if(null==t||""===t)return"";if(!0===e.reverseFillMask)return function(e){let t=l,n=o.indexOf(fl),a=e.length-1,i="";for(let r=t.length-1;r>=0&&-1!==a;r--){let o=t[r],s=e[a];if("string"==typeof o)i=o+i,s===o&&a--;else{if(void 0===s||!o.regex.test(s))return i;do{i=(void 0!==o.transform?o.transform(s):s)+i,a--,s=e[a]}while(n===r&&void 0!==s&&o.regex.test(s))}}return i}(t);let n=l,a=0,i="";for(let e=0;ejs(y.value))),A=_l(D),L=Vs({changeEvent:!0}),M=i((()=>"textarea"===e.type||!0===e.autogrow)),R=i((()=>!0===M.value||["text","search","url","tel","password"].includes(e.type))),N=i((()=>{let t={...L.splitAttrs.listeners.value,onInput:D,onPaste:O,onChange:F,onBlur:$,onFocus:Q};return t.onCompositionstart=t.onCompositionupdate=t.onCompositionend=A,!0===w.value&&(t.onKeydown=C,t.onClick=T),!0===e.autogrow&&(t.onAnimationend=q),t})),I=i((()=>{let t={tabindex:0,"data-autofocus":!0===e.autofocus||void 0,rows:"textarea"===e.type?6:void 0,"aria-label":e.label,name:b.value,...L.splitAttrs.attributes.value,id:L.targetUid.value,maxlength:e.maxlength,disabled:!0===e.disable,readonly:!0===e.readonly};return!1===M.value&&(t.type=e.type),!0===e.autogrow&&(t.rows=1),t}));function O(n){if(!0===w.value&&!0!==e.reverseFillMask){let e=n.target;x(e,e.selectionStart,e.selectionEnd)}t("paste",n)}function D(n){if(!n||!n.target)return;if("file"===e.type)return void t("update:modelValue",n.target.files);let a=n.target.value;if(!0!==n.target.qComposing){if(!0===w.value)S(a,!1,n.inputType);else if(j(a),!0===R.value&&n.target===document.activeElement){let{selectionStart:e,selectionEnd:t}=n.target;void 0!==e&&void 0!==t&&d((()=>{n.target===document.activeElement&&0===a.indexOf(n.target.value)&&n.target.setSelectionRange(e,t)}))}!0===e.autogrow&&B()}else p.value=a}function q(e){t("animationend",e),B()}function j(n,a){u=()=>{_=null,"number"!==e.type&&!0===p.hasOwnProperty("value")&&delete p.value,e.modelValue!==n&&f!==n&&(f=n,!0===a&&(l=!0),t("update:modelValue",n),d((()=>{f===n&&(f=NaN)}))),u=void 0},"number"===e.type&&(s=!0,p.value=n),void 0!==e.debounce?(null!==_&&clearTimeout(_),p.value=n,_=setTimeout(u,e.debounce)):u()}function B(){requestAnimationFrame((()=>{let e=v.value;if(null!==e){let t=e.parentNode.style,{scrollTop:n}=e,{overflowY:a,maxHeight:i}=!0===h.platform.is.firefox?{}:window.getComputedStyle(e),r=void 0!==a&&"scroll"!==a;!0===r&&(e.style.overflowY="hidden"),t.marginBottom=e.scrollHeight-1+"px",e.style.height="1px",e.style.height=e.scrollHeight+"px",!0===r&&(e.style.overflowY=parseInt(i,10){null!==v.value&&(v.value.value=void 0!==y.value?y.value:"")}))}function V(){return!0===p.hasOwnProperty("value")?p.value:void 0!==y.value?y.value:""}r((()=>e.type),(()=>{v.value&&(v.value.value=e.modelValue)})),r((()=>e.modelValue),(t=>{if(!0===w.value){if(!0===l&&(l=!1,String(t)===f))return;S(t)}else y.value!==t&&(y.value=t,"number"===e.type&&!0===p.hasOwnProperty("value")&&(!0===s?s=!1:delete p.value));!0===e.autogrow&&d(B)})),r((()=>e.autogrow),(e=>{!0===e?d(B):null!==v.value&&o.rows>0&&(v.value.style.height="auto")})),r((()=>e.dense),(()=>{!0===e.autogrow&&d(B)})),g((()=>{$()})),m((()=>{!0===e.autogrow&&B()})),Object.assign(L,{innerValue:y,fieldClass:i((()=>"q-"+(!0===M.value?"textarea":"input")+(!0===e.autogrow?" q-textarea--autogrow":""))),hasShadow:i((()=>"file"!==e.type&&"string"==typeof e.shadowText&&0!==e.shadowText.length)),inputRef:v,emitValue:j,hasValue:P,floatingLabel:i((()=>!0===P.value&&("number"!==e.type||!1===isNaN(y.value))||js(e.displayValue))),getControl:()=>n(!0===M.value?"textarea":"input",{ref:v,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...I.value,...N.value,..."file"!==e.type?{value:V()}:E.value}),getShadowControl:()=>n("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(!0===M.value?"":" text-no-wrap")},[n("span",{class:"invisible"},V()),n("span",e.shadowText)])});let U=Us(L);return Object.assign(c,{focus:function(){Vn((()=>{let e=document.activeElement;null!==v.value&&v.value!==e&&(null===e||e.id!==L.targetUid.value)&&v.value.focus({preventScroll:!0})}))},select:function(){null!==v.value&&v.value.select()},getNativeElement:()=>v.value}),z(c,"nativeEl",(()=>v.value)),U}}),bl={threshold:0,root:null,rootMargin:"0px"};function yl(e,t,n){let a,i,r;"function"==typeof n?(a=n,i=bl,r=void 0===t.cfg):(a=n.handler,i=Object.assign({},bl,n.cfg),r=void 0===t.cfg||!1===qe(t.cfg,i)),t.handler!==a&&(t.handler=a),!0===r&&(t.cfg=i,void 0!==t.observer&&t.observer.unobserve(e),t.observer=new IntersectionObserver((([n])=>{if("function"==typeof t.handler){if(null===n.rootBounds&&!0===document.body.contains(e))return t.observer.unobserve(e),void t.observer.observe(e);(!1===t.handler(n,t.observer)||!0===t.once&&!0===n.isIntersecting)&&wl(e)}}),i),t.observer.observe(e))}function wl(e){let t=e.__qvisible;void 0!==t&&(void 0!==t.observer&&t.observer.unobserve(e),delete e.__qvisible)}var kl=V({name:"intersection",mounted(e,{modifiers:t,value:n}){let a={once:!0===t.once};yl(e,a,n),e.__qvisible=a},updated(e,t){let n=e.__qvisible;void 0!==n&&yl(e,n,t.value)},beforeUnmount:wl}),xl=$({name:"QIntersection",props:{tag:{type:String,default:"div"},once:Boolean,transition:String,transitionDuration:{type:[String,Number],default:300},ssrPrerender:Boolean,margin:String,threshold:[Number,Array],root:{default:null},disable:Boolean,onVisibility:Function},setup(e,{slots:t,emit:r}){let o=a(!0===O.value&&e.ssrPrerender),s=i((()=>void 0!==e.root||void 0!==e.margin||void 0!==e.threshold?{handler:d,cfg:{root:e.root,rootMargin:e.margin,threshold:e.threshold}}:d)),l=i((()=>!0!==e.disable&&(!0!==O.value||!0!==e.once||!0!==e.ssrPrerender))),u=i((()=>[[kl,s.value,void 0,{once:e.once}]])),c=i((()=>`--q-transition-duration: ${e.transitionDuration}ms`));function d(t){o.value!==t.isIntersecting&&(o.value=t.isIntersecting,void 0!==e.onVisibility&&r("visibility",o.value))}function h(){return!0===o.value?[n("div",{key:"content",style:c.value},dt(t.default))]:void 0!==t.hidden?[n("div",{key:"hidden",style:c.value},t.hidden())]:void 0}return()=>{let t=e.transition?[n(S,{name:"q-transition--"+e.transition},h)]:h();return mt(e.tag,{class:"q-intersection"},t,"main",l.value,(()=>u.value))}}}),Sl=["ul","ol"],Cl=$({name:"QList",props:{...Nt,bordered:Boolean,dense:Boolean,separator:Boolean,padding:Boolean,tag:{type:String,default:"div"}},setup(e,{slots:t}){let a=k(),r=It(e,a.proxy.$q),o=i((()=>Sl.includes(e.tag)?null:"list")),s=i((()=>"q-list"+(!0===e.bordered?" q-list--bordered":"")+(!0===e.dense?" q-list--dense":"")+(!0===e.separator?" q-list--separator":"")+(!0===r.value?" q-list--dark":"")+(!0===e.padding?" q-list--padding":"")));return()=>n(e.tag,{class:s.value,role:o.value},dt(t.default))}}),Tl=[34,37,40,33,39,38],El=Object.keys(Vi),Pl=$({name:"QKnob",props:{...ii,...Vi,modelValue:{type:Number,required:!0},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},tabindex:{type:[Number,String],default:0},disable:Boolean,readonly:Boolean},emits:["update:modelValue","change","dragValue"],setup(e,{slots:t,emit:o}){let s,{proxy:l}=k(),{$q:u}=l,c=a(e.modelValue),d=a(!1),h=i((()=>!0===isNaN(e.innerMin)||e.innerMin!0===isNaN(e.innerMax)||e.innerMax>e.max?e.max:e.innerMax));function f(){c.value=null===e.modelValue?h.value:Je(e.modelValue,h.value,p.value),R(!0)}r((()=>`${e.modelValue}|${h.value}|${p.value}`),f),f();let m=i((()=>!1===e.disable&&!1===e.readonly)),g=i((()=>"q-knob non-selectable"+(!0===m.value?" q-knob--editable":!0===e.disable?" disabled":""))),_=i((()=>(String(e.step).trim().split(".")[1]||"").length)),v=i((()=>0===e.step?1:e.step)),b=i((()=>!0===e.instantFeedback||!0===d.value)),y=!0===u.platform.is.mobile?i((()=>!0===m.value?{onClick:P}:{})):i((()=>!0===m.value?{onMousedown:E,onClick:P,onKeydown:A,onKeyup:M}:{})),w=i((()=>!0===m.value?{tabindex:e.tabindex}:{["aria-"+(!0===e.disable?"disabled":"readonly")]:"true"})),x=i((()=>{let t={};return El.forEach((n=>{t[n]=e[n]})),t}));function S(e){e.isFinal?(L(e.evt,!0),d.value=!1):(e.isFirst&&(T(),d.value=!0),L(e.evt))}let C=i((()=>[[Ki,S,void 0,{prevent:!0,stop:!0,mouse:!0}]]));function T(){let{top:e,left:t,width:n,height:a}=l.$el.getBoundingClientRect();s={top:e+a/2,left:t+n/2}}function E(e){T(),L(e)}function P(e){T(),L(e,!0)}function A(e){if(!Tl.includes(e.keyCode))return;J(e);let t=([34,33].includes(e.keyCode)?10:1)*v.value,n=[34,37,40].includes(e.keyCode)?-t:t;c.value=Je(parseFloat((c.value+n).toFixed(_.value)),h.value,p.value),R()}function L(t,n){let a=Y(t),i=Math.abs(a.top-s.top),r=Math.sqrt(i**2+Math.abs(a.left-s.left)**2),l=Math.asin(i/r)*(180/Math.PI);l=a.top=v.value/2?(e<0?-1:1)*v.value:0),d=parseFloat(d.toFixed(_.value))}d=Je(d,h.value,p.value),o("dragValue",d),c.value!==d&&(c.value=d),R(n)}function M(e){Tl.includes(e.keyCode)&&R(!0)}function R(t){e.modelValue!==c.value&&o("update:modelValue",c.value),!0===t&&o("change",c.value)}let z=ri(e);function N(){return n("input",z.value)}return()=>{let n={class:g.value,role:"slider","aria-valuemin":h.value,"aria-valuemax":p.value,"aria-valuenow":e.modelValue,...w.value,...x.value,value:c.value,instantFeedback:b.value,...y.value},a={default:t.default};return!0===m.value&&void 0!==e.name&&(a.internal=N),mt(Wi,n,a,"knob",m.value,(()=>C.value))}}}),{passive:Al}=H,Ll=["both","horizontal","vertical"],Ml=$({name:"QScrollObserver",props:{axis:{type:String,validator:e=>Ll.includes(e),default:"vertical"},debounce:[String,Number],scrollTarget:ra},emits:["scroll"],setup(e,{emit:t}){let n,a,i={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}},o=null;function s(){null!==o&&o();let a=Math.max(0,ua(n)),r=ca(n),s={top:a-i.position.top,left:r-i.position.left};if("vertical"===e.axis&&0===s.top||"horizontal"===e.axis&&0===s.left)return;let l=Math.abs(s.top)>=Math.abs(s.left)?s.top<0?"up":"down":s.left<0?"left":"right";i.position={top:a,left:r},i.directionChanged=i.direction!==l,i.delta=s,!0===i.directionChanged&&(i.direction=l,i.inflectionPoint=i.position),t("scroll",{...i})}function l(){n=sa(a,e.scrollTarget),n.addEventListener("scroll",c,Al),c(!0)}function u(){void 0!==n&&(n.removeEventListener("scroll",c,Al),n=void 0)}function c(t){if(!0===t||0===e.debounce||"0"===e.debounce)s();else if(null===o){let[t,n]=e.debounce?[setTimeout(s,e.debounce),clearTimeout]:[requestAnimationFrame(s),cancelAnimationFrame];o=()=>{n(t),o=null}}}r((()=>e.scrollTarget),(()=>{u(),l()}));let{proxy:d}=k();return r((()=>d.$q.lang.rtl),s),m((()=>{a=d.$el.parentNode,l()})),g((()=>{null!==o&&o(),u()})),Object.assign(d,{trigger:c,getPosition:()=>i}),W}}),Rl=$({name:"QLayout",props:{container:Boolean,view:{type:String,default:"hhh lpr fff",validator:e=>/^(h|l)h(h|r) lpr (f|l)f(f|r)$/.test(e.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(e,{slots:t,emit:o}){let{proxy:{$q:s}}=k(),l=a(null),c=a(s.screen.height),d=a(!0===e.container?0:s.screen.width),h=a({position:0,direction:"down",inflectionPoint:0}),p=a(0),f=a(!0===O.value?0:_a()),m=i((()=>"q-layout q-layout--"+(!0===e.container?"containerized":"standard"))),g=i((()=>!1===e.container?{minHeight:s.screen.height+"px"}:null)),v=i((()=>0!==f.value?{[!0===s.lang.rtl?"left":"right"]:`${f.value}px`}:null)),b=i((()=>0!==f.value?{[!0===s.lang.rtl?"right":"left"]:0,[!0===s.lang.rtl?"left":"right"]:`-${f.value}px`,width:`calc(100% + ${f.value}px)`}:null));function y(t){if(!0===e.container||!0!==document.qScrollPrevented){let n={position:t.position.top,direction:t.direction,directionChanged:t.directionChanged,inflectionPoint:t.inflectionPoint.top,delta:t.delta.top};h.value=n,void 0!==e.onScroll&&o("scroll",n)}}function x(t){let{height:n,width:a}=t,i=!1;c.value!==n&&(i=!0,c.value=n,void 0!==e.onScrollHeight&&o("scrollHeight",n),C()),d.value!==a&&(i=!0,d.value=a),!0===i&&void 0!==e.onResize&&o("resize",t)}function S({height:e}){p.value!==e&&(p.value=e,C())}function C(){if(!0===e.container){let e=c.value>p.value?_a():0;f.value!==e&&(f.value=e)}}let T=null,E={instances:{},view:i((()=>e.view)),isContainer:i((()=>e.container)),rootRef:l,height:c,containerHeight:p,scrollbarWidth:f,totalWidth:i((()=>d.value+f.value)),rows:i((()=>{let t=e.view.toLowerCase().split(" ");return{top:t[0].split(""),middle:t[1].split(""),bottom:t[2].split("")}})),header:u({size:0,offset:0,space:!1}),right:u({size:300,offset:0,space:!1}),footer:u({size:0,offset:0,space:!1}),left:u({size:300,offset:0,space:!1}),scroll:h,animate(){null!==T?clearTimeout(T):document.body.classList.add("q-body--layout-animate"),T=setTimeout((()=>{T=null,document.body.classList.remove("q-body--layout-animate")}),155)},update(e,t,n){E[e][t]=n}};if(w(Ae,E),_a()>0){let t=function(){i=null,o.classList.remove("hide-scrollbar")},n=function(){if(null===i){if(o.scrollHeight>s.screen.height)return;o.classList.add("hide-scrollbar")}else clearTimeout(i);i=setTimeout(t,300)},a=function(e){null!==i&&"remove"===e&&(clearTimeout(i),t()),window[`${e}EventListener`]("resize",n)},i=null,o=document.body;r((()=>!0!==e.container?"add":"remove"),a),!0!==e.container&&a("add"),_((()=>{a("remove")}))}return()=>{let a=pt(t.default,[n(Ml,{onScroll:y}),n(lr,{onResize:x})]),i=n("div",{class:m.value,style:g.value,ref:!0===e.container?void 0:l,tabindex:-1},a);return!0===e.container?n("div",{class:"q-layout-container overflow-hidden",ref:l},[n(lr,{onResize:S}),n("div",{class:"absolute-full",style:v.value},[n("div",{class:"scroll",style:b.value},[i])])]):i}}}),zl=["horizontal","vertical","cell","none"],Nl=$({name:"QMarkupTable",props:{...Nt,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,wrapCells:Boolean,separator:{type:String,default:"horizontal",validator:e=>zl.includes(e)}},setup(e,{slots:t}){let a=k(),r=It(e,a.proxy.$q),o=i((()=>`q-markup-table q-table__container q-table__card q-table--${e.separator}-separator`+(!0===r.value?" q-table--dark q-table__card--dark q-dark":"")+(!0===e.dense?" q-table--dense":"")+(!0===e.flat?" q-table--flat":"")+(!0===e.bordered?" q-table--bordered":"")+(!0===e.square?" q-table--square":"")+(!1===e.wrapCells?" q-table--no-wrap":"")));return()=>n("div",{class:o.value},[n("table",{class:"q-table"},dt(t.default))])}}),Il=$({name:"QNoSsr",props:{tag:{type:String,default:"div"},placeholder:String},setup(e,{slots:t}){let{isHydrated:a}=rr();return()=>{if(!0===a.value){let a=dt(t.default);return void 0===a?a:a.length>1?n(e.tag,{},a):a[0]}let i={class:"q-no-ssr-placeholder"},r=dt(t.placeholder);return void 0!==r?r.length>1?n(e.tag,i,r):r[0]:void 0!==e.placeholder?n(e.tag,i,e.placeholder):void 0}}}),Ol=$({name:"QRadio",props:{...Nt,...ut,...ii,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:r}){let{proxy:o}=k(),l=It(e,o.$q),u=ct(e,Oi),c=a(null),{refocusTargetEl:d,refocusTarget:h}=Ii(e,c),p=i((()=>s(e.modelValue)===s(e.val))),f=i((()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(!0===e.disable?" disabled":"")+(!0===l.value?" q-radio--dark":"")+(!0===e.dense?" q-radio--dense":"")+(!0===e.leftLabel?" reverse":""))),m=i((()=>{let t=void 0===e.color||!0!==e.keepColor&&!0!==p.value?"":` text-${e.color}`;return`q-radio__inner relative-position q-radio__inner--${!0===p.value?"truthy":"falsy"}${t}`})),g=i((()=>(!0===p.value?e.checkedIcon:e.uncheckedIcon)||null)),_=i((()=>!0===e.disable?-1:e.tabindex||0)),v=oi(i((()=>{let t={type:"radio"};return void 0!==e.name&&Object.assign(t,{".checked":!0===p.value,"^checked":!0===p.value?"checked":void 0,name:e.name,value:e.val}),t})));function b(t){void 0!==t&&(J(t),h(t)),!0!==e.disable&&!0!==p.value&&r("update:modelValue",e.val,t)}function y(e){(13===e.keyCode||32===e.keyCode)&&J(e)}function w(e){(13===e.keyCode||32===e.keyCode)&&b(e)}Object.assign(o,{set:b});let x=n("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[n("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),n("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]);return()=>{let a=null!==g.value?[n("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[n(Lt,{class:"q-radio__icon",name:g.value})])]:[x];!0!==e.disable&&v(a,"unshift"," q-radio__native q-ma-none q-pa-none");let i=[n("div",{class:m.value,style:u.value,"aria-hidden":"true"},a)];null!==d.value&&i.push(d.value);let r=void 0!==e.label?pt(t.default,[e.label]):dt(t.default);return void 0!==r&&i.push(n("div",{class:"q-radio__label q-anchor--skip"},r)),n("div",{ref:c,class:f.value,tabindex:_.value,role:"radio","aria-label":e.label,"aria-checked":!0===p.value?"true":"false","aria-disabled":!0===e.disable?"true":void 0,onClick:b,onKeydown:y,onKeyup:w},i)}}}),Dl=$({name:"QToggle",props:{...Di,icon:String,iconColor:String},emits:qi,setup:e=>ji("toggle",(function(t,a){let r=i((()=>(!0===t.value?e.checkedIcon:!0===a.value?e.indeterminateIcon:e.uncheckedIcon)||e.icon)),o=i((()=>!0===t.value?e.iconColor:null));return()=>[n("div",{class:"q-toggle__track"}),n("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},void 0!==r.value?[n(Lt,{name:r.value,color:o.value})]:void 0)]}))}),ql={radio:Ol,checkbox:Bi,toggle:Dl},jl=Object.keys(ql);function Bl(e,t){if("function"==typeof e)return e;let n=void 0!==e?e:t;return e=>e[n]}var Fl=$({name:"QOptionGroup",props:{...Nt,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(je),default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],name:String,type:{type:String,default:"radio",validator:e=>jl.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:a}){let{proxy:{$q:r}}=k(),o=Array.isArray(e.modelValue);"radio"===e.type?!0===o&&console.error("q-option-group: model should not be array"):!1===o&&console.error("q-option-group: model should be array in your case");let s=It(e,r),l=i((()=>ql[e.type])),u=i((()=>Bl(e.optionValue,"value"))),c=i((()=>Bl(e.optionLabel,"label"))),d=i((()=>Bl(e.optionDisable,"disable"))),h=i((()=>e.options.map((t=>({val:u.value(t),name:void 0===t.name?e.name:t.name,disable:e.disable||d.value(t),leftLabel:void 0===t.leftLabel?e.leftLabel:t.leftLabel,color:void 0===t.color?e.color:t.color,checkedIcon:t.checkedIcon,uncheckedIcon:t.uncheckedIcon,dark:void 0===t.dark?s.value:t.dark,size:void 0===t.size?e.size:t.size,dense:e.dense,keepColor:void 0===t.keepColor?e.keepColor:t.keepColor}))))),p=i((()=>"q-option-group q-gutter-x-sm"+(!0===e.inline?" q-option-group--inline":""))),f=i((()=>{let t={role:"group"};return"radio"===e.type&&(t.role="radiogroup",!0===e.disable&&(t["aria-disabled"]="true")),t}));function m(e){t("update:modelValue",e)}return()=>n("div",{class:p.value,...f.value},e.options.map(((t,i)=>{let r=void 0!==a["label-"+i]?()=>a["label-"+i](t):void 0!==a.label?()=>a.label(t):void 0;return n("div",[n(l.value,{label:void 0===r?c.value(t):null,modelValue:e.modelValue,"onUpdate:modelValue":m,...h.value[i]},r)])})))}}),$l=$({name:"QPage",props:{padding:Boolean,styleFn:Function},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=y(Ae,Ie);if(r===Ie)return console.error("QPage needs to be a deep child of QLayout"),Ie;if(y(Le,Ie)===Ie)return console.error("QPage needs to be child of QPageContainer"),Ie;let o=i((()=>{let t=(!0===r.header.space?r.header.size:0)+(!0===r.footer.space?r.footer.size:0);if("function"==typeof e.styleFn){let n=!0===r.isContainer.value?r.containerHeight.value:a.screen.height;return e.styleFn(t,n)}return{minHeight:!0===r.isContainer.value?r.containerHeight.value-t+"px":0===a.screen.height?0!==t?`calc(100vh - ${t}px)`:"100vh":a.screen.height-t+"px"}})),s=i((()=>"q-page"+(!0===e.padding?" q-layout-padding":"")));return()=>n("main",{class:s.value,style:o.value},dt(t.default))}}),Vl=$({name:"QPageContainer",setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=y(Ae,Ie);if(r===Ie)return console.error("QPageContainer needs to be child of QLayout"),Ie;w(Le,!0);let o=i((()=>{let e={};return!0===r.header.space&&(e.paddingTop=`${r.header.size}px`),!0===r.right.space&&(e["padding"+(!0===a.lang.rtl?"Left":"Right")]=`${r.right.size}px`),!0===r.footer.space&&(e.paddingBottom=`${r.footer.size}px`),!0===r.left.space&&(e["padding"+(!0===a.lang.rtl?"Right":"Left")]=`${r.left.size}px`),e}));return()=>n("div",{class:"q-page-container",style:o.value},dt(t.default))}}),Ul={position:{type:String,default:"bottom-right",validator:e=>["top-right","top-left","bottom-right","bottom-left","top","right","bottom","left"].includes(e)},offset:{type:Array,validator:e=>2===e.length},expand:Boolean};function Hl(){let{props:e,proxy:{$q:t}}=k(),a=y(Ae,Ie);if(a===Ie)return console.error("QPageSticky needs to be child of QLayout"),Ie;let r=i((()=>{let t=e.position;return{top:-1!==t.indexOf("top"),right:-1!==t.indexOf("right"),bottom:-1!==t.indexOf("bottom"),left:-1!==t.indexOf("left"),vertical:"top"===t||"bottom"===t,horizontal:"left"===t||"right"===t}})),o=i((()=>a.header.offset)),s=i((()=>a.right.offset)),l=i((()=>a.footer.offset)),u=i((()=>a.left.offset)),c=i((()=>{let n=0,a=0,i=r.value,c=!0===t.lang.rtl?-1:1;!0===i.top&&0!==o.value?a=`${o.value}px`:!0===i.bottom&&0!==l.value&&(a=-l.value+"px"),!0===i.left&&0!==u.value?n=c*u.value+"px":!0===i.right&&0!==s.value&&(n=-c*s.value+"px");let d={transform:`translate(${n}, ${a})`};return e.offset&&(d.margin=`${e.offset[1]}px ${e.offset[0]}px`),!0===i.vertical?(0!==u.value&&(d[!0===t.lang.rtl?"right":"left"]=`${u.value}px`),0!==s.value&&(d[!0===t.lang.rtl?"left":"right"]=`${s.value}px`)):!0===i.horizontal&&(0!==o.value&&(d.top=`${o.value}px`),0!==l.value&&(d.bottom=`${l.value}px`)),d})),d=i((()=>`q-page-sticky row flex-center fixed-${e.position} q-page-sticky--${!0===e.expand?"expand":"shrink"}`));return{$layout:a,getStickyContent:function(t){let a=dt(t.default);return n("div",{class:d.value,style:c.value},!0===e.expand?a:[n("div",a)])}}}var Wl=$({name:"QPageScroller",props:{...Ul,scrollOffset:{type:Number,default:1e3},reverse:Boolean,duration:{type:Number,default:300},offset:{...Ul.offset,default:()=>[18,18]}},emits:["click"],setup(e,{slots:t,emit:o}){let s,{proxy:{$q:l}}=k(),{$layout:u,getStickyContent:c}=Hl(),d=a(null),h=i((()=>u.height.value-(!0===u.isContainer.value?u.containerHeight.value:l.screen.height)));function p(){return!0===e.reverse?h.value-u.scroll.value.position>e.scrollOffset:u.scroll.value.position>e.scrollOffset}let f=a(p());function m(){let e=p();f.value!==e&&(f.value=e)}function _(){!0===e.reverse?void 0===s&&(s=r(h,m)):v()}function v(){void 0!==s&&(s(),s=void 0)}function b(t){ma(sa(!0===u.isContainer.value?d.value:u.rootRef.value),!0===e.reverse?u.height.value:0,e.duration),o("click",t)}function y(){return!0===f.value?n("div",{ref:d,class:"q-page-scroller",onClick:b},c(t)):null}return r(u.scroll,m),r((()=>e.reverse),_),_(),g(v),()=>n(S,{name:"q-transition--fade"},y)}}),Gl=$({name:"QPageSticky",props:Ul,setup(e,{slots:t}){let{getStickyContent:n}=Hl();return()=>n(t)}});function Yl(e,t){return[!0,!1].includes(e)?e:t}var Kl=$({name:"QPagination",props:{...Nt,modelValue:{type:Number,required:!0},min:{type:[Number,String],default:1},max:{type:[Number,String],required:!0},maxPages:{type:[Number,String],default:0,validator:e=>("string"==typeof e?parseInt(e,10):e)>=0},inputStyle:[Array,String,Object],inputClass:[Array,String,Object],size:String,disable:Boolean,input:Boolean,iconPrev:String,iconNext:String,iconFirst:String,iconLast:String,toFn:Function,boundaryLinks:{type:Boolean,default:null},boundaryNumbers:{type:Boolean,default:null},directionLinks:{type:Boolean,default:null},ellipses:{type:Boolean,default:null},ripple:{type:[Boolean,Object],default:null},round:Boolean,rounded:Boolean,flat:Boolean,outline:Boolean,unelevated:Boolean,push:Boolean,glossy:Boolean,color:{type:String,default:"primary"},textColor:String,activeDesign:{type:String,default:"",values:e=>""===e||yn.includes(e)},activeColor:String,activeTextColor:String,gutter:String,padding:{type:String,default:"3px 2px"}},emits:["update:modelValue"],setup(e,{emit:t}){let{proxy:o}=k(),{$q:s}=o,l=It(e,s),u=i((()=>parseInt(e.min,10))),c=i((()=>parseInt(e.max,10))),d=i((()=>parseInt(e.maxPages,10))),h=i((()=>v.value+" / "+c.value)),p=i((()=>Yl(e.boundaryLinks,e.input))),f=i((()=>Yl(e.boundaryNumbers,!e.input))),m=i((()=>Yl(e.directionLinks,e.input))),g=i((()=>Yl(e.ellipses,!e.input))),_=a(null),v=i({get:()=>e.modelValue,set:n=>{if(n=parseInt(n,10),e.disable||isNaN(n))return;let a=Je(n,u.value,c.value);e.modelValue!==a&&t("update:modelValue",a)}});r((()=>`${u.value}|${c.value}`),(()=>{v.value=e.modelValue}));let b=i((()=>"q-pagination row no-wrap items-center"+(!0===e.disable?" disabled":""))),y=i((()=>e.gutter in gn?`${gn[e.gutter]}px`:e.gutter||null)),w=i((()=>null!==y.value?`--q-pagination-gutter-parent:-${y.value};--q-pagination-gutter-child:${y.value}`:null)),x=i((()=>{let t=[e.iconFirst||s.iconSet.pagination.first,e.iconPrev||s.iconSet.pagination.prev,e.iconNext||s.iconSet.pagination.next,e.iconLast||s.iconSet.pagination.last];return!0===s.lang.rtl?t.reverse():t})),S=i((()=>({"aria-disabled":!0===e.disable?"true":"false",role:"navigation"}))),C=i((()=>wn(e,"flat"))),T=i((()=>({[C.value]:!0,round:e.round,rounded:e.rounded,padding:e.padding,color:e.color,textColor:e.textColor,size:e.size,ripple:null===e.ripple||e.ripple}))),E=i((()=>{let t={[C.value]:!1};return""!==e.activeDesign&&(t[e.activeDesign]=!0),t})),P=i((()=>({...E.value,color:e.activeColor||e.color,textColor:e.activeTextColor||e.textColor}))),A=i((()=>{let t=Math.max(d.value,1+(g.value?2:0)+(f.value?2:0)),n={pgFrom:u.value,pgTo:c.value,ellipsesStart:!1,ellipsesEnd:!1,boundaryStart:!1,boundaryEnd:!1,marginalStyle:{minWidth:`${Math.max(2,String(c.value).length)}em`}};return d.value&&tu.value+(f.value?1:0)&&(n.ellipsesStart=!0,n.pgFrom++),f.value&&(n.boundaryEnd=!0,n.pgTo--),g.value&&n.pgTo{function e(){v.value=_.value,_.value=null}return{"onUpdate:modelValue":e=>{_.value=e},onKeyup:t=>{!0===pe(t,13)&&e()},onBlur:e}}));function R(t,a,i){let r={"aria-label":a,"aria-current":"false",...T.value,...t};return!0===i&&Object.assign(r,{"aria-current":"true",...P.value}),void 0!==a&&(void 0!==e.toFn?r.to=e.toFn(a):r.onClick=()=>{L(a)}),n(An,r)}return Object.assign(o,{set:L,setByOffset:function(e){v.value=v.value+e}}),()=>{let t,a=[],i=[];if(!0===p.value&&(a.push(R({key:"bls",disable:e.disable||e.modelValue<=u.value,icon:x.value[0]},u.value)),i.unshift(R({key:"ble",disable:e.disable||e.modelValue>=c.value,icon:x.value[3]},c.value))),!0===m.value&&(a.push(R({key:"bdp",disable:e.disable||e.modelValue<=u.value,icon:x.value[1]},e.modelValue-1)),i.unshift(R({key:"bdn",disable:e.disable||e.modelValue>=c.value,icon:x.value[2]},e.modelValue+1))),!0!==e.input){t=[];let{pgFrom:n,pgTo:r,marginalStyle:o}=A.value;if(!0===A.value.boundaryStart){let t=u.value===e.modelValue;a.push(R({key:"bns",style:o,disable:e.disable,label:u.value},u.value,t))}if(!0===A.value.boundaryEnd){let t=c.value===e.modelValue;i.unshift(R({key:"bne",style:o,disable:e.disable,label:c.value},c.value,t))}!0===A.value.ellipsesStart&&a.push(R({key:"bes",style:o,disable:e.disable,label:"…",ripple:!1},n-1)),!0===A.value.ellipsesEnd&&i.unshift(R({key:"bee",style:o,disable:e.disable,label:"…",ripple:!1},r+1));for(let a=n;a<=r;a++)t.push(R({key:`bpg${a}`,style:o,disable:e.disable,label:a},a,a===e.modelValue))}return n("div",{class:b.value,...S.value},[n("div",{class:"q-pagination__content row no-wrap items-center",style:w.value},[...a,!0===e.input?n(vl,{class:"inline",style:{width:h.value.length/1.5+"em"},type:"number",dense:!0,value:_.value,disable:e.disable,dark:l.value,borderless:!0,inputClass:e.inputClass,inputStyle:e.inputStyle,placeholder:h.value,min:u.value,max:c.value,...M.value}):n("div",{class:"q-pagination__middle row justify-center"},t),...i])])}}});function Ql(e){let t,n,a=!1;function i(){n=arguments,!0!==a&&(a=!0,t=window.requestAnimationFrame((()=>{e.apply(this,n),n=void 0,a=!1})))}return i.cancel=()=>{window.cancelAnimationFrame(t),a=!1},i}var{passive:Zl}=H,Jl=$({name:"QParallax",props:{src:String,height:{type:Number,default:500},speed:{type:Number,default:1,validator:e=>e>=0&&e<=1},scrollTarget:ra,onScroll:Function},setup(e,{slots:t,emit:i}){let o,s,l,u,c,d,h=a(0),p=a(null),f=a(null),_=a(null);r((()=>e.height),(()=>{!0===o&&b()})),r((()=>e.scrollTarget),(()=>{!0===o&&(x(),k())}));let v=t=>{h.value=t,void 0!==e.onScroll&&i("scroll",t)};function b(){let t,n,a;d===window?(t=0,a=n=window.innerHeight):(t=sn(d).top,n=ln(d),a=t+n);let i=sn(p.value).top,r=i+e.height;if(void 0!==c||r>t&&i{s.style.transform=`translate3d(-50%,${Math.round(e)}px,0)`};function w(){l=s.naturalHeight||s.videoHeight||ln(s),!0===o&&b()}function k(){o=!0,d=sa(p.value,e.scrollTarget),d.addEventListener("scroll",b,Zl),window.addEventListener("resize",u,Zl),b()}function x(){!0===o&&(o=!1,d.removeEventListener("scroll",b,Zl),window.removeEventListener("resize",u,Zl),d=void 0,y.cancel(),v.cancel(),u.cancel())}return m((()=>{y=Ql(y),v=Ql(v),u=Ql(w),s=void 0!==t.media?f.value.children[0]:_.value,s.onload=s.onloadstart=s.loadedmetadata=w,w(),s.style.display="initial",void 0!==window.IntersectionObserver?(c=new IntersectionObserver((e=>{(!0===e[0].isIntersecting?k:x)()})),c.observe(p.value)):k()})),g((()=>{x(),void 0!==c&&c.disconnect(),s.onload=s.onloadstart=s.loadedmetadata=null})),()=>n("div",{ref:p,class:"q-parallax",style:{height:`${e.height}px`}},[n("div",{ref:f,class:"q-parallax__media absolute-full"},void 0!==t.media?t.media():[n("img",{ref:_,src:e.src})]),n("div",{class:"q-parallax__content absolute-full column flex-center"},void 0!==t.content?t.content({percentScrolled:h.value}):dt(t.default))])}});function Xl(e,t=new WeakMap){if(Object(e)!==e)return e;if(t.has(e))return t.get(e);let n=e instanceof Date?new Date(e):e instanceof RegExp?new RegExp(e.source,e.flags):e instanceof Set?new Set:e instanceof Map?new Map:"function"!=typeof e.constructor?Object.create(null):void 0!==e.prototype&&"function"==typeof e.prototype.constructor?e:new e.constructor;if("function"==typeof e.constructor&&"function"==typeof e.valueOf){let n=e.valueOf();if(Object(n)!==n){let a=new e.constructor(n);return t.set(e,a),a}}return t.set(e,n),e instanceof Set?e.forEach((e=>{n.add(Xl(e,t))})):e instanceof Map&&e.forEach(((e,a)=>{n.set(a,Xl(e,t))})),Object.assign(n,...Object.keys(e).map((n=>({[n]:Xl(e[n],t)}))))}var eu=$({name:"QPopupEdit",props:{modelValue:{required:!0},title:String,buttons:Boolean,labelSet:String,labelCancel:String,color:{type:String,default:"primary"},validate:{type:Function,default:()=>!0},autoSave:Boolean,cover:{type:Boolean,default:!0},disable:Boolean},emits:["update:modelValue","save","cancel","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:r}){let{proxy:o}=k(),{$q:s}=o,l=a(null),u=a(""),c=a(""),h=!1,p=i((()=>z({initialValue:u.value,validate:e.validate,set:f,cancel:m,updatePosition:g},"value",(()=>c.value),(e=>{c.value=e}))));function f(){!1!==e.validate(c.value)&&(!0===_()&&(r("save",c.value,u.value),r("update:modelValue",c.value)),v())}function m(){!0===_()&&r("cancel",c.value,u.value),v()}function g(){d((()=>{l.value.updatePosition()}))}function _(){return!1===qe(c.value,u.value)}function v(){h=!0,l.value.hide()}function b(){h=!1,u.value=Xl(e.modelValue),c.value=Xl(e.modelValue),r("beforeShow")}function y(){r("show")}function w(){!1===h&&!0===_()&&(!0===e.autoSave&&!0===e.validate(c.value)?(r("save",c.value,u.value),r("update:modelValue",c.value)):r("cancel",c.value,u.value)),r("beforeHide")}function x(){r("hide")}function S(){let a=void 0!==t.default?[].concat(t.default(p.value)):[];return e.title&&a.unshift(n("div",{class:"q-dialog__title q-mt-sm q-mb-sm"},e.title)),!0===e.buttons&&a.push(n("div",{class:"q-popup-edit__buttons row justify-center no-wrap"},[n(An,{flat:!0,color:e.color,label:e.labelCancel||s.lang.label.cancel,onClick:m}),n(An,{flat:!0,color:e.color,label:e.labelSet||s.lang.label.set,onClick:f})])),a}return Object.assign(o,{set:f,cancel:m,show(e){null!==l.value&&l.value.show(e)},hide(e){null!==l.value&&l.value.hide(e)},updatePosition:g}),()=>{if(!0!==e.disable)return n(Ya,{ref:l,class:"q-popup-edit",cover:e.cover,onBeforeShow:b,onShow:y,onBeforeHide:w,onHide:x,onEscapeKey:m},S)}}}),tu=$({name:"QPopupProxy",props:{...zn,breakpoint:{type:[String,Number],default:450}},emits:["show","hide"],setup(e,{slots:t,emit:o,attrs:s}){let{proxy:l}=k(),{$q:u}=l,c=a(!1),d=a(null),h=i((()=>parseInt(e.breakpoint,10))),{canShow:p}=Nn({showing:c});function f(){return u.screen.width"menu"===m.value?{maxHeight:"99vh"}:{}));function _(e){c.value=!0,o("show",e)}function v(e){c.value=!1,m.value=f(),o("hide",e)}return r((()=>f()),(e=>{!0!==c.value&&(m.value=e)})),Object.assign(l,{show(e){!0===p(e)&&d.value.show(e)},hide(e){d.value.hide(e)},toggle(e){d.value.toggle(e)}}),z(l,"currentComponent",(()=>({type:m.value,ref:d.value}))),()=>{let a,i={ref:d,...g.value,...s,onShow:_,onHide:v};return"dialog"===m.value?a=Zo:(a=Ya,Object.assign(i,{target:e.target,contextMenu:e.contextMenu,noParentEvent:!0,separateClosePopup:!0})),n(a,i,t.default)}}}),nu={xs:2,sm:4,md:6,lg:10,xl:14};function au(e,t,n){return{transform:!0===t?`translateX(${!0===n.lang.rtl?"-":""}100%) scale3d(${-e},1,1)`:`scale3d(${e},1,1)`}}var iu=$({name:"QLinearProgress",props:{...Nt,...ut,value:{type:Number,default:0},buffer:Number,color:String,trackColor:String,reverse:Boolean,stripe:Boolean,indeterminate:Boolean,query:Boolean,rounded:Boolean,animationSpeed:{type:[String,Number],default:2100},instantFeedback:Boolean},setup(e,{slots:t}){let{proxy:a}=k(),r=It(e,a.$q),o=ct(e,nu),s=i((()=>!0===e.indeterminate||!0===e.query)),l=i((()=>e.reverse!==e.query)),u=i((()=>({...null!==o.value?o.value:{},"--q-linear-progress-speed":`${e.animationSpeed}ms`}))),c=i((()=>"q-linear-progress"+(void 0!==e.color?` text-${e.color}`:"")+(!0===e.reverse||!0===e.query?" q-linear-progress--reverse":"")+(!0===e.rounded?" rounded-borders":""))),d=i((()=>au(void 0!==e.buffer?e.buffer:1,l.value,a.$q))),h=i((()=>`with${!0===e.instantFeedback?"out":""}-transition`)),p=i((()=>`q-linear-progress__track absolute-full q-linear-progress__track--${h.value} q-linear-progress__track--${!0===r.value?"dark":"light"}`+(void 0!==e.trackColor?` bg-${e.trackColor}`:""))),f=i((()=>au(!0===s.value?1:e.value,l.value,a.$q))),m=i((()=>`q-linear-progress__model absolute-full q-linear-progress__model--${h.value} q-linear-progress__model--${!0===s.value?"in":""}determinate`)),g=i((()=>({width:100*e.value+"%"}))),_=i((()=>`q-linear-progress__stripe absolute-${!0===e.reverse?"right":"left"} q-linear-progress__stripe--${h.value}`));return()=>{let a=[n("div",{class:p.value,style:d.value}),n("div",{class:m.value,style:f.value})];return!0===e.stripe&&!1===s.value&&a.push(n("div",{class:_.value,style:g.value})),n("div",{class:c.value,style:u.value,role:"progressbar","aria-valuemin":0,"aria-valuemax":1,"aria-valuenow":!0===e.indeterminate?void 0:e.value},pt(t.default,a))}}}),ru=40,ou=$({name:"QPullToRefresh",props:{color:String,bgColor:String,icon:String,noMouse:Boolean,disable:Boolean,scrollTarget:ra},emits:["refresh"],setup(e,{slots:t,emit:o}){let{proxy:s}=k(),{$q:l}=s,u=a("pull"),c=a(0),d=a(!1),h=a(-40),p=a(!1),f=a({}),_=i((()=>({opacity:c.value,transform:`translateY(${h.value}px) rotate(${360*c.value}deg)`}))),v=i((()=>"q-pull-to-refresh__puller row flex-center"+(!0===p.value?" q-pull-to-refresh__puller--animating":"")+(void 0!==e.bgColor?` bg-${e.bgColor}`:"")));function b(e){if(!0===e.isFinal)return void(!0===d.value&&(d.value=!1,"pulled"===u.value?(u.value="refreshing",E({pos:20}),x()):"pull"===u.value&&E({pos:-40,ratio:0})));if(!0===p.value||"refreshing"===u.value)return!1;if(!0===e.isFirst){if(0!==ua(C)||"down"!==e.direction)return!0===d.value&&(d.value=!1,u.value="pull",E({pos:-40,ratio:0})),!1;d.value=!0;let{top:t,left:n}=S.getBoundingClientRect();f.value={top:t+"px",left:n+"px",width:window.getComputedStyle(S).getPropertyValue("width")}}Z(e.evt);let t=Math.min(140,Math.max(0,e.distance.y));h.value=t-ru,c.value=Je(t/60,0,1);let n=h.value>20?"pulled":"pull";u.value!==n&&(u.value=n)}let y=i((()=>{let t={down:!0};return!0!==e.noMouse&&(t.mouse=!0),[[Ki,b,void 0,t]]})),w=i((()=>"q-pull-to-refresh__content"+(!0===d.value?" no-pointer-events":"")));function x(){o("refresh",(()=>{E({pos:-40,ratio:0},(()=>{u.value="pull"}))}))}let S,C,T=null;function E({pos:e,ratio:t},n){p.value=!0,h.value=e,void 0!==t&&(c.value=t),null!==T&&clearTimeout(T),T=setTimeout((()=>{T=null,p.value=!1,n&&n()}),300)}function P(){C=sa(S,e.scrollTarget)}return r((()=>e.scrollTarget),P),m((()=>{S=s.$el,P()})),g((()=>{null!==T&&clearTimeout(T)})),Object.assign(s,{trigger:x,updateScrollTarget:P}),()=>mt("div",{class:"q-pull-to-refresh"},[n("div",{class:w.value},dt(t.default)),n("div",{class:"q-pull-to-refresh__puller-container fixed row flex-center no-pointer-events z-top",style:f.value},[n("div",{class:v.value,style:_.value},["refreshing"!==u.value?n(Lt,{name:e.icon||l.iconSet.pullToRefresh.icon,color:e.color,size:"32px"}):n(on,{size:"24px",color:e.color})])])],"main",!1===e.disable,(()=>y.value))}}),su=0,lu=1,uu=2,cu=$({name:"QRange",props:{...er,modelValue:{type:Object,default:()=>({min:null,max:null}),validator:e=>"min"in e&&"max"in e},dragRange:Boolean,dragOnlyRange:Boolean,leftLabelColor:String,leftLabelTextColor:String,rightLabelColor:String,rightLabelTextColor:String,leftLabelValue:[String,Number],rightLabelValue:[String,Number],leftThumbColor:String,rightThumbColor:String},emits:tr,setup(e,{emit:t}){let{proxy:{$q:o}}=k(),{state:s,methods:l}=nr({updateValue:A,updatePosition:function(t,n=s.dragging.value){let a,i=l.getDraggingRatio(t,n),r=l.convertRatioToModel(i);switch(n.type){case su:i<=n.ratioMax?(a={minR:i,maxR:n.ratioMax,min:r,max:n.valueMax},s.focus.value="min"):(a={minR:n.ratioMax,maxR:i,min:n.valueMax,max:r},s.focus.value="max");break;case uu:i>=n.ratioMin?(a={minR:n.ratioMin,maxR:i,min:n.valueMin,max:r},s.focus.value="max"):(a={minR:i,maxR:n.ratioMin,min:r,max:n.valueMin},s.focus.value="min");break;case lu:let e=i-n.offsetRatio,t=Je(n.ratioMin+e,s.innerMinRatio.value,s.innerMaxRatio.value-n.rangeRatio),o=r-n.offsetModel,l=Je(n.valueMin+o,s.innerMin.value,s.innerMax.value-n.rangeValue);a={minR:t,maxR:t+n.rangeRatio,min:s.roundValueFn.value(l),max:s.roundValueFn.value(l+n.rangeValue)},s.focus.value="both"}h.value=null===h.value.min||null===h.value.max?{min:a.min||e.min,max:a.max||e.max}:{min:a.min,max:a.max},!0!==e.snap||0===e.step?(c.value=a.minR,d.value=a.maxR):(c.value=l.convertModelToRatio(h.value.min),d.value=l.convertModelToRatio(h.value.max))},getDragging:function(t){let{left:n,top:a,width:i,height:r}=u.value.getBoundingClientRect(),o=!0===e.dragOnlyRange?0:!0===e.vertical?S.value.offsetHeight/(2*r):S.value.offsetWidth/(2*i),s={left:n,top:a,width:i,height:r,valueMin:h.value.min,valueMax:h.value.max,ratioMin:f.value,ratioMax:m.value},c=l.getDraggingRatio(t,s);return!0!==e.dragOnlyRange&&c({type:"hidden",name:e.name,value:`${e.modelValue.min}|${e.modelValue.max}`})))}),u=a(null),c=a(0),d=a(0),h=a({min:0,max:0});function p(){h.value.min=null===e.modelValue.min?s.innerMin.value:Je(e.modelValue.min,s.innerMin.value,s.innerMax.value),h.value.max=null===e.modelValue.max?s.innerMax.value:Je(e.modelValue.max,s.innerMin.value,s.innerMax.value)}r((()=>`${e.modelValue.min}|${e.modelValue.max}|${s.innerMin.value}|${s.innerMax.value}`),p),p();let f=i((()=>l.convertModelToRatio(h.value.min))),m=i((()=>l.convertModelToRatio(h.value.max))),g=i((()=>!0===s.active.value?c.value:f.value)),_=i((()=>!0===s.active.value?d.value:m.value)),v=i((()=>{let t={[s.positionProp.value]:100*g.value+"%",[s.sizeProp.value]:100*(_.value-g.value)+"%"};return void 0!==e.selectionImg&&(t.backgroundImage=`url(${e.selectionImg}) !important`),t})),b=i((()=>{if(!0!==s.editable.value)return{};if(!0===o.platform.is.mobile)return{onClick:l.onMobileClick};let t={onMousedown:l.onActivate};return(!0===e.dragRange||!0===e.dragOnlyRange)&&Object.assign(t,{onFocus:()=>{s.focus.value="both"},onBlur:l.onBlur,onKeydown:L,onKeyup:l.onKeyup}),t}));function y(t){return!0!==o.platform.is.mobile&&!0===s.editable.value&&!0!==e.dragOnlyRange?{onFocus:()=>{s.focus.value=t},onBlur:l.onBlur,onKeydown:L,onKeyup:l.onKeyup}:{}}let w=i((()=>!0!==e.dragOnlyRange?s.tabindex.value:null)),x=i((()=>!0===o.platform.is.mobile||!e.dragRange&&!0!==e.dragOnlyRange?null:s.tabindex.value)),S=a(null),C=i((()=>y("min"))),T=l.getThumbRenderFn({focusValue:"min",getNodeData:()=>({ref:S,key:"tmin",...C.value,tabindex:w.value}),ratio:g,label:i((()=>void 0!==e.leftLabelValue?e.leftLabelValue:h.value.min)),thumbColor:i((()=>e.leftThumbColor||e.thumbColor||e.color)),labelColor:i((()=>e.leftLabelColor||e.labelColor)),labelTextColor:i((()=>e.leftLabelTextColor||e.labelTextColor))}),E=i((()=>y("max"))),P=l.getThumbRenderFn({focusValue:"max",getNodeData:()=>({...E.value,key:"tmax",tabindex:w.value}),ratio:_,label:i((()=>void 0!==e.rightLabelValue?e.rightLabelValue:h.value.max)),thumbColor:i((()=>e.rightThumbColor||e.thumbColor||e.color)),labelColor:i((()=>e.rightLabelColor||e.labelColor)),labelTextColor:i((()=>e.rightLabelTextColor||e.labelTextColor))});function A(n){(h.value.min!==e.modelValue.min||h.value.max!==e.modelValue.max)&&t("update:modelValue",{...h.value}),!0===n&&t("change",{...h.value})}function L(t){if(!Xi.includes(t.keyCode))return;J(t);let n=([34,33].includes(t.keyCode)?10:1)*s.keyStep.value,a=([34,37,40].includes(t.keyCode)?-1:1)*(!0===s.isReversed.value?-1:1)*(!0===e.vertical?-1:1)*n;if("both"===s.focus.value){let e=h.value.max-h.value.min,t=Je(s.roundValueFn.value(h.value.min+a),s.innerMin.value,s.innerMax.value-e);h.value={min:t,max:s.roundValueFn.value(t+e)}}else{if(!1===s.focus.value)return;{let e=s.focus.value;h.value={...h.value,[e]:Je(s.roundValueFn.value(h.value[e]+a),"min"===e?s.innerMin.value:h.value.min,"max"===e?s.innerMax.value:h.value.max)}}}A()}return()=>{let t=l.getContent(v,x,b,(e=>{e.push(T(),P())}));return n("div",{ref:u,class:"q-range "+s.classes.value+(null===e.modelValue.min||null===e.modelValue.max?" q-slider--no-value":""),...s.attributes.value,"aria-valuenow":e.modelValue.min+"|"+e.modelValue.max},t)}}}),du=$({name:"QRating",props:{...ut,...ii,modelValue:{type:Number,required:!0},max:{type:[String,Number],default:5},icon:[String,Array],iconHalf:[String,Array],iconSelected:[String,Array],iconAriaLabel:[String,Array],color:[String,Array],colorHalf:[String,Array],colorSelected:[String,Array],noReset:Boolean,noDimming:Boolean,readonly:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{slots:t,emit:r}){let{proxy:{$q:o}}=k(),s=ct(e),l=oi(ri(e)),u=a(0),c={},d=i((()=>!0!==e.readonly&&!0!==e.disable)),h=i((()=>`q-rating row inline items-center q-rating--${!0===d.value?"":"non-"}editable`+(!0===e.noDimming?" q-rating--no-dimming":"")+(!0===e.disable?" disabled":"")+(void 0!==e.color&&!1===Array.isArray(e.color)?` text-${e.color}`:""))),p=i((()=>{let t=!0===Array.isArray(e.icon)?e.icon.length:0,n=!0===Array.isArray(e.iconSelected)?e.iconSelected.length:0,a=!0===Array.isArray(e.iconHalf)?e.iconHalf.length:0,i=!0===Array.isArray(e.color)?e.color.length:0,r=!0===Array.isArray(e.colorSelected)?e.colorSelected.length:0,o=!0===Array.isArray(e.colorHalf)?e.colorHalf.length:0;return{iconLen:t,icon:t>0?e.icon[t-1]:e.icon,selIconLen:n,selIcon:n>0?e.iconSelected[n-1]:e.iconSelected,halfIconLen:a,halfIcon:a>0?e.iconHalf[n-1]:e.iconHalf,colorLen:i,color:i>0?e.color[i-1]:e.color,selColorLen:r,selColor:r>0?e.colorSelected[r-1]:e.colorSelected,halfColorLen:o,halfColor:o>0?e.colorHalf[o-1]:e.colorHalf}})),f=i((()=>{if("string"==typeof e.iconAriaLabel){let t=0!==e.iconAriaLabel.length?`${e.iconAriaLabel} `:"";return e=>`${t}${e}`}if(!0===Array.isArray(e.iconAriaLabel)){let t=e.iconAriaLabel.length;if(t>0)return n=>e.iconAriaLabel[Math.min(n,t)-1]}return(e,t)=>`${t} ${e}`})),m=i((()=>{let t=[],n=p.value,a=Math.ceil(e.modelValue),i=!0===d.value?0:null,r=void 0===e.iconHalf||a===e.modelValue?-1:a;for(let s=1;s<=e.max;s++){let l=0===u.value&&e.modelValue>=s||u.value>0&&u.value>=s,c=r===s&&u.value0&&(!0===c?a:e.modelValue)>=s&&u.value{let t={role:"radiogroup"};return!0===e.disable&&(t["aria-disabled"]="true"),!0===e.readonly&&(t["aria-readonly"]="true"),t}));function _(t){if(!0===d.value){let n=Je(parseInt(t,10),1,parseInt(e.max,10)),a=!0!==e.noReset&&e.modelValue===n?0:n;a!==e.modelValue&&r("update:modelValue",a),u.value=0}}function b(e){!0===d.value&&(u.value=e)}function y(){u.value=0}return v((()=>{c={}})),()=>{let a=[];return m.value.forEach((({iconClass:e,name:i,attrs:r},o)=>{let s=o+1;a.push(n("div",{key:s,ref:e=>{c[`rt${s}`]=e},class:"q-rating__icon-container flex flex-center",...r,onClick(){_(s)},onMouseover(){b(s)},onMouseout:y,onFocus(){b(s)},onBlur:y,onKeyup(e){!function(e,t){switch(e.keyCode){case 13:case 32:return _(t),J(e);case 37:case 40:return c["rt"+(t-1)]&&c["rt"+(t-1)].focus(),J(e);case 39:case 38:c[`rt${t+1}`]&&c[`rt${t+1}`].focus(),J(e)}}(e,s)}},pt(t[`tip-${s}`],[n(Lt,{class:e,name:i})])))})),void 0!==e.name&&!0!==e.disable&&l(a,"push"),n("div",{class:h.value,style:s.value,...g.value},a)}}}),hu=$({name:"QResponsive",props:al,setup(e,{slots:t}){let a=il(e);return()=>n("div",{class:"q-responsive"},[n("div",{class:"q-responsive__filler overflow-hidden"},[n("div",{style:a.value})]),n("div",{class:"q-responsive__content absolute-full fit"},dt(t.default))])}}),pu=$({props:["store","barStyle","verticalBarStyle","horizontalBarStyle"],setup:e=>()=>[n("div",{class:e.store.scroll.vertical.barClass.value,style:[e.barStyle,e.verticalBarStyle],"aria-hidden":"true",onMousedown:e.store.onVerticalMousedown}),n("div",{class:e.store.scroll.horizontal.barClass.value,style:[e.barStyle,e.horizontalBarStyle],"aria-hidden":"true",onMousedown:e.store.onHorizontalMousedown}),A(n("div",{ref:e.store.scroll.vertical.ref,class:e.store.scroll.vertical.thumbClass.value,style:e.store.scroll.vertical.style.value,"aria-hidden":"true"}),e.store.thumbVertDir),A(n("div",{ref:e.store.scroll.horizontal.ref,class:e.store.scroll.horizontal.thumbClass.value,style:e.store.scroll.horizontal.style.value,"aria-hidden":"true"}),e.store.thumbHorizDir)]}),fu=["vertical","horizontal"],mu={vertical:{offset:"offsetY",scroll:"scrollTop",dir:"down",dist:"y"},horizontal:{offset:"offsetX",scroll:"scrollLeft",dir:"right",dist:"x"}},gu={prevent:!0,mouse:!0,mouseAllDir:!0},_u=e=>e>=250?50:Math.ceil(e/5),vu=$({name:"QScrollArea",props:{...Nt,thumbStyle:Object,verticalThumbStyle:Object,horizontalThumbStyle:Object,barStyle:[Array,String,Object],verticalBarStyle:[Array,String,Object],horizontalBarStyle:[Array,String,Object],verticalOffset:{type:Array,default:[0,0]},horizontalOffset:{type:Array,default:[0,0]},contentStyle:[Array,String,Object],contentActiveStyle:[Array,String,Object],delay:{type:[String,Number],default:1e3},visible:{type:Boolean,default:null},tabindex:[String,Number],onScroll:Function},setup(e,{slots:t,emit:o}){let s,l=a(!1),u=a(!1),c=a(!1),d={vertical:a(0),horizontal:a(0)},f={vertical:{ref:a(null),position:a(0),size:a(0)},horizontal:{ref:a(null),position:a(0),size:a(0)}},{proxy:m}=k(),_=It(e,m.$q),v=null,b=a(null),y=i((()=>"q-scrollarea"+(!0===_.value?" q-scrollarea--dark":"")));Object.assign(d,{verticalInner:i((()=>d.vertical.value-e.verticalOffset[0]-e.verticalOffset[1])),horizontalInner:i((()=>d.horizontal.value-e.horizontalOffset[0]-e.horizontalOffset[1]))}),f.vertical.percentage=i((()=>{let e=f.vertical.size.value-d.vertical.value;if(e<=0)return 0;let t=Je(f.vertical.position.value/e,0,1);return Math.round(1e4*t)/1e4})),f.vertical.thumbHidden=i((()=>!0!==(null===e.visible?c.value:e.visible)&&!1===l.value&&!1===u.value||f.vertical.size.value<=d.vertical.value+1)),f.vertical.thumbStart=i((()=>e.verticalOffset[0]+f.vertical.percentage.value*(d.verticalInner.value-f.vertical.thumbSize.value))),f.vertical.thumbSize=i((()=>Math.round(Je(d.verticalInner.value*d.verticalInner.value/f.vertical.size.value,_u(d.verticalInner.value),d.verticalInner.value)))),f.vertical.style=i((()=>({...e.thumbStyle,...e.verticalThumbStyle,top:`${f.vertical.thumbStart.value}px`,height:`${f.vertical.thumbSize.value}px`,right:`${e.horizontalOffset[1]}px`}))),f.vertical.thumbClass=i((()=>"q-scrollarea__thumb q-scrollarea__thumb--v absolute-right"+(!0===f.vertical.thumbHidden.value?" q-scrollarea__thumb--invisible":""))),f.vertical.barClass=i((()=>"q-scrollarea__bar q-scrollarea__bar--v absolute-right"+(!0===f.vertical.thumbHidden.value?" q-scrollarea__bar--invisible":""))),f.horizontal.percentage=i((()=>{let e=f.horizontal.size.value-d.horizontal.value;if(e<=0)return 0;let t=Je(Math.abs(f.horizontal.position.value)/e,0,1);return Math.round(1e4*t)/1e4})),f.horizontal.thumbHidden=i((()=>!0!==(null===e.visible?c.value:e.visible)&&!1===l.value&&!1===u.value||f.horizontal.size.value<=d.horizontal.value+1)),f.horizontal.thumbStart=i((()=>e.horizontalOffset[0]+f.horizontal.percentage.value*(d.horizontalInner.value-f.horizontal.thumbSize.value))),f.horizontal.thumbSize=i((()=>Math.round(Je(d.horizontalInner.value*d.horizontalInner.value/f.horizontal.size.value,_u(d.horizontalInner.value),d.horizontalInner.value)))),f.horizontal.style=i((()=>({...e.thumbStyle,...e.horizontalThumbStyle,[!0===m.$q.lang.rtl?"right":"left"]:`${f.horizontal.thumbStart.value}px`,width:`${f.horizontal.thumbSize.value}px`,bottom:`${e.verticalOffset[1]}px`}))),f.horizontal.thumbClass=i((()=>"q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom"+(!0===f.horizontal.thumbHidden.value?" q-scrollarea__thumb--invisible":""))),f.horizontal.barClass=i((()=>"q-scrollarea__bar q-scrollarea__bar--h absolute-bottom"+(!0===f.horizontal.thumbHidden.value?" q-scrollarea__bar--invisible":"")));let w=i((()=>!0===f.vertical.thumbHidden.value&&!0===f.horizontal.thumbHidden.value?e.contentStyle:e.contentActiveStyle));function x(){let e={};return fu.forEach((t=>{let n=f[t];Object.assign(e,{[t+"Position"]:n.position.value,[t+"Percentage"]:n.percentage.value,[t+"Size"]:n.size.value,[t+"ContainerSize"]:d[t].value,[t+"ContainerInnerSize"]:d[t+"Inner"].value})})),e}let S=ae((()=>{let e=x();e.ref=m,o("scroll",e)}),0);function C(e,t,n){!1!==fu.includes(e)?("vertical"===e?ma:ga)(b.value,t,n):console.error("[QScrollArea]: wrong first param of setScrollPosition (vertical/horizontal)")}function T({height:e,width:t}){let n=!1;d.vertical.value!==e&&(d.vertical.value=e,n=!0),d.horizontal.value!==t&&(d.horizontal.value=t,n=!0),!0===n&&M()}function E({position:e}){let t=!1;f.vertical.position.value!==e.top&&(f.vertical.position.value=e.top,t=!0),f.horizontal.position.value!==e.left&&(f.horizontal.position.value=e.left,t=!0),!0===t&&M()}function P({height:e,width:t}){f.horizontal.size.value!==t&&(f.horizontal.size.value=t,M()),f.vertical.size.value!==e&&(f.vertical.size.value=e,M())}function A(e,t){let n=f[t];if(!0===e.isFirst){if(!0===n.thumbHidden.value)return;s=n.position.value,u.value=!0}else if(!0!==u.value)return;!0===e.isFinal&&(u.value=!1);let a=mu[t],i=(n.size.value-d[t].value)/(d[t+"Inner"].value-n.thumbSize.value),r=e.distance[a.dist];R(s+(e.direction===a.dir?1:-1)*r*i,t)}function L(t,n){let a=f[n];if(!0!==a.thumbHidden.value){let i="vertical"===n?e.verticalOffset[0]:e.horizontalOffset[0],r=t[mu[n].offset]-i,o=a.thumbStart.value-i;if(ro+a.thumbSize.value){R(Je((r-a.thumbSize.value/2)/(d[n+"Inner"].value-a.thumbSize.value),0,1)*Math.max(0,a.size.value-d[n].value),n)}null!==a.ref.value&&a.ref.value.dispatchEvent(new MouseEvent(t.type,t))}}function M(){l.value=!0,null!==v&&clearTimeout(v),v=setTimeout((()=>{v=null,l.value=!1}),e.delay),void 0!==e.onScroll&&S()}function R(e,t){b.value[mu[t].scroll]=e}let z=null;function N(){null!==z&&clearTimeout(z),z=setTimeout((()=>{z=null,c.value=!0}),m.$q.platform.is.ios?50:0)}function I(){null!==z&&(clearTimeout(z),z=null),c.value=!1}let O=null;r((()=>m.$q.lang.rtl),(e=>{null!==b.value&&ga(b.value,Math.abs(f.horizontal.position.value)*(!0===e?-1:1))})),p((()=>{O={top:f.vertical.position.value,left:f.horizontal.position.value}})),h((()=>{if(null===O)return;let e=b.value;null!==e&&(ga(e,O.left),ma(e,O.top))})),g(S.cancel),Object.assign(m,{getScrollTarget:()=>b.value,getScroll:x,getScrollPosition:()=>({top:f.vertical.position.value,left:f.horizontal.position.value}),getScrollPercentage:()=>({top:f.vertical.percentage.value,left:f.horizontal.percentage.value}),setScrollPosition:C,setScrollPercentage(e,t,n){C(e,t*(f[e].size.value-d[e].value)*("horizontal"===e&&!0===m.$q.lang.rtl?-1:1),n)}});let D={scroll:f,thumbVertDir:[[Ki,e=>{A(e,"vertical")},void 0,{vertical:!0,...gu}]],thumbHorizDir:[[Ki,e=>{A(e,"horizontal")},void 0,{horizontal:!0,...gu}]],onVerticalMousedown(e){L(e,"vertical")},onHorizontalMousedown(e){L(e,"horizontal")}};return()=>n("div",{class:y.value,onMouseenter:N,onMouseleave:I},[n("div",{ref:b,class:"q-scrollarea__container scroll relative-position fit hide-scrollbar",tabindex:void 0!==e.tabindex?e.tabindex:void 0},[n("div",{class:"q-scrollarea__content absolute",style:w.value},pt(t.default,[n(lr,{debounce:0,onResize:P})])),n(Ml,{axis:"both",onScroll:E})]),n(lr,{debounce:0,onResize:T}),n(pu,{store:D,barStyle:e.barStyle,verticalBarStyle:e.verticalBarStyle,horizontalBarStyle:e.horizontalBarStyle})])}}),bu=1e3,yu=["start","center","end","start-force","center-force","end-force"],wu=Array.prototype.filter,ku=void 0===window.getComputedStyle(document.body).overflowAnchor?W:function(e,t){null!==e&&(void 0!==e._qOverflowAnimationFrame&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame((()=>{if(null===e)return;e._qOverflowAnimationFrame=void 0;let n=e.children||[];wu.call(n,(e=>e.dataset&&void 0!==e.dataset.qVsAnchor)).forEach((e=>{delete e.dataset.qVsAnchor}));let a=n[t];a&&a.dataset&&(a.dataset.qVsAnchor="")})))};function xu(e,t){return e+t}function Su(e,t,n,a,i,r,o,s){let l=e===window?document.scrollingElement||document.documentElement:e,u=!0===i?"offsetWidth":"offsetHeight",c={scrollStart:0,scrollViewSize:-o-s,scrollMaxSize:0,offsetStart:-o,offsetEnd:-s};if(!0===i?(e===window?(c.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,c.scrollViewSize+=document.documentElement.clientWidth):(c.scrollStart=l.scrollLeft,c.scrollViewSize+=l.clientWidth),c.scrollMaxSize=l.scrollWidth,!0===r&&(c.scrollStart=(!0===ur?c.scrollMaxSize-c.scrollViewSize:0)-c.scrollStart)):(e===window?(c.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,c.scrollViewSize+=document.documentElement.clientHeight):(c.scrollStart=l.scrollTop,c.scrollViewSize+=l.clientHeight),c.scrollMaxSize=l.scrollHeight),null!==n)for(let e=n.previousElementSibling;null!==e;e=e.previousElementSibling)!1===e.classList.contains("q-virtual-scroll--skip")&&(c.offsetStart+=e[u]);if(null!==a)for(let e=a.nextElementSibling;null!==e;e=e.nextElementSibling)!1===e.classList.contains("q-virtual-scroll--skip")&&(c.offsetEnd+=e[u]);if(t!==e){let n=l.getBoundingClientRect(),a=t.getBoundingClientRect();!0===i?(c.offsetStart+=a.left-n.left,c.offsetEnd-=a.width):(c.offsetStart+=a.top-n.top,c.offsetEnd-=a.height),e!==window&&(c.offsetStart+=c.scrollStart),c.offsetEnd+=c.scrollMaxSize-c.offsetStart}return c}function Cu(e,t,n,a){"end"===t&&(t=(e===window?document.body:e)[!0===n?"scrollWidth":"scrollHeight"]),e===window?!0===n?(!0===a&&(t=(!0===ur?document.body.scrollWidth-document.documentElement.clientWidth:0)-t),window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t):!0===n?(!0===a&&(t=(!0===ur?e.scrollWidth-e.offsetWidth:0)-t),e.scrollLeft=t):e.scrollTop=t}function Tu(e,t,n,a){if(n>=a)return 0;let i=t.length,r=Math.floor(n/bu),o=Math.floor((a-1)/bu)+1,s=e.slice(r,o).reduce(xu,0);return n%bu!=0&&(s-=t.slice(r*bu,n).reduce(xu,0)),a%bu!=0&&a!==i&&(s-=t.slice(a,o*bu).reduce(xu,0)),s}var Eu={virtualScrollSliceSize:{type:[Number,String],default:10},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},Pu=Object.keys(Eu),Au={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...Eu};function Lu({virtualScrollLength:e,getVirtualScrollTarget:t,getVirtualScrollEl:o,virtualScrollItemSizeComputed:s}){let l,u,c,m,_=k(),{props:v,emit:b,proxy:y}=_,{$q:w}=y,x=[],S=a(0),C=a(0),T=a({}),E=a(null),P=a(null),A=a(null),L=a({from:0,to:0}),M=i((()=>void 0!==v.tableColspan?v.tableColspan:100));void 0===s&&(s=i((()=>v.virtualScrollItemSize)));let R=i((()=>s.value+";"+v.virtualScrollHorizontal)),z=i((()=>R.value+";"+v.virtualScrollSliceRatioBefore+";"+v.virtualScrollSliceRatioAfter));function N(){B(u,!0)}function I(e){B(void 0===e?u:e)}function O(n,a){let i=t();if(null==i||8===i.nodeType)return;let r=Su(i,o(),E.value,P.value,v.virtualScrollHorizontal,w.lang.rtl,v.virtualScrollStickySizeStart,v.virtualScrollStickySizeEnd);c!==r.scrollViewSize&&F(r.scrollViewSize),D(i,r,Math.min(e.value-1,Math.max(0,parseInt(n,10)||0)),0,-1!==yu.indexOf(a)?a:-1!==u&&n>u?"end":"start")}function D(t,n,a,i,r){let o="string"==typeof r&&-1!==r.indexOf("-force"),s=!0===o?r.replace("-force",""):r,u=void 0!==s?s:"start",c=Math.max(0,a-T.value[u]),d=c+T.value.total;d>e.value&&(d=e.value,c=Math.max(0,d-T.value.total)),l=n.scrollStart;let h=c!==L.value.from||d!==L.value.to;if(!1===h&&void 0===s)return void $(a);let{activeElement:p}=document,f=A.value;!0===h&&null!==f&&f!==p&&!0===f.contains(p)&&(f.addEventListener("focusout",j),setTimeout((()=>{null!==f&&f.removeEventListener("focusout",j)}))),ku(f,a-c);let g=void 0!==s?m.slice(c,a).reduce(xu,0):0;if(!0===h){let t=d>=L.value.from&&c<=L.value.to?L.value.to:d;L.value={from:c,to:t},S.value=Tu(x,m,0,c),C.value=Tu(x,m,d,e.value),requestAnimationFrame((()=>{L.value.to!==d&&l===n.scrollStart&&(L.value={from:L.value.from,to:d},C.value=Tu(x,m,d,e.value))}))}requestAnimationFrame((()=>{if(l!==n.scrollStart)return;!0===h&&q(c);let e=m.slice(c,a).reduce(xu,0),r=e+n.offsetStart+S.value,u=r+m[a],d=r+i;if(void 0!==s){let t=e-g,i=n.scrollStart+t;d=!0!==o&&ie.classList&&!1===e.classList.contains("q-virtual-scroll--skip"))),r=i.length,o=!0===v.virtualScrollHorizontal?e=>e.getBoundingClientRect().width:e=>e.offsetHeight,s=e;for(let e=0;e=i;t--)m[t]=a;let r=Math.floor((e.value-1)/bu);x=[];for(let t=0;t<=r;t++){let n=0,a=Math.min((t+1)*bu,e.value);for(let e=t*bu;e=0?(q(L.value.from),d((()=>{O(t)}))):V()}function F(e){if(void 0===e&&typeof window<"u"){let n=t();null!=n&&8!==n.nodeType&&(e=Su(n,o(),E.value,P.value,v.virtualScrollHorizontal,w.lang.rtl,v.virtualScrollStickySizeStart,v.virtualScrollStickySizeEnd).scrollViewSize)}c=e;let n=parseFloat(v.virtualScrollSliceRatioBefore)||0,a=1+n+(parseFloat(v.virtualScrollSliceRatioAfter)||0),i=void 0===e||e<=0?1:Math.ceil(e/s.value),r=Math.max(1,i,Math.ceil((v.virtualScrollSliceSize>0?v.virtualScrollSliceSize:10)/a));T.value={total:Math.ceil(r*a),start:Math.ceil(r*n),center:Math.ceil(r*(.5+n)),end:Math.ceil(r*(1+n)),view:i}}function $(e){u!==e&&(void 0!==v.onVirtualScroll&&b("virtualScroll",{index:e,from:L.value.from,to:L.value.to-1,direction:e{F()})),r(R,N),F();let V=ae((function(){let n=t();if(null==n||8===n.nodeType)return;let a=Su(n,o(),E.value,P.value,v.virtualScrollHorizontal,w.lang.rtl,v.virtualScrollStickySizeStart,v.virtualScrollStickySizeEnd),i=e.value-1,r=a.scrollMaxSize-a.offsetStart-a.offsetEnd-C.value;if(l===a.scrollStart)return;if(a.scrollMaxSize<=0)return void D(n,a,0,0);c!==a.scrollViewSize&&F(a.scrollViewSize),q(L.value.from);let s=Math.floor(a.scrollMaxSize-Math.max(a.scrollViewSize,a.offsetEnd)-Math.min(m[i],a.scrollViewSize/2));if(s>0&&Math.ceil(a.scrollStart)>=s)return void D(n,a,i,a.scrollMaxSize-a.offsetEnd-x.reduce(xu,0));let u=0,d=a.scrollStart-a.offsetStart,h=d;if(d<=r&&d+a.scrollViewSize>=S.value)d-=S.value,u=L.value.from,h=d;else for(let e=0;d>=x[e]&&u0&&u-a.scrollViewSize?(u++,h=d):h=m[u]+d;D(n,a,u,h)}),!0===w.platform.is.ios?120:35);f((()=>{F()}));let U=!1;return p((()=>{U=!0})),h((()=>{if(!0!==U)return;let e=t();void 0!==l&&null!=e&&8!==e.nodeType?Cu(e,l,v.virtualScrollHorizontal,w.lang.rtl):O(u)})),g((()=>{V.cancel()})),Object.assign(y,{scrollTo:O,reset:N,refresh:I}),{virtualScrollSliceRange:L,virtualScrollSliceSizeComputed:T,setVirtualScrollSize:F,onVirtualScrollEvt:V,localResetVirtualScroll:B,padVirtualScroll:function(e,t){let a=!0===v.virtualScrollHorizontal?"width":"height",i={["--q-virtual-scroll-item-"+a]:s.value+"px"};return["tbody"===e?n(e,{class:"q-virtual-scroll__padding",key:"before",ref:E},[n("tr",[n("td",{style:{[a]:`${S.value}px`,...i},colspan:M.value})])]):n(e,{class:"q-virtual-scroll__padding",key:"before",ref:E,style:{[a]:`${S.value}px`,...i}}),n(e,{class:"q-virtual-scroll__content",key:"content",ref:A,tabindex:-1},t.flat()),"tbody"===e?n(e,{class:"q-virtual-scroll__padding",key:"after",ref:P},[n("tr",[n("td",{style:{[a]:`${C.value}px`,...i},colspan:M.value})])]):n(e,{class:"q-virtual-scroll__padding",key:"after",ref:P,style:{[a]:`${C.value}px`,...i}})]},scrollTo:O,reset:N,refresh:I}}var Mu=e=>["add","add-unique","toggle"].includes(e),Ru=Object.keys(Fs);function zu(e,t){if("function"==typeof e)return e;let n=void 0!==e?e:t;return e=>null!==e&&"object"==typeof e&&n in e?e[n]:e}var Nu=$({name:"QSelect",inheritAttrs:!1,props:{...Au,...ii,...Fs,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],popupNoRouteDismiss:Boolean,useInput:Boolean,useChips:Boolean,newValueMode:{type:String,validator:Mu},mapOptions:Boolean,emitValue:Boolean,disableTabSelection:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:{},transitionHide:{},transitionDuration:{},behavior:{type:String,validator:e=>["default","menu","dialog"].includes(e),default:"default"},virtualScrollItemSize:Au.virtualScrollItemSize.type,onNewValue:Function,onFilter:Function},emits:[...$s,"add","remove","inputValue","keyup","keypress","keydown","popupShow","popupHide","filterAbort"],setup(e,{slots:t,emit:o}){let s,l,u,c,h,p,f,{proxy:m}=k(),{$q:_}=m,y=a(!1),w=a(!1),x=a(-1),S=a(""),C=a(!1),T=a(!1),E=null,P=null,A=null,L=a(null),M=a(null),R=a(null),z=a(null),N=a(null),I=si(e),O=_l(De),D=i((()=>e.options.length)),q=i((()=>void 0===e.virtualScrollItemSize?!0===e.optionsDense?24:48:e.virtualScrollItemSize)),{virtualScrollSliceRange:j,virtualScrollSliceSizeComputed:B,localResetVirtualScroll:F,padVirtualScroll:$,onVirtualScrollEvt:V,scrollTo:U,setVirtualScrollSize:H}=Lu({virtualScrollLength:D,getVirtualScrollTarget:function(){return Ie()},getVirtualScrollEl:Ie,virtualScrollItemSizeComputed:q}),W=Vs(),G=i((()=>{let t=!0===e.mapOptions&&!0!==e.multiple,n=void 0===e.modelValue||null===e.modelValue&&!0!==t?[]:!0===e.multiple&&Array.isArray(e.modelValue)?e.modelValue:[e.modelValue];if(!0===e.mapOptions){let a=!0===e.mapOptions&&void 0!==s?s:[],i=n.map((t=>function(t,n){let a=e=>qe(_e.value(e),t);return e.options.find(a)||n.find(a)||t}(t,a)));return null===e.modelValue&&!0===t?i.filter((e=>null!==e)):i}return n})),Y=i((()=>{let t={};return Ru.forEach((n=>{let a=e[n];void 0!==a&&(t[n]=a)})),t})),K=i((()=>null===e.optionsDark?W.isDark.value:e.optionsDark)),X=i((()=>js(G.value))),ee=i((()=>{let t="q-field__input q-placeholder col";return!0===e.hideSelected||0===G.value.length?[t,e.inputClass]:(t+=" q-field__input--padding",void 0===e.inputClass?t:[t,e.inputClass])})),te=i((()=>(!0===e.virtualScrollHorizontal?"q-virtual-scroll--horizontal":"")+(e.popupContentClass?" "+e.popupContentClass:""))),ne=i((()=>0===D.value)),ae=i((()=>G.value.map((e=>ve.value(e))).join(", "))),ie=i((()=>void 0!==e.displayValue?e.displayValue:ae.value)),re=i((()=>!0===e.optionsHtml?()=>!0:e=>null!=e&&!0===e.html)),oe=i((()=>!0===e.displayValueHtml||void 0===e.displayValue&&(!0===e.optionsHtml||G.value.some(re.value)))),se=i((()=>!0===W.focused.value?e.tabindex:-1)),le=i((()=>{let t={tabindex:e.tabindex,role:"combobox","aria-label":e.label,"aria-readonly":!0===e.readonly?"true":"false","aria-autocomplete":!0===e.useInput?"list":"none","aria-expanded":!0===y.value?"true":"false","aria-controls":`${W.targetUid.value}_lb`};return x.value>=0&&(t["aria-activedescendant"]=`${W.targetUid.value}_${x.value}`),t})),ue=i((()=>({id:`${W.targetUid.value}_lb`,role:"listbox","aria-multiselectable":!0===e.multiple?"true":"false"}))),ce=i((()=>G.value.map(((e,t)=>({index:t,opt:e,html:re.value(e),selected:!0,removeAtIndex:Se,toggleOption:Te,tabindex:se.value}))))),de=i((()=>{if(0===D.value)return[];let{from:t,to:n}=j.value;return e.options.slice(t,n).map(((n,a)=>{let i=!0===be.value(n),r=!0===Ae(n),o=t+a,s={clickable:!0,active:r,activeClass:ge.value,manualFocus:!0,focused:!1,disable:i,tabindex:-1,dense:e.optionsDense,dark:K.value,role:"option","aria-selected":!0===r?"true":"false",id:`${W.targetUid.value}_${o}`,onClick:()=>{Te(n)}};return!0!==i&&(x.value===o&&(s.focused=!0),!0===_.platform.is.desktop&&(s.onMousemove=()=>{!0===y.value&&Ee(o)})),{index:o,opt:n,html:re.value(n),label:ve.value(n),selected:s.active,focused:s.focused,toggleOption:Te,setOptionIndex:Ee,itemProps:s}}))})),fe=i((()=>void 0!==e.dropdownIcon?e.dropdownIcon:_.iconSet.arrow.dropdown)),me=i((()=>!1===e.optionsCover&&!0!==e.outlined&&!0!==e.standout&&!0!==e.borderless&&!0!==e.rounded)),ge=i((()=>void 0!==e.optionsSelectedClass?e.optionsSelectedClass:void 0!==e.color?`text-${e.color}`:"")),_e=i((()=>zu(e.optionValue,"value"))),ve=i((()=>zu(e.optionLabel,"label"))),be=i((()=>zu(e.optionDisable,"disable"))),ye=i((()=>G.value.map(_e.value))),we=i((()=>{let e={onInput:De,onChange:O,onKeydown:Ne,onKeyup:Re,onKeypress:ze,onFocus:Le,onClick(e){!0===l&&Q(e)}};return e.onCompositionstart=e.onCompositionupdate=e.onCompositionend=O,e}));function ke(t){return!0===e.emitValue?_e.value(t):t}function xe(t){if(-1!==t&&t=e.maxValues)return;let i=e.modelValue.slice();o("add",{index:i.length,value:a}),i.push(a),o("update:modelValue",i)}function Te(t,n){if(!0!==W.editable.value||void 0===t||!0===be.value(t))return;let a=_e.value(t);if(!0!==e.multiple)return!0!==n&&(Be(!0===e.fillInput?ve.value(t):"",!0,!0),Ze()),null!==M.value&&M.value.focus(),void((0===G.value.length||!0!==qe(_e.value(G.value[0]),a))&&o("update:modelValue",!0===e.emitValue?a:t));if((!0!==l||!0===C.value)&&W.focus(),Le(),0===G.value.length){let n=!0===e.emitValue?a:t;return o("add",{index:0,value:n}),void o("update:modelValue",!0===e.multiple?[n]:n)}let i=e.modelValue.slice(),r=ye.value.findIndex((e=>qe(e,a)));if(-1!==r)o("remove",{index:r,value:i.splice(r,1)[0]});else{if(void 0!==e.maxValues&&i.length>=e.maxValues)return;let n=!0===e.emitValue?a:t;o("add",{index:i.length,value:n}),i.push(n)}o("update:modelValue",i)}function Ee(e){if(!0!==_.platform.is.desktop)return;let t=-1!==e&&e=0?ve.value(e.options[a]):c,!0))}}function Ae(e){let t=_e.value(e);return void 0!==ye.value.find((e=>qe(e,t)))}function Le(t){!0===e.useInput&&null!==M.value&&(void 0===t||M.value===t.target&&t.target.value===ae.value)&&M.value.select()}function Me(e){!0===pe(e,27)&&!0===y.value&&(Q(e),Ze(),Je()),o("keyup",e)}function Re(t){let{value:n}=t.target;if(void 0===t.keyCode)if(t.target.value="",null!==E&&(clearTimeout(E),E=null),null!==P&&(clearTimeout(P),P=null),Je(),"string"==typeof n&&0!==n.length){let t=n.toLocaleLowerCase(),a=n=>{let a=e.options.find((e=>n.value(e).toLocaleLowerCase()===t));return void 0!==a&&(-1===G.value.indexOf(a)?Te(a):Ze(),!0)},i=e=>{!0!==a(_e)&&(!0===a(ve)||!0===e||Fe(n,!0,(()=>i(!0))))};i()}else W.clearValue(t);else Me(t)}function ze(e){o("keypress",e)}function Ne(t){if(o("keydown",t),!0===he(t))return;let n=0!==S.value.length&&(void 0!==e.newValueMode||void 0!==e.onNewValue),a=!0!==t.shiftKey&&!0!==e.disableTabSelection&&!0!==e.multiple&&(-1!==x.value||!0===n);if(27===t.keyCode)return void Z(t);if(9===t.keyCode&&!1===a)return void Ke();if(void 0===t.target||t.target.id!==W.targetUid.value||!0!==W.editable.value)return;if(40===t.keyCode&&!0!==W.innerLoading.value&&!1===y.value)return J(t),void Qe();if(8===t.keyCode&&(!0===e.useChips||!0===e.clearable)&&!0!==e.hideSelected&&0===S.value.length)return void(!0===e.multiple&&!0===Array.isArray(e.modelValue)?xe(e.modelValue.length-1):!0!==e.multiple&&null!==e.modelValue&&o("update:modelValue",null));(35===t.keyCode||36===t.keyCode)&&("string"!=typeof S.value||0===S.value.length)&&(J(t),x.value=-1,Pe(36===t.keyCode?1:-1,e.multiple)),(33===t.keyCode||34===t.keyCode)&&void 0!==B.value&&(J(t),x.value=Math.max(-1,Math.min(D.value,x.value+(33===t.keyCode?-1:1)*B.value.view)),Pe(33===t.keyCode?1:-1,e.multiple)),(38===t.keyCode||40===t.keyCode)&&(J(t),Pe(38===t.keyCode?-1:1,e.multiple));let i=D.value;if((void 0===p||f0&&!0!==e.useInput&&void 0!==t.key&&1===t.key.length&&!1===t.altKey&&!1===t.ctrlKey&&!1===t.metaKey&&(32!==t.keyCode||0!==p.length)){!0!==y.value&&Qe(t);let n=t.key.toLocaleLowerCase(),a=1===p.length&&p[0]===n;f=Date.now()+1500,!1===a&&(J(t),p+=n);let r=new RegExp("^"+p.split("").map((e=>-1!==".*+?^${}()|[]\\".indexOf(e)?"\\"+e:e)).join(".*"),"i"),o=x.value;if(!0===a||o<0||!0!==r.test(ve.value(e.options[o])))do{o=Xe(o+1,-1,i-1)}while(o!==x.value&&(!0===be.value(e.options[o])||!0!==r.test(ve.value(e.options[o]))));x.value!==o&&d((()=>{Ee(o),U(o),o>=0&&!0===e.useInput&&!0===e.fillInput&&je(ve.value(e.options[o]),!0)}))}else if(13===t.keyCode||32===t.keyCode&&!0!==e.useInput&&""===p||9===t.keyCode&&!1!==a){if(9!==t.keyCode&&J(t),-1!==x.value&&x.value{if(n){if(!0!==Mu(n))return}else n=e.newValueMode;Be("",!0!==e.multiple,!0),null!=t&&(("toggle"===n?Te:Ce)(t,"add-unique"===n),!0!==e.multiple&&(null!==M.value&&M.value.focus(),Ze()))};if(void 0!==e.onNewValue?o("newValue",S.value,t):t(S.value),!0!==e.multiple)return}!0===y.value?Ke():!0!==W.innerLoading.value&&Qe()}}function Ie(){return!0===l?N.value:null!==R.value&&null!==R.value.contentEl?R.value.contentEl:void 0}function Oe(){if(!0===ne.value)return void 0!==t["no-option"]?t["no-option"]({inputValue:S.value}):void 0;let e=void 0!==t.option?t.option:e=>n(rs,{key:e.index,...e.itemProps},(()=>n(os,(()=>n(bs,(()=>n("span",{[!0===e.html?"innerHTML":"textContent"]:e.label}))))))),a=$("div",de.value.map(e));return void 0!==t["before-options"]&&(a=t["before-options"]().concat(a)),pt(t["after-options"],a)}function De(t){null!==E&&(clearTimeout(E),E=null),null!==P&&(clearTimeout(P),P=null),(!t||!t.target||!0!==t.target.qComposing)&&(je(t.target.value||""),u=!0,c=S.value,!0!==W.focused.value&&(!0!==l||!0===C.value)&&W.focus(),void 0!==e.onFilter&&(E=setTimeout((()=>{E=null,Fe(S.value)}),e.inputDebounce)))}function je(t,n){S.value!==t&&(S.value=t,!0===n||0===e.inputDebounce||"0"===e.inputDebounce?o("inputValue",t):P=setTimeout((()=>{P=null,o("inputValue",t)}),e.inputDebounce))}function Be(t,n,a){u=!0!==a,!0===e.useInput&&(je(t,!0),(!0===n||!0!==a)&&(c=t),!0!==n&&Fe(t))}function Fe(t,n,a){if(void 0===e.onFilter||!0!==n&&!0!==W.focused.value)return;!0===W.innerLoading.value?o("filterAbort"):(W.innerLoading.value=!0,T.value=!0),""!==t&&!0!==e.multiple&&0!==G.value.length&&!0!==u&&t===ve.value(G.value[0])&&(t="");let i=setTimeout((()=>{!0===y.value&&(y.value=!1)}),10);null!==A&&clearTimeout(A),A=i,o("filter",t,((e,t)=>{(!0===n||!0===W.focused.value)&&A===i&&(clearTimeout(A),"function"==typeof e&&e(),T.value=!1,d((()=>{W.innerLoading.value=!1,!0===W.editable.value&&(!0===n?!0===y.value&&Ze():!0===y.value?et(!0):y.value=!0),"function"==typeof t&&d((()=>{t(m)})),"function"==typeof a&&d((()=>{a(m)}))})))}),(()=>{!0===W.focused.value&&A===i&&(clearTimeout(A),W.innerLoading.value=!1,T.value=!1),!0===y.value&&(y.value=!1)}))}function $e(e){at(e),Ke()}function Ve(){H()}function Ue(e){Q(e),null!==M.value&&M.value.focus(),C.value=!0,window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,0)}function He(e){Q(e),d((()=>{C.value=!1}))}function We(e){at(e),null!==z.value&&z.value.__updateRefocusTarget(W.rootRef.value.querySelector(".q-field__native > [tabindex]:last-child")),W.focused.value=!1}function Ge(e){Ze(),!1===W.focused.value&&o("blur",e),Je()}function Ye(){let e=document.activeElement;(null===e||e.id!==W.targetUid.value)&&null!==M.value&&M.value!==e&&M.value.focus(),H()}function Ke(){!0!==w.value&&(x.value=-1,!0===y.value&&(y.value=!1),!1===W.focused.value&&(null!==A&&(clearTimeout(A),A=null),!0===W.innerLoading.value&&(o("filterAbort"),W.innerLoading.value=!1,T.value=!1)))}function Qe(n){!0===W.editable.value&&(!0===l?(W.onControlFocusin(n),w.value=!0,d((()=>{W.focus()}))):W.focus(),void 0!==e.onFilter?Fe(S.value):(!0!==ne.value||void 0!==t["no-option"])&&(y.value=!0))}function Ze(){w.value=!1,Ke()}function Je(){!0===e.useInput&&Be(!0!==e.multiple&&!0===e.fillInput&&0!==G.value.length&&ve.value(G.value[0])||"",!0,!0)}function et(t){let n=-1;if(!0===t){if(0!==G.value.length){let t=_e.value(G.value[0]);n=e.options.findIndex((e=>qe(_e.value(e),t)))}F(n)}Ee(n)}function tt(){!1===w.value&&null!==R.value&&R.value.updatePosition()}function nt(e){void 0!==e&&Q(e),o("popupShow",e),W.hasPopupOpen=!0,W.onControlFocusin(e)}function at(e){void 0!==e&&Q(e),o("popupHide",e),W.hasPopupOpen=!1,W.onControlFocusout(e)}function it(){l=(!0===_.platform.is.mobile||"dialog"===e.behavior)&&("menu"!==e.behavior&&(!0!==e.useInput||(void 0!==t["no-option"]||void 0!==e.onFilter||!1===ne.value))),h=!0===_.platform.is.ios&&!0===l&&!0===e.useInput?"fade":e.transitionShow}return r(G,(t=>{s=t,!0===e.useInput&&!0===e.fillInput&&!0!==e.multiple&&!0!==W.innerLoading.value&&(!0!==w.value&&!0!==y.value||!0!==X.value)&&(!0!==u&&Je(),(!0===w.value||!0===y.value)&&Fe(""))}),{immediate:!0}),r((()=>e.fillInput),Je),r(y,et),r(D,(function(e,t){!0===y.value&&!1===W.innerLoading.value&&(F(-1,!0),d((()=>{!0===y.value&&!1===W.innerLoading.value&&(e>t?F():et(!0))})))})),v(it),b(tt),it(),g((()=>{null!==E&&clearTimeout(E),null!==P&&clearTimeout(P)})),Object.assign(m,{showPopup:Qe,hidePopup:Ze,removeAtIndex:xe,add:Ce,toggleOption:Te,getOptionIndex:()=>x.value,setOptionIndex:Ee,moveOptionSelection:Pe,filter:Fe,updateMenuPosition:tt,updateInputValue:Be,isOptionSelected:Ae,getEmittingOptionValue:ke,isOptionDisabled:(...e)=>!0===be.value.apply(null,e),getOptionValue:(...e)=>_e.value.apply(null,e),getOptionLabel:(...e)=>ve.value.apply(null,e)}),Object.assign(W,{innerValue:G,fieldClass:i((()=>`q-select q-field--auto-height q-select--with${!0!==e.useInput?"out":""}-input q-select--with${!0!==e.useChips?"out":""}-chips q-select--${!0===e.multiple?"multiple":"single"}`)),inputRef:L,targetRef:M,hasValue:X,showPopup:Qe,floatingLabel:i((()=>!0!==e.hideSelected&&!0===X.value||"number"==typeof S.value||0!==S.value.length||js(e.displayValue))),getControlChild:()=>{if(!1!==W.editable.value&&(!0===w.value||!0!==ne.value||void 0!==t["no-option"]))return!0===l?function(){let a=[n(Hs,{class:`col-auto ${W.fieldClass.value}`,...Y.value,for:W.targetUid.value,dark:K.value,square:!0,loading:T.value,itemAligned:!1,filled:!0,stackLabel:0!==S.value.length,...W.splitAttrs.listeners.value,onFocus:Ue,onBlur:He},{...t,rawControl:()=>W.getControl(!0),before:void 0,after:void 0})];return!0===y.value&&a.push(n("div",{ref:N,class:te.value+" scroll",style:e.popupContentStyle,...ue.value,onClick:Z,onScrollPassive:V},Oe())),n(Zo,{ref:z,modelValue:w.value,position:!0===e.useInput?"top":void 0,transitionShow:h,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,noRouteDismiss:e.popupNoRouteDismiss,onBeforeShow:nt,onBeforeHide:We,onHide:Ge,onShow:Ye},(()=>n("div",{class:"q-select__dialog"+(!0===K.value?" q-select__dialog--dark q-dark":"")+(!0===C.value?" q-select__dialog--focused":"")},a)))}():n(Ya,{ref:R,class:te.value,style:e.popupContentStyle,modelValue:y.value,fit:!0!==e.menuShrink,cover:!0===e.optionsCover&&!0!==ne.value&&!0!==e.useInput,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,dark:K.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,noRouteDismiss:e.popupNoRouteDismiss,square:me.value,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,separateClosePopup:!0,...ue.value,onScrollPassive:V,onBeforeShow:nt,onBeforeHide:$e,onShow:Ve},Oe);!0===W.hasPopupOpen&&(W.hasPopupOpen=!1)},controlEvents:{onFocusin(e){W.onControlFocusin(e)},onFocusout(e){W.onControlFocusout(e,(()=>{Je(),Ke()}))},onClick(e){if(Z(e),!0!==l&&!0===y.value)return Ke(),void(null!==M.value&&M.value.focus());Qe(e)}},getControl:a=>{let i=!0===e.hideSelected?[]:void 0!==t["selected-item"]?ce.value.map((e=>t["selected-item"](e))).slice():void 0!==t.selected?[].concat(t.selected()):!0===e.useChips?ce.value.map(((t,a)=>n($i,{key:"option-"+a,removable:!0===W.editable.value&&!0!==be.value(t.opt),dense:!0,textColor:e.color,tabindex:se.value,onRemove(){t.removeAtIndex(a)}},(()=>n("span",{class:"ellipsis",[!0===t.html?"innerHTML":"textContent"]:ve.value(t.opt)}))))):[n("span",{[!0===oe.value?"innerHTML":"textContent"]:ie.value})],r=!0===a||!0!==w.value||!0!==l;if(!0===e.useInput)i.push(function(t,a){let i=!0===a?{...le.value,...W.splitAttrs.attributes.value}:void 0,r={ref:!0===a?M:void 0,key:"i_t",class:ee.value,style:e.inputStyle,value:void 0!==S.value?S.value:"",type:"search",...i,id:!0===a?W.targetUid.value:void 0,maxlength:e.maxlength,autocomplete:e.autocomplete,"data-autofocus":!0===t||!0===e.autofocus||void 0,disabled:!0===e.disable,readonly:!0===e.readonly,...we.value};return!0!==t&&!0===l&&(!0===Array.isArray(r.class)?r.class=[...r.class,"no-pointer-events"]:r.class+=" no-pointer-events"),n("input",r)}(a,r));else if(!0===W.editable.value){let t=!0===r?le.value:void 0;i.push(n("input",{ref:!0===r?M:void 0,key:"d_t",class:"q-select__focus-target",id:!0===r?W.targetUid.value:void 0,value:ie.value,readonly:!0,"data-autofocus":!0===a||!0===e.autofocus||void 0,...t,onKeydown:Ne,onKeyup:Me,onKeypress:ze})),!0===r&&"string"==typeof e.autocomplete&&0!==e.autocomplete.length&&i.push(n("input",{class:"q-select__autocomplete-input",autocomplete:e.autocomplete,tabindex:-1,onKeyup:Re}))}if(void 0!==I.value&&!0!==e.disable&&0!==ye.value.length){let t=ye.value.map((e=>n("option",{value:e,selected:!0})));i.push(n("select",{class:"hidden",name:I.value,multiple:e.multiple},t))}let o=!0===e.useInput||!0!==r?void 0:W.splitAttrs.attributes.value;return n("div",{class:"q-field__native row items-center",...o,...W.splitAttrs.listeners.value},i)},getInnerAppend:()=>!0!==e.loading&&!0!==T.value&&!0!==e.hideDropdownIcon?[n(Lt,{class:"q-select__dropdown-icon"+(!0===y.value?" rotate-180":""),name:fe.value})]:null}),Us(W)}}),Iu=["text","rect","circle","QBtn","QBadge","QChip","QToolbar","QCheckbox","QRadio","QToggle","QSlider","QRange","QInput","QAvatar"],Ou=["wave","pulse","pulse-x","pulse-y","fade","blink","none"],Du=$({name:"QSkeleton",props:{...Nt,tag:{type:String,default:"div"},type:{type:String,validator:e=>Iu.includes(e),default:"rect"},animation:{type:String,validator:e=>Ou.includes(e),default:"wave"},animationSpeed:{type:[String,Number],default:1500},square:Boolean,bordered:Boolean,size:String,width:String,height:String},setup(e,{slots:t}){let a=k(),r=It(e,a.proxy.$q),o=i((()=>{let t=void 0!==e.size?[e.size,e.size]:[e.width,e.height];return{"--q-skeleton-speed":`${e.animationSpeed}ms`,width:t[0],height:t[1]}})),s=i((()=>`q-skeleton q-skeleton--${!0===r.value?"dark":"light"} q-skeleton--type-${e.type}`+("none"!==e.animation?` q-skeleton--anim q-skeleton--anim-${e.animation}`:"")+(!0===e.square?" q-skeleton--square":"")+(!0===e.bordered?" q-skeleton--bordered":"")));return()=>n(e.tag,{class:s.value,style:o.value},dt(t.default))}}),qu=[["left","center","start","width"],["right","center","end","width"],["top","start","center","height"],["bottom","end","center","height"]],ju=$({name:"QSlideItem",props:{...Nt,leftColor:String,rightColor:String,topColor:String,bottomColor:String,onSlide:Function},emits:["action","top","right","bottom","left"],setup(e,{slots:t,emit:r}){let{proxy:o}=k(),{$q:s}=o,l=It(e,s),{getCache:u}=bi(),c=a(null),d=null,h={},p={},f={},m=i((()=>!0===s.lang.rtl?{left:"right",right:"left"}:{left:"left",right:"right"})),_=i((()=>"q-slide-item q-item-type overflow-hidden"+(!0===l.value?" q-slide-item--dark q-dark":"")));function b(){c.value.style.transform="translate(0,0)"}function y(t,n,a){void 0!==e.onSlide&&r("slide",{side:t,ratio:n,isReset:a})}function w(e){let n,a,i,o=c.value;if(e.isFirst)h={dir:null,size:{left:0,right:0,top:0,bottom:0},scale:0},o.classList.add("no-transition"),qu.forEach((e=>{if(void 0!==t[e[0]]){let t=f[e[0]];t.style.transform="scale(1)",h.size[e[0]]=t.getBoundingClientRect()[e[3]]}})),h.axis="up"===e.direction||"down"===e.direction?"Y":"X";else{if(e.isFinal)return o.classList.remove("no-transition"),void(1===h.scale?(o.style.transform=`translate${h.axis}(${100*h.dir}%)`,null!==d&&clearTimeout(d),d=setTimeout((()=>{d=null,r(h.showing,{reset:b}),r("action",{side:h.showing,reset:b})}),230)):(o.style.transform="translate(0,0)",y(h.showing,0,!0)));e.direction="X"===h.axis?e.offset.x<0?"left":"right":e.offset.y<0?"up":"down"}void 0===t.left&&e.direction===m.value.right||void 0===t.right&&e.direction===m.value.left||void 0===t.top&&"down"===e.direction||void 0===t.bottom&&"up"===e.direction?o.style.transform="translate(0,0)":("X"===h.axis?(a="left"===e.direction?-1:1,n=1===a?m.value.left:m.value.right,i=e.distance.x):(a="up"===e.direction?-2:2,n=2===a?"top":"bottom",i=e.distance.y),(null===h.dir||Math.abs(a)===Math.abs(h.dir))&&(h.dir!==a&&(["left","right","top","bottom"].forEach((e=>{p[e]&&(p[e].style.visibility=n===e?"visible":"hidden")})),h.showing=n,h.dir=a),h.scale=Math.max(0,Math.min(1,(i-40)/h.size[n])),o.style.transform=`translate${h.axis}(${i*a/Math.abs(a)}px)`,f[n].style.transform=`scale(${h.scale})`,y(n,h.scale,!1)))}return v((()=>{p={},f={}})),g((()=>{null!==d&&clearTimeout(d)})),Object.assign(o,{reset:b}),()=>{let a=[],i={left:void 0!==t[m.value.right],right:void 0!==t[m.value.left],up:void 0!==t.bottom,down:void 0!==t.top},r=Object.keys(i).filter((e=>!0===i[e]));qu.forEach((i=>{let r=i[0];void 0!==t[r]&&a.push(n("div",{key:r,ref:e=>{p[r]=e},class:`q-slide-item__${r} absolute-full row no-wrap items-${i[1]} justify-${i[2]}`+(void 0!==e[r+"Color"]?` bg-${e[r+"Color"]}`:"")},[n("div",{ref:e=>{f[r]=e}},t[r]())]))}));let o=n("div",{key:(0===r.length?"only-":"")+" content",ref:c,class:"q-slide-item__content"},dt(t.default));return 0===r.length?a.push(o):a.push(A(o,u("dir#"+r.join(""),(()=>{let e={prevent:!0,stop:!0,mouse:!0};return r.forEach((t=>{e[t]=!0})),[[Ki,w,void 0,e]]})))),n("div",{class:_.value},a)}}}),Bu=$({name:"QSpace",setup(){let e=n("div",{class:"q-space"});return()=>e}}),Fu=$({name:"QSpinnerAudio",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 55 80",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),$u=$({name:"QSpinnerBall",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 57 57",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Vu=$({name:"QSpinnerBars",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 135 140",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Uu=$({name:"QSpinnerBox",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Hu=$({name:"QSpinnerClock",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Wu=$({name:"QSpinnerComment",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:''})}}),Gu=$({name:"QSpinnerCube",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:''})}}),Yu=$({name:"QSpinnerDots",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 120 30",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Ku=$({name:"QSpinnerFacebook",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",innerHTML:''})}}),Qu=$({name:"QSpinnerGears",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Zu=$({name:"QSpinnerGrid",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 105 105",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Ju=$({name:"QSpinnerHearts",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 140 64",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Xu=$({name:"QSpinnerHourglass",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),ec=$({name:"QSpinnerInfinity",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:''})}}),tc=$({name:"QSpinnerIos",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,stroke:"currentColor",fill:"currentColor",viewBox:"0 0 64 64",innerHTML:''})}}),nc=$({name:"QSpinnerOrbit",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),ac=$({name:"QSpinnerOval",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),ic=$({name:"QSpinnerPie",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),rc=$({name:"QSpinnerPuff",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),oc=$({name:"QSpinnerRadio",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),sc=$({name:"QSpinnerRings",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),lc=$({name:"QSpinnerTail",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),uc=$({name:"QSplitter",props:{...Nt,modelValue:{type:Number,required:!0},reverse:Boolean,unit:{type:String,default:"%",validator:e=>["%","px"].includes(e)},limits:{type:Array,validator:e=>2===e.length&&"number"==typeof e[0]&&"number"==typeof e[1]&&(e[0]>=0&&e[0]<=e[1])},emitImmediately:Boolean,horizontal:Boolean,disable:Boolean,beforeClass:[Array,String,Object],afterClass:[Array,String,Object],separatorClass:[Array,String,Object],separatorStyle:[Array,String,Object]},emits:["update:modelValue"],setup(e,{slots:t,emit:o}){let{proxy:{$q:s}}=k(),l=It(e,s),u=a(null),c={before:a(null),after:a(null)},h=i((()=>`q-splitter no-wrap ${!0===e.horizontal?"q-splitter--horizontal column":"q-splitter--vertical row"} q-splitter--${!0===e.disable?"disabled":"workable"}`+(!0===l.value?" q-splitter--dark":""))),p=i((()=>!0===e.horizontal?"height":"width")),f=i((()=>!0!==e.reverse?"before":"after")),m=i((()=>void 0!==e.limits?e.limits:"%"===e.unit?[10,90]:[50,1/0]));function g(t){return("%"===e.unit?t:Math.round(t))+e.unit}let _,v,b,y,w,x=i((()=>({[f.value]:{[p.value]:g(e.modelValue)}})));function S(t){if(!0===t.isFirst){let t=u.value.getBoundingClientRect()[p.value];return _=!0===e.horizontal?"up":"left",v="%"===e.unit?100:t,b=Math.min(v,m.value[1],Math.max(m.value[0],e.modelValue)),y=(!0!==e.reverse?1:-1)*(!0===e.horizontal?1:!0===s.lang.rtl?-1:1)*("%"===e.unit?0===t?0:100/t:1),void u.value.classList.add("q-splitter--active")}if(!0===t.isFinal)return w!==e.modelValue&&o("update:modelValue",w),void u.value.classList.remove("q-splitter--active");let n=b+y*(t.direction===_?-1:1)*t.distance[!0===e.horizontal?"y":"x"];w=Math.min(v,m.value[1],Math.max(m.value[0],n)),c[f.value].value.style[p.value]=g(w),!0===e.emitImmediately&&e.modelValue!==w&&o("update:modelValue",w)}let C=i((()=>[[Ki,S,void 0,{[!0===e.horizontal?"vertical":"horizontal"]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]));function T(e,t){et[1]&&o("update:modelValue",t[1])}return r((()=>e.modelValue),(e=>{T(e,m.value)})),r((()=>e.limits),(()=>{d((()=>{T(e.modelValue,m.value)}))})),()=>{let a=[n("div",{ref:c.before,class:["q-splitter__panel q-splitter__before"+(!0===e.reverse?" col":""),e.beforeClass],style:x.value.before},dt(t.before)),n("div",{class:["q-splitter__separator",e.separatorClass],style:e.separatorStyle,"aria-disabled":!0===e.disable?"true":void 0},[mt("div",{class:"q-splitter__separator-area absolute-full"},dt(t.separator),"sep",!0!==e.disable,(()=>C.value))]),n("div",{ref:c.after,class:["q-splitter__panel q-splitter__after"+(!0===e.reverse?"":" col"),e.afterClass],style:x.value.after},dt(t.after))];return n("div",{class:h.value,ref:u},pt(t.default,a))}}}),cc=$({name:"StepHeader",props:{stepper:{},step:{},goToPanel:Function},setup(e,{attrs:t}){let{proxy:{$q:r}}=k(),o=a(null),s=i((()=>e.stepper.modelValue===e.step.name)),l=i((()=>{let t=e.step.disable;return!0===t||""===t})),u=i((()=>{let t=e.step.error;return!0===t||""===t})),c=i((()=>{let t=e.step.done;return!1===l.value&&(!0===t||""===t)})),d=i((()=>{let t=e.step.headerNav,n=!0===t||""===t||void 0===t;return!1===l.value&&e.stepper.headerNav&&n})),h=i((()=>e.step.prefix&&(!1===s.value||"none"===e.stepper.activeIcon)&&(!1===u.value||"none"===e.stepper.errorIcon)&&(!1===c.value||"none"===e.stepper.doneIcon))),p=i((()=>{let t=e.step.icon||e.stepper.inactiveIcon;if(!0===s.value){let n=e.step.activeIcon||e.stepper.activeIcon;return"none"===n?t:n||r.iconSet.stepper.active}if(!0===u.value){let n=e.step.errorIcon||e.stepper.errorIcon;return"none"===n?t:n||r.iconSet.stepper.error}if(!1===l.value&&!0===c.value){let n=e.step.doneIcon||e.stepper.doneIcon;return"none"===n?t:n||r.iconSet.stepper.done}return t})),f=i((()=>{let t=!0===u.value?e.step.errorColor||e.stepper.errorColor:void 0;if(!0===s.value){let n=e.step.activeColor||e.stepper.activeColor||e.step.color;return void 0!==n?n:t}return void 0!==t?t:!1===l.value&&!0===c.value?e.step.doneColor||e.stepper.doneColor||e.step.color||e.stepper.inactiveColor:e.step.color||e.stepper.inactiveColor})),m=i((()=>"q-stepper__tab col-grow flex items-center no-wrap relative-position"+(void 0!==f.value?` text-${f.value}`:"")+(!0===u.value?" q-stepper__tab--error q-stepper__tab--error-with-"+(!0===h.value?"prefix":"icon"):"")+(!0===s.value?" q-stepper__tab--active":"")+(!0===c.value?" q-stepper__tab--done":"")+(!0===d.value?" q-stepper__tab--navigation q-focusable q-hoverable":"")+(!0===l.value?" q-stepper__tab--disabled":""))),g=i((()=>!0===e.stepper.headerNav&&d.value));function _(){null!==o.value&&o.value.focus(),!1===s.value&&e.goToPanel(e.step.name)}function v(t){13===t.keyCode&&!1===s.value&&e.goToPanel(e.step.name)}return()=>{let a={class:m.value};!0===d.value&&(a.onClick=_,a.onKeyup=v,Object.assign(a,!0===l.value?{tabindex:-1,"aria-disabled":"true"}:{tabindex:t.tabindex||0}));let i=[n("div",{class:"q-focus-helper",tabindex:-1,ref:o}),n("div",{class:"q-stepper__dot row flex-center q-stepper__line relative-position"},[n("span",{class:"row flex-center"},[!0===h.value?e.step.prefix:n(Lt,{name:p.value})])])];if(void 0!==e.step.title&&null!==e.step.title){let t=[n("div",{class:"q-stepper__title"},e.step.title)];void 0!==e.step.caption&&null!==e.step.caption&&t.push(n("div",{class:"q-stepper__caption"},e.step.caption)),i.push(n("div",{class:"q-stepper__label q-stepper__line relative-position"},t))}return A(n("div",a,i),[[mn,g.value]])}}});function dc(e){return n("div",{class:"q-stepper__step-content"},[n("div",{class:"q-stepper__step-inner"},dt(e.default))])}var hc={setup:(e,{slots:t})=>()=>dc(t)},pc=$({name:"QStep",props:{...yi,icon:String,color:String,title:{type:String,required:!0},caption:String,prefix:[String,Number],doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String,headerNav:{type:Boolean,default:!0},done:Boolean,error:Boolean,onScroll:[Function,Array]},setup(e,{slots:t,emit:r}){let{proxy:{$q:o}}=k(),s=y(Pe,Ie);if(s===Ie)return console.error("QStep needs to be a child of QStepper"),Ie;let{getCache:l}=bi(),u=a(null),c=i((()=>s.value.modelValue===e.name)),d=i((()=>!0!==o.platform.is.ios&&!0===o.platform.is.chrome||!0!==c.value||!0!==s.value.vertical?{}:{onScroll(t){let{target:n}=t;n.scrollTop>0&&(n.scrollTop=0),void 0!==e.onScroll&&r("scroll",t)}})),h=i((()=>"string"==typeof e.name||"number"==typeof e.name?e.name:String(e.name)));function p(){let e=s.value.vertical;return!0===e&&!0===s.value.keepAlive?n(T,s.value.keepAliveProps.value,!0===c.value?[n(!0===s.value.needsUniqueKeepAliveWrapper.value?l(h.value,(()=>({...hc,name:h.value}))):hc,{key:h.value},t.default)]:void 0):!0!==e||!0===c.value?dc(t):void 0}return()=>n("div",{ref:u,class:"q-stepper__step",role:"tabpanel",...d.value},!0===s.value.vertical?[n(cc,{stepper:s.value,step:e,goToPanel:s.value.goToPanel}),!0===s.value.animated?n(ys,p):p()]:[p()])}}),fc=/(-\w)/g;var mc=$({name:"QStepper",props:{...Nt,...ki,flat:Boolean,bordered:Boolean,alternativeLabels:Boolean,headerNav:Boolean,contracted:Boolean,headerClass:String,inactiveColor:String,inactiveIcon:String,doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String},emits:xi,setup(e,{slots:t}){let a=k(),r=It(e,a.proxy.$q),{updatePanelsList:o,isValidPanelName:s,updatePanelIndex:l,getPanelContent:u,getPanels:c,panelDirectives:d,goToPanel:h,keepAliveProps:p,needsUniqueKeepAliveWrapper:f}=Si();w(Pe,i((()=>({goToPanel:h,keepAliveProps:p,needsUniqueKeepAliveWrapper:f,...e}))));let m=i((()=>"q-stepper q-stepper--"+(!0===e.vertical?"vertical":"horizontal")+(!0===e.flat?" q-stepper--flat":"")+(!0===e.bordered?" q-stepper--bordered":"")+(!0===r.value?" q-stepper--dark q-dark":""))),g=i((()=>`q-stepper__header row items-stretch justify-between q-stepper__header--${!0===e.alternativeLabels?"alternative":"standard"}-labels`+(!1===e.flat||!0===e.bordered?" q-stepper__header--border":"")+(!0===e.contracted?" q-stepper__header--contracted":"")+(void 0!==e.headerClass?` ${e.headerClass}`:"")));function _(){let a=dt(t.message,[]);if(!0===e.vertical){s(e.modelValue)&&l();let i=n("div",{class:"q-stepper__content"},dt(t.default));return void 0===a?[i]:a.concat(i)}return[n("div",{class:g.value},c().map((t=>{let a=function(e){let t={};for(let n in e)t[n.replace(fc,(e=>e[1].toUpperCase()))]=e[n];return t}(t.props);return n(cc,{key:a.name,stepper:e,step:a,goToPanel:h})}))),a,mt("div",{class:"q-stepper__content q-panel-parent"},u(),"cont",e.swipeable,(()=>d.value))]}return()=>(o(t),n("div",{class:m.value},pt(t.navigation,_())))}}),gc=$({name:"QStepperNavigation",setup:(e,{slots:t})=>()=>n("div",{class:"q-stepper__nav"},dt(t.default))}),_c=$({name:"QTh",props:{props:Object,autoWidth:Boolean},emits:["click"],setup(e,{slots:t,emit:a}){let i=k(),{proxy:{$q:r}}=i,o=e=>{a("click",e)};return()=>{if(void 0===e.props)return n("th",{class:!0===e.autoWidth?"q-table--col-auto-width":"",onClick:o},dt(t.default));let a,s,l=i.vnode.key;if(l){if(a=e.props.colsMap[l],void 0===a)return}else a=e.props.col;if(!0===a.sortable){let e="right"===a.align?"unshift":"push";s=ht(t.default,[]),s[e](n(Lt,{class:a.__iconClass,name:r.iconSet.table.arrowUp}))}else s=dt(t.default);let u={class:a.__thClass+(!0===e.autoWidth?" q-table--col-auto-width":""),style:a.headerStyle,onClick:t=>{!0===a.sortable&&e.props.sort(a),o(t)}};return n("th",u,s)}}});function vc(e,t){return n("div",e,[n("table",{class:"q-table"},t)])}var bc={list:Cl,table:Nl},yc=["list","table","__qtable"],wc=$({name:"QVirtualScroll",props:{...Au,type:{type:String,default:"list",validator:e=>yc.includes(e)},items:{type:Array,default:()=>[]},itemsFn:Function,itemsSize:Number,scrollTarget:ra},setup(e,{slots:t,attrs:o}){let s,l=a(null),u=i((()=>e.itemsSize>=0&&void 0!==e.itemsFn?parseInt(e.itemsSize,10):Array.isArray(e.items)?e.items.length:0)),{virtualScrollSliceRange:c,localResetVirtualScroll:d,padVirtualScroll:_,onVirtualScrollEvt:v}=Lu({virtualScrollLength:u,getVirtualScrollTarget:function(){return s},getVirtualScrollEl:k}),b=i((()=>{if(0===u.value)return[];let t=(e,t)=>({index:c.value.from+t,item:e});return void 0===e.itemsFn?e.items.slice(c.value.from,c.value.to).map(t):e.itemsFn(c.value.from,c.value.to-c.value.from).map(t)})),y=i((()=>"q-virtual-scroll q-virtual-scroll"+(!0===e.virtualScrollHorizontal?"--horizontal":"--vertical")+(void 0!==e.scrollTarget?"":" scroll"))),w=i((()=>void 0!==e.scrollTarget?{}:{tabindex:0}));function k(){return l.value.$el||l.value}function x(){s=sa(k(),e.scrollTarget),s.addEventListener("scroll",v,H.passive)}function S(){void 0!==s&&(s.removeEventListener("scroll",v,H.passive),s=void 0)}function C(){let n=_("list"===e.type?"div":"tbody",b.value.map(t.default));return void 0!==t.before&&(n=t.before().concat(n)),pt(t.after,n)}return r(u,(()=>{d()})),r((()=>e.scrollTarget),(()=>{S(),x()})),f((()=>{d()})),m((()=>{x()})),h((()=>{x()})),p((()=>{S()})),g((()=>{S()})),()=>{if(void 0!==t.default)return"__qtable"===e.type?vc({ref:l,class:"q-table__middle "+y.value},C()):n(bc[e.type],{...o,ref:l,class:[o.class,y.value],...w.value},C);console.error("QVirtualScroll: default scoped slot is required for rendering")}}});var kc={sortMethod:Function,binaryStateSort:Boolean,columnSortOrder:{type:String,validator:e=>"ad"===e||"da"===e,default:"ad"}};function xc(e,t,n,a){let r=i((()=>{let{sortBy:e}=t.value;return e&&n.value.find((t=>t.name===e))||null})),o=i((()=>void 0!==e.sortMethod?e.sortMethod:(e,t,a)=>{let i=n.value.find((e=>e.name===t));if(void 0===i||void 0===i.field)return e;let r=!0===a?-1:1,o="function"==typeof i.field?e=>i.field(e):e=>e[i.field];return e.sort(((e,t)=>{let n=o(e),a=o(t);return void 0!==i.rawSort?i.rawSort(n,a,e,t)*r:null==n?-1*r:null==a?1*r:void 0!==i.sort?i.sort(n,a,e,t)*r:!0===$e(n)&&!0===$e(a)?(n-a)*r:!0===Be(n)&&!0===Be(a)?function(e,t){return new Date(e)-new Date(t)}(n,a)*r:"boolean"==typeof n&&"boolean"==typeof a?(n-a)*r:([n,a]=[n,a].map((e=>(e+"").toLocaleString().toLowerCase())),ne.name===i));void 0!==e&&e.sortOrder&&(r=e.sortOrder)}let{sortBy:o,descending:s}=t.value;o!==i?(o=i,s="da"===r):!0===e.binaryStateSort?s=!s:!0===s?"ad"===r?o=null:s=!1:"ad"===r?s=!0:o=null,a({sortBy:o,descending:s,page:1})}}}var Sc={filter:[String,Object],filterMethod:Function};function Cc(e){return e.page<1&&(e.page=1),void 0!==e.rowsPerPage&&e.rowsPerPage<1&&(e.rowsPerPage=0),e}var Tc={pagination:Object,rowsPerPageOptions:{type:Array,default:()=>[5,7,10,15,20,25,50,0]},"onUpdate:pagination":[Function,Array]};var Ec={selection:{type:String,default:"none",validator:e=>["single","multiple","none"].includes(e)},selected:{type:Array,default:()=>[]}};function Pc(e){return Array.isArray(e)?e.slice():[]}var Ac={expanded:Array};var Lc={visibleColumns:Array};var Mc="q-table__bottom row items-center",Rc={};Pu.forEach((e=>{Rc[e]={}}));var zc=$({name:"QTable",props:{rows:{type:Array,required:!0},rowKey:{type:[String,Function],default:"id"},columns:Array,loading:Boolean,iconFirstPage:String,iconPrevPage:String,iconNextPage:String,iconLastPage:String,title:String,hideHeader:Boolean,grid:Boolean,gridHeader:Boolean,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,separator:{type:String,default:"horizontal",validator:e=>["horizontal","vertical","cell","none"].includes(e)},wrapCells:Boolean,virtualScroll:Boolean,virtualScrollTarget:{},...Rc,noDataLabel:String,noResultsLabel:String,loadingLabel:String,selectedRowsLabel:Function,rowsPerPageLabel:String,paginationLabel:Function,color:{type:String,default:"grey-8"},titleClass:[String,Array,Object],tableStyle:[String,Array,Object],tableClass:[String,Array,Object],tableHeaderStyle:[String,Array,Object],tableHeaderClass:[String,Array,Object],cardContainerClass:[String,Array,Object],cardContainerStyle:[String,Array,Object],cardStyle:[String,Array,Object],cardClass:[String,Array,Object],hideBottom:Boolean,hideSelectedBanner:Boolean,hideNoData:Boolean,hidePagination:Boolean,onRowClick:Function,onRowDblclick:Function,onRowContextmenu:Function,...Nt,...Ti,...Lc,...Sc,...Tc,...Ac,...Ec,...kc},emits:["request","virtualScroll",...Ei,"update:expanded","update:selected","selection"],setup(e,{slots:t,emit:o}){let s=k(),{proxy:{$q:l}}=s,u=It(e,l),{inFullscreen:c,toggleFullscreen:h}=Pi(),p=i((()=>"function"==typeof e.rowKey?e.rowKey:t=>t[e.rowKey])),f=a(null),m=a(null),g=i((()=>!0!==e.grid&&!0===e.virtualScroll)),_=i((()=>" q-table__card"+(!0===u.value?" q-table__card--dark q-dark":"")+(!0===e.square?" q-table--square":"")+(!0===e.flat?" q-table--flat":"")+(!0===e.bordered?" q-table--bordered":""))),v=i((()=>`q-table__container q-table--${e.separator}-separator column no-wrap`+(!0===e.grid?" q-table--grid":_.value)+(!0===u.value?" q-table--dark":"")+(!0===e.dense?" q-table--dense":"")+(!1===e.wrapCells?" q-table--no-wrap":"")+(!0===c.value?" fullscreen scroll":""))),b=i((()=>v.value+(!0===e.loading?" q-table--loading":"")));r((()=>e.tableStyle+e.tableClass+e.tableHeaderStyle+e.tableHeaderClass+v.value),(()=>{!0===g.value&&null!==m.value&&m.value.reset()}));let{innerPagination:y,computedPagination:w,isServerSide:x,requestServerInteraction:S,setPagination:C}=function(e,t){let{props:n,emit:r}=e,o=a(Object.assign({sortBy:null,descending:!1,page:1,rowsPerPage:0!==n.rowsPerPageOptions.length?n.rowsPerPageOptions[0]:5},n.pagination)),s=i((()=>Cc(void 0!==n["onUpdate:pagination"]?{...o.value,...n.pagination}:o.value))),l=i((()=>void 0!==s.value.rowsNumber));function u(e){c({pagination:e,filter:n.filter})}function c(e={}){d((()=>{r("request",{pagination:e.pagination||s.value,filter:e.filter||n.filter,getCellValue:t})}))}return{innerPagination:o,computedPagination:s,isServerSide:l,requestServerInteraction:c,setPagination:function(e,t){let a=Cc({...s.value,...e});!0!==function(e,t){for(let n in t)if(t[n]!==e[n])return!1;return!0}(s.value,a)?!0!==l.value?void 0!==n.pagination&&void 0!==n["onUpdate:pagination"]?r("update:pagination",a):o.value=a:u(a):!0===l.value&&!0===t&&u(a)}}}(s,_e),{computedFilterMethod:T}=function(e,t){let n=i((()=>void 0!==e.filterMethod?e.filterMethod:(e,t,n,a)=>{let i=t?t.toLowerCase():"";return e.filter((e=>n.some((t=>{let n=a(t,e)+"";return-1!==("undefined"===n||"null"===n?"":n.toLowerCase()).indexOf(i)}))))}));return r((()=>e.filter),(()=>{d((()=>{t({page:1},!0)}))}),{deep:!0}),{computedFilterMethod:n}}(e,C),{isRowExpanded:E,setExpanded:P,updateExpanded:A}=function(e,t){let n=a(Pc(e.expanded));function i(a){void 0!==e.expanded?t("update:expanded",a):n.value=a}return r((()=>e.expanded),(e=>{n.value=Pc(e)})),{isRowExpanded:function(e){return n.value.includes(e)},setExpanded:i,updateExpanded:function(e,t){let a=n.value.slice(),r=a.indexOf(e);!0===t?-1===r&&(a.push(e),i(a)):-1!==r&&(a.splice(r,1),i(a))}}}(e,o),L=i((()=>{let t=e.rows;if(!0===x.value||0===t.length)return t;let{sortBy:n,descending:a}=w.value;return e.filter&&(t=T.value(t,e.filter,H.value,_e)),null!==Y.value&&(t=K.value(e.rows===t?t.slice():t,n,a)),t})),M=i((()=>L.value.length)),R=i((()=>{let t=L.value;if(!0===x.value)return t;let{rowsPerPage:n}=w.value;return 0!==n&&(0===Z.value&&e.rows!==t?t.length>J.value&&(t=t.slice(0,J.value)):t=t.slice(Z.value,J.value)),t})),{hasSelectionMode:I,singleSelection:O,multipleSelection:D,allRowsSelected:q,someRowsSelected:j,rowsSelectedNumber:B,isRowSelected:F,clearSelection:$,updateSelection:V}=function(e,t,n,a){let r=i((()=>{let t={};return e.selected.map(a.value).forEach((e=>{t[e]=!0})),t})),o=i((()=>"none"!==e.selection)),s=i((()=>"single"===e.selection)),l=i((()=>"multiple"===e.selection)),u=i((()=>0!==n.value.length&&n.value.every((e=>!0===r.value[a.value(e)])))),c=i((()=>!0!==u.value&&n.value.some((e=>!0===r.value[a.value(e)])))),d=i((()=>e.selected.length));return{hasSelectionMode:o,singleSelection:s,multipleSelection:l,allRowsSelected:u,someRowsSelected:c,rowsSelectedNumber:d,isRowSelected:function(e){return!0===r.value[e]},clearSelection:function(){t("update:selected",[])},updateSelection:function(n,i,r,o){t("selection",{rows:i,added:r,keys:n,evt:o});let l=!0===s.value?!0===r?i:[]:!0===r?e.selected.concat(i):e.selected.filter((e=>!1===n.includes(a.value(e))));t("update:selected",l)}}}(e,o,R,p),{colList:U,computedCols:H,computedColsMap:W,computedColspan:G}=function(e,t,n){let a=i((()=>{if(void 0!==e.columns)return e.columns;let t=e.rows[0];return void 0!==t?Object.keys(t).map((e=>({name:e,label:e.toUpperCase(),field:e,align:$e(t[e])?"right":"left",sortable:!0}))):[]})),r=i((()=>{let{sortBy:n,descending:i}=t.value;return(void 0!==e.visibleColumns?a.value.filter((t=>!0===t.required||!0===e.visibleColumns.includes(t.name))):a.value).map((e=>{let t=e.align||"right",a=`text-${t}`;return{...e,align:t,__iconClass:`q-table__sort-icon q-table__sort-icon--${t}`,__thClass:a+(void 0!==e.headerClasses?" "+e.headerClasses:"")+(!0===e.sortable?" sortable":"")+(e.name===n?" sorted "+(!0===i?"sort-desc":""):""),__tdStyle:void 0!==e.style?"function"!=typeof e.style?()=>e.style:e.style:()=>null,__tdClass:void 0!==e.classes?"function"!=typeof e.classes?()=>a+" "+e.classes:t=>a+" "+e.classes(t):()=>a}}))})),o=i((()=>{let e={};return r.value.forEach((t=>{e[t.name]=t})),e})),s=i((()=>void 0!==e.tableColspan?e.tableColspan:r.value.length+(!0===n.value?1:0)));return{colList:a,computedCols:r,computedColsMap:o,computedColspan:s}}(e,w,I),{columnToSort:Y,computedSortMethod:K,sort:Q}=xc(e,w,U,C),{firstRowIndex:Z,lastRowIndex:J,isFirstPage:X,isLastPage:ee,pagesNumber:te,computedRowsPerPageOptions:ne,computedRowsNumber:ae,firstPage:ie,prevPage:re,nextPage:oe,lastPage:se}=function(e,t,n,a,o,s){let{props:l,emit:u,proxy:{$q:c}}=e,d=i((()=>!0===a.value?n.value.rowsNumber||0:s.value)),h=i((()=>{let{page:e,rowsPerPage:t}=n.value;return(e-1)*t})),p=i((()=>{let{page:e,rowsPerPage:t}=n.value;return e*t})),f=i((()=>1===n.value.page)),m=i((()=>0===n.value.rowsPerPage?1:Math.max(1,Math.ceil(d.value/n.value.rowsPerPage)))),g=i((()=>0===p.value||n.value.page>=m.value)),_=i((()=>(l.rowsPerPageOptions.includes(t.value.rowsPerPage)?l.rowsPerPageOptions:[t.value.rowsPerPage].concat(l.rowsPerPageOptions)).map((e=>({label:0===e?c.lang.table.allRows:""+e,value:e})))));return r(m,((e,t)=>{if(e===t)return;let a=n.value.page;e&&!a?o({page:1}):e1&&o({page:e-1})},nextPage:function(){let{page:e,rowsPerPage:t}=n.value;p.value>0&&e*t0===R.value.length)),ue=i((()=>{let t={};return Pu.forEach((n=>{t[n]=e[n]})),void 0===t.virtualScrollItemSize&&(t.virtualScrollItemSize=!0===e.dense?28:48),t}));function ce(){if(!0===e.grid)return function(){let a=void 0!==t.item?t.item:a=>{let i=a.cols.map((e=>n("div",{class:"q-table__grid-item-row"},[n("div",{class:"q-table__grid-item-title"},[e.label]),n("div",{class:"q-table__grid-item-value"},[e.value])])));if(!0===I.value){let r=t["body-selection"],o=void 0!==r?r(a):[n(Bi,{modelValue:a.selected,color:e.color,dark:u.value,dense:e.dense,"onUpdate:modelValue":(e,t)=>{V([a.key],[a.row],e,t)}})];i.unshift(n("div",{class:"q-table__grid-item-row"},o),n(xs,{dark:u.value}))}let r={class:["q-table__grid-item-card"+_.value,e.cardClass],style:e.cardStyle};return(void 0!==e.onRowClick||void 0!==e.onRowDblclick)&&(r.class[0]+=" cursor-pointer",void 0!==e.onRowClick&&(r.onClick=e=>{o("RowClick",e,a.row,a.pageIndex)}),void 0!==e.onRowDblclick&&(r.onDblclick=e=>{o("RowDblclick",e,a.row,a.pageIndex)})),n("div",{class:"q-table__grid-item col-xs-12 col-sm-6 col-md-4 col-lg-3"+(!0===a.selected?" q-table__grid-item--selected":"")},[n("div",r,i)])};return n("div",{class:["q-table__grid-content row",e.cardContainerClass],style:e.cardContainerStyle},R.value.map(((e,t)=>a(me({key:p.value(e),row:e,pageIndex:t})))))}();let a=!0!==e.hideHeader?we:null;if(!0===g.value){let i=t["top-row"],r=t["bottom-row"],o={default:e=>pe(e.item,t.body,e.index)};if(void 0!==i){let e=n("tbody",i({cols:H.value}));o.before=null===a?()=>e:()=>[a()].concat(e)}else null!==a&&(o.before=a);return void 0!==r&&(o.after=()=>n("tbody",r({cols:H.value}))),n(wc,{ref:m,class:e.tableClass,style:e.tableStyle,...ue.value,scrollTarget:e.virtualScrollTarget,items:R.value,type:"__qtable",tableColspan:G.value,onVirtualScroll:de},o)}let i=[fe()];return null!==a&&i.unshift(a()),vc({class:["q-table__middle scroll",e.tableClass],style:e.tableStyle},i)}function de(e){o("virtualScroll",e)}function he(){return[n(iu,{class:"q-table__linear-progress",color:e.color,dark:u.value,indeterminate:!0,trackColor:"transparent"})]}function pe(a,i,r){let s=p.value(a),l=F(s);if(void 0!==i)return i(me({key:s,row:a,pageIndex:r,__trClass:l?"selected":""}));let c=t["body-cell"],d=H.value.map((e=>{let i=t[`body-cell-${e.name}`],o=void 0!==i?i:c;return void 0!==o?o(function(e){return ge(e),z(e,"value",(()=>_e(e.col,e.row))),e}({key:s,row:a,pageIndex:r,col:e})):n("td",{class:e.__tdClass(a),style:e.__tdStyle(a)},_e(e,a))}));if(!0===I.value){let i=t["body-selection"],o=void 0!==i?i(function(e){return ge(e),e}({key:s,row:a,pageIndex:r})):[n(Bi,{modelValue:l,color:e.color,dark:u.value,dense:e.dense,"onUpdate:modelValue":(e,t)=>{V([s],[a],e,t)}})];d.unshift(n("td",{class:"q-table--col-auto-width"},o))}let h={key:s,class:{selected:l}};return void 0!==e.onRowClick&&(h.class["cursor-pointer"]=!0,h.onClick=e=>{o("rowClick",e,a,r)}),void 0!==e.onRowDblclick&&(h.class["cursor-pointer"]=!0,h.onDblclick=e=>{o("rowDblclick",e,a,r)}),void 0!==e.onRowContextmenu&&(h.class["cursor-pointer"]=!0,h.onContextmenu=e=>{o("rowContextmenu",e,a,r)}),n("tr",h,d)}function fe(){let e=t.body,a=t["top-row"],i=t["bottom-row"],r=R.value.map(((t,n)=>pe(t,e,n)));return void 0!==a&&(r=a({cols:H.value}).concat(r)),void 0!==i&&(r=r.concat(i({cols:H.value}))),n("tbody",r)}function me(e){return ge(e),e.cols=e.cols.map((t=>z({...t},"value",(()=>_e(t,e.row))))),e}function ge(t){Object.assign(t,{cols:H.value,colsMap:W.value,sort:Q,rowIndex:Z.value+t.pageIndex,color:e.color,dark:u.value,dense:e.dense}),!0===I.value&&z(t,"selected",(()=>F(t.key)),((e,n)=>{V([t.key],[t.row],e,n)})),z(t,"expand",(()=>E(t.key)),(e=>{A(t.key,e)}))}function _e(e,t){let n="function"==typeof e.field?e.field(t):t[e.field];return void 0!==e.format?e.format(n,t):n}let ve=i((()=>({pagination:w.value,pagesNumber:te.value,isFirstPage:X.value,isLastPage:ee.value,firstPage:ie,prevPage:re,nextPage:oe,lastPage:se,inFullscreen:c.value,toggleFullscreen:h})));function be(){let a,i=t.top,r=t["top-left"],o=t["top-right"],s=t["top-selection"],l=!0===I.value&&void 0!==s&&B.value>0,u="q-table__top relative-position row items-center";return void 0!==i?n("div",{class:u},[i(ve.value)]):(!0===l?a=s(ve.value).slice():(a=[],void 0!==r?a.push(n("div",{class:"q-table__control"},[r(ve.value)])):e.title&&a.push(n("div",{class:"q-table__control"},[n("div",{class:["q-table__title",e.titleClass]},e.title)]))),void 0!==o&&(a.push(n("div",{class:"q-table__separator col"})),a.push(n("div",{class:"q-table__control"},[o(ve.value)]))),0!==a.length?n("div",{class:u},a):void 0)}let ye=i((()=>!0===j.value?null:q.value));function we(){let a=function(){let a=t.header,i=t["header-cell"];if(void 0!==a)return a(ke({header:!0})).slice();let r=H.value.map((e=>{let a=t[`header-cell-${e.name}`],r=void 0!==a?a:i,o=ke({col:e});return void 0!==r?r(o):n(_c,{key:e.name,props:o},(()=>e.label))}));if(!0===O.value&&!0!==e.grid)r.unshift(n("th",{class:"q-table--col-auto-width"}," "));else if(!0===D.value){let a=t["header-selection"],i=void 0!==a?a(ke({})):[n(Bi,{color:e.color,modelValue:ye.value,dark:u.value,dense:e.dense,"onUpdate:modelValue":xe})];r.unshift(n("th",{class:"q-table--col-auto-width"},i))}return[n("tr",{class:e.tableHeaderClass,style:e.tableHeaderStyle},r)]}();return!0===e.loading&&void 0===t.loading&&a.push(n("tr",{class:"q-table__progress"},[n("th",{class:"relative-position",colspan:G.value},he())])),n("thead",a)}function ke(t){return Object.assign(t,{cols:H.value,sort:Q,colsMap:W.value,color:e.color,dark:u.value,dense:e.dense}),!0===D.value&&z(t,"selected",(()=>ye.value),xe),t}function xe(e){!0===j.value&&(e=!1),V(R.value.map(p.value),R.value,e)}let Se=i((()=>{let t=[e.iconFirstPage||l.iconSet.table.firstPage,e.iconPrevPage||l.iconSet.table.prevPage,e.iconNextPage||l.iconSet.table.nextPage,e.iconLastPage||l.iconSet.table.lastPage];return!0===l.lang.rtl?t.reverse():t}));function Ce(){if(!0===e.hideBottom)return;if(!0===le.value){if(!0===e.hideNoData)return;let a=!0===e.loading?e.loadingLabel||l.lang.table.loading:e.filter?e.noResultsLabel||l.lang.table.noResults:e.noDataLabel||l.lang.table.noData,i=t["no-data"],r=void 0!==i?[i({message:a,icon:l.iconSet.table.warning,filter:e.filter})]:[n(Lt,{class:"q-table__bottom-nodata-icon",name:l.iconSet.table.warning}),a];return n("div",{class:Mc+" q-table__bottom--nodata"},r)}let a=t.bottom;if(void 0!==a)return n("div",{class:Mc},[a(ve.value)]);let i=!0!==e.hideSelectedBanner&&!0===I.value&&B.value>0?[n("div",{class:"q-table__control"},[n("div",[(e.selectedRowsLabel||l.lang.table.selectedRecords)(B.value)])])]:[];return!0!==e.hidePagination?n("div",{class:Mc+" justify-end"},function(a){let i,{rowsPerPage:r}=w.value,o=e.paginationLabel||l.lang.table.pagination,s=t.pagination,c=e.rowsPerPageOptions.length>1;if(a.push(n("div",{class:"q-table__separator col"})),!0===c&&a.push(n("div",{class:"q-table__control"},[n("span",{class:"q-table__bottom-item"},[e.rowsPerPageLabel||l.lang.table.recordsPerPage]),n(Nu,{class:"q-table__select inline q-table__bottom-item",color:e.color,modelValue:r,options:ne.value,displayValue:0===r?l.lang.table.allRows:r,dark:u.value,borderless:!0,dense:!0,optionsDense:!0,optionsCover:!0,"onUpdate:modelValue":Te})])),void 0!==s)i=s(ve.value);else if(i=[n("span",0!==r?{class:"q-table__bottom-item"}:{},[r?o(Z.value+1,Math.min(J.value,ae.value),ae.value):o(1,M.value,ae.value)])],0!==r&&te.value>1){let t={color:e.color,round:!0,dense:!0,flat:!0};!0===e.dense&&(t.size="sm"),te.value>2&&i.push(n(An,{key:"pgFirst",...t,icon:Se.value[0],disable:X.value,onClick:ie})),i.push(n(An,{key:"pgPrev",...t,icon:Se.value[1],disable:X.value,onClick:re}),n(An,{key:"pgNext",...t,icon:Se.value[2],disable:ee.value,onClick:oe})),te.value>2&&i.push(n(An,{key:"pgLast",...t,icon:Se.value[3],disable:ee.value,onClick:se}))}return a.push(n("div",{class:"q-table__control"},i)),a}(i)):0!==i.length?n("div",{class:Mc},i):void 0}function Te(e){C({page:1,rowsPerPage:e.value})}return Object.assign(s.proxy,{requestServerInteraction:S,setPagination:C,firstPage:ie,prevPage:re,nextPage:oe,lastPage:se,isRowSelected:F,clearSelection:$,isRowExpanded:E,setExpanded:P,sort:Q,resetVirtualScroll:function(){!0===g.value&&m.value.reset()},scrollTo:function(t,n){if(null!==m.value)return void m.value.scrollTo(t,n);t=parseInt(t,10);let a=f.value.querySelector(`tbody tr:nth-of-type(${t+1})`);if(null!==a){let n=f.value.querySelector(".q-table__middle.scroll"),i=a.offsetTop-e.virtualScrollStickySizeStart,r=iL.value,computedRows:()=>R.value,computedRowsNumber:()=>ae.value}),()=>{let a=[be()],i={ref:f,class:b.value};return!0===e.grid?a.push(function(){let a=!0===e.gridHeader?[n("table",{class:"q-table"},[we()])]:!0===e.loading&&void 0===t.loading?he():void 0;return n("div",{class:"q-table__middle"},a)}()):Object.assign(i,{class:[i.class,e.cardClass],style:e.cardStyle}),a.push(ce(),Ce()),!0===e.loading&&void 0!==t.loading&&a.push(t.loading()),n("div",i,a)}}}),Nc=$({name:"QTr",props:{props:Object,noHover:Boolean},setup(e,{slots:t}){let a=i((()=>"q-tr"+(void 0===e.props||!0===e.props.header?"":" "+e.props.__trClass)+(!0===e.noHover?" q-tr--no-hover":"")));return()=>n("tr",{class:a.value},dt(t.default))}}),Ic=$({name:"QTd",props:{props:Object,autoWidth:Boolean,noHover:Boolean},setup(e,{slots:t}){let a=k(),r=i((()=>"q-td"+(!0===e.autoWidth?" q-table--col-auto-width":"")+(!0===e.noHover?" q-td--no-hover":"")+" "));return()=>{if(void 0===e.props)return n("td",{class:r.value},dt(t.default));let i=a.vnode.key,o=(void 0!==e.props.colsMap?e.props.colsMap[i]:null)||e.props.col;if(void 0===o)return;let{row:s}=e.props;return n("td",{class:r.value+o.__tdClass(s),style:o.__tdStyle(s)},dt(t.default))}}}),Oc=$({name:"QRouteTab",props:{...en,...mr},emits:fr,setup(e,{slots:t,emit:n}){let a=tn({useDisableForRouterLinkProps:!1}),{renderTab:o,$tabs:s}=gr(e,t,n,{exact:i((()=>e.exact)),...a});return r((()=>`${e.name} | ${e.exact} | ${(a.resolvedLink.value||{}).href}`),s.verifyRouteModel),()=>o(a.linkTag.value,a.linkAttrs.value)}});function Dc(){let e=new Date;return{hour:e.getHours(),minute:e.getMinutes(),second:e.getSeconds(),millisecond:e.getMilliseconds()}}var qc=$({name:"QTime",props:{...Nt,...ii,...Qr,modelValue:{required:!0,validator:e=>"string"==typeof e||null===e},mask:{...Qr.mask,default:null},format24h:{type:Boolean,default:null},defaultDate:{type:String,validator:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e)},options:Function,hourOptions:Array,minuteOptions:Array,secondOptions:Array,withSeconds:Boolean,nowBtn:Boolean},emits:Zr,setup(e,{slots:t,emit:o}){let s,l,u=k(),{$q:c}=u.proxy,h=It(e,c),{tabindex:p,headerClass:f,getLocale:m,getCurrentDate:g}=Xr(e,c),_=oi(ri(e)),v=a(null),b=i((()=>"persian"!==e.calendar&&null!==e.mask?e.mask:"HH:mm"+(!0===e.withSeconds?":ss":""))),y=i((()=>m())),w=i((()=>function(){if("string"!=typeof e.defaultDate){let e=g(!0);return e.dateHash=Jr(e),e}return po(e.defaultDate,"YYYY/MM/DD",void 0,e.calendar)}())),x=po(e.modelValue,b.value,y.value,e.calendar,w.value),C=a(function(e,t){if(null!==e.hour){if(null===e.minute)return"minute";if(!0===t&&null===e.second)return"second"}return"hour"}(x)),T=a(x),E=a(null===x.hour||x.hour<12),P=i((()=>"q-time q-time--"+(!0===e.landscape?"landscape":"portrait")+(!0===h.value?" q-time--dark q-dark":"")+(!0===e.disable?" disabled":!0===e.readonly?" q-time--readonly":"")+(!0===e.bordered?" q-time--bordered":"")+(!0===e.square?" q-time--square no-border-radius":"")+(!0===e.flat?" q-time--flat no-shadow":""))),L=i((()=>{let e=T.value;return{hour:null===e.hour?"--":!0===M.value?et(e.hour):String(!0===E.value?0===e.hour?12:e.hour:e.hour>12?e.hour-12:e.hour),minute:null===e.minute?"--":et(e.minute),second:null===e.second?"--":et(e.second)}})),M=i((()=>null!==e.format24h?e.format24h:c.lang.date.format24h)),R=i((()=>{let e="hour"===C.value,t=!0===e?12:60,n=T.value[C.value],a=`rotate(${Math.round(n*(360/t))-180}deg) translateX(-50%)`;return!0===e&&!0===M.value&&T.value.hour>=12&&(a+=" scale(.7)"),{transform:a}})),z=i((()=>null!==T.value.hour)),N=i((()=>!0===z.value&&null!==T.value.minute)),I=i((()=>void 0!==e.hourOptions?t=>e.hourOptions.includes(t):void 0!==e.options?t=>e.options(t,null,null):null)),O=i((()=>void 0!==e.minuteOptions?t=>e.minuteOptions.includes(t):void 0!==e.options?t=>e.options(T.value.hour,t,null):null)),D=i((()=>void 0!==e.secondOptions?t=>e.secondOptions.includes(t):void 0!==e.options?t=>e.options(T.value.hour,T.value.minute,t):null)),q=i((()=>{if(null===I.value)return null;let e=H(0,11,I.value),t=H(12,11,I.value);return{am:e,pm:t,values:e.values.concat(t.values)}})),j=i((()=>null!==O.value?H(0,59,O.value):null)),B=i((()=>null!==D.value?H(0,59,D.value):null)),F=i((()=>{switch(C.value){case"hour":return q.value;case"minute":return j.value;case"second":return B.value}})),$=i((()=>{let e,t,n=0,a=1,i=null!==F.value?F.value.values:void 0;"hour"===C.value?!0===M.value?(e=0,t=23):(e=0,t=11,!1===E.value&&(n=12)):(e=0,t=55,a=5);let r=[];for(let o=e,s=e;o<=t;o+=a,s++){let e=o+n,t=void 0!==i&&!1===i.includes(e),a="hour"===C.value&&0===o?!0===M.value?"00":"12":o;r.push({val:e,index:s,disable:t,label:a})}return r})),V=i((()=>[[Ki,Z,void 0,{stop:!0,prevent:!0,mouse:!0}]]));function U(){let e={...g(),...Dc()};ge(e),Object.assign(T.value,e),C.value="hour"}function H(e,t,n){let a=Array.apply(null,{length:t+1}).map(((t,a)=>{let i=a+e;return{index:i,val:!0===n(i)}})).filter((e=>!0===e.val)).map((e=>e.index));return{min:a[0],max:a[a.length-1],values:a,threshold:t+1}}function W(e,t,n){let a=Math.abs(e-t);return Math.min(a,n-a)}function G(e,{min:t,max:n,values:a,threshold:i}){if(e===t)return t;if(en)return W(e,t,i)<=W(e,n,i)?t:n;let r=a.findIndex((t=>e<=t)),o=a[r-1],s=a[r];return e-o<=s-e?o:s}function K(){return!0===Wt(u)||null!==F.value&&(0===F.value.values.length||"hour"===C.value&&!0!==M.value&&0===q.value[!0===E.value?"am":"pm"].values.length)}function Q(){let e=v.value,{top:t,left:n,width:a}=e.getBoundingClientRect(),i=a/2;return{top:t+i,left:n+i,dist:.7*i}}function Z(e){if(!0!==K()){if(!0===e.isFirst)return s=Q(),void(l=X(e.evt,s));l=X(e.evt,s,l),!0===e.isFinal&&(s=!1,l=null,J())}}function J(){"hour"===C.value?C.value="minute":e.withSeconds&&"minute"===C.value&&(C.value="second")}function X(e,t,n){let a,i=Y(e),r=Math.abs(i.top-t.top),o=Math.sqrt(Math.pow(Math.abs(i.top-t.top),2)+Math.pow(Math.abs(i.left-t.left),2)),s=Math.asin(r/o)*(180/Math.PI);if(s=i.top=t.dist:0!==q.value.am.values.length;a=G(a+(!0===e?0:12),q.value[!0===e?"am":"pm"])}else a=Math.round(a),!0===M.value?oe.modelValue),(t=>{let n=po(t,b.value,y.value,e.calendar,w.value);(n.dateHash!==T.value.dateHash||n.timeHash!==T.value.timeHash)&&(T.value=n,null===n.hour?C.value="hour":E.value=n.hour<12)})),r([b,y],(()=>{d((()=>{ge()}))}));let ee={hour(){C.value="hour"},minute(){C.value="minute"},second(){C.value="second"}};function te(e){13===e.keyCode&&he()}function ne(e){13===e.keyCode&&pe()}function ae(e){!0!==K()&&(!0!==c.platform.is.desktop&&X(e,Q()),J())}function ie(e){!0!==K()&&X(e,Q())}function re(e){if(13===e.keyCode)C.value="hour";else if([37,39].includes(e.keyCode)){let t=37===e.keyCode?-1:1;if(null!==q.value){let e=!0===M.value?q.value.values:q.value[!0===E.value?"am":"pm"].values;if(0===e.length)return;if(null===T.value.hour)le(e[0]);else{let n=(e.length+e.indexOf(T.value.hour)+t)%e.length;le(e[n])}}else{let e=!0===M.value?24:12;le((!0!==M.value&&!1===E.value?12:0)+(24+(null===T.value.hour?-t:T.value.hour)+t)%e)}}}function oe(e){if(13===e.keyCode)C.value="minute";else if([37,39].includes(e.keyCode)){let t=37===e.keyCode?-1:1;if(null!==j.value){let e=j.value.values;if(0===e.length)return;if(null===T.value.minute)ue(e[0]);else{let n=(e.length+e.indexOf(T.value.minute)+t)%e.length;ue(e[n])}}else{ue((60+(null===T.value.minute?-t:T.value.minute)+t)%60)}}}function se(e){if(13===e.keyCode)C.value="second";else if([37,39].includes(e.keyCode)){let t=37===e.keyCode?-1:1;if(null!==B.value){let e=B.value.values;if(0===e.length)return;if(null===T.value.seconds)ce(e[0]);else{let n=(e.length+e.indexOf(T.value.second)+t)%e.length;ce(e[n])}}else{ce((60+(null===T.value.second?-t:T.value.second)+t)%60)}}}function le(e){T.value.hour!==e&&(T.value.hour=e,me())}function ue(e){T.value.minute!==e&&(T.value.minute=e,me())}function ce(e){T.value.second!==e&&(T.value.second=e,me())}let de={hour:le,minute:ue,second:ce};function he(){!1===E.value&&(E.value=!0,null!==T.value.hour&&(T.value.hour-=12,me()))}function pe(){!0===E.value&&(E.value=!1,null!==T.value.hour&&(T.value.hour+=12,me()))}function fe(t){let n=e.modelValue;C.value!==t&&null!=n&&""!==n&&"string"!=typeof n&&(C.value=t)}function me(){return null!==I.value&&!0!==I.value(T.value.hour)?(T.value=po(),void fe("hour")):null!==O.value&&!0!==O.value(T.value.minute)?(T.value.minute=null,T.value.second=null,void fe("minute")):!0===e.withSeconds&&null!==D.value&&!0!==D.value(T.value.second)?(T.value.second=null,void fe("second")):void(null===T.value.hour||null===T.value.minute||!0===e.withSeconds&&null===T.value.second||ge())}function ge(t){let n=Object.assign({...T.value},t),a="persian"===e.calendar?et(n.hour)+":"+et(n.minute)+(!0===e.withSeconds?":"+et(n.second):""):xo(new Date(n.year,null===n.month?null:n.month-1,n.day,n.hour,n.minute,n.second,n.millisecond),b.value,y.value,n.year,n.timezoneOffset);n.changed=a!==e.modelValue,o("update:modelValue",a,n)}function _e(){let t=[n("div",{class:"q-time__link "+("hour"===C.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onClick:ee.hour,onKeyup:re},L.value.hour),n("div",":"),n("div",!0===z.value?{class:"q-time__link "+("minute"===C.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onKeyup:oe,onClick:ee.minute}:{class:"q-time__link"},L.value.minute)];!0===e.withSeconds&&t.push(n("div",":"),n("div",!0===N.value?{class:"q-time__link "+("second"===C.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onKeyup:se,onClick:ee.second}:{class:"q-time__link"},L.value.second));let a=[n("div",{class:"q-time__header-label row items-center no-wrap",dir:"ltr"},t)];return!1===M.value&&a.push(n("div",{class:"q-time__header-ampm column items-between no-wrap"},[n("div",{class:"q-time__link "+(!0===E.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onClick:he,onKeyup:te},"AM"),n("div",{class:"q-time__link "+(!0!==E.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onClick:pe,onKeyup:ne},"PM")])),n("div",{class:"q-time__header flex flex-center no-wrap "+f.value},a)}function ve(){let t=T.value[C.value];return n("div",{class:"q-time__content col relative-position"},[n(S,{name:"q-transition--scale"},(()=>n("div",{key:"clock"+C.value,class:"q-time__container-parent absolute-full"},[n("div",{ref:v,class:"q-time__container-child fit overflow-hidden"},[A(n("div",{class:"q-time__clock cursor-pointer non-selectable",onClick:ae,onMousedown:ie},[n("div",{class:"q-time__clock-circle fit"},[n("div",{class:"q-time__clock-pointer"+(null===T.value[C.value]?" hidden":void 0!==e.color?` text-${e.color}`:""),style:R.value}),$.value.map((e=>n("div",{class:`q-time__clock-position row flex-center q-time__clock-pos-${e.index}`+(e.val===t?" q-time__clock-position--active "+f.value:!0===e.disable?" q-time__clock-position--disable":"")},[n("span",e.label)])))])]),V.value)])]))),!0===e.nowBtn?n(An,{class:"q-time__now-button absolute",icon:c.iconSet.datetime.now,unelevated:!0,size:"sm",round:!0,color:e.color,textColor:e.textColor,tabindex:p.value,onClick:U}):null])}return u.proxy.setNow=U,()=>{let a=[ve()],i=dt(t.default);return void 0!==i&&a.push(n("div",{class:"q-time__actions"},i)),void 0!==e.name&&!0!==e.disable&&_(a,"push"),n("div",{class:P.value,tabindex:-1},[_e(),n("div",{class:"q-time__main col overflow-auto"},a)])}}}),jc=$({name:"QTimeline",props:{...Nt,color:{type:String,default:"primary"},side:{type:String,default:"right",validator:e=>["left","right"].includes(e)},layout:{type:String,default:"dense",validator:e=>["dense","comfortable","loose"].includes(e)}},setup(e,{slots:t}){let a=k(),r=It(e,a.proxy.$q);w(Ee,e);let o=i((()=>`q-timeline q-timeline--${e.layout} q-timeline--${e.layout}--${e.side}`+(!0===r.value?" q-timeline--dark":"")));return()=>n("ul",{class:o.value},dt(t.default))}}),Bc=$({name:"QTimelineEntry",props:{heading:Boolean,tag:{type:String,default:"h3"},side:{type:String,default:"right",validator:e=>["left","right"].includes(e)},icon:String,avatar:String,color:String,title:String,subtitle:String,body:String},setup(e,{slots:t}){let a=y(Ee,Ie);if(a===Ie)return console.error("QTimelineEntry needs to be child of QTimeline"),Ie;let r=i((()=>`q-timeline__entry q-timeline__entry--${e.side}`+(void 0!==e.icon||void 0!==e.avatar?" q-timeline__entry--icon":""))),o=i((()=>`q-timeline__dot text-${e.color||a.color}`)),s=i((()=>"comfortable"===a.layout&&"left"===a.side));return()=>{let a,i=ht(t.default,[]);if(void 0!==e.body&&i.unshift(e.body),!0===e.heading){let t=[n("div"),n("div"),n(e.tag,{class:"q-timeline__heading-title"},i)];return n("div",{class:"q-timeline__heading"},!0===s.value?t.reverse():t)}void 0!==e.icon?a=[n(Lt,{class:"row items-center justify-center",name:e.icon})]:void 0!==e.avatar&&(a=[n("img",{class:"q-timeline__dot-img",src:e.avatar})]);let l=[n("div",{class:"q-timeline__subtitle"},[n("span",{},dt(t.subtitle,[e.subtitle]))]),n("div",{class:o.value},a),n("div",{class:"q-timeline__content"},[n("h6",{class:"q-timeline__title"},dt(t.title,[e.title]))].concat(i))];return n("li",{class:r.value},!0===s.value?l.reverse():l)}}}),Fc=$({name:"QToolbar",props:{inset:Boolean},setup(e,{slots:t}){let a=i((()=>"q-toolbar row no-wrap items-center"+(!0===e.inset?" q-toolbar--inset":"")));return()=>n("div",{class:a.value,role:"toolbar"},dt(t.default))}}),$c=$({name:"QToolbarTitle",props:{shrink:Boolean},setup(e,{slots:t}){let a=i((()=>"q-toolbar__title ellipsis"+(!0===e.shrink?" col-shrink":"")));return()=>n("div",{class:a.value},dt(t.default))}}),Vc=["none","strict","leaf","leaf-filtered"],Uc=$({name:"QTree",props:{...Nt,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:"label"},childrenKey:{type:String,default:"children"},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:"none",validator:e=>Vc.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{},noConnectors:Boolean,noTransition:Boolean,noNodesLabel:String,noResultsLabel:String},emits:["update:expanded","update:ticked","update:selected","lazyLoad","afterShow","afterHide"],setup(e,{slots:t,emit:o}){let{proxy:s}=k(),{$q:l}=s,u=It(e,l),c=a({}),h=a(e.ticked||[]),p=a(e.expanded||[]),f={};v((()=>{f={}}));let m=i((()=>"q-tree q-tree--"+(!0===e.dense?"dense":"standard")+(!0===e.noConnectors?" q-tree--no-connectors":"")+(!0===u.value?" q-tree--dark":"")+(void 0!==e.color?` text-${e.color}`:""))),g=i((()=>void 0!==e.selected)),_=i((()=>e.icon||l.iconSet.tree.icon)),b=i((()=>e.controlColor||e.color)),y=i((()=>void 0!==e.textColor?` text-${e.textColor}`:"")),w=i((()=>{let t=e.selectedColor||e.color;return t?` text-${t}`:""})),x=i((()=>void 0!==e.filterMethod?e.filterMethod:(t,n)=>{let a=n.toLowerCase();return t[e.labelKey]&&-1!==t[e.labelKey].toLowerCase().indexOf(a)})),S=i((()=>{let t={},n=(a,i)=>{let r=a.tickStrategy||(i?i.tickStrategy:e.tickStrategy),o=a[e.nodeKey],s=a[e.childrenKey]&&Array.isArray(a[e.childrenKey])&&0!==a[e.childrenKey].length,l=!0!==a.disabled&&!0===g.value&&!1!==a.selectable,u=!0!==a.disabled&&!1!==a.expandable,d="none"!==r,f="strict"===r,m="leaf-filtered"===r,_="leaf"===r||"leaf-filtered"===r,v=!0!==a.disabled&&!1!==a.tickable;!0===_&&!0===v&&i&&!0!==i.tickable&&(v=!1);let b=a.lazy;!0===b&&void 0!==c.value[o]&&!0===Array.isArray(a[e.childrenKey])&&(b=c.value[o]);let y={key:o,parent:i,isParent:s,lazy:b,disabled:a.disabled,link:!0!==a.disabled&&(!0===l||!0===u&&(!0===s||!0===b)),children:[],matchesFilter:!e.filter||x.value(a,e.filter),selected:o===e.selected&&!0===l,selectable:l,expanded:!0===s&&p.value.includes(o),expandable:u,noTick:!0===a.noTick||!0!==f&&b&&"loaded"!==b,tickable:v,tickStrategy:r,hasTicking:d,strictTicking:f,leafFilteredTicking:m,leafTicking:_,ticked:(!0===f||!0!==s)&&h.value.includes(o)};if(t[o]=y,!0===s&&(y.children=a[e.childrenKey].map((e=>n(e,y))),e.filter&&(!0!==y.matchesFilter?y.matchesFilter=y.children.some((e=>e.matchesFilter)):!0!==y.noTick&&!0!==y.disabled&&!0===y.tickable&&!0===m&&!0===y.children.every((e=>!0!==e.matchesFilter||!0===e.noTick||!0!==e.tickable))&&(y.tickable=!1)),!0===y.matchesFilter&&(!0!==y.noTick&&!0!==f&&!0===y.children.every((e=>e.noTick))&&(y.noTick=!0),_))){if(y.ticked=!1,y.indeterminate=y.children.some((e=>!0===e.indeterminate)),y.tickable=!0===y.tickable&&y.children.some((e=>e.tickable)),!0!==y.indeterminate){let e=y.children.reduce(((e,t)=>!0===t.ticked?e+1:e),0);e===y.children.length?y.ticked=!0:e>0&&(y.indeterminate=!0)}!0===y.indeterminate&&(y.indeterminateNextState=y.children.every((e=>!0!==e.tickable||!0!==e.ticked)))}return y};return e.nodes.forEach((e=>n(e,null))),t}));function C(t){let n=[].reduce,a=(i,r)=>i||!r?i:!0===Array.isArray(r)?n.call(Object(r),a,i):r[e.nodeKey]===t?r:r[e.childrenKey]?a(null,r[e.childrenKey]):void 0;return a(null,e.nodes)}function T(){let t=[],n=a=>{a[e.childrenKey]&&0!==a[e.childrenKey].length&&!1!==a.expandable&&!0!==a.disabled&&(t.push(a[e.nodeKey]),a[e.childrenKey].forEach(n))};e.nodes.forEach(n),void 0!==e.expanded?o("update:expanded",t):p.value=t}function E(t,n,a=C(t),i=S.value[t]){if(i.lazy&&"loaded"!==i.lazy){if("loading"===i.lazy)return;c.value[t]="loading",!0!==Array.isArray(a[e.childrenKey])&&(a[e.childrenKey]=[]),o("lazyLoad",{node:a,key:t,done:n=>{c.value[t]="loaded",a[e.childrenKey]=!0===Array.isArray(n)?n:[],d((()=>{let e=S.value[t];e&&!0===e.isParent&&P(t,!0)}))},fail:()=>{delete c.value[t],0===a[e.childrenKey].length&&delete a[e.childrenKey]}})}else!0===i.isParent&&!0===i.expandable&&P(t,n)}function P(t,n){let a=p.value,i=void 0!==e.expanded;if(!0===i&&(a=a.slice()),n){if(e.accordion&&S.value[t]){let n=[];S.value[t].parent?S.value[t].parent.children.forEach((e=>{e.key!==t&&!0===e.expandable&&n.push(e.key)})):e.nodes.forEach((a=>{let i=a[e.nodeKey];i!==t&&n.push(i)})),0!==n.length&&(a=a.filter((e=>!1===n.includes(e))))}a=a.concat([t]).filter(((e,t,n)=>n.indexOf(e)===t))}else a=a.filter((e=>e!==t));!0===i?o("update:expanded",a):p.value=a}function M(t,n){let a=h.value,i=void 0!==e.ticked;!0===i&&(a=a.slice()),a=n?a.concat(t).filter(((e,t,n)=>n.indexOf(e)===t)):a.filter((e=>!1===t.includes(e))),!0===i&&o("update:ticked",a)}function R(a){return(e.filter?a.filter((t=>S.value[t[e.nodeKey]].matchesFilter)):a).map((a=>function(a){let i=a[e.nodeKey],r=S.value[i],o=a.header&&t[`header-${a.header}`]||t["default-header"],l=!0===r.isParent?R(a[e.childrenKey]):[],c=0!==l.length||r.lazy&&"loaded"!==r.lazy,d=a.body&&t[`body-${a.body}`]||t["default-body"],h=void 0!==o||void 0!==d?function(t,n,a){let i={tree:s,node:t,key:a,color:e.color,dark:u.value};return z(i,"expanded",(()=>n.expanded),(e=>{e!==n.expanded&&E(a,e)})),z(i,"ticked",(()=>n.ticked),(e=>{e!==n.ticked&&M([a],e)})),i}(a,r,i):null;return void 0!==d&&(d=n("div",{class:"q-tree__node-body relative-position"},[n("div",{class:y.value},[d(h)])])),n("div",{key:i,class:"q-tree__node relative-position q-tree__node--"+(!0===c?"parent":"child")},[n("div",{class:"q-tree__node-header relative-position row no-wrap items-center"+(!0===r.link?" q-tree__node--link q-hoverable q-focusable":"")+(!0===r.selected?" q-tree__node--selected":"")+(!0===r.disabled?" q-tree__node--disabled":""),tabindex:!0===r.link?0:-1,ariaExpanded:l.length>0?r.expanded:null,role:"treeitem",onClick:e=>{q(a,r,e)},onKeypress(e){!0!==he(e)&&(13===e.keyCode?q(a,r,e,!0):32===e.keyCode&&j(a,r,e,!0))}},[n("div",{class:"q-focus-helper",tabindex:-1,ref:e=>{f[r.key]=e}}),"loading"===r.lazy?n(on,{class:"q-tree__spinner",color:b.value}):!0===c?n(Lt,{class:"q-tree__arrow"+(!0===r.expanded?" q-tree__arrow--rotate":""),name:_.value,onClick(e){j(a,r,e)}}):null,!0===r.hasTicking&&!0!==r.noTick?n(Bi,{class:"q-tree__tickbox",modelValue:!0===r.indeterminate?null:r.ticked,color:b.value,dark:u.value,dense:!0,keepColor:!0,disable:!0!==r.tickable,onKeydown:J,"onUpdate:modelValue":e=>{!function(e,t){if(!0===e.indeterminate&&(t=e.indeterminateNextState),e.strictTicking)M([e.key],t);else if(e.leafTicking){let n=[],a=e=>{e.isParent?(!0!==t&&!0!==e.noTick&&!0===e.tickable&&n.push(e.key),!0===e.leafTicking&&e.children.forEach(a)):!0!==e.noTick&&!0===e.tickable&&(!0!==e.leafFilteredTicking||!0===e.matchesFilter)&&n.push(e.key)};a(e),M(n,t)}}(r,e)}}):null,n("div",{class:"q-tree__node-header-content col row no-wrap items-center"+(!0===r.selected?w.value:y.value)},[o?o(h):[N(a),n("div",a[e.labelKey])]])]),!0===c?!0===e.noTransition?!0===r.expanded?n("div",{class:"q-tree__node-collapsible"+y.value,key:`${i}__q`},[d,n("div",{class:"q-tree__children"+(!0===r.disabled?" q-tree__node--disabled":""),role:"group"},l)]):null:n(ys,{duration:e.duration,onShow:I,onHide:O},(()=>A(n("div",{class:"q-tree__node-collapsible"+y.value,key:`${i}__q`},[d,n("div",{class:"q-tree__children"+(!0===r.disabled?" q-tree__node--disabled":""),role:"group"},l)]),[[L,r.expanded]]))):d])}(a)))}function N(e){if(void 0!==e.icon)return n(Lt,{class:"q-tree__icon q-mr-sm",name:e.icon,color:e.iconColor});let t=e.img||e.avatar;return t?n("img",{class:`q-tree__${e.img?"img":"avatar"} q-mr-sm`,src:t}):void 0}function I(){o("afterShow")}function O(){o("afterHide")}function D(e){let t=f[e];t&&t.focus()}function q(t,n,a,i){!0!==i&&!1!==n.selectable&&D(n.key),g.value&&n.selectable?!1===e.noSelectionUnset?o("update:selected",n.key!==e.selected?n.key:null):n.key!==e.selected&&o("update:selected",void 0===n.key?null:n.key):j(t,n,a,i),"function"==typeof t.handler&&t.handler(t)}function j(e,t,n,a){void 0!==n&&J(n),!0!==a&&!1!==t.selectable&&D(t.key),E(t.key,!t.expanded,e,t)}return r((()=>e.ticked),(e=>{h.value=e})),r((()=>e.expanded),(e=>{p.value=e})),!0===e.defaultExpandAll&&T(),Object.assign(s,{getNodeByKey:C,getTickedNodes:function(){return h.value.map((e=>C(e)))},getExpandedNodes:function(){return p.value.map((e=>C(e)))},isExpanded:function(e){return!(!e||!S.value[e])&&S.value[e].expanded},collapseAll:function(){void 0!==e.expanded?o("update:expanded",[]):p.value=[]},expandAll:T,setExpanded:E,isTicked:function(e){return!(!e||!S.value[e])&&S.value[e].ticked},setTicked:M}),()=>{let t=R(e.nodes);return n("div",{class:m.value,role:"tree"},0===t.length?e.filter?e.noResultsLabel||l.lang.tree.noResults:e.noNodesLabel||l.lang.tree.noNodes:t)}}});function Hc(e){return(100*e).toFixed(2)+"%"}var Wc={...Nt,...Ys,label:String,color:String,textColor:String,square:Boolean,flat:Boolean,bordered:Boolean,noThumbnails:Boolean,thumbnailFit:{type:String,default:"cover"},autoUpload:Boolean,hideUploadBtn:Boolean,disable:Boolean,readonly:Boolean},Gc=[...Ks,"start","finish","added","removed"];var Yc=()=>!0;function Kc(e){let t={};return e.forEach((e=>{t[e]=Yc})),t}var Qc=Kc(Gc),Zc=({name:e,props:t,emits:s,injectPlugin:l})=>$({name:e,props:{...Wc,...t},emits:!0===je(s)?{...Qc,...s}:[...Gc,...s],setup:(e,{expose:t})=>function(e,t){let s=k(),{props:l,slots:u,emit:c,proxy:d}=s,{$q:h}=d,p=It(l,h),f=i((()=>!0!==l.disable&&!0!==l.readonly)),m=a(!1),_=a(null),v=a(null),b={files:a([]),queuedFiles:a([]),uploadedFiles:a([]),uploadedSize:a(0),updateFileStatus:function(e,t,n){if(e.__status=t,"idle"===t)return e.__uploaded=0,e.__progress=0,e.__sizeLabel=Qe(e.size),void(e.__progressLabel="0.00%");"failed"!==t?(e.__uploaded="uploaded"===t?e.size:n,e.__progress="uploaded"===t?1:Math.min(.9999,e.__uploaded/e.size),e.__progressLabel=Hc(e.__progress),d.$forceUpdate()):d.$forceUpdate()},isAlive:()=>!1===Wt(s)},{pickFiles:y,addFiles:x,onDragover:S,onDragleave:C,processFiles:T,getDndNode:E,maxFilesNumber:P,maxTotalSizeNumber:A}=Qs({editable:f,dnd:m,getFileInput:W,addFilesToQueue:G});Object.assign(b,e({props:l,slots:u,emit:c,helpers:b,exposeApi:e=>{Object.assign(b,e)}})),void 0===b.isBusy&&(b.isBusy=a(!1));let L=a(0),M=i((()=>0===L.value?0:b.uploadedSize.value/L.value)),R=i((()=>Hc(M.value))),I=i((()=>Qe(L.value))),O=i((()=>!0===f.value&&!0!==b.isUploading.value&&(!0===l.multiple||0===b.queuedFiles.value.length)&&(void 0===l.maxFiles||b.files.value.length!0===f.value&&!0!==b.isBusy.value&&!0!==b.isUploading.value&&0!==b.queuedFiles.value.length));w(Ne,Z);let q=i((()=>"q-uploader column no-wrap"+(!0===p.value?" q-uploader--dark q-dark":"")+(!0===l.bordered?" q-uploader--bordered":"")+(!0===l.square?" q-uploader--square no-border-radius":"")+(!0===l.flat?" q-uploader--flat no-shadow":"")+(!0===l.disable?" disabled q-uploader--disable":"")+(!0===m.value?" q-uploader--dnd":""))),j=i((()=>"q-uploader__header"+(void 0!==l.color?` bg-${l.color}`:"")+(void 0!==l.textColor?` text-${l.textColor}`:"")));function B(){!1===l.disable&&(b.abort(),b.uploadedSize.value=0,L.value=0,H(),b.files.value=[],b.queuedFiles.value=[],b.uploadedFiles.value=[])}function F(){!1===l.disable&&V(["uploaded"],(()=>{b.uploadedFiles.value=[]}))}function $(){V(["idle","failed"],(({size:e})=>{L.value-=e,b.queuedFiles.value=[]}))}function V(e,t){if(!0===l.disable)return;let n={files:[],size:0},a=b.files.value.filter((t=>-1===e.indexOf(t.__status)||(n.size+=t.size,n.files.push(t),void 0!==t.__img&&window.URL.revokeObjectURL(t.__img.src),!1)));0!==n.files.length&&(b.files.value=a,t(n),c("removed",n.files))}function U(e){l.disable||("uploaded"===e.__status?b.uploadedFiles.value=b.uploadedFiles.value.filter((t=>t.__key!==e.__key)):"uploading"===e.__status?e.__abort():L.value-=e.size,b.files.value=b.files.value.filter((t=>t.__key!==e.__key||(void 0!==t.__img&&window.URL.revokeObjectURL(t.__img.src),!1))),b.queuedFiles.value=b.queuedFiles.value.filter((t=>t.__key!==e.__key)),c("removed",[e]))}function H(){b.files.value.forEach((e=>{void 0!==e.__img&&window.URL.revokeObjectURL(e.__img.src)}))}function W(){return v.value||_.value.getElementsByClassName("q-uploader__input")[0]}function G(e,t){let n=T(e,t,b.files.value,!0),a=W();null!=a&&(a.value=""),void 0!==n&&(n.forEach((e=>{if(b.updateFileStatus(e,"idle"),L.value+=e.size,!0!==l.noThumbnails&&e.type.toUpperCase().startsWith("IMAGE")){let t=new Image;t.src=window.URL.createObjectURL(e),e.__img=t}})),b.files.value=b.files.value.concat(n),b.queuedFiles.value=b.queuedFiles.value.concat(n),c("added",n),!0===l.autoUpload&&b.upload())}function Y(){!0===D.value&&b.upload()}function K(e,t,a){if(!0===e){let e,i={type:"a",key:t,icon:h.iconSet.uploader[t],flat:!0,dense:!0};return"add"===t?(i.onClick=y,e=Z):i.onClick=a,n(An,i,e)}}function Z(){return n("input",{ref:v,class:"q-uploader__input overflow-hidden absolute-full",tabindex:-1,type:"file",title:"",accept:l.accept,multiple:!0===l.multiple?"multiple":void 0,capture:l.capture,onMousedown:Q,onClick:y,onChange:G})}r(b.isUploading,((e,t)=>{!1===t&&!0===e?c("start"):!0===t&&!1===e&&c("finish")})),g((()=>{!0===b.isUploading.value&&b.abort(),0!==b.files.value.length&&H()}));let J={};for(let e in b)!0===o(b[e])?z(J,e,(()=>b[e].value)):J[e]=b[e];return Object.assign(J,{upload:Y,reset:B,removeUploadedFiles:F,removeQueuedFiles:$,removeFile:U,pickFiles:y,addFiles:x}),N(J,{canAddFiles:()=>O.value,canUpload:()=>D.value,uploadSizeLabel:()=>I.value,uploadProgressLabel:()=>R.value}),t({...b,upload:Y,reset:B,removeUploadedFiles:F,removeQueuedFiles:$,removeFile:U,pickFiles:y,addFiles:x,canAddFiles:O,canUpload:D,uploadSizeLabel:I,uploadProgressLabel:R}),()=>{let e=[n("div",{class:j.value},void 0!==u.header?u.header(J):[n("div",{class:"q-uploader__header-content column"},[n("div",{class:"flex flex-center no-wrap q-gutter-xs"},[K(0!==b.queuedFiles.value.length,"removeQueue",$),K(0!==b.uploadedFiles.value.length,"removeUploaded",F),!0===b.isUploading.value?n(on,{class:"q-uploader__spinner"}):null,n("div",{class:"col column justify-center"},[void 0!==l.label?n("div",{class:"q-uploader__title"},[l.label]):null,n("div",{class:"q-uploader__subtitle"},[I.value+" / "+R.value])]),K(O.value,"add"),K(!1===l.hideUploadBtn&&!0===D.value,"upload",b.upload),K(b.isUploading.value,"clear",b.abort)])])]),n("div",{class:"q-uploader__list scroll"},void 0!==u.list?u.list(J):b.files.value.map((e=>n("div",{key:e.__key,class:"q-uploader__file relative-position"+(!0!==l.noThumbnails&&void 0!==e.__img?" q-uploader__file--img":"")+("failed"===e.__status?" q-uploader__file--failed":"uploaded"===e.__status?" q-uploader__file--uploaded":""),style:!0!==l.noThumbnails&&void 0!==e.__img?{backgroundImage:'url("'+e.__img.src+'")',backgroundSize:l.thumbnailFit}:null},[n("div",{class:"q-uploader__file-header row flex-center no-wrap"},["failed"===e.__status?n(Lt,{class:"q-uploader__file-status",name:h.iconSet.type.negative,color:"negative"}):null,n("div",{class:"q-uploader__file-header-content col"},[n("div",{class:"q-uploader__title"},[e.name]),n("div",{class:"q-uploader__subtitle row items-center no-wrap"},[e.__sizeLabel+" / "+e.__progressLabel])]),"uploading"===e.__status?n(Wi,{value:e.__progress,min:0,max:1,indeterminate:0===e.__progress}):n(An,{round:!0,dense:!0,flat:!0,icon:h.iconSet.uploader["uploaded"===e.__status?"done":"clear"],onClick:()=>{U(e)}})])])))),E("uploader")];!0===b.isBusy.value&&e.push(n("div",{class:"q-uploader__overlay absolute-full flex flex-center"},[n(on)]));let t={ref:_,class:q.value};return!0===O.value&&Object.assign(t,{onDragover:S,onDragleave:C}),n("div",t,e)}}(l,t)});function Jc(e){return"function"==typeof e?e:()=>e}var Xc={url:[Function,String],method:{type:[Function,String],default:"POST"},fieldName:{type:[Function,String],default:()=>e=>e.name},headers:[Function,Array],formFields:[Function,Array],withCredentials:[Function,Boolean],sendRaw:[Function,Boolean],batch:[Function,Boolean],factory:Function};var ed={name:"QUploader",props:Xc,emits:["factoryFailed","uploaded","failed","uploading"],injectPlugin:function({props:e,emit:t,helpers:n}){let r,o=a([]),s=a([]),l=a(0),u=i((()=>({url:Jc(e.url),method:Jc(e.method),headers:Jc(e.headers),formFields:Jc(e.formFields),fieldName:Jc(e.fieldName),withCredentials:Jc(e.withCredentials),sendRaw:Jc(e.sendRaw),batch:Jc(e.batch)})));function c(a){if(l.value++,"function"!=typeof e.factory)return void d(a,{});let i=e.factory(a);if(i)if("function"==typeof i.catch&&"function"==typeof i.then){s.value.push(i);let e=e=>{!0===n.isAlive()&&(s.value=s.value.filter((e=>e!==i)),0===s.value.length&&(r=!1),n.queuedFiles.value=n.queuedFiles.value.concat(a),a.forEach((e=>{n.updateFileStatus(e,"failed")})),t("factoryFailed",e,a),l.value--)};i.then((t=>{!0===r?e(new Error("Aborted")):!0===n.isAlive()&&(s.value=s.value.filter((e=>e!==i)),d(a,t))})).catch(e)}else d(a,i||{});else t("factoryFailed",new Error("QUploader: factory() does not return properly"),a),l.value--}function d(e,a){let i=new FormData,r=new XMLHttpRequest,s=(e,t)=>void 0!==a[e]?Jc(a[e])(t):u.value[e](t),c=s("url",e);if(!c)return console.error("q-uploader: invalid or no URL specified"),void l.value--;let d=s("formFields",e);void 0!==d&&d.forEach((e=>{i.append(e.name,e.value)}));let h,p=0,f=0,m=0,g=0;r.upload.addEventListener("progress",(t=>{if(!0===h)return;let a=Math.min(g,t.loaded);n.uploadedSize.value+=a-m,m=a;let i=m-f;for(let t=p;i>0&&ta.size))return void n.updateFileStatus(a,"uploading",i);i-=a.size,p++,f+=a.size,n.updateFileStatus(a,"uploading",a.size)}}),!1),r.onreadystatechange=()=>{r.readyState<4||(r.status&&r.status<400?(n.uploadedFiles.value=n.uploadedFiles.value.concat(e),e.forEach((e=>{n.updateFileStatus(e,"uploaded")})),t("uploaded",{files:e,xhr:r})):(h=!0,n.uploadedSize.value-=m,n.queuedFiles.value=n.queuedFiles.value.concat(e),e.forEach((e=>{n.updateFileStatus(e,"failed")})),t("failed",{files:e,xhr:r})),l.value--,o.value=o.value.filter((e=>e!==r)))},r.open(s("method",e),c),!0===s("withCredentials",e)&&(r.withCredentials=!0);let _=s("headers",e);void 0!==_&&_.forEach((e=>{r.setRequestHeader(e.name,e.value)}));let v=s("sendRaw",e);e.forEach((e=>{n.updateFileStatus(e,"uploading",0),!0!==v&&i.append(s("fieldName",e),e,e.name),e.xhr=r,e.__abort=()=>{r.abort()},g+=e.size})),t("uploading",{files:e,xhr:r}),o.value.push(r),!0===v?r.send(new Blob(e)):r.send(i)}return{isUploading:i((()=>l.value>0)),isBusy:i((()=>0!==s.value.length)),abort:function(){o.value.forEach((e=>{e.abort()})),0!==s.value.length&&(r=!0)},upload:function(){let e=n.queuedFiles.value.slice(0);n.queuedFiles.value=[],u.value.batch(e)?c(e):e.forEach((e=>{c([e])}))}}}},td=Zc(ed),nd=$({name:"QUploaderAddTrigger",setup(){let e=y(Ne,Ie);return e===Ie&&console.error("QUploaderAddTrigger needs to be child of QUploader"),e}}),ad=$({name:"QVideo",props:{...al,src:{type:String,required:!0},title:String,fetchpriority:{type:String,default:"auto"},loading:{type:String,default:"eager"},referrerpolicy:{type:String,default:"strict-origin-when-cross-origin"}},setup(e){let t=il(e),a=i((()=>"q-video"+(void 0!==e.ratio?" q-video--responsive":"")));return()=>n("div",{class:a.value,style:t.value},[n("iframe",{src:e.src,title:e.title,fetchpriority:e.fetchpriority,loading:e.loading,referrerpolicy:e.referrerpolicy,frameborder:"0",allowfullscreen:!0})])}}),id={};function rd(e){if(!1===e)return 0;if(!0===e||void 0===e)return 1;let t=parseInt(e,10);return isNaN(t)?0:t}t(id,{ClosePopup:()=>sd,Intersection:()=>kl,Morph:()=>Ad,Mutation:()=>zd,Ripple:()=>mn,Scroll:()=>qd,ScrollFire:()=>Od,TouchHold:()=>jd,TouchPan:()=>Ki,TouchRepeat:()=>Vd,TouchSwipe:()=>vi});var od,sd=V({name:"close-popup",beforeMount(e,{value:t}){let n={depth:rd(t),handler(t){0!==n.depth&&setTimeout((()=>{let a=function(e){return Qn.find((t=>null!==t.contentEl&&t.contentEl.contains(e)))}(e);void 0!==a&&function(e,t,n){for(;0!==n&&null!=e;){if(!0===e.__qPortal){if(n--,"QMenu"===e.$options.name){e=Zn(e,t);continue}e.hide(t)}e=$t(e)}}(a,t,n.depth)}))},handlerKey(e){!0===pe(e,13)&&n.handler(e)}};e.__qclosepopup=n,e.addEventListener("click",n.handler),e.addEventListener("keyup",n.handlerKey)},updated(e,{value:t,oldValue:n}){t!==n&&(e.__qclosepopup.depth=rd(t))},beforeUnmount(e){let t=e.__qclosepopup;e.removeEventListener("click",t.handler),e.removeEventListener("keyup",t.handlerKey),delete e.__qclosepopup}}),ld=0;function ud(e,t){void 0===od&&((od=document.createElement("div")).style.cssText="position: absolute; left: 0; top: 0",document.body.appendChild(od));let n=e.getBoundingClientRect(),a=od.getBoundingClientRect(),{marginLeft:i,marginRight:r,marginTop:o,marginBottom:s}=window.getComputedStyle(e),l=parseInt(i,10)+parseInt(r,10),u=parseInt(o,10)+parseInt(s,10);return{left:n.left-a.left,top:n.top-a.top,width:n.right-n.left,height:n.bottom-n.top,widthM:n.right-n.left+(!0===t?0:l),heightM:n.bottom-n.top+(!0===t?0:u),marginH:!0===t?l:0,marginV:!0===t?u:0}}function cd(e){return{width:e.scrollWidth,height:e.scrollHeight}}var dd=["Top","Right","Bottom","Left"],hd=["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],pd=/-block|-inline|block-|inline-/,fd=/(-block|-inline|block-|inline-).*:/;function md(e,t){let n=window.getComputedStyle(e),a={};for(let e=0;e!0!==fd.test(e))).join(";"):n[i]}return a}var gd=["absolute","fixed","relative","sticky"];function _d(e){let t=e,n=0;for(;null!==t&&t!==document;){let{position:a,zIndex:i}=window.getComputedStyle(t),r=Number(i);r>n&&(t===e||!0===gd.includes(a))&&(n=r),t=t.parentNode}return n}function vd(e){let t=typeof e;return"function"===t?e():"string"===t?document.querySelector(e):e}function bd(e){return e&&e.ownerDocument===document&&null!==e.parentNode}function yd(e){let t=()=>!1,n=!1,a=!0,i=function(e){return{from:e.from,to:void 0!==e.to?e.to:e.from}}(e),r=function(e){return"number"==typeof e?e={duration:e}:"function"==typeof e&&(e={onEnd:e}),{...e,waitFor:void 0===e.waitFor?0:e.waitFor,duration:!0===isNaN(e.duration)?300:parseInt(e.duration,10),easing:"string"==typeof e.easing&&0!==e.easing.length?e.easing:"ease-in-out",delay:!0===isNaN(e.delay)?0:parseInt(e.delay,10),fill:"string"==typeof e.fill&&0!==e.fill.length?e.fill:"none",resize:!0===e.resize,useCSS:!0===e.useCSS||!0===e.usecss,hideFromClone:!0===e.hideFromClone||!0===e.hidefromclone,keepToClone:!0===e.keepToClone||!0===e.keeptoclone,tween:!0===e.tween,tweenFromOpacity:!0===isNaN(e.tweenFromOpacity)?.6:parseFloat(e.tweenFromOpacity),tweenToOpacity:!0===isNaN(e.tweenToOpacity)?.5:parseFloat(e.tweenToOpacity)}}(e),o=vd(i.from);if(!0!==bd(o))return t;"function"==typeof o.qMorphCancel&&o.qMorphCancel();let s,l,u,c,d=o.parentNode,h=o.nextElementSibling,p=ud(o,r.resize),{width:f,height:m}=cd(d),{borderWidth:g,borderStyle:_,borderColor:v,borderRadius:b,backgroundColor:y,transform:w,position:k,cssText:x}=md(o,["borderWidth","borderStyle","borderColor","borderRadius","backgroundColor","transform","position","cssText"]),S=o.classList.toString(),C=o.style.cssText,T=o.cloneNode(!0),E=!0===r.tween?o.cloneNode(!0):void 0;void 0!==E&&(E.className=E.classList.toString().split(" ").filter((e=>!1===/^bg-/.test(e))).join(" ")),!0===r.hideFromClone&&T.classList.add("q-morph--internal"),T.setAttribute("aria-hidden","true"),T.style.transition="none",T.style.animation="none",T.style.pointerEvents="none",d.insertBefore(T,h),o.qMorphCancel=()=>{n=!0,T.remove(),void 0!==E&&E.remove(),!0===r.hideFromClone&&T.classList.remove("q-morph--internal"),o.qMorphCancel=void 0};return"function"==typeof e.onToggle&&e.onToggle(),requestAnimationFrame((()=>{let e=vd(i.to);if(!0===n||!0!==bd(e))return void("function"==typeof o.qMorphCancel&&o.qMorphCancel());o!==e&&"function"==typeof e.qMorphCancel&&e.qMorphCancel(),!0!==r.keepToClone&&e.classList.add("q-morph--internal"),T.classList.add("q-morph--internal");let{width:h,height:P}=cd(d),{width:A,height:L}=cd(e.parentNode);!0!==r.hideFromClone&&T.classList.remove("q-morph--internal"),e.qMorphCancel=()=>{n=!0,T.remove(),void 0!==E&&E.remove(),!0===r.hideFromClone&&T.classList.remove("q-morph--internal"),!0!==r.keepToClone&&e.classList.remove("q-morph--internal"),o.qMorphCancel=void 0,e.qMorphCancel=void 0};let M=()=>{if(!0===n)return void("function"==typeof e.qMorphCancel&&e.qMorphCancel());!0!==r.hideFromClone&&(T.classList.add("q-morph--internal"),T.innerHTML="",T.style.left=0,T.style.right="unset",T.style.top=0,T.style.bottom="unset",T.style.transform="none"),!0!==r.keepToClone&&e.classList.remove("q-morph--internal");let i=e.parentNode,{width:M,height:R}=cd(i),z=e.cloneNode(r.keepToClone);z.setAttribute("aria-hidden","true"),!0!==r.keepToClone&&(z.style.left=0,z.style.right="unset",z.style.top=0,z.style.bottom="unset",z.style.transform="none",z.style.pointerEvents="none"),z.classList.add("q-morph--internal");let N=e===o&&d===i?T:e.nextElementSibling;i.insertBefore(z,N);let{borderWidth:I,borderStyle:O,borderColor:D,borderRadius:q,backgroundColor:j,transform:B,position:F,cssText:$}=md(e,["borderWidth","borderStyle","borderColor","borderRadius","backgroundColor","transform","position","cssText"]),V=e.classList.toString(),U=e.style.cssText;e.style.cssText=$,e.style.transform="none",e.style.animation="none",e.style.transition="none",e.className=V.split(" ").filter((e=>!1===/^bg-/.test(e))).join(" ");let H=ud(e,r.resize),W=p.left-H.left,G=p.top-H.top,Y=p.width/(H.width>0?H.width:10),K=p.height/(H.height>0?H.height:100),Q=f-h,Z=m-P,J=M-A,X=R-L,ee=Math.max(p.widthM,Q),te=Math.max(p.heightM,Z),ne=Math.max(H.widthM,J),ae=Math.max(H.heightM,X),ie=o===e&&!1===["absolute","fixed"].includes(F)&&!1===["absolute","fixed"].includes(k),re="fixed"===F,oe=i;for(;!0!==re&&oe!==document;)re="fixed"===window.getComputedStyle(oe).position,oe=oe.parentNode;if(!0!==r.hideFromClone&&(T.style.display="block",T.style.flex="0 0 auto",T.style.opacity=0,T.style.minWidth="unset",T.style.maxWidth="unset",T.style.minHeight="unset",T.style.maxHeight="unset",T.classList.remove("q-morph--internal")),!0!==r.keepToClone&&(z.style.display="block",z.style.flex="0 0 auto",z.style.opacity=0,z.style.minWidth="unset",z.style.maxWidth="unset",z.style.minHeight="unset",z.style.maxHeight="unset"),z.classList.remove("q-morph--internal"),"string"==typeof r.classes&&(e.className+=" "+r.classes),"string"==typeof r.style)e.style.cssText+=" "+r.style;else if(!0===je(r.style))for(let t in r.style)e.style[t]=r.style[t];let se=_d(T),le=_d(e),ue=!0===re?document.documentElement:{scrollLeft:0,scrollTop:0};e.style.position=!0===re?"fixed":"absolute",e.style.left=H.left-ue.scrollLeft+"px",e.style.right="unset",e.style.top=H.top-ue.scrollTop+"px",e.style.margin=0,!0===r.resize&&(e.style.minWidth="unset",e.style.maxWidth="unset",e.style.minHeight="unset",e.style.maxHeight="unset",e.style.overflow="hidden",e.style.overflowX="hidden",e.style.overflowY="hidden"),document.body.appendChild(e),void 0!==E&&(E.style.cssText=x,E.style.transform="none",E.style.animation="none",E.style.transition="none",E.style.position=e.style.position,E.style.left=p.left-ue.scrollLeft+"px",E.style.right="unset",E.style.top=p.top-ue.scrollTop+"px",E.style.margin=0,E.style.pointerEvents="none",!0===r.resize&&(E.style.minWidth="unset",E.style.maxWidth="unset",E.style.minHeight="unset",E.style.maxHeight="unset",E.style.overflow="hidden",E.style.overflowX="hidden",E.style.overflowY="hidden"),document.body.appendChild(E));let ce=n=>{o===e&&!0!==a?(e.style.cssText=C,e.className=S):(e.style.cssText=U,e.className=V),z.parentNode===i&&i.insertBefore(e,z),T.remove(),z.remove(),void 0!==E&&E.remove(),t=()=>!1,o.qMorphCancel=void 0,e.qMorphCancel=void 0,"function"==typeof r.onEnd&&r.onEnd(!0===a?"to":"from",!0===n)};if(!0!==r.useCSS&&"function"==typeof e.animate){let i=!0===r.resize?{transform:`translate(${W}px, ${G}px)`,width:`${ee}px`,height:`${te}px`}:{transform:`translate(${W}px, ${G}px) scale(${Y}, ${K})`},d=!0===r.resize?{width:`${ne}px`,height:`${ae}px`}:{},h=!0===r.resize?{width:`${ee}px`,height:`${te}px`}:{},f=!0===r.resize?{transform:`translate(${-1*W}px, ${-1*G}px)`,width:`${ne}px`,height:`${ae}px`}:{transform:`translate(${-1*W}px, ${-1*G}px) scale(${1/Y}, ${1/K})`},m=void 0!==E?{opacity:r.tweenToOpacity}:{backgroundColor:y},k=void 0!==E?{opacity:1}:{backgroundColor:j};c=e.animate([{margin:0,borderWidth:g,borderStyle:_,borderColor:v,borderRadius:b,zIndex:se,transformOrigin:"0 0",...i,...m},{margin:0,borderWidth:I,borderStyle:O,borderColor:D,borderRadius:q,zIndex:le,transformOrigin:"0 0",transform:B,...d,...k}],{duration:r.duration,easing:r.easing,fill:r.fill,delay:r.delay}),l=void 0===E?void 0:E.animate([{opacity:r.tweenFromOpacity,margin:0,borderWidth:g,borderStyle:_,borderColor:v,borderRadius:b,zIndex:se,transformOrigin:"0 0",transform:w,...h},{opacity:0,margin:0,borderWidth:I,borderStyle:O,borderColor:D,borderRadius:q,zIndex:le,transformOrigin:"0 0",...f}],{duration:r.duration,easing:r.easing,fill:r.fill,delay:r.delay}),s=!0===r.hideFromClone||!0===ie?void 0:T.animate([{margin:`${Z<0?Z/2:0}px ${Q<0?Q/2:0}px`,width:`${ee+p.marginH}px`,height:`${te+p.marginV}px`},{margin:0,width:0,height:0}],{duration:r.duration,easing:r.easing,fill:r.fill,delay:r.delay}),u=!0===r.keepToClone?void 0:z.animate([!0===ie?{margin:`${Z<0?Z/2:0}px ${Q<0?Q/2:0}px`,width:`${ee+p.marginH}px`,height:`${te+p.marginV}px`}:{margin:0,width:0,height:0},{margin:`${X<0?X/2:0}px ${J<0?J/2:0}px`,width:`${ne+H.marginH}px`,height:`${ae+H.marginV}px`}],{duration:r.duration,easing:r.easing,fill:r.fill,delay:r.delay});let x=e=>{void 0!==s&&s.cancel(),void 0!==l&&l.cancel(),void 0!==u&&u.cancel(),c.cancel(),c.removeEventListener("finish",x),c.removeEventListener("cancel",x),ce(e),s=void 0,l=void 0,u=void 0,c=void 0};o.qMorphCancel=()=>{o.qMorphCancel=void 0,n=!0,x()},e.qMorphCancel=()=>{e.qMorphCancel=void 0,n=!0,x()},c.addEventListener("finish",x),c.addEventListener("cancel",x),t=e=>!0!==n&&void 0!==c&&(!0===e?(x(!0),!0):(a=!0!==a,void 0!==s&&s.reverse(),void 0!==l&&l.reverse(),void 0!==u&&u.reverse(),c.reverse(),!0))}else{let i="q-morph-anim-"+ ++ld,s=document.createElement("style"),l=!0===r.resize?`\n transform: translate(${W}px, ${G}px);\n width: ${ee}px;\n height: ${te}px;\n `:`transform: translate(${W}px, ${G}px) scale(${Y}, ${K});`,u=!0===r.resize?`\n width: ${ne}px;\n height: ${ae}px;\n `:"",c=!0===r.resize?`\n width: ${ee}px;\n height: ${te}px;\n `:"",d=!0===r.resize?`\n transform: translate(${-1*W}px, ${-1*G}px);\n width: ${ne}px;\n height: ${ae}px;\n `:`transform: translate(${-1*W}px, ${-1*G}px) scale(${1/Y}, ${1/K});`,h=void 0!==E?`opacity: ${r.tweenToOpacity};`:`background-color: ${y};`,f=void 0!==E?"opacity: 1;":`background-color: ${j};`,m=void 0===E?"":`\n @keyframes ${i}-from-tween {\n 0% {\n opacity: ${r.tweenFromOpacity};\n margin: 0;\n border-width: ${g};\n border-style: ${_};\n border-color: ${v};\n border-radius: ${b};\n z-index: ${se};\n transform-origin: 0 0;\n transform: ${w};\n ${c}\n }\n\n 100% {\n opacity: 0;\n margin: 0;\n border-width: ${I};\n border-style: ${O};\n border-color: ${D};\n border-radius: ${q};\n z-index: ${le};\n transform-origin: 0 0;\n ${d}\n }\n }\n `,k=!0===r.hideFromClone||!0===ie?"":`\n @keyframes ${i}-from {\n 0% {\n margin: ${Z<0?Z/2:0}px ${Q<0?Q/2:0}px;\n width: ${ee+p.marginH}px;\n height: ${te+p.marginV}px;\n }\n\n 100% {\n margin: 0;\n width: 0;\n height: 0;\n }\n }\n `,x=!0===ie?`\n margin: ${Z<0?Z/2:0}px ${Q<0?Q/2:0}px;\n width: ${ee+p.marginH}px;\n height: ${te+p.marginV}px;\n `:"\n margin: 0;\n width: 0;\n height: 0;\n ",S=!0===r.keepToClone?"":`\n @keyframes ${i}-to {\n 0% {\n ${x}\n }\n\n 100% {\n margin: ${X<0?X/2:0}px ${J<0?J/2:0}px;\n width: ${ne+H.marginH}px;\n height: ${ae+H.marginV}px;\n }\n }\n `;s.innerHTML=`\n @keyframes ${i} {\n 0% {\n margin: 0;\n border-width: ${g};\n border-style: ${_};\n border-color: ${v};\n border-radius: ${b};\n background-color: ${y};\n z-index: ${se};\n transform-origin: 0 0;\n ${l}\n ${h}\n }\n\n 100% {\n margin: 0;\n border-width: ${I};\n border-style: ${O};\n border-color: ${D};\n border-radius: ${q};\n background-color: ${j};\n z-index: ${le};\n transform-origin: 0 0;\n transform: ${B};\n ${u}\n ${f}\n }\n }\n\n ${k}\n\n ${m}\n\n ${S}\n `,document.head.appendChild(s);let C="normal";T.style.animation=`${r.duration}ms ${r.easing} ${r.delay}ms ${C} ${r.fill} ${i}-from`,void 0!==E&&(E.style.animation=`${r.duration}ms ${r.easing} ${r.delay}ms ${C} ${r.fill} ${i}-from-tween`),z.style.animation=`${r.duration}ms ${r.easing} ${r.delay}ms ${C} ${r.fill} ${i}-to`,e.style.animation=`${r.duration}ms ${r.easing} ${r.delay}ms ${C} ${r.fill} ${i}`;let P=t=>{t===Object(t)&&t.animationName!==i||(e.removeEventListener("animationend",P),e.removeEventListener("animationcancel",P),ce(),s.remove())};o.qMorphCancel=()=>{o.qMorphCancel=void 0,n=!0,P()},e.qMorphCancel=()=>{e.qMorphCancel=void 0,n=!0,P()},e.addEventListener("animationend",P),e.addEventListener("animationcancel",P),t=t=>!!(!0!==n&&e&&T&&z)&&(!0===t?(P(),!0):(a=!0!==a,C="normal"===C?"reverse":"normal",T.style.animationDirection=C,E.style.animationDirection=C,z.style.animationDirection=C,e.style.animationDirection=C,!0))}};r.waitFor>0||"transitionend"===r.waitFor||r.waitFor===Object(r.waitFor)&&"function"==typeof r.waitFor.then?(r.waitFor>0?new Promise((e=>setTimeout(e,r.waitFor))):"transitionend"===r.waitFor?new Promise((t=>{let n=()=>{null!==a&&(clearTimeout(a),a=null),e&&(e.removeEventListener("transitionend",n),e.removeEventListener("transitioncancel",n)),t()},a=setTimeout(n,400);e.addEventListener("transitionend",n),e.addEventListener("transitioncancel",n)})):r.waitFor).then(M).catch((()=>{"function"==typeof e.qMorphCancel&&e.qMorphCancel()})):M()})),e=>t(e)}var wd={},kd=["duration","delay","easing","fill","classes","style","duration","resize","useCSS","hideFromClone","keepToClone","tween","tweenFromOpacity","tweenToOpacity","waitFor","onEnd"],xd=["resize","useCSS","hideFromClone","keepToClone","tween"];function Sd(e,t){e.clsAction!==t&&(e.clsAction=t,e.el.classList[t]("q-morph--invisible"))}function Cd(e){if(!0===e.animating||e.queue.length<2)return;let[t,n]=e.queue;e.animating=!0,t.animating=!0,n.animating=!0,Sd(t,"remove"),Sd(n,"remove");let a=yd({from:t.el,to:n.el,onToggle(){Sd(t,"add"),Sd(n,"remove")},...n.opts,onEnd(a,i){void 0!==n.opts.onEnd&&n.opts.onEnd(a,i),!0!==i&&(t.animating=!1,n.animating=!1,e.animating=!1,e.cancel=void 0,e.queue.shift(),Cd(e))}});e.cancel=()=>{a(!0),e.cancel=void 0}}function Td(e,t){let n=t.opts;xd.forEach((t=>{n[t]=!0===e[t]}))}function Ed(e,t){if(t.name!==e)!1===t.animating&&Sd(t,"add");else{let n=wd[t.group];void 0===n?(wd[t.group]={name:t.group,model:e,queue:[t],animating:!1},Sd(t,"remove")):n.model!==e&&(n.model=e,n.queue.push(t),!1===n.animating&&2===n.queue.length&&Cd(n))}}function Pd(e,t){let n;Object(t)===t?(n=""+t.model,function(e,t){void 0!==e.group&&(t.group=e.group),void 0!==e.name&&(t.name=e.name);let n=t.opts;kd.forEach((t=>{void 0!==e[t]&&(n[t]=e[t])}))}(t,e),Td(t,e)):n=""+t,n!==e.model?(e.model=n,Ed(n,e)):!1===e.animating&&void 0!==e.clsAction&&e.el.classList[e.clsAction]("q-morph--invisible")}var Ad=V({name:"morph",mounted(e,t){let n={el:e,animating:!1,opts:{}};Td(t.modifiers,n),function(e,t){let n="string"==typeof e&&0!==e.length?e.split(":"):[];t.name=n[0],t.group=n[1],Object.assign(t.opts,{duration:!0===isNaN(n[2])?300:parseFloat(n[2]),waitFor:n[3]})}(t.arg,n),Pd(n,t.value),e.__qmorph=n},updated(e,t){Pd(e.__qmorph,t.value)},beforeUnmount(e){let t=e.__qmorph,n=wd[t.group];void 0!==n&&-1!==n.queue.indexOf(t)&&(n.queue=n.queue.filter((e=>e!==t)),0===n.queue.length&&(void 0!==n.cancel&&n.cancel(),delete wd[t.group])),"add"===t.clsAction&&e.classList.remove("q-morph--invisible"),delete e.__qmorph}}),Ld={childList:!0,subtree:!0,attributes:!0,characterData:!0,attributeOldValue:!0,characterDataOldValue:!0};function Md(e,t,n){t.handler=n,void 0!==t.observer&&t.observer.disconnect(),t.observer=new MutationObserver((n=>{"function"==typeof t.handler&&(!1===t.handler(n)||!0===t.once)&&Rd(e)})),t.observer.observe(e,t.opts)}function Rd(e){let t=e.__qmutation;void 0!==t&&(void 0!==t.observer&&t.observer.disconnect(),delete e.__qmutation)}var zd=V({name:"mutation",mounted(e,{modifiers:{once:t,...n},value:a}){let i={once:t,opts:0===Object.keys(n).length?Ld:n};Md(e,i,a),e.__qmutation=i},updated(e,{oldValue:t,value:n}){let a=e.__qmutation;void 0!==a&&t!==n&&Md(e,a,n)},beforeUnmount:Rd}),{passive:Nd}=H;function Id(e,{value:t,oldValue:n}){"function"==typeof t?(e.handler=t,"function"!=typeof n&&(e.scrollTarget.addEventListener("scroll",e.scroll,Nd),e.scroll())):e.scrollTarget.removeEventListener("scroll",e.scroll,Nd)}var Od=V({name:"scroll-fire",mounted(e,t){let n={scrollTarget:sa(e),scroll:ae((()=>{let t,a;n.scrollTarget===window?(a=e.getBoundingClientRect().bottom,t=window.innerHeight):(a=sn(e).top+ln(e),t=sn(n.scrollTarget).top+ln(n.scrollTarget)),a>0&&a{a.styleCleanup=void 0;let t=()=>{document.body.classList.remove("non-selectable")};!0===e?(Mn(),setTimeout(t,10)):t()}),a.triggered=!1,a.sensitivity=!0===t?a.mouseSensitivity:a.touchSensitivity,a.timer=setTimeout((()=>{a.timer=void 0,Mn(),a.triggered=!0,a.handler({evt:e,touch:!0!==t,mouse:!0===t,position:a.origin,duration:Date.now()-n})}),a.duration)},move(e){let{top:t,left:n}=Y(e);void 0!==a.timer&&(Math.abs(n-a.origin.left)>=a.sensitivity||Math.abs(t-a.origin.top)>=a.sensitivity)&&(clearTimeout(a.timer),a.timer=void 0)},end(e){te(a,"temp"),void 0!==a.styleCleanup&&a.styleCleanup(a.triggered),!0===a.triggered?void 0!==e&&J(e):void 0!==a.timer&&(clearTimeout(a.timer),a.timer=void 0)}},i=[600,5,7];if("string"==typeof t.arg&&0!==t.arg.length&&t.arg.split(":").forEach(((e,t)=>{let n=parseInt(e,10);n&&(i[t]=n)})),[a.duration,a.touchSensitivity,a.mouseSensitivity]=i,e.__qtouchhold=a,!0===n.mouse){let t=!0===n.mouseCapture||!0===n.mousecapture?"Capture":"";ee(a,"main",[[e,"mousedown","mouseStart",`passive${t}`]])}!0===j.has.touch&&ee(a,"main",[[e,"touchstart","touchStart","passive"+(!0===n.capture?"Capture":"")],[e,"touchend","noop","notPassiveCapture"]])},updated(e,t){let n=e.__qtouchhold;void 0!==n&&t.oldValue!==t.value&&("function"!=typeof t.value&&n.end(),n.handler=t.value)},beforeUnmount(e){let t=e.__qtouchhold;void 0!==t&&(te(t,"main"),te(t,"temp"),void 0!==t.timer&&clearTimeout(t.timer),void 0!==t.styleCleanup&&t.styleCleanup(),delete e.__qtouchhold)}}),Bd={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Fd=new RegExp(`^([\\d+]+|${Object.keys(Bd).join("|")})$`,"i");var $d,Vd=V({name:"touch-repeat",beforeMount(e,{modifiers:t,value:n,arg:a}){let i=Object.keys(t).reduce(((e,t)=>{if(!0===Fd.test(t)){let n=isNaN(parseInt(t,10))?Bd[t.toLowerCase()]:parseInt(t,10);n>=0&&e.push(n)}return e}),[]);if(!0!==t.mouse&&!0!==j.has.touch&&0===i.length)return;let r="string"==typeof a&&0!==a.length?a.split(":").map((e=>parseInt(e,10))):[0,600,300],o=r.length-1,s={keyboard:i,handler:n,noop:W,mouseStart(e){void 0===s.event&&"function"==typeof s.handler&&!0===G(e)&&(ee(s,"temp",[[document,"mousemove","move","passiveCapture"],[document,"click","end","notPassiveCapture"]]),s.start(e,!0))},keyboardStart(t){if("function"==typeof s.handler&&!0===pe(t,i)){if((0===r[0]||void 0!==s.event)&&(J(t),e.focus(),void 0!==s.event))return;ee(s,"temp",[[document,"keyup","end","notPassiveCapture"],[document,"click","end","notPassiveCapture"]]),s.start(t,!1,!0)}},touchStart(e){if(void 0!==e.target&&"function"==typeof s.handler){let t=e.target;ee(s,"temp",[[t,"touchmove","move","passiveCapture"],[t,"touchcancel","end","notPassiveCapture"],[t,"touchend","end","notPassiveCapture"]]),s.start(e)}},start(e,t,n){function a(e){s.styleCleanup=void 0,document.documentElement.style.cursor="";let t=()=>{document.body.classList.remove("non-selectable")};!0===e?(Mn(),setTimeout(t,10)):t()}!0!==n&&(s.origin=Y(e)),!0===j.is.mobile&&(document.body.classList.add("non-selectable"),Mn(),s.styleCleanup=a),s.event={touch:!0!==t&&!0!==n,mouse:!0===t,keyboard:!0===n,startTime:Date.now(),repeatCount:0};let i=()=>{if(s.timer=void 0,void 0===s.event)return;0===s.event.repeatCount&&(s.event.evt=e,!0===n?s.event.keyCode=e.keyCode:s.event.position=Y(e),!0!==j.is.mobile&&(document.documentElement.style.cursor="pointer",document.body.classList.add("non-selectable"),Mn(),s.styleCleanup=a)),s.event.duration=Date.now()-s.event.startTime,s.event.repeatCount+=1,s.handler(s.event);let t=o=7||Math.abs(n-t.top)>=7}(e,s.origin)&&(clearTimeout(s.timer),s.timer=void 0)},end(e){void 0!==s.event&&(void 0!==s.styleCleanup&&s.styleCleanup(!0),void 0!==e&&s.event.repeatCount>0&&J(e),te(s,"temp"),void 0!==s.timer&&(clearTimeout(s.timer),s.timer=void 0),s.event=void 0)}};if(e.__qtouchrepeat=s,!0===t.mouse){let n=!0===t.mouseCapture||!0===t.mousecapture?"Capture":"";ee(s,"main",[[e,"mousedown","mouseStart",`passive${n}`]])}if(!0===j.has.touch&&ee(s,"main",[[e,"touchstart","touchStart","passive"+(!0===t.capture?"Capture":"")],[e,"touchend","noop","passiveCapture"]]),0!==i.length){let n=!0===t.keyCapture||!0===t.keycapture?"Capture":"";ee(s,"main",[[e,"keydown","keyboardStart",`notPassive${n}`]])}},updated(e,{oldValue:t,value:n}){let a=e.__qtouchrepeat;void 0!==a&&t!==n&&("function"!=typeof n&&a.end(),a.handler=n)},beforeUnmount(e){let t=e.__qtouchrepeat;void 0!==t&&(void 0!==t.timer&&clearTimeout(t.timer),te(t,"main"),te(t,"temp"),void 0!==t.styleCleanup&&t.styleCleanup(),delete e.__qtouchrepeat)}}),Ud={};function Hd(e,t=document.body){if("string"!=typeof e)throw new TypeError("Expected a string as propName");if(!(t instanceof Element))throw new TypeError("Expected a DOM element");return getComputedStyle(t).getPropertyValue(`--q-${e}`).trim()||null}function Wd(e){void 0===$d&&($d=j.is.winphone?"msapplication-navbutton-color":j.is.safari?"apple-mobile-web-app-status-bar-style":"theme-color");let t=function(e){let t=document.getElementsByTagName("META");for(let n in t)if(t[n].name===e)return t[n]}($d),n=void 0===t;n&&(t=document.createElement("meta"),t.setAttribute("name",$d)),t.setAttribute("content",e),n&&document.head.appendChild(t)}t(Ud,{AddressbarColor:()=>Gd,AppFullscreen:()=>th,AppVisibility:()=>ah,BottomSheet:()=>sh,Cookies:()=>_h,Dark:()=>le,Dialog:()=>bh,IconSet:()=>Te,Lang:()=>xe,Loading:()=>Ph,LoadingBar:()=>Mh,LocalStorage:()=>rp,Meta:()=>jh,Notify:()=>ep,Platform:()=>F,Screen:()=>oe,SessionStorage:()=>lp});var Gd={set:!0!==j.is.mobile||!0!==j.is.nativeMobile&&!0!==j.is.winphone&&!0!==j.is.safari&&!0!==j.is.webkit&&!0!==j.is.vivaldi?W:e=>{let t=e||Hd("primary");!0===j.is.nativeMobile&&window.StatusBar?window.StatusBar.backgroundColorByHexString(t):Wd(t)},install({$q:e}){e.addressbarColor=this,e.config.addressbarColor&&this.set(e.config.addressbarColor)}},Yd={};function Kd(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement||null}function Qd(){let e=eh.activeEl=!1===eh.isActive?null:Kd();!function(e){if(e===Gn)return;if((Gn=e)===document.body||Hn.reduce(((e,t)=>"dialog"===t?e+1:e),0)<2)return void Un.forEach((e=>{!1===e.contains(Gn)&&Gn.appendChild(e)}));let t=Hn.lastIndexOf("dialog");for(let e=0;evoid 0!==document.documentElement[e])),eh.isCapable=void 0!==Yd.request,!1===eh.isCapable?(Xd=()=>Promise.reject("Not capable"),Object.assign(eh,{request:Xd,exit:Xd,toggle:Xd})):(Object.assign(eh,{request(e){let t=e||document.documentElement,{activeEl:n}=eh;return t===n?Promise.resolve():(null!==n&&!0===t.contains(n)?eh.exit():Promise.resolve()).finally((()=>Jd(t,Yd.request)))},exit:()=>!0===eh.isActive?Jd(document,Yd.exit):Promise.resolve(),toggle:e=>!0===eh.isActive?eh.exit():eh.request(e)}),Yd.exit=["exitFullscreen","msExitFullscreen","mozCancelFullScreen","webkitExitFullscreen"].find((e=>document[e])),eh.isActive=!!Kd(),!0===eh.isActive&&Qd(),["onfullscreenchange","onmsfullscreenchange","onwebkitfullscreenchange"].forEach((e=>{document[e]=Zd})));var th=eh,nh=U({appVisible:!0},{install({$q:e}){z(e,"appVisible",(()=>this.appVisible))}});{let e,t;if(typeof document.hidden<"u"?(e="hidden",t="visibilitychange"):typeof document.msHidden<"u"?(e="msHidden",t="msvisibilitychange"):typeof document.webkitHidden<"u"&&(e="webkitHidden",t="webkitvisibilitychange"),t&&typeof document[e]<"u"){let n=()=>{nh.appVisible=!document[e]};document.addEventListener(t,n,!1)}}var ah=nh,ih=$({name:"BottomSheetComponent",props:{...Nt,title:String,message:String,actions:Array,grid:Boolean,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){let{proxy:i}=k(),r=It(e,i.$q),o=a(null);function s(){o.value.hide()}function l(e){t("ok",e),s()}function u(){t("hide")}function c(){let t=[];return e.title&&t.push(n(ci,{class:"q-dialog__title"},(()=>e.title))),e.message&&t.push(n(ci,{class:"q-dialog__message"},(()=>e.message))),t.push(!0===e.grid?n("div",{class:"row items-stretch justify-start",role:"list"},e.actions.map((e=>{let t=e.avatar||e.img;return void 0===e.label?n(xs,{class:"col-all",dark:r.value}):n("div",{class:["q-bottom-sheet__item q-hoverable q-focusable cursor-pointer relative-position",e.class],style:e.style,tabindex:0,role:"listitem",onClick(){l(e)},onKeyup(t){13===t.keyCode&&l(e)}},[n("div",{class:"q-focus-helper"}),e.icon?n(Lt,{name:e.icon,color:e.color}):t?n("img",{class:e.avatar?"q-bottom-sheet__avatar":"",src:t}):n("div",{class:"q-bottom-sheet__empty-icon"}),n("div",e.label)])}))):n("div",{role:"list"},e.actions.map((e=>{let t=e.avatar||e.img;return void 0===e.label?n(xs,{spaced:!0,dark:r.value}):n(rs,{class:["q-bottom-sheet__item",e.classes],style:e.style,tabindex:0,clickable:!0,dark:r.value,onClick(){l(e)}},(()=>[n(os,{avatar:!0},(()=>e.icon?n(Lt,{name:e.icon,color:e.color}):t?n("img",{class:e.avatar?"q-bottom-sheet__avatar":"",src:t}):null)),n(os,(()=>e.label))]))})))),t}function d(){return[n(ui,{class:["q-bottom-sheet q-bottom-sheet--"+(!0===e.grid?"grid":"list")+(!0===r.value?" q-bottom-sheet--dark q-dark":""),e.cardClass],style:e.cardStyle},c)]}return Object.assign(i,{show:function(){o.value.show()},hide:s}),()=>n(Zo,{ref:o,position:"bottom",onHide:u},d)}});function rh(e,t){for(let n in t)"spinner"!==n&&Object(t[n])===t[n]?(e[n]=Object(e[n])!==e[n]?{}:{...e[n]},rh(e[n],t[n])):e[n]=t[n]}function oh(e,t,i){return r=>{let o,s,l=!0===t&&void 0!==r.component;if(!0===l){let{component:e,componentProps:t}=r;o="string"==typeof e?i.component(e):e,s=t||{}}else{let{class:t,style:n,...a}=r;o=e,s=a,void 0!==t&&(a.cardClass=t),void 0!==n&&(a.cardStyle=n)}let u,c=!1,h=a(null),p=Yn(!1,"dialog"),f=e=>{if(null!==h.value&&void 0!==h.value[e])return void h.value[e]();let t=u.$.subTree;if(t&&t.component){if(t.component.proxy&&t.component.proxy[e])return void t.component.proxy[e]();if(t.component.subTree&&t.component.subTree.component&&t.component.subTree.component.proxy&&t.component.subTree.component.proxy[e])return void t.component.subTree.component.proxy[e]()}console.error("[Quasar] Incorrectly defined Dialog component")},m=[],g=[],_={onOk:e=>(m.push(e),_),onCancel:e=>(g.push(e),_),onDismiss:e=>(m.push(e),g.push(e),_),hide:()=>(f("hide"),_),update(e){if(null!==u){if(!0===l)Object.assign(s,e);else{let{class:t,style:n,...a}=e;void 0!==t&&(a.cardClass=t),void 0!==n&&(a.cardStyle=n),rh(s,a)}u.$forceUpdate()}return _}},v=e=>{c=!0,m.forEach((t=>{t(e)}))},b=()=>{y.unmount(p),Kn(p),y=null,u=null,!0!==c&&g.forEach((e=>{e()}))},y=He({name:"QGlobalDialog",setup:()=>()=>n(o,{...s,ref:h,onOk:v,onHide:b,onVnodeMounted(...e){"function"==typeof s.onVnodeMounted&&s.onVnodeMounted(...e),d((()=>f("show")))}})},i);return u=y.mount(p),_}}var sh={install({$q:e,parentApp:t}){e.bottomSheet=this.create=oh(ih,!1,t)}};function lh(e){return encodeURIComponent(e)}function uh(e){return decodeURIComponent(e)}function ch(e){if(""===e)return e;0===e.indexOf('"')&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\")),e=uh(e.replace(/\+/g," "));try{let t=JSON.parse(e);(t===Object(t)||!0===Array.isArray(t))&&(e=t)}catch{}return e}function dh(e){let t=new Date;return t.setMilliseconds(t.getMilliseconds()+e),t.toUTCString()}function hh(e,t,n={},a){let i,r;void 0!==n.expires&&("[object Date]"===Object.prototype.toString.call(n.expires)?i=n.expires.toUTCString():"string"==typeof n.expires?i=function(e){let t=0,n=e.match(/(\d+)d/),a=e.match(/(\d+)h/),i=e.match(/(\d+)m/),r=e.match(/(\d+)s/);return n&&(t+=864e5*n[1]),a&&(t+=36e5*a[1]),i&&(t+=6e4*i[1]),r&&(t+=1e3*r[1]),0===t?e:dh(t)}(n.expires):(r=parseFloat(n.expires),i=!1===isNaN(r)?dh(864e5*r):n.expires));let o=`${lh(e)}=${function(e){return lh(e===Object(e)?JSON.stringify(e):""+e)}(t)}`,s=[o,void 0!==i?"; Expires="+i:"",n.path?"; Path="+n.path:"",n.domain?"; Domain="+n.domain:"",n.sameSite?"; SameSite="+n.sameSite:"",n.httpOnly?"; HttpOnly":"",n.secure?"; Secure":"",n.other?"; "+n.other:""].join("");if(a){a.req.qCookies?a.req.qCookies.push(s):a.req.qCookies=[s],a.res.setHeader("Set-Cookie",a.req.qCookies);let t=a.req.headers.cookie||"";if(void 0!==i&&r<0){let n=ph(e,a);void 0!==n&&(t=t.replace(`${e}=${n}; `,"").replace(`; ${e}=${n}`,"").replace(`${e}=${n}`,""))}else t=t?`${o}; ${t}`:s;a.req.headers.cookie=t}else document.cookie=s}function ph(e,t){let n,a,i,r=t?t.req.headers:document,o=r.cookie?r.cookie.split("; "):[],s=o.length,l=e?null:{},u=0;for(;uph(t,e),set:(t,n,a)=>hh(t,n,a,e),has:t=>function(e,t){return null!==ph(e,t)}(t,e),remove:(t,n)=>function(e,t,n){hh(e,"",{expires:-1,...t},n)}(t,n,e),getAll:()=>ph(null,e)}}());var mh,gh,_h=fh,vh=$({name:"DialogPluginComponent",props:{...Nt,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){let{proxy:o}=k(),{$q:l}=o,u=It(e,l),c=a(null),d=a(void 0!==e.prompt?e.prompt.model:void 0!==e.options?e.options.model:void 0),h=i((()=>"q-dialog-plugin"+(!0===u.value?" q-dialog-plugin--dark q-dark":"")+(!1!==e.progress?" q-dialog-plugin--progress":""))),p=i((()=>e.color||(!0===u.value?"amber":"primary"))),f=i((()=>!1===e.progress?null:!0===je(e.progress)?{component:e.progress.spinner||on,props:{color:e.progress.color||p.value}}:{component:on,props:{color:p.value}})),m=i((()=>void 0!==e.prompt||void 0!==e.options)),g=i((()=>{if(!0!==m.value)return{};let{model:t,isValid:n,items:a,...i}=void 0!==e.prompt?e.prompt:e.options;return i})),_=i((()=>!0===je(e.ok)||!0===e.ok?l.lang.label.ok:e.ok)),v=i((()=>!0===je(e.cancel)||!0===e.cancel?l.lang.label.cancel:e.cancel)),b=i((()=>void 0!==e.prompt?void 0!==e.prompt.isValid&&!0!==e.prompt.isValid(d.value):void 0!==e.options&&(void 0!==e.options.isValid&&!0!==e.options.isValid(d.value)))),y=i((()=>({color:p.value,label:_.value,ripple:!1,disable:b.value,...!0===je(e.ok)?e.ok:{flat:!0},"data-autofocus":"ok"===e.focus&&!0!==m.value||void 0,onClick:S}))),w=i((()=>({color:p.value,label:v.value,ripple:!1,...!0===je(e.cancel)?e.cancel:{flat:!0},"data-autofocus":"cancel"===e.focus&&!0!==m.value||void 0,onClick:C})));function x(){c.value.hide()}function S(){t("ok",s(d.value)),x()}function C(){x()}function T(){t("hide")}function E(e){d.value=e}function P(t){!0!==b.value&&"textarea"!==e.prompt.type&&!0===pe(t,13)&&S()}function A(t,a){return!0===e.html?n(ci,{class:t,innerHTML:a}):n(ci,{class:t},(()=>a))}function L(){return[n(vl,{color:p.value,dense:!0,autofocus:!0,dark:u.value,...g.value,modelValue:d.value,"onUpdate:modelValue":E,onKeyup:P})]}function M(){return[n(Fl,{color:p.value,options:e.options.items,dark:u.value,...g.value,modelValue:d.value,"onUpdate:modelValue":E})]}function R(){let t=[];return e.title&&t.push(A("q-dialog__title",e.title)),!1!==e.progress&&t.push(n(ci,{class:"q-dialog__progress"},(()=>n(f.value.component,f.value.props)))),e.message&&t.push(A("q-dialog__message",e.message)),void 0!==e.prompt?t.push(n(ci,{class:"scroll q-dialog-plugin__form"},L)):void 0!==e.options&&t.push(n(xs,{dark:u.value}),n(ci,{class:"scroll q-dialog-plugin__form"},M),n(xs,{dark:u.value})),(e.ok||e.cancel)&&t.push(function(){let t=[];return e.cancel&&t.push(n(An,w.value)),e.ok&&t.push(n(An,y.value)),n(di,{class:!0===e.stackButtons?"items-end":"",vertical:e.stackButtons,align:"right"},(()=>t))}()),t}function z(){return[n(ui,{class:[h.value,e.cardClass],style:e.cardStyle,dark:u.value},R)]}return r((()=>e.prompt&&e.prompt.model),E),r((()=>e.options&&e.options.model),E),Object.assign(o,{show:function(){c.value.show()},hide:x}),()=>n(Zo,{ref:c,onHide:T},z)}}),bh={install({$q:e,parentApp:t}){e.dialog=this.create=oh(vh,!0,t)}},yh=0,wh=null,kh={},xh={},Sh={group:"__default_quasar_group__",delay:0,message:!1,html:!1,spinnerSize:80,spinnerColor:"",messageColor:"",backgroundColor:"",boxClass:"",spinner:on,customClass:""},Ch={...Sh};var Th,Eh=U({isActive:!1},{show(e){kh=function(e){if(e&&void 0!==e.group&&void 0!==xh[e.group])return Object.assign(xh[e.group],e);let t=!0===je(e)&&!0===e.ignoreDefaults?{...Sh,...e}:{...Ch,...e};return xh[t.group]=t,t}(e);let{group:t}=kh;return Eh.isActive=!0,void 0!==mh?(kh.uid=yh,gh.$forceUpdate()):(kh.uid=++yh,null!==wh&&clearTimeout(wh),wh=setTimeout((()=>{wh=null;let e=Yn("q-loading");mh=He({name:"QLoading",setup(){function t(){!0!==Eh.isActive&&void 0!==mh&&(Wo(!1),mh.unmount(e),Kn(e),mh=void 0,gh=void 0)}function a(){if(!0!==Eh.isActive)return null;let e=[n(kh.spinner,{class:"q-loading__spinner",color:kh.spinnerColor,size:kh.spinnerSize})];return kh.message&&e.push(n("div",{class:"q-loading__message"+(kh.messageColor?` text-${kh.messageColor}`:""),[!0===kh.html?"innerHTML":"textContent"]:kh.message})),n("div",{class:"q-loading fullscreen flex flex-center z-max "+kh.customClass.trim(),key:kh.uid},[n("div",{class:"q-loading__backdrop"+(kh.backgroundColor?` bg-${kh.backgroundColor}`:"")}),n("div",{class:"q-loading__box column items-center "+kh.boxClass},e)])}return m((()=>{Wo(!0)})),()=>n(S,{name:"q-transition--fade",appear:!0,onAfterLeave:t},a)}},Eh.__parentApp),gh=mh.mount(e)}),kh.delay)),e=>{void 0!==e&&Object(e)===e?Eh.show({...e,group:t}):Eh.hide(t)}},hide(e){if(!0===Eh.isActive){if(void 0===e)xh={};else{if(void 0===xh[e])return;{delete xh[e];let t=Object.keys(xh);if(0!==t.length){let e=t[t.length-1];return void Eh.show({group:e})}}}null!==wh&&(clearTimeout(wh),wh=null),Eh.isActive=!1}},setDefaults(e){!0===je(e)&&Object.assign(Ch,e)},install({$q:e,parentApp:t}){e.loading=this,Eh.__parentApp=t,void 0!==e.config.loading&&this.setDefaults(e.config.loading)}}),Ph=Eh,Ah=a(null),Lh=U({isActive:!1},{start:W,stop:W,increment:W,setDefaults:W,install({$q:e,parentApp:t}){if(e.loadingBar=this,!0===this.__installed)return void(void 0!==e.config.loadingBar&&this.setDefaults(e.config.loadingBar));let i=a(void 0!==e.config.loadingBar?{...e.config.loadingBar}:{});function r(){Lh.isActive=!0}function o(){Lh.isActive=!1}let s=Yn("q-loading-bar");He({name:"LoadingBar",devtools:{hide:!0},setup:()=>()=>n(st,{...i.value,onStart:r,onStop:o,ref:Ah})},t).mount(s),Object.assign(this,{start(e){Ah.value.start(e)},stop(){Ah.value.stop()},increment(){Ah.value.increment.apply(null,arguments)},setDefaults(e){!0===je(e)&&Object.assign(i.value,e)}})}}),Mh=Lh,Rh=null,zh=[];function Nh(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!0;for(let n in e)if(e[n]!==t[n])return!0}function Ih(e){return!1===["class","style"].includes(e)}function Oh(e){return!1===["lang","dir"].includes(e)}function Dh(){Rh=null;let e={title:"",titleTemplate:null,meta:{},link:{},script:{},htmlAttr:{},bodyAttr:{}};for(let t=0;t{let n=e[t[0]],a=t[1];for(let e in n){let t=n[e];t.template&&(1===Object.keys(t).length?delete n[e]:(t[a]=t.template(t[a]||""),delete t.template))}}))})(e),function({add:e,remove:t}){e.title&&(document.title=e.title),0!==Object.keys(t).length&&(["meta","link","script"].forEach((e=>{t[e].forEach((t=>{document.head.querySelector(`${e}[data-qmeta="${t}"]`).remove()}))})),t.htmlAttr.filter(Oh).forEach((e=>{document.documentElement.removeAttribute(e)})),t.bodyAttr.filter(Ih).forEach((e=>{document.body.removeAttribute(e)}))),["meta","link","script"].forEach((t=>{let n=e[t];for(let e in n){let a=document.createElement(t);for(let t in n[e])"innerHTML"!==t&&a.setAttribute(t,n[e][t]);a.setAttribute("data-qmeta",e),"script"===t&&(a.innerHTML=n[e].innerHTML||""),document.head.appendChild(a)}})),Object.keys(e.htmlAttr).filter(Oh).forEach((t=>{document.documentElement.setAttribute(t,e.htmlAttr[t]||"")})),Object.keys(e.bodyAttr).filter(Ih).forEach((t=>{document.body.setAttribute(t,e.bodyAttr[t]||"")}))}(function(e,t){let n={},a={};return void 0===e?{add:t,remove:a}:(e.title!==t.title&&(n.title=t.title),["meta","link","script","htmlAttr","bodyAttr"].forEach((i=>{let r=e[i],o=t[i];if(a[i]=[],null!=r){n[i]={};for(let e in r)!1===o.hasOwnProperty(e)&&a[i].push(e);for(let e in o)!1===r.hasOwnProperty(e)?n[i][e]=o[e]:!0===Nh(r[e],o[e])&&(a[i].push(e),n[i][e]=o[e])}else n[i]=o})),{add:n,remove:a})}(Th,e)),Th=e}function qh(){null!==Rh&&clearTimeout(Rh),Rh=setTimeout(Dh,50)}var jh={install(e){!0!==this.__installed&&!0===O.value&&(Th=window.__Q_META__,document.getElementById("qmeta-init").remove())}},Bh=0,Fh={},$h={},Vh={},Uh={},Hh=/^\s*$/,Wh=[],Gh=[void 0,null,!0,!1,""],Yh=["top-left","top-right","bottom-left","bottom-right","top","bottom","left","right","center"],Kh=["top-left","top-right","bottom-left","bottom-right"],Qh={positive:{icon:e=>e.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function Zh(e,t,n){if(!e)return Xh("parameter required");let a,i={textColor:"white"};if(!0!==e.ignoreDefaults&&Object.assign(i,Fh),!1===je(e)&&(i.type&&Object.assign(i,Qh[i.type]),e={message:e}),Object.assign(i,Qh[e.type||i.type],e),"function"==typeof i.icon&&(i.icon=i.icon(t)),i.spinner?(!0===i.spinner&&(i.spinner=on),i.spinner=x(i.spinner)):i.spinner=!1,i.meta={hasMedia:!(!1===i.spinner&&!i.icon&&!i.avatar),hasText:Jh(i.message)||Jh(i.caption)},i.position){if(!1===Yh.includes(i.position))return Xh("wrong position",e)}else i.position="bottom";if(!0===Gh.includes(i.timeout))i.timeout=5e3;else{let t=Number(i.timeout);if(isNaN(t)||t<0)return Xh("wrong timeout",e);i.timeout=Number.isFinite(t)?t:0}0===i.timeout?i.progress=!1:!0===i.progress&&(i.meta.progressClass="q-notification__progress"+(i.progressClass?` ${i.progressClass}`:""),i.meta.progressStyle={animationDuration:`${i.timeout+1e3}ms`});let r=(!0===Array.isArray(e.actions)?e.actions:[]).concat(!0!==e.ignoreDefaults&&!0===Array.isArray(Fh.actions)?Fh.actions:[]).concat(void 0!==Qh[e.type]&&!0===Array.isArray(Qh[e.type].actions)?Qh[e.type].actions:[]),{closeBtn:o}=i;if(o&&r.push({label:"string"==typeof o?o:t.lang.label.close}),i.actions=r.map((({handler:e,noDismiss:t,...n})=>({flat:!0,...n,onClick:"function"==typeof e?()=>{e(),!0!==t&&s()}:()=>{s()}}))),void 0===i.multiLine&&(i.multiLine=i.actions.length>1),Object.assign(i.meta,{class:"q-notification row items-stretch q-notification--"+(!0===i.multiLine?"multi-line":"standard")+(void 0!==i.color?` bg-${i.color}`:"")+(void 0!==i.textColor?` text-${i.textColor}`:"")+(void 0!==i.classes?` ${i.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(!0===i.multiLine?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(!0===i.multiLine?"":" col"),leftClass:!0===i.meta.hasText?"additional":"single",attrs:{role:"alert",...i.attrs}}),!1===i.group?(i.group=void 0,i.meta.group=void 0):((void 0===i.group||!0===i.group)&&(i.group=[i.message,i.caption,i.multiline].concat(i.actions.map((e=>`${e.label}*${e.icon}`))).join("|")),i.meta.group=i.group+"|"+i.position),0===i.actions.length?i.actions=void 0:i.meta.actionsClass="q-notification__actions row items-center "+(!0===i.multiLine?"justify-end":"col-auto")+(!0===i.meta.hasMedia?" q-notification__actions--with-media":""),void 0!==n){n.notif.meta.timer&&(clearTimeout(n.notif.meta.timer),n.notif.meta.timer=void 0),i.meta.uid=n.notif.meta.uid;let e=Vh[i.position].value.indexOf(n.notif);Vh[i.position].value[e]=i}else{let t=$h[i.meta.group];if(void 0===t){if(i.meta.uid=Bh++,i.meta.badge=1,-1!==["left","right","center"].indexOf(i.position))Vh[i.position].value.splice(Math.floor(Vh[i.position].value.length/2),0,i);else{let e=-1!==i.position.indexOf("top")?"unshift":"push";Vh[i.position].value[e](i)}void 0!==i.group&&($h[i.meta.group]=i)}else{if(t.meta.timer&&(clearTimeout(t.meta.timer),t.meta.timer=void 0),void 0!==i.badgePosition){if(!1===Kh.includes(i.badgePosition))return Xh("wrong badgePosition",e)}else i.badgePosition="top-"+(-1!==i.position.indexOf("left")?"right":"left");i.meta.uid=t.meta.uid,i.meta.badge=t.meta.badge+1,i.meta.badgeClass=`q-notification__badge q-notification__badge--${i.badgePosition}`+(void 0!==i.badgeColor?` bg-${i.badgeColor}`:"")+(void 0!==i.badgeTextColor?` text-${i.badgeTextColor}`:"")+(i.badgeClass?` ${i.badgeClass}`:"");let n=Vh[i.position].value.indexOf(t);Vh[i.position].value[n]=$h[i.meta.group]=i}}let s=()=>{(function(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);let t=Vh[e.position].value.indexOf(e);if(-1!==t){void 0!==e.group&&delete $h[e.meta.group];let n=Wh[""+e.meta.uid];if(n){let{width:e,height:t}=getComputedStyle(n);n.style.left=`${n.offsetLeft}px`,n.style.width=e,n.style.height=t}Vh[e.position].value.splice(t,1),"function"==typeof e.onDismiss&&e.onDismiss()}})(i),a=void 0};return i.timeout>0&&(i.meta.timer=setTimeout((()=>{i.meta.timer=void 0,s()}),i.timeout+1e3)),void 0!==i.group?t=>{void 0!==t?Xh("trying to update a grouped one which is forbidden",e):s()}:(a={dismiss:s,config:e,notif:i},void 0===n?e=>{if(void 0!==a)if(void 0===e)a.dismiss();else{Zh(Object.assign({},a.config,e,{group:!1,position:i.position}),t,a)}}:void Object.assign(n,a))}function Jh(e){return null!=e&&!0!==Hh.test(e)}function Xh(e,t){return console.error(`Notify: ${e}`,t),!1}var ep={setDefaults(e){!0===je(e)&&Object.assign(Fh,e)},registerType(e,t){!0===je(t)&&(Qh[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=t=>Zh(t,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,void 0!==e.config.notify&&this.setDefaults(e.config.notify),!0!==this.__installed){Yh.forEach((e=>{Vh[e]=a([]);let t=!0===["left","center","right"].includes(e)?"center":-1!==e.indexOf("top")?"top":"bottom",n=-1!==e.indexOf("left")?"start":-1!==e.indexOf("right")?"end":"center",i=["left","right"].includes(e)?`items-${"left"===e?"start":"end"} justify-center`:"center"===e?"flex-center":`items-${n}`;Uh[e]=`q-notifications__list q-notifications__list--${t} fixed column no-wrap ${i}`}));let e=Yn("q-notify");He($({name:"QNotifications",devtools:{hide:!0},setup:()=>()=>n("div",{class:"q-notifications"},Yh.map((e=>n(C,{key:e,class:Uh[e],tag:"div",name:`q-notification--${e}`},(()=>Vh[e].value.map((e=>{let t=e.meta,a=[];if(!0===t.hasMedia&&(!1!==e.spinner?a.push(n(e.spinner,{class:"q-notification__spinner q-notification__spinner--"+t.leftClass,color:e.spinnerColor,size:e.spinnerSize})):e.icon?a.push(n(Lt,{class:"q-notification__icon q-notification__icon--"+t.leftClass,name:e.icon,color:e.iconColor,size:e.iconSize,role:"img"})):e.avatar&&a.push(n(Mt,{class:"q-notification__avatar q-notification__avatar--"+t.leftClass},(()=>n("img",{src:e.avatar,"aria-hidden":"true"}))))),!0===t.hasText){let t,i={class:"q-notification__message col"};if(!0===e.html)i.innerHTML=e.caption?`
${e.message}
${e.caption}
`:e.message;else{let a=[e.message];t=e.caption?[n("div",a),n("div",{class:"q-notification__caption"},[e.caption])]:a}a.push(n("div",i,t))}let i=[n("div",{class:t.contentClass},a)];return!0===e.progress&&i.push(n("div",{key:`${t.uid}|p|${t.badge}`,class:t.progressClass,style:t.progressStyle})),void 0!==e.actions&&i.push(n("div",{class:t.actionsClass},e.actions.map((e=>n(An,e))))),t.badge>1&&i.push(n("div",{key:`${t.uid}|${t.badge}`,class:e.meta.badgeClass,style:e.badgeStyle},[t.badge])),n("div",{ref:e=>{Wh[""+t.uid]=e},key:t.uid,class:t.class,...t.attrs},[n("div",{class:t.wrapperClass},i)])})))))))}),t).mount(e)}}};function tp(){let e=()=>null;return{has:()=>!1,hasItem:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:W,setItem:W,remove:W,removeItem:W,clear:W,isEmpty:()=>!0}}function np(e){let t=window[e+"Storage"],n=e=>{let n=t.getItem(e);return n?function(e){if(e.length<9)return e;let t=e.substring(0,8),n=e.substring(9);switch(t){case"__q_date":let t=Number(n);return new Date(!0===Number.isNaN(t)?n:t);case"__q_expr":return new RegExp(n);case"__q_numb":return Number(n);case"__q_bool":return"1"===n;case"__q_strn":return""+n;case"__q_objt":return JSON.parse(n);default:return e}}(n):null},a=e=>null!==t.getItem(e),i=(e,n)=>{t.setItem(e,function(e){return!0===Be(e)?"__q_date|"+e.getTime():!0===Fe(e)?"__q_expr|"+e.source:"number"==typeof e?"__q_numb|"+e:"boolean"==typeof e?"__q_bool|"+(e?"1":"0"):"string"==typeof e?"__q_strn|"+e:"function"==typeof e?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}(n))},r=e=>{t.removeItem(e)};return{has:a,hasItem:a,getLength:()=>t.length,getItem:n,getIndex:e=>ee{let e,a={},i=t.length;for(let r=0;r{let e=[],n=t.length;for(let a=0;a{t.clear()},isEmpty:()=>0===t.length}}var ap=!1===j.has.webStorage?tp():np("local"),ip={install({$q:e}){e.localStorage=ap}};Object.assign(ip,ap);var rp=ip,op=!1===j.has.webStorage?tp():np("session"),sp={install({$q:e}){e.sessionStorage=op}};Object.assign(sp,op);var lp=sp,up={};function cp(e){return void 0!==navigator.clipboard?navigator.clipboard.writeText(e):new Promise(((t,n)=>{let a=function(e){let t=document.createElement("textarea");t.value=e,t.contentEditable="true",t.style.position="fixed";let n=()=>{};La(n),document.body.appendChild(t),t.focus(),t.select();let a=document.execCommand("copy");return t.remove(),Ma(n),a}(e);a?t(!0):n(a)}))}t(up,{EventBus:()=>hp,clone:()=>Xl,colors:()=>Ir,copyToClipboard:()=>cp,createMetaMixin:()=>dp,createUploaderComponent:()=>Zc,date:()=>So,debounce:()=>ae,dom:()=>dn,event:()=>ne,exportFile:()=>fp,extend:()=>_s,format:()=>tt,frameDebounce:()=>Ql,getCssVar:()=>Hd,is:()=>Ve,morph:()=>yd,noop:()=>W,openURL:()=>gp,patterns:()=>Tr,runSequentialPromises:()=>_p,scroll:()=>ya,setCssVar:()=>ue,throttle:()=>hn,uid:()=>Xa});var dp=e=>{let t={activated(){this.__qMeta.active=!0,qh()},deactivated(){this.__qMeta.active=!1,qh()},unmounted(){zh.splice(zh.indexOf(this.__qMeta),1),qh(),this.__qMeta=void 0}};return"function"==typeof e?Object.assign(t,{computed:{__qMetaOptions(){return e.call(this)||{}}},watch:{__qMetaOptions(e){this.__qMeta.val=e,!0===this.__qMeta.active&&qh()}},created(){this.__qMeta={active:!0,val:this.__qMetaOptions},zh.push(this.__qMeta),qh()}}):t.created=function(){this.__qMeta={active:!0,val:e},zh.push(this.__qMeta),qh()},t},hp=class{constructor(){this.__stack={}}on(e,t,n){return(this.__stack[e]||(this.__stack[e]=[])).push({fn:t,ctx:n}),this}once(e,t,n){let a=(...i)=>{this.off(e,a),t.apply(n,i)};return a.__callback=t,this.on(e,a,n)}emit(e){let t=this.__stack[e];if(void 0!==t){let e=[].slice.call(arguments,1);t.forEach((t=>{t.fn.apply(t.ctx,e)}))}return this}off(e,t){let n=this.__stack[e];if(void 0===n)return this;if(void 0===t)return delete this.__stack[e],this;let a=n.filter((e=>e.fn!==t&&e.fn.__callback!==t));return 0!==a.length?this.__stack[e]=a:delete this.__stack[e],this}};function pp(e){setTimeout((()=>{window.URL.revokeObjectURL(e.href)}),1e4),e.remove()}function fp(e,t,n={}){let{mimeType:a,byteOrderMark:i,encoding:r}="string"==typeof n?{mimeType:n}:n,o=void 0!==r?new TextEncoder(r).encode([t]):t,s=new Blob(void 0!==i?[i,o]:[o],{type:a||"application/octet-stream"}),l=document.createElement("a");l.href=window.URL.createObjectURL(s),l.setAttribute("download",e),typeof l.download>"u"&&l.setAttribute("target","_blank"),l.classList.add("hidden"),l.style.position="fixed",document.body.appendChild(l);try{return l.click(),pp(l),!0}catch(e){return pp(l),e}}function mp(e,t,n){let a=window.open;if(!0===F.is.cordova)if(void 0!==cordova&&void 0!==cordova.InAppBrowser&&void 0!==cordova.InAppBrowser.open)a=cordova.InAppBrowser.open;else if(void 0!==navigator&&void 0!==navigator.app)return navigator.app.loadUrl(e,{openExternal:!0});let i=a(e,"_blank",function(e){let t=Object.assign({noopener:!0},e),n=[];for(let e in t){let a=t[e];!0===a?n.push(e):($e(a)||"string"==typeof a&&""!==a)&&n.push(e+"="+a)}return n.join(",")}(n));if(i)return F.is.desktop&&i.focus(),i;t&&t()}var gp=(e,t,n)=>{if(!0!==F.is.ios||void 0===window.SafariViewController)return mp(e,t,n);window.SafariViewController.isAvailable((a=>{a?window.SafariViewController.show({url:e},W,t):mp(e,t,n)}))};function _p(e,{threadsNumber:t=1,abortOnFail:n=!0}={}){let a=-1,i=!1,{isList:r,totalJobs:o,resultAggregator:s,resultKeys:l}=function(e){let t=Array.isArray(e);if(!0===t){let n=e.length;return{isList:t,totalJobs:n,resultAggregator:Array(n).fill(null)}}let n=Object.keys(e),a={};return n.forEach((e=>{a[e]=null})),{isList:t,totalJobs:n.length,resultAggregator:a,resultKeys:n}}(e),u=Array(t).fill(new Promise(((t,u)=>{!function c(){let d=++a;if(!0===i||d>=o)return void t();let h=!0===r?d:l[d];e[h](s).then((e=>{!0!==i?(s[h]={key:h,status:"fulfilled",value:e},setTimeout(c)):t()})).catch((e=>{if(!0===i)return void t();let a={key:h,status:"rejected",reason:e};if(s[h]=a,!0===n)return i=!0,void u({...a,resultAggregator:s});setTimeout(c)}))}()})));return Promise.all(u).then((()=>s))}var vp={};function bp(){let{emit:e,proxy:t}=k(),n=a(null);function i(){n.value.hide()}return Object.assign(t,{show:function(){n.value.show()},hide:i}),{dialogRef:n,onDialogHide:function(){e("hide")},onDialogOK:function(t){e("ok",t),i()},onDialogCancel:i}}t(vp,{useDialogPluginComponent:()=>bp,useFormChild:()=>Os,useHydration:()=>rr,useId:()=>ti,useInterval:()=>xp,useMeta:()=>wp,useQuasar:()=>kp,useRenderCache:()=>bi,useSplitAttrs:()=>hs,useTick:()=>na,useTimeout:()=>aa});var yp=["ok","hide"];function wp(e){{let t={active:!0};if("function"==typeof e){let n=i(e);t.val=n.value,r(n,(e=>{t.val=e,!0===t.active&&qh()}))}else t.val=e;zh.push(t),qh(),h((()=>{t.active=!0,qh()})),p((()=>{t.active=!1,qh()})),_((()=>{zh.splice(zh.indexOf(t),1),qh()}))}}function kp(){return y("_q_")}function xp(){let e=null,t=k();function n(){null!==e&&(clearInterval(e),e=null)}return p(n),g(n),{removeInterval:n,registerInterval(a,i){n(),!1===Wt(t)&&(e=setInterval(a,i))}}}bp.emits=yp,bp.emitsObject=Kc(yp),void 0===window.Vue&&console.error("[ Quasar ] Vue is required to run. Please add a script tag for it before loading Quasar."),window.Quasar={version:"2.17.0",install(e,t){Ge(e,{components:Ye,directives:id,plugins:Ud,...t})},lang:xe,iconSet:Te,...Ye,...id,...Ud,...vp,...up}})(); + */(()=>{var e=Object.defineProperty,t=(t,n)=>{for(var a in n)e(t,a,{get:n[a],enumerable:!0})},{h:n,ref:a,computed:i,watch:r,isRef:o,toRaw:s,unref:l,reactive:u,shallowReactive:c,nextTick:d,onActivated:h,onDeactivated:p,onBeforeMount:f,onMounted:m,onBeforeUnmount:g,onUnmounted:_,onBeforeUpdate:v,onUpdated:b,inject:y,provide:w,getCurrentInstance:k,markRaw:x,Transition:S,TransitionGroup:C,KeepAlive:T,Teleport:E,useSSRContext:P,withDirectives:A,vShow:M,defineComponent:L,createApp:R}=window.Vue;function z(e,t,n,a){return Object.defineProperty(e,t,{get:n,set:a,enumerable:!0}),e}function N(e,t){for(let n in t)z(e,n,t[n]);return e}var O,I=a(!1);var q="ontouchstart"in window||window.navigator.maxTouchPoints>0;var D=navigator.userAgent||navigator.vendor||window.opera,j={userAgent:D,is:function(e){let t=e.toLowerCase(),n=function(e){return/(ipad)/.exec(e)||/(ipod)/.exec(e)||/(windows phone)/.exec(e)||/(iphone)/.exec(e)||/(kindle)/.exec(e)||/(silk)/.exec(e)||/(android)/.exec(e)||/(win)/.exec(e)||/(mac)/.exec(e)||/(linux)/.exec(e)||/(cros)/.exec(e)||/(playbook)/.exec(e)||/(bb)/.exec(e)||/(blackberry)/.exec(e)||[]}(t),a=function(e,t){let n=/(edg|edge|edga|edgios)\/([\w.]+)/.exec(e)||/(opr)[\/]([\w.]+)/.exec(e)||/(vivaldi)[\/]([\w.]+)/.exec(e)||/(chrome|crios)[\/]([\w.]+)/.exec(e)||/(version)(applewebkit)[\/]([\w.]+).*(safari)[\/]([\w.]+)/.exec(e)||/(webkit)[\/]([\w.]+).*(version)[\/]([\w.]+).*(safari)[\/]([\w.]+)/.exec(e)||/(firefox|fxios)[\/]([\w.]+)/.exec(e)||/(webkit)[\/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[\/]([\w.]+)/.exec(e)||[];return{browser:n[5]||n[3]||n[1]||"",version:n[4]||n[2]||"0",platform:t[0]||""}}(t,n),i={mobile:!1,desktop:!1,cordova:!1,capacitor:!1,nativeMobile:!1,electron:!1,bex:!1,linux:!1,mac:!1,win:!1,cros:!1,chrome:!1,firefox:!1,opera:!1,safari:!1,vivaldi:!1,edge:!1,edgeChromium:!1,ie:!1,webkit:!1,android:!1,ios:!1,ipad:!1,iphone:!1,ipod:!1,kindle:!1,winphone:!1,blackberry:!1,playbook:!1,silk:!1};a.browser&&(i[a.browser]=!0,i.version=a.version,i.versionNumber=parseInt(a.version,10)),a.platform&&(i[a.platform]=!0);let r=i.android||i.ios||i.bb||i.blackberry||i.ipad||i.iphone||i.ipod||i.kindle||i.playbook||i.silk||i["windows phone"];if(!0===r||-1!==t.indexOf("mobile")?i.mobile=!0:i.desktop=!0,i["windows phone"]&&(i.winphone=!0,delete i["windows phone"]),i.edga||i.edgios||i.edg?(i.edge=!0,a.browser="edge"):i.crios?(i.chrome=!0,a.browser="chrome"):i.fxios&&(i.firefox=!0,a.browser="firefox"),(i.ipod||i.ipad||i.iphone)&&(i.ios=!0),i.vivaldi&&(a.browser="vivaldi",i.vivaldi=!0),(i.chrome||i.opr||i.safari||i.vivaldi||!0===i.mobile&&!0!==i.ios&&!0!==r)&&(i.webkit=!0),i.opr&&(a.browser="opera",i.opera=!0),i.safari&&(i.blackberry||i.bb?(a.browser="blackberry",i.blackberry=!0):i.playbook?(a.browser="playbook",i.playbook=!0):i.android?(a.browser="android",i.android=!0):i.kindle?(a.browser="kindle",i.kindle=!0):i.silk&&(a.browser="silk",i.silk=!0)),i.name=a.browser,i.platform=a.platform,-1!==t.indexOf("electron"))i.electron=!0;else if(-1!==document.location.href.indexOf("-extension://"))i.bex=!0;else{if(void 0!==window.Capacitor?(i.capacitor=!0,i.nativeMobile=!0,i.nativeMobileWrapper="capacitor"):(void 0!==window._cordovaNative||void 0!==window.cordova)&&(i.cordova=!0,i.nativeMobile=!0,i.nativeMobileWrapper="cordova"),!0===I.value&&(O={is:{...i}}),!0===q&&!0===i.mac&&(!0===i.desktop&&!0===i.safari||!0===i.nativeMobile&&!0!==i.android&&!0!==i.ios&&!0!==i.ipad)){delete i.mac,delete i.desktop;let e=Math.min(window.innerHeight,window.innerWidth)>414?"ipad":"iphone";Object.assign(i,{mobile:!0,ios:!0,platform:e,[e]:!0})}!0!==i.mobile&&window.navigator.userAgentData&&window.navigator.userAgentData.mobile&&(delete i.desktop,i.mobile=!0)}return i}(D),has:{touch:q},within:{iframe:window.self!==window.top}},B={install(e){let{$q:t}=e;!0===I.value?(e.onSSRHydrated.push(()=>{Object.assign(t.platform,j),I.value=!1}),t.platform=u(this)):t.platform=this}};{let e;z(j.has,"webStorage",()=>{if(void 0!==e)return e;try{if(window.localStorage)return e=!0,!0}catch{}return e=!1,!1}),Object.assign(B,j),!0===I.value&&(Object.assign(B,O,{has:{touch:!1,webStorage:!1},within:{iframe:!1}}),O=null)}var F=B;function $(e){return x(L(e))}function V(e){return x(e)}var U=(e,t)=>{let n=u(e);for(let a in e)z(t,a,()=>n[a],e=>{n[a]=e});return t},H={hasPassive:!1,passiveCapture:!0,notPassiveCapture:!0};try{let e=Object.defineProperty({},"passive",{get(){Object.assign(H,{hasPassive:!0,passive:{passive:!0},notPassive:{passive:!1},passiveCapture:{passive:!0,capture:!0},notPassiveCapture:{passive:!1,capture:!0}})}});window.addEventListener("qtest",null,e),window.removeEventListener("qtest",null,e)}catch{}function W(){}function G(e){return 0===e.button}function Y(e){return e.touches&&e.touches[0]?e=e.touches[0]:e.changedTouches&&e.changedTouches[0]?e=e.changedTouches[0]:e.targetTouches&&e.targetTouches[0]&&(e=e.targetTouches[0]),{top:e.clientY,left:e.clientX}}function K(e){if(e.path)return e.path;if(e.composedPath)return e.composedPath();let t=[],n=e.target;for(;n;){if(t.push(n),"HTML"===n.tagName)return t.push(document),t.push(window),t;n=n.parentElement}}function Q(e){e.stopPropagation()}function Z(e){!1!==e.cancelable&&e.preventDefault()}function J(e){!1!==e.cancelable&&e.preventDefault(),e.stopPropagation()}function X(e,t){if(void 0===e||!0===t&&!0===e.__dragPrevented)return;let n=!0===t?e=>{e.__dragPrevented=!0,e.addEventListener("dragstart",Z,H.notPassiveCapture)}:e=>{delete e.__dragPrevented,e.removeEventListener("dragstart",Z,H.notPassiveCapture)};e.querySelectorAll("a, img").forEach(n)}function ee(e,t,n){let a=`__q_${t}_evt`;e[a]=void 0!==e[a]?e[a].concat(n):n,n.forEach(t=>{t[0].addEventListener(t[1],e[t[2]],H[t[3]])})}function te(e,t){let n=`__q_${t}_evt`;void 0!==e[n]&&(e[n].forEach(t=>{t[0].removeEventListener(t[1],e[t[2]],H[t[3]])}),e[n]=void 0)}var ne={listenOpts:H,leftClick:G,middleClick:function(e){return 1===e.button},rightClick:function(e){return 2===e.button},position:Y,getEventPath:K,getMouseWheelDistance:function(e){let t=e.deltaX,n=e.deltaY;if((t||n)&&e.deltaMode){let a=1===e.deltaMode?40:800;t*=a,n*=a}return e.shiftKey&&!t&&([n,t]=[t,n]),{x:t,y:n}},stop:Q,prevent:Z,stopAndPrevent:J,preventDraggable:X};function ae(e,t=250,n){let a=null;function i(){let i=arguments;null!==a?clearTimeout(a):!0===n&&e.apply(this,i),a=setTimeout(()=>{a=null,!0!==n&&e.apply(this,i)},t)}return i.cancel=()=>{null!==a&&clearTimeout(a)},i}var ie=["sm","md","lg","xl"],{passive:re}=H,oe=U({width:0,height:0,name:"xs",sizes:{sm:600,md:1024,lg:1440,xl:1920},lt:{sm:!0,md:!0,lg:!0,xl:!0},gt:{xs:!1,sm:!1,md:!1,lg:!1},xs:!0,sm:!1,md:!1,lg:!1,xl:!1},{setSizes:W,setDebounce:W,install({$q:e,onSSRHydrated:t}){if(e.screen=this,!0===this.__installed)return void(void 0!==e.config.screen&&(!1===e.config.screen.bodyClasses?document.body.classList.remove(`screen--${this.name}`):this.__update(!0)));let{visualViewport:n}=window,a=n||window,i=document.scrollingElement||document.documentElement,r=void 0===n||!0===j.is.mobile?()=>[Math.max(window.innerWidth,i.clientWidth),Math.max(window.innerHeight,i.clientHeight)]:()=>[n.width*n.scale+window.innerWidth-i.clientWidth,n.height*n.scale+window.innerHeight-i.clientHeight],o=!0===e.config.screen?.bodyClasses;this.__update=e=>{let[t,n]=r();if(n!==this.height&&(this.height=n),t!==this.width)this.width=t;else if(!0!==e)return;let a=this.sizes;this.gt.xs=t>=a.sm,this.gt.sm=t>=a.md,this.gt.md=t>=a.lg,this.gt.lg=t>=a.xl,this.lt.sm=t{ie.forEach(t=>{void 0!==e[t]&&(l[t]=e[t])})},this.setDebounce=e=>{u=e};let c=()=>{let e=getComputedStyle(document.body);e.getPropertyValue("--q-size-sm")&&ie.forEach(t=>{this.sizes[t]=parseInt(e.getPropertyValue(`--q-size-${t}`),10)}),this.setSizes=e=>{ie.forEach(t=>{e[t]&&(this.sizes[t]=e[t])}),this.__update(!0)},this.setDebounce=e=>{void 0!==s&&a.removeEventListener("resize",s,re),s=e>0?ae(this.__update,e):this.__update,a.addEventListener("resize",s,re)},this.setDebounce(u),0!==Object.keys(l).length?(this.setSizes(l),l=void 0):this.__update(),!0===o&&"xs"===this.name&&document.body.classList.add("screen--xs")};!0===I.value?t.push(c):c()}}),se=U({isActive:!1,mode:!1},{__media:void 0,set(e){se.mode=e,"auto"===e?(void 0===se.__media&&(se.__media=window.matchMedia("(prefers-color-scheme: dark)"),se.__updateMedia=()=>{se.set("auto")},se.__media.addListener(se.__updateMedia)),e=se.__media.matches):void 0!==se.__media&&(se.__media.removeListener(se.__updateMedia),se.__media=void 0),se.isActive=!0===e,document.body.classList.remove("body--"+(!0===e?"light":"dark")),document.body.classList.add("body--"+(!0===e?"dark":"light"))},toggle(){se.set(!1===se.isActive)},install({$q:e,ssrContext:t}){let n=e.config.dark;e.dark=this,!0!==this.__installed&&this.set(void 0!==n&&n)}}),le=se;function ue(e,t,n=document.body){if("string"!=typeof e)throw new TypeError("Expected a string as propName");if("string"!=typeof t)throw new TypeError("Expected a string as value");if(!(n instanceof Element))throw new TypeError("Expected a DOM element");n.style.setProperty(`--q-${e}`,t)}var ce=!1;function de(e){ce=!0===e.isComposing}function he(e){return!0===ce||e!==Object(e)||!0===e.isComposing||!0===e.qKeyEvent}function pe(e,t){return!0!==he(e)&&[].concat(t).includes(e.keyCode)}function fe(e){return!0===e.ios?"ios":!0===e.android?"android":void 0}var me={install(e){if(!0!==this.__installed){if(!0===I.value)!function(){let{is:e}=j,t=document.body.className,n=new Set(t.replace(/ {2}/g," ").split(" "));if(!0!==e.nativeMobile&&!0!==e.electron&&!0!==e.bex)if(!0===e.desktop)n.delete("mobile"),n.delete("platform-ios"),n.delete("platform-android"),n.add("desktop");else if(!0===e.mobile){n.delete("desktop"),n.add("mobile"),n.delete("platform-ios"),n.delete("platform-android");let t=fe(e);void 0!==t&&n.add(`platform-${t}`)}!0===j.has.touch&&(n.delete("no-touch"),n.add("touch")),!0===j.within.iframe&&n.add("within-iframe");let a=Array.from(n).join(" ");t!==a&&(document.body.className=a)}();else{let{$q:t}=e;void 0!==t.config.brand&&function(e){for(let t in e)ue(t,e[t])}(t.config.brand);let n=function({is:e,has:t,within:n},a){let i=[!0===e.desktop?"desktop":"mobile",(!1===t.touch?"no-":"")+"touch"];if(!0===e.mobile){let t=fe(e);void 0!==t&&i.push("platform-"+t)}if(!0===e.nativeMobile){let t=e.nativeMobileWrapper;i.push(t),i.push("native-mobile"),!0===e.ios&&(void 0===a[t]||!1!==a[t].iosStatusBarPadding)&&i.push("q-ios-padding")}else!0===e.electron?i.push("electron"):!0===e.bex&&i.push("bex");return!0===n.iframe&&i.push("within-iframe"),i}(j,t.config);document.body.classList.add.apply(document.body.classList,n)}!0===j.is.ios&&document.body.addEventListener("touchstart",W),window.addEventListener("keydown",de,!0)}}},ge=()=>!0;function _e(e){return"string"==typeof e&&""!==e&&"/"!==e&&"#/"!==e}function ve(e){return!0===e.startsWith("#")&&(e=e.substring(1)),!1===e.startsWith("/")&&(e="/"+e),!0===e.endsWith("/")&&(e=e.substring(0,e.length-1)),"#"+e}var be={__history:[],add:W,remove:W,install({$q:e}){if(!0===this.__installed)return;let{cordova:t,capacitor:n}=j.is;if(!0!==t&&!0!==n)return;let a=e.config[!0===t?"cordova":"capacitor"];if(!1===a?.backButton||!0===n&&(void 0===window.Capacitor||void 0===window.Capacitor.Plugins.App))return;this.add=e=>{void 0===e.condition&&(e.condition=ge),this.__history.push(e)},this.remove=e=>{let t=this.__history.indexOf(e);t>=0&&this.__history.splice(t,1)};let i=function(e){if(!1===e.backButtonExit)return()=>!1;if("*"===e.backButtonExit)return ge;let t=["#/"];return!0===Array.isArray(e.backButtonExit)&&t.push(...e.backButtonExit.filter(_e).map(ve)),()=>t.includes(window.location.hash)}(Object.assign({backButtonExit:!0},a)),r=()=>{if(this.__history.length){let e=this.__history[this.__history.length-1];!0===e.condition()&&(this.__history.pop(),e.handler())}else!0===i()?navigator.app.exitApp():window.history.back()};!0===t?document.addEventListener("deviceready",()=>{document.addEventListener("backbutton",r,!1)}):window.Capacitor.Plugins.App.addListener("backButton",r)}},ye={isoName:"en-US",nativeName:"English (US)",label:{clear:"Clear",ok:"OK",cancel:"Cancel",close:"Close",set:"Set",select:"Select",reset:"Reset",remove:"Remove",update:"Update",create:"Create",search:"Search",filter:"Filter",refresh:"Refresh",expand:e=>e?`Expand "${e}"`:"Expand",collapse:e=>e?`Collapse "${e}"`:"Collapse"},date:{days:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),daysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),firstDayOfWeek:0,format24h:!1,pluralDay:"days",prevMonth:"Previous month",nextMonth:"Next month",prevYear:"Previous year",nextYear:"Next year",today:"Today",prevRangeYears:e=>`Previous ${e} years`,nextRangeYears:e=>`Next ${e} years`},table:{noData:"No data available",noResults:"No matching records found",loading:"Loading...",selectedRecords:e=>1===e?"1 record selected.":(0===e?"No":e)+" records selected.",recordsPerPage:"Records per page:",allRows:"All",pagination:(e,t,n)=>e+"-"+t+" of "+n,columns:"Columns"},pagination:{first:"First page",prev:"Previous page",next:"Next page",last:"Last page"},editor:{url:"URL",bold:"Bold",italic:"Italic",strikethrough:"Strikethrough",underline:"Underline",unorderedList:"Unordered List",orderedList:"Ordered List",subscript:"Subscript",superscript:"Superscript",hyperlink:"Hyperlink",toggleFullscreen:"Toggle Fullscreen",quote:"Quote",left:"Left align",center:"Center align",right:"Right align",justify:"Justify align",print:"Print",outdent:"Decrease indentation",indent:"Increase indentation",removeFormat:"Remove formatting",formatting:"Formatting",fontSize:"Font Size",align:"Align",hr:"Insert Horizontal Rule",undo:"Undo",redo:"Redo",heading1:"Heading 1",heading2:"Heading 2",heading3:"Heading 3",heading4:"Heading 4",heading5:"Heading 5",heading6:"Heading 6",paragraph:"Paragraph",code:"Code",size1:"Very small",size2:"A bit small",size3:"Normal",size4:"Medium-large",size5:"Big",size6:"Very big",size7:"Maximum",defaultFont:"Default Font",viewSource:"View Source"},tree:{noNodes:"No nodes available",noResults:"No matching nodes found"}};function we(){let e=!0===Array.isArray(navigator.languages)&&0!==navigator.languages.length?navigator.languages[0]:navigator.language;if("string"==typeof e)return e.split(/[-_]/).map((e,t)=>0===t?e.toLowerCase():t>1||e.length<4?e.toUpperCase():e[0].toUpperCase()+e.slice(1).toLowerCase()).join("-")}var ke=U({__qLang:{}},{getLocale:we,set(e=ye,t){let n={...e,rtl:!0===e.rtl,getLocale:we};if(n.set=ke.set,void 0===ke.__langConfig||!0!==ke.__langConfig.noHtmlAttrs){let e=document.documentElement;e.setAttribute("dir",!0===n.rtl?"rtl":"ltr"),e.setAttribute("lang",n.isoName)}Object.assign(ke.__qLang,n)},install({$q:e,lang:t,ssrContext:n}){e.lang=ke.__qLang,ke.__langConfig=e.config.lang,!0===this.__installed?void 0!==t&&this.set(t):(this.props=new Proxy(this.__qLang,{get(){return Reflect.get(...arguments)},ownKeys:e=>Reflect.ownKeys(e).filter(e=>"set"!==e&&"getLocale"!==e)}),this.set(t||ye))}}),xe=ke,Se={name:"material-icons",type:{positive:"check_circle",negative:"warning",info:"info",warning:"priority_high"},arrow:{up:"arrow_upward",right:"arrow_forward",down:"arrow_downward",left:"arrow_back",dropdown:"arrow_drop_down"},chevron:{left:"chevron_left",right:"chevron_right"},colorPicker:{spectrum:"gradient",tune:"tune",palette:"style"},pullToRefresh:{icon:"refresh"},carousel:{left:"chevron_left",right:"chevron_right",up:"keyboard_arrow_up",down:"keyboard_arrow_down",navigationIcon:"lens"},chip:{remove:"cancel",selected:"check"},datetime:{arrowLeft:"chevron_left",arrowRight:"chevron_right",now:"access_time",today:"today"},editor:{bold:"format_bold",italic:"format_italic",strikethrough:"strikethrough_s",underline:"format_underlined",unorderedList:"format_list_bulleted",orderedList:"format_list_numbered",subscript:"vertical_align_bottom",superscript:"vertical_align_top",hyperlink:"link",toggleFullscreen:"fullscreen",quote:"format_quote",left:"format_align_left",center:"format_align_center",right:"format_align_right",justify:"format_align_justify",print:"print",outdent:"format_indent_decrease",indent:"format_indent_increase",removeFormat:"format_clear",formatting:"text_format",fontSize:"format_size",align:"format_align_left",hr:"remove",undo:"undo",redo:"redo",heading:"format_size",code:"code",size:"format_size",font:"font_download",viewSource:"code"},expansionItem:{icon:"keyboard_arrow_down",denseIcon:"arrow_drop_down"},fab:{icon:"add",activeIcon:"close"},field:{clear:"cancel",error:"error"},pagination:{first:"first_page",prev:"keyboard_arrow_left",next:"keyboard_arrow_right",last:"last_page"},rating:{icon:"grade"},stepper:{done:"check",active:"edit",error:"warning"},tabs:{left:"chevron_left",right:"chevron_right",up:"keyboard_arrow_up",down:"keyboard_arrow_down"},table:{arrowUp:"arrow_upward",warning:"warning",firstPage:"first_page",prevPage:"chevron_left",nextPage:"chevron_right",lastPage:"last_page"},tree:{icon:"play_arrow"},uploader:{done:"done",clear:"clear",add:"add_box",upload:"cloud_upload",removeQueue:"clear_all",removeUploaded:"done_all"}},Ce=U({iconMapFn:null,__qIconSet:{}},{set(e,t){let n={...e};n.set=Ce.set,Object.assign(Ce.__qIconSet,n)},install({$q:e,iconSet:t,ssrContext:n}){void 0!==e.config.iconMapFn&&(this.iconMapFn=e.config.iconMapFn),e.iconSet=this.__qIconSet,z(e,"iconMapFn",()=>this.iconMapFn,e=>{this.iconMapFn=e}),!0===this.__installed?void 0!==t&&this.set(t):(this.props=new Proxy(this.__qIconSet,{get(){return Reflect.get(...arguments)},ownKeys:e=>Reflect.ownKeys(e).filter(e=>"set"!==e)}),this.set(t||Se))}}),Te=Ce,Ee="_q_t_",Pe="_q_s_",Ae="_q_l_",Me="_q_pc_",Le="_q_f_",Re="_q_fo_",ze="_q_tabs_",Ne="_q_u_";function Oe(){}var Ie={},qe=!1;function De(e,t){if(e===t)return!0;if(null!==e&&null!==t&&"object"==typeof e&&"object"==typeof t){if(e.constructor!==t.constructor)return!1;let n,a;if(e.constructor===Array){if(n=e.length,n!==t.length)return!1;for(a=n;0!==a--;)if(!0!==De(e[a],t[a]))return!1;return!0}if(e.constructor===Map){if(e.size!==t.size)return!1;let n=e.entries();for(a=n.next();!0!==a.done;){if(!0!==t.has(a.value[0]))return!1;a=n.next()}for(n=e.entries(),a=n.next();!0!==a.done;){if(!0!==De(a.value[1],t.get(a.value[0])))return!1;a=n.next()}return!0}if(e.constructor===Set){if(e.size!==t.size)return!1;let n=e.entries();for(a=n.next();!0!==a.done;){if(!0!==t.has(a.value[0]))return!1;a=n.next()}return!0}if(null!=e.buffer&&e.buffer.constructor===ArrayBuffer){if(n=e.length,n!==t.length)return!1;for(a=n;0!==a--;)if(e[a]!==t[a])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();let i=Object.keys(e).filter(t=>void 0!==e[t]);if(n=i.length,n!==Object.keys(t).filter(e=>void 0!==t[e]).length)return!1;for(a=n;0!==a--;){let n=i[a];if(!0!==De(e[n],t[n]))return!1}return!0}return e!=e&&t!=t}function je(e){return null!==e&&"object"==typeof e&&!0!==Array.isArray(e)}function Be(e){return"[object Date]"===Object.prototype.toString.call(e)}function Fe(e){return"[object RegExp]"===Object.prototype.toString.call(e)}function $e(e){return"number"==typeof e&&isFinite(e)}var Ve={deepEqual:De,object:je,date:Be,regexp:Fe,number:$e},Ue=[F,me,le,oe,be,xe,Te];function He(e,t){let n=R(e);n.config.globalProperties=t.config.globalProperties;let{reload:a,...i}=t._context;return Object.assign(n._context,i),n}function We(e,t){t.forEach(t=>{t.install(e),t.__installed=!0})}var Ge=function(e,t={}){let n={version:"2.18.6"};!1===qe?(void 0!==t.config&&Object.assign(Ie,t.config),n.config={...Ie},qe=!0):n.config=t.config||{},function(e,t,n){e.config.globalProperties.$q=n.$q,e.provide("_q_",n.$q),We(n,Ue),void 0!==t.components&&Object.values(t.components).forEach(t=>{!0===je(t)&&void 0!==t.name&&e.component(t.name,t)}),void 0!==t.directives&&Object.values(t.directives).forEach(t=>{!0===je(t)&&void 0!==t.name&&e.directive(t.name,t)}),void 0!==t.plugins&&We(n,Object.values(t.plugins).filter(e=>"function"==typeof e.install&&!1===Ue.includes(e))),!0===I.value&&(n.$q.onSSRHydrated=()=>{n.onSSRHydrated.forEach(e=>{e()}),n.$q.onSSRHydrated=()=>{}})}(e,t,{parentApp:e,$q:n,lang:t.lang,iconSet:t.iconSet,onSSRHydrated:[]})},Ye={};t(Ye,{QAjaxBar:()=>st,QAvatar:()=>Lt,QBadge:()=>zt,QBanner:()=>It,QBar:()=>qt,QBreadcrumbs:()=>Yt,QBreadcrumbsEl:()=>nn,QBtn:()=>An,QBtnDropdown:()=>ni,QBtnGroup:()=>Mn,QBtnToggle:()=>si,QCard:()=>li,QCardActions:()=>ci,QCardSection:()=>ui,QCarousel:()=>Mi,QCarouselControl:()=>Ri,QCarouselSlide:()=>Li,QChatMessage:()=>zi,QCheckbox:()=>ji,QChip:()=>Fi,QCircularProgress:()=>Hi,QColor:()=>qr,QDate:()=>Ao,QDialog:()=>Ko,QDrawer:()=>Qo,QEditor:()=>gs,QExpansionItem:()=>Ss,QFab:()=>Ms,QFabAction:()=>zs,QField:()=>Vs,QFile:()=>Qs,QFooter:()=>Zs,QForm:()=>Js,QFormChildMixin:()=>Xs,QHeader:()=>el,QIcon:()=>Mt,QImg:()=>al,QInfiniteScroll:()=>rl,QInnerLoading:()=>ol,QInput:()=>kl,QIntersection:()=>El,QItem:()=>as,QItemLabel:()=>_s,QItemSection:()=>is,QKnob:()=>Rl,QLayout:()=>Il,QLinearProgress:()=>lu,QList:()=>Al,QMarkupTable:()=>Dl,QMenu:()=>Ya,QNoSsr:()=>jl,QOptionGroup:()=>Hl,QPage:()=>Wl,QPageContainer:()=>Gl,QPageScroller:()=>Ql,QPageSticky:()=>Zl,QPagination:()=>Xl,QParallax:()=>nu,QPopupEdit:()=>iu,QPopupProxy:()=>ru,QPullToRefresh:()=>cu,QRadio:()=>Bl,QRange:()=>fu,QRating:()=>mu,QResizeObserver:()=>lr,QResponsive:()=>gu,QRouteTab:()=>Bc,QScrollArea:()=>ku,QScrollObserver:()=>Ol,QSelect:()=>Du,QSeparator:()=>ws,QSkeleton:()=>Fu,QSlideItem:()=>Vu,QSlideTransition:()=>vs,QSlider:()=>ar,QSpace:()=>Uu,QSpinner:()=>on,QSpinnerAudio:()=>Hu,QSpinnerBall:()=>Wu,QSpinnerBars:()=>Gu,QSpinnerBox:()=>Yu,QSpinnerClock:()=>Ku,QSpinnerComment:()=>Qu,QSpinnerCube:()=>Zu,QSpinnerDots:()=>Ju,QSpinnerFacebook:()=>Xu,QSpinnerGears:()=>ec,QSpinnerGrid:()=>tc,QSpinnerHearts:()=>nc,QSpinnerHourglass:()=>ac,QSpinnerInfinity:()=>ic,QSpinnerIos:()=>rc,QSpinnerOrbit:()=>oc,QSpinnerOval:()=>sc,QSpinnerPie:()=>lc,QSpinnerPuff:()=>uc,QSpinnerRadio:()=>cc,QSpinnerRings:()=>dc,QSpinnerTail:()=>hc,QSplitter:()=>pc,QStep:()=>_c,QStepper:()=>bc,QStepperNavigation:()=>yc,QTab:()=>gr,QTabPanel:()=>vr,QTabPanels:()=>_r,QTable:()=>qc,QTabs:()=>dr,QTd:()=>jc,QTh:()=>wc,QTime:()=>$c,QTimeline:()=>Vc,QTimelineEntry:()=>Uc,QToggle:()=>Fl,QToolbar:()=>Hc,QToolbarTitle:()=>Wc,QTooltip:()=>ns,QTr:()=>Dc,QTree:()=>Yc,QUploader:()=>rd,QUploaderAddTrigger:()=>od,QVideo:()=>sd,QVirtualScroll:()=>Cc});var Ke=["B","KB","MB","GB","TB","PB"];function Qe(e,t=1){let n=0;for(;parseInt(e,10)>=1024&&n=t?a:new Array(t-a.length+1).join(n)+a}var tt={humanStorageSize:Qe,capitalize:Ze,between:Je,normalizeToInterval:Xe,pad:et},nt=XMLHttpRequest,at=nt.prototype.open,it=["top","right","bottom","left"],rt=[],ot=0;var st=$({name:"QAjaxBar",props:{position:{type:String,default:"top",validator:e=>it.includes(e)},size:{type:String,default:"2px"},color:String,skipHijack:Boolean,reverse:Boolean,hijackFilter:Function},emits:["start","stop"],setup(e,{emit:t}){let r,o,{proxy:s}=k(),l=a(0),u=a(!1),c=a(!0),d=0,h=null,p=i(()=>`q-loading-bar q-loading-bar--${e.position}`+(void 0!==e.color?` bg-${e.color}`:"")+(!0===c.value?"":" no-transition")),f=i(()=>"top"===e.position||"bottom"===e.position),_=i(()=>!0===f.value?"height":"width"),v=i(()=>{let t=u.value,n=function({p:e,pos:t,active:n,horiz:a,reverse:i,dir:r}){let o=1,s=1;return!0===a?(!0===i&&(o=-1),"bottom"===t&&(s=-1),{transform:`translate3d(${o*(e-100)}%,${n?0:-200*s}%,0)`}):(!0===i&&(s=-1),"right"===t&&(o=-1),{transform:`translate3d(${n?0:r*o*-200}%,${s*(e-100)}%,0)`})}({p:l.value,pos:e.position,active:t,horiz:f.value,reverse:!0===s.$q.lang.rtl&&["top","bottom"].includes(e.position)?!1===e.reverse:e.reverse,dir:!0===s.$q.lang.rtl?-1:1});return n[_.value]=e.size,n.opacity=t?1:0,n}),b=i(()=>!0===u.value?{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":l.value}:{"aria-hidden":"true"});function y(e=300){let n=r;return r=Math.max(0,e)||0,d++,d>1?(0===n&&e>0?S():null!==h&&n>0&&e<=0&&(clearTimeout(h),h=null),d):(null!==h&&clearTimeout(h),t("start"),l.value=0,h=setTimeout(()=>{h=null,c.value=!0,e>0&&S()},!0===u._value?500:1),!0!==u._value&&(u.value=!0,c.value=!1),d)}function w(e){return d>0&&(l.value=function(e,t){return"number"!=typeof t&&(t=e<25?3*Math.random()+3:e<65?3*Math.random():e<85?2*Math.random():e<99?.6:0),Je(e+t,0,100)}(l.value,e)),d}function x(){if(d=Math.max(0,d-1),d>0)return d;null!==h&&(clearTimeout(h),h=null),t("stop");let e=()=>{c.value=!0,l.value=100,h=setTimeout(()=>{h=null,u.value=!1},1e3)};return 0===l.value?h=setTimeout(e,1):e(),d}function S(){l.value<100&&(h=setTimeout(()=>{h=null,w(),S()},r))}return m(()=>{!0!==e.skipHijack&&(o=!0,function(e){ot++,rt.push(e),!(ot>1)&&(nt.prototype.open=function(e,t){let n=[];this.addEventListener("loadstart",()=>{rt.forEach(e=>{(null===e.hijackFilter.value||!0===e.hijackFilter.value(t))&&(e.start(),n.push(e.stop))})},{once:!0}),this.addEventListener("loadend",()=>{n.forEach(e=>{e()})},{once:!0}),at.apply(this,arguments)})}({start:y,stop:x,hijackFilter:i(()=>e.hijackFilter||null)}))}),g(()=>{null!==h&&clearTimeout(h),!0===o&&function(e){rt=rt.filter(t=>t.start!==e),0===(ot=Math.max(0,ot-1))&&(nt.prototype.open=at)}(y)}),Object.assign(s,{start:y,stop:x,increment:w}),()=>n("div",{class:p.value,style:v.value,...b.value})}}),lt={xs:18,sm:24,md:32,lg:38,xl:46},ut={size:String};function ct(e,t=lt){return i(()=>void 0!==e.size?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}function dt(e,t){return void 0!==e&&e()||t}function ht(e,t){if(void 0!==e){let t=e();if(null!=t)return t.slice()}return t}function pt(e,t){return void 0!==e?t.concat(e()):t}function ft(e,t){return void 0===e?t:void 0!==t?t.concat(e()):e()}function mt(e,t,a,i,r,o){t.key=i+r;let s=n(e,t,a);return!0===r?A(s,o()):s}var gt="0 0 24 24",_t=e=>e,vt=e=>`ionicons ${e}`,bt={"mdi-":e=>`mdi ${e}`,"icon-":_t,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":vt,"ion-ios":vt,"ion-logo":vt,"iconfont ":_t,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`,"i-":_t},yt={o_:"-outlined",r_:"-round",s_:"-sharp"},wt={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},kt=new RegExp("^("+Object.keys(bt).join("|")+")"),xt=new RegExp("^("+Object.keys(yt).join("|")+")"),St=new RegExp("^("+Object.keys(wt).join("|")+")"),Ct=/^[Mm]\s?[-+]?\.?\d/,Tt=/^img:/,Et=/^svguse:/,Pt=/^ion-/,At=/^(fa-(classic|sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /,Mt=$({name:"QIcon",props:{...ut,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=ct(e),o=i(()=>"q-icon"+(!0===e.left?" on-left":"")+(!0===e.right?" on-right":"")+(void 0!==e.color?` text-${e.color}`:"")),s=i(()=>{let t,i=e.name;if("none"===i||!i)return{none:!0};if(null!==a.iconMapFn){let e=a.iconMapFn(i);if(void 0!==e){if(void 0===e.icon)return{cls:e.cls,content:void 0!==e.content?e.content:" "};if(i=e.icon,"none"===i||!i)return{none:!0}}}if(!0===Ct.test(i)){let[e,t=gt]=i.split("|");return{svg:!0,viewBox:t,nodes:e.split("&&").map(e=>{let[t,a,i]=e.split("@@");return n("path",{style:a,d:t,transform:i})})}}if(!0===Tt.test(i))return{img:!0,src:i.substring(4)};if(!0===Et.test(i)){let[e,t=gt]=i.split("|");return{svguse:!0,src:e.substring(7),viewBox:t}}let r=" ",o=i.match(kt);if(null!==o)t=bt[o[1]](i);else if(!0===At.test(i))t=i;else if(!0===Pt.test(i))t=`ionicons ion-${!0===a.platform.is.ios?"ios":"md"}${i.substring(3)}`;else if(!0===St.test(i)){t="notranslate material-symbols";let e=i.match(St);null!==e&&(i=i.substring(6),t+=wt[e[1]]),r=i}else{t="notranslate material-icons";let e=i.match(xt);null!==e&&(i=i.substring(2),t+=yt[e[1]]),r=i}return{cls:t,content:r}});return()=>{let a={class:o.value,style:r.value,"aria-hidden":"true"};return!0===s.value.none?n(e.tag,a,dt(t.default)):!0===s.value.img?n(e.tag,a,pt(t.default,[n("img",{src:s.value.src})])):!0===s.value.svg?n(e.tag,a,pt(t.default,[n("svg",{viewBox:s.value.viewBox||"0 0 24 24"},s.value.nodes)])):!0===s.value.svguse?n(e.tag,a,pt(t.default,[n("svg",{viewBox:s.value.viewBox},[n("use",{"xlink:href":s.value.src})])])):(void 0!==s.value.cls&&(a.class+=" "+s.value.cls),n(e.tag,a,pt(t.default,[s.value.content])))}}}),Lt=$({name:"QAvatar",props:{...ut,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){let a=ct(e),r=i(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(!0===e.square?" q-avatar--square":!0===e.rounded?" rounded-borders":"")),o=i(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{let i=void 0!==e.icon?[n(Mt,{name:e.icon})]:void 0;return n("div",{class:r.value,style:a.value},[n("div",{class:"q-avatar__content row flex-center overflow-hidden",style:o.value},ft(t.default,i))])}}}),Rt=["top","middle","bottom"],zt=$({name:"QBadge",props:{color:String,textColor:String,floating:Boolean,transparent:Boolean,multiLine:Boolean,outline:Boolean,rounded:Boolean,label:[Number,String],align:{type:String,validator:e=>Rt.includes(e)}},setup(e,{slots:t}){let a=i(()=>void 0!==e.align?{verticalAlign:e.align}:null),r=i(()=>{let t=!0===e.outline&&e.color||e.textColor;return`q-badge flex inline items-center no-wrap q-badge--${!0===e.multiLine?"multi":"single"}-line`+(!0===e.outline?" q-badge--outline":void 0!==e.color?` bg-${e.color}`:"")+(void 0!==t?` text-${t}`:"")+(!0===e.floating?" q-badge--floating":"")+(!0===e.rounded?" q-badge--rounded":"")+(!0===e.transparent?" q-badge--transparent":"")});return()=>n("div",{class:r.value,style:a.value,role:"status","aria-label":e.label},pt(t.default,void 0!==e.label?[e.label]:[]))}}),Nt={dark:{type:Boolean,default:null}};function Ot(e,t){return i(()=>null===e.dark?t.dark.isActive:e.dark)}var It=$({name:"QBanner",props:{...Nt,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=Ot(e,a),o=i(()=>"q-banner row items-center"+(!0===e.dense?" q-banner--dense":"")+(!0===r.value?" q-banner--dark q-dark":"")+(!0===e.rounded?" rounded-borders":"")),s=i(()=>"q-banner__actions row items-center justify-end col-"+(!0===e.inlineActions?"auto":"all"));return()=>{let a=[n("div",{class:"q-banner__avatar col-auto row items-center self-start"},dt(t.avatar)),n("div",{class:"q-banner__content col text-body2"},dt(t.default))],i=dt(t.action);return void 0!==i&&a.push(n("div",{class:s.value},i)),n("div",{class:o.value+(!1===e.inlineActions&&void 0!==i?" q-banner--top-padding":""),role:"alert"},a)}}}),qt=$({name:"QBar",props:{...Nt,dense:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=Ot(e,a),o=i(()=>`q-bar row no-wrap items-center q-bar--${!0===e.dense?"dense":"standard"} q-bar--${!0===r.value?"dark":"light"}`);return()=>n("div",{class:o.value,role:"toolbar"},dt(t.default))}}),Dt={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},jt=Object.keys(Dt),Bt={align:{type:String,validator:e=>jt.includes(e)}};function Ft(e){return i(()=>{let t=void 0===e.align?!0===e.vertical?"stretch":"left":e.align;return`${!0===e.vertical?"items":"justify"}-${Dt[t]}`})}function $t(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Vt(e,t){"symbol"==typeof t.type?!0===Array.isArray(t.children)&&t.children.forEach(t=>{Vt(e,t)}):e.add(t)}function Ut(e){let t=new Set;return e.forEach(e=>{Vt(t,e)}),Array.from(t)}function Ht(e){return void 0!==e.appContext.config.globalProperties.$router}function Wt(e){return!0===e.isUnmounted||!0===e.isDeactivated}var Gt=["",!0],Yt=$({name:"QBreadcrumbs",props:{...Bt,separator:{type:String,default:"/"},separatorColor:String,activeColor:{type:String,default:"primary"},gutter:{type:String,validator:e=>["none","xs","sm","md","lg","xl"].includes(e),default:"sm"}},setup(e,{slots:t}){let a=Ft(e),r=i(()=>`flex items-center ${a.value}${"none"===e.gutter?"":` q-gutter-${e.gutter}`}`),o=i(()=>e.separatorColor?` text-${e.separatorColor}`:""),s=i(()=>` text-${e.activeColor}`);return()=>{if(void 0===t.default)return;let a=Ut(dt(t.default));if(0===a.length)return;let i=1,l=[],u=a.filter(e=>"QBreadcrumbsEl"===e.type?.name).length,c=void 0!==t.separator?t.separator:()=>e.separator;return a.forEach(e=>{if("QBreadcrumbsEl"===e.type?.name){let t=ie===t[n]):1===e.length&&e[0]===t}function Jt(e,t){return!0===Array.isArray(e)?Zt(e,t):!0===Array.isArray(t)?Zt(t,e):e===t}var Xt={to:[String,Object],replace:Boolean,href:String,target:String,disable:Boolean},en={...Xt,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"}};function tn({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){let n=k(),{props:a,proxy:r,emit:o}=n,s=Ht(n),l=i(()=>!0!==a.disable&&void 0!==a.href),u=i(!0===t?()=>!0===s&&!0!==a.disable&&!0!==l.value&&void 0!==a.to&&null!==a.to&&""!==a.to:()=>!0===s&&!0!==l.value&&void 0!==a.to&&null!==a.to&&""!==a.to),c=i(()=>!0===u.value?b(a.to):null),d=i(()=>null!==c.value),h=i(()=>!0===l.value||!0===d.value),p=i(()=>"a"===a.type||!0===h.value?"a":a.tag||e||"div"),f=i(()=>!0===l.value?{href:a.href,target:a.target}:!0===d.value?{href:c.value.href,target:a.target}:{}),m=i(()=>{if(!1===d.value)return-1;let{matched:e}=c.value,{length:t}=e,n=e[t-1];if(void 0===n)return-1;let a=r.$route.matched;if(0===a.length)return-1;let i=a.findIndex(Qt.bind(null,n));if(-1!==i)return i;let o=Kt(e[t-2]);return t>1&&Kt(n)===o&&a[a.length-1].path!==o?a.findIndex(Qt.bind(null,e[t-2])):i}),g=i(()=>!0===d.value&&-1!==m.value&&function(e,t){for(let n in t){let a=t[n],i=e[n];if("string"==typeof a){if(a!==i)return!1}else if(!1===Array.isArray(i)||i.length!==a.length||a.some((e,t)=>e!==i[t]))return!1}return!0}(r.$route.params,c.value.params)),_=i(()=>!0===g.value&&m.value===r.$route.matched.length-1&&function(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(!1===Jt(e[n],t[n]))return!1;return!0}(r.$route.params,c.value.params)),v=i(()=>!0===d.value?!0===_.value?` ${a.exactActiveClass} ${a.activeClass}`:!0===a.exact?"":!0===g.value?` ${a.activeClass}`:"":"");function b(e){try{return r.$router.resolve(e)}catch{}return null}function y(e,{returnRouterError:t,to:n=a.to,replace:i=a.replace}={}){if(!0===a.disable)return e.preventDefault(),Promise.resolve(!1);if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey||void 0!==e.button&&0!==e.button||"_blank"===a.target)return Promise.resolve(!1);e.preventDefault();let o=r.$router[!0===i?"replace":"push"](n);return!0===t?o:o.then(()=>{}).catch(()=>{})}return{hasRouterLink:d,hasHrefLink:l,hasLink:h,linkTag:p,resolvedLink:c,linkIsActive:g,linkIsExactActive:_,linkClass:v,linkAttrs:f,getLink:b,navigateToRouterLink:y,navigateOnClick:function(e){if(!0===d.value){let t=t=>y(e,t);o("click",e,t),!0!==e.defaultPrevented&&t()}else o("click",e)}}}var nn=$({name:"QBreadcrumbsEl",props:{...en,label:String,icon:String,tag:{type:String,default:"span"}},emits:["click"],setup(e,{slots:t}){let{linkTag:a,linkAttrs:r,linkClass:o,navigateOnClick:s}=tn(),l=i(()=>({class:"q-breadcrumbs__el q-link flex inline items-center relative-position "+(!0!==e.disable?"q-link--focusable"+o.value:"q-breadcrumbs__el--disable"),...r.value,onClick:s})),u=i(()=>"q-breadcrumbs__el-icon"+(void 0!==e.label?" q-breadcrumbs__el-icon--with-label":""));return()=>{let i=[];return void 0!==e.icon&&i.push(n(Mt,{class:u.value,name:e.icon})),void 0!==e.label&&i.push(e.label),n(a.value,{...l.value},pt(t.default,i))}}}),an={size:{type:[String,Number],default:"1em"},color:String};function rn(e){return{cSize:i(()=>e.size in lt?`${lt[e.size]}px`:e.size),classes:i(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var on=$({name:"QSpinner",props:{...an,thickness:{type:Number,default:5}},setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[n("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function sn(e){if(e===window)return{top:0,left:0};let{top:t,left:n}=e.getBoundingClientRect();return{top:t,left:n}}function ln(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function un(e,t){let n=e.style;for(let e in t)n[e]=t[e]}function cn(e,t){if(null==e||!0===e.contains(t))return!0;for(let n=e.nextElementSibling;null!==n;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}var dn={offset:sn,style:function(e,t){return window.getComputedStyle(e).getPropertyValue(t)},height:ln,width:function(e){return e===window?window.innerWidth:e.getBoundingClientRect().width},css:un,cssBatch:function(e,t){e.forEach(e=>un(e,t))},ready:function(e){if("function"==typeof e){if("loading"!==document.readyState)return e();document.addEventListener("DOMContentLoaded",e,!1)}}};function hn(e,t=250){let n,a=!1;return function(){return!1===a&&(a=!0,setTimeout(()=>{a=!1},t),n=e.apply(this,arguments)),n}}function pn(e,t,n,a){!0===n.modifiers.stop&&Q(e);let i=n.modifiers.color,r=n.modifiers.center;r=!0===r||!0===a;let o=document.createElement("span"),s=document.createElement("span"),l=Y(e),{left:u,top:c,width:d,height:h}=t.getBoundingClientRect(),p=Math.sqrt(d*d+h*h),f=p/2,m=(d-p)/2+"px",g=r?m:l.left-u-f+"px",_=(h-p)/2+"px",v=r?_:l.top-c-f+"px";s.className="q-ripple__inner",un(s,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${g},${v},0) scale3d(.2,.2,1)`,opacity:0}),o.className="q-ripple"+(i?" text-"+i:""),o.setAttribute("dir","ltr"),o.appendChild(s),t.appendChild(o);let b=()=>{o.remove(),clearTimeout(y)};n.abort.push(b);let y=setTimeout(()=>{s.classList.add("q-ripple__inner--enter"),s.style.transform=`translate3d(${m},${_},0) scale3d(1,1,1)`,s.style.opacity=.2,y=setTimeout(()=>{s.classList.remove("q-ripple__inner--enter"),s.classList.add("q-ripple__inner--leave"),s.style.opacity=0,y=setTimeout(()=>{o.remove(),n.abort.splice(n.abort.indexOf(b),1)},275)},250)},50)}function fn(e,{modifiers:t,value:n,arg:a}){let i=Object.assign({},e.cfg.ripple,t,n);e.modifiers={early:!0===i.early,stop:!0===i.stop,center:!0===i.center,color:i.color||a,keyCodes:[].concat(i.keyCodes||13)}}var mn=V({name:"ripple",beforeMount(e,t){let n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(!1===n.ripple)return;let a={cfg:n,enabled:!1!==t.value,modifiers:{},abort:[],start(t){!0===a.enabled&&!0!==t.qSkipRipple&&t.type===(!0===a.modifiers.early?"pointerdown":"click")&&pn(t,e,a,!0===t.qKeyEvent)},keystart:hn(t=>{!0===a.enabled&&!0!==t.qSkipRipple&&!0===pe(t,a.modifiers.keyCodes)&&t.type==="key"+(!0===a.modifiers.early?"down":"up")&&pn(t,e,a,!0)},300)};fn(a,t),e.__qripple=a,ee(a,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){let n=e.__qripple;void 0!==n&&(n.enabled=!1!==t.value,!0===n.enabled&&Object(t.value)===t.value&&fn(n,t))}},beforeUnmount(e){let t=e.__qripple;void 0!==t&&(t.abort.forEach(e=>{e()}),te(t,"main"),delete e._qripple)}}),gn={none:0,xs:4,sm:8,md:16,lg:24,xl:32},_n={xs:8,sm:10,md:14,lg:20,xl:24},vn=["button","submit","reset"],bn=/[^\s]\/[^\s]/,yn=["flat","outline","push","unelevated"];function wn(e,t){return!0===e.flat?"flat":!0===e.outline?"outline":!0===e.push?"push":!0===e.unelevated?"unelevated":t}function kn(e){let t=wn(e);return void 0!==t?{[t]:!0}:{}}var xn={...ut,...Xt,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...yn.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Bt.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean},Sn={...xn,round:Boolean};var{passiveCapture:Cn}=H,Tn=null,En=null,Pn=null,An=$({name:"QBtn",props:{...Sn,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:r}){let o,{proxy:s}=k(),{classes:l,style:u,innerClasses:c,attributes:d,hasLink:h,linkTag:p,navigateOnClick:f,isActionable:m}=function(e){let t=ct(e,_n),n=Ft(e),{hasRouterLink:a,hasLink:r,linkTag:o,linkAttrs:s,navigateOnClick:l}=tn({fallbackTag:"button"}),u=i(()=>{let n=!1===e.fab&&!1===e.fabMini?t.value:{};return void 0!==e.padding?Object.assign({},n,{padding:e.padding.split(/\s+/).map(e=>e in gn?gn[e]+"px":e).join(" "),minWidth:"0",minHeight:"0"}):n}),c=i(()=>!0===e.rounded||!0===e.fab||!0===e.fabMini),d=i(()=>!0!==e.disable&&!0!==e.loading),h=i(()=>!0===d.value?e.tabindex||0:-1),p=i(()=>wn(e,"standard")),f=i(()=>{let t={tabindex:h.value};return!0===r.value?Object.assign(t,s.value):!0===vn.includes(e.type)&&(t.type=e.type),"a"===o.value?(!0===e.disable?t["aria-disabled"]="true":void 0===t.href&&(t.role="button"),!0!==a.value&&!0===bn.test(e.type)&&(t.type=e.type)):!0===e.disable&&(t.disabled="",t["aria-disabled"]="true"),!0===e.loading&&void 0!==e.percentage&&Object.assign(t,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),t});return{classes:i(()=>{let t;void 0!==e.color?t=!0===e.flat||!0===e.outline?`text-${e.textColor||e.color}`:`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(t=`text-${e.textColor}`);let n=!0===e.round?"round":"rectangle"+(!0===c.value?" q-btn--rounded":!0===e.square?" q-btn--square":"");return`q-btn--${p.value} q-btn--${n}`+(void 0!==t?" "+t:"")+(!0===d.value?" q-btn--actionable q-focusable q-hoverable":!0===e.disable?" disabled":"")+(!0===e.fab?" q-btn--fab":!0===e.fabMini?" q-btn--fab-mini":"")+(!0===e.noCaps?" q-btn--no-uppercase":"")+(!0===e.dense?" q-btn--dense":"")+(!0===e.stretch?" no-border-radius self-stretch":"")+(!0===e.glossy?" glossy":"")+(e.square?" q-btn--square":"")}),style:u,innerClasses:i(()=>n.value+(!0===e.stack?" column":" row")+(!0===e.noWrap?" no-wrap text-no-wrap":"")+(!0===e.loading?" q-btn__content--hidden":"")),attributes:f,hasLink:r,linkTag:o,navigateOnClick:l,isActionable:d}}(e),_=a(null),v=a(null),b=null,y=null,w=i(()=>void 0!==e.label&&null!==e.label&&""!==e.label),x=i(()=>!0!==e.disable&&!1!==e.ripple&&{keyCodes:!0===h.value?[13,32]:[13],...!0===e.ripple?{}:e.ripple}),C=i(()=>({center:e.round})),T=i(()=>{let t=Math.max(0,Math.min(100,e.percentage));return t>0?{transition:"transform 0.6s",transform:`translateX(${t-100}%)`}:{}}),E=i(()=>{if(!0===e.loading)return{onMousedown:I,onTouchstart:I,onClick:I,onKeydown:I,onKeyup:I};if(!0===m.value){let t={onClick:M,onKeydown:L,onMousedown:z};if(!0===s.$q.platform.has.touch){t[`onTouchstart${void 0!==e.onTouchstart?"":"Passive"}`]=R}return t}return{onClick:J}}),P=i(()=>({ref:_,class:"q-btn q-btn-item non-selectable no-outline "+l.value,style:u.value,...d.value,...E.value}));function M(t){if(null!==_.value){if(void 0!==t){if(!0===t.defaultPrevented)return;let n=document.activeElement;if("submit"===e.type&&n!==document.body&&!1===_.value.contains(n)&&!1===n.contains(_.value)){!0!==t.qAvoidFocus&&_.value.focus();let e=()=>{document.removeEventListener("keydown",J,!0),document.removeEventListener("keyup",e,Cn),_.value?.removeEventListener("blur",e,Cn)};document.addEventListener("keydown",J,!0),document.addEventListener("keyup",e,Cn),_.value.addEventListener("blur",e,Cn)}}f(t)}}function L(e){null!==_.value&&(r("keydown",e),!0===pe(e,[13,32])&&En!==_.value&&(null!==En&&O(),!0!==e.defaultPrevented&&(!0!==e.qAvoidFocus&&_.value.focus(),En=_.value,_.value.classList.add("q-btn--active"),document.addEventListener("keyup",N,!0),_.value.addEventListener("blur",N,Cn)),J(e)))}function R(e){null!==_.value&&(r("touchstart",e),!0!==e.defaultPrevented&&(Tn!==_.value&&(null!==Tn&&O(),Tn=_.value,b=e.target,b.addEventListener("touchcancel",N,Cn),b.addEventListener("touchend",N,Cn)),o=!0,null!==y&&clearTimeout(y),y=setTimeout(()=>{y=null,o=!1},200)))}function z(e){null!==_.value&&(e.qSkipRipple=!0===o,r("mousedown",e),!0!==e.defaultPrevented&&Pn!==_.value&&(null!==Pn&&O(),Pn=_.value,_.value.classList.add("q-btn--active"),document.addEventListener("mouseup",N,Cn)))}function N(e){if(null!==_.value&&("blur"!==e?.type||document.activeElement!==_.value)){if("keyup"===e?.type){if(En===_.value&&!0===pe(e,[13,32])){let t=new MouseEvent("click",e);t.qKeyEvent=!0,!0===e.defaultPrevented&&Z(t),!0===e.cancelBubble&&Q(t),_.value.dispatchEvent(t),J(e),e.qKeyEvent=!0}r("keyup",e)}O()}}function O(e){let t=v.value;!0!==e&&(Tn===_.value||Pn===_.value)&&null!==t&&t!==document.activeElement&&(t.setAttribute("tabindex",-1),t.focus()),Tn===_.value&&(null!==b&&(b.removeEventListener("touchcancel",N,Cn),b.removeEventListener("touchend",N,Cn)),Tn=b=null),Pn===_.value&&(document.removeEventListener("mouseup",N,Cn),Pn=null),En===_.value&&(document.removeEventListener("keyup",N,!0),_.value?.removeEventListener("blur",N,Cn),En=null),_.value?.classList.remove("q-btn--active")}function I(e){J(e),e.qSkipRipple=!0}return g(()=>{O(!0)}),Object.assign(s,{click:e=>{!0===m.value&&M(e)}}),()=>{let a=[];void 0!==e.icon&&a.push(n(Mt,{name:e.icon,left:!0!==e.stack&&!0===w.value,role:"img"})),!0===w.value&&a.push(n("span",{class:"block"},[e.label])),a=pt(t.default,a),void 0!==e.iconRight&&!1===e.round&&a.push(n(Mt,{name:e.iconRight,right:!0!==e.stack&&!0===w.value,role:"img"}));let i=[n("span",{class:"q-focus-helper",ref:v})];return!0===e.loading&&void 0!==e.percentage&&i.push(n("span",{class:"q-btn__progress absolute-full overflow-hidden"+(!0===e.darkPercentage?" q-btn__progress--dark":"")},[n("span",{class:"q-btn__progress-indicator fit block",style:T.value})])),i.push(n("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+c.value},a)),null!==e.loading&&i.push(n(S,{name:"q-transition--fade"},()=>!0===e.loading?[n("span",{key:"loading",class:"absolute-full flex flex-center"},void 0!==t.loading?t.loading():[n(on)])]:null)),A(n(p.value,P.value,i),[[mn,x.value,void 0,C.value]])}}}),Mn=$({name:"QBtnGroup",props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){let a=i(()=>{let t=["unelevated","outline","flat","rounded","square","push","stretch","glossy"].filter(t=>!0===e[t]).map(e=>`q-btn-group--${e}`).join(" ");return"q-btn-group row no-wrap"+(0!==t.length?" "+t:"")+(!0===e.spread?" q-btn-group--spread":" inline")});return()=>n("div",{class:a.value},dt(t.default))}});function Ln(){if(void 0!==window.getSelection){let e=window.getSelection();void 0!==e.empty?e.empty():void 0!==e.removeAllRanges&&(e.removeAllRanges(),!0!==F.is.mobile&&e.addRange(document.createRange()))}else void 0!==document.selection&&document.selection.empty()}var Rn={target:{type:[Boolean,String,Element],default:!0},noParentEvent:Boolean},zn={...Rn,contextMenu:Boolean};function Nn({showing:e,avoidEmit:t,configureAnchorEl:n}){let{props:i,proxy:o,emit:s}=k(),l=a(null),u=null;function c(e){return null!==l.value&&(void 0===e||void 0===e.touches||e.touches.length<=1)}let h={};function p(){te(h,"anchor")}function f(){if(!1===i.target||""===i.target||null===o.$el.parentNode)l.value=null;else if(!0===i.target)!function(e){for(l.value=e;l.value.classList.contains("q-anchor--skip");)l.value=l.value.parentNode;n()}(o.$el.parentNode);else{let e=i.target;if("string"==typeof i.target)try{e=document.querySelector(i.target)}catch{e=void 0}null!=e?(l.value=e.$el||e,n()):(l.value=null,console.error(`Anchor: target "${i.target}" not found`))}}return void 0===n&&(Object.assign(h,{hide(e){o.hide(e)},toggle(e){o.toggle(e),e.qAnchorHandled=!0},toggleKey(e){!0===pe(e,13)&&h.toggle(e)},contextClick(e){o.hide(e),Z(e),d(()=>{o.show(e),e.qAnchorHandled=!0})},prevent:Z,mobileTouch(e){if(h.mobileCleanup(e),!0!==c(e))return;o.hide(e),l.value.classList.add("non-selectable");let t=e.target;ee(h,"anchor",[[t,"touchmove","mobileCleanup","passive"],[t,"touchend","mobileCleanup","passive"],[t,"touchcancel","mobileCleanup","passive"],[l.value,"contextmenu","prevent","notPassive"]]),u=setTimeout(()=>{u=null,o.show(e),e.qAnchorHandled=!0},300)},mobileCleanup(t){l.value.classList.remove("non-selectable"),null!==u&&(clearTimeout(u),u=null),!0===e.value&&void 0!==t&&Ln()}}),n=function(e=i.contextMenu){if(!0===i.noParentEvent||null===l.value)return;let t;t=!0===e?!0===o.$q.platform.is.mobile?[[l.value,"touchstart","mobileTouch","passive"]]:[[l.value,"mousedown","hide","passive"],[l.value,"contextmenu","contextClick","notPassive"]]:[[l.value,"click","toggle","passive"],[l.value,"keyup","toggleKey","passive"]],ee(h,"anchor",t)}),r(()=>i.contextMenu,e=>{null!==l.value&&(p(),n(e))}),r(()=>i.target,()=>{null!==l.value&&p(),f()}),r(()=>i.noParentEvent,e=>{null!==l.value&&(!0===e?p():n())}),m(()=>{f(),!0!==t&&!0===i.modelValue&&null===l.value&&s("update:modelValue",!1)}),g(()=>{null!==u&&clearTimeout(u),p()}),{anchorEl:l,canShow:c,anchorEvents:h}}function On(e,t){let n,i=a(null);function o(e,t){let a=(void 0!==t?"add":"remove")+"EventListener",i=void 0!==t?t:n;e!==window&&e[a]("scroll",i,H.passive),window[a]("scroll",i,H.passive),n=t}function s(){null!==i.value&&(o(i.value),i.value=null)}let l=r(()=>e.noParentEvent,()=>{null!==i.value&&(s(),t())});return g(l),{localScrollTarget:i,unconfigureScrollTarget:s,changeScrollEvent:o}}var In={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},qn=["beforeShow","show","beforeHide","hide"];function Dn({showing:e,canShow:t,hideOnRouteChange:n,handleShow:a,handleHide:i,processOnMount:o}){let s,l=k(),{props:u,emit:c,proxy:h}=l;function p(e){if(!0===u.disable||!0===e?.qAnchorHandled||void 0!==t&&!0!==t(e))return;let n=void 0!==u["onUpdate:modelValue"];!0===n&&(c("update:modelValue",!0),s=e,d(()=>{s===e&&(s=void 0)})),(null===u.modelValue||!1===n)&&f(e)}function f(t){!0!==e.value&&(e.value=!0,c("beforeShow",t),void 0!==a?a(t):c("show",t))}function g(e){if(!0===u.disable)return;let t=void 0!==u["onUpdate:modelValue"];!0===t&&(c("update:modelValue",!1),s=e,d(()=>{s===e&&(s=void 0)})),(null===u.modelValue||!1===t)&&_(e)}function _(t){!1!==e.value&&(e.value=!1,c("beforeHide",t),void 0!==i?i(t):c("hide",t))}function v(t){!0===u.disable&&!0===t?void 0!==u["onUpdate:modelValue"]&&c("update:modelValue",!1):!0===t!==e.value&&(!0===t?f:_)(s)}r(()=>u.modelValue,v),void 0!==n&&!0===Ht(l)&&r(()=>h.$route.fullPath,()=>{!0===n.value&&!0===e.value&&g()}),!0===o&&m(()=>{v(u.modelValue)});let b={show:p,hide:g,toggle:function(t){!0===e.value?g(t):p(t)}};return Object.assign(h,b),b}var jn=[],Bn=[];function Fn(e){Bn=Bn.filter(t=>t!==e)}function $n(e){Fn(e),0===Bn.length&&0!==jn.length&&(jn[jn.length-1](),jn=[])}function Vn(e){0===Bn.length?e():jn.push(e)}var Un=[],Hn=[],Wn=1,Gn=document.body;function Yn(e,t){let n=document.createElement("div");if(n.id=void 0!==t?`q-portal--${t}--${Wn++}`:e,void 0!==Ie.globalNodes){let e=Ie.globalNodes.class;void 0!==e&&(n.className=e)}return Gn.appendChild(n),Un.push(n),Hn.push(t),n}function Kn(e){let t=Un.indexOf(e);Un.splice(t,1),Hn.splice(t,1),e.remove()}var Qn=[];function Zn(e,t){do{if("QMenu"===e.$options.name){if(e.hide(t),!0===e.$props.separateClosePopup)return $t(e)}else if(!0===e.__qPortal){let n=$t(e);return"QPopupProxy"===n?.$options.name?(e.hide(t),n):e}e=$t(e)}while(null!=e)}var Jn=$({name:"QPortal",setup:(e,{slots:t})=>()=>t.default()});function Xn(e,t,i,r){let o=a(!1),s=a(!1),l=null,u={},c="dialog"===r&&function(e){for(e=e.parent;null!=e;){if("QGlobalDialog"===e.type.name)return!0;if("QDialog"===e.type.name||"QMenu"===e.type.name)return!1;e=e.parent}return!1}(e);function d(t){if(s.value=!1,!0!==t)return;$n(u),o.value=!1;let n=Qn.indexOf(e.proxy);-1!==n&&Qn.splice(n,1),null!==l&&(Kn(l),l=null)}return _(()=>{d(!0)}),e.proxy.__qPortal=!0,z(e.proxy,"contentEl",()=>t.value),{showPortal:function(t){if(!0===t)return $n(u),void(s.value=!0);s.value=!1,!1===o.value&&(!1===c&&null===l&&(l=Yn(!1,r)),o.value=!0,Qn.push(e.proxy),function(e){Fn(e),Bn.push(e)}(u))},hidePortal:d,portalIsActive:o,portalIsAccessible:s,renderPortal:()=>!0===c?i():!0===o.value?[n(E,{to:l},n(Jn,i))]:void 0}}var ea={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function ta(e,t=()=>{},n=()=>{}){return{transitionProps:i(()=>{let a=`q-transition--${e.transitionShow||t()}`,i=`q-transition--${e.transitionHide||n()}`;return{appear:!0,enterFromClass:`${a}-enter-from`,enterActiveClass:`${a}-enter-active`,enterToClass:`${a}-enter-to`,leaveFromClass:`${i}-leave-from`,leaveActiveClass:`${i}-leave-active`,leaveToClass:`${i}-leave-to`}}),transitionStyle:i(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}function na(){let e,t=k();function n(){e=void 0}return p(n),g(n),{removeTick:n,registerTick(n){e=n,d(()=>{e===n&&(!1===Wt(t)&&e(),e=void 0)})}}}function aa(){let e=null,t=k();function n(){null!==e&&(clearTimeout(e),e=null)}return p(n),g(n),{removeTimeout:n,registerTimeout(a,i){n(),!1===Wt(t)&&(e=setTimeout(()=>{e=null,a()},i))}}}var ia,ra=[Element,String],oa=[null,document,document.body,document.scrollingElement,document.documentElement];function sa(e,t){let n=function(e){if(null==e)return;if("string"==typeof e)try{return document.querySelector(e)||void 0}catch{return}let t=l(e);return t?t.$el||t:void 0}(t);if(void 0===n){if(null==e)return window;n=e.closest(".scroll,.scroll-y,.overflow-auto")}return oa.includes(n)?window:n}function la(e){return(e===window?document.body:e).scrollHeight}function ua(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function ca(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function da(e,t,n=0){let a=void 0===arguments[3]?performance.now():arguments[3],i=ua(e);n<=0?i!==t&&pa(e,t):requestAnimationFrame(r=>{let o=r-a,s=i+(t-i)/Math.max(o,n)*o;pa(e,s),s!==t&&da(e,t,n-o,r)})}function ha(e,t,n=0){let a=void 0===arguments[3]?performance.now():arguments[3],i=ca(e);n<=0?i!==t&&fa(e,t):requestAnimationFrame(r=>{let o=r-a,s=i+(t-i)/Math.max(o,n)*o;fa(e,s),s!==t&&ha(e,t,n-o,r)})}function pa(e,t){e!==window?e.scrollTop=t:window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t)}function fa(e,t){e!==window?e.scrollLeft=t:window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)}function ma(e,t,n){n?da(e,t,n):pa(e,t)}function ga(e,t,n){n?ha(e,t,n):fa(e,t)}function _a(){if(void 0!==ia)return ia;let e=document.createElement("p"),t=document.createElement("div");un(e,{width:"100%",height:"200px"}),un(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);let n=e.offsetWidth;t.style.overflow="scroll";let a=e.offsetWidth;return n===a&&(a=t.clientWidth),t.remove(),ia=n-a}function va(e,t=!0){return!(!e||e.nodeType!==Node.ELEMENT_NODE)&&(t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"])))}var ba,ya={getScrollTarget:sa,getScrollHeight:la,getScrollWidth:function(e){return(e===window?document.body:e).scrollWidth},getVerticalScrollPosition:ua,getHorizontalScrollPosition:ca,animVerticalScrollTo:da,animHorizontalScrollTo:ha,setVerticalScrollPosition:ma,setHorizontalScrollPosition:ga,getScrollbarWidth:_a,hasScrollbar:va},wa=[];function ka(e){ba=27===e.keyCode}function xa(){!0===ba&&(ba=!1)}function Sa(e){!0===ba&&(ba=!1,!0===pe(e,27)&&wa[wa.length-1](e))}function Ca(e){window[e]("keydown",ka),window[e]("blur",xa),window[e]("keyup",Sa),ba=!1}function Ta(e){!0===j.is.desktop&&(wa.push(e),1===wa.length&&Ca("addEventListener"))}function Ea(e){let t=wa.indexOf(e);-1!==t&&(wa.splice(t,1),0===wa.length&&Ca("removeEventListener"))}var Pa=[];function Aa(e){Pa[Pa.length-1](e)}function Ma(e){!0===j.is.desktop&&(Pa.push(e),1===Pa.length&&document.body.addEventListener("focusin",Aa))}function La(e){let t=Pa.indexOf(e);-1!==t&&(Pa.splice(t,1),0===Pa.length&&document.body.removeEventListener("focusin",Aa))}var Ra,za,Na=null,{notPassiveCapture:Oa}=H,Ia=[];function qa(e){null!==Na&&(clearTimeout(Na),Na=null);let t=e.target;if(void 0===t||8===t.nodeType||!0===t.classList.contains("no-pointer-events"))return;let n=Qn.length-1;for(;n>=0;){let e=Qn[n].$;if("QTooltip"!==e.type.name){if("QDialog"!==e.type.name)break;if(!0!==e.props.seamless)return;n--}else n--}for(let n=Ia.length-1;n>=0;n--){let a=Ia[n];if(null!==a.anchorEl.value&&!1!==a.anchorEl.value.contains(t)||t!==document.body&&(null===a.innerRef.value||!1!==a.innerRef.value.contains(t)))return;e.qClickOutside=!0,a.onClickOutside(e)}}function Da(e){Ia.push(e),1===Ia.length&&(document.addEventListener("mousedown",qa,Oa),document.addEventListener("touchstart",qa,Oa))}function ja(e){let t=Ia.findIndex(t=>t===e);-1!==t&&(Ia.splice(t,1),0===Ia.length&&(null!==Na&&(clearTimeout(Na),Na=null),document.removeEventListener("mousedown",qa,Oa),document.removeEventListener("touchstart",qa,Oa)))}function Ba(e){let t=e.split(" ");return 2===t.length&&(!0!==["top","center","bottom"].includes(t[0])?(console.error("Anchor/Self position must start with one of top/center/bottom"),!1):!0===["left","middle","right","start","end"].includes(t[1])||(console.error("Anchor/Self position must end with one of left/middle/right/start/end"),!1))}function Fa(e){return!e||!(2!==e.length||"number"!=typeof e[0]||"number"!=typeof e[1])}var $a={"start#ltr":"left","start#rtl":"right","end#ltr":"right","end#rtl":"left"};function Va(e,t){let n=e.split(" ");return{vertical:n[0],horizontal:$a[`${n[1]}#${!0===t?"rtl":"ltr"}`]}}function Ua(e,t,n,a){return{top:e[n.vertical]-t[a.vertical],left:e[n.horizontal]-t[a.horizontal]}}function Ha(e,t=0){if(null===e.targetEl||null===e.anchorEl||t>5)return;if(0===e.targetEl.offsetHeight||0===e.targetEl.offsetWidth)return void setTimeout(()=>{Ha(e,t+1)},10);let{targetEl:n,offset:a,anchorEl:i,anchorOrigin:r,selfOrigin:o,absoluteOffset:s,fit:l,cover:u,maxHeight:c,maxWidth:d}=e;if(!0===j.is.ios&&void 0!==window.visualViewport){let e=document.body.style,{offsetLeft:t,offsetTop:n}=window.visualViewport;t!==Ra&&(e.setProperty("--q-pe-left",t+"px"),Ra=t),n!==za&&(e.setProperty("--q-pe-top",n+"px"),za=n)}let{scrollLeft:h,scrollTop:p}=n,f=void 0===s?function(e,t){let{top:n,left:a,right:i,bottom:r,width:o,height:s}=e.getBoundingClientRect();return void 0!==t&&(n-=t[1],a-=t[0],r+=t[1],i+=t[0],o+=t[0],s+=t[1]),{top:n,bottom:r,height:s,left:a,right:i,width:o,middle:a+(i-a)/2,center:n+(r-n)/2}}(i,!0===u?[0,0]:a):function(e,t,n){let{top:a,left:i}=e.getBoundingClientRect();return a+=t.top,i+=t.left,void 0!==n&&(a+=n[1],i+=n[0]),{top:a,bottom:a+1,height:1,left:i,right:i+1,width:1,middle:i,center:a}}(i,s,a);Object.assign(n.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:d,maxHeight:c,visibility:"visible"});let{offsetWidth:m,offsetHeight:g}=n,{elWidth:_,elHeight:v}=!0===l||!0===u?{elWidth:Math.max(f.width,m),elHeight:!0===u?Math.max(f.height,g):g}:{elWidth:m,elHeight:g},b={maxWidth:d,maxHeight:c};(!0===l||!0===u)&&(b.minWidth=f.width+"px",!0===u&&(b.minHeight=f.height+"px")),Object.assign(n.style,b);let y=function(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}(_,v),w=Ua(f,y,r,o);if(void 0===s||void 0===a)Wa(w,f,y,r,o);else{let{top:e,left:t}=w;Wa(w,f,y,r,o);let n=!1;if(w.top!==e){n=!0;let e=2*a[1];f.center=f.top-=e,f.bottom-=e+2}if(w.left!==t){n=!0;let e=2*a[0];f.middle=f.left-=e,f.right-=e+2}!0===n&&(w=Ua(f,y,r,o),Wa(w,f,y,r,o))}b={top:w.top+"px",left:w.left+"px"},void 0!==w.maxHeight&&(b.maxHeight=w.maxHeight+"px",f.height>w.maxHeight&&(b.minHeight=b.maxHeight)),void 0!==w.maxWidth&&(b.maxWidth=w.maxWidth+"px",f.width>w.maxWidth&&(b.minWidth=b.maxWidth)),Object.assign(n.style,b),n.scrollTop!==p&&(n.scrollTop=p),n.scrollLeft!==h&&(n.scrollLeft=h)}function Wa(e,t,n,a,i){let r=n.bottom,o=n.right,s=_a(),l=window.innerHeight-s,u=document.body.clientWidth;if(e.top<0||e.top+r>l)if("center"===i.vertical)e.top=t[a.vertical]>l/2?Math.max(0,l-r):0,e.maxHeight=Math.min(r,l);else if(t[a.vertical]>l/2){let n=Math.min(l,"center"===a.vertical?t.center:a.vertical===i.vertical?t.bottom:t.top);e.maxHeight=Math.min(r,n),e.top=Math.max(0,n-r)}else e.top=Math.max(0,"center"===a.vertical?t.center:a.vertical===i.vertical?t.top:t.bottom),e.maxHeight=Math.min(r,l-e.top);if(e.left<0||e.left+o>u)if(e.maxWidth=Math.min(o,u),"middle"===i.horizontal)e.left=t[a.horizontal]>u/2?Math.max(0,u-o):0;else if(t[a.horizontal]>u/2){let n=Math.min(u,"middle"===a.horizontal?t.middle:a.horizontal===i.horizontal?t.right:t.left);e.maxWidth=Math.min(o,n),e.left=Math.max(0,n-e.maxWidth)}else e.left=Math.max(0,"middle"===a.horizontal?t.middle:a.horizontal===i.horizontal?t.left:t.right),e.maxWidth=Math.min(o,u-e.left)}["left","middle","right"].forEach(e=>{$a[`${e}#ltr`]=e,$a[`${e}#rtl`]=e});var Ga,Ya=$({name:"QMenu",inheritAttrs:!1,props:{...zn,...In,...Nt,...ea,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noEscDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:Ba},self:{type:String,validator:Ba},offset:{type:Array,validator:Fa},scrollTarget:ra,touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...qn,"click","escapeKey"],setup(e,{slots:t,emit:o,attrs:s}){let l,u,c,d=null,h=k(),{proxy:p}=h,{$q:f}=p,m=a(null),_=a(!1),v=i(()=>!0!==e.persistent&&!0!==e.noRouteDismiss),b=Ot(e,f),{registerTick:y,removeTick:w}=na(),{registerTimeout:x}=aa(),{transitionProps:C,transitionStyle:T}=ta(e),{localScrollTarget:E,changeScrollEvent:P,unconfigureScrollTarget:A}=On(e,U),{anchorEl:M,canShow:L}=Nn({showing:_}),{hide:R}=Dn({showing:_,canShow:L,handleShow:function(t){if(d=!1===e.noRefocus?document.activeElement:null,Ma(W),z(),U(),l=void 0,void 0!==t&&(e.touchPosition||e.contextMenu)){let e=Y(t);if(void 0!==e.left){let{top:t,left:n}=M.value.getBoundingClientRect();l={left:e.left-n,top:e.top-t}}}void 0===u&&(u=r(()=>f.screen.width+"|"+f.screen.height+"|"+e.self+"|"+e.anchor+"|"+f.lang.rtl,K)),!0!==e.noFocus&&document.activeElement.blur(),y(()=>{K(),!0!==e.noFocus&&$()}),x(()=>{!0===f.platform.is.ios&&(c=e.autoClose,m.value.click()),K(),z(!0),o("show",t)},e.transitionDuration)},handleHide:function(t){w(),N(),V(!0),null!==d&&(void 0===t||!0!==t.qClickOutside)&&(((0===t?.type.indexOf("key")?d.closest('[tabindex]:not([tabindex^="-"])'):void 0)||d).focus(),d=null),x(()=>{N(!0),o("hide",t)},e.transitionDuration)},hideOnRouteChange:v,processOnMount:!0}),{showPortal:z,hidePortal:N,renderPortal:O}=Xn(h,m,function(){return n(S,C.value,()=>!0===_.value?n("div",{role:"menu",...s,ref:m,tabindex:-1,class:["q-menu q-position-engine scroll"+j.value,s.class],style:[s.style,T.value],...B.value},dt(t.default)):null)},"menu"),I={anchorEl:M,innerRef:m,onClickOutside(t){if(!0!==e.persistent&&!0===_.value)return R(t),("touchstart"===t.type||t.target.classList.contains("q-dialog__backdrop"))&&J(t),!0}},q=i(()=>Va(e.anchor||(!0===e.cover?"center middle":"bottom start"),f.lang.rtl)),D=i(()=>!0===e.cover?q.value:Va(e.self||"top start",f.lang.rtl)),j=i(()=>(!0===e.square?" q-menu--square":"")+(!0===b.value?" q-menu--dark q-dark":"")),B=i(()=>!0===e.autoClose?{onClick:H}:{}),F=i(()=>!0===_.value&&!0!==e.persistent);function $(){Vn(()=>{let e=m.value;e&&!0!==e.contains(document.activeElement)&&(e=e.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||e.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||e.querySelector("[autofocus], [data-autofocus]")||e,e.focus({preventScroll:!0}))})}function V(e){l=void 0,void 0!==u&&(u(),u=void 0),(!0===e||!0===_.value)&&(La(W),A(),ja(I),Ea(G)),!0!==e&&(d=null)}function U(){(null!==M.value||void 0!==e.scrollTarget)&&(E.value=sa(M.value,e.scrollTarget),P(E.value,K))}function H(e){!0!==c?(Zn(p,e),o("click",e)):c=!1}function W(t){!0===F.value&&!0!==e.noFocus&&!0!==cn(m.value,t.target)&&$()}function G(t){!0!==e.noEscDismiss&&(o("escapeKey"),R(t))}function K(){Ha({targetEl:m.value,offset:e.offset,anchorEl:M.value,anchorOrigin:q.value,selfOrigin:D.value,absoluteOffset:l,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}return r(F,e=>{!0===e?(Ta(G),Da(I)):(Ea(G),ja(I))}),g(V),Object.assign(p,{focus:$,updatePosition:K}),O}}),Ka=0,Qa=new Array(256);for(let e=0;e<256;e++)Qa[e]=(e+256).toString(16).substring(1);var Za=(()=>{let e=typeof crypto<"u"?crypto:typeof window<"u"?window.crypto||window.msCrypto:void 0;if(void 0!==e){if(void 0!==e.randomBytes)return e.randomBytes;if(void 0!==e.getRandomValues)return t=>{let n=new Uint8Array(t);return e.getRandomValues(n),n}}return e=>{let t=[];for(let n=e;n>0;n--)t.push(Math.floor(256*Math.random()));return t}})();function Ja(){(void 0===Ga||Ka+16>4096)&&(Ka=0,Ga=Za(4096));let e=Array.prototype.slice.call(Ga,Ka,Ka+=16);return e[6]=15&e[6]|64,e[8]=63&e[8]|128,Qa[e[0]]+Qa[e[1]]+Qa[e[2]]+Qa[e[3]]+"-"+Qa[e[4]]+Qa[e[5]]+"-"+Qa[e[6]]+Qa[e[7]]+"-"+Qa[e[8]]+Qa[e[9]]+"-"+Qa[e[10]]+Qa[e[11]]+Qa[e[12]]+Qa[e[13]]+Qa[e[14]]+Qa[e[15]]}function Xa(e,t){return e??(!0===t?`f_${Ja()}`:null)}function ei({getValue:e,required:t=!0}={}){if(!0===I.value){let n=a(void 0!==e?function(e){return e??null}(e()):null);return!0===t&&null===n.value&&m(()=>{n.value=`f_${Ja()}`}),void 0!==e&&r(e,e=>{n.value=Xa(e,t)}),n}return void 0!==e?i(()=>Xa(e(),t)):a(`f_${Ja()}`)}var ti=Object.keys(xn);var ni=$({name:"QBtnDropdown",props:{...xn,...ea,modelValue:Boolean,split:Boolean,dropdownIcon:String,contentClass:[Array,String,Object],contentStyle:[Array,String,Object],cover:Boolean,persistent:Boolean,noEscDismiss:Boolean,noRouteDismiss:Boolean,autoClose:Boolean,noRefocus:Boolean,noFocus:Boolean,menuAnchor:{type:String,default:"bottom end"},menuSelf:{type:String,default:"top end"},menuOffset:Array,disableMainBtn:Boolean,disableDropdown:Boolean,noIconAnimation:Boolean,toggleAriaLabel:String},emits:["update:modelValue","click","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:o}){let{proxy:s}=k(),l=a(e.modelValue),u=a(null),c=ei(),d=i(()=>{let t={"aria-expanded":!0===l.value?"true":"false","aria-haspopup":"true","aria-controls":c.value,"aria-label":e.toggleAriaLabel||s.$q.lang.label[!0===l.value?"collapse":"expand"](e.label)};return(!0===e.disable||!1===e.split&&!0===e.disableMainBtn||!0===e.disableDropdown)&&(t["aria-disabled"]="true"),t}),h=i(()=>"q-btn-dropdown__arrow"+(!0===l.value&&!1===e.noIconAnimation?" rotate-180":"")+(!1===e.split?" q-btn-dropdown__arrow-container":"")),p=i(()=>kn(e)),f=i(()=>function(e){return ti.reduce((t,n)=>{let a=e[n];return void 0!==a&&(t[n]=a),t},{})}(e));function g(e){l.value=!0,o("beforeShow",e)}function _(e){o("show",e),o("update:modelValue",!0)}function v(e){l.value=!1,o("beforeHide",e)}function b(e){o("hide",e),o("update:modelValue",!1)}function y(e){o("click",e)}function w(e){Q(e),S(),o("click",e)}function x(e){u.value?.show(e)}function S(e){u.value?.hide(e)}return r(()=>e.modelValue,e=>{u.value?.[e?"show":"hide"]()}),r(()=>e.split,S),Object.assign(s,{show:x,hide:S,toggle:function(e){u.value?.toggle(e)}}),m(()=>{!0===e.modelValue&&x()}),()=>{let a=[n(Mt,{class:h.value,name:e.dropdownIcon||s.$q.iconSet.arrow.dropdown})];return!0!==e.disableDropdown&&a.push(n(Ya,{ref:u,id:c.value,class:e.contentClass,style:e.contentStyle,cover:e.cover,fit:!0,persistent:e.persistent,noEscDismiss:e.noEscDismiss,noRouteDismiss:e.noRouteDismiss,autoClose:e.autoClose,noFocus:e.noFocus,noRefocus:e.noRefocus,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,separateClosePopup:!0,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:g,onShow:_,onBeforeHide:v,onHide:b},t.default)),!1===e.split?n(An,{class:"q-btn-dropdown q-btn-dropdown--simple",...f.value,...d.value,disable:!0===e.disable||!0===e.disableMainBtn,noWrap:!0,round:!1,onClick:y},{default:()=>dt(t.label,[]).concat(a),loading:t.loading}):n(Mn,{class:"q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item",rounded:e.rounded,square:e.square,...p.value,glossy:e.glossy,stretch:e.stretch},()=>[n(An,{class:"q-btn-dropdown--current",...f.value,disable:!0===e.disable||!0===e.disableMainBtn,noWrap:!0,round:!1,onClick:w},{default:t.label,loading:t.loading}),n(An,{class:"q-btn-dropdown__arrow-container q-anchor--skip",...d.value,...p.value,disable:!0===e.disable||!0===e.disableDropdown,rounded:e.rounded,color:e.color,textColor:e.textColor,dense:e.dense,size:e.size,padding:e.padding,ripple:e.ripple},()=>a)])}}}),ai={name:String};function ii(e){return i(()=>({type:"hidden",name:e.name,value:e.modelValue}))}function ri(e={}){return(t,a,i)=>{t[a](n("input",{class:"hidden"+(i||""),...e.value}))}}function oi(e){return i(()=>e.name||e.for)}var si=$({name:"QBtnToggle",props:{...ai,modelValue:{required:!0},options:{type:Array,required:!0,validator:e=>e.every(e=>("label"in e||"icon"in e||"slot"in e)&&"value"in e)},color:String,textColor:String,toggleColor:{type:String,default:"primary"},toggleTextColor:String,outline:Boolean,flat:Boolean,unelevated:Boolean,rounded:Boolean,push:Boolean,glossy:Boolean,size:String,padding:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,readonly:Boolean,disable:Boolean,stack:Boolean,stretch:Boolean,spread:Boolean,clearable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","clear","click"],setup(e,{slots:t,emit:a}){let r=i(()=>void 0!==e.options.find(t=>t.value===e.modelValue)),o=ri(i(()=>({type:"hidden",name:e.name,value:e.modelValue}))),s=i(()=>kn(e)),l=i(()=>({rounded:e.rounded,dense:e.dense,...s.value})),u=i(()=>e.options.map((t,n)=>{let{attrs:i,value:r,slot:o,...s}=t;return{slot:o,props:{key:n,"aria-pressed":r===e.modelValue?"true":"false",...i,...s,...l.value,disable:!0===e.disable||!0===s.disable,color:r===e.modelValue?c(s,"toggleColor"):c(s,"color"),textColor:r===e.modelValue?c(s,"toggleTextColor"):c(s,"textColor"),noCaps:!0===c(s,"noCaps"),noWrap:!0===c(s,"noWrap"),size:c(s,"size"),padding:c(s,"padding"),ripple:c(s,"ripple"),stack:!0===c(s,"stack"),stretch:!0===c(s,"stretch"),onClick(n){!function(t,n,i){!0!==e.readonly&&(e.modelValue===t?!0===e.clearable&&(a("update:modelValue",null,null),a("clear")):a("update:modelValue",t,n),a("click",i))}(r,t,n)}}}}));function c(t,n){return void 0===t[n]?e[n]:t[n]}function d(){let a=u.value.map(e=>n(An,e.props,void 0!==e.slot?t[e.slot]:void 0));return void 0!==e.name&&!0!==e.disable&&!0===r.value&&o(a,"push"),pt(t.default,a)}return()=>n(Mn,{class:"q-btn-toggle",...s.value,rounded:e.rounded,stretch:e.stretch,glossy:e.glossy,spread:e.spread},d)}}),li=$({name:"QCard",props:{...Nt,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=Ot(e,a),o=i(()=>"q-card"+(!0===r.value?" q-card--dark q-dark":"")+(!0===e.bordered?" q-card--bordered":"")+(!0===e.square?" q-card--square no-border-radius":"")+(!0===e.flat?" q-card--flat no-shadow":""));return()=>n(e.tag,{class:o.value},dt(t.default))}}),ui=$({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){let a=i(()=>"q-card__section q-card__section--"+(!0===e.horizontal?"horiz row no-wrap":"vert"));return()=>n(e.tag,{class:a.value},dt(t.default))}}),ci=$({name:"QCardActions",props:{...Bt,vertical:Boolean},setup(e,{slots:t}){let a=Ft(e),r=i(()=>`q-card__actions ${a.value} q-card__actions--${!0===e.vertical?"vert column":"horiz row"}`);return()=>n("div",{class:r.value},dt(t.default))}}),di={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},hi=Object.keys(di);function pi(e){let t={};for(let n of hi)!0===e[n]&&(t[n]=!0);return 0===Object.keys(t).length?di:(!0===t.horizontal?t.left=t.right=!0:!0===t.left&&!0===t.right&&(t.horizontal=!0),!0===t.vertical?t.up=t.down=!0:!0===t.up&&!0===t.down&&(t.vertical=!0),!0===t.horizontal&&!0===t.vertical&&(t.all=!0),t)}di.all=!0;var fi=["INPUT","TEXTAREA"];function mi(e,t){return void 0===t.event&&void 0!==e.target&&!0!==e.target.draggable&&"function"==typeof t.handler&&!1===fi.includes(e.target.nodeName.toUpperCase())&&(void 0===e.qClonedBy||-1===e.qClonedBy.indexOf(t.uid))}function gi(e){let t=[.06,6,50];return"string"==typeof e&&e.length&&e.split(":").forEach((e,n)=>{let a=parseFloat(e);a&&(t[n]=a)}),t}var _i=V({name:"touch-swipe",beforeMount(e,{value:t,arg:n,modifiers:a}){if(!0!==a.mouse&&!0!==j.has.touch)return;let i=!0===a.mouseCapture?"Capture":"",r={handler:t,sensitivity:gi(n),direction:pi(a),noop:W,mouseStart(e){mi(e,r)&&G(e)&&(ee(r,"temp",[[document,"mousemove","move",`notPassive${i}`],[document,"mouseup","end","notPassiveCapture"]]),r.start(e,!0))},touchStart(e){if(mi(e,r)){let t=e.target;ee(r,"temp",[[t,"touchmove","move","notPassiveCapture"],[t,"touchcancel","end","notPassiveCapture"],[t,"touchend","end","notPassiveCapture"]]),r.start(e)}},start(t,n){!0===j.is.firefox&&X(e,!0);let a=Y(t);r.event={x:a.left,y:a.top,time:Date.now(),mouse:!0===n,dir:!1}},move(e){if(void 0===r.event)return;if(!1!==r.event.dir)return void J(e);let t=Date.now()-r.event.time;if(0===t)return;let n=Y(e),a=n.left-r.event.x,i=Math.abs(a),o=n.top-r.event.y,s=Math.abs(o);if(!0!==r.event.mouse){if(ir.sensitivity[0]&&(r.event.dir=o<0?"up":"down"),!0===r.direction.horizontal&&i>s&&s<100&&l>r.sensitivity[0]&&(r.event.dir=a<0?"left":"right"),!0===r.direction.up&&ir.sensitivity[0]&&(r.event.dir="up"),!0===r.direction.down&&i0&&i<100&&u>r.sensitivity[0]&&(r.event.dir="down"),!0===r.direction.left&&i>s&&a<0&&s<100&&l>r.sensitivity[0]&&(r.event.dir="left"),!0===r.direction.right&&i>s&&a>0&&s<100&&l>r.sensitivity[0]&&(r.event.dir="right"),!1!==r.event.dir?(J(e),!0===r.event.mouse&&(document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),Ln(),r.styleCleanup=e=>{r.styleCleanup=void 0,document.body.classList.remove("non-selectable");let t=()=>{document.body.classList.remove("no-pointer-events--children")};!0===e?setTimeout(t,50):t()}),r.handler({evt:e,touch:!0!==r.event.mouse,mouse:r.event.mouse,direction:r.event.dir,duration:t,distance:{x:i,y:s}})):r.end(e)},end(t){void 0!==r.event&&(te(r,"temp"),!0===j.is.firefox&&X(e,!1),r.styleCleanup?.(!0),void 0!==t&&!1!==r.event.dir&&J(t),r.event=void 0)}};if(e.__qtouchswipe=r,!0===a.mouse){let t=!0===a.mouseCapture||!0===a.mousecapture?"Capture":"";ee(r,"main",[[e,"mousedown","mouseStart",`passive${t}`]])}!0===j.has.touch&&ee(r,"main",[[e,"touchstart","touchStart","passive"+(!0===a.capture?"Capture":"")],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){let n=e.__qtouchswipe;void 0!==n&&(t.oldValue!==t.value&&("function"!=typeof t.value&&n.end(),n.handler=t.value),n.direction=pi(t.modifiers))},beforeUnmount(e){let t=e.__qtouchswipe;void 0!==t&&(te(t,"main"),te(t,"temp"),!0===j.is.firefox&&X(e,!1),t.styleCleanup?.(),delete e.__qtouchswipe)}});function vi(){let e=Object.create(null);return{getCache:(t,n)=>void 0===e[t]?e[t]="function"==typeof n?n():n:e[t],setCache(t,n){e[t]=n},hasCache:t=>Object.hasOwnProperty.call(e,t),clearCache(t){void 0!==t?delete e[t]:e=Object.create(null)}}}var bi={name:{required:!0},disable:Boolean},yi={setup:(e,{slots:t})=>()=>n("div",{class:"q-panel scroll",role:"tabpanel"},dt(t.default))},wi={modelValue:{required:!0},animated:Boolean,infinite:Boolean,swipeable:Boolean,vertical:Boolean,transitionPrev:String,transitionNext:String,transitionDuration:{type:[String,Number],default:300},keepAlive:Boolean,keepAliveInclude:[String,Array,RegExp],keepAliveExclude:[String,Array,RegExp],keepAliveMax:Number},ki=["update:modelValue","beforeTransition","transition"];function xi(){let e,t,{props:o,emit:s,proxy:l}=k(),{getCache:u}=vi(),{registerTimeout:c}=aa(),d=a(null),h={value:null};function p(e){let t=!0===o.vertical?"up":"left";M((!0===l.$q.lang.rtl?-1:1)*(e.direction===t?1:-1))}let f=i(()=>[[_i,p,void 0,{horizontal:!0!==o.vertical,vertical:o.vertical,mouse:!0}]]),m=i(()=>o.transitionPrev||"slide-"+(!0===o.vertical?"down":"right")),g=i(()=>o.transitionNext||"slide-"+(!0===o.vertical?"up":"left")),_=i(()=>`--q-transition-duration: ${o.transitionDuration}ms`),v=i(()=>"string"==typeof o.modelValue||"number"==typeof o.modelValue?o.modelValue:String(o.modelValue)),b=i(()=>({include:o.keepAliveInclude,exclude:o.keepAliveExclude,max:o.keepAliveMax})),y=i(()=>void 0!==o.keepAliveInclude||void 0!==o.keepAliveExclude);function w(){M(1)}function x(){M(-1)}function C(e){s("update:modelValue",e)}function E(e){return null!=e&&""!==e}function P(t){return e.findIndex(e=>e.props.name===t&&""!==e.props.disable&&!0!==e.props.disable)}function A(e){let t=0!==e&&!0===o.animated&&-1!==h.value?"q-transition--"+(-1===e?m.value:g.value):null;d.value!==t&&(d.value=t)}function M(n,a=h.value){let i=a+n;for(;-1!==i&&i{t=!1});i+=n}!0===o.infinite&&0!==e.length&&-1!==a&&a!==e.length&&M(n,-1===n?e.length:-1)}function L(){let e=P(o.modelValue);return h.value!==e&&(h.value=e),!0}function R(){let t=!0===E(o.modelValue)&&L()&&e[h.value];return!0===o.keepAlive?[n(T,b.value,[n(!0===y.value?u(v.value,()=>({...yi,name:v.value})):yi,{key:v.value,style:_.value},()=>t)])]:[n("div",{class:"q-panel scroll",style:_.value,key:v.value,role:"tabpanel"},[t])]}return r(()=>o.modelValue,(e,n)=>{let a=!0===E(e)?P(e):-1;!0!==t&&A(-1===a?0:a{s("transition",e,n)},o.transitionDuration))}),Object.assign(l,{next:w,previous:x,goTo:C}),{panelIndex:h,panelDirectives:f,updatePanelsList:function(t){return e=Ut(dt(t.default,[])).filter(e=>null!==e.props&&void 0===e.props.slot&&!0===E(e.props.name)),e.length},updatePanelIndex:L,getPanelContent:function(){if(0!==e.length)return!0===o.animated?[n(S,{name:d.value},R)]:R()},getEnabledPanels:function(){return e.filter(e=>""!==e.props.disable&&!0!==e.props.disable)},getPanels:function(){return e},isValidPanelName:E,keepAliveProps:b,needsUniqueKeepAliveWrapper:y,goToPanelByOffset:M,goToPanel:C,nextPanel:w,previousPanel:x}}var Si=0,Ci={fullscreen:Boolean,noRouteFullscreenExit:Boolean},Ti=["update:fullscreen","fullscreen"];function Ei(){let e,t,n,i=k(),{props:o,emit:s,proxy:l}=i,u=a(!1);function c(){!0===u.value?h():d()}function d(){!0!==u.value&&(u.value=!0,n=l.$el.parentNode,n.replaceChild(t,l.$el),document.body.appendChild(l.$el),1===++Si&&document.body.classList.add("q-body--fullscreen-mixin"),e={handler:h},be.add(e))}function h(){!0===u.value&&(void 0!==e&&(be.remove(e),e=void 0),n.replaceChild(l.$el,t),u.value=!1,0===(Si=Math.max(0,Si-1))&&(document.body.classList.remove("q-body--fullscreen-mixin"),void 0!==l.$el.scrollIntoView&&setTimeout(()=>{l.$el.scrollIntoView()})))}return!0===Ht(i)&&r(()=>l.$route.fullPath,()=>{!0!==o.noRouteFullscreenExit&&h()}),r(()=>o.fullscreen,e=>{u.value!==e&&c()}),r(u,e=>{s("update:fullscreen",e),s("fullscreen",e)}),f(()=>{t=document.createElement("span")}),m(()=>{!0===o.fullscreen&&d()}),g(h),Object.assign(l,{toggleFullscreen:c,setFullscreen:d,exitFullscreen:h}),{inFullscreen:u,toggleFullscreen:c}}var Pi=["top","right","bottom","left"],Ai=["regular","flat","outline","push","unelevated"],Mi=$({name:"QCarousel",props:{...Nt,...wi,...Ci,transitionPrev:{type:String,default:"fade"},transitionNext:{type:String,default:"fade"},height:String,padding:Boolean,controlColor:String,controlTextColor:String,controlType:{type:String,validator:e=>Ai.includes(e),default:"flat"},autoplay:[Number,Boolean],arrows:Boolean,prevIcon:String,nextIcon:String,navigation:Boolean,navigationPosition:{type:String,validator:e=>Pi.includes(e)},navigationIcon:String,navigationActiveIcon:String,thumbnails:Boolean},emits:[...Ti,...ki],setup(e,{slots:t}){let a,{proxy:{$q:o}}=k(),s=Ot(e,o),l=null,{updatePanelsList:u,getPanelContent:c,panelDirectives:d,goToPanel:h,previousPanel:p,nextPanel:f,getEnabledPanels:_,panelIndex:v}=xi(),{inFullscreen:b}=Ei(),y=i(()=>!0!==b.value&&void 0!==e.height?{height:e.height}:{}),w=i(()=>!0===e.vertical?"vertical":"horizontal"),x=i(()=>e.navigationPosition||(!0===e.vertical?"right":"bottom")),S=i(()=>`q-carousel q-panel-parent q-carousel--with${!0===e.padding?"":"out"}-padding`+(!0===b.value?" fullscreen":"")+(!0===s.value?" q-carousel--dark q-dark":"")+(!0===e.arrows?` q-carousel--arrows-${w.value}`:"")+(!0===e.navigation?` q-carousel--navigation-${x.value}`:"")),C=i(()=>{let t=[e.prevIcon||o.iconSet.carousel[!0===e.vertical?"up":"left"],e.nextIcon||o.iconSet.carousel[!0===e.vertical?"down":"right"]];return!1===e.vertical&&!0===o.lang.rtl?t.reverse():t}),T=i(()=>e.navigationIcon||o.iconSet.carousel.navigationIcon),E=i(()=>e.navigationActiveIcon||T.value),P=i(()=>({color:e.controlColor,textColor:e.controlTextColor,round:!0,[e.controlType]:!0,dense:!0}));function A(){let t=!0===$e(e.autoplay)?Math.abs(e.autoplay):5e3;null!==l&&clearTimeout(l),l=setTimeout(()=>{l=null,t>=0?f():p()},t)}function M(t,a){return n("div",{class:`q-carousel__control q-carousel__navigation no-wrap absolute flex q-carousel__navigation--${t} q-carousel__navigation--${x.value}`+(void 0!==e.controlColor?` text-${e.controlColor}`:"")},[n("div",{class:"q-carousel__navigation-inner flex flex-center no-wrap"},_().map(a))])}return r(()=>e.modelValue,()=>{e.autoplay&&A()}),r(()=>e.autoplay,e=>{e?A():null!==l&&(clearTimeout(l),l=null)}),m(()=>{e.autoplay&&A()}),g(()=>{null!==l&&clearTimeout(l)}),()=>(a=u(t),n("div",{class:S.value,style:y.value},[mt("div",{class:"q-carousel__slides-container"},c(),"sl-cont",e.swipeable,()=>d.value)].concat(function(){let i=[];if(!0===e.navigation){let e=void 0!==t["navigation-icon"]?t["navigation-icon"]:e=>n(An,{key:"nav"+e.name,class:`q-carousel__navigation-icon q-carousel__navigation-icon--${!0===e.active?"":"in"}active`,...e.btnProps,onClick:e.onClick}),r=a-1;i.push(M("buttons",(t,n)=>{let a=t.props.name,i=v.value===n;return e({index:n,maxIndex:r,name:a,active:i,btnProps:{icon:!0===i?E.value:T.value,size:"sm",...P.value},onClick:()=>{h(a)}})}))}else if(!0===e.thumbnails){let t=void 0!==e.controlColor?` text-${e.controlColor}`:"";i.push(M("thumbnails",a=>{let i=a.props;return n("img",{key:"tmb#"+i.name,class:`q-carousel__thumbnail q-carousel__thumbnail--${i.name===e.modelValue?"":"in"}active`+t,src:i.imgSrc||i["img-src"],onClick:()=>{h(i.name)}})}))}return!0===e.arrows&&v.value>=0&&((!0===e.infinite||v.value>0)&&i.push(n("div",{key:"prev",class:`q-carousel__control q-carousel__arrow q-carousel__prev-arrow q-carousel__prev-arrow--${w.value} absolute flex flex-center`},[n(An,{icon:C.value[0],...P.value,onClick:p})])),(!0===e.infinite||v.valuee.imgSrc?{backgroundImage:`url("${e.imgSrc}")`}:{});return()=>n("div",{class:"q-carousel__slide",style:a.value},dt(t.default))}}),Ri=$({name:"QCarouselControl",props:{position:{type:String,default:"bottom-right",validator:e=>["top-right","top-left","bottom-right","bottom-left","top","right","bottom","left"].includes(e)},offset:{type:Array,default:()=>[18,18],validator:e=>2===e.length}},setup(e,{slots:t}){let a=i(()=>`q-carousel__control absolute absolute-${e.position}`),r=i(()=>({margin:`${e.offset[1]}px ${e.offset[0]}px`}));return()=>n("div",{class:a.value,style:r.value},dt(t.default))}}),zi=$({name:"QChatMessage",props:{sent:Boolean,label:String,bgColor:String,textColor:String,name:String,avatar:String,text:Array,stamp:String,size:String,labelHtml:Boolean,nameHtml:Boolean,textHtml:Boolean,stampHtml:Boolean},setup(e,{slots:t}){let a=i(()=>!0===e.sent?"sent":"received"),r=i(()=>`q-message-text-content q-message-text-content--${a.value}`+(void 0!==e.textColor?` text-${e.textColor}`:"")),o=i(()=>`q-message-text q-message-text--${a.value}`+(void 0!==e.bgColor?` text-${e.bgColor}`:"")),s=i(()=>"q-message-container row items-end no-wrap"+(!0===e.sent?" reverse":"")),l=i(()=>void 0!==e.size?`col-${e.size}`:""),u=i(()=>({msg:!0===e.textHtml?"innerHTML":"textContent",stamp:!0===e.stampHtml?"innerHTML":"textContent",name:!0===e.nameHtml?"innerHTML":"textContent",label:!0===e.labelHtml?"innerHTML":"textContent"}));function c(a){return void 0!==t.stamp?[a,n("div",{class:"q-message-stamp"},t.stamp())]:e.stamp?[a,n("div",{class:"q-message-stamp",[u.value.stamp]:e.stamp})]:[a]}function d(e,t){let a=!0===t?e.length>1?e=>e:e=>n("div",[e]):e=>n("div",{[u.value.msg]:e});return e.map((e,t)=>n("div",{key:t,class:o.value},[n("div",{class:r.value},c(a(e)))]))}return()=>{let i=[];void 0!==t.avatar?i.push(t.avatar()):void 0!==e.avatar&&i.push(n("img",{class:`q-message-avatar q-message-avatar--${a.value}`,src:e.avatar,"aria-hidden":"true"}));let r=[];void 0!==t.name?r.push(n("div",{class:`q-message-name q-message-name--${a.value}`},t.name())):void 0!==e.name&&r.push(n("div",{class:`q-message-name q-message-name--${a.value}`,[u.value.name]:e.name})),void 0!==t.default?r.push(d(Ut(t.default()),!0)):void 0!==e.text&&r.push(d(e.text)),i.push(n("div",{class:l.value},r));let o=[];return void 0!==t.label?o.push(n("div",{class:"q-message-label"},t.label())):void 0!==e.label&&o.push(n("div",{class:"q-message-label",[u.value.label]:e.label})),o.push(n("div",{class:s.value},i)),n("div",{class:`q-message q-message-${a.value}`},o)}}});function Ni(e,t){let r=a(null);return{refocusTargetEl:i(()=>!0===e.disable?null:n("span",{ref:r,class:"no-outline",tabindex:-1})),refocusTarget:function(e){let n=t.value;!0!==e?.qAvoidFocus&&(0===e?.type.indexOf("key")?document.activeElement!==n&&!0===n?.contains(document.activeElement)&&n.focus():null!==r.value&&(void 0===e||!0===n?.contains(e.target))&&r.value.focus())}}}var Oi={xs:30,sm:35,md:40,lg:50,xl:60},Ii={...Nt,...ut,...ai,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>"tf"===e||"ft"===e},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},qi=["update:modelValue"];function Di(e,t){let{props:r,slots:o,emit:l,proxy:u}=k(),{$q:c}=u,d=Ot(r,c),h=a(null),{refocusTargetEl:p,refocusTarget:f}=Ni(r,h),m=ct(r,Oi),g=i(()=>void 0!==r.val&&Array.isArray(r.modelValue)),_=i(()=>{let e=s(r.val);return!0===g.value?r.modelValue.findIndex(t=>s(t)===e):-1}),v=i(()=>!0===g.value?-1!==_.value:s(r.modelValue)===s(r.trueValue)),b=i(()=>!0===g.value?-1===_.value:s(r.modelValue)===s(r.falseValue)),y=i(()=>!1===v.value&&!1===b.value),w=i(()=>!0===r.disable?-1:r.tabindex||0),x=i(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(!0===r.disable?" disabled":"")+(!0===d.value?` q-${e}--dark`:"")+(!0===r.dense?` q-${e}--dense`:"")+(!0===r.leftLabel?" reverse":"")),S=i(()=>{let t=!0===v.value?"truthy":!0===b.value?"falsy":"indet",n=void 0===r.color||!0!==r.keepColor&&("toggle"===e?!0!==v.value:!0===b.value)?"":` text-${r.color}`;return`q-${e}__inner relative-position non-selectable q-${e}__inner--${t}${n}`}),C=ri(i(()=>{let e={type:"checkbox"};return void 0!==r.name&&Object.assign(e,{".checked":v.value,"^checked":!0===v.value?"checked":void 0,name:r.name,value:!0===g.value?r.val:r.trueValue}),e})),T=i(()=>{let t={tabindex:w.value,role:"toggle"===e?"switch":"checkbox","aria-label":r.label,"aria-checked":!0===y.value?"mixed":!0===v.value?"true":"false"};return!0===r.disable&&(t["aria-disabled"]="true"),t});function E(e){void 0!==e&&(J(e),f(e)),!0!==r.disable&&l("update:modelValue",function(){if(!0===g.value){if(!0===v.value){let e=r.modelValue.slice();return e.splice(_.value,1),e}return r.modelValue.concat([r.val])}if(!0===v.value){if("ft"!==r.toggleOrder||!1===r.toggleIndeterminate)return r.falseValue}else{if(!0!==b.value)return"ft"!==r.toggleOrder?r.trueValue:r.falseValue;if("ft"===r.toggleOrder||!1===r.toggleIndeterminate)return r.trueValue}return r.indeterminateValue}(),e)}function P(e){(13===e.keyCode||32===e.keyCode)&&J(e)}function A(e){(13===e.keyCode||32===e.keyCode)&&E(e)}let M=t(v,y);return Object.assign(u,{toggle:E}),()=>{let t=M();!0!==r.disable&&C(t,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);let a=[n("div",{class:S.value,style:m.value,"aria-hidden":"true"},t)];null!==p.value&&a.push(p.value);let i=void 0!==r.label?pt(o.default,[r.label]):dt(o.default);return void 0!==i&&a.push(n("div",{class:`q-${e}__label q-anchor--skip`},i)),n("div",{ref:h,class:x.value,...T.value,onClick:E,onKeydown:P,onKeyup:A},a)}}var ji=$({name:"QCheckbox",props:Ii,emits:qi,setup(e){let t=n("div",{key:"svg",class:"q-checkbox__bg absolute"},[n("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[n("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),n("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]);return Di("checkbox",function(a,r){let o=i(()=>(!0===a.value?e.checkedIcon:!0===r.value?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>null!==o.value?[n("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[n(Mt,{class:"q-checkbox__icon",name:o.value})])]:[t]})}}),Bi={xs:8,sm:10,md:14,lg:20,xl:24},Fi=$({name:"QChip",props:{...Nt,...ut,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:t,emit:a}){let{proxy:{$q:r}}=k(),o=Ot(e,r),s=ct(e,Bi),l=i(()=>!0===e.selected||void 0!==e.icon),u=i(()=>!0===e.selected?e.iconSelected||r.iconSet.chip.selected:e.icon),c=i(()=>e.iconRemove||r.iconSet.chip.remove),d=i(()=>!1===e.disable&&(!0===e.clickable||null!==e.selected)),h=i(()=>{let t=!0===e.outline&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(!1===e.outline&&void 0!==e.color?` bg-${e.color}`:"")+(t?` text-${t} q-chip--colored`:"")+(!0===e.disable?" disabled":"")+(!0===e.dense?" q-chip--dense":"")+(!0===e.outline?" q-chip--outline":"")+(!0===e.selected?" q-chip--selected":"")+(!0===d.value?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(!0===e.square?" q-chip--square":"")+(!0===o.value?" q-chip--dark q-dark":"")}),p=i(()=>{let t=!0===e.disable?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0};return{chip:t,remove:{...t,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||r.lang.label.remove}}});function f(e){13===e.keyCode&&m(e)}function m(t){e.disable||(a("update:selected",!e.selected),a("click",t))}function g(t){(void 0===t.keyCode||13===t.keyCode)&&(J(t),!1===e.disable&&(a("update:modelValue",!1),a("remove")))}return()=>{if(!1===e.modelValue)return;let a={class:h.value,style:s.value};return!0===d.value&&Object.assign(a,p.value.chip,{onClick:m,onKeyup:f}),mt("div",a,function(){let a=[];!0===d.value&&a.push(n("div",{class:"q-focus-helper"})),!0===l.value&&a.push(n(Mt,{class:"q-chip__icon q-chip__icon--left",name:u.value}));let i=void 0!==e.label?[n("div",{class:"ellipsis"},[e.label])]:void 0;return a.push(n("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},ft(t.default,i))),e.iconRight&&a.push(n(Mt,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),!0===e.removable&&a.push(n(Mt,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:c.value,...p.value.remove,onClick:g,onKeyup:g})),a}(),"ripple",!1!==e.ripple&&!0!==e.disable,()=>[[mn,e.ripple]])}}}),$i={...ut,min:{type:Number,default:0},max:{type:Number,default:100},color:String,centerColor:String,trackColor:String,fontSize:String,rounded:Boolean,thickness:{type:Number,default:.2,validator:e=>e>=0&&e<=1},angle:{type:Number,default:0},showValue:Boolean,reverse:Boolean,instantFeedback:Boolean},Vi=100*Math.PI,Ui=Math.round(1e3*Vi)/1e3,Hi=$({name:"QCircularProgress",props:{...$i,value:{type:Number,default:0},animationSpeed:{type:[String,Number],default:600},indeterminate:Boolean},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=ct(e),o=i(()=>{let t=(!0===a.lang.rtl?-1:1)*e.angle;return{transform:e.reverse!==(!0===a.lang.rtl)?`scale3d(-1, 1, 1) rotate3d(0, 0, 1, ${-90-t}deg)`:`rotate3d(0, 0, 1, ${t-90}deg)`}}),s=i(()=>!0!==e.instantFeedback&&!0!==e.indeterminate?{transition:`stroke-dashoffset ${e.animationSpeed}ms ease 0s, stroke ${e.animationSpeed}ms ease`}:""),l=i(()=>100/(1-e.thickness/2)),u=i(()=>`${l.value/2} ${l.value/2} ${l.value} ${l.value}`),c=i(()=>Je(e.value,e.min,e.max)),d=i(()=>e.max-e.min),h=i(()=>e.thickness/2*l.value),p=i(()=>{let t=(e.max-c.value)/d.value,n=!0===e.rounded&&c.value{let a=[];void 0!==e.centerColor&&"transparent"!==e.centerColor&&a.push(n("circle",{class:`q-circular-progress__center text-${e.centerColor}`,fill:"currentColor",r:50-h.value/2,cx:l.value,cy:l.value})),void 0!==e.trackColor&&"transparent"!==e.trackColor&&a.push(f({cls:"track",thickness:h.value,offset:0,color:e.trackColor})),a.push(f({cls:"circle",thickness:h.value,offset:p.value,color:e.color,rounded:!0===e.rounded?"round":void 0}));let i=[n("svg",{class:"q-circular-progress__svg",style:o.value,viewBox:u.value,"aria-hidden":"true"},a)];return!0===e.showValue&&i.push(n("div",{class:"q-circular-progress__text absolute-full row flex-center content-center",style:{fontSize:e.fontSize}},void 0!==t.default?t.default():[n("div",c.value)])),n("div",{class:`q-circular-progress q-circular-progress--${!0===e.indeterminate?"in":""}determinate`,style:r.value,role:"progressbar","aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":!0===e.indeterminate?void 0:c.value},ft(t.internal,i))}}});function Wi(e,t,n){let a,i=Y(e),r=i.left-t.event.x,o=i.top-t.event.y,s=Math.abs(r),l=Math.abs(o),u=t.direction;!0===u.horizontal&&!0!==u.vertical?a=r<0?"left":"right":!0!==u.horizontal&&!0===u.vertical?a=o<0?"up":"down":!0===u.up&&o<0?(a="up",s>l&&(!0===u.left&&r<0?a="left":!0===u.right&&r>0&&(a="right"))):!0===u.down&&o>0?(a="down",s>l&&(!0===u.left&&r<0?a="left":!0===u.right&&r>0&&(a="right"))):!0===u.left&&r<0?(a="left",s0&&(a="down"))):!0===u.right&&r>0&&(a="right",s0&&(a="down")));let c=!1;if(void 0===a&&!1===n){if(!0===t.event.isFirst||void 0===t.event.lastDir)return{};a=t.event.lastDir,c=!0,"left"===a||"right"===a?(i.left-=r,s=0,r=0):(i.top-=o,l=0,o=0)}return{synthetic:c,payload:{evt:e,touch:!0!==t.event.mouse,mouse:!0===t.event.mouse,position:i,direction:a,isFirst:t.event.isFirst,isFinal:!0===n,duration:Date.now()-t.event.time,distance:{x:s,y:l},offset:{x:r,y:o},delta:{x:i.left-t.event.lastX,y:i.top-t.event.lastY}}}}var Gi=0,Yi=V({name:"touch-pan",beforeMount(e,{value:t,modifiers:n}){if(!0!==n.mouse&&!0!==j.has.touch)return;function a(e,t){!0===n.mouse&&!0===t?J(e):(!0===n.stop&&Q(e),!0===n.prevent&&Z(e))}let i={uid:"qvtp_"+Gi++,handler:t,modifiers:n,direction:pi(n),noop:W,mouseStart(e){mi(e,i)&&G(e)&&(ee(i,"temp",[[document,"mousemove","move","notPassiveCapture"],[document,"mouseup","end","passiveCapture"]]),i.start(e,!0))},touchStart(e){if(mi(e,i)){let t=e.target;ee(i,"temp",[[t,"touchmove","move","notPassiveCapture"],[t,"touchcancel","end","passiveCapture"],[t,"touchend","end","passiveCapture"]]),i.start(e)}},start(t,a){if(!0===j.is.firefox&&X(e,!0),i.lastEvt=t,!0===a||!0===n.stop){if(!0!==i.direction.all&&(!0!==a||!0!==i.modifiers.mouseAllDir&&!0!==i.modifiers.mousealldir)){let e=-1!==t.type.indexOf("mouse")?new MouseEvent(t.type,t):new TouchEvent(t.type,t);!0===t.defaultPrevented&&Z(e),!0===t.cancelBubble&&Q(e),Object.assign(e,{qKeyEvent:t.qKeyEvent,qClickOutside:t.qClickOutside,qAnchorHandled:t.qAnchorHandled,qClonedBy:void 0===t.qClonedBy?[i.uid]:t.qClonedBy.concat(i.uid)}),i.initialEvent={target:t.target,event:e}}Q(t)}let{left:r,top:o}=Y(t);i.event={x:r,y:o,time:Date.now(),mouse:!0===a,detected:!1,isFirst:!0,isFinal:!1,lastX:r,lastY:o}},move(e){if(void 0===i.event)return;let t=Y(e),r=t.left-i.event.x,o=t.top-i.event.y;if(0===r&&0===o)return;i.lastEvt=e;let s=!0===i.event.mouse,l=()=>{let t;a(e,s),!0!==n.preserveCursor&&!0!==n.preservecursor&&(t=document.documentElement.style.cursor||"",document.documentElement.style.cursor="grabbing"),!0===s&&document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),Ln(),i.styleCleanup=e=>{if(i.styleCleanup=void 0,void 0!==t&&(document.documentElement.style.cursor=t),document.body.classList.remove("non-selectable"),!0===s){let t=()=>{document.body.classList.remove("no-pointer-events--children")};void 0!==e?setTimeout(()=>{t(),e()},50):t()}else void 0!==e&&e()}};if(!0===i.event.detected){!0!==i.event.isFirst&&a(e,i.event.mouse);let{payload:t,synthetic:n}=Wi(e,i,!1);return void(void 0!==t&&(!1===i.handler(t)?i.end(e):(void 0===i.styleCleanup&&!0===i.event.isFirst&&l(),i.event.lastX=t.position.left,i.event.lastY=t.position.top,i.event.lastDir=!0===n?void 0:t.direction,i.event.isFirst=!1)))}if(!0===i.direction.all||!0===s&&(!0===i.modifiers.mouseAllDir||!0===i.modifiers.mousealldir))return l(),i.event.detected=!0,void i.move(e);let u=Math.abs(r),c=Math.abs(o);u!==c&&(!0===i.direction.horizontal&&u>c||!0===i.direction.vertical&&u0||!0===i.direction.left&&u>c&&r<0||!0===i.direction.right&&u>c&&r>0?(i.event.detected=!0,i.move(e)):i.end(e,!0))},end(t,n){if(void 0!==i.event){if(te(i,"temp"),!0===j.is.firefox&&X(e,!1),!0===n)i.styleCleanup?.(),!0!==i.event.detected&&void 0!==i.initialEvent&&i.initialEvent.target.dispatchEvent(i.initialEvent.event);else if(!0===i.event.detected){!0===i.event.isFirst&&i.handler(Wi(void 0===t?i.lastEvt:t,i).payload);let{payload:e}=Wi(void 0===t?i.lastEvt:t,i,!0),n=()=>{i.handler(e)};void 0!==i.styleCleanup?i.styleCleanup(n):n()}i.event=void 0,i.initialEvent=void 0,i.lastEvt=void 0}}};if(e.__qtouchpan=i,!0===n.mouse){let t=!0===n.mouseCapture||!0===n.mousecapture?"Capture":"";ee(i,"main",[[e,"mousedown","mouseStart",`passive${t}`]])}!0===j.has.touch&&ee(i,"main",[[e,"touchstart","touchStart","passive"+(!0===n.capture?"Capture":"")],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){let n=e.__qtouchpan;void 0!==n&&(t.oldValue!==t.value&&("function"!=typeof value&&n.end(),n.handler=t.value),n.direction=pi(t.modifiers))},beforeUnmount(e){let t=e.__qtouchpan;void 0!==t&&(void 0!==t.event&&t.end(),te(t,"main"),te(t,"temp"),!0===j.is.firefox&&X(e,!1),t.styleCleanup?.(),delete e.__qtouchpan)}}),Ki="q-slider__marker-labels",Qi=e=>({value:e}),Zi=({marker:e})=>n("div",{key:e.value,style:e.style,class:e.classes},e.label),Ji=[34,37,40,33,39,38],Xi={...Nt,...ai,min:{type:Number,default:0},max:{type:Number,default:100},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},snap:Boolean,vertical:Boolean,reverse:Boolean,color:String,markerLabelsClass:String,label:Boolean,labelColor:String,labelTextColor:String,labelAlways:Boolean,switchLabelSide:Boolean,markers:[Boolean,Number],markerLabels:[Boolean,Array,Object,Function],switchMarkerLabelsSide:Boolean,trackImg:String,trackColor:String,innerTrackImg:String,innerTrackColor:String,selectionColor:String,selectionImg:String,thumbSize:{type:String,default:"20px"},trackSize:{type:String,default:"4px"},disable:Boolean,readonly:Boolean,dense:Boolean,tabindex:[String,Number],thumbColor:String,thumbPath:{type:String,default:"M 4, 10 a 6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"}},er=["pan","update:modelValue","change"];function tr({updateValue:e,updatePosition:t,getDragging:r,formAttrs:o}){let{props:s,emit:l,slots:u,proxy:{$q:c}}=k(),d=Ot(s,c),h=ri(o),p=a(!1),f=a(!1),m=a(!1),_=a(!1),v=i(()=>!0===s.vertical?"--v":"--h"),b=i(()=>"-"+(!0===s.switchLabelSide?"switched":"standard")),y=i(()=>!0===s.vertical?!0===s.reverse:s.reverse!==(!0===c.lang.rtl)),w=i(()=>!0===isNaN(s.innerMin)||s.innerMin!0===isNaN(s.innerMax)||s.innerMax>s.max?s.max:s.innerMax),S=i(()=>!0!==s.disable&&!0!==s.readonly&&w.value{if(0===s.step)return e=>e;let e=(String(s.step).trim().split(".")[1]||"").length;return t=>parseFloat(t.toFixed(e))}),T=i(()=>0===s.step?1:s.step),E=i(()=>!0===S.value?s.tabindex||0:-1),P=i(()=>s.max-s.min),A=i(()=>x.value-w.value),M=i(()=>J(w.value)),L=i(()=>J(x.value)),R=i(()=>!0===s.vertical?!0===y.value?"bottom":"top":!0===y.value?"right":"left"),z=i(()=>!0===s.vertical?"height":"width"),N=i(()=>!0===s.vertical?"width":"height"),O=i(()=>!0===s.vertical?"vertical":"horizontal"),I=i(()=>{let e={role:"slider","aria-valuemin":w.value,"aria-valuemax":x.value,"aria-orientation":O.value,"data-step":s.step};return!0===s.disable?e["aria-disabled"]="true":!0===s.readonly&&(e["aria-readonly"]="true"),e}),q=i(()=>`q-slider q-slider${v.value} q-slider--${!0===p.value?"":"in"}active inline no-wrap `+(!0===s.vertical?"row":"column")+(!0===s.disable?" disabled":" q-slider--enabled"+(!0===S.value?" q-slider--editable":""))+("both"===m.value?" q-slider--focus":"")+(s.label||!0===s.labelAlways?" q-slider--label":"")+(!0===s.labelAlways?" q-slider--label-always":"")+(!0===d.value?" q-slider--dark":"")+(!0===s.dense?" q-slider--dense q-slider--dense"+v.value:""));function D(e){let t="q-slider__"+e;return`${t} ${t}${v.value} ${t}${v.value}${b.value}`}function j(e){let t="q-slider__"+e;return`${t} ${t}${v.value}`}let B=i(()=>{let e=s.selectionColor||s.color;return"q-slider__selection absolute"+(void 0!==e?` text-${e}`:"")}),F=i(()=>j("markers")+" absolute overflow-hidden"),$=i(()=>j("track-container")),V=i(()=>D("pin")),U=i(()=>D("label")),H=i(()=>D("text-container")),W=i(()=>D("marker-labels-container")+(void 0!==s.markerLabelsClass?` ${s.markerLabelsClass}`:"")),G=i(()=>"q-slider__track relative-position no-outline"+(void 0!==s.trackColor?` bg-${s.trackColor}`:"")),K=i(()=>{let e={[N.value]:s.trackSize};return void 0!==s.trackImg&&(e.backgroundImage=`url(${s.trackImg}) !important`),e}),Q=i(()=>"q-slider__inner absolute"+(void 0!==s.innerTrackColor?` bg-${s.innerTrackColor}`:"")),Z=i(()=>{let e=L.value-M.value,t={[R.value]:100*M.value+"%",[z.value]:0===e?"2px":100*e+"%"};return void 0!==s.innerTrackImg&&(t.backgroundImage=`url(${s.innerTrackImg}) !important`),t});function J(e){return 0===P.value?0:(e-s.min)/P.value}let X=i(()=>!0===$e(s.markers)?s.markers:T.value),ee=i(()=>{let e=[],t=X.value,n=s.max,a=s.min;do{e.push(a),a+=t}while(a{let e=` ${Ki}${v.value}-`;return Ki+`${e}${!0===s.switchMarkerLabelsSide?"switched":"standard"}${e}${!0===y.value?"rtl":"ltr"}`}),ne=i(()=>!1===s.markerLabels?null:function(e){if(!1===e)return null;if(!0===e)return ee.value.map(Qi);if("function"==typeof e)return ee.value.map(t=>{let n=e(t);return!0===je(n)?{...n,value:t}:{value:t,label:n}});let t=({value:e})=>e>=s.min&&e<=s.max;return!0===Array.isArray(e)?e.map(e=>!0===je(e)?e:{value:e}).filter(t):Object.keys(e).map(t=>{let n=e[t],a=Number(t);return!0===je(n)?{...n,value:a}:{value:a,label:n}}).filter(t)}(s.markerLabels).map((e,t)=>({index:t,value:e.value,label:e.label||e.value,classes:te.value+(void 0!==e.classes?" "+e.classes:""),style:{...re(e.value),...e.style||{}}}))),ae=i(()=>({markerList:ne.value,markerMap:oe.value,classes:te.value,getStyle:re})),ie=i(()=>{let e=0===A.value?"2px":100*X.value/A.value;return{...Z.value,backgroundSize:!0===s.vertical?`2px ${e}%`:`${e}% 2px`}});function re(e){return{[R.value]:100*(e-s.min)/P.value+"%"}}let oe=i(()=>{if(!1===s.markerLabels)return null;let e={};return ne.value.forEach(t=>{e[t.value]=t}),e});let se=i(()=>[[Yi,le,void 0,{[O.value]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function le(n){!0===n.isFinal?(void 0!==_.value&&(t(n.evt),!0===n.touch&&e(!0),_.value=void 0,l("pan","end")),p.value=!1,m.value=!1):!0===n.isFirst?(_.value=r(n.evt),t(n.evt),e(),p.value=!0,l("pan","start")):(t(n.evt),e())}function ue(){m.value=!1}function ce(){f.value=!1,p.value=!1,e(!0),ue(),document.removeEventListener("mouseup",ce,!0)}return g(()=>{document.removeEventListener("mouseup",ce,!0)}),{state:{active:p,focus:m,preventFocus:f,dragging:_,editable:S,classes:q,tabindex:E,attributes:I,roundValueFn:C,keyStep:T,trackLen:P,innerMin:w,innerMinRatio:M,innerMax:x,innerMaxRatio:L,positionProp:R,sizeProp:z,isReversed:y},methods:{onActivate:function(n){t(n,r(n)),e(),f.value=!0,p.value=!0,document.addEventListener("mouseup",ce,!0)},onMobileClick:function(n){t(n,r(n)),e(!0)},onBlur:ue,onKeyup:function(t){Ji.includes(t.keyCode)&&e(!0)},getContent:function(e,t,a,i){let r=[];"transparent"!==s.innerTrackColor&&r.push(n("div",{key:"inner",class:Q.value,style:Z.value})),"transparent"!==s.selectionColor&&r.push(n("div",{key:"selection",class:B.value,style:e.value})),!1!==s.markers&&r.push(n("div",{key:"marker",class:F.value,style:ie.value})),i(r);let o=[mt("div",{key:"trackC",class:$.value,tabindex:t.value,...a.value},[n("div",{class:G.value,style:K.value},r)],"slide",S.value,()=>se.value)];if(!1!==s.markerLabels){o[!0===s.switchMarkerLabelsSide?"unshift":"push"](n("div",{key:"markerL",class:W.value},function(){if(void 0!==u["marker-label-group"])return u["marker-label-group"](ae.value);let e=u["marker-label"]||Zi;return ne.value.map(t=>e({marker:t,...ae.value}))}()))}return o},getThumbRenderFn:function(e){let t=i(()=>!1!==f.value||m.value!==e.focusValue&&"both"!==m.value?"":" q-slider--focus"),a=i(()=>`q-slider__thumb q-slider__thumb${v.value} q-slider__thumb${v.value}-${!0===y.value?"rtl":"ltr"} absolute non-selectable`+t.value+(void 0!==e.thumbColor.value?` text-${e.thumbColor.value}`:"")),r=i(()=>({width:s.thumbSize,height:s.thumbSize,[R.value]:100*e.ratio.value+"%",zIndex:m.value===e.focusValue?2:void 0})),o=i(()=>void 0!==e.labelColor.value?` text-${e.labelColor.value}`:""),l=i(()=>function(e){if(!0===s.vertical)return null;let t=c.lang.rtl!==s.reverse?1-e:e;return{transform:`translateX(calc(${2*t-1} * ${s.thumbSize} / 2 + ${50-100*t}%))`}}(e.ratio.value)),u=i(()=>"q-slider__text"+(void 0!==e.labelTextColor.value?` text-${e.labelTextColor.value}`:""));return()=>{let t=[n("svg",{class:"q-slider__thumb-shape absolute-full",viewBox:"0 0 20 20","aria-hidden":"true"},[n("path",{d:s.thumbPath})]),n("div",{class:"q-slider__focus-ring fit"})];return(!0===s.label||!0===s.labelAlways)&&(t.push(n("div",{class:V.value+" absolute fit no-pointer-events"+o.value},[n("div",{class:U.value,style:{minWidth:s.thumbSize}},[n("div",{class:H.value,style:l.value},[n("span",{class:u.value},e.label.value)])])])),void 0!==s.name&&!0!==s.disable&&h(t,"push")),n("div",{class:a.value,style:r.value,...e.getNodeData()},t)}},convertRatioToModel:function(e){let{min:t,max:n,step:a}=s,i=t+e*(n-t);if(a>0){let e=(i-w.value)%a;i+=(Math.abs(e)>=a/2?(e<0?-1:1)*a:0)-e}return i=C.value(i),Je(i,w.value,x.value)},convertModelToRatio:J,getDraggingRatio:function(e,t){let n=Y(e),a=!0===s.vertical?Je((n.top-t.top)/t.height,0,1):Je((n.left-t.left)/t.width,0,1);return Je(!0===y.value?1-a:a,M.value,L.value)}}}}var nr=()=>({}),ar=$({name:"QSlider",props:{...Xi,modelValue:{required:!0,default:null,validator:e=>"number"==typeof e||null===e},labelValue:[String,Number]},emits:er,setup(e,{emit:t}){let{proxy:{$q:o}}=k(),{state:s,methods:l}=tr({updateValue:v,updatePosition:function(t,n=s.dragging.value){let a=l.getDraggingRatio(t,n);d.value=l.convertRatioToModel(a),c.value=!0!==e.snap||0===e.step?a:l.convertModelToRatio(d.value)},getDragging:function(){return u.value.getBoundingClientRect()},formAttrs:ii(e)}),u=a(null),c=a(0),d=a(0);function h(){d.value=null===e.modelValue?s.innerMin.value:Je(e.modelValue,s.innerMin.value,s.innerMax.value)}r(()=>`${e.modelValue}|${s.innerMin.value}|${s.innerMax.value}`,h),h();let p=i(()=>l.convertModelToRatio(d.value)),f=i(()=>!0===s.active.value?c.value:p.value),m=i(()=>{let t={[s.positionProp.value]:100*s.innerMinRatio.value+"%",[s.sizeProp.value]:100*(f.value-s.innerMinRatio.value)+"%"};return void 0!==e.selectionImg&&(t.backgroundImage=`url(${e.selectionImg}) !important`),t}),g=l.getThumbRenderFn({focusValue:!0,getNodeData:nr,ratio:f,label:i(()=>void 0!==e.labelValue?e.labelValue:d.value),thumbColor:i(()=>e.thumbColor||e.color),labelColor:i(()=>e.labelColor),labelTextColor:i(()=>e.labelTextColor)}),_=i(()=>!0!==s.editable.value?{}:!0===o.platform.is.mobile?{onClick:l.onMobileClick}:{onMousedown:l.onActivate,onFocus:b,onBlur:l.onBlur,onKeydown:y,onKeyup:l.onKeyup});function v(n){d.value!==e.modelValue&&t("update:modelValue",d.value),!0===n&&t("change",d.value)}function b(){s.focus.value=!0}function y(t){if(!1===Ji.includes(t.keyCode))return;J(t);let n=([34,33].includes(t.keyCode)?10:1)*s.keyStep.value,a=([34,37,40].includes(t.keyCode)?-1:1)*(!0===s.isReversed.value?-1:1)*(!0===e.vertical?-1:1)*n;d.value=Je(s.roundValueFn.value(d.value+a),s.innerMin.value,s.innerMax.value),v()}return()=>{let t=l.getContent(m,s.tabindex,_,e=>{e.push(g())});return n("div",{ref:u,class:s.classes.value+(null===e.modelValue?" q-slider--no-value":""),...s.attributes.value,"aria-valuenow":e.modelValue},t)}}});function ir(){let e=a(!I.value);return!1===e.value&&m(()=>{e.value=!0}),{isHydrated:e}}var rr,or=typeof ResizeObserver<"u",sr=!0===or?{}:{style:"display:block;position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1;",url:"about:blank"},lr=$({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(e,{emit:t}){let a,i=null,r={width:-1,height:-1};function o(t){!0===t||0===e.debounce||"0"===e.debounce?s():null===i&&(i=setTimeout(s,e.debounce))}function s(){if(null!==i&&(clearTimeout(i),i=null),a){let{offsetWidth:e,offsetHeight:n}=a;(e!==r.width||n!==r.height)&&(r={width:e,height:n},t("resize",r))}}let{proxy:l}=k();if(l.trigger=o,!0===or){let e,t=n=>{a=l.$el.parentNode,a?(e=new ResizeObserver(o),e.observe(a),s()):!0!==n&&d(()=>{t(!0)})};return m(()=>{t()}),g(()=>{null!==i&&clearTimeout(i),void 0!==e&&(void 0!==e.disconnect?e.disconnect():a&&e.unobserve(a))}),W}{let e,t=function(){null!==i&&(clearTimeout(i),i=null),void 0!==e&&(void 0!==e.removeEventListener&&e.removeEventListener("resize",o,H.passive),e=void 0)},r=function(){t(),a?.contentDocument&&(e=a.contentDocument.defaultView,e.addEventListener("resize",o,H.passive),s())},{isHydrated:u}=ir();return m(()=>{d(()=>{a=l.$el,a&&r()})}),g(t),()=>{if(!0===u.value)return n("object",{class:"q--avoid-card-border",style:sr.style,tabindex:-1,type:"text/html",data:sr.url,"aria-hidden":"true",onLoad:r})}}}});{let e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});let t=document.createElement("div");Object.assign(t.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(t),e.scrollLeft=-1e3,rr=e.scrollLeft>=0,e.remove()}function ur(e,t,n){let a=!0===n?["left","right"]:["top","bottom"];return`absolute-${!0===t?a[0]:a[1]}${e?` text-${e}`:""}`}var cr=["left","center","right","justify"],dr=$({name:"QTabs",props:{modelValue:[Number,String],align:{type:String,default:"center",validator:e=>cr.includes(e)},breakpoint:{type:[String,Number],default:600},vertical:Boolean,shrink:Boolean,stretch:Boolean,activeClass:String,activeColor:String,activeBgColor:String,indicatorColor:String,leftIcon:String,rightIcon:String,outsideArrows:Boolean,mobileArrows:Boolean,switchIndicator:Boolean,narrowIndicator:Boolean,inlineLabel:Boolean,noCaps:Boolean,dense:Boolean,contentClass:String,"onUpdate:modelValue":[Function,Array]},setup(e,{slots:t,emit:o}){let s,{proxy:l}=k(),{$q:u}=l,{registerTick:c}=na(),{registerTick:d}=na(),{registerTick:f}=na(),{registerTimeout:m,removeTimeout:_}=aa(),{registerTimeout:v,removeTimeout:b}=aa(),y=a(null),x=a(null),S=a(e.modelValue),C=a(!1),T=a(!0),E=a(!1),P=a(!1),A=[],M=a(0),L=a(!1),R=null,z=null,N=i(()=>({activeClass:e.activeClass,activeColor:e.activeColor,activeBgColor:e.activeBgColor,indicatorClass:ur(e.indicatorColor,e.switchIndicator,e.vertical),narrowIndicator:e.narrowIndicator,inlineLabel:e.inlineLabel,noCaps:e.noCaps})),O=i(()=>{let e=M.value,t=S.value;for(let n=0;n`q-tabs__content--align-${!0===C.value?"left":!0===P.value?"justify":e.align}`),q=i(()=>`q-tabs row no-wrap items-center q-tabs--${!0===C.value?"":"not-"}scrollable q-tabs--${!0===e.vertical?"vertical":"horizontal"} q-tabs__arrows--${!0===e.outsideArrows?"outside":"inside"} q-tabs--mobile-with${!0===e.mobileArrows?"":"out"}-arrows`+(!0===e.dense?" q-tabs--dense":"")+(!0===e.shrink?" col-shrink":"")+(!0===e.stretch?" self-stretch":"")),D=i(()=>"q-tabs__content scroll--mobile row no-wrap items-center self-stretch hide-scrollbar relative-position "+I.value+(void 0!==e.contentClass?` ${e.contentClass}`:"")),j=i(()=>!0===e.vertical?{container:"height",content:"offsetHeight",scroll:"scrollHeight"}:{container:"width",content:"offsetWidth",scroll:"scrollWidth"}),B=i(()=>!0!==e.vertical&&!0===u.lang.rtl),F=i(()=>!1===rr&&!0===B.value);function $({name:t,setCurrent:n,skipEmit:a}){S.value!==t&&(!0!==a&&void 0!==e["onUpdate:modelValue"]&&o("update:modelValue",t),(!0===n||void 0===e["onUpdate:modelValue"])&&(function(t,n){let a=null!=t&&""!==t?A.find(e=>e.name.value===t):null,i=null!=n&&""!==n?A.find(e=>e.name.value===n):null;if(!0===re)re=!1;else if(a&&i){let t=a.tabIndicatorRef.value,n=i.tabIndicatorRef.value;null!==R&&(clearTimeout(R),R=null),t.style.transition="none",t.style.transform="none",n.style.transition="none",n.style.transform="none";let r=t.getBoundingClientRect(),o=n.getBoundingClientRect();n.style.transform=!0===e.vertical?`translate3d(0,${r.top-o.top}px,0) scale3d(1,${o.height?r.height/o.height:1},1)`:`translate3d(${r.left-o.left}px,0,0) scale3d(${o.width?r.width/o.width:1},1,1)`,f(()=>{R=setTimeout(()=>{R=null,n.style.transition="transform .25s cubic-bezier(.4, 0, .2, 1)",n.style.transform="none"},70)})}i&&!0===C.value&&H(i.rootRef.value)}(S.value,t),S.value=t))}function V(){c(()=>{y.value&&U({width:y.value.offsetWidth,height:y.value.offsetHeight})})}function U(t){if(void 0===j.value||null===x.value)return;let n=t[j.value.container],a=Math.min(x.value[j.value.scroll],Array.prototype.reduce.call(x.value.children,(e,t)=>e+(t[j.value.content]||0),0)),i=n>0&&a>n;C.value=i,!0===i&&d(W),P.value=n0&&(x.value[!0===e.vertical?"scrollTop":"scrollLeft"]+=Math.ceil(s),W())}function W(){let t=x.value;if(null===t)return;let n=t.getBoundingClientRect(),a=!0===e.vertical?t.scrollTop:Math.abs(t.scrollLeft);!0===B.value?(T.value=Math.ceil(a+n.width)0):(T.value=a>0,E.value=!0===e.vertical?Math.ceil(a+n.height){!0===function(e){let t=x.value,{get:n,set:a}=Z.value,i=!1,r=n(t),o=e=e)&&(i=!0,r=e),a(t,r),W(),i}(e)&&Q()},5)}function Y(){G(!0===F.value?Number.MAX_SAFE_INTEGER:0)}function K(){G(!0===F.value?0:Number.MAX_SAFE_INTEGER)}function Q(){null!==z&&(clearInterval(z),z=null)}r(B,W),r(()=>e.modelValue,e=>{$({name:e,setCurrent:!0,skipEmit:!0})}),r(()=>e.outsideArrows,V);let Z=i(()=>!0===F.value?{get:e=>Math.abs(e.scrollLeft),set:(e,t)=>{e.scrollLeft=-t}}:!0===e.vertical?{get:e=>e.scrollTop,set:(e,t)=>{e.scrollTop=t}}:{get:e=>e.scrollLeft,set:(e,t)=>{e.scrollLeft=t}});function J(e,t){for(let n in e)if(e[n]!==t[n])return!1;return!0}function X(){let e=null,t={matchedLen:0,queryDiff:9999,hrefLen:0},n=A.filter(e=>!0===e.routeData?.hasRouterLink.value),{hash:a,query:i}=l.$route,r=Object.keys(i).length;for(let o of n){let n=!0===o.routeData.exact.value;if(!0!==o.routeData[!0===n?"linkIsExactActive":"linkIsActive"].value)continue;let{hash:s,query:l,matched:u,href:c}=o.routeData.resolvedLink.value,d=Object.keys(l).length;if(!0===n){if(s!==a||d!==r||!1===J(i,l))continue;e=o.name.value;break}if(""!==s&&s!==a||0!==d&&!1===J(l,i))continue;let h={matchedLen:u.length,queryDiff:r-d,hrefLen:c.length-s.length};if(h.matchedLen>t.matchedLen)e=o.name.value,t=h;else if(h.matchedLen===t.matchedLen){if(h.queryDifft.hrefLen&&(e=o.name.value,t=h)}}null!==e||!0!==A.some(e=>void 0===e.routeData&&e.name.value===S.value)?$({name:e,setCurrent:!0}):re=!1}function ee(e){if(_(),!0!==L.value&&null!==y.value&&e.target&&"function"==typeof e.target.closest){let t=e.target.closest(".q-tab");t&&!0===y.value.contains(t)&&(L.value=!0,!0===C.value&&H(t))}}function te(){m(()=>{L.value=!1},30)}function ne(){!1===oe.avoidRouteWatcher?v(X):b()}function ae(){if(void 0===s){let e=r(()=>l.$route.fullPath,ne);s=()=>{e(),s=void 0}}}let ie,re,oe={currentModel:S,tabProps:N,hasFocus:L,hasActiveTab:O,registerTab:function(e){A.push(e),M.value++,V(),void 0===e.routeData||void 0===l.$route?v(()=>{if(!0===C.value){let e=S.value,t=null!=e&&""!==e?A.find(t=>t.name.value===e):null;t&&H(t.rootRef.value)}}):(ae(),!0===e.routeData.hasRouterLink.value&&ne())},unregisterTab:function(e){A.splice(A.indexOf(e),1),M.value--,V(),void 0!==s&&void 0!==e.routeData&&(!0===A.every(e=>void 0===e.routeData)&&s(),ne())},verifyRouteModel:ne,updateModel:$,onKbdNavigate:function(t,n){let a=Array.prototype.filter.call(x.value.children,e=>e===n||e.matches&&!0===e.matches(".q-tab.q-focusable")),i=a.length;if(0===i)return;if(36===t)return H(a[0]),a[0].focus(),!0;if(35===t)return H(a[i-1]),a[i-1].focus(),!0;let r=t===(!0===e.vertical?38:37),o=t===(!0===e.vertical?40:39),s=!0===r?-1:!0===o?1:void 0;if(void 0!==s){let e=!0===B.value?-1:1,t=a.indexOf(n)+s*e;return t>=0&&t{ie=void 0!==s,se()}),h(()=>{!0===ie&&(ae(),re=!0,ne()),V()}),()=>n("div",{ref:y,class:q.value,role:"tablist",onFocusin:ee,onFocusout:te},[n(lr,{onResize:U}),n("div",{ref:x,class:D.value,onScroll:W},dt(t.default)),n(Mt,{class:"q-tabs__arrow q-tabs__arrow--left absolute q-tab__icon"+(!0===T.value?"":" q-tabs__arrow--faded"),name:e.leftIcon||u.iconSet.tabs[!0===e.vertical?"up":"left"],onMousedownPassive:Y,onTouchstartPassive:Y,onMouseupPassive:Q,onMouseleavePassive:Q,onTouchendPassive:Q}),n(Mt,{class:"q-tabs__arrow q-tabs__arrow--right absolute q-tab__icon"+(!0===E.value?"":" q-tabs__arrow--faded"),name:e.rightIcon||u.iconSet.tabs[!0===e.vertical?"down":"right"],onMousedownPassive:K,onTouchstartPassive:K,onMouseupPassive:Q,onMouseleavePassive:Q,onTouchendPassive:Q})])}}),hr=0,pr=["click","keydown"],fr={icon:String,label:[Number,String],alert:[Boolean,String],alertIcon:String,name:{type:[Number,String],default:()=>"t_"+hr++},noCaps:Boolean,tabindex:[String,Number],disable:Boolean,contentClass:String,ripple:{type:[Boolean,Object],default:!0}};function mr(e,t,r,o){let s=y(ze,Oe);if(s===Oe)return console.error("QTab/QRouteTab component needs to be child of QTabs"),Oe;let{proxy:l}=k(),u=a(null),c=a(null),d=a(null),h=i(()=>!0!==e.disable&&!1!==e.ripple&&Object.assign({keyCodes:[13,32],early:!0},!0===e.ripple?{}:e.ripple)),p=i(()=>s.currentModel.value===e.name),f=i(()=>"q-tab relative-position self-stretch flex flex-center text-center"+(!0===p.value?" q-tab--active"+(s.tabProps.value.activeClass?" "+s.tabProps.value.activeClass:"")+(s.tabProps.value.activeColor?` text-${s.tabProps.value.activeColor}`:"")+(s.tabProps.value.activeBgColor?` bg-${s.tabProps.value.activeBgColor}`:""):" q-tab--inactive")+(e.icon&&e.label&&!1===s.tabProps.value.inlineLabel?" q-tab--full":"")+(!0===e.noCaps||!0===s.tabProps.value.noCaps?" q-tab--no-caps":"")+(!0===e.disable?" disabled":" q-focusable q-hoverable cursor-pointer")+(void 0!==o?o.linkClass.value:"")),_=i(()=>"q-tab__content self-stretch flex-center relative-position q-anchor--skip non-selectable "+(!0===s.tabProps.value.inlineLabel?"row no-wrap q-tab__content--inline":"column")+(void 0!==e.contentClass?` ${e.contentClass}`:"")),v=i(()=>!0===e.disable||!0===s.hasFocus.value||!1===p.value&&!0===s.hasActiveTab.value?-1:e.tabindex||0);function b(t,n){if(!0!==n&&!0!==t?.qAvoidFocus&&u.value?.focus(),!0!==e.disable){if(void 0===o)return s.updateModel({name:e.name}),void r("click",t);if(!0===o.hasRouterLink.value){let n=(n={})=>{let a,i=void 0===n.to||!0===De(n.to,e.to)?s.avoidRouteWatcher=Ja():null;return o.navigateToRouterLink(t,{...n,returnRouterError:!0}).catch(e=>{a=e}).then(t=>{if(i===s.avoidRouteWatcher&&(s.avoidRouteWatcher=!1,void 0===a&&(void 0===t||!0===t.message?.startsWith("Avoided redundant navigation"))&&s.updateModel({name:e.name})),!0===n.returnRouterError)return void 0!==a?Promise.reject(a):t})};return r("click",t,n),void(!0!==t.defaultPrevented&&n())}r("click",t)}else!0===o?.hasRouterLink.value&&J(t)}function w(e){pe(e,[13,32])?b(e,!0):!0!==he(e)&&e.keyCode>=35&&e.keyCode<=40&&!0!==e.altKey&&!0!==e.metaKey&&!0===s.onKbdNavigate(e.keyCode,l.$el)&&J(e),r("keydown",e)}let x={name:i(()=>e.name),rootRef:c,tabIndicatorRef:d,routeData:o};return g(()=>{s.unregisterTab(x)}),m(()=>{s.registerTab(x)}),{renderTab:function(a,i){let r={ref:c,class:f.value,tabindex:v.value,role:"tab","aria-selected":!0===p.value?"true":"false","aria-disabled":!0===e.disable?"true":void 0,onClick:b,onKeydown:w,...i};return A(n(a,r,function(){let a=s.tabProps.value.narrowIndicator,i=[],r=n("div",{ref:d,class:["q-tab__indicator",s.tabProps.value.indicatorClass]});void 0!==e.icon&&i.push(n(Mt,{class:"q-tab__icon",name:e.icon})),void 0!==e.label&&i.push(n("div",{class:"q-tab__label"},e.label)),!1!==e.alert&&i.push(void 0!==e.alertIcon?n(Mt,{class:"q-tab__alert-icon",color:!0!==e.alert?e.alert:void 0,name:e.alertIcon}):n("div",{class:"q-tab__alert"+(!0!==e.alert?` text-${e.alert}`:"")})),!0===a&&i.push(r);let o=[n("div",{class:"q-focus-helper",tabindex:-1,ref:u}),n("div",{class:_.value},pt(t.default,i))];return!1===a&&o.push(r),o}()),[[mn,h.value]])},$tabs:s}}var gr=$({name:"QTab",props:fr,emits:pr,setup(e,{slots:t,emit:n}){let{renderTab:a}=mr(e,t,n);return()=>a("div")}}),_r=$({name:"QTabPanels",props:{...wi,...Nt},emits:ki,setup(e,{slots:t}){let n=k(),a=Ot(e,n.proxy.$q),{updatePanelsList:r,getPanelContent:o,panelDirectives:s}=xi(),l=i(()=>"q-tab-panels q-panel-parent"+(!0===a.value?" q-tab-panels--dark q-dark":""));return()=>(r(t),mt("div",{class:l.value},o(),"pan",e.swipeable,()=>s.value))}}),vr=$({name:"QTabPanel",props:bi,setup:(e,{slots:t})=>()=>n("div",{class:"q-tab-panel",role:"tabpanel"},dt(t.default))}),br=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,yr=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,wr=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,kr=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,xr=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,Sr={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>br.test(e),hexaColor:e=>yr.test(e),hexOrHexaColor:e=>wr.test(e),rgbColor:e=>kr.test(e),rgbaColor:e=>xr.test(e),rgbOrRgbaColor:e=>kr.test(e)||xr.test(e),hexOrRgbColor:e=>br.test(e)||kr.test(e),hexaOrRgbaColor:e=>yr.test(e)||xr.test(e),anyColor:e=>wr.test(e)||kr.test(e)||xr.test(e)},Cr={testPattern:Sr},Tr=/^rgb(a)?\((\d{1,3}),(\d{1,3}),(\d{1,3}),?([01]?\.?\d*?)?\)$/;function Er({r:e,g:t,b:n,a:a}){let i=void 0!==a;if(e=Math.round(e),t=Math.round(t),n=Math.round(n),e>255||t>255||n>255||i&&a>100)throw new TypeError("Expected 3 numbers below 256 (and optionally one below 100)");return a=i?(256|Math.round(255*a/100)).toString(16).slice(1):"","#"+(n|t<<8|e<<16|1<<24).toString(16).slice(1)+a}function Pr({r:e,g:t,b:n,a:a}){return`rgb${void 0!==a?"a":""}(${e},${t},${n}${void 0!==a?","+a/100:""})`}function Ar(e){if("string"!=typeof e)throw new TypeError("Expected a string");3===(e=e.replace(/^#/,"")).length?e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]:4===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);let t=parseInt(e,16);return e.length>6?{r:t>>24&255,g:t>>16&255,b:t>>8&255,a:Math.round((255&t)/2.55)}:{r:t>>16,g:t>>8&255,b:255&t}}function Mr({h:e,s:t,v:n,a:a}){let i,r,o;t/=100,n/=100,e/=360;let s=Math.floor(6*e),l=6*e-s,u=n*(1-t),c=n*(1-l*t),d=n*(1-(1-l)*t);switch(s%6){case 0:i=n,r=d,o=u;break;case 1:i=c,r=n,o=u;break;case 2:i=u,r=n,o=d;break;case 3:i=u,r=c,o=n;break;case 4:i=d,r=u,o=n;break;case 5:i=n,r=u,o=c}return{r:Math.round(255*i),g:Math.round(255*r),b:Math.round(255*o),a:a}}function Lr({r:e,g:t,b:n,a:a}){let i,r=Math.max(e,t,n),o=Math.min(e,t,n),s=r-o,l=0===r?0:s/r,u=r/255;switch(r){case o:i=0;break;case e:i=t-n+s*(t1)throw new TypeError("Expected offset to be between -1 and 1");let{r:n,g:a,b:i,a:r}=Rr(e),o=void 0!==r?r/100:0;return Er({r:n,g:a,b:i,a:Math.round(100*Math.min(1,Math.max(0,o+t)))})},getPaletteColor:function(e){if("string"!=typeof e)throw new TypeError("Expected a string as color");let t=document.createElement("div");t.className=`text-${e} invisible fixed no-pointer-events`,document.body.appendChild(t);let n=getComputedStyle(t).getPropertyValue("color");return t.remove(),Er(Rr(n))}},Or=["rgb(255,204,204)","rgb(255,230,204)","rgb(255,255,204)","rgb(204,255,204)","rgb(204,255,230)","rgb(204,255,255)","rgb(204,230,255)","rgb(204,204,255)","rgb(230,204,255)","rgb(255,204,255)","rgb(255,153,153)","rgb(255,204,153)","rgb(255,255,153)","rgb(153,255,153)","rgb(153,255,204)","rgb(153,255,255)","rgb(153,204,255)","rgb(153,153,255)","rgb(204,153,255)","rgb(255,153,255)","rgb(255,102,102)","rgb(255,179,102)","rgb(255,255,102)","rgb(102,255,102)","rgb(102,255,179)","rgb(102,255,255)","rgb(102,179,255)","rgb(102,102,255)","rgb(179,102,255)","rgb(255,102,255)","rgb(255,51,51)","rgb(255,153,51)","rgb(255,255,51)","rgb(51,255,51)","rgb(51,255,153)","rgb(51,255,255)","rgb(51,153,255)","rgb(51,51,255)","rgb(153,51,255)","rgb(255,51,255)","rgb(255,0,0)","rgb(255,128,0)","rgb(255,255,0)","rgb(0,255,0)","rgb(0,255,128)","rgb(0,255,255)","rgb(0,128,255)","rgb(0,0,255)","rgb(128,0,255)","rgb(255,0,255)","rgb(245,0,0)","rgb(245,123,0)","rgb(245,245,0)","rgb(0,245,0)","rgb(0,245,123)","rgb(0,245,245)","rgb(0,123,245)","rgb(0,0,245)","rgb(123,0,245)","rgb(245,0,245)","rgb(214,0,0)","rgb(214,108,0)","rgb(214,214,0)","rgb(0,214,0)","rgb(0,214,108)","rgb(0,214,214)","rgb(0,108,214)","rgb(0,0,214)","rgb(108,0,214)","rgb(214,0,214)","rgb(163,0,0)","rgb(163,82,0)","rgb(163,163,0)","rgb(0,163,0)","rgb(0,163,82)","rgb(0,163,163)","rgb(0,82,163)","rgb(0,0,163)","rgb(82,0,163)","rgb(163,0,163)","rgb(92,0,0)","rgb(92,46,0)","rgb(92,92,0)","rgb(0,92,0)","rgb(0,92,46)","rgb(0,92,92)","rgb(0,46,92)","rgb(0,0,92)","rgb(46,0,92)","rgb(92,0,92)","rgb(255,255,255)","rgb(205,205,205)","rgb(178,178,178)","rgb(153,153,153)","rgb(127,127,127)","rgb(102,102,102)","rgb(76,76,76)","rgb(51,51,51)","rgb(25,25,25)","rgb(0,0,0)"],Ir="M5 5 h10 v10 h-10 v-10 z",qr=$({name:"QColor",props:{...Nt,...ai,modelValue:String,defaultValue:String,defaultView:{type:String,default:"spectrum",validator:e=>["spectrum","tune","palette"].includes(e)},formatModel:{type:String,default:"auto",validator:e=>["auto","hex","rgb","hexa","rgba"].includes(e)},palette:Array,noHeader:Boolean,noHeaderTabs:Boolean,noFooter:Boolean,square:Boolean,flat:Boolean,bordered:Boolean,disable:Boolean,readonly:Boolean},emits:["update:modelValue","change"],setup(e,{emit:t}){let{proxy:o}=k(),{$q:s}=o,l=Ot(e,s),{getCache:u}=vi(),c=a(null),h=a(null),p=i(()=>"auto"===e.formatModel?null:-1!==e.formatModel.indexOf("hex")),f=i(()=>"auto"===e.formatModel?null:-1!==e.formatModel.indexOf("a")),m=a("auto"===e.formatModel?void 0===e.modelValue||null===e.modelValue||""===e.modelValue||e.modelValue.startsWith("#")?"hex":"rgb":e.formatModel.startsWith("hex")?"hex":"rgb"),g=a(e.defaultView),_=a(z(e.modelValue||e.defaultValue)),v=i(()=>!0!==e.disable&&!0!==e.readonly),b=i(()=>void 0===e.modelValue||null===e.modelValue||""===e.modelValue||e.modelValue.startsWith("#")),y=i(()=>null!==p.value?p.value:b.value),w=ri(i(()=>({type:"hidden",name:e.name,value:_.value[!0===y.value?"hex":"rgb"]}))),x=i(()=>null!==f.value?f.value:void 0!==_.value.a),S=i(()=>({backgroundColor:_.value.rgb||"#000"})),C=i(()=>"q-color-picker__header-content q-color-picker__header-content--"+(void 0!==_.value.a&&_.value.a<65||zr(_.value)>.4?"light":"dark")),T=i(()=>({background:`hsl(${_.value.h},100%,50%)`})),E=i(()=>({top:100-_.value.v+"%",[!0===s.lang.rtl?"right":"left"]:`${_.value.s}%`})),P=i(()=>void 0!==e.palette&&0!==e.palette.length?e.palette:Or),A=i(()=>"q-color-picker"+(!0===e.bordered?" q-color-picker--bordered":"")+(!0===e.square?" q-color-picker--square no-border-radius":"")+(!0===e.flat?" q-color-picker--flat no-shadow":"")+(!0===e.disable?" disabled":"")+(!0===l.value?" q-color-picker--dark q-dark":"")),M=i(()=>!0===e.disable?{"aria-disabled":"true"}:{}),L=i(()=>[[Yi,j,void 0,{prevent:!0,stop:!0,mouse:!0}]]);function R(e,n){_.value.hex=Er(e),_.value.rgb=Pr(e),_.value.r=e.r,_.value.g=e.g,_.value.b=e.b,_.value.a=e.a;let a=_.value[!0===y.value?"hex":"rgb"];t("update:modelValue",a),!0===n&&t("change",a)}function z(t){let n=void 0!==f.value?f.value:"auto"===e.formatModel?null:-1!==e.formatModel.indexOf("a");if("string"!=typeof t||0===t.length||!0!==Sr.anyColor(t.replace(/ /g,"")))return{h:0,s:0,v:0,r:0,g:0,b:0,a:!0===n?100:void 0,hex:void 0,rgb:void 0};let a=Rr(t);return!0===n&&void 0===a.a&&(a.a=100),a.hex=Er(a),a.rgb=Pr(a),Object.assign(a,Lr(a))}function N(e,t,n){let a=c.value;if(null===a)return;let i=a.clientWidth,r=a.clientHeight,o=a.getBoundingClientRect(),l=Math.min(i,Math.max(0,e-o.left));!0===s.lang.rtl&&(l=i-l);let u=Math.min(r,Math.max(0,t-o.top)),d=Math.round(100*l/i),h=Math.round(100*Math.max(0,Math.min(1,-u/r+1))),p=Mr({h:_.value.h,s:d,v:h,a:!0===x.value?_.value.a:void 0});_.value.s=d,_.value.v=h,R(p,n)}function O(e,t){let n=Math.round(e),a=Mr({h:n,s:_.value.s,v:_.value.v,a:!0===x.value?_.value.a:void 0});_.value.h=n,R(a,t)}function I(e){O(e,!0)}function q(e,t,n,a,i){if(void 0!==a&&Q(a),!/^[0-9]+$/.test(e))return void(!0===i&&o.$forceUpdate());let r=Math.floor(Number(e));if(r<0||r>n)return void(!0===i&&o.$forceUpdate());let s={r:"r"===t?r:_.value.r,g:"g"===t?r:_.value.g,b:"b"===t?r:_.value.b,a:!0===x.value?"a"===t?r:_.value.a:void 0};if("a"!==t){let e=Lr(s);_.value.h=e.h,_.value.s=e.s,_.value.v=e.v}if(R(s,i),!0!==i&&void 0!==a?.target.selectionEnd){let e=a.target.selectionEnd;d(()=>{a.target.setSelectionRange(e,e)})}}function D(e,t){let n,a=e.target.value;if(Q(e),"hex"===m.value){if(a.length!==(!0===x.value?9:7)||!/^#[0-9A-Fa-f]+$/.test(a))return!0;n=Ar(a)}else{let e;if(!a.endsWith(")"))return!0;if(!0!==x.value&&a.startsWith("rgb(")){if(e=a.substring(4,a.length-1).split(",").map(e=>parseInt(e,10)),3!==e.length||!/^rgb\([0-9]{1,3},[0-9]{1,3},[0-9]{1,3}\)$/.test(a))return!0}else{if(!0!==x.value||!a.startsWith("rgba("))return!0;{if(e=a.substring(5,a.length-1).split(","),4!==e.length||!/^rgba\([0-9]{1,3},[0-9]{1,3},[0-9]{1,3},(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/.test(a))return!0;for(let t=0;t<3;t++){let n=parseInt(e[t],10);if(n<0||n>255)return!0;e[t]=n}let t=parseFloat(e[3]);if(t<0||t>1)return!0;e[3]=t}}if(e[0]<0||e[0]>255||e[1]<0||e[1]>255||e[2]<0||e[2]>255||!0===x.value&&(e[3]<0||e[3]>1))return!0;n={r:e[0],g:e[1],b:e[2],a:!0===x.value?100*e[3]:void 0}}let i=Lr(n);if(_.value.h=i.h,_.value.s=i.s,_.value.v=i.v,R(n,t),!0!==t){let t=e.target.selectionEnd;d(()=>{e.target.setSelectionRange(t,t)})}}function j(e){e.isFinal?N(e.position.left,e.position.top,!0):B(e)}r(()=>e.modelValue,t=>{let n=z(t||e.defaultValue);n.hex!==_.value.hex&&(_.value=n)}),r(()=>e.defaultValue,t=>{if(!e.modelValue&&t){let e=z(t);e.hex!==_.value.hex&&(_.value=e)}});let B=hn(e=>{N(e.position.left,e.position.top)},20);function F(e){N(e.pageX-window.pageXOffset,e.pageY-window.pageYOffset,!0)}function $(e){N(e.pageX-window.pageXOffset,e.pageY-window.pageYOffset)}function V(e){null!==h.value&&(h.value.$el.style.opacity=e?1:0)}function U(e){m.value=e}function H(e){g.value=e}function W(){let e={ref:c,class:"q-color-picker__spectrum non-selectable relative-position cursor-pointer"+(!0!==v.value?" readonly":""),style:T.value,...!0===v.value?{onClick:F,onMousedown:$}:{}},t=[n("div",{style:{paddingBottom:"100%"}}),n("div",{class:"q-color-picker__spectrum-white absolute-full"}),n("div",{class:"q-color-picker__spectrum-black absolute-full"}),n("div",{class:"absolute",style:E.value},[void 0!==_.value.hex?n("div",{class:"q-color-picker__spectrum-circle"}):null])],a=[n(ar,{class:"q-color-picker__hue non-selectable",modelValue:_.value.h,min:0,max:360,trackSize:"8px",innerTrackColor:"transparent",selectionColor:"transparent",readonly:!0!==v.value,thumbPath:Ir,"onUpdate:modelValue":O,onChange:I})];return!0===x.value&&a.push(n(ar,{class:"q-color-picker__alpha non-selectable",modelValue:_.value.a,min:0,max:100,trackSize:"8px",trackColor:"white",innerTrackColor:"transparent",selectionColor:"transparent",trackImg:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==",readonly:!0!==v.value,hideSelection:!0,thumbPath:Ir,...u("alphaSlide",{"onUpdate:modelValue":e=>q(e,"a",100),onChange:e=>q(e,"a",100,void 0,!0)})})),[mt("div",e,t,"spec",v.value,()=>L.value),n("div",{class:"q-color-picker__sliders"},a)]}function G(){return[n("div",{class:"row items-center no-wrap"},[n("div","R"),n(ar,{modelValue:_.value.r,min:0,max:255,color:"red",dark:l.value,readonly:!0!==v.value,...u("rSlide",{"onUpdate:modelValue":e=>q(e,"r",255),onChange:e=>q(e,"r",255,void 0,!0)})}),n("input",{value:_.value.r,maxlength:3,readonly:!0!==v.value,onChange:Q,...u("rIn",{onInput:e=>q(e.target.value,"r",255,e),onBlur:e=>q(e.target.value,"r",255,e,!0)})})]),n("div",{class:"row items-center no-wrap"},[n("div","G"),n(ar,{modelValue:_.value.g,min:0,max:255,color:"green",dark:l.value,readonly:!0!==v.value,...u("gSlide",{"onUpdate:modelValue":e=>q(e,"g",255),onChange:e=>q(e,"g",255,void 0,!0)})}),n("input",{value:_.value.g,maxlength:3,readonly:!0!==v.value,onChange:Q,...u("gIn",{onInput:e=>q(e.target.value,"g",255,e),onBlur:e=>q(e.target.value,"g",255,e,!0)})})]),n("div",{class:"row items-center no-wrap"},[n("div","B"),n(ar,{modelValue:_.value.b,min:0,max:255,color:"blue",readonly:!0!==v.value,dark:l.value,...u("bSlide",{"onUpdate:modelValue":e=>q(e,"b",255),onChange:e=>q(e,"b",255,void 0,!0)})}),n("input",{value:_.value.b,maxlength:3,readonly:!0!==v.value,onChange:Q,...u("bIn",{onInput:e=>q(e.target.value,"b",255,e),onBlur:e=>q(e.target.value,"b",255,e,!0)})})]),!0===x.value?n("div",{class:"row items-center no-wrap"},[n("div","A"),n(ar,{modelValue:_.value.a,color:"grey",readonly:!0!==v.value,dark:l.value,...u("aSlide",{"onUpdate:modelValue":e=>q(e,"a",100),onChange:e=>q(e,"a",100,void 0,!0)})}),n("input",{value:_.value.a,maxlength:3,readonly:!0!==v.value,onChange:Q,...u("aIn",{onInput:e=>q(e.target.value,"a",100,e),onBlur:e=>q(e.target.value,"a",100,e,!0)})})]):null]}function Y(){return[n("div",{class:"row items-center q-color-picker__palette-rows"+(!0===v.value?" q-color-picker__palette-rows--editable":"")},P.value.map(e=>n("div",{class:"q-color-picker__cube col-auto",style:{backgroundColor:e},...!0===v.value?u("palette#"+e,{onClick:()=>{!function(e){let t=z(e),n={r:t.r,g:t.g,b:t.b,a:t.a};void 0===n.a&&(n.a=_.value.a),_.value.h=t.h,_.value.s=t.s,_.value.v=t.v,R(n,!0)}(e)}}):{}})))]}return()=>{let t=[n(_r,{modelValue:g.value,animated:!0},()=>[n(vr,{class:"q-color-picker__spectrum-tab overflow-hidden",name:"spectrum"},W),n(vr,{class:"q-pa-md q-color-picker__tune-tab",name:"tune"},G),n(vr,{class:"q-color-picker__palette-tab",name:"palette"},Y)])];return void 0!==e.name&&!0!==e.disable&&w(t,"push"),!0!==e.noHeader&&t.unshift(function(){let t=[];return!0!==e.noHeaderTabs&&t.push(n(dr,{class:"q-color-picker__header-tabs",modelValue:m.value,dense:!0,align:"justify","onUpdate:modelValue":U},()=>[n(gr,{label:"HEX"+(!0===x.value?"A":""),name:"hex",ripple:!1}),n(gr,{label:"RGB"+(!0===x.value?"A":""),name:"rgb",ripple:!1})])),t.push(n("div",{class:"q-color-picker__header-banner row flex-center no-wrap"},[n("input",{class:"fit",value:_.value[m.value],...!0!==v.value?{readonly:!0}:{},...u("topIn",{onInput:e=>{V(!0===D(e))},onChange:Q,onBlur:e=>{!0===D(e,!0)&&o.$forceUpdate(),V(!1)}})}),n(Mt,{ref:h,class:"q-color-picker__error-icon absolute no-pointer-events",name:s.iconSet.type.negative})])),n("div",{class:"q-color-picker__header relative-position overflow-hidden"},[n("div",{class:"q-color-picker__header-bg absolute-full"}),n("div",{class:C.value,style:S.value},t)])}()),!0!==e.noFooter&&t.push(n("div",{class:"q-color-picker__footer relative-position overflow-hidden"},[n(dr,{class:"absolute-full",modelValue:g.value,dense:!0,align:"justify","onUpdate:modelValue":H},()=>[n(gr,{icon:s.iconSet.colorPicker.spectrum,name:"spectrum",ripple:!1}),n(gr,{icon:s.iconSet.colorPicker.tune,name:"tune",ripple:!1}),n(gr,{icon:s.iconSet.colorPicker.palette,name:"palette",ripple:!1})])])),n("div",{class:A.value,...M.value},t)}}}),Dr=[-61,9,38,199,426,686,756,818,1111,1181,1210,1635,2060,2097,2192,2262,2324,2394,2456,3178];function jr(e,t,n){return"[object Date]"===Object.prototype.toString.call(e)&&(n=e.getDate(),t=e.getMonth()+1,e=e.getFullYear()),function(e){let t,n,a,i=Hr(e).gy,r=i-621,o=Vr(r,!1),s=Ur(i,3,o.march);if(a=e-s,a>=0){if(a<=185)return n=1+Wr(a,31),t=Gr(a,31)+1,{jy:r,jm:n,jd:t};a-=186}else r-=1,a+=179,1===o.leap&&(a+=1);return n=7+Wr(a,30),t=Gr(a,30)+1,{jy:r,jm:n,jd:t}}(Ur(e,t,n))}function Br(e,t,n){return Hr(function(e,t,n){let a=Vr(e,!0);return Ur(a.gy,3,a.march)+31*(t-1)-Wr(t,7)*(t-7)+n-1}(e,t,n))}function Fr(e){return 0===function(e){let t,n,a,i,r,o=Dr.length,s=Dr[0];if(e=Dr[o-1])throw new Error("Invalid Jalaali year "+e);for(r=1;r=Dr[s-1])throw new Error("Invalid Jalaali year "+e);for(o=1;oYr.includes(e),default:"gregorian"},landscape:Boolean,color:String,textColor:String,square:Boolean,flat:Boolean,bordered:Boolean,readonly:Boolean,disable:Boolean},Qr=["update:modelValue"];function Zr(e){return e.year+"/"+et(e.month)+"/"+et(e.day)}function Jr(e,t){let n=i(()=>!0!==e.disable&&!0!==e.readonly),a=i(()=>!0===n.value?0:-1),r=i(()=>{let t=[];return void 0!==e.color&&t.push(`bg-${e.color}`),void 0!==e.textColor&&t.push(`text-${e.textColor}`),t.join(" ")});return{editable:n,tabindex:a,headerClass:r,getLocale:function(){return void 0!==e.locale?{...t.lang.date,...e.locale}:t.lang.date},getCurrentDate:function(t){let n=new Date,a=!0===t?null:0;if("persian"===e.calendar){let e=jr(n);return{year:e.jy,month:e.jm,day:e.jd}}return{year:n.getFullYear(),month:n.getMonth()+1,day:n.getDate(),hour:a,minute:a,second:a,millisecond:a}}}}var Xr=864e5,eo=6e4,to="YYYY-MM-DDTHH:mm:ss.SSSZ",no=/\[((?:[^\]\\]|\\]|\\)*)\]|do|d{1,4}|Mo|M{1,4}|m{1,2}|wo|w{1,2}|Qo|Do|DDDo|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]/g,ao=/(\[[^\]]*\])|do|d{1,4}|Mo|M{1,4}|m{1,2}|wo|w{1,2}|Qo|Do|DDDo|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]|([.*+:?^,\s${}()|\\]+)/g,io={};function ro(e,t){return void 0!==e?e:void 0!==t?t.date:ye.date}function oo(e,t=""){let n=e>0?"-":"+",a=Math.abs(e),i=a%60;return n+et(Math.floor(a/60))+t+et(i)}function so(e,t,n){let a=lo(t),i=new Date(e),r=void 0!==a.year||void 0!==a.month||void 0!==a.date?function(e,t,n){let a=e.getFullYear(),i=e.getMonth(),r=e.getDate();return void 0!==t.year&&(a+=n*t.year,delete t.year),void 0!==t.month&&(i+=n*t.month,delete t.month),e.setDate(1),e.setMonth(2),e.setFullYear(a),e.setMonth(i),e.setDate(Math.min(r,vo(e))),void 0!==t.date&&(e.setDate(e.getDate()+n*t.date),delete t.date),e}(i,a,n):i;for(let e in a){let t=Ze(e);r[`set${t}`](r[`get${t}`]()+n*a[e])}return r}function lo(e){let t={...e};return void 0!==e.years&&(t.year=e.years,delete t.years),void 0!==e.months&&(t.month=e.months,delete t.months),void 0!==e.days&&(t.date=e.days,delete t.days),void 0!==e.day&&(t.date=e.day,delete t.day),void 0!==e.hour&&(t.hours=e.hour,delete t.hour),void 0!==e.minute&&(t.minutes=e.minute,delete t.minute),void 0!==e.second&&(t.seconds=e.second,delete t.second),void 0!==e.millisecond&&(t.milliseconds=e.millisecond,delete t.millisecond),t}function uo(e,t,n){let a=lo(t),i=!0===n?"UTC":"",r=new Date(e),o=void 0!==a.year||void 0!==a.month||void 0!==a.date?function(e,t,n){let a=void 0!==t.year?t.year:e[`get${n}FullYear`](),i=void 0!==t.month?t.month-1:e[`get${n}Month`](),r=new Date(a,i+1,0).getDate(),o=Math.min(r,void 0!==t.date?t.date:e[`get${n}Date`]());return e[`set${n}Date`](1),e[`set${n}Month`](2),e[`set${n}FullYear`](a),e[`set${n}Month`](i),e[`set${n}Date`](o),delete t.year,delete t.month,delete t.date,e}(r,a,i):r;for(let e in a){o[`set${i}${e.charAt(0).toUpperCase()+e.slice(1)}`](a[e])}return o}function co(e,t,n,a,i){let r={year:null,month:null,day:null,hour:null,minute:null,second:null,millisecond:null,timezoneOffset:null,dateHash:null,timeHash:null};if(void 0!==i&&Object.assign(r,i),null==e||""===e||"string"!=typeof e)return r;void 0===t&&(t=to);let o=ro(n,xe.props),s=o.months,l=o.monthsShort,{regex:u,map:c}=function(e,t){let n="("+t.days.join("|")+")",a=e+n;if(void 0!==io[a])return io[a];let i="("+t.daysShort.join("|")+")",r="("+t.months.join("|")+")",o="("+t.monthsShort.join("|")+")",s={},l=0,u=e.replace(ao,e=>{switch(l++,e){case"YY":return s.YY=l,"(-?\\d{1,2})";case"YYYY":return s.YYYY=l,"(-?\\d{1,4})";case"M":return s.M=l,"(\\d{1,2})";case"Mo":return s.M=l++,"(\\d{1,2}(st|nd|rd|th))";case"MM":return s.M=l,"(\\d{2})";case"MMM":return s.MMM=l,o;case"MMMM":return s.MMMM=l,r;case"D":return s.D=l,"(\\d{1,2})";case"Do":return s.D=l++,"(\\d{1,2}(st|nd|rd|th))";case"DD":return s.D=l,"(\\d{2})";case"H":return s.H=l,"(\\d{1,2})";case"HH":return s.H=l,"(\\d{2})";case"h":return s.h=l,"(\\d{1,2})";case"hh":return s.h=l,"(\\d{2})";case"m":return s.m=l,"(\\d{1,2})";case"mm":return s.m=l,"(\\d{2})";case"s":return s.s=l,"(\\d{1,2})";case"ss":return s.s=l,"(\\d{2})";case"S":return s.S=l,"(\\d{1})";case"SS":return s.S=l,"(\\d{2})";case"SSS":return s.S=l,"(\\d{3})";case"A":return s.A=l,"(AM|PM)";case"a":return s.a=l,"(am|pm)";case"aa":return s.aa=l,"(a\\.m\\.|p\\.m\\.)";case"ddd":return i;case"dddd":return n;case"Q":case"d":case"E":return"(\\d{1})";case"do":return l++,"(\\d{1}(st|nd|rd|th))";case"Qo":return"(1st|2nd|3rd|4th)";case"DDD":case"DDDD":return"(\\d{1,3})";case"DDDo":return l++,"(\\d{1,3}(st|nd|rd|th))";case"w":return"(\\d{1,2})";case"wo":return l++,"(\\d{1,2}(st|nd|rd|th))";case"ww":return"(\\d{2})";case"Z":return s.Z=l,"(Z|[+-]\\d{2}:\\d{2})";case"ZZ":return s.ZZ=l,"(Z|[+-]\\d{2}\\d{2})";case"X":return s.X=l,"(-?\\d+)";case"x":return s.x=l,"(-?\\d{4,})";default:return l--,"["===e[0]&&(e=e.substring(1,e.length-1)),e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}}),c={map:s,regex:new RegExp("^"+u)};return io[a]=c,c}(t,o),d=e.match(u);if(null===d)return r;let h="";if(void 0!==c.X||void 0!==c.x){let e=parseInt(d[void 0!==c.X?c.X:c.x],10);if(!0===isNaN(e)||e<0)return r;let t=new Date(e*(void 0!==c.X?1e3:1));r.year=t.getFullYear(),r.month=t.getMonth()+1,r.day=t.getDate(),r.hour=t.getHours(),r.minute=t.getMinutes(),r.second=t.getSeconds(),r.millisecond=t.getMilliseconds()}else{if(void 0!==c.YYYY)r.year=parseInt(d[c.YYYY],10);else if(void 0!==c.YY){let e=parseInt(d[c.YY],10);r.year=e<0?e:2e3+e}if(void 0!==c.M){if(r.month=parseInt(d[c.M],10),r.month<1||r.month>12)return r}else void 0!==c.MMM?r.month=l.indexOf(d[c.MMM])+1:void 0!==c.MMMM&&(r.month=s.indexOf(d[c.MMMM])+1);if(void 0!==c.D){if(r.day=parseInt(d[c.D],10),null===r.year||null===r.month||r.day<1)return r;let e="persian"!==a?new Date(r.year,r.month,0).getDate():$r(r.year,r.month);if(r.day>e)return r}void 0!==c.H?r.hour=parseInt(d[c.H],10)%24:void 0!==c.h&&(r.hour=parseInt(d[c.h],10)%12,(c.A&&"PM"===d[c.A]||c.a&&"pm"===d[c.a]||c.aa&&"p.m."===d[c.aa])&&(r.hour+=12),r.hour=r.hour%24),void 0!==c.m&&(r.minute=parseInt(d[c.m],10)%60),void 0!==c.s&&(r.second=parseInt(d[c.s],10)%60),void 0!==c.S&&(r.millisecond=parseInt(d[c.S],10)*10**(3-d[c.S].length)),(void 0!==c.Z||void 0!==c.ZZ)&&(h=void 0!==c.Z?d[c.Z].replace(":",""):d[c.ZZ],r.timezoneOffset=("+"===h[0]?-1:1)*(60*h.slice(1,3)+1*h.slice(3,5)))}return r.dateHash=et(r.year,4)+"/"+et(r.month)+"/"+et(r.day),r.timeHash=et(r.hour)+":"+et(r.minute)+":"+et(r.second)+h,r}function ho(e){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate());t.setDate(t.getDate()-(t.getDay()+6)%7+3);let n=new Date(t.getFullYear(),0,4);n.setDate(n.getDate()-(n.getDay()+6)%7+3);let a=t.getTimezoneOffset()-n.getTimezoneOffset();t.setHours(t.getHours()-a);let i=(t-n)/(7*Xr);return 1+Math.floor(i)}function po(e,t){let n=new Date(e);return!0===t?function(e){return 1e4*e.getFullYear()+100*e.getMonth()+e.getDate()}(n):n.getTime()}function fo(e,t,n){let a=new Date(e),i="set"+(!0===n?"UTC":"");switch(t){case"year":case"years":a[`${i}Month`](0);case"month":case"months":a[`${i}Date`](1);case"day":case"days":case"date":a[`${i}Hours`](0);case"hour":case"hours":a[`${i}Minutes`](0);case"minute":case"minutes":a[`${i}Seconds`](0);case"second":case"seconds":a[`${i}Milliseconds`](0)}return a}function mo(e,t,n){return(e.getTime()-e.getTimezoneOffset()*eo-(t.getTime()-t.getTimezoneOffset()*eo))/n}function go(e,t,n="days"){let a=new Date(e),i=new Date(t);switch(n){case"years":case"year":return a.getFullYear()-i.getFullYear();case"months":case"month":return 12*(a.getFullYear()-i.getFullYear())+a.getMonth()-i.getMonth();case"days":case"day":case"date":return mo(fo(a,"day"),fo(i,"day"),Xr);case"hours":case"hour":return mo(fo(a,"hour"),fo(i,"hour"),36e5);case"minutes":case"minute":return mo(fo(a,"minute"),fo(i,"minute"),eo);case"seconds":case"second":return mo(fo(a,"second"),fo(i,"second"),1e3)}}function _o(e){return go(e,fo(e,"year"),"days")+1}function vo(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function bo(e){if(e>=11&&e<=13)return`${e}th`;switch(e%10){case 1:return`${e}st`;case 2:return`${e}nd`;case 3:return`${e}rd`}return`${e}th`}var yo={YY(e,t,n){let a=this.YYYY(e,t,n)%100;return a>=0?et(a):"-"+et(Math.abs(a))},YYYY:(e,t,n)=>n??e.getFullYear(),M:e=>e.getMonth()+1,Mo:e=>bo(e.getMonth()+1),MM:e=>et(e.getMonth()+1),MMM:(e,t)=>t.monthsShort[e.getMonth()],MMMM:(e,t)=>t.months[e.getMonth()],Q:e=>Math.ceil((e.getMonth()+1)/3),Qo(e){return bo(this.Q(e))},D:e=>e.getDate(),Do:e=>bo(e.getDate()),DD:e=>et(e.getDate()),DDD:e=>_o(e),DDDo:e=>bo(_o(e)),DDDD:e=>et(_o(e),3),d:e=>e.getDay(),do:e=>bo(e.getDay()),dd:(e,t)=>t.days[e.getDay()].slice(0,2),ddd:(e,t)=>t.daysShort[e.getDay()],dddd:(e,t)=>t.days[e.getDay()],E:e=>e.getDay()||7,w:e=>ho(e),wo:e=>bo(ho(e)),ww:e=>et(ho(e)),H:e=>e.getHours(),HH:e=>et(e.getHours()),h(e){let t=e.getHours();return 0===t?12:t>12?t%12:t},hh(e){return et(this.h(e))},m:e=>e.getMinutes(),mm:e=>et(e.getMinutes()),s:e=>e.getSeconds(),ss:e=>et(e.getSeconds()),S:e=>Math.floor(e.getMilliseconds()/100),SS:e=>et(Math.floor(e.getMilliseconds()/10)),SSS:e=>et(e.getMilliseconds(),3),A:e=>e.getHours()<12?"AM":"PM",a:e=>e.getHours()<12?"am":"pm",aa:e=>e.getHours()<12?"a.m.":"p.m.",Z:(e,t,n,a)=>oo(a??e.getTimezoneOffset(),":"),ZZ:(e,t,n,a)=>oo(a??e.getTimezoneOffset()),X:e=>Math.floor(e.getTime()/1e3),x:e=>e.getTime()};function wo(e,t,n,a,i){if(0!==e&&!e||e===1/0||e===-1/0)return;let r=new Date(e);if(isNaN(r))return;void 0===t&&(t=to);let o=ro(n,xe.props);return t.replace(no,(e,t)=>e in yo?yo[e](r,o,a,i):void 0===t?e:t.split("\\]").join("]"))}var ko={isValid:function(e){return"number"==typeof e||!1===isNaN(Date.parse(e))},extractDate:function(e,t,n){let a=co(e,t,n),i=new Date(a.year,null===a.month?null:a.month-1,null===a.day?1:a.day,a.hour,a.minute,a.second,a.millisecond),r=i.getTimezoneOffset();return null===a.timezoneOffset||a.timezoneOffset===r?i:so(i,{minutes:a.timezoneOffset-r},1)},buildDate:function(e,t){return uo(new Date,e,t)},getDayOfWeek:function(e){let t=new Date(e).getDay();return 0===t?7:t},getWeekOfYear:ho,isBetweenDates:function(e,t,n,a={}){let i=po(t,a.onlyDate),r=po(n,a.onlyDate),o=po(e,a.onlyDate);return(o>i||!0===a.inclusiveFrom&&o===i)&&(o{t=Math.max(t,new Date(e))}),t},getMinDate:function(e){let t=new Date(e);return Array.prototype.slice.call(arguments,1).forEach(e=>{t=Math.min(t,new Date(e))}),t},getDateDiff:go,getDayOfYear:_o,inferDateFormat:function(e){return!0===Be(e)?"date":"number"==typeof e?"number":"string"},getDateBetween:function(e,t,n){let a=new Date(e);if(t){let e=new Date(t);if(ae)return e}return a},isSameDate:function(e,t,n){let a=new Date(e),i=new Date(t);if(void 0===n)return a.getTime()===i.getTime();switch(n){case"second":case"seconds":if(a.getSeconds()!==i.getSeconds())return!1;case"minute":case"minutes":if(a.getMinutes()!==i.getMinutes())return!1;case"hour":case"hours":if(a.getHours()!==i.getHours())return!1;case"day":case"days":case"date":if(a.getDate()!==i.getDate())return!1;case"month":case"months":if(a.getMonth()!==i.getMonth())return!1;case"year":case"years":if(a.getFullYear()!==i.getFullYear())return!1;break;default:throw new Error(`date isSameDate unknown unit ${n}`)}return!0},daysInMonth:vo,formatDate:wo,clone:function(e){return!0===Be(e)?new Date(e.getTime()):e}},xo=20,So=["Calendar","Years","Months"],Co=e=>So.includes(e),To=e=>/^-?[\d]+\/[0-1]\d$/.test(e),Eo=" — ";function Po(e){return e.year+"/"+et(e.month)}var Ao=$({name:"QDate",props:{...Kr,...ai,...Nt,modelValue:{required:!0,validator:e=>"string"==typeof e||!0===Array.isArray(e)||Object(e)===e||null===e},multiple:Boolean,range:Boolean,title:String,subtitle:String,mask:{...Kr.mask,default:"YYYY/MM/DD"},defaultYearMonth:{type:String,validator:To},yearsInMonthView:Boolean,events:[Array,Function],eventColor:[String,Function],emitImmediately:Boolean,options:[Array,Function],navigationMinYearMonth:{type:String,validator:To},navigationMaxYearMonth:{type:String,validator:To},noUnset:Boolean,firstDayOfWeek:[String,Number],todayBtn:Boolean,minimal:Boolean,defaultView:{type:String,default:"Calendar",validator:Co}},emits:[...Qr,"rangeStart","rangeEnd","navigation"],setup(e,{slots:t,emit:o}){let s,{proxy:l}=k(),{$q:u}=l,c=Ot(e,u),{getCache:h}=vi(),{tabindex:p,headerClass:f,getLocale:m,getCurrentDate:g}=Jr(e,u),_=ri(ii(e)),v=a(null),b=a(fe()),y=a(m()),w=i(()=>fe()),x=i(()=>m()),C=i(()=>g()),T=a(ge(b.value,y.value)),E=a(e.defaultView),P=i(()=>!0===u.lang.rtl?"right":"left"),A=a(P.value),M=a(P.value),L=T.value.year,R=a(L-L%xo-(L<0?xo:0)),z=a(null),N=i(()=>{let t=!0===e.landscape?"landscape":"portrait";return`q-date q-date--${t} q-date--${t}-${!0===e.minimal?"minimal":"standard"}`+(!0===c.value?" q-date--dark q-dark":"")+(!0===e.bordered?" q-date--bordered":"")+(!0===e.square?" q-date--square no-border-radius":"")+(!0===e.flat?" q-date--flat no-shadow":"")+(!0===e.disable?" disabled":!0===e.readonly?" q-date--readonly":"")}),O=i(()=>e.color||"primary"),I=i(()=>e.textColor||"white"),q=i(()=>!0===e.emitImmediately&&!0!==e.multiple&&!0!==e.range),D=i(()=>!0===Array.isArray(e.modelValue)?e.modelValue:null!==e.modelValue&&void 0!==e.modelValue?[e.modelValue]:[]),j=i(()=>D.value.filter(e=>"string"==typeof e).map(e=>me(e,b.value,y.value)).filter(e=>null!==e.dateHash&&null!==e.day&&null!==e.month&&null!==e.year)),B=i(()=>{let e=e=>me(e,b.value,y.value);return D.value.filter(e=>!0===je(e)&&void 0!==e.from&&void 0!==e.to).map(t=>({from:e(t.from),to:e(t.to)})).filter(e=>null!==e.from.dateHash&&null!==e.to.dateHash&&e.from.dateHash"persian"!==e.calendar?e=>new Date(e.year,e.month-1,e.day):e=>{let t=Br(e.year,e.month,e.day);return new Date(t.gy,t.gm-1,t.gd)}),$=i(()=>"persian"===e.calendar?Zr:(e,t,n)=>wo(new Date(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond),void 0===t?b.value:t,void 0===n?y.value:n,e.year,e.timezoneOffset)),V=i(()=>j.value.length+B.value.reduce((e,t)=>e+1+go(F.value(t.to),F.value(t.from)),0)),U=i(()=>{if(void 0!==e.title&&null!==e.title&&0!==e.title.length)return e.title;if(null!==z.value){let e=z.value.init,t=F.value(e);return y.value.daysShort[t.getDay()]+", "+y.value.monthsShort[e.month-1]+" "+e.day+Eo+"?"}if(0===V.value)return Eo;if(V.value>1)return`${V.value} ${y.value.pluralDay}`;let t=j.value[0],n=F.value(t);return!0===isNaN(n.valueOf())?Eo:void 0!==y.value.headerTitle?y.value.headerTitle(n,t):y.value.daysShort[n.getDay()]+", "+y.value.monthsShort[t.month-1]+" "+t.day}),H=i(()=>j.value.concat(B.value.map(e=>e.from)).sort((e,t)=>e.year-t.year||e.month-t.month)[0]),W=i(()=>j.value.concat(B.value.map(e=>e.to)).sort((e,t)=>t.year-e.year||t.month-e.month)[0]),G=i(()=>{if(void 0!==e.subtitle&&null!==e.subtitle&&0!==e.subtitle.length)return e.subtitle;if(0===V.value)return Eo;if(V.value>1){let e=H.value,t=W.value,n=y.value.monthsShort;return n[e.month-1]+(e.year!==t.year?" "+e.year+Eo+n[t.month-1]+" ":e.month!==t.month?Eo+n[t.month-1]:"")+" "+t.year}return j.value[0].year}),Y=i(()=>{let e=[u.iconSet.datetime.arrowLeft,u.iconSet.datetime.arrowRight];return!0===u.lang.rtl?e.reverse():e}),K=i(()=>void 0!==e.firstDayOfWeek?Number(e.firstDayOfWeek):y.value.firstDayOfWeek),Q=i(()=>{let e=y.value.daysShort,t=K.value;return t>0?e.slice(t,7).concat(e.slice(0,t)):e}),Z=i(()=>{let t=T.value;return"persian"!==e.calendar?new Date(t.year,t.month,0).getDate():$r(t.year,t.month)}),J=i(()=>"function"==typeof e.eventColor?e.eventColor:()=>e.eventColor),X=i(()=>{if(void 0===e.navigationMinYearMonth)return null;let t=e.navigationMinYearMonth.split("/");return{year:parseInt(t[0],10),month:parseInt(t[1],10)}}),ee=i(()=>{if(void 0===e.navigationMaxYearMonth)return null;let t=e.navigationMaxYearMonth.split("/");return{year:parseInt(t[0],10),month:parseInt(t[1],10)}}),te=i(()=>{let e={month:{prev:!0,next:!0},year:{prev:!0,next:!0}};return null!==X.value&&X.value.year>=T.value.year&&(e.year.prev=!1,X.value.year===T.value.year&&X.value.month>=T.value.month&&(e.month.prev=!1)),null!==ee.value&&ee.value.year<=T.value.year&&(e.year.next=!1,ee.value.year===T.value.year&&ee.value.month<=T.value.month&&(e.month.next=!1)),e}),ne=i(()=>{let e={};return j.value.forEach(t=>{let n=Po(t);void 0===e[n]&&(e[n]=[]),e[n].push(t.day)}),e}),ae=i(()=>{let e={};return B.value.forEach(t=>{let n=Po(t.from),a=Po(t.to);if(void 0===e[n]&&(e[n]=[]),e[n].push({from:t.from.day,to:n===a?t.to.day:void 0,range:t}),n12&&(o.year++,o.month=1)}}),e}),ie=i(()=>{if(null===z.value)return;let{init:e,initHash:t,final:n,finalHash:a}=z.value,[i,r]=t<=a?[e,n]:[n,e],o=Po(i),s=Po(r);if(o!==re.value&&s!==re.value)return;let l={};return o===re.value?(l.from=i.day,l.includeFrom=!0):l.from=1,s===re.value?(l.to=r.day,l.includeTo=!0):l.to=Z.value,l}),re=i(()=>Po(T.value)),oe=i(()=>{let t={};if(void 0===e.options){for(let e=1;e<=Z.value;e++)t[e]=!0;return t}let n="function"==typeof e.options?e.options:t=>e.options.includes(t);for(let e=1;e<=Z.value;e++){let a=re.value+"/"+et(e);t[e]=n(a)}return t}),se=i(()=>{let t={};if(void 0===e.events)for(let e=1;e<=Z.value;e++)t[e]=!1;else{let n="function"==typeof e.events?e.events:t=>e.events.includes(t);for(let e=1;e<=Z.value;e++){let a=re.value+"/"+et(e);t[e]=!0===n(a)&&J.value(a)}}return t}),le=i(()=>{let t,n,{year:a,month:i}=T.value;if("persian"!==e.calendar)t=new Date(a,i-1,1),n=new Date(a,i-1,0).getDate();else{let e=Br(a,i,1);t=new Date(e.gy,e.gm-1,e.gd);let r=i-1,o=a;0===r&&(r=12,o--),n=$r(o,r)}return{days:t.getDay()-K.value-1,endDay:n}}),ue=i(()=>{let e=[],{days:t,endDay:n}=le.value,a=t<0?t+7:t;if(a<6)for(let t=n-a;t<=n;t++)e.push({i:t,fill:!0});let i=e.length;for(let t=1;t<=Z.value;t++){let n={i:t,event:se.value[t],classes:[]};!0===oe.value[t]&&(n.in=!0,n.flat=!0),e.push(n)}if(void 0!==ne.value[re.value]&&ne.value[re.value].forEach(t=>{let n=i+t-1;Object.assign(e[n],{selected:!0,unelevated:!0,flat:!1,color:O.value,textColor:I.value})}),void 0!==ae.value[re.value]&&ae.value[re.value].forEach(t=>{if(void 0!==t.from){let n=i+t.from-1,a=i+(t.to||Z.value)-1;for(let i=n;i<=a;i++)Object.assign(e[i],{range:t.range,unelevated:!0,color:O.value,textColor:I.value});Object.assign(e[n],{rangeFrom:!0,flat:!1}),void 0!==t.to&&Object.assign(e[a],{rangeTo:!0,flat:!1})}else if(void 0!==t.to){let n=i+t.to-1;for(let a=i;a<=n;a++)Object.assign(e[a],{range:t.range,unelevated:!0,color:O.value,textColor:I.value});Object.assign(e[n],{flat:!1,rangeTo:!0})}else{let n=i+Z.value-1;for(let a=i;a<=n;a++)Object.assign(e[a],{range:t.range,unelevated:!0,color:O.value,textColor:I.value})}}),void 0!==ie.value){let t=i+ie.value.from-1,n=i+ie.value.to-1;for(let a=t;a<=n;a++)e[a].color=O.value,e[a].editRange=!0;!0===ie.value.includeFrom&&(e[t].editRangeFrom=!0),!0===ie.value.includeTo&&(e[n].editRangeTo=!0)}T.value.year===C.value.year&&T.value.month===C.value.month&&(e[i+C.value.day-1].today=!0);let r=e.length%7;if(r>0){let t=7-r;for(let n=1;n<=t;n++)e.push({i:n,fill:!0})}return e.forEach(e=>{let t="q-date__calendar-item ";!0===e.fill?t+="q-date__calendar-item--fill":(t+="q-date__calendar-item--"+(!0===e.in?"in":"out"),void 0!==e.range&&(t+=" q-date__range"+(!0===e.rangeTo?"-to":!0===e.rangeFrom?"-from":"")),!0===e.editRange&&(t+=` q-date__edit-range${!0===e.editRangeFrom?"-from":""}${!0===e.editRangeTo?"-to":""}`),(void 0!==e.range||!0===e.editRange)&&(t+=` text-${e.color}`)),e.classes=t}),e}),ce=i(()=>!0===e.disable?{"aria-disabled":"true"}:{});function de(e){s=JSON.stringify(e)}function he(){let{year:e,month:t,day:n}=C.value,a={...T.value,year:e,month:t,day:n},i=ne.value[Po(a)];(void 0===i||!1===i.includes(a.day))&&Ee(a),pe(a.year,a.month)}function pe(e,t){E.value="Calendar",ke(e,t)}function fe(){return"persian"===e.calendar?"YYYY/MM/DD":e.mask}function me(t,n,a){return co(t,n,a,e.calendar,{hour:0,minute:0,second:0,millisecond:0})}function ge(t,n){let a=!0===Array.isArray(e.modelValue)?e.modelValue:e.modelValue?[e.modelValue]:[];if(0===a.length)return _e();let i=a[a.length-1],r=me(void 0!==i.from?i.from:i,t,n);return null===r.dateHash?_e():r}function _e(){let t,n;if(void 0!==e.defaultYearMonth){let a=e.defaultYearMonth.split("/");t=parseInt(a[0],10),n=parseInt(a[1],10)}else{let e=void 0!==C.value?C.value:g();t=e.year,n=e.month}return{year:t,month:n,day:1,hour:0,minute:0,second:0,millisecond:0,dateHash:t+"/"+et(n)+"/01"}}function ve(e){let t=T.value.year,n=Number(T.value.month)+e;13===n?(n=1,t++):0===n&&(n=12,t--),ke(t,n),!0===q.value&&Se("month")}function be(e){ke(Number(T.value.year)+e,T.value.month),!0===q.value&&Se("year")}function ye(t){ke(t,T.value.month),E.value="Years"===e.defaultView?"Months":"Calendar",!0===q.value&&Se("year")}function we(e){return{year:e.year,month:e.month,day:e.day}}function ke(e,t,n){if(null!==X.value&&e<=X.value.year&&((t=ee.value.year&&((t>ee.value.month||e>ee.value.year)&&(t=ee.value.month),e=ee.value.year),void 0!==n){let{hour:e,minute:t,second:a,millisecond:i,timezoneOffset:r,timeHash:o}=n;Object.assign(T.value,{hour:e,minute:t,second:a,millisecond:i,timezoneOffset:r,timeHash:o})}let a=e+"/"+et(t)+"/01";a!==T.value.dateHash&&(A.value=T.value.dateHash{R.value=e-e%xo-(e<0?xo:0),Object.assign(T.value,{year:e,month:t,day:1,dateHash:a})}))}function xe(t,n,a){let i=null!==t&&1===t.length&&!1===e.multiple?t[0]:t,{reason:r,details:s}=Ce(n,a);de(i),o("update:modelValue",i,r,s)}function Se(t){let n=void 0!==j.value[0]&&null!==j.value[0].dateHash?{...j.value[0]}:{...T.value};d(()=>{n.year=T.value.year,n.month=T.value.month;let a="persian"!==e.calendar?new Date(n.year,n.month,0).getDate():$r(n.year,n.month);n.day=Math.min(Math.max(1,n.day),a);let i=Te(n),{details:r}=Ce("",n);de(i),o("update:modelValue",i,t,r)})}function Ce(e,t){return void 0!==t.from?{reason:`${e}-range`,details:{...we(t.target),from:we(t.from),to:we(t.to)}}:{reason:`${e}-day`,details:we(t)}}function Te(e,t,n){return void 0!==e.from?{from:$.value(e.from,t,n),to:$.value(e.to,t,n)}:$.value(e,t,n)}function Ee(t){let n;if(!0===e.multiple)if(void 0!==t.from){let e=Zr(t.from),a=Zr(t.to),i=j.value.filter(t=>t.dateHasha),r=B.value.filter(({from:t,to:n})=>n.dateHasha);n=i.concat(r).concat(t).map(e=>Te(e))}else{let e=D.value.slice();e.push(Te(t)),n=e}else n=Te(t);xe(n,"add",t)}function Pe(t){if(!0===e.noUnset)return;let n=null;if(!0===e.multiple&&!0===Array.isArray(e.modelValue)){let a=Te(t);n=void 0!==t.from?e.modelValue.filter(e=>void 0===e.from||e.from!==a.from&&e.to!==a.to):e.modelValue.filter(e=>e!==a),0===n.length&&(n=null)}xe(n,"remove",t)}function Ae(t,n,a){let i=j.value.concat(B.value).map(e=>Te(e,t,n)).filter(e=>void 0!==e.from?null!==e.from.dateHash&&null!==e.to.dateHash:null!==e.dateHash),r=(!0===e.multiple?i:i[0])||null;de(r),o("update:modelValue",r,a)}function Me(){if(!0!==e.minimal)return n("div",{class:"q-date__header "+f.value},[n("div",{class:"relative-position"},[n(S,{name:"q-transition--fade"},()=>n("div",{key:"h-yr-"+G.value,class:"q-date__header-subtitle q-date__header-link "+("Years"===E.value?"q-date__header-link--active":"cursor-pointer"),tabindex:p.value,...h("vY",{onClick(){E.value="Years"},onKeyup(e){13===e.keyCode&&(E.value="Years")}})},[G.value]))]),n("div",{class:"q-date__header-title relative-position flex no-wrap"},[n("div",{class:"relative-position col"},[n(S,{name:"q-transition--fade"},()=>n("div",{key:"h-sub"+U.value,class:"q-date__header-title-label q-date__header-link "+("Calendar"===E.value?"q-date__header-link--active":"cursor-pointer"),tabindex:p.value,...h("vC",{onClick(){E.value="Calendar"},onKeyup(e){13===e.keyCode&&(E.value="Calendar")}})},[U.value]))]),!0===e.todayBtn?n(An,{class:"q-date__header-today self-start",icon:u.iconSet.datetime.today,"aria-label":u.lang.date.today,flat:!0,size:"sm",round:!0,tabindex:p.value,onClick:he}):null])])}function Le({label:e,type:t,key:a,dir:i,goTo:r,boundaries:o,cls:s}){return[n("div",{class:"row items-center q-date__arrow"},[n(An,{round:!0,dense:!0,size:"sm",flat:!0,icon:Y.value[0],"aria-label":"Years"===t?u.lang.date.prevYear:u.lang.date.prevMonth,tabindex:p.value,disable:!1===o.prev,...h("go-#"+t,{onClick(){r(-1)}})})]),n("div",{class:"relative-position overflow-hidden flex flex-center"+s},[n(S,{name:"q-transition--jump-"+i},()=>n("div",{key:a},[n(An,{flat:!0,dense:!0,noCaps:!0,label:e,tabindex:p.value,...h("view#"+t,{onClick:()=>{E.value=t}})})]))]),n("div",{class:"row items-center q-date__arrow"},[n(An,{round:!0,dense:!0,size:"sm",flat:!0,icon:Y.value[1],"aria-label":"Years"===t?u.lang.date.nextYear:u.lang.date.nextMonth,tabindex:p.value,disable:!1===o.next,...h("go+#"+t,{onClick(){r(1)}})})])]}r(()=>e.modelValue,e=>{if(s===JSON.stringify(e))s=0;else{let e=ge(b.value,y.value);ke(e.year,e.month,e)}}),r(E,()=>{null!==v.value&&!0===l.$el.contains(document.activeElement)&&v.value.focus()}),r(()=>T.value.year+"|"+T.value.month,()=>{o("navigation",{year:T.value.year,month:T.value.month})}),r(w,e=>{Ae(e,y.value,"mask"),b.value=e}),r(x,e=>{Ae(b.value,e,"locale"),y.value=e});let Re={Calendar:()=>[n("div",{key:"calendar-view",class:"q-date__view q-date__calendar"},[n("div",{class:"q-date__navigation row items-center no-wrap"},Le({label:y.value.months[T.value.month-1],type:"Months",key:T.value.month,dir:A.value,goTo:ve,boundaries:te.value.month,cls:" col"}).concat(Le({label:T.value.year,type:"Years",key:T.value.year,dir:M.value,goTo:be,boundaries:te.value.year,cls:""}))),n("div",{class:"q-date__calendar-weekdays row items-center no-wrap"},Q.value.map(e=>n("div",{class:"q-date__calendar-item"},[n("div",e)]))),n("div",{class:"q-date__calendar-days-container relative-position overflow-hidden"},[n(S,{name:"q-transition--slide-"+A.value},()=>n("div",{key:re.value,class:"q-date__calendar-days fit"},ue.value.map(t=>n("div",{class:t.classes},[!0===t.in?n(An,{class:!0===t.today?"q-date__today":"",dense:!0,flat:t.flat,unelevated:t.unelevated,color:t.color,textColor:t.textColor,label:t.i,tabindex:p.value,...h("day#"+t.i,{onClick:()=>{!function(t){let n={...T.value,day:t};if(!1===e.range)return void function(e,t){(!0===ne.value[t]?.includes(e.day)?Pe:Ee)(e)}(n,re.value);if(null===z.value){let a=ue.value.find(e=>!0!==e.fill&&e.i===t);if(!0!==e.noUnset&&void 0!==a.range)return void Pe({target:n,from:a.range.from,to:a.range.to});if(!0===a.selected)return void Pe(n);let i=Zr(n);z.value={init:n,initHash:i,final:n,finalHash:i},o("rangeStart",we(n))}else{let e=z.value.initHash,t=Zr(n),a=e<=t?{from:z.value.init,to:n}:{from:n,to:z.value.init};z.value=null,Ee(e===t?n:{target:n,...a}),o("rangeEnd",{from:we(a.from),to:we(a.to)})}}(t.i)},onMouseover:()=>{!function(e){if(null!==z.value){let t={...T.value,day:e};Object.assign(z.value,{final:t,finalHash:Zr(t)})}}(t.i)}})},!1!==t.event?()=>n("div",{class:"q-date__event bg-"+t.event}):null):n("div",""+t.i)]))))])])],Months(){let t=T.value.year===C.value.year,a=e=>null!==X.value&&T.value.year===X.value.year&&X.value.month>e||null!==ee.value&&T.value.year===ee.value.year&&ee.value.month{let r=T.value.month===i+1;return n("div",{class:"q-date__months-item flex flex-center"},[n(An,{class:!0===t&&C.value.month===i+1?"q-date__today":null,flat:!0!==r,label:e,unelevated:r,color:!0===r?O.value:null,textColor:!0===r?I.value:null,tabindex:p.value,disable:a(i+1),...h("month#"+i,{onClick:()=>{!function(e){ke(T.value.year,e),E.value="Calendar",!0===q.value&&Se("month")}(i+1)}})})])});return!0===e.yearsInMonthView&&i.unshift(n("div",{class:"row no-wrap full-width"},[Le({label:T.value.year,type:"Years",key:T.value.year,dir:M.value,goTo:be,boundaries:te.value.year,cls:" col"})])),n("div",{key:"months-view",class:"q-date__view q-date__months flex flex-center"},i)},Years(){let e=R.value,t=e+xo,a=[],i=e=>null!==X.value&&X.value.year>e||null!==ee.value&&ee.value.year{ye(r)}})})]))}return n("div",{class:"q-date__view q-date__years flex flex-center"},[n("div",{class:"col-auto"},[n(An,{round:!0,dense:!0,flat:!0,icon:Y.value[0],"aria-label":u.lang.date.prevRangeYears(xo),tabindex:p.value,disable:i(e),...h("y-",{onClick:()=>{R.value-=xo}})})]),n("div",{class:"q-date__years-content col self-stretch row items-center"},a),n("div",{class:"col-auto"},[n(An,{round:!0,dense:!0,flat:!0,icon:Y.value[1],"aria-label":u.lang.date.nextRangeYears(xo),tabindex:p.value,disable:i(t),...h("y+",{onClick:()=>{R.value+=xo}})})])])}};return Object.assign(l,{setToday:he,setView:function(e){!0===Co(e)&&(E.value=e)},offsetCalendar:function(e,t){["month","year"].includes(e)&&("month"===e?ve:be)(!0===t?-1:1)},setCalendarTo:pe,setEditingRange:function(t,n){if(!1===e.range||!t)return void(z.value=null);let a=Object.assign({...T.value},t),i=void 0!==n?Object.assign({...T.value},n):a;z.value={init:a,initHash:Zr(a),final:i,finalHash:Zr(i)},pe(a.year,a.month)}}),()=>{let a=[n("div",{class:"q-date__content col relative-position"},[n(S,{name:"q-transition--fade"},Re[E.value])])],i=dt(t.default);return void 0!==i&&a.push(n("div",{class:"q-date__actions"},i)),void 0!==e.name&&!0!==e.disable&&_(a,"push"),n("div",{class:N.value,...ce.value},[Me(),n("div",{ref:v,class:"q-date__main col column",tabindex:-1},a)])}}});function Mo(e,t,n){let a;function i(){void 0!==a&&(be.remove(a),a=void 0)}return g(()=>{!0===e.value&&i()}),{removeFromHistory:i,addToHistory(){a={condition:()=>!0===n.value,handler:t},be.add(a)}}}var Lo,Ro,zo,No,Oo,Io,qo=0,Do=!1,jo=null;function Bo(e){(function(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;let t=K(e),n=e.shiftKey&&!e.deltaX,a=!n&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),i=n||a?e.deltaY:e.deltaX;for(let e=0;e0&&n.scrollTop+n.clientHeight===n.scrollHeight:i<0&&0===n.scrollLeft||i>0&&n.scrollLeft+n.clientWidth===n.scrollWidth}return!0})(e)&&J(e)}function Fo(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function $o(e){!0!==Do&&(Do=!0,requestAnimationFrame(()=>{Do=!1;let{height:t}=e.target,{clientHeight:n,scrollTop:a}=document.scrollingElement;(void 0===zo||t!==window.innerHeight)&&(zo=n-t,document.scrollingElement.scrollTop=a),a>zo&&(document.scrollingElement.scrollTop-=Math.ceil((a-zo)/8))}))}function Vo(e){let t=document.body,n=void 0!==window.visualViewport;if("add"===e){let{overflowY:e,overflowX:a}=window.getComputedStyle(t);Lo=ca(window),Ro=ua(window),No=t.style.left,Oo=t.style.top,Io=window.location.href,t.style.left=`-${Lo}px`,t.style.top=`-${Ro}px`,"hidden"!==a&&("scroll"===a||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),"hidden"!==e&&("scroll"===e||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,!0===j.is.ios&&(!0===n?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",$o,H.passiveCapture),window.visualViewport.addEventListener("scroll",$o,H.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",Fo,H.passiveCapture))}!0===j.is.desktop&&!0===j.is.mac&&window[`${e}EventListener`]("wheel",Bo,H.notPassive),"remove"===e&&(!0===j.is.ios&&(!0===n?(window.visualViewport.removeEventListener("resize",$o,H.passiveCapture),window.visualViewport.removeEventListener("scroll",$o,H.passiveCapture)):window.removeEventListener("scroll",Fo,H.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=No,t.style.top=Oo,window.location.href===Io&&window.scrollTo(Lo,Ro),zo=void 0)}function Uo(e){let t="add";if(!0===e){if(qo++,null!==jo)return clearTimeout(jo),void(jo=null);if(qo>1)return}else{if(0===qo||--qo>0)return;if(t="remove",!0===j.is.ios&&!0===j.is.nativeMobile)return null!==jo&&clearTimeout(jo),void(jo=setTimeout(()=>{Vo(t),jo=null},100))}Vo(t)}function Ho(){let e;return{preventBodyScroll(t){t!==e&&(void 0!==e||!0===t)&&(e=t,Uo(t))}}}var Wo=0,Go={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},Yo={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]},Ko=$({name:"QDialog",inheritAttrs:!1,props:{...In,...ea,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,backdropFilter:String,position:{type:String,default:"standard",validator:e=>["standard","top","bottom","left","right"].includes(e)}},emits:[...qn,"shake","click","escapeKey"],setup(e,{slots:t,emit:o,attrs:s}){let l,u,c=k(),d=a(null),h=a(!1),p=a(!1),f=null,m=null,_=i(()=>!0!==e.persistent&&!0!==e.noRouteDismiss&&!0!==e.seamless),{preventBodyScroll:v}=Ho(),{registerTimeout:b}=aa(),{registerTick:y,removeTick:w}=na(),{transitionProps:x,transitionStyle:C}=ta(e,()=>Yo[e.position][0],()=>Yo[e.position][1]),T=i(()=>C.value+(void 0!==e.backdropFilter?`;backdrop-filter:${e.backdropFilter};-webkit-backdrop-filter:${e.backdropFilter}`:"")),{showPortal:E,hidePortal:P,portalIsAccessible:A,renderPortal:M}=Xn(c,d,function(){return n("div",{role:"dialog","aria-modal":!0===O.value?"true":"false",...s,class:q.value},[n(S,{name:"q-transition--fade",appear:!0},()=>!0===O.value?n("div",{class:"q-dialog__backdrop fixed-full",style:T.value,"aria-hidden":"true",tabindex:-1,onClick:U}):null),n(S,x.value,()=>!0===h.value?n("div",{ref:d,class:N.value,style:C.value,tabindex:-1,...I.value},dt(t.default)):null)])},"dialog"),{hide:L}=Dn({showing:h,hideOnRouteChange:_,handleShow:function(t){R(),m=!1===e.noRefocus&&null!==document.activeElement?document.activeElement:null,$(e.maximized),E(),p.value=!0,!0!==e.noFocus?(document.activeElement?.blur(),y(D)):w(),b(()=>{if(!0===c.proxy.$q.platform.is.ios){if(!0!==e.seamless&&document.activeElement){let{top:e,bottom:t}=document.activeElement.getBoundingClientRect(),{innerHeight:n}=window,a=void 0!==window.visualViewport?window.visualViewport.height:n;e>0&&t>a/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-a,t>=n?1/0:Math.ceil(document.scrollingElement.scrollTop+t-a/2))),document.activeElement.scrollIntoView()}u=!0,d.value.click(),u=!1}E(!0),p.value=!1,o("show",t)},e.transitionDuration)},handleHide:function(t){w(),z(),F(!0),p.value=!0,P(),null!==m&&(((0===t?.type.indexOf("key")?m.closest('[tabindex]:not([tabindex^="-"])'):void 0)||m).focus(),m=null),b(()=>{P(!0),p.value=!1,o("hide",t)},e.transitionDuration)},processOnMount:!0}),{addToHistory:R,removeFromHistory:z}=Mo(h,L,_),N=i(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${!0===e.maximized?"maximized":"minimized"} q-dialog__inner--${e.position} ${Go[e.position]}`+(!0===p.value?" q-dialog__inner--animating":"")+(!0===e.fullWidth?" q-dialog__inner--fullwidth":"")+(!0===e.fullHeight?" q-dialog__inner--fullheight":"")+(!0===e.square?" q-dialog__inner--square":"")),O=i(()=>!0===h.value&&!0!==e.seamless),I=i(()=>!0===e.autoClose?{onClick:V}:{}),q=i(()=>["q-dialog fullscreen no-pointer-events q-dialog--"+(!0===O.value?"modal":"seamless"),s.class]);function D(e){Vn(()=>{let t=d.value;if(null!==t){if(void 0!==e){let n=t.querySelector(e);if(null!==n)return void n.focus({preventScroll:!0})}!0!==t.contains(document.activeElement)&&(t=t.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||t.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||t.querySelector("[autofocus], [data-autofocus]")||t,t.focus({preventScroll:!0}))}})}function j(e){e&&"function"==typeof e.focus?e.focus({preventScroll:!0}):D(),o("shake");let t=d.value;null!==t&&(t.classList.remove("q-animate--scale"),t.classList.add("q-animate--scale"),null!==f&&clearTimeout(f),f=setTimeout(()=>{f=null,null!==d.value&&(t.classList.remove("q-animate--scale"),D())},170))}function B(){!0!==e.seamless&&(!0===e.persistent||!0===e.noEscDismiss?!0!==e.maximized&&!0!==e.noShake&&j():(o("escapeKey"),L()))}function F(t){null!==f&&(clearTimeout(f),f=null),(!0===t||!0===h.value)&&($(!1),!0!==e.seamless&&(v(!1),La(H),Ea(B))),!0!==t&&(m=null)}function $(e){!0===e?!0!==l&&(Wo<1&&document.body.classList.add("q-body--dialog"),Wo++,l=!0):!0===l&&(Wo<2&&document.body.classList.remove("q-body--dialog"),Wo--,l=!1)}function V(e){!0!==u&&(L(e),o("click",e))}function U(t){!0!==e.persistent&&!0!==e.noBackdropDismiss?L(t):!0!==e.noShake&&j()}function H(t){!0!==e.allowFocusOutside&&!0===A.value&&!0!==cn(d.value,t.target)&&D('[tabindex]:not([tabindex="-1"])')}return r(()=>e.maximized,e=>{!0===h.value&&$(e)}),r(O,e=>{v(e),!0===e?(Ma(H),Ta(B)):(La(H),Ea(B))}),Object.assign(c.proxy,{focus:D,shake:j,__updateRefocusTarget(e){m=e||null}}),g(F),M}}),Qo=$({name:"QDrawer",inheritAttrs:!1,props:{...In,...Nt,side:{type:String,default:"left",validator:e=>["left","right"].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>["default","desktop","mobile"].includes(e),default:"default"},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...qn,"onLayout","miniState"],setup(e,{slots:t,emit:o,attrs:s}){let l=k(),{proxy:{$q:u}}=l,c=Ot(e,u),{preventBodyScroll:h}=Ho(),{registerTimeout:p,removeTimeout:f}=aa(),_=y(Ae,Oe);if(_===Oe)return console.error("QDrawer needs to be child of QLayout"),Oe;let v,b,w=null,x=a("mobile"===e.behavior||"desktop"!==e.behavior&&_.totalWidth.value<=e.breakpoint),S=i(()=>!0===e.mini&&!0!==x.value),C=i(()=>!0===S.value?e.miniWidth:e.width),T=a(!0===e.showIfAbove&&!1===x.value||!0===e.modelValue),E=i(()=>!0!==e.persistent&&(!0===x.value||!0===W.value));function P(e,t){if(z(),!1!==e&&_.animate(),re(0),!0===x.value){let e=_.instances[$.value];!0===e?.belowBreakpoint&&e.hide(!1),oe(1),!0!==_.isContainer.value&&h(!0)}else oe(0),!1!==e&&se(!1);p(()=>{!1!==e&&se(!0),!0!==t&&o("show",e)},150)}function M(e,t){N(),!1!==e&&_.animate(),oe(0),re(q.value*C.value),ce(),!0!==t?p(()=>{o("hide",e)},150):f()}let{show:L,hide:R}=Dn({showing:T,hideOnRouteChange:E,handleShow:P,handleHide:M}),{addToHistory:z,removeFromHistory:N}=Mo(T,R,E),O={belowBreakpoint:x,hide:R},I=i(()=>"right"===e.side),q=i(()=>(!0===u.lang.rtl?-1:1)*(!0===I.value?1:-1)),D=a(0),j=a(!1),B=a(!1),F=a(C.value*q.value),$=i(()=>!0===I.value?"left":"right"),V=i(()=>!0===T.value&&!1===x.value&&!1===e.overlay?!0===e.miniToOverlay?e.miniWidth:C.value:0),U=i(()=>!0===e.overlay||!0===e.miniToOverlay||-1!==_.view.value.indexOf(I.value?"R":"L")||!0===u.platform.is.ios&&!0===_.isContainer.value),H=i(()=>!1===e.overlay&&!0===T.value&&!1===x.value),W=i(()=>!0===e.overlay&&!0===T.value&&!1===x.value),G=i(()=>"fullscreen q-drawer__backdrop"+(!1===T.value&&!1===j.value?" hidden":"")),Y=i(()=>({backgroundColor:`rgba(0,0,0,${.4*D.value})`})),K=i(()=>!0===I.value?"r"===_.rows.value.top[2]:"l"===_.rows.value.top[0]),Q=i(()=>!0===I.value?"r"===_.rows.value.bottom[2]:"l"===_.rows.value.bottom[0]),Z=i(()=>{let e={};return!0===_.header.space&&!1===K.value&&(!0===U.value?e.top=`${_.header.offset}px`:!0===_.header.space&&(e.top=`${_.header.size}px`)),!0===_.footer.space&&!1===Q.value&&(!0===U.value?e.bottom=`${_.footer.offset}px`:!0===_.footer.space&&(e.bottom=`${_.footer.size}px`)),e}),J=i(()=>{let e={width:`${C.value}px`,transform:`translateX(${F.value}px)`};return!0===x.value?e:Object.assign(e,Z.value)}),X=i(()=>"q-drawer__content fit "+(!0!==_.isContainer.value?"scroll":"overflow-auto")),ee=i(()=>`q-drawer q-drawer--${e.side}`+(!0===B.value?" q-drawer--mini-animate":"")+(!0===e.bordered?" q-drawer--bordered":"")+(!0===c.value?" q-drawer--dark q-dark":"")+(!0===j.value?" no-transition":!0===T.value?"":" q-layout--prevent-focus")+(!0===x.value?" fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding":" q-drawer--"+(!0===S.value?"mini":"standard")+(!0===U.value||!0!==H.value?" fixed":"")+(!0===e.overlay||!0===e.miniToOverlay?" q-drawer--on-top":"")+(!0===K.value?" q-drawer--top-padding":""))),te=i(()=>{let t=!0===u.lang.rtl?e.side:$.value;return[[Yi,le,void 0,{[t]:!0,mouse:!0}]]}),ne=i(()=>{let t=!0===u.lang.rtl?$.value:e.side;return[[Yi,ue,void 0,{[t]:!0,mouse:!0}]]}),ae=i(()=>{let t=!0===u.lang.rtl?$.value:e.side;return[[Yi,ue,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0}]]});function ie(){var t,n;t=x,n="mobile"===e.behavior||"desktop"!==e.behavior&&_.totalWidth.value<=e.breakpoint,t.value!==n&&(t.value=n)}function re(e){void 0===e?d(()=>{e=!0===T.value?0:C.value,re(q.value*e)}):(!0===_.isContainer.value&&!0===I.value&&(!0===x.value||Math.abs(e)===C.value)&&(e+=q.value*_.scrollbarWidth.value),F.value=e)}function oe(e){D.value=e}function se(e){let t=!0===e?"remove":!0!==_.isContainer.value?"add":"";""!==t&&document.body.classList[t]("q-body--drawer-toggle")}function le(e){if(!1!==T.value)return;let t=C.value,n=Je(e.distance.x,0,t);if(!0===e.isFinal)return n>=Math.min(75,t)==!0?L():(_.animate(),oe(0),re(q.value*t)),void(j.value=!1);re((!0===u.lang.rtl?!0!==I.value:I.value)?Math.max(t-n,0):Math.min(0,n-t)),oe(Je(n/t,0,1)),!0===e.isFirst&&(j.value=!0)}function ue(t){if(!0!==T.value)return;let n=C.value,a=t.direction===e.side,i=(!0===u.lang.rtl?!0!==a:a)?Je(t.distance.x,0,n):0;if(!0===t.isFinal)return Math.abs(i){!0===t?(v=T.value,!0===T.value&&R(!1)):!1===e.overlay&&"mobile"!==e.behavior&&!1!==v&&(!0===T.value?(re(0),oe(0),ce()):L(!1))}),r(()=>e.side,(e,t)=>{_.instances[t]===O&&(_.instances[t]=void 0,_[t].space=!1,_[t].offset=0),_.instances[e]=O,_[e].size=C.value,_[e].space=H.value,_[e].offset=V.value}),r(_.totalWidth,()=>{(!0===_.isContainer.value||!0!==document.qScrollPrevented)&&ie()}),r(()=>e.behavior+e.breakpoint,ie),r(_.isContainer,e=>{!0===T.value&&h(!0!==e),!0===e&&ie()}),r(_.scrollbarWidth,()=>{re(!0===T.value?0:void 0)}),r(V,e=>{de("offset",e)}),r(H,e=>{o("onLayout",e),de("space",e)}),r(I,()=>{re()}),r(C,t=>{re(),he(e.miniToOverlay,t)}),r(()=>e.miniToOverlay,e=>{he(e,C.value)}),r(()=>u.lang.rtl,()=>{re()}),r(()=>e.mini,()=>{e.noMiniAnimation||!0===e.modelValue&&(null!==w&&clearTimeout(w),l.proxy&&l.proxy.$el&&l.proxy.$el.classList.add("q-drawer--mini-animate"),B.value=!0,w=setTimeout(()=>{w=null,B.value=!1,l?.proxy?.$el?.classList.remove("q-drawer--mini-animate")},150),_.animate())}),r(S,e=>{o("miniState",e)}),_.instances[e.side]=O,he(e.miniToOverlay,C.value),de("space",H.value),de("offset",V.value),!0===e.showIfAbove&&!0!==e.modelValue&&!0===T.value&&void 0!==e["onUpdate:modelValue"]&&o("update:modelValue",!0),m(()=>{o("onLayout",H.value),o("miniState",S.value),v=!0===e.showIfAbove;let t=()=>{(!0===T.value?P:M)(!1,!0)};0===_.totalWidth.value?b=r(_.totalWidth,()=>{b(),b=void 0,!1===T.value&&!0===e.showIfAbove&&!1===x.value?L(!1):t()}):d(t)}),g(()=>{b?.(),null!==w&&(clearTimeout(w),w=null),!0===T.value&&ce(),_.instances[e.side]===O&&(_.instances[e.side]=void 0,de("size",0),de("offset",0),de("space",!1))}),()=>{let a=[];!0===x.value&&(!1===e.noSwipeOpen&&a.push(A(n("div",{key:"open",class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":"true"}),te.value)),a.push(mt("div",{ref:"backdrop",class:G.value,style:Y.value,"aria-hidden":"true",onClick:R},void 0,"backdrop",!0!==e.noSwipeBackdrop&&!0===T.value,()=>ae.value)));let i=!0===S.value&&void 0!==t.mini,r=[n("div",{...s,key:""+i,class:[X.value,s.class]},!0===i?t.mini():dt(t.default))];return!0===e.elevated&&!0===T.value&&r.push(n("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),a.push(mt("aside",{ref:"content",class:ee.value,style:J.value},r,"contentclose",!0!==e.noSwipeClose&&!0===x.value,()=>ne.value)),n("div",{class:"q-drawer-container"},a)}}});function Zo(e,t){if(t&&e===t)return null;let n=e.nodeName.toLowerCase();if(!0===["div","li","ul","ol","blockquote"].includes(n))return e;let a=(window.getComputedStyle?window.getComputedStyle(e):e.currentStyle).display;return"block"===a||"table"===a?e:Zo(e.parentNode)}function Jo(e,t,n){return!(!e||e===document.body)&&(!0===n&&e===t||(t===document?document.body:t).contains(e.parentNode))}function Xo(e,t,n){if(n||((n=document.createRange()).selectNode(e),n.setStart(e,0)),0===t.count)n.setEnd(e,t.count);else if(t.count>0)if(e.nodeType===Node.TEXT_NODE)e.textContent.length0&&this.savedPos\n \n \n Print - ${document.title}\n \n \n
${this.el.innerHTML}
\n \n \n `),e.print(),void e.close()}if("link"===e){let e=this.getParentAttribute("href");if(null===e){let e=this.selectWord(this.selection),t=e?e.toString():"";if(!(t.length||this.range&&this.range.cloneContents().querySelector("img")))return;this.eVm.editLinkUrl.value=es.test(t)?t:"https://",document.execCommand("createLink",!1,this.eVm.editLinkUrl.value),this.save(e.getRangeAt(0))}else this.eVm.editLinkUrl.value=e,this.range.selectNodeContents(this.parent),this.save();return}if("fullscreen"===e)return this.eVm.toggleFullscreen(),void n();if("viewsource"===e)return this.eVm.isViewingSource.value=!1===this.eVm.isViewingSource.value,this.eVm.setContent(this.eVm.props.modelValue),void n()}document.execCommand(e,!1,t),n()}selectWord(e){if(null===e||!0!==e.isCollapsed||void 0===e.modify)return e;let t=document.createRange();t.setStart(e.anchorNode,e.anchorOffset),t.setEnd(e.focusNode,e.focusOffset);let n=t.collapsed?["backward","forward"]:["forward","backward"];t.detach();let a=e.focusNode,i=e.focusOffset;return e.collapse(e.anchorNode,e.anchorOffset),e.modify("move",n[0],"character"),e.modify("move",n[1],"word"),e.extend(a,i),e.modify("extend",n[1],"character"),e.modify("extend",n[0],"word"),e}},ns=$({name:"QTooltip",inheritAttrs:!1,props:{...Rn,...In,...ea,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...ea.transitionShow,default:"jump-down"},transitionHide:{...ea.transitionHide,default:"jump-up"},anchor:{type:String,default:"bottom middle",validator:Ba},self:{type:String,default:"top middle",validator:Ba},offset:{type:Array,default:()=>[14,14],validator:Fa},scrollTarget:ra,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...qn],setup(e,{slots:t,emit:o,attrs:s}){let l,u,c=k(),{proxy:{$q:d}}=c,h=a(null),p=a(!1),f=i(()=>Va(e.anchor,d.lang.rtl)),m=i(()=>Va(e.self,d.lang.rtl)),_=i(()=>!0!==e.persistent),{registerTick:v,removeTick:b}=na(),{registerTimeout:y}=aa(),{transitionProps:w,transitionStyle:x}=ta(e),{localScrollTarget:C,changeScrollEvent:T,unconfigureScrollTarget:E}=On(e,D),{anchorEl:P,canShow:A,anchorEvents:M}=Nn({showing:p,configureAnchorEl:function(){if(!0===e.noParentEvent||null===P.value)return;let t=!0===d.platform.is.mobile?[[P.value,"touchstart","delayShow","passive"]]:[[P.value,"mouseenter","delayShow","passive"],[P.value,"mouseleave","delayHide","passive"]];ee(M,"anchor",t)}}),{show:L,hide:R}=Dn({showing:p,canShow:A,handleShow:function(t){z(),v(()=>{u=new MutationObserver(()=>q()),u.observe(h.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),q(),D()}),void 0===l&&(l=r(()=>d.screen.width+"|"+d.screen.height+"|"+e.self+"|"+e.anchor+"|"+d.lang.rtl,q)),y(()=>{z(!0),o("show",t)},e.transitionDuration)},handleHide:function(t){b(),N(),I(),y(()=>{N(!0),o("hide",t)},e.transitionDuration)},hideOnRouteChange:_,processOnMount:!0});Object.assign(M,{delayShow:function(t){if(!0===d.platform.is.mobile){Ln(),document.body.classList.add("non-selectable");let e=P.value,t=["touchmove","touchcancel","touchend","click"].map(t=>[e,t,"delayHide","passiveCapture"]);ee(M,"tooltipTemp",t)}y(()=>{L(t)},e.delay)},delayHide:function(t){!0===d.platform.is.mobile&&(te(M,"tooltipTemp"),Ln(),setTimeout(()=>{document.body.classList.remove("non-selectable")},10)),y(()=>{R(t)},e.hideDelay)}});let{showPortal:z,hidePortal:N,renderPortal:O}=Xn(c,h,function(){return n(S,w.value,j)},"tooltip");if(!0===d.platform.is.mobile){let t={anchorEl:P,innerRef:h,onClickOutside:e=>(R(e),e.target.classList.contains("q-dialog__backdrop")&&J(e),!0)},n=i(()=>null===e.modelValue&&!0!==e.persistent&&!0===p.value);r(n,e=>{(!0===e?Da:ja)(t)}),g(()=>{ja(t)})}function I(){void 0!==u&&(u.disconnect(),u=void 0),void 0!==l&&(l(),l=void 0),E(),te(M,"tooltipTemp")}function q(){Ha({targetEl:h.value,offset:e.offset,anchorEl:P.value,anchorOrigin:f.value,selfOrigin:m.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function D(){if(null!==P.value||void 0!==e.scrollTarget){C.value=sa(P.value,e.scrollTarget);let t=!0===e.noParentEvent?q:R;T(C.value,t)}}function j(){return!0===p.value?n("div",{...s,ref:h,class:["q-tooltip q-tooltip--style q-position-engine no-pointer-events",s.class],style:[s.style,x.value],role:"tooltip"},dt(t.default)):null}return g(I),Object.assign(c.proxy,{updatePosition:q}),O}}),as=$({name:"QItem",props:{...Nt,...en,tag:{type:String,default:"div"},active:{type:Boolean,default:null},clickable:Boolean,dense:Boolean,insetLevel:Number,tabindex:[String,Number],focused:Boolean,manualFocus:Boolean},emits:["click","keyup"],setup(e,{slots:t,emit:r}){let{proxy:{$q:o}}=k(),s=Ot(e,o),{hasLink:l,linkAttrs:u,linkClass:c,linkTag:d,navigateOnClick:h}=tn(),p=a(null),f=a(null),m=i(()=>!0===e.clickable||!0===l.value||"label"===e.tag),g=i(()=>!0!==e.disable&&!0===m.value),_=i(()=>"q-item q-item-type row no-wrap"+(!0===e.dense?" q-item--dense":"")+(!0===s.value?" q-item--dark":"")+(!0===l.value&&null===e.active?c.value:!0===e.active?" q-item--active"+(void 0!==e.activeClass?` ${e.activeClass}`:""):"")+(!0===e.disable?" disabled":"")+(!0===g.value?" q-item--clickable q-link cursor-pointer "+(!0===e.manualFocus?"q-manual-focusable":"q-focusable q-hoverable")+(!0===e.focused?" q-manual-focusable--focused":""):"")),v=i(()=>void 0===e.insetLevel?null:{["padding"+(!0===o.lang.rtl?"Right":"Left")]:16+56*e.insetLevel+"px"});function b(e){!0===g.value&&(null!==f.value&&!0!==e.qAvoidFocus&&(!0!==e.qKeyEvent&&document.activeElement===p.value?f.value.focus():document.activeElement===f.value&&p.value.focus()),h(e))}function y(e){if(!0===g.value&&!0===pe(e,[13,32])){J(e),e.qKeyEvent=!0;let t=new MouseEvent("click",e);t.qKeyEvent=!0,p.value.dispatchEvent(t)}r("keyup",e)}return()=>{let a={ref:p,class:_.value,style:v.value,role:"listitem",onClick:b,onKeyup:y};return!0===g.value?(a.tabindex=e.tabindex||"0",Object.assign(a,u.value)):!0===m.value&&(a["aria-disabled"]="true"),n(d.value,a,function(){let e=ht(t.default,[]);return!0===g.value&&e.unshift(n("div",{class:"q-focus-helper",tabindex:-1,ref:f})),e}())}}}),is=$({name:"QItemSection",props:{avatar:Boolean,thumbnail:Boolean,side:Boolean,top:Boolean,noWrap:Boolean},setup(e,{slots:t}){let a=i(()=>"q-item__section column q-item__section--"+(!0===e.avatar||!0===e.side||!0===e.thumbnail?"side":"main")+(!0===e.top?" q-item__section--top justify-start":" justify-center")+(!0===e.avatar?" q-item__section--avatar":"")+(!0===e.thumbnail?" q-item__section--thumbnail":"")+(!0===e.noWrap?" q-item__section--nowrap":""));return()=>n("div",{class:a.value},dt(t.default))}});function rs(e,t,n){t.handler?t.handler(e,n,n.caret):n.runCmd(t.cmd,t.param)}function os(e){return n("div",{class:"q-editor__toolbar-group"},e)}function ss(e,t,a,i=!1){let r=i||"toggle"===t.type&&(t.toggled?t.toggled(e):t.cmd&&e.caret.is(t.cmd,t.param)),o=[];if(e.$q.platform.is.desktop&&(t.tip||t.htmlTip)){let e=t.key?n("div",[n("small",`(CTRL + ${String.fromCharCode(t.key)})`)]):null;o.push(n(ns,{delay:1e3},()=>[n("div",t.htmlTip?{innerHTML:t.htmlTip}:t.tip),e]))}return n(An,{...e.buttonProps.value,icon:null!==t.icon?t.icon:void 0,color:r?t.toggleColor||e.props.toolbarToggleColor:t.color||e.props.toolbarColor,textColor:r&&!e.props.toolbarPush?null:t.textColor||e.props.toolbarTextColor,label:t.label,"aria-label":null==t.label?t.tip:void 0,disable:!!t.disable&&("function"!=typeof t.disable||t.disable(e)),size:"sm",onClick(n){a?.(),rs(n,t,e)}},()=>o)}function ls(e){if(e.caret)return e.buttons.value.filter(t=>!e.isViewingSource.value||t.find(e=>"viewsource"===e.cmd)).map(t=>os(t.map(t=>(!e.isViewingSource.value||"viewsource"===t.cmd)&&("slot"===t.type?dt(e.slots[t.slot]):"dropdown"===t.type?function(e,t){let a,i,r="only-icons"===t.list,o=t.label,s=null!==t.icon?t.icon:void 0;function l(){c.component.proxy.hide()}if(r)i=t.options.map(t=>{let n=void 0===t.type&&e.caret.is(t.cmd,t.param);return n&&(o=t.tip,s=null!==t.icon?t.icon:void 0),ss(e,t,l,n)}),a=e.toolbarBackgroundClass.value,i=[os(i)];else{let r=void 0!==e.props.toolbarToggleColor?`text-${e.props.toolbarToggleColor}`:null,u=void 0!==e.props.toolbarTextColor?`text-${e.props.toolbarTextColor}`:null,c="no-icons"===t.list;i=t.options.map(t=>{let a=!!t.disable&&t.disable(e),i=void 0===t.type&&e.caret.is(t.cmd,t.param);i&&(o=t.tip,s=null!==t.icon?t.icon:void 0);let d=t.htmlTip;return n(as,{active:i,activeClass:r,clickable:!0,disable:a,dense:!0,onClick(n){l(),!0!==n?.qAvoidFocus&&e.contentRef.value?.focus(),e.caret.restore(),rs(n,t,e)}},()=>[!0===c?null:n(is,{class:i?r:u,side:!0},()=>n(Mt,{name:null!==t.icon?t.icon:void 0})),n(is,d?()=>n("div",{class:"text-no-wrap",innerHTML:t.htmlTip}):t.tip?()=>n("div",{class:"text-no-wrap"},t.tip):void 0)])}),a=[e.toolbarBackgroundClass.value,u]}let u=t.highlight&&o!==t.label,c=n(ni,{...e.buttonProps.value,noCaps:!0,noWrap:!0,color:u?e.props.toolbarToggleColor:e.props.toolbarColor,textColor:u&&!e.props.toolbarPush?null:e.props.toolbarTextColor,label:t.fixedLabel?t.label:o,icon:t.fixedIcon?null!==t.icon?t.icon:void 0:s,contentClass:a,onShow:t=>e.emit("dropdownShow",t),onHide:t=>e.emit("dropdownHide",t),onBeforeShow:t=>e.emit("dropdownBeforeShow",t),onBeforeHide:t=>e.emit("dropdownBeforeHide",t)},()=>i);return c}(e,t):ss(e,t)))))}var us=/^on[A-Z]/;function cs(){let{attrs:e,vnode:t}=k(),n={listeners:a({}),attributes:a({})};function i(){let a={},i={};for(let t in e)"class"!==t&&"style"!==t&&!1===us.test(t)&&(a[t]=e[t]);for(let e in t.props)!0===us.test(e)&&(i[e]=t.props[e]);n.attributes.value=a,n.listeners.value=i}return v(i),i(),n}var ds=Object.prototype.toString,hs=Object.prototype.hasOwnProperty,ps=new Set(["Boolean","Number","String","Function","Array","Date","RegExp"].map(e=>"[object "+e+"]"));function fs(e){if(e!==Object(e)||!0===ps.has(ds.call(e))||e.constructor&&!1===hs.call(e,"constructor")&&!1===hs.call(e.constructor.prototype,"isPrototypeOf"))return!1;let t;for(t in e);return void 0===t||hs.call(e,t)}function ms(){let e,t,n,a,i,r,o=arguments[0]||{},s=1,l=!1,u=arguments.length;for("boolean"==typeof o&&(l=o,o=arguments[1]||{},s=2),Object(o)!==o&&"function"!=typeof o&&(o={}),u===s&&(o=this,s--);s0===e.length||e.every(e=>e.length),default:()=>[["left","center","right","justify"],["bold","italic","underline","strike"],["undo","redo"]]},toolbarColor:String,toolbarBg:String,toolbarTextColor:String,toolbarToggleColor:{type:String,default:"primary"},toolbarOutline:Boolean,toolbarPush:Boolean,toolbarRounded:Boolean,paragraphTag:{type:String,validator:e=>["div","p"].includes(e),default:"div"},contentStyle:Object,contentClass:[Object,Array,String],square:Boolean,flat:Boolean,dense:Boolean},emits:[...Ti,"update:modelValue","keydown","click","focus","blur","dropdownShow","dropdownHide","dropdownBeforeShow","dropdownBeforeHide","linkShow","linkHide"],setup(e,{slots:t,emit:o}){let s,l,{proxy:u}=k(),{$q:c}=u,h=Ot(e,c),{inFullscreen:p,toggleFullscreen:f}=Ei(),_=cs(),v=a(null),b=a(null),y=a(null),w=a(!1),x=i(()=>!e.readonly&&!e.disable),S=e.modelValue;document.execCommand("defaultParagraphSeparator",!1,e.paragraphTag),s=window.getComputedStyle(document.body).fontFamily;let C=i(()=>e.toolbarBg?` bg-${e.toolbarBg}`:""),T=i(()=>({type:"a",flat:!0!==e.toolbarOutline&&!0!==e.toolbarPush,noWrap:!0,outline:e.toolbarOutline,push:e.toolbarPush,rounded:e.toolbarRounded,dense:!0,color:e.toolbarColor,disable:!x.value,size:"sm"})),E=i(()=>{let t=c.lang.editor,n=c.iconSet.editor;return{bold:{cmd:"bold",icon:n.bold,tip:t.bold,key:66},italic:{cmd:"italic",icon:n.italic,tip:t.italic,key:73},strike:{cmd:"strikeThrough",icon:n.strikethrough,tip:t.strikethrough,key:83},underline:{cmd:"underline",icon:n.underline,tip:t.underline,key:85},unordered:{cmd:"insertUnorderedList",icon:n.unorderedList,tip:t.unorderedList},ordered:{cmd:"insertOrderedList",icon:n.orderedList,tip:t.orderedList},subscript:{cmd:"subscript",icon:n.subscript,tip:t.subscript,htmlTip:"x2"},superscript:{cmd:"superscript",icon:n.superscript,tip:t.superscript,htmlTip:"x2"},link:{cmd:"link",disable:e=>e.caret&&!e.caret.can("link"),icon:n.hyperlink,tip:t.hyperlink,key:76},fullscreen:{cmd:"fullscreen",icon:n.toggleFullscreen,tip:t.toggleFullscreen,key:70},viewsource:{cmd:"viewsource",icon:n.viewSource,tip:t.viewSource},quote:{cmd:"formatBlock",param:"BLOCKQUOTE",icon:n.quote,tip:t.quote,key:81},left:{cmd:"justifyLeft",icon:n.left,tip:t.left},center:{cmd:"justifyCenter",icon:n.center,tip:t.center},right:{cmd:"justifyRight",icon:n.right,tip:t.right},justify:{cmd:"justifyFull",icon:n.justify,tip:t.justify},print:{type:"no-state",cmd:"print",icon:n.print,tip:t.print,key:80},outdent:{type:"no-state",disable:e=>e.caret&&!e.caret.can("outdent"),cmd:"outdent",icon:n.outdent,tip:t.outdent},indent:{type:"no-state",disable:e=>e.caret&&!e.caret.can("indent"),cmd:"indent",icon:n.indent,tip:t.indent},removeFormat:{type:"no-state",cmd:"removeFormat",icon:n.removeFormat,tip:t.removeFormat},hr:{type:"no-state",cmd:"insertHorizontalRule",icon:n.hr,tip:t.hr},undo:{type:"no-state",cmd:"undo",icon:n.undo,tip:t.undo,key:90},redo:{type:"no-state",cmd:"redo",icon:n.redo,tip:t.redo,key:89},h1:{cmd:"formatBlock",param:"H1",icon:n.heading1||n.heading,tip:t.heading1,htmlTip:`

${t.heading1}

`},h2:{cmd:"formatBlock",param:"H2",icon:n.heading2||n.heading,tip:t.heading2,htmlTip:`

${t.heading2}

`},h3:{cmd:"formatBlock",param:"H3",icon:n.heading3||n.heading,tip:t.heading3,htmlTip:`

${t.heading3}

`},h4:{cmd:"formatBlock",param:"H4",icon:n.heading4||n.heading,tip:t.heading4,htmlTip:`

${t.heading4}

`},h5:{cmd:"formatBlock",param:"H5",icon:n.heading5||n.heading,tip:t.heading5,htmlTip:`
${t.heading5}
`},h6:{cmd:"formatBlock",param:"H6",icon:n.heading6||n.heading,tip:t.heading6,htmlTip:`
${t.heading6}
`},p:{cmd:"formatBlock",param:e.paragraphTag,icon:n.heading,tip:t.paragraph},code:{cmd:"formatBlock",param:"PRE",icon:n.code,htmlTip:`${t.code}`},"size-1":{cmd:"fontSize",param:"1",icon:n.size1||n.size,tip:t.size1,htmlTip:`${t.size1}`},"size-2":{cmd:"fontSize",param:"2",icon:n.size2||n.size,tip:t.size2,htmlTip:`${t.size2}`},"size-3":{cmd:"fontSize",param:"3",icon:n.size3||n.size,tip:t.size3,htmlTip:`${t.size3}`},"size-4":{cmd:"fontSize",param:"4",icon:n.size4||n.size,tip:t.size4,htmlTip:`${t.size4}`},"size-5":{cmd:"fontSize",param:"5",icon:n.size5||n.size,tip:t.size5,htmlTip:`${t.size5}`},"size-6":{cmd:"fontSize",param:"6",icon:n.size6||n.size,tip:t.size6,htmlTip:`${t.size6}`},"size-7":{cmd:"fontSize",param:"7",icon:n.size7||n.size,tip:t.size7,htmlTip:`${t.size7}`}}}),P=i(()=>{let t=e.definitions||{},n=e.definitions||e.fonts?ms(!0,{},E.value,t,function(e,t,n,a={}){let i=Object.keys(a);if(0===i.length)return{};let r={default_font:{cmd:"fontName",param:e,icon:n,tip:t}};return i.forEach(e=>{let t=a[e];r[e]={cmd:"fontName",param:t,icon:n,tip:t,htmlTip:`${t}`}}),r}(s,c.lang.editor.defaultFont,c.iconSet.editor.font,e.fonts)):E.value;return e.toolbar.map(e=>e.map(e=>{if(e.options)return{type:"dropdown",icon:e.icon,label:e.label,size:"sm",dense:!0,fixedLabel:e.fixedLabel,fixedIcon:e.fixedIcon,highlight:e.highlight,list:e.list,options:e.options.map(e=>n[e])};let a=n[e];return a?"no-state"===a.type||t[e]&&(void 0===a.cmd||E.value[a.cmd]&&"no-state"===E.value[a.cmd].type)?a:Object.assign({type:"toggle"},a):{type:"slot",slot:e}}))}),A={$q:c,props:e,slots:t,emit:o,inFullscreen:p,toggleFullscreen:f,runCmd:W,isViewingSource:w,editLinkUrl:y,toolbarBackgroundClass:C,buttonProps:T,contentRef:b,buttons:P,setContent:H};r(()=>e.modelValue,e=>{S!==e&&(S=e,H(e,!0))}),r(y,e=>{o("link"+(e?"Show":"Hide"))});let M=i(()=>e.toolbar&&0!==e.toolbar.length),L=i(()=>{let e={},t=t=>{t.key&&(e[t.key]={cmd:t.cmd,param:t.param})};return P.value.forEach(e=>{e.forEach(e=>{e.options?e.options.forEach(t):t(e)})}),e}),R=i(()=>p.value?e.contentStyle:[{minHeight:e.minHeight,height:e.height,maxHeight:e.maxHeight},e.contentStyle]),z=i(()=>"q-editor q-editor--"+(!0===w.value?"source":"default")+(!0===e.disable?" disabled":"")+(!0===p.value?" fullscreen column":"")+(!0===e.square?" q-editor--square no-border-radius":"")+(!0===e.flat?" q-editor--flat":"")+(!0===e.dense?" q-editor--dense":"")+(!0===h.value?" q-editor--dark q-dark":"")),N=i(()=>[e.contentClass,"q-editor__content",{col:p.value,"overflow-auto":p.value||e.maxHeight}]),O=i(()=>!0===e.disable?{"aria-disabled":"true"}:{});function I(){if(null!==b.value){let t="inner"+(!0===w.value?"Text":"HTML"),n=b.value[t];n!==e.modelValue&&(S=n,o("update:modelValue",n))}}function q(e){if(o("keydown",e),!0!==e.ctrlKey||!0===he(e))return void G();let t=e.keyCode,n=L.value[t];if(void 0!==n){let{cmd:t,param:a}=n;J(e),W(t,a,!1)}}function D(e){G(),o("click",e)}function j(e){if(null!==b.value){let{scrollTop:e,scrollHeight:t}=b.value;l=t-e}A.caret.save(),o("blur",e)}function B(e){d(()=>{null!==b.value&&void 0!==l&&(b.value.scrollTop=b.value.scrollHeight-l)}),o("focus",e)}function F(e){let t=v.value;if(null!==t&&!0===t.contains(e.target)&&(null===e.relatedTarget||!0!==t.contains(e.relatedTarget))){let e="inner"+(!0===w.value?"Text":"HTML");A.caret.restorePosition(b.value[e].length),G()}}function $(e){let t=v.value;null!==t&&!0===t.contains(e.target)&&(null===e.relatedTarget||!0!==t.contains(e.relatedTarget))&&(A.caret.savePosition(),G())}function V(){l=void 0}function U(e){A.caret.save()}function H(e,t){if(null!==b.value){!0===t&&A.caret.savePosition();let n="inner"+(!0===w.value?"Text":"HTML");b.value[n]=e,!0===t&&(A.caret.restorePosition(b.value[n].length),G())}}function W(e,t,n=!0){Y(),A.caret.restore(),A.caret.apply(e,t,()=>{Y(),A.caret.save(),n&&G()})}function G(){setTimeout(()=>{y.value=null,u.$forceUpdate()},1)}function Y(){Vn(()=>{b.value?.focus({preventScroll:!0})})}return m(()=>{A.caret=u.caret=new ts(b.value,A),H(e.modelValue),G(),document.addEventListener("selectionchange",U)}),g(()=>{document.removeEventListener("selectionchange",U)}),Object.assign(u,{runCmd:W,refreshToolbar:G,focus:Y,getContentEl:function(){return b.value}}),()=>{let t;if(M.value){let e=[n("div",{key:"qedt_top",class:"q-editor__toolbar row no-wrap scroll-x"+C.value},ls(A))];null!==y.value&&e.push(n("div",{key:"qedt_btm",class:"q-editor__toolbar row no-wrap items-center scroll-x"+C.value},function(e){if(e.caret){let t=e.props.toolbarColor||e.props.toolbarTextColor,a=e.editLinkUrl.value,i=()=>{e.caret.restore(),a!==e.editLinkUrl.value&&document.execCommand("createLink",!1,""===a?" ":a),e.editLinkUrl.value=null};return[n("div",{class:`q-mx-xs text-${t}`},`${e.$q.lang.editor.url}: `),n("input",{key:"qedt_btm_input",class:"col q-editor__link-input",value:a,onInput:e=>{Q(e),a=e.target.value},onKeydown:t=>{if(!0!==he(t))switch(t.keyCode){case 13:return Z(t),i();case 27:Z(t),e.caret.restore(),(!e.editLinkUrl.value||"https://"===e.editLinkUrl.value)&&document.execCommand("unlink"),e.editLinkUrl.value=null}}}),os([n(An,{key:"qedt_btm_rem",...e.buttonProps.value,label:e.$q.lang.label.remove,noCaps:!0,onClick:()=>{e.caret.restore(),document.execCommand("unlink"),e.editLinkUrl.value=null}}),n(An,{key:"qedt_btm_upd",...e.buttonProps.value,label:e.$q.lang.label.update,noCaps:!0,onClick:i})])]}}(A))),t=n("div",{key:"toolbar_ctainer",class:"q-editor__toolbars-container"},e)}return n("div",{ref:v,class:z.value,style:{height:!0===p.value?"100%":null},...O.value,onFocusin:F,onFocusout:$},[t,n("div",{ref:b,style:R.value,class:N.value,contenteditable:x.value,placeholder:e.placeholder,..._.listeners.value,onInput:I,onKeydown:q,onClick:D,onBlur:j,onFocus:B,onMousedown:V,onTouchstartPassive:V})])}}}),_s=$({name:"QItemLabel",props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){let a=i(()=>parseInt(e.lines,10)),r=i(()=>"q-item__label"+(!0===e.overline?" q-item__label--overline text-overline":"")+(!0===e.caption?" q-item__label--caption text-caption":"")+(!0===e.header?" q-item__label--header":"")+(1===a.value?" ellipsis":"")),o=i(()=>void 0!==e.lines&&a.value>1?{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":a.value}:null);return()=>n("div",{style:o.value,class:r.value},dt(t.default))}}),vs=$({name:"QSlideTransition",props:{appear:Boolean,duration:{type:Number,default:300}},emits:["show","hide"],setup(e,{slots:t,emit:a}){let i,r,o,s,l=!1,u=null,c=null;function d(){i?.(),i=null,l=!1,null!==u&&(clearTimeout(u),u=null),null!==c&&(clearTimeout(c),c=null),r?.removeEventListener("transitionend",o),o=null}function h(t,n,a){void 0!==n&&(t.style.height=`${n}px`),t.style.transition=`height ${e.duration}ms cubic-bezier(.25, .8, .50, 1)`,l=!0,i=a}function p(e,t){e.style.overflowY=null,e.style.height=null,e.style.transition=null,d(),t!==s&&a(t)}function f(t,n){let a=0;r=t,!0===l?(d(),a=t.offsetHeight===t.scrollHeight?0:void 0):(s="hide",t.style.overflowY="hidden"),h(t,a,n),u=setTimeout(()=>{u=null,t.style.height=`${t.scrollHeight}px`,o=e=>{c=null,(Object(e)!==e||e.target===t)&&p(t,"show")},t.addEventListener("transitionend",o),c=setTimeout(o,1.1*e.duration)},100)}function m(t,n){let a;r=t,!0===l?d():(s="show",t.style.overflowY="hidden",a=t.scrollHeight),h(t,a,n),u=setTimeout(()=>{u=null,t.style.height=0,o=e=>{c=null,(Object(e)!==e||e.target===t)&&p(t,"hide")},t.addEventListener("transitionend",o),c=setTimeout(o,1.1*e.duration)},100)}return g(()=>{!0===l&&d()}),()=>n(S,{css:!1,appear:e.appear,onEnter:f,onLeave:m},t.default)}}),bs={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},ys={xs:2,sm:4,md:8,lg:16,xl:24},ws=$({name:"QSeparator",props:{...Nt,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){let t=k(),a=Ot(e,t.proxy.$q),r=i(()=>!0===e.vertical?"vertical":"horizontal"),o=i(()=>` q-separator--${r.value}`),s=i(()=>!1!==e.inset?`${o.value}-${bs[e.inset]}`:""),l=i(()=>`q-separator${o.value}${s.value}`+(void 0!==e.color?` bg-${e.color}`:"")+(!0===a.value?" q-separator--dark":"")),u=i(()=>{let t={};if(void 0!==e.size&&(t[!0===e.vertical?"width":"height"]=e.size),!1!==e.spaced){let n=!0===e.spaced?`${ys.md}px`:e.spaced in ys?`${ys[e.spaced]}px`:e.spaced,a=!0===e.vertical?["Left","Right"]:["Top","Bottom"];t[`margin${a[0]}`]=t[`margin${a[1]}`]=n}return t});return()=>n("hr",{class:l.value,style:u.value,"aria-orientation":r.value})}}),ks=c({}),xs=Object.keys(en),Ss=$({name:"QExpansionItem",props:{...en,...In,...Nt,icon:String,label:String,labelLines:[Number,String],caption:String,captionLines:[Number,String],dense:Boolean,toggleAriaLabel:String,expandIcon:String,expandedIcon:String,expandIconClass:[Array,String,Object],duration:{},headerInsetLevel:Number,contentInsetLevel:Number,expandSeparator:Boolean,defaultOpened:Boolean,hideExpandIcon:Boolean,expandIconToggle:Boolean,switchToggleSide:Boolean,denseToggle:Boolean,group:String,popup:Boolean,headerStyle:[Array,String,Object],headerClass:[Array,String,Object]},emits:[...qn,"click","afterShow","afterHide"],setup(e,{slots:t,emit:o}){let s,l,{proxy:{$q:u}}=k(),c=Ot(e,u),d=a(null!==e.modelValue?e.modelValue:e.defaultOpened),h=a(null),p=ei(),{show:f,hide:m,toggle:_}=Dn({showing:d}),v=i(()=>`q-expansion-item q-item-type q-expansion-item--${!0===d.value?"expanded":"collapsed"} q-expansion-item--${!0===e.popup?"popup":"standard"}`),b=i(()=>void 0===e.contentInsetLevel?null:{["padding"+(!0===u.lang.rtl?"Right":"Left")]:56*e.contentInsetLevel+"px"}),y=i(()=>!0!==e.disable&&(void 0!==e.href||void 0!==e.to&&null!==e.to&&""!==e.to)),w=i(()=>{let t={};return xs.forEach(n=>{t[n]=e[n]}),t}),x=i(()=>!0===y.value||!0!==e.expandIconToggle),S=i(()=>void 0!==e.expandedIcon&&!0===d.value?e.expandedIcon:e.expandIcon||u.iconSet.expansionItem[!0===e.denseToggle?"denseIcon":"icon"]),C=i(()=>!0!==e.disable&&(!0===y.value||!0===e.expandIconToggle)),T=i(()=>({expanded:!0===d.value,detailsId:p.value,toggle:_,show:f,hide:m})),E=i(()=>{let t=void 0!==e.toggleAriaLabel?e.toggleAriaLabel:u.lang.label[!0===d.value?"collapse":"expand"](e.label);return{role:"button","aria-expanded":!0===d.value?"true":"false","aria-controls":p.value,"aria-label":t}});function P(e){!0!==y.value&&_(e),o("click",e)}function L(e){13===e.keyCode&&R(e,!0)}function R(e,t){!0!==t&&!0!==e.qAvoidFocus&&h.value?.focus(),_(e),J(e)}function z(){o("afterShow")}function N(){o("afterHide")}function O(){void 0===s&&(s=Ja()),!0===d.value&&(ks[e.group]=s);let t=r(d,t=>{!0===t?ks[e.group]=s:ks[e.group]===s&&delete ks[e.group]}),n=r(()=>ks[e.group],(e,t)=>{t===s&&void 0!==e&&e!==s&&m()});l=()=>{t(),n(),ks[e.group]===s&&delete ks[e.group],l=void 0}}function I(){let a;return void 0!==t.header?a=[].concat(t.header(T.value)):(a=[n(is,()=>[n(_s,{lines:e.labelLines},()=>e.label||""),e.caption?n(_s,{lines:e.captionLines,caption:!0},()=>e.caption):null])],e.icon&&a[!0===e.switchToggleSide?"push":"unshift"](n(is,{side:!0===e.switchToggleSide,avatar:!0!==e.switchToggleSide},()=>n(Mt,{name:e.icon})))),!0!==e.disable&&!0!==e.hideExpandIcon&&a[!0===e.switchToggleSide?"unshift":"push"](function(){let t={class:["q-focusable relative-position cursor-pointer"+(!0===e.denseToggle&&!0===e.switchToggleSide?" items-end":""),e.expandIconClass],side:!0!==e.switchToggleSide,avatar:e.switchToggleSide},a=[n(Mt,{class:"q-expansion-item__toggle-icon"+(void 0===e.expandedIcon&&!0===d.value?" q-expansion-item__toggle-icon--rotated":""),name:S.value})];return!0===C.value&&(Object.assign(t,{tabindex:0,...E.value,onClick:R,onKeyup:L}),a.unshift(n("div",{ref:h,class:"q-expansion-item__toggle-focus q-icon q-focus-helper q-focus-helper--rounded",tabindex:-1}))),n(is,t,()=>a)}()),a}function q(){let t={ref:"item",style:e.headerStyle,class:e.headerClass,dark:c.value,disable:e.disable,dense:e.dense,insetLevel:e.headerInsetLevel};return!0===x.value&&(t.clickable=!0,t.onClick=P,Object.assign(t,!0===y.value?w.value:E.value)),n(as,t,I)}function D(){return A(n("div",{key:"e-content",class:"q-expansion-item__content relative-position",style:b.value,id:p.value},dt(t.default)),[[M,d.value]])}function j(){let t=[q(),n(vs,{duration:e.duration,onShow:z,onHide:N},D)];return!0===e.expandSeparator&&t.push(n(ws,{class:"q-expansion-item__border q-expansion-item__border--top absolute-top",dark:c.value}),n(ws,{class:"q-expansion-item__border q-expansion-item__border--bottom absolute-bottom",dark:c.value})),t}return r(()=>e.group,e=>{l?.(),void 0!==e&&O()}),void 0!==e.group&&O(),g(()=>{l?.()}),()=>n("div",{class:v.value},[n("div",{class:"q-expansion-item__container relative-position"},j())])}}),Cs=["top","right","bottom","left"],Ts={type:{type:String,default:"a"},outline:Boolean,push:Boolean,flat:Boolean,unelevated:Boolean,color:String,textColor:String,glossy:Boolean,square:Boolean,padding:String,label:{type:[String,Number],default:""},labelPosition:{type:String,default:"right",validator:e=>Cs.includes(e)},externalLabel:Boolean,hideLabel:{type:Boolean},labelClass:[Array,String,Object],labelStyle:[Array,String,Object],disable:Boolean,tabindex:[Number,String]};function Es(e,t){return{formClass:i(()=>"q-fab--form-"+(!0===e.square?"square":"rounded")),stacked:i(()=>!1===e.externalLabel&&["top","bottom"].includes(e.labelPosition)),labelProps:i(()=>{if(!0===e.externalLabel){let n=null===e.hideLabel?!1===t.value:e.hideLabel;return{action:"push",data:{class:[e.labelClass,`q-fab__label q-tooltip--style q-fab__label--external q-fab__label--external-${e.labelPosition}`+(!0===n?" q-fab__label--external-hidden":"")],style:e.labelStyle}}}return{action:["left","top"].includes(e.labelPosition)?"unshift":"push",data:{class:[e.labelClass,`q-fab__label q-fab__label--internal q-fab__label--internal-${e.labelPosition}`+(!0===e.hideLabel?" q-fab__label--internal-hidden":"")],style:e.labelStyle}}})}}var Ps=["up","right","down","left"],As=["left","center","right"],Ms=$({name:"QFab",props:{...Ts,...In,icon:String,activeIcon:String,hideIcon:Boolean,hideLabel:{...Ts.hideLabel,default:null},direction:{type:String,default:"right",validator:e=>Ps.includes(e)},persistent:Boolean,verticalActionsAlign:{type:String,default:"center",validator:e=>As.includes(e)}},emits:qn,setup(e,{slots:t}){let r=a(null),o=a(!0===e.modelValue),s=ei(),{proxy:{$q:l}}=k(),{formClass:u,labelProps:c}=Es(e,o),d=i(()=>!0!==e.persistent),{hide:h,toggle:p}=Dn({showing:o,hideOnRouteChange:d}),f=i(()=>({opened:o.value})),m=i(()=>`q-fab z-fab row inline justify-center q-fab--align-${e.verticalActionsAlign} ${u.value}`+(!0===o.value?" q-fab--opened":" q-fab--closed")),g=i(()=>`q-fab__actions flex no-wrap inline q-fab__actions--${e.direction} q-fab__actions--${!0===o.value?"opened":"closed"}`),_=i(()=>{let e={id:s.value,role:"menu"};return!0!==o.value&&(e["aria-hidden"]="true"),e}),v=i(()=>"q-fab__icon-holder q-fab__icon-holder--"+(!0===o.value?"opened":"closed"));function b(a,i){let r=t[a],o=`q-fab__${a} absolute-full`;return void 0===r?n(Mt,{class:o,name:e[i]||l.iconSet.fab[i]}):n("div",{class:o},r(f.value))}function y(){let a=[];return!0!==e.hideIcon&&a.push(n("div",{class:v.value},[b("icon","icon"),b("active-icon","activeIcon")])),(""!==e.label||void 0!==t.label)&&a[c.value.action](n("div",c.value.data,void 0!==t.label?t.label(f.value):[e.label])),pt(t.tooltip,a)}return w(Le,{showing:o,onChildClick(e){h(e),!0!==e?.qAvoidFocus&&r.value?.$el.focus()}}),()=>n("div",{class:m.value},[n(An,{ref:r,class:u.value,...e,noWrap:!0,stack:e.stacked,align:void 0,icon:void 0,label:void 0,noCaps:!0,fab:!0,"aria-expanded":!0===o.value?"true":"false","aria-haspopup":"true","aria-controls":s.value,onClick:p},y),n("div",{class:g.value,..._.value},dt(t.default))])}}),Ls={start:"self-end",center:"self-center",end:"self-start"},Rs=Object.keys(Ls),zs=$({name:"QFabAction",props:{...Ts,icon:{type:String,default:""},anchor:{type:String,validator:e=>Rs.includes(e)},to:[String,Object],replace:Boolean},emits:["click"],setup(e,{slots:t,emit:a}){let r=y(Le,()=>({showing:{value:!0},onChildClick:W})),{formClass:o,labelProps:s}=Es(e,r.showing),l=i(()=>{let t=Ls[e.anchor];return o.value+(void 0!==t?` ${t}`:"")}),u=i(()=>!0===e.disable||!0!==r.showing.value);function c(e){r.onChildClick(e),a("click",e)}function d(){let a=[];return void 0!==t.icon?a.push(t.icon()):""!==e.icon&&a.push(n(Mt,{name:e.icon})),(""!==e.label||void 0!==t.label)&&a[s.value.action](n("div",s.value.data,void 0!==t.label?t.label():[e.label])),pt(t.default,a)}let h=k();return Object.assign(h.proxy,{click:c}),()=>n(An,{class:l.value,...e,noWrap:!0,stack:e.stacked,icon:void 0,label:void 0,noCaps:!0,fabMini:!0,disable:u.value,onClick:c},d)}});function Ns({validate:e,resetValidation:t,requiresQForm:n}){let a=y(Re,!1);if(!1!==a){let{props:n,proxy:i}=k();Object.assign(i,{validate:e,resetValidation:t}),r(()=>n.disable,e=>{!0===e?("function"==typeof t&&t(),a.unbindComponent(i)):a.bindComponent(i)}),m(()=>{!0!==n.disable&&a.bindComponent(i)}),g(()=>{!0!==n.disable&&a.unbindComponent(i)})}else!0===n&&console.error("Parent QForm not found on useFormChild()!")}var Os=[!0,!1,"ondemand"],Is={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],default:!1,validator:e=>Os.includes(e)}};function qs(e){return null!=e&&0!==(""+e).length}var Ds={...Nt,...Is,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String},js={...Ds,maxlength:[Number,String]},Bs=["update:modelValue","clear","focus","blur"];function Fs({requiredForAttr:e=!0,tagProp:t,changeEvent:n=!1}={}){let{props:r,proxy:o}=k(),s=Ot(r,o.$q),l=ei({required:e,getValue:()=>r.for});return{requiredForAttr:e,changeEvent:n,tag:!0===t?i(()=>r.tag):{value:"label"},isDark:s,editable:i(()=>!0!==r.disable&&!0!==r.readonly),innerLoading:a(!1),focused:a(!1),hasPopupOpen:!1,splitAttrs:cs(),targetUid:l,rootRef:a(null),targetRef:a(null),controlRef:a(null)}}function $s(e){let{props:t,emit:o,slots:s,attrs:l,proxy:u}=k(),{$q:c}=u,f=null;void 0===e.hasValue&&(e.hasValue=i(()=>qs(t.modelValue))),void 0===e.emitValue&&(e.emitValue=e=>{o("update:modelValue",e)}),void 0===e.controlEvents&&(e.controlEvents={onFocusin:I,onFocusout:q}),Object.assign(e,{clearValue:D,onControlFocusin:I,onControlFocusout:q,focus:O}),void 0===e.computedCounter&&(e.computedCounter=i(()=>{if(!1!==t.counter){let e="string"==typeof t.modelValue||"number"==typeof t.modelValue?(""+t.modelValue).length:!0===Array.isArray(t.modelValue)?t.modelValue.length:0,n=void 0!==t.maxlength?t.maxlength:t.maxValues;return e+(void 0!==n?" / "+n:"")}}));let{isDirtyModel:_,hasRules:v,hasError:b,errorMessage:y,resetValidation:w}=function(e,t){let{props:n,proxy:o}=k(),s=a(!1),l=a(null),u=a(!1);Ns({validate:b,resetValidation:v});let c,d=0,h=i(()=>void 0!==n.rules&&null!==n.rules&&0!==n.rules.length),p=i(()=>!0!==n.disable&&!0===h.value&&!1===t.value),f=i(()=>!0===n.error||!0===s.value),m=i(()=>"string"==typeof n.errorMessage&&0!==n.errorMessage.length?n.errorMessage:l.value);function _(){"ondemand"!==n.lazyRules&&!0===p.value&&!0===u.value&&y()}function v(){d++,t.value=!1,u.value=!1,s.value=!1,l.value=null,y.cancel()}function b(e=n.modelValue){if(!0===n.disable||!1===h.value)return!0;let a=++d,i=!0!==t.value?()=>{u.value=!0}:()=>{},r=(e,n)=>{!0===e&&i(),s.value=e,l.value=n||null,t.value=!1},o=[];for(let t=0;t{if(void 0===e||!1===Array.isArray(e)||0===e.length)return a===d&&r(!1),!0;let t=e.find(e=>!1===e||"string"==typeof e);return a===d&&r(void 0!==t,t),void 0===t},e=>(a===d&&(console.error(e),r(!0)),!1)))}r(()=>n.modelValue,()=>{u.value=!0,!0===p.value&&!1===n.lazyRules&&y()}),r(()=>n.reactiveRules,e=>{!0===e?void 0===c&&(c=r(()=>n.rules,_,{immediate:!0,deep:!0})):void 0!==c&&(c(),c=void 0)},{immediate:!0}),r(()=>n.lazyRules,_),r(e,e=>{!0===e?u.value=!0:!0===p.value&&"ondemand"!==n.lazyRules&&y()});let y=ae(b,0);return g(()=>{c?.(),y.cancel()}),Object.assign(o,{resetValidation:v,validate:b}),z(o,"hasError",()=>f.value),{isDirtyModel:u,hasRules:h,hasError:f,errorMessage:m,validate:b,resetValidation:v}}(e.focused,e.innerLoading),x=void 0!==e.floatingLabel?i(()=>!0===t.stackLabel||!0===e.focused.value||!0===e.floatingLabel.value):i(()=>!0===t.stackLabel||!0===e.focused.value||!0===e.hasValue.value),C=i(()=>!0===t.bottomSlots||void 0!==t.hint||!0===v.value||!0===t.counter||null!==t.error),T=i(()=>!0===t.filled?"filled":!0===t.outlined?"outlined":!0===t.borderless?"borderless":t.standout?"standout":"standard"),E=i(()=>`q-field row no-wrap items-start q-field--${T.value}`+(void 0!==e.fieldClass?` ${e.fieldClass.value}`:"")+(!0===t.rounded?" q-field--rounded":"")+(!0===t.square?" q-field--square":"")+(!0===x.value?" q-field--float":"")+(!0===A.value?" q-field--labeled":"")+(!0===t.dense?" q-field--dense":"")+(!0===t.itemAligned?" q-field--item-aligned q-item-type":"")+(!0===e.isDark.value?" q-field--dark":"")+(void 0===e.getControl?" q-field--auto-height":"")+(!0===e.focused.value?" q-field--focused":"")+(!0===b.value?" q-field--error":"")+(!0===b.value||!0===e.focused.value?" q-field--highlighted":"")+(!0!==t.hideBottomSpace&&!0===C.value?" q-field--with-bottom":"")+(!0===t.disable?" q-field--disabled":!0===t.readonly?" q-field--readonly":"")),P=i(()=>"q-field__control relative-position row no-wrap"+(void 0!==t.bgColor?` bg-${t.bgColor}`:"")+(!0===b.value?" text-negative":"string"==typeof t.standout&&0!==t.standout.length&&!0===e.focused.value?` ${t.standout}`:void 0!==t.color?` text-${t.color}`:"")),A=i(()=>!0===t.labelSlot||void 0!==t.label),M=i(()=>"q-field__label no-pointer-events absolute ellipsis"+(void 0!==t.labelColor&&!0!==b.value?` text-${t.labelColor}`:"")),L=i(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:x.value,modelValue:t.modelValue,emitValue:e.emitValue})),R=i(()=>{let n={};return e.targetUid.value&&(n.for=e.targetUid.value),!0===t.disable&&(n["aria-disabled"]="true"),n});function N(){let t=document.activeElement,n=e.targetRef?.value;n&&(null===t||t.id!==e.targetUid.value)&&(!0===n.hasAttribute("tabindex")||(n=n.querySelector("[tabindex]")),n!==t&&n?.focus({preventScroll:!0}))}function O(){Vn(N)}function I(t){null!==f&&(clearTimeout(f),f=null),!0===e.editable.value&&!1===e.focused.value&&(e.focused.value=!0,o("focus",t))}function q(t,n){null!==f&&clearTimeout(f),f=setTimeout(()=>{f=null,(!0!==document.hasFocus()||!0!==e.hasPopupOpen&&void 0!==e.controlRef&&null!==e.controlRef.value&&!1===e.controlRef.value.contains(document.activeElement))&&(!0===e.focused.value&&(e.focused.value=!1,o("blur",t)),n?.())})}function D(n){J(n),!0!==c.platform.is.mobile?(e.targetRef?.value||e.rootRef.value).focus():!0===e.rootRef.value.contains(document.activeElement)&&document.activeElement.blur(),"file"===t.type&&(e.inputRef.value.value=null),o("update:modelValue",null),!0===e.changeEvent&&o("change",null),o("clear",t.modelValue),d(()=>{let e=_.value;w(),_.value=e})}function j(e){[13,32].includes(e.keyCode)&&D(e)}function B(){let a=[];return void 0!==s.prepend&&a.push(n("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:Z},s.prepend())),a.push(n("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},function(){let a=[];return void 0!==t.prefix&&null!==t.prefix&&a.push(n("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),void 0!==e.getShadowControl&&!0===e.hasShadow.value&&a.push(e.getShadowControl()),!0===A.value&&a.push(n("div",{class:M.value},dt(s.label,t.label))),void 0!==e.getControl?a.push(e.getControl()):void 0!==s.rawControl?a.push(s.rawControl()):void 0!==s.control&&a.push(n("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":!0===t.autofocus||void 0},s.control(L.value))),void 0!==t.suffix&&null!==t.suffix&&a.push(n("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),a.concat(dt(s.default))}())),!0===b.value&&!1===t.noErrorIcon&&a.push($("error",[n(Mt,{name:c.iconSet.field.error,color:"negative"})])),!0===t.loading||!0===e.innerLoading.value?a.push($("inner-loading-append",void 0!==s.loading?s.loading():[n(on,{color:t.color})])):!0===t.clearable&&!0===e.hasValue.value&&!0===e.editable.value&&a.push($("inner-clearable-append",[n(Mt,{class:"q-field__focusable-action",name:t.clearIcon||c.iconSet.field.clear,tabindex:0,role:"button","aria-hidden":"false","aria-label":c.lang.label.clear,onKeyup:j,onClick:D})])),void 0!==s.append&&a.push(n("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:Z},s.append())),void 0!==e.getInnerAppend&&a.push($("inner-append",e.getInnerAppend())),void 0!==e.getControlChild&&a.push(e.getControlChild()),a}function F(){let a,i;!0===b.value?null!==y.value?(a=[n("div",{role:"alert"},y.value)],i=`q--slot-error-${y.value}`):(a=dt(s.error),i="q--slot-error"):(!0!==t.hideHint||!0===e.focused.value)&&(void 0!==t.hint?(a=[n("div",t.hint)],i=`q--slot-hint-${t.hint}`):(a=dt(s.hint),i="q--slot-hint"));let r=!0===t.counter||void 0!==s.counter;if(!0===t.hideBottomSpace&&!1===r&&void 0===a)return;let o=n("div",{key:i,class:"q-field__messages col"},a);return n("div",{class:"q-field__bottom row items-start q-field__bottom--"+(!0!==t.hideBottomSpace?"animated":"stale"),onClick:Z},[!0===t.hideBottomSpace?o:n(S,{name:"q-transition--field-message"},()=>o),!0===r?n("div",{class:"q-field__counter"},void 0!==s.counter?s.counter():e.computedCounter.value):null])}function $(e,t){return null===t?null:n("div",{key:e,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},t)}let V=!1;return p(()=>{V=!0}),h(()=>{!0===V&&!0===t.autofocus&&u.focus()}),!0===t.autofocus&&m(()=>{u.focus()}),g(()=>{null!==f&&clearTimeout(f)}),Object.assign(u,{focus:O,blur:function(){!function(e){jn=jn.filter(t=>t!==e)}(N);let t=document.activeElement;null!==t&&e.rootRef.value.contains(t)&&t.blur()}}),function(){let a=void 0===e.getControl&&void 0===s.control?{...e.splitAttrs.attributes.value,"data-autofocus":!0===t.autofocus||void 0,...R.value}:R.value;return n(e.tag.value,{ref:e.rootRef,class:[E.value,l.class],style:l.style,...a},[void 0!==s.before?n("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:Z},s.before()):null,n("div",{class:"q-field__inner relative-position col self-stretch"},[n("div",{ref:e.controlRef,class:P.value,tabindex:-1,...e.controlEvents},B()),!0===C.value?F():null]),void 0!==s.after?n("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:Z},s.after()):null])}}var Vs=$({name:"QField",inheritAttrs:!1,props:{...js,tag:{type:String,default:"label"}},emits:Bs,setup:()=>$s(Fs({tagProp:!0}))});function Us(e,t,n,a){let i=[];return e.forEach(e=>{!0===a(e)?i.push(e):t.push({failedPropValidation:n,file:e})}),i}function Hs(e){e?.dataTransfer&&(e.dataTransfer.dropEffect="copy"),J(e)}var Ws={multiple:Boolean,accept:String,capture:String,maxFileSize:[Number,String],maxTotalSize:[Number,String],maxFiles:[Number,String],filter:Function},Gs=["rejected"];function Ys({editable:e,dnd:t,getFileInput:r,addFilesToQueue:o}){let{props:s,emit:l,proxy:u}=k(),c=a(null),d=i(()=>void 0!==s.accept?s.accept.split(",").map(e=>"*"===(e=e.trim())?"*/":(e.endsWith("/*")&&(e=e.slice(0,e.length-1)),e.toUpperCase())):null),h=i(()=>parseInt(s.maxFiles,10)),p=i(()=>parseInt(s.maxTotalSize,10));function f(t){if(e.value)if(t!==Object(t)&&(t={target:null}),!0===t.target?.matches('input[type="file"]'))0===t.clientX&&0===t.clientY&&Q(t);else{let e=r();e!==t.target&&e?.click(t)}}function m(t){e.value&&t&&o(null,t)}function g(e){J(e),!0==(null!==e.relatedTarget||!0!==j.is.safari?e.relatedTarget!==c.value:!1===document.elementsFromPoint(e.clientX,e.clientY).includes(c.value))&&(t.value=!1)}function _(e){Hs(e);let n=e.dataTransfer.files;0!==n.length&&o(null,n),t.value=!1}return Object.assign(u,{pickFiles:f,addFiles:m}),{pickFiles:f,addFiles:m,onDragover:function(e){Hs(e),!0!==t.value&&(t.value=!0)},onDragleave:g,processFiles:function(e,t,n,a){let i=Array.from(t||e.target.files),r=[],o=()=>{0!==r.length&&l("rejected",r)};if(void 0!==s.accept&&-1===d.value.indexOf("*/")&&(i=Us(i,r,"accept",e=>d.value.some(t=>e.type.toUpperCase().startsWith(t)||e.name.toUpperCase().endsWith(t))),0===i.length))return o();if(void 0!==s.maxFileSize){let e=parseInt(s.maxFileSize,10);if(i=Us(i,r,"max-file-size",t=>t.size<=e),0===i.length)return o()}if(!0!==s.multiple&&0!==i.length&&(i=[i[0]]),i.forEach(e=>{e.__key=e.webkitRelativePath+e.lastModified+e.name+e.size}),!0===a){let e=n.map(e=>e.__key);i=Us(i,r,"duplicate",t=>!1===e.includes(t.__key))}if(0===i.length)return o();if(void 0!==s.maxTotalSize){let e=!0===a?n.reduce((e,t)=>e+t.size,0):0;if(i=Us(i,r,"max-total-size",t=>(e+=t.size,e<=p.value)),0===i.length)return o()}if("function"==typeof s.filter){let e=s.filter(i);i=Us(i,r,"filter",t=>e.includes(t))}if(void 0!==s.maxFiles){let e=!0===a?n.length:0;if(i=Us(i,r,"max-files",()=>(e++,e<=h.value)),0===i.length)return o()}return o(),0!==i.length?i:void 0},getDndNode:function(e){if(!0===t.value)return n("div",{ref:c,class:`q-${e}__dnd absolute-full`,onDragenter:Hs,onDragover:Hs,onDragleave:g,onDrop:_})},maxFilesNumber:h,maxTotalSizeNumber:p}}function Ks(e,t){function n(){let t=e.modelValue;try{let e="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(t)===t&&("length"in t?Array.from(t):[t]).forEach(t=>{e.items.add(t)}),{files:e.files}}catch{return{files:void 0}}}return i(!0===t?()=>{if("file"===e.type)return n()}:n)}var Qs=$({name:"QFile",inheritAttrs:!1,props:{...Ds,...ai,...Ws,modelValue:[File,FileList,Array],append:Boolean,useChips:Boolean,displayValue:[String,Number],tabindex:{type:[String,Number],default:0},counterLabel:Function,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...Bs,...Gs],setup(e,{slots:t,emit:r,attrs:o}){let{proxy:s}=k(),l=Fs(),u=a(null),c=a(!1),d=oi(e),{pickFiles:h,onDragover:p,onDragleave:f,processFiles:m,getDndNode:g}=Ys({editable:l.editable,dnd:c,getFileInput:L,addFilesToQueue:R}),_=Ks(e),v=i(()=>Object(e.modelValue)===e.modelValue?"length"in e.modelValue?Array.from(e.modelValue):[e.modelValue]:[]),b=i(()=>qs(v.value)),y=i(()=>v.value.map(e=>e.name).join(", ")),w=i(()=>Qe(v.value.reduce((e,t)=>e+t.size,0))),x=i(()=>({totalSize:w.value,filesNumber:v.value.length,maxFiles:e.maxFiles})),S=i(()=>({tabindex:-1,type:"file",title:"",accept:e.accept,capture:e.capture,name:d.value,...o,id:l.targetUid.value,disabled:!0!==l.editable.value})),C=i(()=>"q-file q-field--auto-height"+(!0===c.value?" q-file--dnd":"")),T=i(()=>!0===e.multiple&&!0===e.append);function E(e){let t=v.value.slice();t.splice(e,1),P(t)}function P(t){r("update:modelValue",!0===e.multiple?t:t[0])}function A(e){13===e.keyCode&&Z(e)}function M(e){(13===e.keyCode||32===e.keyCode)&&h(e)}function L(){return u.value}function R(t,n){let a=m(t,n,v.value,T.value),i=L();null!=i&&(i.value=""),void 0!==a&&((!0===e.multiple?e.modelValue&&a.every(e=>v.value.includes(e)):e.modelValue===a[0])||P(!0===T.value?v.value.concat(a):a))}function N(){return[n("input",{class:[e.inputClass,"q-file__filler"],style:e.inputStyle})]}function O(){let t={ref:u,...S.value,..._.value,class:"q-field__input fit absolute-full cursor-pointer",onChange:R};return!0===e.multiple&&(t.multiple=!0),n("input",t)}return Object.assign(l,{fieldClass:C,emitValue:P,hasValue:b,inputRef:u,innerValue:v,floatingLabel:i(()=>!0===b.value||qs(e.displayValue)),computedCounter:i(()=>{if(void 0!==e.counterLabel)return e.counterLabel(x.value);let t=e.maxFiles;return`${v.value.length}${void 0!==t?" / "+t:""} (${w.value})`}),getControlChild:()=>g("file"),getControl:()=>{let a={ref:l.targetRef,class:"q-field__native row items-center cursor-pointer",tabindex:e.tabindex};return!0===l.editable.value&&Object.assign(a,{onDragover:p,onDragleave:f,onKeydown:A,onKeyup:M}),n("div",a,[O()].concat(function(){if(void 0!==t.file)return 0===v.value.length?N():v.value.map((e,n)=>t.file({index:n,file:e,ref:this}));if(void 0!==t.selected)return 0===v.value.length?N():t.selected({files:v.value,ref:this});if(!0===e.useChips)return 0===v.value.length?N():v.value.map((t,a)=>n(Fi,{key:"file-"+a,removable:l.editable.value,dense:!0,textColor:e.color,tabindex:e.tabindex,onRemove:()=>{E(a)}},()=>n("span",{class:"ellipsis",textContent:t.name})));let a=void 0!==e.displayValue?e.displayValue:y.value;return 0!==a.length?[n("div",{class:e.inputClass,style:e.inputStyle,textContent:a})]:N()}()))}}),Object.assign(s,{removeAtIndex:E,removeFile:function(e){let t=v.value.indexOf(e);-1!==t&&E(t)},getNativeElement:()=>u.value}),z(s,"nativeEl",()=>u.value),$s(l)}}),Zs=$({name:"QFooter",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:t,emit:o}){let{proxy:{$q:s}}=k(),l=y(Ae,Oe);if(l===Oe)return console.error("QFooter needs to be child of QLayout"),Oe;let u=a(parseInt(e.heightHint,10)),c=a(!0),d=a(!0===I.value||!0===l.isContainer.value?0:window.innerHeight),h=i(()=>!0===e.reveal||-1!==l.view.value.indexOf("F")||s.platform.is.ios&&!0===l.isContainer.value),p=i(()=>!0===l.isContainer.value?l.containerHeight.value:d.value),f=i(()=>{if(!0!==e.modelValue)return 0;if(!0===h.value)return!0===c.value?u.value:0;let t=l.scroll.value.position+p.value+u.value-l.height.value;return t>0?t:0}),m=i(()=>!0!==e.modelValue||!0===h.value&&!0!==c.value),_=i(()=>!0===e.modelValue&&!0===m.value&&!0===e.reveal),v=i(()=>"q-footer q-layout__section--marginal "+(!0===h.value?"fixed":"absolute")+"-bottom"+(!0===e.bordered?" q-footer--bordered":"")+(!0===m.value?" q-footer--hidden":"")+(!0!==e.modelValue?" q-layout--prevent-focus"+(!0!==h.value?" hidden":""):"")),b=i(()=>{let e=l.rows.value.bottom,t={};return"l"===e[0]&&!0===l.left.space&&(t[!0===s.lang.rtl?"right":"left"]=`${l.left.size}px`),"r"===e[2]&&!0===l.right.space&&(t[!0===s.lang.rtl?"left":"right"]=`${l.right.size}px`),t});function w(e,t){l.update("footer",e,t)}function x(e,t){e.value!==t&&(e.value=t)}function S({height:e}){x(u,e),w("size",e)}function C(e){!0===_.value&&x(c,!0),o("focusin",e)}r(()=>e.modelValue,e=>{w("space",e),x(c,!0),l.animate()}),r(f,e=>{w("offset",e)}),r(()=>e.reveal,t=>{!1===t&&x(c,e.modelValue)}),r(c,e=>{l.animate(),o("reveal",e)}),r([u,l.scroll,l.height],function(){if(!0!==e.reveal)return;let{direction:t,position:n,inflectionPoint:a}=l.scroll.value;x(c,"up"===t||n-a<100||l.height.value-p.value-n-u.value<300)}),r(()=>s.screen.height,e=>{!0!==l.isContainer.value&&x(d,e)});let T={};return l.instances.footer=T,!0===e.modelValue&&w("size",u.value),w("space",e.modelValue),w("offset",f.value),g(()=>{l.instances.footer===T&&(l.instances.footer=void 0,w("size",0),w("offset",0),w("space",!1))}),()=>{let a=pt(t.default,[n(lr,{debounce:0,onResize:S})]);return!0===e.elevated&&a.push(n("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),n("footer",{class:v.value,style:b.value,onFocusin:C},a)}}}),Js=$({name:"QForm",props:{autofocus:Boolean,noErrorFocus:Boolean,noResetFocus:Boolean,greedy:Boolean,onSubmit:Function},emits:["reset","validationSuccess","validationError"],setup(e,{slots:t,emit:i}){let r=k(),o=a(null),s=0,l=[];function u(t){let n="boolean"==typeof t?t:!0!==e.noErrorFocus,a=++s,r=(e,t)=>{i("validation"+(!0===e?"Success":"Error"),t)},o=e=>{let t=e.validate();return"function"==typeof t.then?t.then(t=>({valid:t,comp:e}),t=>({valid:!1,comp:e,err:t})):Promise.resolve({valid:t,comp:e})};return(!0===e.greedy?Promise.all(l.map(o)).then(e=>e.filter(e=>!0!==e.valid)):l.reduce((e,t)=>e.then(()=>o(t).then(e=>{if(!1===e.valid)return Promise.reject(e)})),Promise.resolve()).catch(e=>[e])).then(e=>{if(void 0===e||0===e.length)return a===s&&r(!0),!0;if(a===s){let{comp:t,err:a}=e[0];if(void 0!==a&&console.error(a),r(!1,t),!0===n){let t=e.find(({comp:e})=>"function"==typeof e.focus&&!1===Wt(e.$));void 0!==t&&t.comp.focus()}}return!1})}function c(){s++,l.forEach(e=>{"function"==typeof e.resetValidation&&e.resetValidation()})}function f(t){void 0!==t&&J(t);let n=s+1;u().then(a=>{n===s&&!0===a&&(void 0!==e.onSubmit?i("submit",t):void 0!==t?.target&&"function"==typeof t.target.submit&&t.target.submit())})}function g(t){void 0!==t&&J(t),i("reset"),d(()=>{c(),!0===e.autofocus&&!0!==e.noResetFocus&&_()})}function _(){Vn(()=>{null!==o.value&&(o.value.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||o.value.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||o.value.querySelector("[autofocus], [data-autofocus]")||Array.prototype.find.call(o.value.querySelectorAll("[tabindex]"),e=>-1!==e.tabIndex))?.focus({preventScroll:!0})})}w(Re,{bindComponent(e){l.push(e)},unbindComponent(e){let t=l.indexOf(e);-1!==t&&l.splice(t,1)}});let v=!1;return p(()=>{v=!0}),h(()=>{!0===v&&!0===e.autofocus&&_()}),m(()=>{!0===e.autofocus&&_()}),Object.assign(r.proxy,{validate:u,resetValidation:c,submit:f,reset:g,focus:_,getValidationComponents:()=>l}),()=>n("form",{class:"q-form",ref:o,onSubmit:f,onReset:g},dt(t.default))}}),Xs={inject:{[Re]:{default:W}},watch:{disable(e){let t=this.$.provides[Re];void 0!==t&&(!0===e?(this.resetValidation(),t.unbindComponent(this)):t.bindComponent(this))}},methods:{validate(){},resetValidation(){}},mounted(){!0!==this.disable&&this.$.provides[Re]?.bindComponent(this)},beforeUnmount(){!0!==this.disable&&this.$.provides[Re]?.unbindComponent(this)}},el=$({name:"QHeader",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,revealOffset:{type:Number,default:250},bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:t,emit:o}){let{proxy:{$q:s}}=k(),l=y(Ae,Oe);if(l===Oe)return console.error("QHeader needs to be child of QLayout"),Oe;let u=a(parseInt(e.heightHint,10)),c=a(!0),d=i(()=>!0===e.reveal||-1!==l.view.value.indexOf("H")||s.platform.is.ios&&!0===l.isContainer.value),h=i(()=>{if(!0!==e.modelValue)return 0;if(!0===d.value)return!0===c.value?u.value:0;let t=u.value-l.scroll.value.position;return t>0?t:0}),p=i(()=>!0!==e.modelValue||!0===d.value&&!0!==c.value),f=i(()=>!0===e.modelValue&&!0===p.value&&!0===e.reveal),m=i(()=>"q-header q-layout__section--marginal "+(!0===d.value?"fixed":"absolute")+"-top"+(!0===e.bordered?" q-header--bordered":"")+(!0===p.value?" q-header--hidden":"")+(!0!==e.modelValue?" q-layout--prevent-focus":"")),_=i(()=>{let e=l.rows.value.top,t={};return"l"===e[0]&&!0===l.left.space&&(t[!0===s.lang.rtl?"right":"left"]=`${l.left.size}px`),"r"===e[2]&&!0===l.right.space&&(t[!0===s.lang.rtl?"left":"right"]=`${l.right.size}px`),t});function v(e,t){l.update("header",e,t)}function b(e,t){e.value!==t&&(e.value=t)}function w({height:e}){b(u,e),v("size",e)}function x(e){!0===f.value&&b(c,!0),o("focusin",e)}r(()=>e.modelValue,e=>{v("space",e),b(c,!0),l.animate()}),r(h,e=>{v("offset",e)}),r(()=>e.reveal,t=>{!1===t&&b(c,e.modelValue)}),r(c,e=>{l.animate(),o("reveal",e)}),r(l.scroll,t=>{!0===e.reveal&&b(c,"up"===t.direction||t.position<=e.revealOffset||t.position-t.inflectionPoint<100)});let S={};return l.instances.header=S,!0===e.modelValue&&v("size",u.value),v("space",e.modelValue),v("offset",h.value),g(()=>{l.instances.header===S&&(l.instances.header=void 0,v("size",0),v("offset",0),v("space",!1))}),()=>{let a=ht(t.default,[]);return!0===e.elevated&&a.push(n("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),a.push(n(lr,{debounce:0,onResize:w})),n("header",{class:m.value,style:_.value,onFocusin:x},a)}}}),tl={ratio:[String,Number]};function nl(e,t){return i(()=>{let n=Number(e.ratio||(void 0!==t?t.value:void 0));return!0!==isNaN(n)&&n>0?{paddingBottom:100/n+"%"}:null})}var al=$({name:"QImg",props:{...tl,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},loadingShowDelay:{type:[Number,String],default:0},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:1.7778},placeholderSrc:String,errorSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:t,emit:o}){let s=a(e.initialRatio),l=nl(e,s),u=k(),{registerTimeout:c,removeTimeout:d}=aa(),{registerTimeout:h,removeTimeout:p}=aa(),f=i(()=>void 0!==e.placeholderSrc?{src:e.placeholderSrc}:null),g=i(()=>void 0!==e.errorSrc?{src:e.errorSrc,__qerror:!0}:null),_=[a(null),a(f.value)],v=a(0),b=a(!1),y=a(!1),w=i(()=>`q-img q-img--${!0===e.noNativeMenu?"no-":""}menu`),x=i(()=>({width:e.width,height:e.height})),C=i(()=>`q-img__image ${void 0!==e.imgClass?e.imgClass+" ":""}q-img__image--with${!0===e.noTransition?"out":""}-transition q-img__image--`),T=i(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));function E(){p(),b.value=!1}function P({target:e}){!1===Wt(u)&&(d(),s.value=0===e.naturalHeight?.5:e.naturalWidth/e.naturalHeight,A(e,1))}function A(e,t){1e3===t||!0===Wt(u)||(!0===e.complete?function(e){!0!==Wt(u)&&(v.value=1^v.value,_[v.value].value=null,E(),"true"!==e.getAttribute("__qerror")&&(y.value=!1),o("load",e.currentSrc||e.src))}(e):c(()=>{A(e,t+1)},50))}function M(e){d(),E(),y.value=!0,_[v.value].value=g.value,_[1^v.value].value=f.value,o("error",e)}function L(t){let a=_[t].value,i={key:"img_"+t,class:C.value,style:T.value,alt:e.alt,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...a};return v.value===t?Object.assign(i,{class:i.class+"current",onLoad:P,onError:M}):i.class+="loaded",n("div",{class:"q-img__container absolute-full",key:"img"+t},n("img",i))}function R(){return!1===b.value?n("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},dt(t[!0===y.value?"error":"default"])):n("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},void 0!==t.loading?t.loading():!0===e.noSpinner?void 0:[n(on,{color:e.spinnerColor,size:e.spinnerSize})])}{let t=function(){r(()=>e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null,t=>{d(),y.value=!1,null===t?(E(),_[1^v.value].value=f.value):(p(),0!==e.loadingShowDelay?h(()=>{b.value=!0},e.loadingShowDelay):b.value=!0),_[v.value].value=t},{immediate:!0})};!0===I.value?m(t):t()}return()=>{let t=[];return null!==l.value&&t.push(n("div",{key:"filler",style:l.value})),null!==_[0].value&&t.push(L(0)),null!==_[1].value&&t.push(L(1)),t.push(n(S,{name:"q-transition--fade"},R)),n("div",{key:"main",class:w.value,style:x.value,role:"img","aria-label":e.alt},t)}}}),{passive:il}=H,rl=$({name:"QInfiniteScroll",props:{offset:{type:Number,default:500},debounce:{type:[String,Number],default:100},scrollTarget:ra,initialIndex:{type:Number,default:0},disable:Boolean,reverse:Boolean},emits:["load"],setup(e,{slots:t,emit:o}){let s,l,u=a(!1),c=a(!0),f=a(null),_=a(null),v=e.initialIndex,b=i(()=>"q-infinite-scroll__loading"+(!0===u.value?"":" invisible"));function y(){if(!0===e.disable||!0===u.value||!1===c.value)return;let t=la(s),n=ua(s),a=ln(s);!1===e.reverse?Math.round(n+a+e.offset)>=Math.round(t)&&w():Math.round(n)<=e.offset&&w()}function w(){if(!0===e.disable||!0===u.value||!1===c.value)return;v++,u.value=!0;let t=la(s);o("load",v,n=>{!0===c.value&&(u.value=!1,d(()=>{if(!0===e.reverse){let e=la(s),n=ua(s);ma(s,n+(e-t))}!0===n?S():f.value&&f.value.closest("body")&&l()}))})}function x(){!1===c.value&&(c.value=!0,s.addEventListener("scroll",l,il)),y()}function S(){!0===c.value&&(c.value=!1,u.value=!1,s.removeEventListener("scroll",l,il),l?.cancel?.())}function C(){if(s&&!0===c.value&&s.removeEventListener("scroll",l,il),s=sa(f.value,e.scrollTarget),!0===c.value){if(s.addEventListener("scroll",l,il),!0===e.reverse){let e=la(s),t=ln(s);ma(s,e-t)}y()}}function T(e){e=parseInt(e,10);let t=l;l=e<=0?y:ae(y,!0===isNaN(e)?100:e),s&&!0===c.value&&(void 0!==t&&s.removeEventListener("scroll",t,il),s.addEventListener("scroll",l,il))}function E(e){if(!0===P.value){if(null===_.value)return void(!0!==e&&d(()=>{E(!0)}));let t=(!0===u.value?"un":"")+"pauseAnimations";Array.from(_.value.getElementsByTagName("svg")).forEach(e=>{e[t]()})}}let P=i(()=>!0!==e.disable&&!0===c.value);r([u,P],()=>{E()}),r(()=>e.disable,e=>{!0===e?S():x()}),r(()=>e.reverse,()=>{!1===u.value&&!0===c.value&&y()}),r(()=>e.scrollTarget,C),r(()=>e.debounce,T);let A=!1;h(()=>{!1!==A&&s&&ma(s,A)}),p(()=>{A=!!s&&ua(s)}),g(()=>{!0===c.value&&s.removeEventListener("scroll",l,il)}),m(()=>{T(e.debounce),C(),!1===u.value&&E()});let M=k();return Object.assign(M.proxy,{poll:()=>{l?.()},trigger:w,stop:S,reset:function(){v=0},resume:x,setIndex:function(e){v=e},updateScrollTarget:C}),()=>{let a=ht(t.default,[]);return!0===P.value&&a[!1===e.reverse?"push":"unshift"](n("div",{ref:_,class:b.value},dt(t.loading))),n("div",{class:"q-infinite-scroll",ref:f},a)}}}),ol=$({name:"QInnerLoading",props:{...Nt,...ea,showing:Boolean,color:String,size:{type:[String,Number],default:"42px"},label:String,labelClass:String,labelStyle:[String,Array,Object]},setup(e,{slots:t}){let a=k(),r=Ot(e,a.proxy.$q),{transitionProps:o,transitionStyle:s}=ta(e),l=i(()=>"q-inner-loading q--avoid-card-border absolute-full column flex-center"+(!0===r.value?" q-inner-loading--dark":"")),u=i(()=>"q-inner-loading__label"+(void 0!==e.labelClass?` ${e.labelClass}`:""));function c(){return!0===e.showing?n("div",{class:l.value,style:s.value},void 0!==t.default?t.default():function(){let t=[n(on,{size:e.size,color:e.color})];return void 0!==e.label&&t.push(n("div",{class:u.value,style:e.labelStyle},[e.label])),t}()):null}return()=>n(S,o.value,c)}}),sl={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},{tokenMap:ll,tokenKeys:ul}=cl({"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}});function cl(e){let t=Object.keys(e),n={};return t.forEach(t=>{let a=e[t];n[t]={...a,regex:new RegExp(a.pattern)}}),{tokenMap:n,tokenKeys:t}}function dl(e){return new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+e.join("")+"])|(.)","g")}var hl=/[.*+?^${}()|[\]\\]/g,pl=dl(ul),fl="",ml={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean,maskTokens:Object};function gl(e,t,n,o){let s,l,u,c,h,p,f=i(()=>{if(void 0===e.maskTokens||null===e.maskTokens)return{tokenMap:ll,tokenRegexMask:pl};let{tokenMap:t}=cl(e.maskTokens),n={...ll,...t};return{tokenMap:n,tokenRegexMask:dl(Object.keys(n))}}),m=a(null),g=a(function(){if(v(),!0===m.value){let t=w(k(e.modelValue));return!1!==e.fillMask?x(t):t}return e.modelValue}());function _(e){if(e0;a--)t+=fl;n=n.slice(0,a)+t+n.slice(a)}return n}function v(){if(m.value=void 0!==e.mask&&0!==e.mask.length&&(!0===e.autogrow||["textarea","text","search","url","tel","password"].includes(e.type)),!1===m.value)return c=void 0,s="",void(l="");let t=void 0===sl[e.mask]?e.mask:sl[e.mask],n="string"==typeof e.fillMask&&0!==e.fillMask.length?e.fillMask.slice(0,1):"_",a=n.replace(hl,"\\$&"),i=[],r=[],o=[],d=!0===e.reverseFillMask,h="",p="";t.replace(f.value.tokenRegexMask,(e,t,n,a,s)=>{if(void 0!==a){let e=f.value.tokenMap[a];o.push(e),p=e.negate,!0===d&&(r.push("(?:"+p+"+)?("+e.pattern+"+)?(?:"+p+"+)?("+e.pattern+"+)?"),d=!1),r.push("(?:"+p+"+)?("+e.pattern+")?")}else if(void 0!==n)h="\\"+("\\"===n?"":n),o.push(n),i.push("([^"+h+"]+)?"+h+"?");else{let e=void 0!==t?t:s;h="\\"===e?"\\\\\\\\":e.replace(hl,"\\\\$&"),o.push(e),i.push("([^"+h+"]+)?"+h+"?")}});let g=new RegExp("^"+i.join("")+"("+(""===h?".":"[^"+h+"]")+"+)?"+(""===h?"":"["+h+"]*")+"$"),_=r.length-1,v=r.map((t,n)=>0===n&&!0===e.reverseFillMask?new RegExp("^"+a+"*"+t):n===_?new RegExp("^"+t+"("+(""===p?".":p)+"+)?"+(!0===e.reverseFillMask?"$":a+"*")):new RegExp("^"+t));u=o,c=t=>{let n=g.exec(!0===e.reverseFillMask?t:t.slice(0,o.length+1));null!==n&&(t=n.slice(1).join(""));let a=[],i=v.length;for(let e=0,n=t;e"string"==typeof e?e:fl).join(""),l=s.split(fl).join(n)}function b(t,a,i){let r=o.value,u=r.selectionEnd,c=r.value.length-u,p=k(t);!0===a&&v();let f=w(p,a),m=!1!==e.fillMask?x(f):f,_=g.value!==m;r.value!==m&&(r.value=m),!0===_&&(g.value=m),document.activeElement===r&&d(()=>{if(m===l){let t=!0===e.reverseFillMask?l.length:0;return void r.setSelectionRange(t,t,"forward")}if("insertFromPaste"===i&&!0!==e.reverseFillMask){let e=r.selectionEnd,t=u-1;for(let n=h;n<=t&&nf.length?1:0:Math.max(0,m.length-(m===l?0:Math.min(f.length,c)+1))+1:u;return void r.setSelectionRange(t,t,"forward")}if(!0===e.reverseFillMask)if(!0===_){let e=Math.max(0,m.length-(m===l?0:Math.min(f.length,c+1)));1===e&&1===u?r.setSelectionRange(e,e,"forward"):y.rightReverse(r,e)}else{let e=m.length-c;r.setSelectionRange(e,e,"backward")}else if(!0===_){let e=Math.max(0,s.indexOf(fl),Math.min(f.length,u)-1);y.right(r,e)}else{let e=u-1;y.right(r,e)}});let b=!0===e.unmaskedValue?k(m):m;String(e.modelValue)!==b&&(null!==e.modelValue||""!==b)&&n(b,!0)}r(()=>e.type+e.autogrow,v),r(()=>e.mask,n=>{if(void 0!==n)b(g.value,!0);else{let n=k(g.value);v(),e.modelValue!==n&&t("update:modelValue",n)}}),r(()=>e.fillMask+e.reverseFillMask,()=>{!0===m.value&&b(g.value,!0)}),r(()=>e.unmaskedValue,()=>{!0===m.value&&b(g.value)});let y={left(e,t){let n=-1===s.slice(t-1).indexOf(fl),a=Math.max(0,t-1);for(;a>=0;a--)if(s[a]===fl){t=a,!0===n&&t++;break}if(a<0&&void 0!==s[t]&&s[t]!==fl)return y.right(e,0);t>=0&&e.setSelectionRange(t,t,"backward")},right(e,t){let n=e.value.length,a=Math.min(n,t+1);for(;a<=n;a++){if(s[a]===fl){t=a;break}s[a-1]===fl&&(t=a)}if(a>n&&void 0!==s[t-1]&&s[t-1]!==fl)return y.left(e,n);e.setSelectionRange(t,t,"forward")},leftReverse(e,t){let n=_(e.value.length),a=Math.max(0,t-1);for(;a>=0;a--){if(n[a-1]===fl){t=a;break}if(n[a]===fl&&(t=a,0===a))break}if(a<0&&void 0!==n[t]&&n[t]!==fl)return y.rightReverse(e,0);t>=0&&e.setSelectionRange(t,t,"backward")},rightReverse(e,t){let n=e.value.length,a=_(n),i=-1===a.slice(0,t+1).indexOf(fl),r=Math.min(n,t+1);for(;r<=n;r++)if(a[r-1]===fl){(t=r)>0&&!0===i&&t--;break}if(r>n&&void 0!==a[t-1]&&a[t-1]!==fl)return y.leftReverse(e,n);e.setSelectionRange(t,t,"forward")}};function w(t,n){if(null==t||""===t)return"";if(!0===e.reverseFillMask)return function(e,t){let n=u,a=s.indexOf(fl),i=e.length-1,r="";for(let o=n.length-1;o>=0&&-1!==i;o--){let s=n[o],l=e[i];if("string"==typeof s)r=s+r,!0===t&&l===s&&i--;else{if(void 0===l||!s.regex.test(l))return r;do{r=(void 0!==s.transform?s.transform(l):l)+r,i--,l=e[i]}while(a===o&&void 0!==l&&s.regex.test(l))}}return r}(t,n);let a=u,i=0,r="";for(let e=0;eqs(y.value)),A=wl(q),M=Fs({changeEvent:!0}),L=i(()=>"textarea"===e.type||!0===e.autogrow),R=i(()=>!0===L.value||["text","search","url","tel","password"].includes(e.type)),N=i(()=>{let t={...M.splitAttrs.listeners.value,onInput:q,onPaste:I,onChange:F,onBlur:$,onFocus:Q};return t.onCompositionstart=t.onCompositionupdate=t.onCompositionend=A,!0===w.value&&(t.onKeydown=C,t.onClick=T),!0===e.autogrow&&(t.onAnimationend=D),t}),O=i(()=>{let t={tabindex:0,"data-autofocus":!0===e.autofocus||void 0,rows:"textarea"===e.type?6:void 0,"aria-label":e.label,name:b.value,...M.splitAttrs.attributes.value,id:M.targetUid.value,maxlength:e.maxlength,disabled:!0===e.disable,readonly:!0===e.readonly};return!1===L.value&&(t.type=e.type),!0===e.autogrow&&(t.rows=1),t});function I(n){if(!0===w.value&&!0!==e.reverseFillMask){let e=n.target;x(e,e.selectionStart,e.selectionEnd)}t("paste",n)}function q(n){if(!n||!n.target)return;if("file"===e.type)return void t("update:modelValue",n.target.files);let a=n.target.value;if(!0!==n.target.qComposing){if(!0===w.value)S(a,!1,n.inputType);else if(j(a),!0===R.value&&n.target===document.activeElement){let{selectionStart:e,selectionEnd:t}=n.target;void 0!==e&&void 0!==t&&d(()=>{n.target===document.activeElement&&0===a.indexOf(n.target.value)&&n.target.setSelectionRange(e,t)})}!0===e.autogrow&&B()}else p.value=a}function D(e){t("animationend",e),B()}function j(n,a){u=()=>{_=null,"number"!==e.type&&!0===p.hasOwnProperty("value")&&delete p.value,e.modelValue!==n&&f!==n&&(f=n,!0===a&&(l=!0),t("update:modelValue",n),d(()=>{f===n&&(f=NaN)})),u=void 0},"number"===e.type&&(s=!0,p.value=n),void 0!==e.debounce?(null!==_&&clearTimeout(_),p.value=n,_=setTimeout(u,e.debounce)):u()}function B(){requestAnimationFrame(()=>{let e=v.value;if(null!==e){let t=e.parentNode.style,{scrollTop:n}=e,{overflowY:a,maxHeight:i}=!0===h.platform.is.firefox?{}:window.getComputedStyle(e),r=void 0!==a&&"scroll"!==a;!0===r&&(e.style.overflowY="hidden"),t.marginBottom=e.scrollHeight-1+"px",e.style.height="1px",e.style.height=e.scrollHeight+"px",!0===r&&(e.style.overflowY=parseInt(i,10){null!==v.value&&(v.value.value=void 0!==y.value?y.value:"")})}function V(){return!0===p.hasOwnProperty("value")?p.value:void 0!==y.value?y.value:""}r(()=>e.type,()=>{v.value&&(v.value.value=e.modelValue)}),r(()=>e.modelValue,t=>{if(!0===w.value){if(!0===l&&(l=!1,String(t)===f))return;S(t)}else y.value!==t&&(y.value=t,"number"===e.type&&!0===p.hasOwnProperty("value")&&(!0===s?s=!1:delete p.value));!0===e.autogrow&&d(B)}),r(()=>e.autogrow,e=>{!0===e?d(B):null!==v.value&&o.rows>0&&(v.value.style.height="auto")}),r(()=>e.dense,()=>{!0===e.autogrow&&d(B)}),g(()=>{$()}),m(()=>{!0===e.autogrow&&B()}),Object.assign(M,{innerValue:y,fieldClass:i(()=>"q-"+(!0===L.value?"textarea":"input")+(!0===e.autogrow?" q-textarea--autogrow":"")),hasShadow:i(()=>"file"!==e.type&&"string"==typeof e.shadowText&&0!==e.shadowText.length),inputRef:v,emitValue:j,hasValue:P,floatingLabel:i(()=>!0===P.value&&("number"!==e.type||!1===isNaN(y.value))||qs(e.displayValue)),getControl:()=>n(!0===L.value?"textarea":"input",{ref:v,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...O.value,...N.value,..."file"!==e.type?{value:V()}:E.value}),getShadowControl:()=>n("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(!0===L.value?"":" text-no-wrap")},[n("span",{class:"invisible"},V()),n("span",e.shadowText)])});let U=$s(M);return Object.assign(c,{focus:function(){Vn(()=>{let e=document.activeElement;null!==v.value&&v.value!==e&&(null===e||e.id!==M.targetUid.value)&&v.value.focus({preventScroll:!0})})},select:function(){v.value?.select()},getNativeElement:()=>v.value}),z(c,"nativeEl",()=>v.value),U}}),xl={threshold:0,root:null,rootMargin:"0px"};function Sl(e,t,n){let a,i,r;"function"==typeof n?(a=n,i=xl,r=void 0===t.cfg):(a=n.handler,i=Object.assign({},xl,n.cfg),r=void 0===t.cfg||!1===De(t.cfg,i)),t.handler!==a&&(t.handler=a),!0===r&&(t.cfg=i,t.observer?.unobserve(e),t.observer=new IntersectionObserver(([n])=>{if("function"==typeof t.handler){if(null===n.rootBounds&&!0===document.body.contains(e))return t.observer.unobserve(e),void t.observer.observe(e);(!1===t.handler(n,t.observer)||!0===t.once&&!0===n.isIntersecting)&&Cl(e)}},i),t.observer.observe(e))}function Cl(e){let t=e.__qvisible;void 0!==t&&(t.observer?.unobserve(e),delete e.__qvisible)}var Tl=V({name:"intersection",mounted(e,{modifiers:t,value:n}){let a={once:!0===t.once};Sl(e,a,n),e.__qvisible=a},updated(e,t){let n=e.__qvisible;void 0!==n&&Sl(e,n,t.value)},beforeUnmount:Cl}),El=$({name:"QIntersection",props:{tag:{type:String,default:"div"},once:Boolean,transition:String,transitionDuration:{type:[String,Number],default:300},ssrPrerender:Boolean,margin:String,threshold:[Number,Array],root:{default:null},disable:Boolean,onVisibility:Function},setup(e,{slots:t,emit:r}){let o=a(!0===I.value&&e.ssrPrerender),s=i(()=>void 0!==e.root||void 0!==e.margin||void 0!==e.threshold?{handler:d,cfg:{root:e.root,rootMargin:e.margin,threshold:e.threshold}}:d),l=i(()=>!0!==e.disable&&(!0!==I.value||!0!==e.once||!0!==e.ssrPrerender)),u=i(()=>[[Tl,s.value,void 0,{once:e.once}]]),c=i(()=>`--q-transition-duration: ${e.transitionDuration}ms`);function d(t){o.value!==t.isIntersecting&&(o.value=t.isIntersecting,void 0!==e.onVisibility&&r("visibility",o.value))}function h(){return!0===o.value?[n("div",{key:"content",style:c.value},dt(t.default))]:void 0!==t.hidden?[n("div",{key:"hidden",style:c.value},t.hidden())]:void 0}return()=>{let t=e.transition?[n(S,{name:"q-transition--"+e.transition},h)]:h();return mt(e.tag,{class:"q-intersection"},t,"main",l.value,()=>u.value)}}}),Pl=["ul","ol"],Al=$({name:"QList",props:{...Nt,bordered:Boolean,dense:Boolean,separator:Boolean,padding:Boolean,tag:{type:String,default:"div"}},setup(e,{slots:t}){let a=k(),r=Ot(e,a.proxy.$q),o=i(()=>Pl.includes(e.tag)?null:"list"),s=i(()=>"q-list"+(!0===e.bordered?" q-list--bordered":"")+(!0===e.dense?" q-list--dense":"")+(!0===e.separator?" q-list--separator":"")+(!0===r.value?" q-list--dark":"")+(!0===e.padding?" q-list--padding":""));return()=>n(e.tag,{class:s.value,role:o.value},dt(t.default))}}),Ml=[34,37,40,33,39,38],Ll=Object.keys($i),Rl=$({name:"QKnob",props:{...ai,...$i,modelValue:{type:Number,required:!0},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},tabindex:{type:[Number,String],default:0},disable:Boolean,readonly:Boolean},emits:["update:modelValue","change","dragValue"],setup(e,{slots:t,emit:o}){let s,{proxy:l}=k(),{$q:u}=l,c=a(e.modelValue),d=a(!1),h=i(()=>!0===isNaN(e.innerMin)||e.innerMin!0===isNaN(e.innerMax)||e.innerMax>e.max?e.max:e.innerMax);function f(){c.value=null===e.modelValue?h.value:Je(e.modelValue,h.value,p.value),R(!0)}r(()=>`${e.modelValue}|${h.value}|${p.value}`,f),f();let m=i(()=>!1===e.disable&&!1===e.readonly),g=i(()=>"q-knob non-selectable"+(!0===m.value?" q-knob--editable":!0===e.disable?" disabled":"")),_=i(()=>(String(e.step).trim().split(".")[1]||"").length),v=i(()=>0===e.step?1:e.step),b=i(()=>!0===e.instantFeedback||!0===d.value),y=!0===u.platform.is.mobile?i(()=>!0===m.value?{onClick:P}:{}):i(()=>!0===m.value?{onMousedown:E,onClick:P,onKeydown:A,onKeyup:L}:{}),w=i(()=>!0===m.value?{tabindex:e.tabindex}:{["aria-"+(!0===e.disable?"disabled":"readonly")]:"true"}),x=i(()=>{let t={};return Ll.forEach(n=>{t[n]=e[n]}),t});function S(e){e.isFinal?(M(e.evt,!0),d.value=!1):(e.isFirst&&(T(),d.value=!0),M(e.evt))}let C=i(()=>[[Yi,S,void 0,{prevent:!0,stop:!0,mouse:!0}]]);function T(){let{top:e,left:t,width:n,height:a}=l.$el.getBoundingClientRect();s={top:e+a/2,left:t+n/2}}function E(e){T(),M(e)}function P(e){T(),M(e,!0)}function A(e){if(!1===Ml.includes(e.keyCode))return;J(e);let t=([34,33].includes(e.keyCode)?10:1)*v.value,n=[34,37,40].includes(e.keyCode)?-t:t;c.value=Je(parseFloat((c.value+n).toFixed(_.value)),h.value,p.value),R()}function M(t,n){let a=Y(t),i=Math.abs(a.top-s.top),r=Math.sqrt(i**2+Math.abs(a.left-s.left)**2),l=Math.asin(i/r)*(180/Math.PI);l=a.top=v.value/2?(e<0?-1:1)*v.value:0),d=parseFloat(d.toFixed(_.value))}d=Je(d,h.value,p.value),o("dragValue",d),c.value!==d&&(c.value=d),R(n)}function L(e){Ml.includes(e.keyCode)&&R(!0)}function R(t){e.modelValue!==c.value&&o("update:modelValue",c.value),!0===t&&o("change",c.value)}let z=ii(e);function N(){return n("input",z.value)}return()=>{let n={class:g.value,role:"slider","aria-valuemin":h.value,"aria-valuemax":p.value,"aria-valuenow":e.modelValue,...w.value,...x.value,value:c.value,instantFeedback:b.value,...y.value},a={default:t.default};return!0===m.value&&void 0!==e.name&&(a.internal=N),mt(Hi,n,a,"knob",m.value,()=>C.value)}}}),{passive:zl}=H,Nl=["both","horizontal","vertical"],Ol=$({name:"QScrollObserver",props:{axis:{type:String,validator:e=>Nl.includes(e),default:"vertical"},debounce:[String,Number],scrollTarget:ra},emits:["scroll"],setup(e,{emit:t}){let n,a,i={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}},o=null;function s(){o?.();let a=Math.max(0,ua(n)),r=ca(n),s={top:a-i.position.top,left:r-i.position.left};if("vertical"===e.axis&&0===s.top||"horizontal"===e.axis&&0===s.left)return;let l=Math.abs(s.top)>=Math.abs(s.left)?s.top<0?"up":"down":s.left<0?"left":"right";i.position={top:a,left:r},i.directionChanged=i.direction!==l,i.delta=s,!0===i.directionChanged&&(i.direction=l,i.inflectionPoint=i.position),t("scroll",{...i})}function l(){n=sa(a,e.scrollTarget),n.addEventListener("scroll",c,zl),c(!0)}function u(){void 0!==n&&(n.removeEventListener("scroll",c,zl),n=void 0)}function c(t){if(!0===t||0===e.debounce||"0"===e.debounce)s();else if(null===o){let[t,n]=e.debounce?[setTimeout(s,e.debounce),clearTimeout]:[requestAnimationFrame(s),cancelAnimationFrame];o=()=>{n(t),o=null}}}r(()=>e.scrollTarget,()=>{u(),l()});let{proxy:d}=k();return r(()=>d.$q.lang.rtl,s),m(()=>{a=d.$el.parentNode,l()}),g(()=>{o?.(),u()}),Object.assign(d,{trigger:c,getPosition:()=>i}),W}}),Il=$({name:"QLayout",props:{container:Boolean,view:{type:String,default:"hhh lpr fff",validator:e=>/^(h|l)h(h|r) lpr (f|l)f(f|r)$/.test(e.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(e,{slots:t,emit:o}){let{proxy:{$q:s}}=k(),l=a(null),c=a(s.screen.height),d=a(!0===e.container?0:s.screen.width),h=a({position:0,direction:"down",inflectionPoint:0}),p=a(0),f=a(!0===I.value?0:_a()),m=i(()=>"q-layout q-layout--"+(!0===e.container?"containerized":"standard")),g=i(()=>!1===e.container?{minHeight:s.screen.height+"px"}:null),v=i(()=>0!==f.value?{[!0===s.lang.rtl?"left":"right"]:`${f.value}px`}:null),b=i(()=>0!==f.value?{[!0===s.lang.rtl?"right":"left"]:0,[!0===s.lang.rtl?"left":"right"]:`-${f.value}px`,width:`calc(100% + ${f.value}px)`}:null);function y(t){if(!0===e.container||!0!==document.qScrollPrevented){let n={position:t.position.top,direction:t.direction,directionChanged:t.directionChanged,inflectionPoint:t.inflectionPoint.top,delta:t.delta.top};h.value=n,void 0!==e.onScroll&&o("scroll",n)}}function x(t){let{height:n,width:a}=t,i=!1;c.value!==n&&(i=!0,c.value=n,void 0!==e.onScrollHeight&&o("scrollHeight",n),C()),d.value!==a&&(i=!0,d.value=a),!0===i&&void 0!==e.onResize&&o("resize",t)}function S({height:e}){p.value!==e&&(p.value=e,C())}function C(){if(!0===e.container){let e=c.value>p.value?_a():0;f.value!==e&&(f.value=e)}}let T=null,E={instances:{},view:i(()=>e.view),isContainer:i(()=>e.container),rootRef:l,height:c,containerHeight:p,scrollbarWidth:f,totalWidth:i(()=>d.value+f.value),rows:i(()=>{let t=e.view.toLowerCase().split(" ");return{top:t[0].split(""),middle:t[1].split(""),bottom:t[2].split("")}}),header:u({size:0,offset:0,space:!1}),right:u({size:300,offset:0,space:!1}),footer:u({size:0,offset:0,space:!1}),left:u({size:300,offset:0,space:!1}),scroll:h,animate(){null!==T?clearTimeout(T):document.body.classList.add("q-body--layout-animate"),T=setTimeout(()=>{T=null,document.body.classList.remove("q-body--layout-animate")},155)},update(e,t,n){E[e][t]=n}};if(w(Ae,E),_a()>0){let t=function(){i=null,o.classList.remove("hide-scrollbar")},n=function(){if(null===i){if(o.scrollHeight>s.screen.height)return;o.classList.add("hide-scrollbar")}else clearTimeout(i);i=setTimeout(t,300)},a=function(e){null!==i&&"remove"===e&&(clearTimeout(i),t()),window[`${e}EventListener`]("resize",n)},i=null,o=document.body;r(()=>!0!==e.container?"add":"remove",a),!0!==e.container&&a("add"),_(()=>{a("remove")})}return()=>{let a=pt(t.default,[n(Ol,{onScroll:y}),n(lr,{onResize:x})]),i=n("div",{class:m.value,style:g.value,ref:!0===e.container?void 0:l,tabindex:-1},a);return!0===e.container?n("div",{class:"q-layout-container overflow-hidden",ref:l},[n(lr,{onResize:S}),n("div",{class:"absolute-full",style:v.value},[n("div",{class:"scroll",style:b.value},[i])])]):i}}}),ql=["horizontal","vertical","cell","none"],Dl=$({name:"QMarkupTable",props:{...Nt,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,wrapCells:Boolean,separator:{type:String,default:"horizontal",validator:e=>ql.includes(e)}},setup(e,{slots:t}){let a=k(),r=Ot(e,a.proxy.$q),o=i(()=>`q-markup-table q-table__container q-table__card q-table--${e.separator}-separator`+(!0===r.value?" q-table--dark q-table__card--dark q-dark":"")+(!0===e.dense?" q-table--dense":"")+(!0===e.flat?" q-table--flat":"")+(!0===e.bordered?" q-table--bordered":"")+(!0===e.square?" q-table--square":"")+(!1===e.wrapCells?" q-table--no-wrap":""));return()=>n("div",{class:o.value},[n("table",{class:"q-table"},dt(t.default))])}}),jl=$({name:"QNoSsr",props:{tag:{type:String,default:"div"},placeholder:String},setup(e,{slots:t}){let{isHydrated:a}=ir();return()=>{if(!0===a.value){let a=dt(t.default);return void 0===a?a:a.length>1?n(e.tag,{},a):a[0]}let i={class:"q-no-ssr-placeholder"},r=dt(t.placeholder);return void 0!==r?r.length>1?n(e.tag,i,r):r[0]:void 0!==e.placeholder?n(e.tag,i,e.placeholder):void 0}}}),Bl=$({name:"QRadio",props:{...Nt,...ut,...ai,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:r}){let{proxy:o}=k(),l=Ot(e,o.$q),u=ct(e,Oi),c=a(null),{refocusTargetEl:d,refocusTarget:h}=Ni(e,c),p=i(()=>s(e.modelValue)===s(e.val)),f=i(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(!0===e.disable?" disabled":"")+(!0===l.value?" q-radio--dark":"")+(!0===e.dense?" q-radio--dense":"")+(!0===e.leftLabel?" reverse":"")),m=i(()=>{let t=void 0===e.color||!0!==e.keepColor&&!0!==p.value?"":` text-${e.color}`;return`q-radio__inner relative-position q-radio__inner--${!0===p.value?"truthy":"falsy"}${t}`}),g=i(()=>(!0===p.value?e.checkedIcon:e.uncheckedIcon)||null),_=i(()=>!0===e.disable?-1:e.tabindex||0),v=ri(i(()=>{let t={type:"radio"};return void 0!==e.name&&Object.assign(t,{".checked":!0===p.value,"^checked":!0===p.value?"checked":void 0,name:e.name,value:e.val}),t}));function b(t){void 0!==t&&(J(t),h(t)),!0!==e.disable&&!0!==p.value&&r("update:modelValue",e.val,t)}function y(e){(13===e.keyCode||32===e.keyCode)&&J(e)}function w(e){(13===e.keyCode||32===e.keyCode)&&b(e)}Object.assign(o,{set:b});let x=n("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[n("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),n("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]);return()=>{let a=null!==g.value?[n("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[n(Mt,{class:"q-radio__icon",name:g.value})])]:[x];!0!==e.disable&&v(a,"unshift"," q-radio__native q-ma-none q-pa-none");let i=[n("div",{class:m.value,style:u.value,"aria-hidden":"true"},a)];null!==d.value&&i.push(d.value);let r=void 0!==e.label?pt(t.default,[e.label]):dt(t.default);return void 0!==r&&i.push(n("div",{class:"q-radio__label q-anchor--skip"},r)),n("div",{ref:c,class:f.value,tabindex:_.value,role:"radio","aria-label":e.label,"aria-checked":!0===p.value?"true":"false","aria-disabled":!0===e.disable?"true":void 0,onClick:b,onKeydown:y,onKeyup:w},i)}}}),Fl=$({name:"QToggle",props:{...Ii,icon:String,iconColor:String},emits:qi,setup:e=>Di("toggle",function(t,a){let r=i(()=>(!0===t.value?e.checkedIcon:!0===a.value?e.indeterminateIcon:e.uncheckedIcon)||e.icon),o=i(()=>!0===t.value?e.iconColor:null);return()=>[n("div",{class:"q-toggle__track"}),n("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},void 0!==r.value?[n(Mt,{name:r.value,color:o.value})]:void 0)]})}),$l={radio:Bl,checkbox:ji,toggle:Fl},Vl=Object.keys($l);function Ul(e,t){if("function"==typeof e)return e;let n=void 0!==e?e:t;return e=>e[n]}var Hl=$({name:"QOptionGroup",props:{...Nt,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(je),default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],name:String,type:{type:String,default:"radio",validator:e=>Vl.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:a}){let{proxy:{$q:r}}=k(),o=Array.isArray(e.modelValue);"radio"===e.type?!0===o&&console.error("q-option-group: model should not be array"):!1===o&&console.error("q-option-group: model should be array in your case");let s=Ot(e,r),l=i(()=>$l[e.type]),u=i(()=>Ul(e.optionValue,"value")),c=i(()=>Ul(e.optionLabel,"label")),d=i(()=>Ul(e.optionDisable,"disable")),h=i(()=>e.options.map(t=>({val:u.value(t),name:void 0===t.name?e.name:t.name,disable:e.disable||d.value(t),leftLabel:void 0===t.leftLabel?e.leftLabel:t.leftLabel,color:void 0===t.color?e.color:t.color,checkedIcon:t.checkedIcon,uncheckedIcon:t.uncheckedIcon,dark:void 0===t.dark?s.value:t.dark,size:void 0===t.size?e.size:t.size,dense:e.dense,keepColor:void 0===t.keepColor?e.keepColor:t.keepColor}))),p=i(()=>"q-option-group q-gutter-x-sm"+(!0===e.inline?" q-option-group--inline":"")),f=i(()=>{let t={role:"group"};return"radio"===e.type&&(t.role="radiogroup",!0===e.disable&&(t["aria-disabled"]="true")),t});function m(e){t("update:modelValue",e)}return()=>n("div",{class:p.value,...f.value},e.options.map((t,i)=>{let r=void 0!==a["label-"+i]?()=>a["label-"+i](t):void 0!==a.label?()=>a.label(t):void 0;return n("div",[n(l.value,{label:void 0===r?c.value(t):null,modelValue:e.modelValue,"onUpdate:modelValue":m,...h.value[i]},r)])}))}}),Wl=$({name:"QPage",props:{padding:Boolean,styleFn:Function},setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=y(Ae,Oe);if(r===Oe)return console.error("QPage needs to be a deep child of QLayout"),Oe;if(y(Me,Oe)===Oe)return console.error("QPage needs to be child of QPageContainer"),Oe;let o=i(()=>{let t=(!0===r.header.space?r.header.size:0)+(!0===r.footer.space?r.footer.size:0);if("function"==typeof e.styleFn){let n=!0===r.isContainer.value?r.containerHeight.value:a.screen.height;return e.styleFn(t,n)}return{minHeight:!0===r.isContainer.value?r.containerHeight.value-t+"px":0===a.screen.height?0!==t?`calc(100vh - ${t}px)`:"100vh":a.screen.height-t+"px"}}),s=i(()=>"q-page"+(!0===e.padding?" q-layout-padding":""));return()=>n("main",{class:s.value,style:o.value},dt(t.default))}}),Gl=$({name:"QPageContainer",setup(e,{slots:t}){let{proxy:{$q:a}}=k(),r=y(Ae,Oe);if(r===Oe)return console.error("QPageContainer needs to be child of QLayout"),Oe;w(Me,!0);let o=i(()=>{let e={};return!0===r.header.space&&(e.paddingTop=`${r.header.size}px`),!0===r.right.space&&(e["padding"+(!0===a.lang.rtl?"Left":"Right")]=`${r.right.size}px`),!0===r.footer.space&&(e.paddingBottom=`${r.footer.size}px`),!0===r.left.space&&(e["padding"+(!0===a.lang.rtl?"Right":"Left")]=`${r.left.size}px`),e});return()=>n("div",{class:"q-page-container",style:o.value},dt(t.default))}}),Yl={position:{type:String,default:"bottom-right",validator:e=>["top-right","top-left","bottom-right","bottom-left","top","right","bottom","left"].includes(e)},offset:{type:Array,validator:e=>2===e.length},expand:Boolean};function Kl(){let{props:e,proxy:{$q:t}}=k(),a=y(Ae,Oe);if(a===Oe)return console.error("QPageSticky needs to be child of QLayout"),Oe;let r=i(()=>{let t=e.position;return{top:-1!==t.indexOf("top"),right:-1!==t.indexOf("right"),bottom:-1!==t.indexOf("bottom"),left:-1!==t.indexOf("left"),vertical:"top"===t||"bottom"===t,horizontal:"left"===t||"right"===t}}),o=i(()=>a.header.offset),s=i(()=>a.right.offset),l=i(()=>a.footer.offset),u=i(()=>a.left.offset),c=i(()=>{let n=0,a=0,i=r.value,c=!0===t.lang.rtl?-1:1;!0===i.top&&0!==o.value?a=`${o.value}px`:!0===i.bottom&&0!==l.value&&(a=-l.value+"px"),!0===i.left&&0!==u.value?n=c*u.value+"px":!0===i.right&&0!==s.value&&(n=-c*s.value+"px");let d={transform:`translate(${n}, ${a})`};return e.offset&&(d.margin=`${e.offset[1]}px ${e.offset[0]}px`),!0===i.vertical?(0!==u.value&&(d[!0===t.lang.rtl?"right":"left"]=`${u.value}px`),0!==s.value&&(d[!0===t.lang.rtl?"left":"right"]=`${s.value}px`)):!0===i.horizontal&&(0!==o.value&&(d.top=`${o.value}px`),0!==l.value&&(d.bottom=`${l.value}px`)),d}),d=i(()=>`q-page-sticky row flex-center fixed-${e.position} q-page-sticky--${!0===e.expand?"expand":"shrink"}`);return{$layout:a,getStickyContent:function(t){let a=dt(t.default);return n("div",{class:d.value,style:c.value},!0===e.expand?a:[n("div",a)])}}}var Ql=$({name:"QPageScroller",props:{...Yl,scrollOffset:{type:Number,default:1e3},reverse:Boolean,duration:{type:Number,default:300},offset:{...Yl.offset,default:()=>[18,18]}},emits:["click"],setup(e,{slots:t,emit:o}){let s,{proxy:{$q:l}}=k(),{$layout:u,getStickyContent:c}=Kl(),d=a(null),h=i(()=>u.height.value-(!0===u.isContainer.value?u.containerHeight.value:l.screen.height));function p(){return!0===e.reverse?h.value-u.scroll.value.position>e.scrollOffset:u.scroll.value.position>e.scrollOffset}let f=a(p());function m(){let e=p();f.value!==e&&(f.value=e)}function _(){!0===e.reverse?void 0===s&&(s=r(h,m)):v()}function v(){void 0!==s&&(s(),s=void 0)}function b(t){ma(sa(!0===u.isContainer.value?d.value:u.rootRef.value),!0===e.reverse?u.height.value:0,e.duration),o("click",t)}function y(){return!0===f.value?n("div",{ref:d,class:"q-page-scroller",onClick:b},c(t)):null}return r(u.scroll,m),r(()=>e.reverse,_),_(),g(v),()=>n(S,{name:"q-transition--fade"},y)}}),Zl=$({name:"QPageSticky",props:Yl,setup(e,{slots:t}){let{getStickyContent:n}=Kl();return()=>n(t)}});function Jl(e,t){return[!0,!1].includes(e)?e:t}var Xl=$({name:"QPagination",props:{...Nt,modelValue:{type:Number,required:!0},min:{type:[Number,String],default:1},max:{type:[Number,String],required:!0},maxPages:{type:[Number,String],default:0,validator:e=>("string"==typeof e?parseInt(e,10):e)>=0},inputStyle:[Array,String,Object],inputClass:[Array,String,Object],size:String,disable:Boolean,input:Boolean,iconPrev:String,iconNext:String,iconFirst:String,iconLast:String,toFn:Function,boundaryLinks:{type:Boolean,default:null},boundaryNumbers:{type:Boolean,default:null},directionLinks:{type:Boolean,default:null},ellipses:{type:Boolean,default:null},ripple:{type:[Boolean,Object],default:null},round:Boolean,rounded:Boolean,flat:Boolean,outline:Boolean,unelevated:Boolean,push:Boolean,glossy:Boolean,color:{type:String,default:"primary"},textColor:String,activeDesign:{type:String,default:"",values:e=>""===e||yn.includes(e)},activeColor:String,activeTextColor:String,gutter:String,padding:{type:String,default:"3px 2px"}},emits:["update:modelValue"],setup(e,{emit:t}){let{proxy:o}=k(),{$q:s}=o,l=Ot(e,s),u=i(()=>parseInt(e.min,10)),c=i(()=>parseInt(e.max,10)),d=i(()=>parseInt(e.maxPages,10)),h=i(()=>v.value+" / "+c.value),p=i(()=>Jl(e.boundaryLinks,e.input)),f=i(()=>Jl(e.boundaryNumbers,!e.input)),m=i(()=>Jl(e.directionLinks,e.input)),g=i(()=>Jl(e.ellipses,!e.input)),_=a(null),v=i({get:()=>e.modelValue,set:n=>{if(n=parseInt(n,10),e.disable||isNaN(n))return;let a=Je(n,u.value,c.value);e.modelValue!==a&&t("update:modelValue",a)}});r(()=>`${u.value}|${c.value}`,()=>{v.value=e.modelValue});let b=i(()=>"q-pagination row no-wrap items-center"+(!0===e.disable?" disabled":"")),y=i(()=>e.gutter in gn?`${gn[e.gutter]}px`:e.gutter||null),w=i(()=>null!==y.value?`--q-pagination-gutter-parent:-${y.value};--q-pagination-gutter-child:${y.value}`:null),x=i(()=>{let t=[e.iconFirst||s.iconSet.pagination.first,e.iconPrev||s.iconSet.pagination.prev,e.iconNext||s.iconSet.pagination.next,e.iconLast||s.iconSet.pagination.last];return!0===s.lang.rtl?t.reverse():t}),S=i(()=>({"aria-disabled":!0===e.disable?"true":"false",role:"navigation"})),C=i(()=>wn(e,"flat")),T=i(()=>({[C.value]:!0,round:e.round,rounded:e.rounded,padding:e.padding,color:e.color,textColor:e.textColor,size:e.size,ripple:null===e.ripple||e.ripple})),E=i(()=>{let t={[C.value]:!1};return""!==e.activeDesign&&(t[e.activeDesign]=!0),t}),P=i(()=>({...E.value,color:e.activeColor||e.color,textColor:e.activeTextColor||e.textColor})),A=i(()=>{let t=Math.max(d.value,1+(g.value?2:0)+(f.value?2:0)),n={pgFrom:u.value,pgTo:c.value,ellipsesStart:!1,ellipsesEnd:!1,boundaryStart:!1,boundaryEnd:!1,marginalStyle:{minWidth:`${Math.max(2,String(c.value).length)}em`}};return d.value&&tu.value+(f.value?1:0)&&(n.ellipsesStart=!0,n.pgFrom++),f.value&&(n.boundaryEnd=!0,n.pgTo--),g.value&&n.pgTo{M(a)}),n(An,r)}return Object.assign(o,{set:M,setByOffset:function(e){v.value=v.value+e}}),()=>{let t,a=[],i=[];if(!0===p.value&&(a.push(N({key:"bls",disable:e.disable||e.modelValue<=u.value,icon:x.value[0],"aria-label":s.lang.pagination.first},u.value)),i.unshift(N({key:"ble",disable:e.disable||e.modelValue>=c.value,icon:x.value[3],"aria-label":s.lang.pagination.last},c.value))),!0===m.value&&(a.push(N({key:"bdp",disable:e.disable||e.modelValue<=u.value,icon:x.value[1],"aria-label":s.lang.pagination.prev},e.modelValue-1)),i.unshift(N({key:"bdn",disable:e.disable||e.modelValue>=c.value,icon:x.value[2],"aria-label":s.lang.pagination.next},e.modelValue+1))),!0!==e.input){t=[];let{pgFrom:n,pgTo:r,marginalStyle:o}=A.value;if(!0===A.value.boundaryStart){let t=u.value===e.modelValue;a.push(N({key:"bns",style:o,disable:e.disable,label:u.value},u.value,t))}if(!0===A.value.boundaryEnd){let t=c.value===e.modelValue;i.unshift(N({key:"bne",style:o,disable:e.disable,label:c.value},c.value,t))}!0===A.value.ellipsesStart&&a.push(N({key:"bes",style:o,disable:e.disable,label:"…",ripple:!1},n-1)),!0===A.value.ellipsesEnd&&i.unshift(N({key:"bee",style:o,disable:e.disable,label:"…",ripple:!1},r+1));for(let a=n;a<=r;a++)t.push(N({key:`bpg${a}`,style:o,disable:e.disable,label:a},a,a===e.modelValue))}return n("div",{class:b.value,...S.value},[n("div",{class:"q-pagination__content row no-wrap items-center",style:w.value},[...a,!0===e.input?n(kl,{class:"inline",style:{width:h.value.length/1.5+"em"},type:"number",dense:!0,value:_.value,disable:e.disable,dark:l.value,borderless:!0,inputClass:e.inputClass,inputStyle:e.inputStyle,placeholder:h.value,min:u.value,max:c.value,"onUpdate:modelValue":R,onKeyup:z,onBlur:L}):n("div",{class:"q-pagination__middle row justify-center"},t),...i])])}}});function eu(e){let t,n,a=!1;function i(){n=arguments,!0!==a&&(a=!0,t=window.requestAnimationFrame(()=>{e.apply(this,n),n=void 0,a=!1}))}return i.cancel=()=>{window.cancelAnimationFrame(t),a=!1},i}var{passive:tu}=H,nu=$({name:"QParallax",props:{src:String,height:{type:Number,default:500},speed:{type:Number,default:1,validator:e=>e>=0&&e<=1},scrollTarget:ra,onScroll:Function},setup(e,{slots:t,emit:i}){let o,s,l,u,c,d,h=a(0),p=a(null),f=a(null),_=a(null);r(()=>e.height,()=>{!0===o&&b()}),r(()=>e.scrollTarget,()=>{!0===o&&(x(),k())});let v=t=>{h.value=t,void 0!==e.onScroll&&i("scroll",t)};function b(){let t,n,a;d===window?(t=0,a=n=window.innerHeight):(t=sn(d).top,n=ln(d),a=t+n);let i=sn(p.value).top,r=i+e.height;if(void 0!==c||r>t&&i{s.style.transform=`translate3d(-50%,${Math.round(e)}px,0)`};function w(){l=s.naturalHeight||s.videoHeight||ln(s),!0===o&&b()}function k(){o=!0,d=sa(p.value,e.scrollTarget),d.addEventListener("scroll",b,tu),window.addEventListener("resize",u,tu),b()}function x(){!0===o&&(o=!1,d.removeEventListener("scroll",b,tu),window.removeEventListener("resize",u,tu),d=void 0,y.cancel(),v.cancel(),u.cancel())}return m(()=>{y=eu(y),v=eu(v),u=eu(w),s=void 0!==t.media?f.value.children[0]:_.value,s.onload=s.onloadstart=s.loadedmetadata=w,w(),s.style.display="initial",void 0!==window.IntersectionObserver?(c=new IntersectionObserver(e=>{(!0===e[0].isIntersecting?k:x)()}),c.observe(p.value)):k()}),g(()=>{x(),c?.disconnect(),s.onload=s.onloadstart=s.loadedmetadata=null}),()=>n("div",{ref:p,class:"q-parallax",style:{height:`${e.height}px`}},[n("div",{ref:f,class:"q-parallax__media absolute-full"},void 0!==t.media?t.media():[n("img",{ref:_,src:e.src})]),n("div",{class:"q-parallax__content absolute-full column flex-center"},void 0!==t.content?t.content({percentScrolled:h.value}):dt(t.default))])}});function au(e,t=new WeakMap){if(Object(e)!==e)return e;if(t.has(e))return t.get(e);let n=e instanceof Date?new Date(e):e instanceof RegExp?new RegExp(e.source,e.flags):e instanceof Set?new Set:e instanceof Map?new Map:"function"!=typeof e.constructor?Object.create(null):void 0!==e.prototype&&"function"==typeof e.prototype.constructor?e:new e.constructor;if("function"==typeof e.constructor&&"function"==typeof e.valueOf){let n=e.valueOf();if(Object(n)!==n){let a=new e.constructor(n);return t.set(e,a),a}}return t.set(e,n),e instanceof Set?e.forEach(e=>{n.add(au(e,t))}):e instanceof Map&&e.forEach((e,a)=>{n.set(a,au(e,t))}),Object.assign(n,...Object.keys(e).map(n=>({[n]:au(e[n],t)})))}var iu=$({name:"QPopupEdit",props:{modelValue:{required:!0},title:String,buttons:Boolean,labelSet:String,labelCancel:String,color:{type:String,default:"primary"},validate:{type:Function,default:()=>!0},autoSave:Boolean,cover:{type:Boolean,default:!0},disable:Boolean},emits:["update:modelValue","save","cancel","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:r}){let{proxy:o}=k(),{$q:s}=o,l=a(null),u=a(""),c=a(""),h=!1,p=i(()=>z({initialValue:u.value,validate:e.validate,set:f,cancel:m,updatePosition:g},"value",()=>c.value,e=>{c.value=e}));function f(){!1!==e.validate(c.value)&&(!0===_()&&(r("save",c.value,u.value),r("update:modelValue",c.value)),v())}function m(){!0===_()&&r("cancel",c.value,u.value),v()}function g(){d(()=>{l.value.updatePosition()})}function _(){return!1===De(c.value,u.value)}function v(){h=!0,l.value.hide()}function b(){h=!1,u.value=au(e.modelValue),c.value=au(e.modelValue),r("beforeShow")}function y(){r("show")}function w(){!1===h&&!0===_()&&(!0===e.autoSave&&!0===e.validate(c.value)?(r("save",c.value,u.value),r("update:modelValue",c.value)):r("cancel",c.value,u.value)),r("beforeHide")}function x(){r("hide")}function S(){let a=void 0!==t.default?[].concat(t.default(p.value)):[];return e.title&&a.unshift(n("div",{class:"q-dialog__title q-mt-sm q-mb-sm"},e.title)),!0===e.buttons&&a.push(n("div",{class:"q-popup-edit__buttons row justify-center no-wrap"},[n(An,{flat:!0,color:e.color,label:e.labelCancel||s.lang.label.cancel,onClick:m}),n(An,{flat:!0,color:e.color,label:e.labelSet||s.lang.label.set,onClick:f})])),a}return Object.assign(o,{set:f,cancel:m,show(e){l.value?.show(e)},hide(e){l.value?.hide(e)},updatePosition:g}),()=>{if(!0!==e.disable)return n(Ya,{ref:l,class:"q-popup-edit",cover:e.cover,onBeforeShow:b,onShow:y,onBeforeHide:w,onHide:x,onEscapeKey:m},S)}}}),ru=$({name:"QPopupProxy",props:{...zn,breakpoint:{type:[String,Number],default:450}},emits:["show","hide"],setup(e,{slots:t,emit:o,attrs:s}){let{proxy:l}=k(),{$q:u}=l,c=a(!1),d=a(null),h=i(()=>parseInt(e.breakpoint,10)),{canShow:p}=Nn({showing:c});function f(){return u.screen.width"menu"===m.value?{maxHeight:"99vh"}:{});function _(e){c.value=!0,o("show",e)}function v(e){c.value=!1,m.value=f(),o("hide",e)}return r(()=>f(),e=>{!0!==c.value&&(m.value=e)}),Object.assign(l,{show(e){!0===p(e)&&d.value.show(e)},hide(e){d.value.hide(e)},toggle(e){d.value.toggle(e)}}),z(l,"currentComponent",()=>({type:m.value,ref:d.value})),()=>{let a,i={ref:d,...g.value,...s,onShow:_,onHide:v};return"dialog"===m.value?a=Ko:(a=Ya,Object.assign(i,{target:e.target,contextMenu:e.contextMenu,noParentEvent:!0,separateClosePopup:!0})),n(a,i,t.default)}}}),ou={xs:2,sm:4,md:6,lg:10,xl:14};function su(e,t,n){return{transform:!0===t?`translateX(${!0===n.lang.rtl?"-":""}100%) scale3d(${-e},1,1)`:`scale3d(${e},1,1)`}}var lu=$({name:"QLinearProgress",props:{...Nt,...ut,value:{type:Number,default:0},buffer:Number,color:String,trackColor:String,reverse:Boolean,stripe:Boolean,indeterminate:Boolean,query:Boolean,rounded:Boolean,animationSpeed:{type:[String,Number],default:2100},instantFeedback:Boolean},setup(e,{slots:t}){let{proxy:a}=k(),r=Ot(e,a.$q),o=ct(e,ou),s=i(()=>!0===e.indeterminate||!0===e.query),l=i(()=>e.reverse!==e.query),u=i(()=>({...null!==o.value?o.value:{},"--q-linear-progress-speed":`${e.animationSpeed}ms`})),c=i(()=>"q-linear-progress"+(void 0!==e.color?` text-${e.color}`:"")+(!0===e.reverse||!0===e.query?" q-linear-progress--reverse":"")+(!0===e.rounded?" rounded-borders":"")),d=i(()=>su(void 0!==e.buffer?e.buffer:1,l.value,a.$q)),h=i(()=>`with${!0===e.instantFeedback?"out":""}-transition`),p=i(()=>`q-linear-progress__track absolute-full q-linear-progress__track--${h.value} q-linear-progress__track--${!0===r.value?"dark":"light"}`+(void 0!==e.trackColor?` bg-${e.trackColor}`:"")),f=i(()=>su(!0===s.value?1:e.value,l.value,a.$q)),m=i(()=>`q-linear-progress__model absolute-full q-linear-progress__model--${h.value} q-linear-progress__model--${!0===s.value?"in":""}determinate`),g=i(()=>({width:100*e.value+"%"})),_=i(()=>`q-linear-progress__stripe absolute-${!0===e.reverse?"right":"left"} q-linear-progress__stripe--${h.value}`);return()=>{let a=[n("div",{class:p.value,style:d.value}),n("div",{class:m.value,style:f.value})];return!0===e.stripe&&!1===s.value&&a.push(n("div",{class:_.value,style:g.value})),n("div",{class:c.value,style:u.value,role:"progressbar","aria-valuemin":0,"aria-valuemax":1,"aria-valuenow":!0===e.indeterminate?void 0:e.value},pt(t.default,a))}}}),uu=40,cu=$({name:"QPullToRefresh",props:{color:String,bgColor:String,icon:String,noMouse:Boolean,disable:Boolean,scrollTarget:ra},emits:["refresh"],setup(e,{slots:t,emit:o}){let{proxy:s}=k(),{$q:l}=s,u=a("pull"),c=a(0),d=a(!1),h=a(-40),p=a(!1),f=a({}),_=i(()=>({opacity:c.value,transform:`translateY(${h.value}px) rotate(${360*c.value}deg)`})),v=i(()=>"q-pull-to-refresh__puller row flex-center"+(!0===p.value?" q-pull-to-refresh__puller--animating":"")+(void 0!==e.bgColor?` bg-${e.bgColor}`:""));function b(e){if(!0===e.isFinal)return void(!0===d.value&&(d.value=!1,"pulled"===u.value?(u.value="refreshing",T({pos:20}),x()):"pull"===u.value&&T({pos:-40,ratio:0})));if(!0===p.value||"refreshing"===u.value)return!1;if(!0===e.isFirst){if(0!==ua(S)||"down"!==e.direction)return!0===d.value&&(d.value=!1,u.value="pull",T({pos:-40,ratio:0})),!1;d.value=!0;let{top:t,left:n}=s.$el.getBoundingClientRect();f.value={top:t+"px",left:n+"px",width:window.getComputedStyle(s.$el).getPropertyValue("width")}}Z(e.evt);let t=Math.min(140,Math.max(0,e.distance.y));h.value=t-uu,c.value=Je(t/60,0,1);let n=h.value>20?"pulled":"pull";u.value!==n&&(u.value=n)}let y=i(()=>{let t={down:!0};return!0!==e.noMouse&&(t.mouse=!0),[[Yi,b,void 0,t]]}),w=i(()=>"q-pull-to-refresh__content"+(!0===d.value?" no-pointer-events":""));function x(){o("refresh",()=>{T({pos:-40,ratio:0},()=>{u.value="pull"})})}let S,C=null;function T({pos:e,ratio:t},n){p.value=!0,h.value=e,void 0!==t&&(c.value=t),null!==C&&clearTimeout(C),C=setTimeout(()=>{C=null,p.value=!1,n?.()},300)}function E(){S=sa(s.$el,e.scrollTarget)}return r(()=>e.scrollTarget,E),m(E),g(()=>{null!==C&&clearTimeout(C)}),Object.assign(s,{trigger:x,updateScrollTarget:E}),()=>mt("div",{class:"q-pull-to-refresh"},[n("div",{class:w.value},dt(t.default)),n("div",{class:"q-pull-to-refresh__puller-container fixed row flex-center no-pointer-events z-top",style:f.value},[n("div",{class:v.value,style:_.value},["refreshing"!==u.value?n(Mt,{name:e.icon||l.iconSet.pullToRefresh.icon,color:e.color,size:"32px"}):n(on,{size:"24px",color:e.color})])])],"main",!1===e.disable,()=>y.value)}}),du=0,hu=1,pu=2,fu=$({name:"QRange",props:{...Xi,modelValue:{type:Object,default:()=>({min:null,max:null}),validator:e=>"min"in e&&"max"in e},dragRange:Boolean,dragOnlyRange:Boolean,leftLabelColor:String,leftLabelTextColor:String,rightLabelColor:String,rightLabelTextColor:String,leftLabelValue:[String,Number],rightLabelValue:[String,Number],leftThumbColor:String,rightThumbColor:String},emits:er,setup(e,{emit:t}){let{proxy:{$q:o}}=k(),{state:s,methods:l}=tr({updateValue:A,updatePosition:function(t,n=s.dragging.value){let a,i=l.getDraggingRatio(t,n),r=l.convertRatioToModel(i);switch(n.type){case du:i<=n.ratioMax?(a={minR:i,maxR:n.ratioMax,min:r,max:n.valueMax},s.focus.value="min"):(a={minR:n.ratioMax,maxR:i,min:n.valueMax,max:r},s.focus.value="max");break;case pu:i>=n.ratioMin?(a={minR:n.ratioMin,maxR:i,min:n.valueMin,max:r},s.focus.value="max"):(a={minR:i,maxR:n.ratioMin,min:r,max:n.valueMin},s.focus.value="min");break;case hu:let e=i-n.offsetRatio,t=Je(n.ratioMin+e,s.innerMinRatio.value,s.innerMaxRatio.value-n.rangeRatio),o=r-n.offsetModel,l=Je(n.valueMin+o,s.innerMin.value,s.innerMax.value-n.rangeValue);a={minR:t,maxR:t+n.rangeRatio,min:s.roundValueFn.value(l),max:s.roundValueFn.value(l+n.rangeValue)},s.focus.value="both"}h.value=null===h.value.min||null===h.value.max?{min:a.min||e.min,max:a.max||e.max}:{min:a.min,max:a.max},!0!==e.snap||0===e.step?(c.value=a.minR,d.value=a.maxR):(c.value=l.convertModelToRatio(h.value.min),d.value=l.convertModelToRatio(h.value.max))},getDragging:function(t){let{left:n,top:a,width:i,height:r}=u.value.getBoundingClientRect(),o=!0===e.dragOnlyRange?0:!0===e.vertical?S.value.offsetHeight/(2*r):S.value.offsetWidth/(2*i),s={left:n,top:a,width:i,height:r,valueMin:h.value.min,valueMax:h.value.max,ratioMin:f.value,ratioMax:m.value},c=l.getDraggingRatio(t,s);return!0!==e.dragOnlyRange&&c({type:"hidden",name:e.name,value:`${e.modelValue.min}|${e.modelValue.max}`}))}),u=a(null),c=a(0),d=a(0),h=a({min:0,max:0});function p(){h.value.min=null===e.modelValue.min?s.innerMin.value:Je(e.modelValue.min,s.innerMin.value,s.innerMax.value),h.value.max=null===e.modelValue.max?s.innerMax.value:Je(e.modelValue.max,s.innerMin.value,s.innerMax.value)}r(()=>`${e.modelValue.min}|${e.modelValue.max}|${s.innerMin.value}|${s.innerMax.value}`,p),p();let f=i(()=>l.convertModelToRatio(h.value.min)),m=i(()=>l.convertModelToRatio(h.value.max)),g=i(()=>!0===s.active.value?c.value:f.value),_=i(()=>!0===s.active.value?d.value:m.value),v=i(()=>{let t={[s.positionProp.value]:100*g.value+"%",[s.sizeProp.value]:100*(_.value-g.value)+"%"};return void 0!==e.selectionImg&&(t.backgroundImage=`url(${e.selectionImg}) !important`),t}),b=i(()=>{if(!0!==s.editable.value)return{};if(!0===o.platform.is.mobile)return{onClick:l.onMobileClick};let t={onMousedown:l.onActivate};return(!0===e.dragRange||!0===e.dragOnlyRange)&&Object.assign(t,{onFocus:()=>{s.focus.value="both"},onBlur:l.onBlur,onKeydown:M,onKeyup:l.onKeyup}),t});function y(t){return!0!==o.platform.is.mobile&&!0===s.editable.value&&!0!==e.dragOnlyRange?{onFocus:()=>{s.focus.value=t},onBlur:l.onBlur,onKeydown:M,onKeyup:l.onKeyup}:{}}let w=i(()=>!0!==e.dragOnlyRange?s.tabindex.value:null),x=i(()=>!0===o.platform.is.mobile||!e.dragRange&&!0!==e.dragOnlyRange?null:s.tabindex.value),S=a(null),C=i(()=>y("min")),T=l.getThumbRenderFn({focusValue:"min",getNodeData:()=>({ref:S,key:"tmin",...C.value,tabindex:w.value}),ratio:g,label:i(()=>void 0!==e.leftLabelValue?e.leftLabelValue:h.value.min),thumbColor:i(()=>e.leftThumbColor||e.thumbColor||e.color),labelColor:i(()=>e.leftLabelColor||e.labelColor),labelTextColor:i(()=>e.leftLabelTextColor||e.labelTextColor)}),E=i(()=>y("max")),P=l.getThumbRenderFn({focusValue:"max",getNodeData:()=>({...E.value,key:"tmax",tabindex:w.value}),ratio:_,label:i(()=>void 0!==e.rightLabelValue?e.rightLabelValue:h.value.max),thumbColor:i(()=>e.rightThumbColor||e.thumbColor||e.color),labelColor:i(()=>e.rightLabelColor||e.labelColor),labelTextColor:i(()=>e.rightLabelTextColor||e.labelTextColor)});function A(n){(h.value.min!==e.modelValue.min||h.value.max!==e.modelValue.max)&&t("update:modelValue",{...h.value}),!0===n&&t("change",{...h.value})}function M(t){if(!1===Ji.includes(t.keyCode))return;J(t);let n=([34,33].includes(t.keyCode)?10:1)*s.keyStep.value,a=([34,37,40].includes(t.keyCode)?-1:1)*(!0===s.isReversed.value?-1:1)*(!0===e.vertical?-1:1)*n;if("both"===s.focus.value){let e=h.value.max-h.value.min,t=Je(s.roundValueFn.value(h.value.min+a),s.innerMin.value,s.innerMax.value-e);h.value={min:t,max:s.roundValueFn.value(t+e)}}else{if(!1===s.focus.value)return;{let e=s.focus.value;h.value={...h.value,[e]:Je(s.roundValueFn.value(h.value[e]+a),"min"===e?s.innerMin.value:h.value.min,"max"===e?s.innerMax.value:h.value.max)}}}A()}return()=>{let t=l.getContent(v,x,b,e=>{e.push(T(),P())});return n("div",{ref:u,class:"q-range "+s.classes.value+(null===e.modelValue.min||null===e.modelValue.max?" q-slider--no-value":""),...s.attributes.value,"aria-valuenow":e.modelValue.min+"|"+e.modelValue.max},t)}}}),mu=$({name:"QRating",props:{...ut,...ai,modelValue:{type:Number,required:!0},max:{type:[String,Number],default:5},icon:[String,Array],iconHalf:[String,Array],iconSelected:[String,Array],iconAriaLabel:[String,Array],color:[String,Array],colorHalf:[String,Array],colorSelected:[String,Array],noReset:Boolean,noDimming:Boolean,readonly:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{slots:t,emit:r}){let{proxy:{$q:o}}=k(),s=ct(e),l=ri(ii(e)),u=a(0),c={},d=i(()=>!0!==e.readonly&&!0!==e.disable),h=i(()=>`q-rating row inline items-center q-rating--${!0===d.value?"":"non-"}editable`+(!0===e.noDimming?" q-rating--no-dimming":"")+(!0===e.disable?" disabled":"")+(void 0!==e.color&&!1===Array.isArray(e.color)?` text-${e.color}`:"")),p=i(()=>{let t=!0===Array.isArray(e.icon)?e.icon.length:0,n=!0===Array.isArray(e.iconSelected)?e.iconSelected.length:0,a=!0===Array.isArray(e.iconHalf)?e.iconHalf.length:0,i=!0===Array.isArray(e.color)?e.color.length:0,r=!0===Array.isArray(e.colorSelected)?e.colorSelected.length:0,o=!0===Array.isArray(e.colorHalf)?e.colorHalf.length:0;return{iconLen:t,icon:t>0?e.icon[t-1]:e.icon,selIconLen:n,selIcon:n>0?e.iconSelected[n-1]:e.iconSelected,halfIconLen:a,halfIcon:a>0?e.iconHalf[n-1]:e.iconHalf,colorLen:i,color:i>0?e.color[i-1]:e.color,selColorLen:r,selColor:r>0?e.colorSelected[r-1]:e.colorSelected,halfColorLen:o,halfColor:o>0?e.colorHalf[o-1]:e.colorHalf}}),f=i(()=>{if("string"==typeof e.iconAriaLabel){let t=0!==e.iconAriaLabel.length?`${e.iconAriaLabel} `:"";return e=>`${t}${e}`}if(!0===Array.isArray(e.iconAriaLabel)){let t=e.iconAriaLabel.length;if(t>0)return n=>e.iconAriaLabel[Math.min(n,t)-1]}return(e,t)=>`${t} ${e}`}),m=i(()=>{let t=[],n=p.value,a=Math.ceil(e.modelValue),i=!0===d.value?0:null,r=void 0===e.iconHalf||a===e.modelValue?-1:a;for(let s=1;s<=e.max;s++){let l=0===u.value&&e.modelValue>=s||u.value>0&&u.value>=s,c=r===s&&u.value0&&(!0===c?a:e.modelValue)>=s&&u.value{let t={role:"radiogroup"};return!0===e.disable&&(t["aria-disabled"]="true"),!0===e.readonly&&(t["aria-readonly"]="true"),t});function _(t){if(!0===d.value){let n=Je(parseInt(t,10),1,parseInt(e.max,10)),a=!0!==e.noReset&&e.modelValue===n?0:n;a!==e.modelValue&&r("update:modelValue",a),u.value=0}}function b(e){!0===d.value&&(u.value=e)}function y(){u.value=0}return v(()=>{c={}}),()=>{let a=[];return m.value.forEach(({iconClass:e,name:i,attrs:r},o)=>{let s=o+1;a.push(n("div",{key:s,ref:e=>{c[`rt${s}`]=e},class:"q-rating__icon-container flex flex-center",...r,onClick(){_(s)},onMouseover(){b(s)},onMouseout:y,onFocus(){b(s)},onBlur:y,onKeyup(e){!function(e,t){switch(e.keyCode){case 13:case 32:return _(t),J(e);case 37:case 40:return c["rt"+(t-1)]&&c["rt"+(t-1)].focus(),J(e);case 39:case 38:c[`rt${t+1}`]&&c[`rt${t+1}`].focus(),J(e)}}(e,s)}},pt(t[`tip-${s}`],[n(Mt,{class:e,name:i})])))}),void 0!==e.name&&!0!==e.disable&&l(a,"push"),n("div",{class:h.value,style:s.value,...g.value},a)}}}),gu=$({name:"QResponsive",props:tl,setup(e,{slots:t}){let a=nl(e);return()=>n("div",{class:"q-responsive"},[n("div",{class:"q-responsive__filler overflow-hidden"},[n("div",{style:a.value})]),n("div",{class:"q-responsive__content absolute-full fit"},dt(t.default))])}}),_u=$({props:["store","barStyle","verticalBarStyle","horizontalBarStyle"],setup:e=>()=>[n("div",{class:e.store.scroll.vertical.barClass.value,style:[e.barStyle,e.verticalBarStyle],"aria-hidden":"true",onMousedown:e.store.onVerticalMousedown}),n("div",{class:e.store.scroll.horizontal.barClass.value,style:[e.barStyle,e.horizontalBarStyle],"aria-hidden":"true",onMousedown:e.store.onHorizontalMousedown}),A(n("div",{ref:e.store.scroll.vertical.ref,class:e.store.scroll.vertical.thumbClass.value,style:e.store.scroll.vertical.style.value,"aria-hidden":"true"}),e.store.thumbVertDir),A(n("div",{ref:e.store.scroll.horizontal.ref,class:e.store.scroll.horizontal.thumbClass.value,style:e.store.scroll.horizontal.style.value,"aria-hidden":"true"}),e.store.thumbHorizDir)]}),vu=["vertical","horizontal"],bu={vertical:{offset:"offsetY",scroll:"scrollTop",dir:"down",dist:"y"},horizontal:{offset:"offsetX",scroll:"scrollLeft",dir:"right",dist:"x"}},yu={prevent:!0,mouse:!0,mouseAllDir:!0},wu=e=>e>=250?50:Math.ceil(e/5),ku=$({name:"QScrollArea",props:{...Nt,thumbStyle:Object,verticalThumbStyle:Object,horizontalThumbStyle:Object,barStyle:[Array,String,Object],verticalBarStyle:[Array,String,Object],horizontalBarStyle:[Array,String,Object],verticalOffset:{type:Array,default:[0,0]},horizontalOffset:{type:Array,default:[0,0]},contentStyle:[Array,String,Object],contentActiveStyle:[Array,String,Object],delay:{type:[String,Number],default:1e3},visible:{type:Boolean,default:null},tabindex:[String,Number],onScroll:Function},setup(e,{slots:t,emit:o}){let s,l=a(!1),u=a(!1),c=a(!1),d={vertical:a(0),horizontal:a(0)},f={vertical:{ref:a(null),position:a(0),size:a(0)},horizontal:{ref:a(null),position:a(0),size:a(0)}},{proxy:m}=k(),_=Ot(e,m.$q),v=null,b=a(null),y=i(()=>"q-scrollarea"+(!0===_.value?" q-scrollarea--dark":""));Object.assign(d,{verticalInner:i(()=>d.vertical.value-e.verticalOffset[0]-e.verticalOffset[1]),horizontalInner:i(()=>d.horizontal.value-e.horizontalOffset[0]-e.horizontalOffset[1])}),f.vertical.percentage=i(()=>{let e=f.vertical.size.value-d.vertical.value;if(e<=0)return 0;let t=Je(f.vertical.position.value/e,0,1);return Math.round(1e4*t)/1e4}),f.vertical.thumbHidden=i(()=>!0!==(null===e.visible?c.value:e.visible)&&!1===l.value&&!1===u.value||f.vertical.size.value<=d.vertical.value+1),f.vertical.thumbStart=i(()=>e.verticalOffset[0]+f.vertical.percentage.value*(d.verticalInner.value-f.vertical.thumbSize.value)),f.vertical.thumbSize=i(()=>Math.round(Je(d.verticalInner.value*d.verticalInner.value/f.vertical.size.value,wu(d.verticalInner.value),d.verticalInner.value))),f.vertical.style=i(()=>({...e.thumbStyle,...e.verticalThumbStyle,top:`${f.vertical.thumbStart.value}px`,height:`${f.vertical.thumbSize.value}px`,right:`${e.horizontalOffset[1]}px`})),f.vertical.thumbClass=i(()=>"q-scrollarea__thumb q-scrollarea__thumb--v absolute-right"+(!0===f.vertical.thumbHidden.value?" q-scrollarea__thumb--invisible":"")),f.vertical.barClass=i(()=>"q-scrollarea__bar q-scrollarea__bar--v absolute-right"+(!0===f.vertical.thumbHidden.value?" q-scrollarea__bar--invisible":"")),f.horizontal.percentage=i(()=>{let e=f.horizontal.size.value-d.horizontal.value;if(e<=0)return 0;let t=Je(Math.abs(f.horizontal.position.value)/e,0,1);return Math.round(1e4*t)/1e4}),f.horizontal.thumbHidden=i(()=>!0!==(null===e.visible?c.value:e.visible)&&!1===l.value&&!1===u.value||f.horizontal.size.value<=d.horizontal.value+1),f.horizontal.thumbStart=i(()=>e.horizontalOffset[0]+f.horizontal.percentage.value*(d.horizontalInner.value-f.horizontal.thumbSize.value)),f.horizontal.thumbSize=i(()=>Math.round(Je(d.horizontalInner.value*d.horizontalInner.value/f.horizontal.size.value,wu(d.horizontalInner.value),d.horizontalInner.value))),f.horizontal.style=i(()=>({...e.thumbStyle,...e.horizontalThumbStyle,[!0===m.$q.lang.rtl?"right":"left"]:`${f.horizontal.thumbStart.value}px`,width:`${f.horizontal.thumbSize.value}px`,bottom:`${e.verticalOffset[1]}px`})),f.horizontal.thumbClass=i(()=>"q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom"+(!0===f.horizontal.thumbHidden.value?" q-scrollarea__thumb--invisible":"")),f.horizontal.barClass=i(()=>"q-scrollarea__bar q-scrollarea__bar--h absolute-bottom"+(!0===f.horizontal.thumbHidden.value?" q-scrollarea__bar--invisible":""));let w=i(()=>!0===f.vertical.thumbHidden.value&&!0===f.horizontal.thumbHidden.value?e.contentStyle:e.contentActiveStyle);function x(){let e={};return vu.forEach(t=>{let n=f[t];Object.assign(e,{[t+"Position"]:n.position.value,[t+"Percentage"]:n.percentage.value,[t+"Size"]:n.size.value,[t+"ContainerSize"]:d[t].value,[t+"ContainerInnerSize"]:d[t+"Inner"].value})}),e}let S=ae(()=>{let e=x();e.ref=m,o("scroll",e)},0);function C(e,t,n){!1!==vu.includes(e)?("vertical"===e?ma:ga)(b.value,t,n):console.error("[QScrollArea]: wrong first param of setScrollPosition (vertical/horizontal)")}function T({height:e,width:t}){let n=!1;d.vertical.value!==e&&(d.vertical.value=e,n=!0),d.horizontal.value!==t&&(d.horizontal.value=t,n=!0),!0===n&&L()}function E({position:e}){let t=!1;f.vertical.position.value!==e.top&&(f.vertical.position.value=e.top,t=!0),f.horizontal.position.value!==e.left&&(f.horizontal.position.value=e.left,t=!0),!0===t&&L()}function P({height:e,width:t}){f.horizontal.size.value!==t&&(f.horizontal.size.value=t,L()),f.vertical.size.value!==e&&(f.vertical.size.value=e,L())}function A(e,t){let n=f[t];if(!0===e.isFirst){if(!0===n.thumbHidden.value)return;s=n.position.value,u.value=!0}else if(!0!==u.value)return;!0===e.isFinal&&(u.value=!1);let a=bu[t],i=(n.size.value-d[t].value)/(d[t+"Inner"].value-n.thumbSize.value),r=e.distance[a.dist];R(s+(e.direction===a.dir?1:-1)*r*i,t)}function M(t,n){let a=f[n];if(!0!==a.thumbHidden.value){let i="vertical"===n?e.verticalOffset[0]:e.horizontalOffset[0],r=t[bu[n].offset]-i,o=a.thumbStart.value-i;if(ro+a.thumbSize.value){R(Je((r-a.thumbSize.value/2)/(d[n+"Inner"].value-a.thumbSize.value),0,1)*Math.max(0,a.size.value-d[n].value),n)}null!==a.ref.value&&a.ref.value.dispatchEvent(new MouseEvent(t.type,t))}}function L(){l.value=!0,null!==v&&clearTimeout(v),v=setTimeout(()=>{v=null,l.value=!1},e.delay),void 0!==e.onScroll&&S()}function R(e,t){b.value[bu[t].scroll]=e}let z=null;function N(){null!==z&&clearTimeout(z),z=setTimeout(()=>{z=null,c.value=!0},m.$q.platform.is.ios?50:0)}function O(){null!==z&&(clearTimeout(z),z=null),c.value=!1}let I=null;r(()=>m.$q.lang.rtl,e=>{null!==b.value&&ga(b.value,Math.abs(f.horizontal.position.value)*(!0===e?-1:1))}),p(()=>{I={top:f.vertical.position.value,left:f.horizontal.position.value}}),h(()=>{if(null===I)return;let e=b.value;null!==e&&(ga(e,I.left),ma(e,I.top))}),g(S.cancel),Object.assign(m,{getScrollTarget:()=>b.value,getScroll:x,getScrollPosition:()=>({top:f.vertical.position.value,left:f.horizontal.position.value}),getScrollPercentage:()=>({top:f.vertical.percentage.value,left:f.horizontal.percentage.value}),setScrollPosition:C,setScrollPercentage(e,t,n){C(e,t*(f[e].size.value-d[e].value)*("horizontal"===e&&!0===m.$q.lang.rtl?-1:1),n)}});let q={scroll:f,thumbVertDir:[[Yi,e=>{A(e,"vertical")},void 0,{vertical:!0,...yu}]],thumbHorizDir:[[Yi,e=>{A(e,"horizontal")},void 0,{horizontal:!0,...yu}]],onVerticalMousedown(e){M(e,"vertical")},onHorizontalMousedown(e){M(e,"horizontal")}};return()=>n("div",{class:y.value,onMouseenter:N,onMouseleave:O},[n("div",{ref:b,class:"q-scrollarea__container scroll relative-position fit hide-scrollbar",tabindex:void 0!==e.tabindex?e.tabindex:void 0},[n("div",{class:"q-scrollarea__content absolute",style:w.value},pt(t.default,[n(lr,{debounce:0,onResize:P})])),n(Ol,{axis:"both",onScroll:E})]),n(lr,{debounce:0,onResize:T}),n(_u,{store:q,barStyle:e.barStyle,verticalBarStyle:e.verticalBarStyle,horizontalBarStyle:e.horizontalBarStyle})])}}),xu=1e3,Su=["start","center","end","start-force","center-force","end-force"],Cu=Array.prototype.filter,Tu=void 0===window.getComputedStyle(document.body).overflowAnchor?W:function(e,t){null!==e&&(void 0!==e._qOverflowAnimationFrame&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(null===e)return;e._qOverflowAnimationFrame=void 0;let n=e.children||[];Cu.call(n,e=>e.dataset&&void 0!==e.dataset.qVsAnchor).forEach(e=>{delete e.dataset.qVsAnchor});let a=n[t];a?.dataset&&(a.dataset.qVsAnchor="")}))};function Eu(e,t){return e+t}function Pu(e,t,n,a,i,r,o,s){let l=e===window?document.scrollingElement||document.documentElement:e,u=!0===i?"offsetWidth":"offsetHeight",c={scrollStart:0,scrollViewSize:-o-s,scrollMaxSize:0,offsetStart:-o,offsetEnd:-s};if(!0===i?(e===window?(c.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,c.scrollViewSize+=document.documentElement.clientWidth):(c.scrollStart=l.scrollLeft,c.scrollViewSize+=l.clientWidth),c.scrollMaxSize=l.scrollWidth,!0===r&&(c.scrollStart=(!0===rr?c.scrollMaxSize-c.scrollViewSize:0)-c.scrollStart)):(e===window?(c.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,c.scrollViewSize+=document.documentElement.clientHeight):(c.scrollStart=l.scrollTop,c.scrollViewSize+=l.clientHeight),c.scrollMaxSize=l.scrollHeight),null!==n)for(let e=n.previousElementSibling;null!==e;e=e.previousElementSibling)!1===e.classList.contains("q-virtual-scroll--skip")&&(c.offsetStart+=e[u]);if(null!==a)for(let e=a.nextElementSibling;null!==e;e=e.nextElementSibling)!1===e.classList.contains("q-virtual-scroll--skip")&&(c.offsetEnd+=e[u]);if(t!==e){let n=l.getBoundingClientRect(),a=t.getBoundingClientRect();!0===i?(c.offsetStart+=a.left-n.left,c.offsetEnd-=a.width):(c.offsetStart+=a.top-n.top,c.offsetEnd-=a.height),e!==window&&(c.offsetStart+=c.scrollStart),c.offsetEnd+=c.scrollMaxSize-c.offsetStart}return c}function Au(e,t,n,a){"end"===t&&(t=(e===window?document.body:e)[!0===n?"scrollWidth":"scrollHeight"]),e===window?!0===n?(!0===a&&(t=(!0===rr?document.body.scrollWidth-document.documentElement.clientWidth:0)-t),window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t):!0===n?(!0===a&&(t=(!0===rr?e.scrollWidth-e.offsetWidth:0)-t),e.scrollLeft=t):e.scrollTop=t}function Mu(e,t,n,a){if(n>=a)return 0;let i=t.length,r=Math.floor(n/xu),o=Math.floor((a-1)/xu)+1,s=e.slice(r,o).reduce(Eu,0);return n%xu!==0&&(s-=t.slice(r*xu,n).reduce(Eu,0)),a%xu!==0&&a!==i&&(s-=t.slice(a,o*xu).reduce(Eu,0)),s}var Lu={virtualScrollSliceSize:{type:[Number,String],default:10},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},Ru=Object.keys(Lu),zu={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...Lu};function Nu({virtualScrollLength:e,getVirtualScrollTarget:t,getVirtualScrollEl:o,virtualScrollItemSizeComputed:s}){let l,u,c,m,_=k(),{props:v,emit:b,proxy:y}=_,{$q:w}=y,x=[],S=a(0),C=a(0),T=a({}),E=a(null),P=a(null),A=a(null),M=a({from:0,to:0}),L=i(()=>void 0!==v.tableColspan?v.tableColspan:100);void 0===s&&(s=i(()=>v.virtualScrollItemSize));let R=i(()=>s.value+";"+v.virtualScrollHorizontal),z=i(()=>R.value+";"+v.virtualScrollSliceRatioBefore+";"+v.virtualScrollSliceRatioAfter);function N(){B(u,!0)}function O(e){B(void 0===e?u:e)}function I(n,a){let i=t();if(null==i||8===i.nodeType)return;let r=Pu(i,o(),E.value,P.value,v.virtualScrollHorizontal,w.lang.rtl,v.virtualScrollStickySizeStart,v.virtualScrollStickySizeEnd);c!==r.scrollViewSize&&F(r.scrollViewSize),q(i,r,Math.min(e.value-1,Math.max(0,parseInt(n,10)||0)),0,-1!==Su.indexOf(a)?a:-1!==u&&n>u?"end":"start")}function q(t,n,a,i,r){let o="string"==typeof r&&-1!==r.indexOf("-force"),s=!0===o?r.replace("-force",""):r,u=void 0!==s?s:"start",c=Math.max(0,a-T.value[u]),d=c+T.value.total;d>e.value&&(d=e.value,c=Math.max(0,d-T.value.total)),l=n.scrollStart;let h=c!==M.value.from||d!==M.value.to;if(!1===h&&void 0===s)return void $(a);let{activeElement:p}=document,f=A.value;!0===h&&null!==f&&f!==p&&!0===f.contains(p)&&(f.addEventListener("focusout",j),setTimeout(()=>{f?.removeEventListener("focusout",j)})),Tu(f,a-c);let g=void 0!==s?m.slice(c,a).reduce(Eu,0):0;if(!0===h){let t=d>=M.value.from&&c<=M.value.to?M.value.to:d;M.value={from:c,to:t},S.value=Mu(x,m,0,c),C.value=Mu(x,m,d,e.value),requestAnimationFrame(()=>{M.value.to!==d&&l===n.scrollStart&&(M.value={from:M.value.from,to:d},C.value=Mu(x,m,d,e.value))})}requestAnimationFrame(()=>{if(l!==n.scrollStart)return;!0===h&&D(c);let e=m.slice(c,a).reduce(Eu,0),r=e+n.offsetStart+S.value,u=r+m[a],d=r+i;if(void 0!==s){let t=e-g,i=n.scrollStart+t;d=!0!==o&&ie.classList&&!1===e.classList.contains("q-virtual-scroll--skip")),r=i.length,o=!0===v.virtualScrollHorizontal?e=>e.getBoundingClientRect().width:e=>e.offsetHeight,s=e;for(let e=0;e=i;t--)m[t]=a;let r=Math.floor((e.value-1)/xu);x=[];for(let t=0;t<=r;t++){let n=0,a=Math.min((t+1)*xu,e.value);for(let e=t*xu;e=0?(D(M.value.from),d(()=>{I(t)})):V()}function F(e){if(void 0===e&&typeof window<"u"){let n=t();null!=n&&8!==n.nodeType&&(e=Pu(n,o(),E.value,P.value,v.virtualScrollHorizontal,w.lang.rtl,v.virtualScrollStickySizeStart,v.virtualScrollStickySizeEnd).scrollViewSize)}c=e;let n=parseFloat(v.virtualScrollSliceRatioBefore)||0,a=1+n+(parseFloat(v.virtualScrollSliceRatioAfter)||0),i=void 0===e||e<=0?1:Math.ceil(e/s.value),r=Math.max(1,i,Math.ceil((v.virtualScrollSliceSize>0?v.virtualScrollSliceSize:10)/a));T.value={total:Math.ceil(r*a),start:Math.ceil(r*n),center:Math.ceil(r*(.5+n)),end:Math.ceil(r*(1+n)),view:i}}function $(e){u!==e&&(void 0!==v.onVirtualScroll&&b("virtualScroll",{index:e,from:M.value.from,to:M.value.to-1,direction:e{F()}),r(R,N),F();let V=ae(function(){let n=t();if(null==n||8===n.nodeType)return;let a=Pu(n,o(),E.value,P.value,v.virtualScrollHorizontal,w.lang.rtl,v.virtualScrollStickySizeStart,v.virtualScrollStickySizeEnd),i=e.value-1,r=a.scrollMaxSize-a.offsetStart-a.offsetEnd-C.value;if(l===a.scrollStart)return;if(a.scrollMaxSize<=0)return void q(n,a,0,0);c!==a.scrollViewSize&&F(a.scrollViewSize),D(M.value.from);let s=Math.floor(a.scrollMaxSize-Math.max(a.scrollViewSize,a.offsetEnd)-Math.min(m[i],a.scrollViewSize/2));if(s>0&&Math.ceil(a.scrollStart)>=s)return void q(n,a,i,a.scrollMaxSize-a.offsetEnd-x.reduce(Eu,0));let u=0,d=a.scrollStart-a.offsetStart,h=d;if(d<=r&&d+a.scrollViewSize>=S.value)d-=S.value,u=M.value.from,h=d;else for(let e=0;d>=x[e]&&u0&&u-a.scrollViewSize?(u++,h=d):h=m[u]+d;q(n,a,u,h)},!0===w.platform.is.ios?120:35);f(()=>{F()});let U=!1;return p(()=>{U=!0}),h(()=>{if(!0!==U)return;let e=t();void 0!==l&&null!=e&&8!==e.nodeType?Au(e,l,v.virtualScrollHorizontal,w.lang.rtl):I(u)}),g(()=>{V.cancel()}),Object.assign(y,{scrollTo:I,reset:N,refresh:O}),{virtualScrollSliceRange:M,virtualScrollSliceSizeComputed:T,setVirtualScrollSize:F,onVirtualScrollEvt:V,localResetVirtualScroll:B,padVirtualScroll:function(e,t){let a=!0===v.virtualScrollHorizontal?"width":"height",i={["--q-virtual-scroll-item-"+a]:s.value+"px"};return["tbody"===e?n(e,{class:"q-virtual-scroll__padding",key:"before",ref:E},[n("tr",[n("td",{style:{[a]:`${S.value}px`,...i},colspan:L.value})])]):n(e,{class:"q-virtual-scroll__padding",key:"before",ref:E,style:{[a]:`${S.value}px`,...i}}),n(e,{class:"q-virtual-scroll__content",key:"content",ref:A,tabindex:-1},t.flat()),"tbody"===e?n(e,{class:"q-virtual-scroll__padding",key:"after",ref:P},[n("tr",[n("td",{style:{[a]:`${C.value}px`,...i},colspan:L.value})])]):n(e,{class:"q-virtual-scroll__padding",key:"after",ref:P,style:{[a]:`${C.value}px`,...i}})]},scrollTo:I,reset:N,refresh:O}}var Ou=e=>["add","add-unique","toggle"].includes(e),Iu=Object.keys(js);function qu(e,t){if("function"==typeof e)return e;let n=void 0!==e?e:t;return e=>null!==e&&"object"==typeof e&&n in e?e[n]:e}var Du=$({name:"QSelect",inheritAttrs:!1,props:{...zu,...ai,...js,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],popupNoRouteDismiss:Boolean,useInput:Boolean,useChips:Boolean,newValueMode:{type:String,validator:Ou},mapOptions:Boolean,emitValue:Boolean,disableTabSelection:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:{},transitionHide:{},transitionDuration:{},behavior:{type:String,validator:e=>["default","menu","dialog"].includes(e),default:"default"},virtualScrollItemSize:zu.virtualScrollItemSize.type,onNewValue:Function,onFilter:Function},emits:[...Bs,"add","remove","inputValue","keyup","keypress","keydown","popupShow","popupHide","filterAbort"],setup(e,{slots:t,emit:o}){let s,l,u,c,h,p,f,{proxy:m}=k(),{$q:_}=m,y=a(!1),w=a(!1),x=a(-1),S=a(""),C=a(!1),T=a(!1),E=null,P=null,A=null,M=a(null),L=a(null),R=a(null),z=a(null),N=a(null),O=oi(e),I=wl(qe),q=i(()=>Array.isArray(e.options)?e.options.length:0),D=i(()=>void 0===e.virtualScrollItemSize?!0===e.optionsDense?24:48:e.virtualScrollItemSize),{virtualScrollSliceRange:j,virtualScrollSliceSizeComputed:B,localResetVirtualScroll:F,padVirtualScroll:$,onVirtualScrollEvt:V,scrollTo:U,setVirtualScrollSize:H}=Nu({virtualScrollLength:q,getVirtualScrollTarget:function(){return Oe()},getVirtualScrollEl:Oe,virtualScrollItemSizeComputed:D}),W=Fs(),G=i(()=>{let t=!0===e.mapOptions&&!0!==e.multiple,n=void 0===e.modelValue||null===e.modelValue&&!0!==t?[]:!0===e.multiple&&Array.isArray(e.modelValue)?e.modelValue:[e.modelValue];if(!0===e.mapOptions&&!0===Array.isArray(e.options)){let a=!0===e.mapOptions&&void 0!==s?s:[],i=n.map(t=>function(t,n){let a=e=>De(_e.value(e),t);return e.options.find(a)||n.find(a)||t}(t,a));return null===e.modelValue&&!0===t?i.filter(e=>null!==e):i}return n}),Y=i(()=>{let t={};return Iu.forEach(n=>{let a=e[n];void 0!==a&&(t[n]=a)}),t}),K=i(()=>null===e.optionsDark?W.isDark.value:e.optionsDark),X=i(()=>qs(G.value)),ee=i(()=>{let t="q-field__input q-placeholder col";return!0===e.hideSelected||0===G.value.length?[t,e.inputClass]:(t+=" q-field__input--padding",void 0===e.inputClass?t:[t,e.inputClass])}),te=i(()=>(!0===e.virtualScrollHorizontal?"q-virtual-scroll--horizontal":"")+(e.popupContentClass?" "+e.popupContentClass:"")),ne=i(()=>0===q.value),ae=i(()=>G.value.map(e=>ve.value(e)).join(", ")),ie=i(()=>void 0!==e.displayValue?e.displayValue:ae.value),re=i(()=>!0===e.optionsHtml?()=>!0:e=>!0===e?.html),oe=i(()=>!0===e.displayValueHtml||void 0===e.displayValue&&(!0===e.optionsHtml||G.value.some(re.value))),se=i(()=>!0===W.focused.value?e.tabindex:-1),le=i(()=>{let t={tabindex:e.tabindex,role:"combobox","aria-label":e.label,"aria-readonly":!0===e.readonly?"true":"false","aria-autocomplete":!0===e.useInput?"list":"none","aria-expanded":!0===y.value?"true":"false","aria-controls":`${W.targetUid.value}_lb`};return x.value>=0&&(t["aria-activedescendant"]=`${W.targetUid.value}_${x.value}`),t}),ue=i(()=>({id:`${W.targetUid.value}_lb`,role:"listbox","aria-multiselectable":!0===e.multiple?"true":"false"})),ce=i(()=>G.value.map((e,t)=>({index:t,opt:e,html:re.value(e),selected:!0,removeAtIndex:Se,toggleOption:Te,tabindex:se.value}))),de=i(()=>{if(0===q.value)return[];let{from:t,to:n}=j.value;return e.options.slice(t,n).map((n,a)=>{let i=!0===be.value(n),r=!0===Ae(n),o=t+a,s={clickable:!0,active:r,activeClass:ge.value,manualFocus:!0,focused:!1,disable:i,tabindex:-1,dense:e.optionsDense,dark:K.value,role:"option","aria-selected":!0===r?"true":"false",id:`${W.targetUid.value}_${o}`,onClick:()=>{Te(n)}};return!0!==i&&(x.value===o&&(s.focused=!0),!0===_.platform.is.desktop&&(s.onMousemove=()=>{!0===y.value&&Ee(o)})),{index:o,opt:n,html:re.value(n),label:ve.value(n),selected:s.active,focused:s.focused,toggleOption:Te,setOptionIndex:Ee,itemProps:s}})}),fe=i(()=>void 0!==e.dropdownIcon?e.dropdownIcon:_.iconSet.arrow.dropdown),me=i(()=>!1===e.optionsCover&&!0!==e.outlined&&!0!==e.standout&&!0!==e.borderless&&!0!==e.rounded),ge=i(()=>void 0!==e.optionsSelectedClass?e.optionsSelectedClass:void 0!==e.color?`text-${e.color}`:""),_e=i(()=>qu(e.optionValue,"value")),ve=i(()=>qu(e.optionLabel,"label")),be=i(()=>qu(e.optionDisable,"disable")),ye=i(()=>G.value.map(_e.value)),we=i(()=>{let e={onInput:qe,onChange:I,onKeydown:Ne,onKeyup:Re,onKeypress:ze,onFocus:Me,onClick(e){!0===l&&Q(e)}};return e.onCompositionstart=e.onCompositionupdate=e.onCompositionend=I,e});function ke(t){return!0===e.emitValue?_e.value(t):t}function xe(t){if(-1!==t&&t=e.maxValues)return;let i=e.modelValue.slice();o("add",{index:i.length,value:a}),i.push(a),o("update:modelValue",i)}function Te(t,n){if(!0!==W.editable.value||void 0===t||!0===be.value(t))return;let a=_e.value(t);if(!0!==e.multiple)return!0!==n&&(Be(!0===e.fillInput?ve.value(t):"",!0,!0),Ze()),L.value?.focus(),void((0===G.value.length||!0!==De(_e.value(G.value[0]),a))&&o("update:modelValue",!0===e.emitValue?a:t));if((!0!==l||!0===C.value)&&W.focus(),Me(),0===G.value.length){let n=!0===e.emitValue?a:t;return o("add",{index:0,value:n}),void o("update:modelValue",!0===e.multiple?[n]:n)}let i=e.modelValue.slice(),r=ye.value.findIndex(e=>De(e,a));if(-1!==r)o("remove",{index:r,value:i.splice(r,1)[0]});else{if(void 0!==e.maxValues&&i.length>=e.maxValues)return;let n=!0===e.emitValue?a:t;o("add",{index:i.length,value:n}),i.push(n)}o("update:modelValue",i)}function Ee(e){if(!0!==_.platform.is.desktop)return;let t=-1!==e&&e=0?ve.value(e.options[a]):c,!0))}}function Ae(e){let t=_e.value(e);return void 0!==ye.value.find(e=>De(e,t))}function Me(t){!0===e.useInput&&null!==L.value&&(void 0===t||L.value===t.target&&t.target.value===ae.value)&&L.value.select()}function Le(e){!0===pe(e,27)&&!0===y.value&&(Q(e),Ze(),Je()),o("keyup",e)}function Re(t){let{value:n}=t.target;if(void 0===t.keyCode)if(t.target.value="",null!==E&&(clearTimeout(E),E=null),null!==P&&(clearTimeout(P),P=null),Je(),"string"==typeof n&&0!==n.length){let t=n.toLocaleLowerCase(),a=n=>{let a=e.options.find(e=>String(n.value(e)).toLocaleLowerCase()===t);return void 0!==a&&(-1===G.value.indexOf(a)?Te(a):Ze(),!0)},i=e=>{!0!==a(_e)&&!0!==e&&!0!==a(ve)&&Fe(n,!0,()=>i(!0))};i()}else W.clearValue(t);else Le(t)}function ze(e){o("keypress",e)}function Ne(t){if(o("keydown",t),!0===he(t))return;let n=0!==S.value.length&&(void 0!==e.newValueMode||void 0!==e.onNewValue),a=!0!==t.shiftKey&&!0!==e.disableTabSelection&&!0!==e.multiple&&(-1!==x.value||!0===n);if(27===t.keyCode)return void Z(t);if(9===t.keyCode&&!1===a)return void Ke();if(void 0===t.target||t.target.id!==W.targetUid.value||!0!==W.editable.value)return;if(40===t.keyCode&&!0!==W.innerLoading.value&&!1===y.value)return J(t),void Qe();if(8===t.keyCode&&(!0===e.useChips||!0===e.clearable)&&!0!==e.hideSelected&&0===S.value.length)return void(!0===e.multiple&&!0===Array.isArray(e.modelValue)?xe(e.modelValue.length-1):!0!==e.multiple&&null!==e.modelValue&&o("update:modelValue",null));(35===t.keyCode||36===t.keyCode)&&("string"!=typeof S.value||0===S.value.length)&&(J(t),x.value=-1,Pe(36===t.keyCode?1:-1,e.multiple)),(33===t.keyCode||34===t.keyCode)&&void 0!==B.value&&(J(t),x.value=Math.max(-1,Math.min(q.value,x.value+(33===t.keyCode?-1:1)*B.value.view)),Pe(33===t.keyCode?1:-1,e.multiple)),(38===t.keyCode||40===t.keyCode)&&(J(t),Pe(38===t.keyCode?-1:1,e.multiple));let i=q.value;if((void 0===p||f0&&!0!==e.useInput&&void 0!==t.key&&1===t.key.length&&!1===t.altKey&&!1===t.ctrlKey&&!1===t.metaKey&&(32!==t.keyCode||0!==p.length)){!0!==y.value&&Qe(t);let n=t.key.toLocaleLowerCase(),a=1===p.length&&p[0]===n;f=Date.now()+1500,!1===a&&(J(t),p+=n);let r=new RegExp("^"+p.split("").map(e=>-1!==".*+?^${}()|[]\\".indexOf(e)?"\\"+e:e).join(".*"),"i"),o=x.value;if(!0===a||o<0||!0!==r.test(ve.value(e.options[o])))do{o=Xe(o+1,-1,i-1)}while(o!==x.value&&(!0===be.value(e.options[o])||!0!==r.test(ve.value(e.options[o]))));return void(x.value!==o&&d(()=>{Ee(o),U(o),o>=0&&!0===e.useInput&&!0===e.fillInput&&je(ve.value(e.options[o]),!0)}))}if(13===t.keyCode||32===t.keyCode&&!0!==e.useInput&&""===p||9===t.keyCode&&!1!==a){if(9!==t.keyCode&&J(t),-1!==x.value&&x.value{if(n){if(!0!==Ou(n))return}else n=e.newValueMode;Be("",!0!==e.multiple,!0),null!=t&&(("toggle"===n?Te:Ce)(t,"add-unique"===n),!0!==e.multiple&&(L.value?.focus(),Ze()))};if(void 0!==e.onNewValue?o("newValue",S.value,t):t(S.value),!0!==e.multiple)return}!0===y.value?Ke():!0!==W.innerLoading.value&&Qe()}}function Oe(){return!0===l?N.value:null!==R.value&&null!==R.value.contentEl?R.value.contentEl:void 0}function Ie(){if(!0===ne.value)return void 0!==t["no-option"]?t["no-option"]({inputValue:S.value}):void 0;let e=void 0!==t.option?t.option:e=>n(as,{key:e.index,...e.itemProps},()=>n(is,()=>n(_s,()=>n("span",{[!0===e.html?"innerHTML":"textContent"]:e.label})))),a=$("div",de.value.map(e));return void 0!==t["before-options"]&&(a=t["before-options"]().concat(a)),pt(t["after-options"],a)}function qe(t){null!==E&&(clearTimeout(E),E=null),null!==P&&(clearTimeout(P),P=null),(!t||!t.target||!0!==t.target.qComposing)&&(je(t.target.value||""),u=!0,c=S.value,!0!==W.focused.value&&(!0!==l||!0===C.value)&&W.focus(),void 0!==e.onFilter&&(E=setTimeout(()=>{E=null,Fe(S.value)},e.inputDebounce)))}function je(t,n){S.value!==t&&(S.value=t,!0===n||0===e.inputDebounce||"0"===e.inputDebounce?o("inputValue",t):P=setTimeout(()=>{P=null,o("inputValue",t)},e.inputDebounce))}function Be(t,n,a){u=!0!==a,!0===e.useInput&&(je(t,!0),(!0===n||!0!==a)&&(c=t),!0!==n&&Fe(t))}function Fe(t,n,a){if(void 0===e.onFilter||!0!==n&&!0!==W.focused.value)return;!0===W.innerLoading.value?o("filterAbort"):(W.innerLoading.value=!0,T.value=!0),""!==t&&!0!==e.multiple&&0!==G.value.length&&!0!==u&&t===ve.value(G.value[0])&&(t="");let i=setTimeout(()=>{!0===y.value&&(y.value=!1)},10);null!==A&&clearTimeout(A),A=i,o("filter",t,(e,t)=>{(!0===n||!0===W.focused.value)&&A===i&&(clearTimeout(A),"function"==typeof e&&e(),T.value=!1,d(()=>{W.innerLoading.value=!1,!0===W.editable.value&&(!0===n?!0===y.value&&Ze():!0===y.value?et(!0):y.value=!0),"function"==typeof t&&d(()=>{t(m)}),"function"==typeof a&&d(()=>{a(m)})}))},()=>{!0===W.focused.value&&A===i&&(clearTimeout(A),W.innerLoading.value=!1,T.value=!1),!0===y.value&&(y.value=!1)})}function $e(e){at(e),Ke()}function Ve(){H()}function Ue(e){Q(e),L.value?.focus(),C.value=!0,window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,0)}function He(e){Q(e),d(()=>{C.value=!1})}function We(e){at(e),null!==z.value&&z.value.__updateRefocusTarget(W.rootRef.value.querySelector(".q-field__native > [tabindex]:last-child")),W.focused.value=!1}function Ge(e){Ze(),!1===W.focused.value&&o("blur",e),Je()}function Ye(){let e=document.activeElement;(null===e||e.id!==W.targetUid.value)&&null!==L.value&&L.value!==e&&L.value.focus(),H()}function Ke(){!0!==w.value&&(x.value=-1,!0===y.value&&(y.value=!1),!1===W.focused.value&&(null!==A&&(clearTimeout(A),A=null),!0===W.innerLoading.value&&(o("filterAbort"),W.innerLoading.value=!1,T.value=!1)))}function Qe(n){!0===W.editable.value&&(!0===l?(W.onControlFocusin(n),w.value=!0,d(()=>{W.focus()})):W.focus(),void 0!==e.onFilter?Fe(S.value):(!0!==ne.value||void 0!==t["no-option"])&&(y.value=!0))}function Ze(){w.value=!1,Ke()}function Je(){!0===e.useInput&&Be(!0!==e.multiple&&!0===e.fillInput&&0!==G.value.length&&ve.value(G.value[0])||"",!0,!0)}function et(t){let n=-1;if(!0===t){if(0!==G.value.length){let t=_e.value(G.value[0]);n=e.options.findIndex(e=>De(_e.value(e),t))}F(n)}Ee(n)}function tt(){!1===w.value&&null!==R.value&&R.value.updatePosition()}function nt(e){void 0!==e&&Q(e),o("popupShow",e),W.hasPopupOpen=!0,W.onControlFocusin(e)}function at(e){void 0!==e&&Q(e),o("popupHide",e),W.hasPopupOpen=!1,W.onControlFocusout(e)}function it(){l=(!0===_.platform.is.mobile||"dialog"===e.behavior)&&("menu"!==e.behavior&&(!0!==e.useInput||(void 0!==t["no-option"]||void 0!==e.onFilter||!1===ne.value))),h=!0===_.platform.is.ios&&!0===l&&!0===e.useInput?"fade":e.transitionShow}return r(G,t=>{s=t,!0===e.useInput&&!0===e.fillInput&&!0!==e.multiple&&!0!==W.innerLoading.value&&(!0!==w.value&&!0!==y.value||!0!==X.value)&&(!0!==u&&Je(),(!0===w.value||!0===y.value)&&Fe(""))},{immediate:!0}),r(()=>e.fillInput,Je),r(y,et),r(q,function(e,t){!0===y.value&&!1===W.innerLoading.value&&(F(-1,!0),d(()=>{!0===y.value&&!1===W.innerLoading.value&&(e>t?F():et(!0))}))}),v(it),b(tt),it(),g(()=>{null!==E&&clearTimeout(E),null!==P&&clearTimeout(P)}),Object.assign(m,{showPopup:Qe,hidePopup:Ze,removeAtIndex:xe,add:Ce,toggleOption:Te,getOptionIndex:()=>x.value,setOptionIndex:Ee,moveOptionSelection:Pe,filter:Fe,updateMenuPosition:tt,updateInputValue:Be,isOptionSelected:Ae,getEmittingOptionValue:ke,isOptionDisabled:(...e)=>!0===be.value.apply(null,e),getOptionValue:(...e)=>_e.value.apply(null,e),getOptionLabel:(...e)=>ve.value.apply(null,e)}),Object.assign(W,{innerValue:G,fieldClass:i(()=>`q-select q-field--auto-height q-select--with${!0!==e.useInput?"out":""}-input q-select--with${!0!==e.useChips?"out":""}-chips q-select--${!0===e.multiple?"multiple":"single"}`),inputRef:M,targetRef:L,hasValue:X,showPopup:Qe,floatingLabel:i(()=>!0!==e.hideSelected&&!0===X.value||"number"==typeof S.value||0!==S.value.length||qs(e.displayValue)),getControlChild:()=>{if(!1!==W.editable.value&&(!0===w.value||!0!==ne.value||void 0!==t["no-option"]))return!0===l?function(){let a=[n(Vs,{class:`col-auto ${W.fieldClass.value}`,...Y.value,for:W.targetUid.value,dark:K.value,square:!0,loading:T.value,itemAligned:!1,filled:!0,stackLabel:0!==S.value.length,...W.splitAttrs.listeners.value,onFocus:Ue,onBlur:He},{...t,rawControl:()=>W.getControl(!0),before:void 0,after:void 0})];return!0===y.value&&a.push(n("div",{ref:N,class:te.value+" scroll",style:e.popupContentStyle,...ue.value,onClick:Z,onScrollPassive:V},Ie())),n(Ko,{ref:z,modelValue:w.value,position:!0===e.useInput?"top":void 0,transitionShow:h,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,noRouteDismiss:e.popupNoRouteDismiss,onBeforeShow:nt,onBeforeHide:We,onHide:Ge,onShow:Ye},()=>n("div",{class:"q-select__dialog"+(!0===K.value?" q-select__dialog--dark q-dark":"")+(!0===C.value?" q-select__dialog--focused":"")},a))}():n(Ya,{ref:R,class:te.value,style:e.popupContentStyle,modelValue:y.value,fit:!0!==e.menuShrink,cover:!0===e.optionsCover&&!0!==ne.value&&!0!==e.useInput,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,dark:K.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,noRouteDismiss:e.popupNoRouteDismiss,square:me.value,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,separateClosePopup:!0,...ue.value,onScrollPassive:V,onBeforeShow:nt,onBeforeHide:$e,onShow:Ve},Ie);!0===W.hasPopupOpen&&(W.hasPopupOpen=!1)},controlEvents:{onFocusin(e){W.onControlFocusin(e)},onFocusout(e){W.onControlFocusout(e,()=>{Je(),Ke()})},onClick(e){if(Z(e),!0!==l&&!0===y.value)return Ke(),void L.value?.focus();Qe(e)}},getControl:a=>{let i=!0===e.hideSelected?[]:void 0!==t["selected-item"]?ce.value.map(e=>t["selected-item"](e)).slice():void 0!==t.selected?[].concat(t.selected()):!0===e.useChips?ce.value.map((t,a)=>n(Fi,{key:"option-"+a,removable:!0===W.editable.value&&!0!==be.value(t.opt),dense:!0,textColor:e.color,tabindex:se.value,onRemove(){t.removeAtIndex(a)}},()=>n("span",{class:"ellipsis",[!0===t.html?"innerHTML":"textContent"]:ve.value(t.opt)}))):[n("span",{class:"ellipsis",[!0===oe.value?"innerHTML":"textContent"]:ie.value})],r=!0===a||!0!==w.value||!0!==l;if(!0===e.useInput)i.push(function(t,a){let i=!0===a?{...le.value,...W.splitAttrs.attributes.value}:void 0,r={ref:!0===a?L:void 0,key:"i_t",class:ee.value,style:e.inputStyle,value:void 0!==S.value?S.value:"",type:"search",...i,id:!0===a?W.targetUid.value:void 0,maxlength:e.maxlength,autocomplete:e.autocomplete,"data-autofocus":!0===t||!0===e.autofocus||void 0,disabled:!0===e.disable,readonly:!0===e.readonly,...we.value};return!0!==t&&!0===l&&(!0===Array.isArray(r.class)?r.class=[...r.class,"no-pointer-events"]:r.class+=" no-pointer-events"),n("input",r)}(a,r));else if(!0===W.editable.value){let t=!0===r?le.value:void 0;i.push(n("input",{ref:!0===r?L:void 0,key:"d_t",class:"q-select__focus-target",id:!0===r?W.targetUid.value:void 0,value:ie.value,readonly:!0,"data-autofocus":!0===a||!0===e.autofocus||void 0,...t,onKeydown:Ne,onKeyup:Le,onKeypress:ze})),!0===r&&"string"==typeof e.autocomplete&&0!==e.autocomplete.length&&i.push(n("input",{class:"q-select__autocomplete-input",autocomplete:e.autocomplete,tabindex:-1,onKeyup:Re}))}if(void 0!==O.value&&!0!==e.disable&&0!==ye.value.length){let t=ye.value.map(e=>n("option",{value:e,selected:!0}));i.push(n("select",{class:"hidden",name:O.value,multiple:e.multiple},t))}let o=!0===e.useInput||!0!==r?void 0:W.splitAttrs.attributes.value;return n("div",{class:"q-field__native row items-center",...o,...W.splitAttrs.listeners.value},i)},getInnerAppend:()=>!0!==e.loading&&!0!==T.value&&!0!==e.hideDropdownIcon?[n(Mt,{class:"q-select__dropdown-icon"+(!0===y.value?" rotate-180":""),name:fe.value})]:null}),$s(W)}}),ju=["text","rect","circle","QBtn","QBadge","QChip","QToolbar","QCheckbox","QRadio","QToggle","QSlider","QRange","QInput","QAvatar"],Bu=["wave","pulse","pulse-x","pulse-y","fade","blink","none"],Fu=$({name:"QSkeleton",props:{...Nt,tag:{type:String,default:"div"},type:{type:String,validator:e=>ju.includes(e),default:"rect"},animation:{type:String,validator:e=>Bu.includes(e),default:"wave"},animationSpeed:{type:[String,Number],default:1500},square:Boolean,bordered:Boolean,size:String,width:String,height:String},setup(e,{slots:t}){let a=k(),r=Ot(e,a.proxy.$q),o=i(()=>{let t=void 0!==e.size?[e.size,e.size]:[e.width,e.height];return{"--q-skeleton-speed":`${e.animationSpeed}ms`,width:t[0],height:t[1]}}),s=i(()=>`q-skeleton q-skeleton--${!0===r.value?"dark":"light"} q-skeleton--type-${e.type}`+("none"!==e.animation?` q-skeleton--anim q-skeleton--anim-${e.animation}`:"")+(!0===e.square?" q-skeleton--square":"")+(!0===e.bordered?" q-skeleton--bordered":""));return()=>n(e.tag,{class:s.value,style:o.value},dt(t.default))}}),$u=[["left","center","start","width"],["right","center","end","width"],["top","start","center","height"],["bottom","end","center","height"]],Vu=$({name:"QSlideItem",props:{...Nt,leftColor:String,rightColor:String,topColor:String,bottomColor:String,onSlide:Function},emits:["action","top","right","bottom","left"],setup(e,{slots:t,emit:r}){let{proxy:o}=k(),{$q:s}=o,l=Ot(e,s),{getCache:u}=vi(),c=a(null),d=null,h={},p={},f={},m=i(()=>!0===s.lang.rtl?{left:"right",right:"left"}:{left:"left",right:"right"}),_=i(()=>"q-slide-item q-item-type overflow-hidden"+(!0===l.value?" q-slide-item--dark q-dark":""));function b(){c.value.style.transform="translate(0,0)"}function y(t,n,a){void 0!==e.onSlide&&r("slide",{side:t,ratio:n,isReset:a})}function w(e){let n,a,i,o=c.value;if(e.isFirst)h={dir:null,size:{left:0,right:0,top:0,bottom:0},scale:0},o.classList.add("no-transition"),$u.forEach(e=>{if(void 0!==t[e[0]]){let t=f[e[0]];t.style.transform="scale(1)",h.size[e[0]]=t.getBoundingClientRect()[e[3]]}}),h.axis="up"===e.direction||"down"===e.direction?"Y":"X";else{if(e.isFinal)return o.classList.remove("no-transition"),void(1===h.scale?(o.style.transform=`translate${h.axis}(${100*h.dir}%)`,null!==d&&clearTimeout(d),d=setTimeout(()=>{d=null,r(h.showing,{reset:b}),r("action",{side:h.showing,reset:b})},230)):(o.style.transform="translate(0,0)",y(h.showing,0,!0)));e.direction="X"===h.axis?e.offset.x<0?"left":"right":e.offset.y<0?"up":"down"}void 0===t.left&&e.direction===m.value.right||void 0===t.right&&e.direction===m.value.left||void 0===t.top&&"down"===e.direction||void 0===t.bottom&&"up"===e.direction?o.style.transform="translate(0,0)":("X"===h.axis?(a="left"===e.direction?-1:1,n=1===a?m.value.left:m.value.right,i=e.distance.x):(a="up"===e.direction?-2:2,n=2===a?"top":"bottom",i=e.distance.y),(null===h.dir||Math.abs(a)===Math.abs(h.dir))&&(h.dir!==a&&(["left","right","top","bottom"].forEach(e=>{p[e]&&(p[e].style.visibility=n===e?"visible":"hidden")}),h.showing=n,h.dir=a),h.scale=Math.max(0,Math.min(1,(i-40)/h.size[n])),o.style.transform=`translate${h.axis}(${i*a/Math.abs(a)}px)`,f[n].style.transform=`scale(${h.scale})`,y(n,h.scale,!1)))}return v(()=>{p={},f={}}),g(()=>{null!==d&&clearTimeout(d)}),Object.assign(o,{reset:b}),()=>{let a=[],i={left:void 0!==t[m.value.right],right:void 0!==t[m.value.left],up:void 0!==t.bottom,down:void 0!==t.top},r=Object.keys(i).filter(e=>!0===i[e]);$u.forEach(i=>{let r=i[0];void 0!==t[r]&&a.push(n("div",{key:r,ref:e=>{p[r]=e},class:`q-slide-item__${r} absolute-full row no-wrap items-${i[1]} justify-${i[2]}`+(void 0!==e[r+"Color"]?` bg-${e[r+"Color"]}`:"")},[n("div",{ref:e=>{f[r]=e}},t[r]())]))});let o=n("div",{key:(0===r.length?"only-":"")+" content",ref:c,class:"q-slide-item__content"},dt(t.default));return 0===r.length?a.push(o):a.push(A(o,u("dir#"+r.join(""),()=>{let e={prevent:!0,stop:!0,mouse:!0};return r.forEach(t=>{e[t]=!0}),[[Yi,w,void 0,e]]}))),n("div",{class:_.value},a)}}}),Uu=$({name:"QSpace",setup(){let e=n("div",{class:"q-space"});return()=>e}}),Hu=$({name:"QSpinnerAudio",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 55 80",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Wu=$({name:"QSpinnerBall",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 57 57",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Gu=$({name:"QSpinnerBars",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 135 140",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Yu=$({name:"QSpinnerBox",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Ku=$({name:"QSpinnerClock",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Qu=$({name:"QSpinnerComment",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:''})}}),Zu=$({name:"QSpinnerCube",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:''})}}),Ju=$({name:"QSpinnerDots",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 120 30",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),Xu=$({name:"QSpinnerFacebook",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",innerHTML:''})}}),ec=$({name:"QSpinnerGears",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),tc=$({name:"QSpinnerGrid",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 105 105",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),nc=$({name:"QSpinnerHearts",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 140 64",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),ac=$({name:"QSpinnerHourglass",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),ic=$({name:"QSpinnerInfinity",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:''})}}),rc=$({name:"QSpinnerIos",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,stroke:"currentColor",fill:"currentColor",viewBox:"0 0 64 64",innerHTML:''})}}),oc=$({name:"QSpinnerOrbit",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),sc=$({name:"QSpinnerOval",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),lc=$({name:"QSpinnerPie",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),uc=$({name:"QSpinnerPuff",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),cc=$({name:"QSpinnerRadio",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),dc=$({name:"QSpinnerRings",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),hc=$({name:"QSpinnerTail",props:an,setup(e){let{cSize:t,classes:a}=rn(e);return()=>n("svg",{class:a.value,width:t.value,height:t.value,viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",innerHTML:''})}}),pc=$({name:"QSplitter",props:{...Nt,modelValue:{type:Number,required:!0},reverse:Boolean,unit:{type:String,default:"%",validator:e=>["%","px"].includes(e)},limits:{type:Array,validator:e=>2===e.length&&"number"==typeof e[0]&&"number"==typeof e[1]&&(e[0]>=0&&e[0]<=e[1])},emitImmediately:Boolean,horizontal:Boolean,disable:Boolean,beforeClass:[Array,String,Object],afterClass:[Array,String,Object],separatorClass:[Array,String,Object],separatorStyle:[Array,String,Object]},emits:["update:modelValue"],setup(e,{slots:t,emit:o}){let{proxy:{$q:s}}=k(),l=Ot(e,s),u=a(null),c={before:a(null),after:a(null)},h=i(()=>`q-splitter no-wrap ${!0===e.horizontal?"q-splitter--horizontal column":"q-splitter--vertical row"} q-splitter--${!0===e.disable?"disabled":"workable"}`+(!0===l.value?" q-splitter--dark":"")),p=i(()=>!0===e.horizontal?"height":"width"),f=i(()=>!0!==e.reverse?"before":"after"),m=i(()=>void 0!==e.limits?e.limits:"%"===e.unit?[10,90]:[50,1/0]);function g(t){return("%"===e.unit?t:Math.round(t))+e.unit}let _,v,b,y,w,x=i(()=>({[f.value]:{[p.value]:g(e.modelValue)}}));function S(t){if(!0===t.isFirst){let t=u.value.getBoundingClientRect()[p.value];return _=!0===e.horizontal?"up":"left",v="%"===e.unit?100:t,b=Math.min(v,m.value[1],Math.max(m.value[0],e.modelValue)),y=(!0!==e.reverse?1:-1)*(!0===e.horizontal?1:!0===s.lang.rtl?-1:1)*("%"===e.unit?0===t?0:100/t:1),void u.value.classList.add("q-splitter--active")}if(!0===t.isFinal)return w!==e.modelValue&&o("update:modelValue",w),void u.value.classList.remove("q-splitter--active");let n=b+y*(t.direction===_?-1:1)*t.distance[!0===e.horizontal?"y":"x"];w=Math.min(v,m.value[1],Math.max(m.value[0],n)),c[f.value].value.style[p.value]=g(w),!0===e.emitImmediately&&e.modelValue!==w&&o("update:modelValue",w)}let C=i(()=>[[Yi,S,void 0,{[!0===e.horizontal?"vertical":"horizontal"]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function T(e,t){et[1]&&o("update:modelValue",t[1])}return r(()=>e.modelValue,e=>{T(e,m.value)}),r(()=>e.limits,()=>{d(()=>{T(e.modelValue,m.value)})}),()=>{let a=[n("div",{ref:c.before,class:["q-splitter__panel q-splitter__before"+(!0===e.reverse?" col":""),e.beforeClass],style:x.value.before},dt(t.before)),n("div",{class:["q-splitter__separator",e.separatorClass],style:e.separatorStyle,"aria-disabled":!0===e.disable?"true":void 0},[mt("div",{class:"q-splitter__separator-area absolute-full"},dt(t.separator),"sep",!0!==e.disable,()=>C.value)]),n("div",{ref:c.after,class:["q-splitter__panel q-splitter__after"+(!0===e.reverse?"":" col"),e.afterClass],style:x.value.after},dt(t.after))];return n("div",{class:h.value,ref:u},pt(t.default,a))}}}),fc=$({name:"StepHeader",props:{stepper:{},step:{},goToPanel:Function},setup(e,{attrs:t}){let{proxy:{$q:r}}=k(),o=a(null),s=i(()=>e.stepper.modelValue===e.step.name),l=i(()=>{let t=e.step.disable;return!0===t||""===t}),u=i(()=>{let t=e.step.error;return!0===t||""===t}),c=i(()=>{let t=e.step.done;return!1===l.value&&(!0===t||""===t)}),d=i(()=>{let t=e.step.headerNav,n=!0===t||""===t||void 0===t;return!1===l.value&&e.stepper.headerNav&&n}),h=i(()=>e.step.prefix&&(!1===s.value||"none"===e.stepper.activeIcon)&&(!1===u.value||"none"===e.stepper.errorIcon)&&(!1===c.value||"none"===e.stepper.doneIcon)),p=i(()=>{let t=e.step.icon||e.stepper.inactiveIcon;if(!0===s.value){let n=e.step.activeIcon||e.stepper.activeIcon;return"none"===n?t:n||r.iconSet.stepper.active}if(!0===u.value){let n=e.step.errorIcon||e.stepper.errorIcon;return"none"===n?t:n||r.iconSet.stepper.error}if(!1===l.value&&!0===c.value){let n=e.step.doneIcon||e.stepper.doneIcon;return"none"===n?t:n||r.iconSet.stepper.done}return t}),f=i(()=>{let t=!0===u.value?e.step.errorColor||e.stepper.errorColor:void 0;if(!0===s.value){let n=e.step.activeColor||e.stepper.activeColor||e.step.color;return void 0!==n?n:t}return void 0!==t?t:!1===l.value&&!0===c.value?e.step.doneColor||e.stepper.doneColor||e.step.color||e.stepper.inactiveColor:e.step.color||e.stepper.inactiveColor}),m=i(()=>"q-stepper__tab col-grow flex items-center no-wrap relative-position"+(void 0!==f.value?` text-${f.value}`:"")+(!0===u.value?" q-stepper__tab--error q-stepper__tab--error-with-"+(!0===h.value?"prefix":"icon"):"")+(!0===s.value?" q-stepper__tab--active":"")+(!0===c.value?" q-stepper__tab--done":"")+(!0===d.value?" q-stepper__tab--navigation q-focusable q-hoverable":"")+(!0===l.value?" q-stepper__tab--disabled":"")),g=i(()=>!0===e.stepper.headerNav&&d.value);function _(){o.value?.focus(),!1===s.value&&e.goToPanel(e.step.name)}function v(t){13===t.keyCode&&!1===s.value&&e.goToPanel(e.step.name)}return()=>{let a={class:m.value};!0===d.value&&(a.onClick=_,a.onKeyup=v,Object.assign(a,!0===l.value?{tabindex:-1,"aria-disabled":"true"}:{tabindex:t.tabindex||0}));let i=[n("div",{class:"q-focus-helper",tabindex:-1,ref:o}),n("div",{class:"q-stepper__dot row flex-center q-stepper__line relative-position"},[n("span",{class:"row flex-center"},[!0===h.value?e.step.prefix:n(Mt,{name:p.value})])])];if(void 0!==e.step.title&&null!==e.step.title){let t=[n("div",{class:"q-stepper__title"},e.step.title)];void 0!==e.step.caption&&null!==e.step.caption&&t.push(n("div",{class:"q-stepper__caption"},e.step.caption)),i.push(n("div",{class:"q-stepper__label q-stepper__line relative-position"},t))}return A(n("div",a,i),[[mn,g.value]])}}});function mc(e){return n("div",{class:"q-stepper__step-content"},[n("div",{class:"q-stepper__step-inner"},dt(e.default))])}var gc={setup:(e,{slots:t})=>()=>mc(t)},_c=$({name:"QStep",props:{...bi,icon:String,color:String,title:{type:String,required:!0},caption:String,prefix:[String,Number],doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String,headerNav:{type:Boolean,default:!0},done:Boolean,error:Boolean,onScroll:[Function,Array]},setup(e,{slots:t,emit:r}){let{proxy:{$q:o}}=k(),s=y(Pe,Oe);if(s===Oe)return console.error("QStep needs to be a child of QStepper"),Oe;let{getCache:l}=vi(),u=a(null),c=i(()=>s.value.modelValue===e.name),d=i(()=>!0!==o.platform.is.ios&&!0===o.platform.is.chrome||!0!==c.value||!0!==s.value.vertical?{}:{onScroll(t){let{target:n}=t;n.scrollTop>0&&(n.scrollTop=0),void 0!==e.onScroll&&r("scroll",t)}}),h=i(()=>"string"==typeof e.name||"number"==typeof e.name?e.name:String(e.name));function p(){let e=s.value.vertical;return!0===e&&!0===s.value.keepAlive?n(T,s.value.keepAliveProps.value,!0===c.value?[n(!0===s.value.needsUniqueKeepAliveWrapper.value?l(h.value,()=>({...gc,name:h.value})):gc,{key:h.value},t.default)]:void 0):!0!==e||!0===c.value?mc(t):void 0}return()=>n("div",{ref:u,class:"q-stepper__step",role:"tabpanel",...d.value},!0===s.value.vertical?[n(fc,{stepper:s.value,step:e,goToPanel:s.value.goToPanel}),!0===s.value.animated?n(vs,p):p()]:[p()])}}),vc=/(-\w)/g;var bc=$({name:"QStepper",props:{...Nt,...wi,flat:Boolean,bordered:Boolean,alternativeLabels:Boolean,headerNav:Boolean,contracted:Boolean,headerClass:String,inactiveColor:String,inactiveIcon:String,doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String},emits:ki,setup(e,{slots:t}){let a=k(),r=Ot(e,a.proxy.$q),{updatePanelsList:o,isValidPanelName:s,updatePanelIndex:l,getPanelContent:u,getPanels:c,panelDirectives:d,goToPanel:h,keepAliveProps:p,needsUniqueKeepAliveWrapper:f}=xi();w(Pe,i(()=>({goToPanel:h,keepAliveProps:p,needsUniqueKeepAliveWrapper:f,...e})));let m=i(()=>"q-stepper q-stepper--"+(!0===e.vertical?"vertical":"horizontal")+(!0===e.flat?" q-stepper--flat":"")+(!0===e.bordered?" q-stepper--bordered":"")+(!0===r.value?" q-stepper--dark q-dark":"")),g=i(()=>`q-stepper__header row items-stretch justify-between q-stepper__header--${!0===e.alternativeLabels?"alternative":"standard"}-labels`+(!1===e.flat||!0===e.bordered?" q-stepper__header--border":"")+(!0===e.contracted?" q-stepper__header--contracted":"")+(void 0!==e.headerClass?` ${e.headerClass}`:""));function _(){let a=dt(t.message,[]);if(!0===e.vertical){s(e.modelValue)&&l();let i=n("div",{class:"q-stepper__content"},dt(t.default));return void 0===a?[i]:a.concat(i)}return[n("div",{class:g.value},c().map(t=>{let a=function(e){let t={};for(let n in e)t[n.replace(vc,e=>e[1].toUpperCase())]=e[n];return t}(t.props);return n(fc,{key:a.name,stepper:e,step:a,goToPanel:h})})),a,mt("div",{class:"q-stepper__content q-panel-parent"},u(),"cont",e.swipeable,()=>d.value)]}return()=>(o(t),n("div",{class:m.value},pt(t.navigation,_())))}}),yc=$({name:"QStepperNavigation",setup:(e,{slots:t})=>()=>n("div",{class:"q-stepper__nav"},dt(t.default))}),wc=$({name:"QTh",props:{props:Object,autoWidth:Boolean},emits:["click"],setup(e,{slots:t,emit:a}){let i=k(),{proxy:{$q:r}}=i,o=e=>{a("click",e)};return()=>{if(void 0===e.props)return n("th",{class:!0===e.autoWidth?"q-table--col-auto-width":"",onClick:o},dt(t.default));let a,s,l=i.vnode.key;if(l){if(a=e.props.colsMap[l],void 0===a)return}else a=e.props.col;if(!0===a.sortable){let e="right"===a.align?"unshift":"push";s=ht(t.default,[]),s[e](n(Mt,{class:a.__iconClass,name:r.iconSet.table.arrowUp}))}else s=dt(t.default);let u={class:a.__thClass+(!0===e.autoWidth?" q-table--col-auto-width":""),style:a.headerStyle,onClick:t=>{!0===a.sortable&&e.props.sort(a),o(t)}};return n("th",u,s)}}});function kc(e,t){return n("div",e,[n("table",{class:"q-table"},t)])}var xc={list:Al,table:Dl},Sc=["list","table","__qtable"],Cc=$({name:"QVirtualScroll",props:{...zu,type:{type:String,default:"list",validator:e=>Sc.includes(e)},items:{type:Array,default:()=>[]},itemsFn:Function,itemsSize:Number,scrollTarget:ra},setup(e,{slots:t,attrs:o}){let s,l=a(null),u=i(()=>e.itemsSize>=0&&void 0!==e.itemsFn?parseInt(e.itemsSize,10):Array.isArray(e.items)?e.items.length:0),{virtualScrollSliceRange:c,localResetVirtualScroll:d,padVirtualScroll:_,onVirtualScrollEvt:v}=Nu({virtualScrollLength:u,getVirtualScrollTarget:function(){return s},getVirtualScrollEl:k}),b=i(()=>{if(0===u.value)return[];let t=(e,t)=>({index:c.value.from+t,item:e});return void 0===e.itemsFn?e.items.slice(c.value.from,c.value.to).map(t):e.itemsFn(c.value.from,c.value.to-c.value.from).map(t)}),y=i(()=>"q-virtual-scroll q-virtual-scroll"+(!0===e.virtualScrollHorizontal?"--horizontal":"--vertical")+(void 0!==e.scrollTarget?"":" scroll")),w=i(()=>void 0!==e.scrollTarget?{}:{tabindex:0});function k(){return l.value.$el||l.value}function x(){s=sa(k(),e.scrollTarget),s.addEventListener("scroll",v,H.passive)}function S(){void 0!==s&&(s.removeEventListener("scroll",v,H.passive),s=void 0)}function C(){let n=_("list"===e.type?"div":"tbody",b.value.map(t.default));return void 0!==t.before&&(n=t.before().concat(n)),pt(t.after,n)}return r(u,()=>{d()}),r(()=>e.scrollTarget,()=>{S(),x()}),f(()=>{d()}),m(()=>{x()}),h(()=>{x()}),p(()=>{S()}),g(()=>{S()}),()=>{if(void 0!==t.default)return"__qtable"===e.type?kc({ref:l,class:"q-table__middle "+y.value},C()):n(xc[e.type],{...o,ref:l,class:[o.class,y.value],...w.value},C);console.error("QVirtualScroll: default scoped slot is required for rendering")}}});var Tc={sortMethod:Function,binaryStateSort:Boolean,columnSortOrder:{type:String,validator:e=>"ad"===e||"da"===e,default:"ad"}};function Ec(e,t,n,a){let r=i(()=>{let{sortBy:e}=t.value;return e&&n.value.find(t=>t.name===e)||null}),o=i(()=>void 0!==e.sortMethod?e.sortMethod:(e,t,a)=>{let i=n.value.find(e=>e.name===t);if(void 0===i||void 0===i.field)return e;let r=!0===a?-1:1,o="function"==typeof i.field?e=>i.field(e):e=>e[i.field];return e.sort((e,t)=>{let n=o(e),a=o(t);return void 0!==i.rawSort?i.rawSort(n,a,e,t)*r:null==n?-1*r:null==a?1*r:void 0!==i.sort?i.sort(n,a,e,t)*r:!0===$e(n)&&!0===$e(a)?(n-a)*r:!0===Be(n)&&!0===Be(a)?function(e,t){return new Date(e)-new Date(t)}(n,a)*r:"boolean"==typeof n&&"boolean"==typeof a?(n-a)*r:([n,a]=[n,a].map(e=>(e+"").toLocaleString().toLowerCase()),ne.name===i);e?.sortOrder&&(r=e.sortOrder)}let{sortBy:o,descending:s}=t.value;o!==i?(o=i,s="da"===r):!0===e.binaryStateSort?s=!s:!0===s?"ad"===r?o=null:s=!1:"ad"===r?s=!0:o=null,a({sortBy:o,descending:s,page:1})}}}var Pc={filter:[String,Object],filterMethod:Function};function Ac(e){return e.page<1&&(e.page=1),void 0!==e.rowsPerPage&&e.rowsPerPage<1&&(e.rowsPerPage=0),e}var Mc={pagination:Object,rowsPerPageOptions:{type:Array,default:()=>[5,7,10,15,20,25,50,0]},"onUpdate:pagination":[Function,Array]};var Lc={selection:{type:String,default:"none",validator:e=>["single","multiple","none"].includes(e)},selected:{type:Array,default:()=>[]}};function Rc(e){return Array.isArray(e)?e.slice():[]}var zc={expanded:Array};var Nc={visibleColumns:Array};var Oc="q-table__bottom row items-center",Ic={};Ru.forEach(e=>{Ic[e]={}});var qc=$({name:"QTable",props:{rows:{type:Array,required:!0},rowKey:{type:[String,Function],default:"id"},columns:Array,loading:Boolean,iconFirstPage:String,iconPrevPage:String,iconNextPage:String,iconLastPage:String,title:String,hideHeader:Boolean,grid:Boolean,gridHeader:Boolean,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,separator:{type:String,default:"horizontal",validator:e=>["horizontal","vertical","cell","none"].includes(e)},wrapCells:Boolean,virtualScroll:Boolean,virtualScrollTarget:{},...Ic,noDataLabel:String,noResultsLabel:String,loadingLabel:String,selectedRowsLabel:Function,rowsPerPageLabel:String,paginationLabel:Function,color:{type:String,default:"grey-8"},titleClass:[String,Array,Object],tableStyle:[String,Array,Object],tableClass:[String,Array,Object],tableHeaderStyle:[String,Array,Object],tableHeaderClass:[String,Array,Object],tableRowStyleFn:Function,tableRowClassFn:Function,cardContainerClass:[String,Array,Object],cardContainerStyle:[String,Array,Object],cardStyle:[String,Array,Object],cardClass:[String,Array,Object],cardStyleFn:Function,cardClassFn:Function,hideBottom:Boolean,hideSelectedBanner:Boolean,hideNoData:Boolean,hidePagination:Boolean,onRowClick:Function,onRowDblclick:Function,onRowContextmenu:Function,...Nt,...Ci,...Nc,...Pc,...Mc,...zc,...Lc,...Tc},emits:["request","virtualScroll",...Ti,"update:expanded","update:selected","selection"],setup(e,{slots:t,emit:o}){let s=k(),{proxy:{$q:l}}=s,u=Ot(e,l),{inFullscreen:c,toggleFullscreen:h}=Ei(),p=i(()=>"function"==typeof e.rowKey?e.rowKey:t=>t[e.rowKey]),f=a(null),m=a(null),g=i(()=>!0!==e.grid&&!0===e.virtualScroll),_=i(()=>" q-table__card"+(!0===u.value?" q-table__card--dark q-dark":"")+(!0===e.square?" q-table--square":"")+(!0===e.flat?" q-table--flat":"")+(!0===e.bordered?" q-table--bordered":"")),v=i(()=>`q-table__container q-table--${e.separator}-separator column no-wrap`+(!0===e.grid?" q-table--grid":_.value)+(!0===u.value?" q-table--dark":"")+(!0===e.dense?" q-table--dense":"")+(!1===e.wrapCells?" q-table--no-wrap":"")+(!0===c.value?" fullscreen scroll":"")),b=i(()=>v.value+(!0===e.loading?" q-table--loading":""));r(()=>e.tableStyle+e.tableClass+e.tableHeaderStyle+e.tableHeaderClass+v.value,()=>{!0===g.value&&m.value?.reset()});let{innerPagination:y,computedPagination:w,isServerSide:x,requestServerInteraction:S,setPagination:C}=function(e,t){let{props:n,emit:r}=e,o=a(Object.assign({sortBy:null,descending:!1,page:1,rowsPerPage:0!==n.rowsPerPageOptions.length?n.rowsPerPageOptions[0]:5},n.pagination)),s=i(()=>Ac(void 0!==n["onUpdate:pagination"]?{...o.value,...n.pagination}:o.value)),l=i(()=>void 0!==s.value.rowsNumber);function u(e){c({pagination:e,filter:n.filter})}function c(e={}){d(()=>{r("request",{pagination:e.pagination||s.value,filter:e.filter||n.filter,getCellValue:t})})}return{innerPagination:o,computedPagination:s,isServerSide:l,requestServerInteraction:c,setPagination:function(e,t){let a=Ac({...s.value,...e});!0!==function(e,t){for(let n in t)if(t[n]!==e[n])return!1;return!0}(s.value,a)?!0!==l.value?void 0!==n.pagination&&void 0!==n["onUpdate:pagination"]?r("update:pagination",a):o.value=a:u(a):!0===l.value&&!0===t&&u(a)}}}(s,_e),{computedFilterMethod:T}=function(e,t){let n=i(()=>void 0!==e.filterMethod?e.filterMethod:(e,t,n,a)=>{let i=t?t.toLowerCase():"";return e.filter(e=>n.some(t=>{let n=a(t,e)+"";return-1!==("undefined"===n||"null"===n?"":n.toLowerCase()).indexOf(i)}))});return r(()=>e.filter,()=>{d(()=>{t({page:1},!0)})},{deep:!0}),{computedFilterMethod:n}}(e,C),{isRowExpanded:E,setExpanded:P,updateExpanded:A}=function(e,t){let n=a(Rc(e.expanded));function i(a){void 0!==e.expanded?t("update:expanded",a):n.value=a}return r(()=>e.expanded,e=>{n.value=Rc(e)}),{isRowExpanded:function(e){return n.value.includes(e)},setExpanded:i,updateExpanded:function(e,t){let a=n.value.slice(),r=a.indexOf(e);!0===t?-1===r&&(a.push(e),i(a)):-1!==r&&(a.splice(r,1),i(a))}}}(e,o),M=i(()=>{let t=e.rows;if(!0===x.value||0===t.length)return t;let{sortBy:n,descending:a}=w.value;return e.filter&&(t=T.value(t,e.filter,H.value,_e)),null!==Y.value&&(t=K.value(e.rows===t?t.slice():t,n,a)),t}),L=i(()=>M.value.length),R=i(()=>{let t=M.value;if(!0===x.value)return t;let{rowsPerPage:n}=w.value;return 0!==n&&(0===Z.value&&e.rows!==t?t.length>J.value&&(t=t.slice(0,J.value)):t=t.slice(Z.value,J.value)),t}),{hasSelectionMode:O,singleSelection:I,multipleSelection:q,allRowsSelected:D,someRowsSelected:j,rowsSelectedNumber:B,isRowSelected:F,clearSelection:$,updateSelection:V}=function(e,t,n,a){let r=i(()=>{let t={};return e.selected.map(a.value).forEach(e=>{t[e]=!0}),t}),o=i(()=>"none"!==e.selection),s=i(()=>"single"===e.selection),l=i(()=>"multiple"===e.selection),u=i(()=>0!==n.value.length&&n.value.every(e=>!0===r.value[a.value(e)])),c=i(()=>!0!==u.value&&n.value.some(e=>!0===r.value[a.value(e)])),d=i(()=>e.selected.length);return{hasSelectionMode:o,singleSelection:s,multipleSelection:l,allRowsSelected:u,someRowsSelected:c,rowsSelectedNumber:d,isRowSelected:function(e){return!0===r.value[e]},clearSelection:function(){t("update:selected",[])},updateSelection:function(n,i,r,o){t("selection",{rows:i,added:r,keys:n,evt:o});let l=!0===s.value?!0===r?i:[]:!0===r?e.selected.concat(i):e.selected.filter(e=>!1===n.includes(a.value(e)));t("update:selected",l)}}}(e,o,R,p),{colList:U,computedCols:H,computedColsMap:W,computedColspan:G}=function(e,t,n){let a=i(()=>{if(void 0!==e.columns)return e.columns;let t=e.rows[0];return void 0!==t?Object.keys(t).map(e=>({name:e,label:e.toUpperCase(),field:e,align:$e(t[e])?"right":"left",sortable:!0})):[]}),r=i(()=>{let{sortBy:n,descending:i}=t.value;return(void 0!==e.visibleColumns?a.value.filter(t=>!0===t.required||!0===e.visibleColumns.includes(t.name)):a.value).map(e=>{let t=e.align||"right",a=`text-${t}`;return{...e,align:t,__iconClass:`q-table__sort-icon q-table__sort-icon--${t}`,__thClass:a+(void 0!==e.headerClasses?" "+e.headerClasses:"")+(!0===e.sortable?" sortable":"")+(e.name===n?" sorted "+(!0===i?"sort-desc":""):""),__tdStyle:void 0!==e.style?"function"!=typeof e.style?()=>e.style:e.style:()=>null,__tdClass:void 0!==e.classes?"function"!=typeof e.classes?()=>a+" "+e.classes:t=>a+" "+e.classes(t):()=>a}})}),o=i(()=>{let e={};return r.value.forEach(t=>{e[t.name]=t}),e}),s=i(()=>void 0!==e.tableColspan?e.tableColspan:r.value.length+(!0===n.value?1:0));return{colList:a,computedCols:r,computedColsMap:o,computedColspan:s}}(e,w,O),{columnToSort:Y,computedSortMethod:K,sort:Q}=Ec(e,w,U,C),{firstRowIndex:Z,lastRowIndex:J,isFirstPage:X,isLastPage:ee,pagesNumber:te,computedRowsPerPageOptions:ne,computedRowsNumber:ae,firstPage:ie,prevPage:re,nextPage:oe,lastPage:se}=function(e,t,n,a,o,s){let{props:l,emit:u,proxy:{$q:c}}=e,d=i(()=>!0===a.value?n.value.rowsNumber||0:s.value),h=i(()=>{let{page:e,rowsPerPage:t}=n.value;return(e-1)*t}),p=i(()=>{let{page:e,rowsPerPage:t}=n.value;return e*t}),f=i(()=>1===n.value.page),m=i(()=>0===n.value.rowsPerPage?1:Math.max(1,Math.ceil(d.value/n.value.rowsPerPage))),g=i(()=>0===p.value||n.value.page>=m.value),_=i(()=>(l.rowsPerPageOptions.includes(t.value.rowsPerPage)?l.rowsPerPageOptions:[t.value.rowsPerPage].concat(l.rowsPerPageOptions)).map(e=>({label:0===e?c.lang.table.allRows:""+e,value:e})));return r(m,(e,t)=>{if(e===t)return;let a=n.value.page;e&&!a?o({page:1}):e1&&o({page:e-1})},nextPage:function(){let{page:e,rowsPerPage:t}=n.value;p.value>0&&e*t0===R.value.length),ue=i(()=>{let t={};return Ru.forEach(n=>{t[n]=e[n]}),void 0===t.virtualScrollItemSize&&(t.virtualScrollItemSize=!0===e.dense?28:48),t});function ce(){if(!0===e.grid)return function(){let a=void 0!==t.item?t.item:a=>{let i=a.cols.map(e=>n("div",{class:"q-table__grid-item-row"},[n("div",{class:"q-table__grid-item-title"},[e.label]),n("div",{class:"q-table__grid-item-value"},[e.value])]));if(!0===O.value){let r=t["body-selection"],o=void 0!==r?r(a):[n(ji,{modelValue:a.selected,color:e.color,dark:u.value,dense:e.dense,"onUpdate:modelValue":(e,t)=>{V([a.key],[a.row],e,t)}})];i.unshift(n("div",{class:"q-table__grid-item-row"},o),n(ws,{dark:u.value}))}let r={class:["q-table__grid-item-card"+_.value,e.cardClass],style:e.cardStyle};if(void 0!==e.cardStyleFn&&(r.style=[r.style,e.cardStyleFn(a.row)]),void 0!==e.cardClassFn){let t=e.cardClassFn(a.row);t&&(r.class[0]+=` ${t}`)}return(void 0!==e.onRowClick||void 0!==e.onRowDblclick||void 0!==e.onRowContextmenu)&&(r.class[0]+=" cursor-pointer",void 0!==e.onRowClick&&(r.onClick=e=>{o("RowClick",e,a.row,a.pageIndex)}),void 0!==e.onRowDblclick&&(r.onDblclick=e=>{o("RowDblclick",e,a.row,a.pageIndex)}),void 0!==e.onRowContextmenu&&(r.onContextmenu=e=>{o("rowContextmenu",e,a.row,a.pageIndex)})),n("div",{class:"q-table__grid-item col-xs-12 col-sm-6 col-md-4 col-lg-3"+(!0===a.selected?" q-table__grid-item--selected":"")},[n("div",r,i)])};return n("div",{class:["q-table__grid-content row",e.cardContainerClass],style:e.cardContainerStyle},R.value.map((e,t)=>a(me({key:p.value(e),row:e,pageIndex:t}))))}();let a=!0!==e.hideHeader?we:null;if(!0===g.value){let i=t["top-row"],r=t["bottom-row"],o={default:e=>pe(e.item,t.body,e.index)};if(void 0!==i){let e=n("tbody",i({cols:H.value}));o.before=null===a?()=>e:()=>[a()].concat(e)}else null!==a&&(o.before=a);return void 0!==r&&(o.after=()=>n("tbody",r({cols:H.value}))),n(Cc,{ref:m,class:e.tableClass,style:e.tableStyle,...ue.value,scrollTarget:e.virtualScrollTarget,items:R.value,type:"__qtable",tableColspan:G.value,onVirtualScroll:de},o)}let i=[fe()];return null!==a&&i.unshift(a()),kc({class:["q-table__middle scroll",e.tableClass],style:e.tableStyle},i)}function de(e){o("virtualScroll",e)}function he(){return[n(lu,{class:"q-table__linear-progress",color:e.color,dark:u.value,indeterminate:!0,trackColor:"transparent"})]}function pe(a,i,r){let s=p.value(a),l=F(s);if(void 0!==i){let t={key:s,row:a,pageIndex:r,__trClass:l?"selected":""};if(void 0!==e.tableRowStyleFn&&(t.__trStyle=e.tableRowStyleFn(a)),void 0!==e.tableRowClassFn){let n=e.tableRowClassFn(a);n&&(t.__trClass=`${n} ${t.__trClass}`)}return i(me(t))}let c=t["body-cell"],d=H.value.map(e=>{let i=t[`body-cell-${e.name}`],o=void 0!==i?i:c;return void 0!==o?o(function(e){return ge(e),z(e,"value",()=>_e(e.col,e.row)),e}({key:s,row:a,pageIndex:r,col:e})):n("td",{class:e.__tdClass(a),style:e.__tdStyle(a)},_e(e,a))});if(!0===O.value){let i=t["body-selection"],o=void 0!==i?i(function(e){return ge(e),e}({key:s,row:a,pageIndex:r})):[n(ji,{modelValue:l,color:e.color,dark:u.value,dense:e.dense,"onUpdate:modelValue":(e,t)=>{V([s],[a],e,t)}})];d.unshift(n("td",{class:"q-table--col-auto-width"},o))}let h={key:s,class:{selected:l}};if(void 0!==e.onRowClick&&(h.class["cursor-pointer"]=!0,h.onClick=e=>{o("rowClick",e,a,r)}),void 0!==e.onRowDblclick&&(h.class["cursor-pointer"]=!0,h.onDblclick=e=>{o("rowDblclick",e,a,r)}),void 0!==e.onRowContextmenu&&(h.class["cursor-pointer"]=!0,h.onContextmenu=e=>{o("rowContextmenu",e,a,r)}),void 0!==e.tableRowStyleFn&&(h.style=e.tableRowStyleFn(a)),void 0!==e.tableRowClassFn){let t=e.tableRowClassFn(a);t&&(h.class[t]=!0)}return n("tr",h,d)}function fe(){let e=t.body,a=t["top-row"],i=t["bottom-row"],r=R.value.map((t,n)=>pe(t,e,n));return void 0!==a&&(r=a({cols:H.value}).concat(r)),void 0!==i&&(r=r.concat(i({cols:H.value}))),n("tbody",r)}function me(e){return ge(e),e.cols=e.cols.map(t=>z({...t},"value",()=>_e(t,e.row))),e}function ge(t){Object.assign(t,{cols:H.value,colsMap:W.value,sort:Q,rowIndex:Z.value+t.pageIndex,color:e.color,dark:u.value,dense:e.dense}),!0===O.value&&z(t,"selected",()=>F(t.key),(e,n)=>{V([t.key],[t.row],e,n)}),z(t,"expand",()=>E(t.key),e=>{A(t.key,e)})}function _e(e,t){let n="function"==typeof e.field?e.field(t):t[e.field];return void 0!==e.format?e.format(n,t):n}let ve=i(()=>({pagination:w.value,pagesNumber:te.value,isFirstPage:X.value,isLastPage:ee.value,firstPage:ie,prevPage:re,nextPage:oe,lastPage:se,inFullscreen:c.value,toggleFullscreen:h}));function be(){let a,i=t.top,r=t["top-left"],o=t["top-right"],s=t["top-selection"],l=!0===O.value&&void 0!==s&&B.value>0,u="q-table__top relative-position row items-center";return void 0!==i?n("div",{class:u},[i(ve.value)]):(!0===l?a=s(ve.value).slice():(a=[],void 0!==r?a.push(n("div",{class:"q-table__control"},[r(ve.value)])):e.title&&a.push(n("div",{class:"q-table__control"},[n("div",{class:["q-table__title",e.titleClass]},e.title)]))),void 0!==o&&(a.push(n("div",{class:"q-table__separator col"})),a.push(n("div",{class:"q-table__control"},[o(ve.value)]))),0!==a.length?n("div",{class:u},a):void 0)}let ye=i(()=>!0===j.value?null:D.value);function we(){let a=function(){let a=t.header,i=t["header-cell"];if(void 0!==a)return a(ke({header:!0})).slice();let r=H.value.map(e=>{let a=t[`header-cell-${e.name}`],r=void 0!==a?a:i,o=ke({col:e});return void 0!==r?r(o):n(wc,{key:e.name,props:o},()=>e.label)});if(!0===I.value&&!0!==e.grid)r.unshift(n("th",{class:"q-table--col-auto-width"}," "));else if(!0===q.value){let a=t["header-selection"],i=void 0!==a?a(ke({})):[n(ji,{color:e.color,modelValue:ye.value,dark:u.value,dense:e.dense,"onUpdate:modelValue":xe})];r.unshift(n("th",{class:"q-table--col-auto-width"},i))}return[n("tr",{class:e.tableHeaderClass,style:e.tableHeaderStyle},r)]}();return!0===e.loading&&void 0===t.loading&&a.push(n("tr",{class:"q-table__progress"},[n("th",{class:"relative-position",colspan:G.value},he())])),n("thead",a)}function ke(t){return Object.assign(t,{cols:H.value,sort:Q,colsMap:W.value,color:e.color,dark:u.value,dense:e.dense}),!0===q.value&&z(t,"selected",()=>ye.value,xe),t}function xe(e){!0===j.value&&(e=!1),V(R.value.map(p.value),R.value,e)}let Se=i(()=>{let t=[e.iconFirstPage||l.iconSet.table.firstPage,e.iconPrevPage||l.iconSet.table.prevPage,e.iconNextPage||l.iconSet.table.nextPage,e.iconLastPage||l.iconSet.table.lastPage];return!0===l.lang.rtl?t.reverse():t});function Ce(){if(!0===e.hideBottom)return;if(!0===le.value){if(!0===e.hideNoData)return;let a=!0===e.loading?e.loadingLabel||l.lang.table.loading:e.filter?e.noResultsLabel||l.lang.table.noResults:e.noDataLabel||l.lang.table.noData,i=t["no-data"],r=void 0!==i?[i({message:a,icon:l.iconSet.table.warning,filter:e.filter})]:[n(Mt,{class:"q-table__bottom-nodata-icon",name:l.iconSet.table.warning}),a];return n("div",{class:Oc+" q-table__bottom--nodata"},r)}let a=t.bottom;if(void 0!==a)return n("div",{class:Oc},[a(ve.value)]);let i=!0!==e.hideSelectedBanner&&!0===O.value&&B.value>0?[n("div",{class:"q-table__control"},[n("div",[(e.selectedRowsLabel||l.lang.table.selectedRecords)(B.value)])])]:[];return!0!==e.hidePagination?n("div",{class:Oc+" justify-end"},function(a){let i,{rowsPerPage:r}=w.value,o=e.paginationLabel||l.lang.table.pagination,s=t.pagination,c=e.rowsPerPageOptions.length>1;if(a.push(n("div",{class:"q-table__separator col"})),!0===c&&a.push(n("div",{class:"q-table__control"},[n("span",{class:"q-table__bottom-item"},[e.rowsPerPageLabel||l.lang.table.recordsPerPage]),n(Du,{class:"q-table__select inline q-table__bottom-item",color:e.color,modelValue:r,options:ne.value,displayValue:0===r?l.lang.table.allRows:r,dark:u.value,borderless:!0,dense:!0,optionsDense:!0,optionsCover:!0,"onUpdate:modelValue":Te})])),void 0!==s)i=s(ve.value);else if(i=[n("span",0!==r?{class:"q-table__bottom-item"}:{},[r?o(Z.value+1,Math.min(J.value,ae.value),ae.value):o(1,L.value,ae.value)])],0!==r&&te.value>1){let t={color:e.color,round:!0,dense:!0,flat:!0};!0===e.dense&&(t.size="sm"),te.value>2&&i.push(n(An,{key:"pgFirst",...t,icon:Se.value[0],disable:X.value,"aria-label":l.lang.pagination.first,onClick:ie})),i.push(n(An,{key:"pgPrev",...t,icon:Se.value[1],disable:X.value,"aria-label":l.lang.pagination.prev,onClick:re}),n(An,{key:"pgNext",...t,icon:Se.value[2],disable:ee.value,"aria-label":l.lang.pagination.next,onClick:oe})),te.value>2&&i.push(n(An,{key:"pgLast",...t,icon:Se.value[3],disable:ee.value,"aria-label":l.lang.pagination.last,onClick:se}))}return a.push(n("div",{class:"q-table__control"},i)),a}(i)):0!==i.length?n("div",{class:Oc},i):void 0}function Te(e){C({page:1,rowsPerPage:e.value})}return Object.assign(s.proxy,{requestServerInteraction:S,setPagination:C,firstPage:ie,prevPage:re,nextPage:oe,lastPage:se,isRowSelected:F,clearSelection:$,isRowExpanded:E,setExpanded:P,sort:Q,resetVirtualScroll:function(){!0===g.value&&m.value.reset()},scrollTo:function(t,n){if(null!==m.value)return void m.value.scrollTo(t,n);t=parseInt(t,10);let a=f.value.querySelector(`tbody tr:nth-of-type(${t+1})`);if(null!==a){let n=f.value.querySelector(".q-table__middle.scroll"),i=a.offsetTop-e.virtualScrollStickySizeStart,r=iM.value,computedRows:()=>R.value,computedRowsNumber:()=>ae.value}),()=>{let a=[be()],i={ref:f,class:b.value};return!0===e.grid?a.push(function(){let a=!0===e.gridHeader?[n("table",{class:"q-table"},[we()])]:!0===e.loading&&void 0===t.loading?he():void 0;return n("div",{class:"q-table__middle"},a)}()):Object.assign(i,{class:[i.class,e.cardClass],style:e.cardStyle}),a.push(ce(),Ce()),!0===e.loading&&void 0!==t.loading&&a.push(t.loading()),n("div",i,a)}}}),Dc=$({name:"QTr",props:{props:Object,noHover:Boolean},setup(e,{slots:t}){let a=i(()=>"q-tr"+(void 0===e.props||!0===e.props.header?"":" "+e.props.__trClass)+(!0===e.noHover?" q-tr--no-hover":""));return()=>n("tr",{style:e.props?.__trStyle,class:a.value},dt(t.default))}}),jc=$({name:"QTd",props:{props:Object,autoWidth:Boolean,noHover:Boolean},setup(e,{slots:t}){let a=k(),r=i(()=>"q-td"+(!0===e.autoWidth?" q-table--col-auto-width":"")+(!0===e.noHover?" q-td--no-hover":"")+" ");return()=>{if(void 0===e.props)return n("td",{class:r.value},dt(t.default));let i=a.vnode.key,o=(void 0!==e.props.colsMap?e.props.colsMap[i]:null)||e.props.col;if(void 0===o)return;let{row:s}=e.props;return n("td",{class:r.value+o.__tdClass(s),style:o.__tdStyle(s)},dt(t.default))}}}),Bc=$({name:"QRouteTab",props:{...en,...fr},emits:pr,setup(e,{slots:t,emit:n}){let a=tn({useDisableForRouterLinkProps:!1}),{renderTab:o,$tabs:s}=mr(e,t,n,{exact:i(()=>e.exact),...a});return r(()=>`${e.name} | ${e.exact} | ${(a.resolvedLink.value||{}).href}`,s.verifyRouteModel),()=>o(a.linkTag.value,a.linkAttrs.value)}});function Fc(){let e=new Date;return{hour:e.getHours(),minute:e.getMinutes(),second:e.getSeconds(),millisecond:e.getMilliseconds()}}var $c=$({name:"QTime",props:{...Nt,...ai,...Kr,modelValue:{required:!0,validator:e=>"string"==typeof e||null===e},mask:{...Kr.mask,default:null},format24h:{type:Boolean,default:null},defaultDate:{type:String,validator:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e)},options:Function,hourOptions:Array,minuteOptions:Array,secondOptions:Array,withSeconds:Boolean,nowBtn:Boolean},emits:Qr,setup(e,{slots:t,emit:o}){let s,l,u=k(),{$q:c}=u.proxy,h=Ot(e,c),{tabindex:p,headerClass:f,getLocale:m,getCurrentDate:g}=Jr(e,c),_=ri(ii(e)),v=a(null),b=i(()=>"persian"!==e.calendar&&null!==e.mask?e.mask:"HH:mm"+(!0===e.withSeconds?":ss":"")),y=i(()=>m()),w=i(()=>function(){if("string"!=typeof e.defaultDate){let e=g(!0);return e.dateHash=Zr(e),e}return co(e.defaultDate,"YYYY/MM/DD",void 0,e.calendar)}()),x=co(e.modelValue,b.value,y.value,e.calendar,w.value),C=a(function(e,t){if(null!==e.hour){if(null===e.minute)return"minute";if(!0===t&&null===e.second)return"second"}return"hour"}(x)),T=a(x),E=a(null===x.hour||x.hour<12),P=i(()=>"q-time q-time--"+(!0===e.landscape?"landscape":"portrait")+(!0===h.value?" q-time--dark q-dark":"")+(!0===e.disable?" disabled":!0===e.readonly?" q-time--readonly":"")+(!0===e.bordered?" q-time--bordered":"")+(!0===e.square?" q-time--square no-border-radius":"")+(!0===e.flat?" q-time--flat no-shadow":"")),M=i(()=>{let e=T.value;return{hour:null===e.hour?"--":!0===L.value?et(e.hour):String(!0===E.value?0===e.hour?12:e.hour:e.hour>12?e.hour-12:e.hour),minute:null===e.minute?"--":et(e.minute),second:null===e.second?"--":et(e.second)}}),L=i(()=>null!==e.format24h?e.format24h:c.lang.date.format24h),R=i(()=>{let e="hour"===C.value,t=!0===e?12:60,n=T.value[C.value],a=`rotate(${Math.round(n*(360/t))-180}deg) translateX(-50%)`;return!0===e&&!0===L.value&&T.value.hour>=12&&(a+=" scale(.7)"),{transform:a}}),z=i(()=>null!==T.value.hour),N=i(()=>!0===z.value&&null!==T.value.minute),O=i(()=>void 0!==e.hourOptions?t=>e.hourOptions.includes(t):void 0!==e.options?t=>e.options(t,null,null):null),I=i(()=>void 0!==e.minuteOptions?t=>e.minuteOptions.includes(t):void 0!==e.options?t=>e.options(T.value.hour,t,null):null),q=i(()=>void 0!==e.secondOptions?t=>e.secondOptions.includes(t):void 0!==e.options?t=>e.options(T.value.hour,T.value.minute,t):null),D=i(()=>{if(null===O.value)return null;let e=H(0,11,O.value),t=H(12,11,O.value);return{am:e,pm:t,values:e.values.concat(t.values)}}),j=i(()=>null!==I.value?H(0,59,I.value):null),B=i(()=>null!==q.value?H(0,59,q.value):null),F=i(()=>{switch(C.value){case"hour":return D.value;case"minute":return j.value;case"second":return B.value}}),$=i(()=>{let e,t,n=0,a=1,i=null!==F.value?F.value.values:void 0;"hour"===C.value?!0===L.value?(e=0,t=23):(e=0,t=11,!1===E.value&&(n=12)):(e=0,t=55,a=5);let r=[];for(let o=e,s=e;o<=t;o+=a,s++){let e=o+n,t=!1===i?.includes(e),a="hour"===C.value&&0===o?!0===L.value?"00":"12":o;r.push({val:e,index:s,disable:t,label:a})}return r}),V=i(()=>[[Yi,Z,void 0,{stop:!0,prevent:!0,mouse:!0}]]);function U(){let e={...g(),...Fc()};ge(e),Object.assign(T.value,e),C.value="hour"}function H(e,t,n){let a=Array.apply(null,{length:t+1}).map((t,a)=>{let i=a+e;return{index:i,val:!0===n(i)}}).filter(e=>!0===e.val).map(e=>e.index);return{min:a[0],max:a[a.length-1],values:a,threshold:t+1}}function W(e,t,n){let a=Math.abs(e-t);return Math.min(a,n-a)}function G(e,{min:t,max:n,values:a,threshold:i}){if(e===t)return t;if(en)return W(e,t,i)<=W(e,n,i)?t:n;let r=a.findIndex(t=>e<=t),o=a[r-1],s=a[r];return e-o<=s-e?o:s}function K(){return!0===Wt(u)||null!==F.value&&(0===F.value.values.length||"hour"===C.value&&!0!==L.value&&0===D.value[!0===E.value?"am":"pm"].values.length)}function Q(){let e=v.value,{top:t,left:n,width:a}=e.getBoundingClientRect(),i=a/2;return{top:t+i,left:n+i,dist:.7*i}}function Z(e){if(!0!==K()){if(!0===e.isFirst)return s=Q(),void(l=X(e.evt,s));l=X(e.evt,s,l),!0===e.isFinal&&(s=!1,l=null,J())}}function J(){"hour"===C.value?C.value="minute":e.withSeconds&&"minute"===C.value&&(C.value="second")}function X(e,t,n){let a,i=Y(e),r=Math.abs(i.top-t.top),o=Math.sqrt(Math.pow(Math.abs(i.top-t.top),2)+Math.pow(Math.abs(i.left-t.left),2)),s=Math.asin(r/o)*(180/Math.PI);if(s=i.top=t.dist:0!==D.value.am.values.length;a=G(a+(!0===e?0:12),D.value[!0===e?"am":"pm"])}else a=Math.round(a),!0===L.value?oe.modelValue,t=>{let n=co(t,b.value,y.value,e.calendar,w.value);(n.dateHash!==T.value.dateHash||n.timeHash!==T.value.timeHash)&&(T.value=n,null===n.hour?C.value="hour":E.value=n.hour<12)}),r([b,y],()=>{d(()=>{ge()})});let ee={hour(){C.value="hour"},minute(){C.value="minute"},second(){C.value="second"}};function te(e){13===e.keyCode&&he()}function ne(e){13===e.keyCode&&pe()}function ae(e){!0!==K()&&(!0!==c.platform.is.desktop&&X(e,Q()),J())}function ie(e){!0!==K()&&X(e,Q())}function re(e){if(13===e.keyCode)C.value="hour";else if([37,39].includes(e.keyCode)){let t=37===e.keyCode?-1:1;if(null!==D.value){let e=!0===L.value?D.value.values:D.value[!0===E.value?"am":"pm"].values;if(0===e.length)return;if(null===T.value.hour)le(e[0]);else{let n=(e.length+e.indexOf(T.value.hour)+t)%e.length;le(e[n])}}else{let e=!0===L.value?24:12;le((!0!==L.value&&!1===E.value?12:0)+(24+(null===T.value.hour?-t:T.value.hour)+t)%e)}}}function oe(e){if(13===e.keyCode)C.value="minute";else if([37,39].includes(e.keyCode)){let t=37===e.keyCode?-1:1;if(null!==j.value){let e=j.value.values;if(0===e.length)return;if(null===T.value.minute)ue(e[0]);else{let n=(e.length+e.indexOf(T.value.minute)+t)%e.length;ue(e[n])}}else{ue((60+(null===T.value.minute?-t:T.value.minute)+t)%60)}}}function se(e){if(13===e.keyCode)C.value="second";else if([37,39].includes(e.keyCode)){let t=37===e.keyCode?-1:1;if(null!==B.value){let e=B.value.values;if(0===e.length)return;if(null===T.value.seconds)ce(e[0]);else{let n=(e.length+e.indexOf(T.value.second)+t)%e.length;ce(e[n])}}else{ce((60+(null===T.value.second?-t:T.value.second)+t)%60)}}}function le(e){T.value.hour!==e&&(T.value.hour=e,me())}function ue(e){T.value.minute!==e&&(T.value.minute=e,me())}function ce(e){T.value.second!==e&&(T.value.second=e,me())}let de={hour:le,minute:ue,second:ce};function he(){!1===E.value&&(E.value=!0,null!==T.value.hour&&(T.value.hour-=12,me()))}function pe(){!0===E.value&&(E.value=!1,null!==T.value.hour&&(T.value.hour+=12,me()))}function fe(t){let n=e.modelValue;C.value!==t&&null!=n&&""!==n&&"string"!=typeof n&&(C.value=t)}function me(){return null!==O.value&&!0!==O.value(T.value.hour)?(T.value=co(),void fe("hour")):null!==I.value&&!0!==I.value(T.value.minute)?(T.value.minute=null,T.value.second=null,void fe("minute")):!0===e.withSeconds&&null!==q.value&&!0!==q.value(T.value.second)?(T.value.second=null,void fe("second")):void(null===T.value.hour||null===T.value.minute||!0===e.withSeconds&&null===T.value.second||ge())}function ge(t){let n=Object.assign({...T.value},t),a="persian"===e.calendar?et(n.hour)+":"+et(n.minute)+(!0===e.withSeconds?":"+et(n.second):""):wo(new Date(n.year,null===n.month?null:n.month-1,n.day,n.hour,n.minute,n.second,n.millisecond),b.value,y.value,n.year,n.timezoneOffset);n.changed=a!==e.modelValue,o("update:modelValue",a,n)}function _e(){let t=[n("div",{class:"q-time__link "+("hour"===C.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onClick:ee.hour,onKeyup:re},M.value.hour),n("div",":"),n("div",!0===z.value?{class:"q-time__link "+("minute"===C.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onKeyup:oe,onClick:ee.minute}:{class:"q-time__link"},M.value.minute)];!0===e.withSeconds&&t.push(n("div",":"),n("div",!0===N.value?{class:"q-time__link "+("second"===C.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onKeyup:se,onClick:ee.second}:{class:"q-time__link"},M.value.second));let a=[n("div",{class:"q-time__header-label row items-center no-wrap",dir:"ltr"},t)];return!1===L.value&&a.push(n("div",{class:"q-time__header-ampm column items-between no-wrap"},[n("div",{class:"q-time__link "+(!0===E.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onClick:he,onKeyup:te},"AM"),n("div",{class:"q-time__link "+(!0!==E.value?"q-time__link--active":"cursor-pointer"),tabindex:p.value,onClick:pe,onKeyup:ne},"PM")])),n("div",{class:"q-time__header flex flex-center no-wrap "+f.value},a)}function ve(){let t=T.value[C.value];return n("div",{class:"q-time__content col relative-position"},[n(S,{name:"q-transition--scale"},()=>n("div",{key:"clock"+C.value,class:"q-time__container-parent absolute-full"},[n("div",{ref:v,class:"q-time__container-child fit overflow-hidden"},[A(n("div",{class:"q-time__clock cursor-pointer non-selectable",onClick:ae,onMousedown:ie},[n("div",{class:"q-time__clock-circle fit"},[n("div",{class:"q-time__clock-pointer"+(null===T.value[C.value]?" hidden":void 0!==e.color?` text-${e.color}`:""),style:R.value}),$.value.map(e=>n("div",{class:`q-time__clock-position row flex-center q-time__clock-pos-${e.index}`+(e.val===t?" q-time__clock-position--active "+f.value:!0===e.disable?" q-time__clock-position--disable":"")},[n("span",e.label)]))])]),V.value)])])),!0===e.nowBtn?n(An,{class:"q-time__now-button absolute",icon:c.iconSet.datetime.now,unelevated:!0,size:"sm",round:!0,color:e.color,textColor:e.textColor,tabindex:p.value,onClick:U}):null])}return u.proxy.setNow=U,()=>{let a=[ve()],i=dt(t.default);return void 0!==i&&a.push(n("div",{class:"q-time__actions"},i)),void 0!==e.name&&!0!==e.disable&&_(a,"push"),n("div",{class:P.value,tabindex:-1},[_e(),n("div",{class:"q-time__main col overflow-auto"},a)])}}}),Vc=$({name:"QTimeline",props:{...Nt,color:{type:String,default:"primary"},side:{type:String,default:"right",validator:e=>["left","right"].includes(e)},layout:{type:String,default:"dense",validator:e=>["dense","comfortable","loose"].includes(e)}},setup(e,{slots:t}){let a=k(),r=Ot(e,a.proxy.$q);w(Ee,e);let o=i(()=>`q-timeline q-timeline--${e.layout} q-timeline--${e.layout}--${e.side}`+(!0===r.value?" q-timeline--dark":""));return()=>n("ul",{class:o.value},dt(t.default))}}),Uc=$({name:"QTimelineEntry",props:{heading:Boolean,tag:{type:String,default:"h3"},side:{type:String,default:"right",validator:e=>["left","right"].includes(e)},icon:String,avatar:String,color:String,title:String,subtitle:String,body:String},setup(e,{slots:t}){let a=y(Ee,Oe);if(a===Oe)return console.error("QTimelineEntry needs to be child of QTimeline"),Oe;let r=i(()=>`q-timeline__entry q-timeline__entry--${e.side}`+(void 0!==e.icon||void 0!==e.avatar?" q-timeline__entry--icon":"")),o=i(()=>`q-timeline__dot text-${e.color||a.color}`),s=i(()=>"comfortable"===a.layout&&"left"===a.side);return()=>{let a,i=ht(t.default,[]);if(void 0!==e.body&&i.unshift(e.body),!0===e.heading){let t=[n("div"),n("div"),n(e.tag,{class:"q-timeline__heading-title"},i)];return n("div",{class:"q-timeline__heading"},!0===s.value?t.reverse():t)}void 0!==e.icon?a=[n(Mt,{class:"row items-center justify-center",name:e.icon})]:void 0!==e.avatar&&(a=[n("img",{class:"q-timeline__dot-img",src:e.avatar})]);let l=[n("div",{class:"q-timeline__subtitle"},[n("span",{},dt(t.subtitle,[e.subtitle]))]),n("div",{class:o.value},a),n("div",{class:"q-timeline__content"},[n("h6",{class:"q-timeline__title"},dt(t.title,[e.title]))].concat(i))];return n("li",{class:r.value},!0===s.value?l.reverse():l)}}}),Hc=$({name:"QToolbar",props:{inset:Boolean},setup(e,{slots:t}){let a=i(()=>"q-toolbar row no-wrap items-center"+(!0===e.inset?" q-toolbar--inset":""));return()=>n("div",{class:a.value,role:"toolbar"},dt(t.default))}}),Wc=$({name:"QToolbarTitle",props:{shrink:Boolean},setup(e,{slots:t}){let a=i(()=>"q-toolbar__title ellipsis"+(!0===e.shrink?" col-shrink":""));return()=>n("div",{class:a.value},dt(t.default))}}),Gc=["none","strict","leaf","leaf-filtered"],Yc=$({name:"QTree",props:{...Nt,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:"label"},childrenKey:{type:String,default:"children"},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:"none",validator:e=>Gc.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{},noConnectors:Boolean,noTransition:Boolean,noNodesLabel:String,noResultsLabel:String},emits:["update:expanded","update:ticked","update:selected","lazyLoad","afterShow","afterHide"],setup(e,{slots:t,emit:o}){let{proxy:s}=k(),{$q:l}=s,u=Ot(e,l),c=a({}),h=a(e.ticked||[]),p=a(e.expanded||[]),f={};v(()=>{f={}});let m=i(()=>"q-tree q-tree--"+(!0===e.dense?"dense":"standard")+(!0===e.noConnectors?" q-tree--no-connectors":"")+(!0===u.value?" q-tree--dark":"")+(void 0!==e.color?` text-${e.color}`:"")),g=i(()=>void 0!==e.selected),_=i(()=>e.icon||l.iconSet.tree.icon),b=i(()=>e.controlColor||e.color),y=i(()=>void 0!==e.textColor?` text-${e.textColor}`:""),w=i(()=>{let t=e.selectedColor||e.color;return t?` text-${t}`:""}),x=i(()=>void 0!==e.filterMethod?e.filterMethod:(t,n)=>{let a=n.toLowerCase();return t[e.labelKey]&&-1!==t[e.labelKey].toLowerCase().indexOf(a)}),S=i(()=>{let t={},n=(a,i)=>{let r=a.tickStrategy||(i?i.tickStrategy:e.tickStrategy),o=a[e.nodeKey],s=a[e.childrenKey]&&Array.isArray(a[e.childrenKey])&&0!==a[e.childrenKey].length,l=!0!==a.disabled&&!0===g.value&&!1!==a.selectable,u=!0!==a.disabled&&!1!==a.expandable,d="none"!==r,f="strict"===r,m="leaf-filtered"===r,_="leaf"===r||"leaf-filtered"===r,v=!0!==a.disabled&&!1!==a.tickable;!0===_&&!0===v&&i&&!0!==i.tickable&&(v=!1);let b=a.lazy;!0===b&&void 0!==c.value[o]&&!0===Array.isArray(a[e.childrenKey])&&(b=c.value[o]);let y={key:o,parent:i,isParent:s,lazy:b,disabled:a.disabled,link:!0!==a.disabled&&(!0===l||!0===u&&(!0===s||!0===b)),children:[],matchesFilter:!e.filter||x.value(a,e.filter),selected:o===e.selected&&!0===l,selectable:l,expanded:!0===s&&p.value.includes(o),expandable:u,noTick:!0===a.noTick||!0!==f&&b&&"loaded"!==b,tickable:v,tickStrategy:r,hasTicking:d,strictTicking:f,leafFilteredTicking:m,leafTicking:_,ticked:(!0===f||!0!==s)&&h.value.includes(o)};if(t[o]=y,!0===s&&(y.children=a[e.childrenKey].map(e=>n(e,y)),e.filter&&(!0!==y.matchesFilter?y.matchesFilter=y.children.some(e=>e.matchesFilter):!0!==y.noTick&&!0!==y.disabled&&!0===y.tickable&&!0===m&&!0===y.children.every(e=>!0!==e.matchesFilter||!0===e.noTick||!0!==e.tickable)&&(y.tickable=!1)),!0===y.matchesFilter&&(!0!==y.noTick&&!0!==f&&!0===y.children.every(e=>e.noTick)&&(y.noTick=!0),_))){if(y.ticked=!1,y.indeterminate=y.children.some(e=>!0===e.indeterminate),y.tickable=!0===y.tickable&&y.children.some(e=>e.tickable),!0!==y.indeterminate){let e=y.children.reduce((e,t)=>!0===t.ticked?e+1:e,0);e===y.children.length?y.ticked=!0:e>0&&(y.indeterminate=!0)}!0===y.indeterminate&&(y.indeterminateNextState=y.children.every(e=>!0!==e.tickable||!0!==e.ticked))}return y};return e.nodes.forEach(e=>n(e,null)),t});function C(t){let n=[].reduce,a=(i,r)=>i||!r?i:!0===Array.isArray(r)?n.call(Object(r),a,i):r[e.nodeKey]===t?r:r[e.childrenKey]?a(null,r[e.childrenKey]):void 0;return a(null,e.nodes)}function T(){let t=[],n=a=>{a[e.childrenKey]&&0!==a[e.childrenKey].length&&!1!==a.expandable&&!0!==a.disabled&&(t.push(a[e.nodeKey]),a[e.childrenKey].forEach(n))};e.nodes.forEach(n),void 0!==e.expanded?o("update:expanded",t):p.value=t}function E(t,n,a=C(t),i=S.value[t]){if(i.lazy&&"loaded"!==i.lazy){if("loading"===i.lazy)return;c.value[t]="loading",!0!==Array.isArray(a[e.childrenKey])&&(a[e.childrenKey]=[]),o("lazyLoad",{node:a,key:t,done:n=>{c.value[t]="loaded",a[e.childrenKey]=!0===Array.isArray(n)?n:[],d(()=>{!0===S.value[t]?.isParent&&P(t,!0)})},fail:()=>{delete c.value[t],0===a[e.childrenKey].length&&delete a[e.childrenKey]}})}else!0===i.isParent&&!0===i.expandable&&P(t,n)}function P(t,n){let a=p.value,i=void 0!==e.expanded;if(!0===i&&(a=a.slice()),n){if(e.accordion&&S.value[t]){let n=[];S.value[t].parent?S.value[t].parent.children.forEach(e=>{e.key!==t&&!0===e.expandable&&n.push(e.key)}):e.nodes.forEach(a=>{let i=a[e.nodeKey];i!==t&&n.push(i)}),0!==n.length&&(a=a.filter(e=>!1===n.includes(e)))}a=a.concat([t]).filter((e,t,n)=>n.indexOf(e)===t)}else a=a.filter(e=>e!==t);!0===i?o("update:expanded",a):p.value=a}function L(t,n){let a=h.value,i=void 0!==e.ticked;!0===i&&(a=a.slice()),a=n?a.concat(t).filter((e,t,n)=>n.indexOf(e)===t):a.filter(e=>!1===t.includes(e)),!0===i&&o("update:ticked",a)}function R(a){return(e.filter?a.filter(t=>S.value[t[e.nodeKey]].matchesFilter):a).map(a=>function(a){let i=a[e.nodeKey],r=S.value[i],o=a.header&&t[`header-${a.header}`]||t["default-header"],l=!0===r.isParent?R(a[e.childrenKey]):[],c=0!==l.length||r.lazy&&"loaded"!==r.lazy,d=a.body&&t[`body-${a.body}`]||t["default-body"],h=void 0!==o||void 0!==d?function(t,n,a){let i={tree:s,node:t,key:a,color:e.color,dark:u.value};return z(i,"expanded",()=>n.expanded,e=>{e!==n.expanded&&E(a,e)}),z(i,"ticked",()=>n.ticked,e=>{e!==n.ticked&&L([a],e)}),i}(a,r,i):null;return void 0!==d&&(d=n("div",{class:"q-tree__node-body relative-position"},[n("div",{class:y.value},[d(h)])])),n("div",{key:i,class:"q-tree__node relative-position q-tree__node--"+(!0===c?"parent":"child")},[n("div",{class:"q-tree__node-header relative-position row no-wrap items-center"+(!0===r.link?" q-tree__node--link q-hoverable q-focusable":"")+(!0===r.selected?" q-tree__node--selected":"")+(!0===r.disabled?" q-tree__node--disabled":""),tabindex:!0===r.link?0:-1,ariaExpanded:l.length>0?r.expanded:null,role:"treeitem",onClick:e=>{D(a,r,e)},onKeypress(e){!0!==he(e)&&(13===e.keyCode?D(a,r,e,!0):32===e.keyCode&&j(a,r,e,!0))}},[n("div",{class:"q-focus-helper",tabindex:-1,ref:e=>{f[r.key]=e}}),"loading"===r.lazy?n(on,{class:"q-tree__spinner",color:b.value}):!0===c?n(Mt,{class:"q-tree__arrow"+(!0===r.expanded?" q-tree__arrow--rotate":""),name:_.value,onClick(e){j(a,r,e)}}):null,!0===r.hasTicking&&!0!==r.noTick?n(ji,{class:"q-tree__tickbox",modelValue:!0===r.indeterminate?null:r.ticked,color:b.value,dark:u.value,dense:!0,keepColor:!0,disable:!0!==r.tickable,onKeydown:J,"onUpdate:modelValue":e=>{!function(e,t){if(!0===e.indeterminate&&(t=e.indeterminateNextState),e.strictTicking)L([e.key],t);else if(e.leafTicking){let n=[],a=e=>{e.isParent?(!0!==t&&!0!==e.noTick&&!0===e.tickable&&n.push(e.key),!0===e.leafTicking&&e.children.forEach(a)):!0!==e.noTick&&!0===e.tickable&&(!0!==e.leafFilteredTicking||!0===e.matchesFilter)&&n.push(e.key)};a(e),L(n,t)}}(r,e)}}):null,n("div",{class:"q-tree__node-header-content col row no-wrap items-center"+(!0===r.selected?w.value:y.value)},[o?o(h):[N(a),n("div",a[e.labelKey])]])]),!0===c?!0===e.noTransition?!0===r.expanded?n("div",{class:"q-tree__node-collapsible"+y.value,key:`${i}__q`},[d,n("div",{class:"q-tree__children"+(!0===r.disabled?" q-tree__node--disabled":""),role:"group"},l)]):null:n(vs,{duration:e.duration,onShow:O,onHide:I},()=>A(n("div",{class:"q-tree__node-collapsible"+y.value,key:`${i}__q`},[d,n("div",{class:"q-tree__children"+(!0===r.disabled?" q-tree__node--disabled":""),role:"group"},l)]),[[M,r.expanded]])):d])}(a))}function N(e){if(void 0!==e.icon)return n(Mt,{class:"q-tree__icon q-mr-sm",name:e.icon,color:e.iconColor});let t=e.img||e.avatar;return t?n("img",{class:`q-tree__${e.img?"img":"avatar"} q-mr-sm`,src:t}):void 0}function O(){o("afterShow")}function I(){o("afterHide")}function q(e){f[e]?.focus()}function D(t,n,a,i){!0!==i&&!1!==n.selectable&&q(n.key),g.value&&n.selectable?!1===e.noSelectionUnset?o("update:selected",n.key!==e.selected?n.key:null):n.key!==e.selected&&o("update:selected",void 0===n.key?null:n.key):j(t,n,a,i),"function"==typeof t.handler&&t.handler(t)}function j(e,t,n,a){void 0!==n&&J(n),!0!==a&&!1!==t.selectable&&q(t.key),E(t.key,!t.expanded,e,t)}return r(()=>e.ticked,e=>{h.value=e}),r(()=>e.expanded,e=>{p.value=e}),!0===e.defaultExpandAll&&T(),Object.assign(s,{getNodeByKey:C,getTickedNodes:function(){return h.value.map(e=>C(e))},getExpandedNodes:function(){return p.value.map(e=>C(e))},isExpanded:function(e){return!(!e||!S.value[e])&&S.value[e].expanded},collapseAll:function(){void 0!==e.expanded?o("update:expanded",[]):p.value=[]},expandAll:T,setExpanded:E,isTicked:function(e){return!(!e||!S.value[e])&&S.value[e].ticked},setTicked:L}),()=>{let t=R(e.nodes);return n("div",{class:m.value,role:"tree"},0===t.length?e.filter?e.noResultsLabel||l.lang.tree.noResults:e.noNodesLabel||l.lang.tree.noNodes:t)}}});function Kc(e){return(100*e).toFixed(2)+"%"}var Qc={...Nt,...Ws,label:String,color:String,textColor:String,square:Boolean,flat:Boolean,bordered:Boolean,noThumbnails:Boolean,thumbnailFit:{type:String,default:"cover"},autoUpload:Boolean,hideUploadBtn:Boolean,disable:Boolean,readonly:Boolean},Zc=[...Gs,"start","finish","added","removed"];var Jc=()=>!0;function Xc(e){let t={};return e.forEach(e=>{t[e]=Jc}),t}var ed=Xc(Zc),td=({name:e,props:t,emits:s,injectPlugin:l})=>$({name:e,props:{...Qc,...t},emits:!0===je(s)?{...ed,...s}:[...Zc,...s],setup:(e,{expose:t})=>function(e,t){let s=k(),{props:l,slots:u,emit:c,proxy:d}=s,{$q:h}=d,p=Ot(l,h),f=i(()=>!0!==l.disable&&!0!==l.readonly),m=a(!1),_=a(null),v=a(null),b={files:a([]),queuedFiles:a([]),uploadedFiles:a([]),uploadedSize:a(0),updateFileStatus:function(e,t,n){if(e.__status=t,"idle"===t)return e.__uploaded=0,e.__progress=0,e.__sizeLabel=Qe(e.size),void(e.__progressLabel="0.00%");"failed"!==t?(e.__uploaded="uploaded"===t?e.size:n,e.__progress="uploaded"===t?1:Math.min(.9999,e.__uploaded/e.size),e.__progressLabel=Kc(e.__progress),d.$forceUpdate()):d.$forceUpdate()},isAlive:()=>!1===Wt(s)},{pickFiles:y,addFiles:x,onDragover:S,onDragleave:C,processFiles:T,getDndNode:E,maxFilesNumber:P,maxTotalSizeNumber:A}=Ys({editable:f,dnd:m,getFileInput:W,addFilesToQueue:G});Object.assign(b,e({props:l,slots:u,emit:c,helpers:b,exposeApi:e=>{Object.assign(b,e)}})),void 0===b.isBusy&&(b.isBusy=a(!1));let M=a(0),L=i(()=>0===M.value?0:b.uploadedSize.value/M.value),R=i(()=>Kc(L.value)),O=i(()=>Qe(M.value)),I=i(()=>!0===f.value&&!0!==b.isUploading.value&&(!0===l.multiple||0===b.queuedFiles.value.length)&&(void 0===l.maxFiles||b.files.value.length!0===f.value&&!0!==b.isBusy.value&&!0!==b.isUploading.value&&0!==b.queuedFiles.value.length);w(Ne,Z);let D=i(()=>"q-uploader column no-wrap"+(!0===p.value?" q-uploader--dark q-dark":"")+(!0===l.bordered?" q-uploader--bordered":"")+(!0===l.square?" q-uploader--square no-border-radius":"")+(!0===l.flat?" q-uploader--flat no-shadow":"")+(!0===l.disable?" disabled q-uploader--disable":"")+(!0===m.value?" q-uploader--dnd":"")),j=i(()=>"q-uploader__header"+(void 0!==l.color?` bg-${l.color}`:"")+(void 0!==l.textColor?` text-${l.textColor}`:""));function B(){!1===l.disable&&(b.abort(),b.uploadedSize.value=0,M.value=0,H(),b.files.value=[],b.queuedFiles.value=[],b.uploadedFiles.value=[])}function F(){!1===l.disable&&V(["uploaded"],()=>{b.uploadedFiles.value=[]})}function $(){V(["idle","failed"],({size:e})=>{M.value-=e,b.queuedFiles.value=[]})}function V(e,t){if(!0===l.disable)return;let n={files:[],size:0},a=b.files.value.filter(t=>-1===e.indexOf(t.__status)||(n.size+=t.size,n.files.push(t),void 0!==t.__img&&window.URL.revokeObjectURL(t.__img.src),!1));0!==n.files.length&&(b.files.value=a,t(n),c("removed",n.files))}function U(e){l.disable||("uploaded"===e.__status?b.uploadedFiles.value=b.uploadedFiles.value.filter(t=>t.__key!==e.__key):"uploading"===e.__status?e.__abort():M.value-=e.size,b.files.value=b.files.value.filter(t=>t.__key!==e.__key||(void 0!==t.__img&&window.URL.revokeObjectURL(t.__img.src),!1)),b.queuedFiles.value=b.queuedFiles.value.filter(t=>t.__key!==e.__key),c("removed",[e]))}function H(){b.files.value.forEach(e=>{void 0!==e.__img&&window.URL.revokeObjectURL(e.__img.src)})}function W(){return v.value||_.value.getElementsByClassName("q-uploader__input")[0]}function G(e,t){let n=T(e,t,b.files.value,!0),a=W();null!=a&&(a.value=""),void 0!==n&&(n.forEach(e=>{if(b.updateFileStatus(e,"idle"),M.value+=e.size,!0!==l.noThumbnails&&e.type.toUpperCase().startsWith("IMAGE")){let t=new Image;t.src=window.URL.createObjectURL(e),e.__img=t}}),b.files.value=b.files.value.concat(n),b.queuedFiles.value=b.queuedFiles.value.concat(n),c("added",n),!0===l.autoUpload&&b.upload())}function Y(){!0===q.value&&b.upload()}function K(e,t,a){if(!0===e){let e,i={type:"a",key:t,icon:h.iconSet.uploader[t],flat:!0,dense:!0};return"add"===t?(i.onClick=y,e=Z):i.onClick=a,n(An,i,e)}}function Z(){return n("input",{ref:v,class:"q-uploader__input overflow-hidden absolute-full",tabindex:-1,type:"file",title:"",accept:l.accept,multiple:!0===l.multiple?"multiple":void 0,capture:l.capture,onMousedown:Q,onClick:y,onChange:G})}r(b.isUploading,(e,t)=>{!1===t&&!0===e?c("start"):!0===t&&!1===e&&c("finish")}),g(()=>{!0===b.isUploading.value&&b.abort(),0!==b.files.value.length&&H()});let J={};for(let e in b)!0===o(b[e])?z(J,e,()=>b[e].value):J[e]=b[e];return Object.assign(J,{upload:Y,reset:B,removeUploadedFiles:F,removeQueuedFiles:$,removeFile:U,pickFiles:y,addFiles:x}),N(J,{canAddFiles:()=>I.value,canUpload:()=>q.value,uploadSizeLabel:()=>O.value,uploadProgressLabel:()=>R.value}),t({...b,upload:Y,reset:B,removeUploadedFiles:F,removeQueuedFiles:$,removeFile:U,pickFiles:y,addFiles:x,canAddFiles:I,canUpload:q,uploadSizeLabel:O,uploadProgressLabel:R}),()=>{let e=[n("div",{class:j.value},void 0!==u.header?u.header(J):[n("div",{class:"q-uploader__header-content column"},[n("div",{class:"flex flex-center no-wrap q-gutter-xs"},[K(0!==b.queuedFiles.value.length,"removeQueue",$),K(0!==b.uploadedFiles.value.length,"removeUploaded",F),!0===b.isUploading.value?n(on,{class:"q-uploader__spinner"}):null,n("div",{class:"col column justify-center"},[void 0!==l.label?n("div",{class:"q-uploader__title"},[l.label]):null,n("div",{class:"q-uploader__subtitle"},[O.value+" / "+R.value])]),K(I.value,"add"),K(!1===l.hideUploadBtn&&!0===q.value,"upload",b.upload),K(b.isUploading.value,"clear",b.abort)])])]),n("div",{class:"q-uploader__list scroll"},void 0!==u.list?u.list(J):b.files.value.map(e=>n("div",{key:e.__key,class:"q-uploader__file relative-position"+(!0!==l.noThumbnails&&void 0!==e.__img?" q-uploader__file--img":"")+("failed"===e.__status?" q-uploader__file--failed":"uploaded"===e.__status?" q-uploader__file--uploaded":""),style:!0!==l.noThumbnails&&void 0!==e.__img?{backgroundImage:'url("'+e.__img.src+'")',backgroundSize:l.thumbnailFit}:null},[n("div",{class:"q-uploader__file-header row flex-center no-wrap"},["failed"===e.__status?n(Mt,{class:"q-uploader__file-status",name:h.iconSet.type.negative,color:"negative"}):null,n("div",{class:"q-uploader__file-header-content col"},[n("div",{class:"q-uploader__title"},[e.name]),n("div",{class:"q-uploader__subtitle row items-center no-wrap"},[e.__sizeLabel+" / "+e.__progressLabel])]),"uploading"===e.__status?n(Hi,{value:e.__progress,min:0,max:1,indeterminate:0===e.__progress}):n(An,{round:!0,dense:!0,flat:!0,icon:h.iconSet.uploader["uploaded"===e.__status?"done":"clear"],onClick:()=>{U(e)}})])]))),E("uploader")];!0===b.isBusy.value&&e.push(n("div",{class:"q-uploader__overlay absolute-full flex flex-center"},[n(on)]));let t={ref:_,class:D.value};return!0===I.value&&Object.assign(t,{onDragover:S,onDragleave:C}),n("div",t,e)}}(l,t)});function nd(e){return"function"==typeof e?e:()=>e}var ad={url:[Function,String],method:{type:[Function,String],default:"POST"},fieldName:{type:[Function,String],default:()=>e=>e.name},headers:[Function,Array],formFields:[Function,Array],withCredentials:[Function,Boolean],sendRaw:[Function,Boolean],batch:[Function,Boolean],factory:Function};var id={name:"QUploader",props:ad,emits:["factoryFailed","uploaded","failed","uploading"],injectPlugin:function({props:e,emit:t,helpers:n}){let r,o=a([]),s=a([]),l=a(0),u=i(()=>({url:nd(e.url),method:nd(e.method),headers:nd(e.headers),formFields:nd(e.formFields),fieldName:nd(e.fieldName),withCredentials:nd(e.withCredentials),sendRaw:nd(e.sendRaw),batch:nd(e.batch)}));function c(a){if(l.value++,"function"!=typeof e.factory)return void d(a,{});let i=e.factory(a);if(i)if("function"==typeof i.catch&&"function"==typeof i.then){s.value.push(i);let e=e=>{!0===n.isAlive()&&(s.value=s.value.filter(e=>e!==i),0===s.value.length&&(r=!1),n.queuedFiles.value=n.queuedFiles.value.concat(a),a.forEach(e=>{n.updateFileStatus(e,"failed")}),t("factoryFailed",e,a),l.value--)};i.then(t=>{!0===r?e(new Error("Aborted")):!0===n.isAlive()&&(s.value=s.value.filter(e=>e!==i),d(a,t))}).catch(e)}else d(a,i||{});else t("factoryFailed",new Error("QUploader: factory() does not return properly"),a),l.value--}function d(e,a){let i=new FormData,r=new XMLHttpRequest,s=(e,t)=>void 0!==a[e]?nd(a[e])(t):u.value[e](t),c=s("url",e);if(!c)return console.error("q-uploader: invalid or no URL specified"),void l.value--;let d=s("formFields",e);void 0!==d&&d.forEach(e=>{i.append(e.name,e.value)});let h,p=0,f=0,m=0,g=0;r.upload.addEventListener("progress",t=>{if(!0===h)return;let a=Math.min(g,t.loaded);n.uploadedSize.value+=a-m,m=a;let i=m-f;for(let t=p;i>0&&ta.size))return void n.updateFileStatus(a,"uploading",i);i-=a.size,p++,f+=a.size,n.updateFileStatus(a,"uploading",a.size)}},!1),r.onreadystatechange=()=>{r.readyState<4||(r.status&&r.status<400?(n.uploadedFiles.value=n.uploadedFiles.value.concat(e),e.forEach(e=>{n.updateFileStatus(e,"uploaded")}),t("uploaded",{files:e,xhr:r})):(h=!0,n.uploadedSize.value-=m,n.queuedFiles.value=n.queuedFiles.value.concat(e),e.forEach(e=>{n.updateFileStatus(e,"failed")}),t("failed",{files:e,xhr:r})),l.value--,o.value=o.value.filter(e=>e!==r))},r.open(s("method",e),c),!0===s("withCredentials",e)&&(r.withCredentials=!0);let _=s("headers",e);void 0!==_&&_.forEach(e=>{r.setRequestHeader(e.name,e.value)});let v=s("sendRaw",e);e.forEach(e=>{n.updateFileStatus(e,"uploading",0),!0!==v&&i.append(s("fieldName",e),e,e.name),e.xhr=r,e.__abort=()=>{r.abort()},g+=e.size}),t("uploading",{files:e,xhr:r}),o.value.push(r),!0===v?r.send(new Blob(e)):r.send(i)}return{isUploading:i(()=>l.value>0),isBusy:i(()=>0!==s.value.length),abort:function(){o.value.forEach(e=>{e.abort()}),0!==s.value.length&&(r=!0)},upload:function(){let e=n.queuedFiles.value.slice(0);n.queuedFiles.value=[],u.value.batch(e)?c(e):e.forEach(e=>{c([e])})}}}},rd=td(id),od=$({name:"QUploaderAddTrigger",setup(){let e=y(Ne,Oe);return e===Oe&&console.error("QUploaderAddTrigger needs to be child of QUploader"),e}}),sd=$({name:"QVideo",props:{...tl,src:{type:String,required:!0},title:String,fetchpriority:{type:String,default:"auto"},loading:{type:String,default:"eager"},referrerpolicy:{type:String,default:"strict-origin-when-cross-origin"}},setup(e){let t=nl(e),a=i(()=>"q-video"+(void 0!==e.ratio?" q-video--responsive":""));return()=>n("div",{class:a.value,style:t.value},[n("iframe",{src:e.src,title:e.title,fetchpriority:e.fetchpriority,loading:e.loading,referrerpolicy:e.referrerpolicy,frameborder:"0",allowfullscreen:!0})])}}),ld={};function ud(e){if(!1===e)return 0;if(!0===e||void 0===e)return 1;let t=parseInt(e,10);return isNaN(t)?0:t}t(ld,{ClosePopup:()=>dd,Intersection:()=>Tl,Morph:()=>zd,Mutation:()=>qd,Ripple:()=>mn,Scroll:()=>$d,ScrollFire:()=>Bd,TouchHold:()=>Vd,TouchPan:()=>Yi,TouchRepeat:()=>Gd,TouchSwipe:()=>_i});var cd,dd=V({name:"close-popup",beforeMount(e,{value:t}){let n={depth:ud(t),handler(t){0!==n.depth&&setTimeout(()=>{let a=function(e){return Qn.find(t=>null!==t.contentEl&&t.contentEl.contains(e))}(e);void 0!==a&&function(e,t,n){for(;0!==n&&null!=e;){if(!0===e.__qPortal){if(n--,"QMenu"===e.$options.name){e=Zn(e,t);continue}e.hide(t)}e=$t(e)}}(a,t,n.depth)})},handlerKey(e){!0===pe(e,13)&&n.handler(e)}};e.__qclosepopup=n,e.addEventListener("click",n.handler),e.addEventListener("keyup",n.handlerKey)},updated(e,{value:t,oldValue:n}){t!==n&&(e.__qclosepopup.depth=ud(t))},beforeUnmount(e){let t=e.__qclosepopup;e.removeEventListener("click",t.handler),e.removeEventListener("keyup",t.handlerKey),delete e.__qclosepopup}}),hd=0;function pd(e,t){void 0===cd&&((cd=document.createElement("div")).style.cssText="position: absolute; left: 0; top: 0",document.body.appendChild(cd));let n=e.getBoundingClientRect(),a=cd.getBoundingClientRect(),{marginLeft:i,marginRight:r,marginTop:o,marginBottom:s}=window.getComputedStyle(e),l=parseInt(i,10)+parseInt(r,10),u=parseInt(o,10)+parseInt(s,10);return{left:n.left-a.left,top:n.top-a.top,width:n.right-n.left,height:n.bottom-n.top,widthM:n.right-n.left+(!0===t?0:l),heightM:n.bottom-n.top+(!0===t?0:u),marginH:!0===t?l:0,marginV:!0===t?u:0}}function fd(e){return{width:e.scrollWidth,height:e.scrollHeight}}var md=["Top","Right","Bottom","Left"],gd=["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],_d=/-block|-inline|block-|inline-/,vd=/(-block|-inline|block-|inline-).*:/;function bd(e,t){let n=window.getComputedStyle(e),a={};for(let e=0;e!0!==vd.test(e)).join(";"):n[i]}return a}var yd=["absolute","fixed","relative","sticky"];function wd(e){let t=e,n=0;for(;null!==t&&t!==document;){let{position:a,zIndex:i}=window.getComputedStyle(t),r=Number(i);r>n&&(t===e||!0===yd.includes(a))&&(n=r),t=t.parentNode}return n}function kd(e){let t=typeof e;return"function"===t?e():"string"===t?document.querySelector(e):e}function xd(e){return e&&e.ownerDocument===document&&null!==e.parentNode}function Sd(e){let t=()=>!1,n=!1,a=!0,i=function(e){return{from:e.from,to:void 0!==e.to?e.to:e.from}}(e),r=function(e){return"number"==typeof e?e={duration:e}:"function"==typeof e&&(e={onEnd:e}),{...e,waitFor:void 0===e.waitFor?0:e.waitFor,duration:!0===isNaN(e.duration)?300:parseInt(e.duration,10),easing:"string"==typeof e.easing&&0!==e.easing.length?e.easing:"ease-in-out",delay:!0===isNaN(e.delay)?0:parseInt(e.delay,10),fill:"string"==typeof e.fill&&0!==e.fill.length?e.fill:"none",resize:!0===e.resize,useCSS:!0===e.useCSS||!0===e.usecss,hideFromClone:!0===e.hideFromClone||!0===e.hidefromclone,keepToClone:!0===e.keepToClone||!0===e.keeptoclone,tween:!0===e.tween,tweenFromOpacity:!0===isNaN(e.tweenFromOpacity)?.6:parseFloat(e.tweenFromOpacity),tweenToOpacity:!0===isNaN(e.tweenToOpacity)?.5:parseFloat(e.tweenToOpacity)}}(e),o=kd(i.from);if(!0!==xd(o))return t;"function"==typeof o.qMorphCancel&&o.qMorphCancel();let s,l,u,c,d=o.parentNode,h=o.nextElementSibling,p=pd(o,r.resize),{width:f,height:m}=fd(d),{borderWidth:g,borderStyle:_,borderColor:v,borderRadius:b,backgroundColor:y,transform:w,position:k,cssText:x}=bd(o,["borderWidth","borderStyle","borderColor","borderRadius","backgroundColor","transform","position","cssText"]),S=o.classList.toString(),C=o.style.cssText,T=o.cloneNode(!0),E=!0===r.tween?o.cloneNode(!0):void 0;void 0!==E&&(E.className=E.classList.toString().split(" ").filter(e=>!1===/^bg-/.test(e)).join(" ")),!0===r.hideFromClone&&T.classList.add("q-morph--internal"),T.setAttribute("aria-hidden","true"),T.style.transition="none",T.style.animation="none",T.style.pointerEvents="none",d.insertBefore(T,h),o.qMorphCancel=()=>{n=!0,T.remove(),E?.remove(),!0===r.hideFromClone&&T.classList.remove("q-morph--internal"),o.qMorphCancel=void 0};return"function"==typeof e.onToggle&&e.onToggle(),requestAnimationFrame(()=>{let e=kd(i.to);if(!0===n||!0!==xd(e))return void("function"==typeof o.qMorphCancel&&o.qMorphCancel());o!==e&&"function"==typeof e.qMorphCancel&&e.qMorphCancel(),!0!==r.keepToClone&&e.classList.add("q-morph--internal"),T.classList.add("q-morph--internal");let{width:h,height:P}=fd(d),{width:A,height:M}=fd(e.parentNode);!0!==r.hideFromClone&&T.classList.remove("q-morph--internal"),e.qMorphCancel=()=>{n=!0,T.remove(),E?.remove(),!0===r.hideFromClone&&T.classList.remove("q-morph--internal"),!0!==r.keepToClone&&e.classList.remove("q-morph--internal"),o.qMorphCancel=void 0,e.qMorphCancel=void 0};let L=()=>{if(!0===n)return void("function"==typeof e.qMorphCancel&&e.qMorphCancel());!0!==r.hideFromClone&&(T.classList.add("q-morph--internal"),T.innerHTML="",T.style.left=0,T.style.right="unset",T.style.top=0,T.style.bottom="unset",T.style.transform="none"),!0!==r.keepToClone&&e.classList.remove("q-morph--internal");let i=e.parentNode,{width:L,height:R}=fd(i),z=e.cloneNode(r.keepToClone);z.setAttribute("aria-hidden","true"),!0!==r.keepToClone&&(z.style.left=0,z.style.right="unset",z.style.top=0,z.style.bottom="unset",z.style.transform="none",z.style.pointerEvents="none"),z.classList.add("q-morph--internal");let N=e===o&&d===i?T:e.nextElementSibling;i.insertBefore(z,N);let{borderWidth:O,borderStyle:I,borderColor:q,borderRadius:D,backgroundColor:j,transform:B,position:F,cssText:$}=bd(e,["borderWidth","borderStyle","borderColor","borderRadius","backgroundColor","transform","position","cssText"]),V=e.classList.toString(),U=e.style.cssText;e.style.cssText=$,e.style.transform="none",e.style.animation="none",e.style.transition="none",e.className=V.split(" ").filter(e=>!1===/^bg-/.test(e)).join(" ");let H=pd(e,r.resize),W=p.left-H.left,G=p.top-H.top,Y=p.width/(H.width>0?H.width:10),K=p.height/(H.height>0?H.height:100),Q=f-h,Z=m-P,J=L-A,X=R-M,ee=Math.max(p.widthM,Q),te=Math.max(p.heightM,Z),ne=Math.max(H.widthM,J),ae=Math.max(H.heightM,X),ie=o===e&&!1===["absolute","fixed"].includes(F)&&!1===["absolute","fixed"].includes(k),re="fixed"===F,oe=i;for(;!0!==re&&oe!==document;)re="fixed"===window.getComputedStyle(oe).position,oe=oe.parentNode;if(!0!==r.hideFromClone&&(T.style.display="block",T.style.flex="0 0 auto",T.style.opacity=0,T.style.minWidth="unset",T.style.maxWidth="unset",T.style.minHeight="unset",T.style.maxHeight="unset",T.classList.remove("q-morph--internal")),!0!==r.keepToClone&&(z.style.display="block",z.style.flex="0 0 auto",z.style.opacity=0,z.style.minWidth="unset",z.style.maxWidth="unset",z.style.minHeight="unset",z.style.maxHeight="unset"),z.classList.remove("q-morph--internal"),"string"==typeof r.classes&&(e.className+=" "+r.classes),"string"==typeof r.style)e.style.cssText+=" "+r.style;else if(!0===je(r.style))for(let t in r.style)e.style[t]=r.style[t];let se=wd(T),le=wd(e),ue=!0===re?document.documentElement:{scrollLeft:0,scrollTop:0};e.style.position=!0===re?"fixed":"absolute",e.style.left=H.left-ue.scrollLeft+"px",e.style.right="unset",e.style.top=H.top-ue.scrollTop+"px",e.style.margin=0,!0===r.resize&&(e.style.minWidth="unset",e.style.maxWidth="unset",e.style.minHeight="unset",e.style.maxHeight="unset",e.style.overflow="hidden",e.style.overflowX="hidden",e.style.overflowY="hidden"),document.body.appendChild(e),void 0!==E&&(E.style.cssText=x,E.style.transform="none",E.style.animation="none",E.style.transition="none",E.style.position=e.style.position,E.style.left=p.left-ue.scrollLeft+"px",E.style.right="unset",E.style.top=p.top-ue.scrollTop+"px",E.style.margin=0,E.style.pointerEvents="none",!0===r.resize&&(E.style.minWidth="unset",E.style.maxWidth="unset",E.style.minHeight="unset",E.style.maxHeight="unset",E.style.overflow="hidden",E.style.overflowX="hidden",E.style.overflowY="hidden"),document.body.appendChild(E));let ce=n=>{o===e&&!0!==a?(e.style.cssText=C,e.className=S):(e.style.cssText=U,e.className=V),z.parentNode===i&&i.insertBefore(e,z),T.remove(),z.remove(),E?.remove(),t=()=>!1,o.qMorphCancel=void 0,e.qMorphCancel=void 0,"function"==typeof r.onEnd&&r.onEnd(!0===a?"to":"from",!0===n)};if(!0!==r.useCSS&&"function"==typeof e.animate){let i=!0===r.resize?{transform:`translate(${W}px, ${G}px)`,width:`${ee}px`,height:`${te}px`}:{transform:`translate(${W}px, ${G}px) scale(${Y}, ${K})`},d=!0===r.resize?{width:`${ne}px`,height:`${ae}px`}:{},h=!0===r.resize?{width:`${ee}px`,height:`${te}px`}:{},f=!0===r.resize?{transform:`translate(${-1*W}px, ${-1*G}px)`,width:`${ne}px`,height:`${ae}px`}:{transform:`translate(${-1*W}px, ${-1*G}px) scale(${1/Y}, ${1/K})`},m=void 0!==E?{opacity:r.tweenToOpacity}:{backgroundColor:y},k=void 0!==E?{opacity:1}:{backgroundColor:j};c=e.animate([{margin:0,borderWidth:g,borderStyle:_,borderColor:v,borderRadius:b,zIndex:se,transformOrigin:"0 0",...i,...m},{margin:0,borderWidth:O,borderStyle:I,borderColor:q,borderRadius:D,zIndex:le,transformOrigin:"0 0",transform:B,...d,...k}],{duration:r.duration,easing:r.easing,fill:r.fill,delay:r.delay}),l=void 0===E?void 0:E.animate([{opacity:r.tweenFromOpacity,margin:0,borderWidth:g,borderStyle:_,borderColor:v,borderRadius:b,zIndex:se,transformOrigin:"0 0",transform:w,...h},{opacity:0,margin:0,borderWidth:O,borderStyle:I,borderColor:q,borderRadius:D,zIndex:le,transformOrigin:"0 0",...f}],{duration:r.duration,easing:r.easing,fill:r.fill,delay:r.delay}),s=!0===r.hideFromClone||!0===ie?void 0:T.animate([{margin:`${Z<0?Z/2:0}px ${Q<0?Q/2:0}px`,width:`${ee+p.marginH}px`,height:`${te+p.marginV}px`},{margin:0,width:0,height:0}],{duration:r.duration,easing:r.easing,fill:r.fill,delay:r.delay}),u=!0===r.keepToClone?void 0:z.animate([!0===ie?{margin:`${Z<0?Z/2:0}px ${Q<0?Q/2:0}px`,width:`${ee+p.marginH}px`,height:`${te+p.marginV}px`}:{margin:0,width:0,height:0},{margin:`${X<0?X/2:0}px ${J<0?J/2:0}px`,width:`${ne+H.marginH}px`,height:`${ae+H.marginV}px`}],{duration:r.duration,easing:r.easing,fill:r.fill,delay:r.delay});let x=e=>{s?.cancel(),l?.cancel(),u?.cancel(),c.cancel(),c.removeEventListener("finish",x),c.removeEventListener("cancel",x),ce(e),s=void 0,l=void 0,u=void 0,c=void 0};o.qMorphCancel=()=>{o.qMorphCancel=void 0,n=!0,x()},e.qMorphCancel=()=>{e.qMorphCancel=void 0,n=!0,x()},c.addEventListener("finish",x),c.addEventListener("cancel",x),t=e=>!0!==n&&void 0!==c&&(!0===e?(x(!0),!0):(a=!0!==a,s?.reverse(),l?.reverse(),u?.reverse(),c.reverse(),!0))}else{let i="q-morph-anim-"+ ++hd,s=document.createElement("style"),l=!0===r.resize?`\n transform: translate(${W}px, ${G}px);\n width: ${ee}px;\n height: ${te}px;\n `:`transform: translate(${W}px, ${G}px) scale(${Y}, ${K});`,u=!0===r.resize?`\n width: ${ne}px;\n height: ${ae}px;\n `:"",c=!0===r.resize?`\n width: ${ee}px;\n height: ${te}px;\n `:"",d=!0===r.resize?`\n transform: translate(${-1*W}px, ${-1*G}px);\n width: ${ne}px;\n height: ${ae}px;\n `:`transform: translate(${-1*W}px, ${-1*G}px) scale(${1/Y}, ${1/K});`,h=void 0!==E?`opacity: ${r.tweenToOpacity};`:`background-color: ${y};`,f=void 0!==E?"opacity: 1;":`background-color: ${j};`,m=void 0===E?"":`\n @keyframes ${i}-from-tween {\n 0% {\n opacity: ${r.tweenFromOpacity};\n margin: 0;\n border-width: ${g};\n border-style: ${_};\n border-color: ${v};\n border-radius: ${b};\n z-index: ${se};\n transform-origin: 0 0;\n transform: ${w};\n ${c}\n }\n\n 100% {\n opacity: 0;\n margin: 0;\n border-width: ${O};\n border-style: ${I};\n border-color: ${q};\n border-radius: ${D};\n z-index: ${le};\n transform-origin: 0 0;\n ${d}\n }\n }\n `,k=!0===r.hideFromClone||!0===ie?"":`\n @keyframes ${i}-from {\n 0% {\n margin: ${Z<0?Z/2:0}px ${Q<0?Q/2:0}px;\n width: ${ee+p.marginH}px;\n height: ${te+p.marginV}px;\n }\n\n 100% {\n margin: 0;\n width: 0;\n height: 0;\n }\n }\n `,x=!0===ie?`\n margin: ${Z<0?Z/2:0}px ${Q<0?Q/2:0}px;\n width: ${ee+p.marginH}px;\n height: ${te+p.marginV}px;\n `:"\n margin: 0;\n width: 0;\n height: 0;\n ",S=!0===r.keepToClone?"":`\n @keyframes ${i}-to {\n 0% {\n ${x}\n }\n\n 100% {\n margin: ${X<0?X/2:0}px ${J<0?J/2:0}px;\n width: ${ne+H.marginH}px;\n height: ${ae+H.marginV}px;\n }\n }\n `;s.innerHTML=`\n @keyframes ${i} {\n 0% {\n margin: 0;\n border-width: ${g};\n border-style: ${_};\n border-color: ${v};\n border-radius: ${b};\n background-color: ${y};\n z-index: ${se};\n transform-origin: 0 0;\n ${l}\n ${h}\n }\n\n 100% {\n margin: 0;\n border-width: ${O};\n border-style: ${I};\n border-color: ${q};\n border-radius: ${D};\n background-color: ${j};\n z-index: ${le};\n transform-origin: 0 0;\n transform: ${B};\n ${u}\n ${f}\n }\n }\n\n ${k}\n\n ${m}\n\n ${S}\n `,document.head.appendChild(s);let C="normal";T.style.animation=`${r.duration}ms ${r.easing} ${r.delay}ms ${C} ${r.fill} ${i}-from`,void 0!==E&&(E.style.animation=`${r.duration}ms ${r.easing} ${r.delay}ms ${C} ${r.fill} ${i}-from-tween`),z.style.animation=`${r.duration}ms ${r.easing} ${r.delay}ms ${C} ${r.fill} ${i}-to`,e.style.animation=`${r.duration}ms ${r.easing} ${r.delay}ms ${C} ${r.fill} ${i}`;let P=t=>{t===Object(t)&&t.animationName!==i||(e.removeEventListener("animationend",P),e.removeEventListener("animationcancel",P),ce(),s.remove())};o.qMorphCancel=()=>{o.qMorphCancel=void 0,n=!0,P()},e.qMorphCancel=()=>{e.qMorphCancel=void 0,n=!0,P()},e.addEventListener("animationend",P),e.addEventListener("animationcancel",P),t=t=>!!(!0!==n&&e&&T&&z)&&(!0===t?(P(),!0):(a=!0!==a,C="normal"===C?"reverse":"normal",T.style.animationDirection=C,E.style.animationDirection=C,z.style.animationDirection=C,e.style.animationDirection=C,!0))}};r.waitFor>0||"transitionend"===r.waitFor||r.waitFor===Object(r.waitFor)&&"function"==typeof r.waitFor.then?(r.waitFor>0?new Promise(e=>setTimeout(e,r.waitFor)):"transitionend"===r.waitFor?new Promise(t=>{let n=()=>{null!==a&&(clearTimeout(a),a=null),e&&(e.removeEventListener("transitionend",n),e.removeEventListener("transitioncancel",n)),t()},a=setTimeout(n,400);e.addEventListener("transitionend",n),e.addEventListener("transitioncancel",n)}):r.waitFor).then(L).catch(()=>{"function"==typeof e.qMorphCancel&&e.qMorphCancel()}):L()}),e=>t(e)}var Cd={},Td=["duration","delay","easing","fill","classes","style","duration","resize","useCSS","hideFromClone","keepToClone","tween","tweenFromOpacity","tweenToOpacity","waitFor","onEnd"],Ed=["resize","useCSS","hideFromClone","keepToClone","tween"];function Pd(e,t){e.clsAction!==t&&(e.clsAction=t,e.el.classList[t]("q-morph--invisible"))}function Ad(e){if(!0===e.animating||e.queue.length<2)return;let[t,n]=e.queue;e.animating=!0,t.animating=!0,n.animating=!0,Pd(t,"remove"),Pd(n,"remove");let a=Sd({from:t.el,to:n.el,onToggle(){Pd(t,"add"),Pd(n,"remove")},...n.opts,onEnd(a,i){n.opts.onEnd?.(a,i),!0!==i&&(t.animating=!1,n.animating=!1,e.animating=!1,e.cancel=void 0,e.queue.shift(),Ad(e))}});e.cancel=()=>{a(!0),e.cancel=void 0}}function Md(e,t){let n=t.opts;Ed.forEach(t=>{n[t]=!0===e[t]})}function Ld(e,t){if(t.name===e){let n=Cd[t.group];return void(void 0===n?(Cd[t.group]={name:t.group,model:e,queue:[t],animating:!1},Pd(t,"remove")):n.model!==e&&(n.model=e,n.queue.push(t),!1===n.animating&&2===n.queue.length&&Ad(n)))}!1===t.animating&&Pd(t,"add")}function Rd(e,t){let n;Object(t)===t?(n=""+t.model,function(e,t){void 0!==e.group&&(t.group=e.group),void 0!==e.name&&(t.name=e.name);let n=t.opts;Td.forEach(t=>{void 0!==e[t]&&(n[t]=e[t])})}(t,e),Md(t,e)):n=""+t,n!==e.model?(e.model=n,Ld(n,e)):!1===e.animating&&void 0!==e.clsAction&&e.el.classList[e.clsAction]("q-morph--invisible")}var zd=V({name:"morph",mounted(e,t){let n={el:e,animating:!1,opts:{}};Md(t.modifiers,n),function(e,t){let n="string"==typeof e&&0!==e.length?e.split(":"):[];t.name=n[0],t.group=n[1],Object.assign(t.opts,{duration:!0===isNaN(n[2])?300:parseFloat(n[2]),waitFor:n[3]})}(t.arg,n),Rd(n,t.value),e.__qmorph=n},updated(e,t){Rd(e.__qmorph,t.value)},beforeUnmount(e){let t=e.__qmorph,n=Cd[t.group];void 0!==n&&-1!==n.queue.indexOf(t)&&(n.queue=n.queue.filter(e=>e!==t),0===n.queue.length&&(n.cancel?.(),delete Cd[t.group])),"add"===t.clsAction&&e.classList.remove("q-morph--invisible"),delete e.__qmorph}}),Nd={childList:!0,subtree:!0,attributes:!0,characterData:!0,attributeOldValue:!0,characterDataOldValue:!0};function Od(e,t,n){t.handler=n,t.observer?.disconnect(),t.observer=new MutationObserver(n=>{"function"==typeof t.handler&&(!1===t.handler(n)||!0===t.once)&&Id(e)}),t.observer.observe(e,t.opts)}function Id(e){let t=e.__qmutation;void 0!==t&&(t.observer?.disconnect(),delete e.__qmutation)}var qd=V({name:"mutation",mounted(e,{modifiers:{once:t,...n},value:a}){let i={once:t,opts:0===Object.keys(n).length?Nd:n};Od(e,i,a),e.__qmutation=i},updated(e,{oldValue:t,value:n}){let a=e.__qmutation;void 0!==a&&t!==n&&Od(e,a,n)},beforeUnmount:Id}),{passive:Dd}=H;function jd(e,{value:t,oldValue:n}){"function"==typeof t?(e.handler=t,"function"!=typeof n&&(e.scrollTarget.addEventListener("scroll",e.scroll,Dd),e.scroll())):e.scrollTarget.removeEventListener("scroll",e.scroll,Dd)}var Bd=V({name:"scroll-fire",mounted(e,t){let n={scrollTarget:sa(e),scroll:ae(()=>{let t,a;n.scrollTarget===window?(a=e.getBoundingClientRect().bottom,t=window.innerHeight):(a=sn(e).top+ln(e),t=sn(n.scrollTarget).top+ln(n.scrollTarget)),a>0&&a{a.styleCleanup=void 0;let t=()=>{document.body.classList.remove("non-selectable")};!0===e?(Ln(),setTimeout(t,10)):t()}),a.triggered=!1,a.sensitivity=!0===t?a.mouseSensitivity:a.touchSensitivity,a.timer=setTimeout(()=>{a.timer=void 0,Ln(),a.triggered=!0,a.handler({evt:e,touch:!0!==t,mouse:!0===t,position:a.origin,duration:Date.now()-n})},a.duration)},move(e){let{top:t,left:n}=Y(e);void 0!==a.timer&&(Math.abs(n-a.origin.left)>=a.sensitivity||Math.abs(t-a.origin.top)>=a.sensitivity)&&(clearTimeout(a.timer),a.timer=void 0)},end(e){te(a,"temp"),a.styleCleanup?.(a.triggered),!0===a.triggered?void 0!==e&&J(e):void 0!==a.timer&&(clearTimeout(a.timer),a.timer=void 0)}},i=[600,5,7];if("string"==typeof t.arg&&0!==t.arg.length&&t.arg.split(":").forEach((e,t)=>{let n=parseInt(e,10);n&&(i[t]=n)}),[a.duration,a.touchSensitivity,a.mouseSensitivity]=i,e.__qtouchhold=a,!0===n.mouse){let t=!0===n.mouseCapture||!0===n.mousecapture?"Capture":"";ee(a,"main",[[e,"mousedown","mouseStart",`passive${t}`]])}!0===j.has.touch&&ee(a,"main",[[e,"touchstart","touchStart","passive"+(!0===n.capture?"Capture":"")],[e,"touchend","noop","notPassiveCapture"]])},updated(e,t){let n=e.__qtouchhold;void 0!==n&&t.oldValue!==t.value&&("function"!=typeof t.value&&n.end(),n.handler=t.value)},beforeUnmount(e){let t=e.__qtouchhold;void 0!==t&&(te(t,"main"),te(t,"temp"),void 0!==t.timer&&clearTimeout(t.timer),t.styleCleanup?.(),delete e.__qtouchhold)}}),Ud={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Hd=new RegExp(`^([\\d+]+|${Object.keys(Ud).join("|")})$`,"i");var Wd,Gd=V({name:"touch-repeat",beforeMount(e,{modifiers:t,value:n,arg:a}){let i=Object.keys(t).reduce((e,t)=>{if(!0===Hd.test(t)){let n=isNaN(parseInt(t,10))?Ud[t.toLowerCase()]:parseInt(t,10);n>=0&&e.push(n)}return e},[]);if(!0!==t.mouse&&!0!==j.has.touch&&0===i.length)return;let r="string"==typeof a&&0!==a.length?a.split(":").map(e=>parseInt(e,10)):[0,600,300],o=r.length-1,s={keyboard:i,handler:n,noop:W,mouseStart(e){void 0===s.event&&"function"==typeof s.handler&&!0===G(e)&&(ee(s,"temp",[[document,"mousemove","move","passiveCapture"],[document,"click","end","notPassiveCapture"]]),s.start(e,!0))},keyboardStart(t){if("function"==typeof s.handler&&!0===pe(t,i)){if((0===r[0]||void 0!==s.event)&&(J(t),e.focus(),void 0!==s.event))return;ee(s,"temp",[[document,"keyup","end","notPassiveCapture"],[document,"click","end","notPassiveCapture"]]),s.start(t,!1,!0)}},touchStart(e){if(void 0!==e.target&&"function"==typeof s.handler){let t=e.target;ee(s,"temp",[[t,"touchmove","move","passiveCapture"],[t,"touchcancel","end","notPassiveCapture"],[t,"touchend","end","notPassiveCapture"]]),s.start(e)}},start(e,t,n){function a(e){s.styleCleanup=void 0,document.documentElement.style.cursor="";let t=()=>{document.body.classList.remove("non-selectable")};!0===e?(Ln(),setTimeout(t,10)):t()}!0!==n&&(s.origin=Y(e)),!0===j.is.mobile&&(document.body.classList.add("non-selectable"),Ln(),s.styleCleanup=a),s.event={touch:!0!==t&&!0!==n,mouse:!0===t,keyboard:!0===n,startTime:Date.now(),repeatCount:0};let i=()=>{if(s.timer=void 0,void 0===s.event)return;0===s.event.repeatCount&&(s.event.evt=e,!0===n?s.event.keyCode=e.keyCode:s.event.position=Y(e),!0!==j.is.mobile&&(document.documentElement.style.cursor="pointer",document.body.classList.add("non-selectable"),Ln(),s.styleCleanup=a)),s.event.duration=Date.now()-s.event.startTime,s.event.repeatCount+=1,s.handler(s.event);let t=o=7||Math.abs(n-t.top)>=7}(e,s.origin)&&(clearTimeout(s.timer),s.timer=void 0)},end(e){void 0!==s.event&&(s.styleCleanup?.(!0),void 0!==e&&s.event.repeatCount>0&&J(e),te(s,"temp"),void 0!==s.timer&&(clearTimeout(s.timer),s.timer=void 0),s.event=void 0)}};if(e.__qtouchrepeat=s,!0===t.mouse){let n=!0===t.mouseCapture||!0===t.mousecapture?"Capture":"";ee(s,"main",[[e,"mousedown","mouseStart",`passive${n}`]])}if(!0===j.has.touch&&ee(s,"main",[[e,"touchstart","touchStart","passive"+(!0===t.capture?"Capture":"")],[e,"touchend","noop","passiveCapture"]]),0!==i.length){let n=!0===t.keyCapture||!0===t.keycapture?"Capture":"";ee(s,"main",[[e,"keydown","keyboardStart",`notPassive${n}`]])}},updated(e,{oldValue:t,value:n}){let a=e.__qtouchrepeat;void 0!==a&&t!==n&&("function"!=typeof n&&a.end(),a.handler=n)},beforeUnmount(e){let t=e.__qtouchrepeat;void 0!==t&&(void 0!==t.timer&&clearTimeout(t.timer),te(t,"main"),te(t,"temp"),t.styleCleanup?.(),delete e.__qtouchrepeat)}}),Yd={};function Kd(e,t=document.body){if("string"!=typeof e)throw new TypeError("Expected a string as propName");if(!(t instanceof Element))throw new TypeError("Expected a DOM element");return getComputedStyle(t).getPropertyValue(`--q-${e}`).trim()||null}function Qd(e){void 0===Wd&&(Wd=j.is.winphone?"msapplication-navbutton-color":"theme-color");let t=function(e){let t=document.getElementsByTagName("META");for(let n in t)if(t[n].name===e)return t[n]}(Wd),n=void 0===t;n&&(t=document.createElement("meta"),t.setAttribute("name",Wd)),t.setAttribute("content",e),n&&document.head.appendChild(t)}t(Yd,{AddressbarColor:()=>Zd,AppFullscreen:()=>rh,AppVisibility:()=>sh,BottomSheet:()=>dh,Cookies:()=>wh,Dark:()=>le,Dialog:()=>xh,IconSet:()=>Te,Lang:()=>xe,Loading:()=>Rh,LoadingBar:()=>Oh,LocalStorage:()=>up,Meta:()=>Vh,Notify:()=>ip,Platform:()=>F,Screen:()=>oe,SessionStorage:()=>hp});var Zd={set:!0!==j.is.mobile||!0!==j.is.nativeMobile&&!0!==j.is.winphone&&!0!==j.is.safari&&!0!==j.is.webkit&&!0!==j.is.vivaldi?W:e=>{let t=e||Kd("primary");!0===j.is.nativeMobile&&window.StatusBar?window.StatusBar.backgroundColorByHexString(t):Qd(t)},install({$q:e}){e.addressbarColor=this,e.config.addressbarColor&&this.set(e.config.addressbarColor)}},Jd={};function Xd(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement||null}function eh(){let e=ih.activeEl=!1===ih.isActive?null:Xd();!function(e){if(e===Gn)return;if((Gn=e)===document.body||Hn.reduce((e,t)=>"dialog"===t?e+1:e,0)<2)return void Un.forEach(e=>{!1===e.contains(Gn)&&Gn.appendChild(e)});let t=Hn.lastIndexOf("dialog");for(let e=0;evoid 0!==document.documentElement[e]),ih.isCapable=void 0!==Jd.request,!1===ih.isCapable?(ah=()=>Promise.reject("Not capable"),Object.assign(ih,{request:ah,exit:ah,toggle:ah})):(Object.assign(ih,{request(e){let t=e||document.documentElement,{activeEl:n}=ih;return t===n?Promise.resolve():(null!==n&&!0===t.contains(n)?ih.exit():Promise.resolve()).finally(()=>nh(t,Jd.request))},exit:()=>!0===ih.isActive?nh(document,Jd.exit):Promise.resolve(),toggle:e=>!0===ih.isActive?ih.exit():ih.request(e)}),Jd.exit=["exitFullscreen","msExitFullscreen","mozCancelFullScreen","webkitExitFullscreen"].find(e=>document[e]),ih.isActive=!!Xd(),!0===ih.isActive&&eh(),["onfullscreenchange","onmsfullscreenchange","onwebkitfullscreenchange"].forEach(e=>{document[e]=th}));var rh=ih,oh=U({appVisible:!0},{install({$q:e}){z(e,"appVisible",()=>this.appVisible)}});{let e,t;if(typeof document.hidden<"u"?(e="hidden",t="visibilitychange"):typeof document.msHidden<"u"?(e="msHidden",t="msvisibilitychange"):typeof document.webkitHidden<"u"&&(e="webkitHidden",t="webkitvisibilitychange"),t&&typeof document[e]<"u"){let n=()=>{oh.appVisible=!document[e]};document.addEventListener(t,n,!1)}}var sh=oh,lh=$({name:"BottomSheetComponent",props:{...Nt,title:String,message:String,actions:Array,grid:Boolean,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){let{proxy:i}=k(),r=Ot(e,i.$q),o=a(null);function s(){o.value.hide()}function l(e){t("ok",e),s()}function u(){t("hide")}function c(){let t=[];return e.title&&t.push(n(ui,{class:"q-dialog__title"},()=>e.title)),e.message&&t.push(n(ui,{class:"q-dialog__message"},()=>e.message)),t.push(!0===e.grid?n("div",{class:"row items-stretch justify-start",role:"list"},e.actions.map(e=>{let t=e.avatar||e.img;return void 0===e.label?n(ws,{class:"col-all",dark:r.value}):n("div",{class:["q-bottom-sheet__item q-hoverable q-focusable cursor-pointer relative-position",e.class],style:e.style,tabindex:0,role:"listitem",onClick(){l(e)},onKeyup(t){13===t.keyCode&&l(e)}},[n("div",{class:"q-focus-helper"}),e.icon?n(Mt,{name:e.icon,color:e.color}):t?n("img",{class:e.avatar?"q-bottom-sheet__avatar":"",src:t}):n("div",{class:"q-bottom-sheet__empty-icon"}),n("div",e.label)])})):n("div",{role:"list"},e.actions.map(e=>{let t=e.avatar||e.img;return void 0===e.label?n(ws,{spaced:!0,dark:r.value}):n(as,{class:["q-bottom-sheet__item",e.classes],style:e.style,tabindex:0,clickable:!0,dark:r.value,onClick(){l(e)}},()=>[n(is,{avatar:!0},()=>e.icon?n(Mt,{name:e.icon,color:e.color}):t?n("img",{class:e.avatar?"q-bottom-sheet__avatar":"",src:t}):null),n(is,()=>e.label)])}))),t}function d(){return[n(li,{class:["q-bottom-sheet q-bottom-sheet--"+(!0===e.grid?"grid":"list")+(!0===r.value?" q-bottom-sheet--dark q-dark":""),e.cardClass],style:e.cardStyle},c)]}return Object.assign(i,{show:function(){o.value.show()},hide:s}),()=>n(Ko,{ref:o,position:"bottom",onHide:u},d)}});function uh(e,t){for(let n in t)"spinner"!==n&&Object(t[n])===t[n]?(e[n]=Object(e[n])!==e[n]?{}:{...e[n]},uh(e[n],t[n])):e[n]=t[n]}function ch(e,t,i){return r=>{let o,s,l=!0===t&&void 0!==r.component;if(!0===l){let{component:e,componentProps:t}=r;o="string"==typeof e?i.component(e):e,s=t||{}}else{let{class:t,style:n,...a}=r;o=e,s=a,void 0!==t&&(a.cardClass=t),void 0!==n&&(a.cardStyle=n)}let u,c=!1,h=a(null),p=Yn(!1,"dialog"),f=e=>{if(void 0!==h.value?.[e])return void h.value[e]();let t=u.$.subTree;if(t?.component){if(t.component.proxy&&t.component.proxy[e])return void t.component.proxy[e]();if(t.component.subTree&&t.component.subTree.component&&t.component.subTree.component.proxy&&t.component.subTree.component.proxy[e])return void t.component.subTree.component.proxy[e]()}console.error("[Quasar] Incorrectly defined Dialog component")},m=[],g=[],_={onOk:e=>(m.push(e),_),onCancel:e=>(g.push(e),_),onDismiss:e=>(m.push(e),g.push(e),_),hide:()=>(f("hide"),_),update(e){if(null!==u){if(!0===l)Object.assign(s,e);else{let{class:t,style:n,...a}=e;void 0!==t&&(a.cardClass=t),void 0!==n&&(a.cardStyle=n),uh(s,a)}u.$forceUpdate()}return _}},v=e=>{c=!0,m.forEach(t=>{t(e)})},b=()=>{y.unmount(p),Kn(p),y=null,u=null,!0!==c&&g.forEach(e=>{e()})},y=He({name:"QGlobalDialog",setup:()=>()=>n(o,{...s,ref:h,onOk:v,onHide:b,onVnodeMounted(...e){"function"==typeof s.onVnodeMounted&&s.onVnodeMounted(...e),d(()=>f("show"))}})},i);return u=y.mount(p),_}}var dh={install({$q:e,parentApp:t}){e.bottomSheet=this.create=ch(lh,!1,t)}};function hh(e){return encodeURIComponent(e)}function ph(e){return decodeURIComponent(e)}function fh(e){if(""===e)return e;0===e.indexOf('"')&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\")),e=ph(e.replace(/\+/g," "));try{let t=JSON.parse(e);(t===Object(t)||!0===Array.isArray(t))&&(e=t)}catch{}return e}function mh(e){let t=new Date;return t.setMilliseconds(t.getMilliseconds()+e),t.toUTCString()}function gh(e,t,n={},a){let i,r;void 0!==n.expires&&("[object Date]"===Object.prototype.toString.call(n.expires)?i=n.expires.toUTCString():"string"==typeof n.expires?i=function(e){let t=0,n=e.match(/(\d+)d/),a=e.match(/(\d+)h/),i=e.match(/(\d+)m/),r=e.match(/(\d+)s/);return n&&(t+=864e5*n[1]),a&&(t+=36e5*a[1]),i&&(t+=6e4*i[1]),r&&(t+=1e3*r[1]),0===t?e:mh(t)}(n.expires):(r=parseFloat(n.expires),i=!1===isNaN(r)?mh(864e5*r):n.expires));let o=`${hh(e)}=${function(e){return hh(e===Object(e)?JSON.stringify(e):""+e)}(t)}`,s=[o,void 0!==i?"; Expires="+i:"",n.path?"; Path="+n.path:"",n.domain?"; Domain="+n.domain:"",n.sameSite?"; SameSite="+n.sameSite:"",n.httpOnly?"; HttpOnly":"",n.secure?"; Secure":"",n.other?"; "+n.other:""].join("");if(a){a.req.qCookies?a.req.qCookies.push(s):a.req.qCookies=[s],a.res.setHeader("Set-Cookie",a.req.qCookies);let t=a.req.headers.cookie||"";if(void 0!==i&&r<0){let n=_h(e,a);void 0!==n&&(t=t.replace(`${e}=${n}; `,"").replace(`; ${e}=${n}`,"").replace(`${e}=${n}`,""))}else t=t?`${o}; ${t}`:s;a.req.headers.cookie=t}else document.cookie=s}function _h(e,t){let n,a,i,r=t?t.req.headers:document,o=r.cookie?r.cookie.split("; "):[],s=o.length,l=e?null:{},u=0;for(;u_h(t,e),set:(t,n,a)=>gh(t,n,a,e),has:t=>function(e,t){return null!==_h(e,t)}(t,e),remove:(t,n)=>function(e,t,n){gh(e,"",{expires:-1,...t},n)}(t,n,e),getAll:()=>_h(null,e)}}());var bh,yh,wh=vh,kh=$({name:"DialogPluginComponent",props:{...Nt,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){let{proxy:o}=k(),{$q:l}=o,u=Ot(e,l),c=a(null),d=a(void 0!==e.prompt?e.prompt.model:void 0!==e.options?e.options.model:void 0),h=i(()=>"q-dialog-plugin"+(!0===u.value?" q-dialog-plugin--dark q-dark":"")+(!1!==e.progress?" q-dialog-plugin--progress":"")),p=i(()=>e.color||(!0===u.value?"amber":"primary")),f=i(()=>!1===e.progress?null:!0===je(e.progress)?{component:e.progress.spinner||on,props:{color:e.progress.color||p.value}}:{component:on,props:{color:p.value}}),m=i(()=>void 0!==e.prompt||void 0!==e.options),g=i(()=>{if(!0!==m.value)return{};let{model:t,isValid:n,items:a,...i}=void 0!==e.prompt?e.prompt:e.options;return i}),_=i(()=>!0===je(e.ok)||!0===e.ok?l.lang.label.ok:e.ok),v=i(()=>!0===je(e.cancel)||!0===e.cancel?l.lang.label.cancel:e.cancel),b=i(()=>void 0!==e.prompt?void 0!==e.prompt.isValid&&!0!==e.prompt.isValid(d.value):void 0!==e.options&&(void 0!==e.options.isValid&&!0!==e.options.isValid(d.value))),y=i(()=>({color:p.value,label:_.value,ripple:!1,disable:b.value,...!0===je(e.ok)?e.ok:{flat:!0},"data-autofocus":"ok"===e.focus&&!0!==m.value||void 0,onClick:S})),w=i(()=>({color:p.value,label:v.value,ripple:!1,...!0===je(e.cancel)?e.cancel:{flat:!0},"data-autofocus":"cancel"===e.focus&&!0!==m.value||void 0,onClick:C}));function x(){c.value.hide()}function S(){t("ok",s(d.value)),x()}function C(){x()}function T(){t("hide")}function E(e){d.value=e}function P(t){!0!==b.value&&"textarea"!==e.prompt.type&&!0===pe(t,13)&&S()}function A(t,a){return!0===e.html?n(ui,{class:t,innerHTML:a}):n(ui,{class:t},()=>a)}function M(){return[n(kl,{color:p.value,dense:!0,autofocus:!0,dark:u.value,...g.value,modelValue:d.value,"onUpdate:modelValue":E,onKeyup:P})]}function L(){return[n(Hl,{color:p.value,options:e.options.items,dark:u.value,...g.value,modelValue:d.value,"onUpdate:modelValue":E})]}function R(){let t=[];return e.title&&t.push(A("q-dialog__title",e.title)),!1!==e.progress&&t.push(n(ui,{class:"q-dialog__progress"},()=>n(f.value.component,f.value.props))),e.message&&t.push(A("q-dialog__message",e.message)),void 0!==e.prompt?t.push(n(ui,{class:"scroll q-dialog-plugin__form"},M)):void 0!==e.options&&t.push(n(ws,{dark:u.value}),n(ui,{class:"scroll q-dialog-plugin__form"},L),n(ws,{dark:u.value})),(e.ok||e.cancel)&&t.push(function(){let t=[];return e.cancel&&t.push(n(An,w.value)),e.ok&&t.push(n(An,y.value)),n(ci,{class:!0===e.stackButtons?"items-end":"",vertical:e.stackButtons,align:"right"},()=>t)}()),t}function z(){return[n(li,{class:[h.value,e.cardClass],style:e.cardStyle,dark:u.value},R)]}return r(()=>e.prompt&&e.prompt.model,E),r(()=>e.options&&e.options.model,E),Object.assign(o,{show:function(){c.value.show()},hide:x}),()=>n(Ko,{ref:c,onHide:T},z)}}),xh={install({$q:e,parentApp:t}){e.dialog=this.create=ch(kh,!0,t)}},Sh=0,Ch=null,Th={},Eh={},Ph={group:"__default_quasar_group__",delay:0,message:!1,html:!1,spinnerSize:80,spinnerColor:"",messageColor:"",backgroundColor:"",boxClass:"",spinner:on,customClass:""},Ah={...Ph};var Mh,Lh=U({isActive:!1},{show(e){Th=function(e){if(void 0!==e?.group&&void 0!==Eh[e.group])return Object.assign(Eh[e.group],e);let t=!0===je(e)&&!0===e.ignoreDefaults?{...Ph,...e}:{...Ah,...e};return Eh[t.group]=t,t}(e);let{group:t}=Th;return Lh.isActive=!0,void 0!==bh?(Th.uid=Sh,yh.$forceUpdate()):(Th.uid=++Sh,null!==Ch&&clearTimeout(Ch),Ch=setTimeout(()=>{Ch=null;let e=Yn("q-loading");bh=He({name:"QLoading",setup(){function t(){!0!==Lh.isActive&&void 0!==bh&&(Uo(!1),bh.unmount(e),Kn(e),bh=void 0,yh=void 0)}function a(){if(!0!==Lh.isActive)return null;let e=[n(Th.spinner,{class:"q-loading__spinner",color:Th.spinnerColor,size:Th.spinnerSize})];return Th.message&&e.push(n("div",{class:"q-loading__message"+(Th.messageColor?` text-${Th.messageColor}`:""),[!0===Th.html?"innerHTML":"textContent"]:Th.message})),n("div",{class:"q-loading fullscreen flex flex-center z-max "+Th.customClass.trim(),key:Th.uid},[n("div",{class:"q-loading__backdrop"+(Th.backgroundColor?` bg-${Th.backgroundColor}`:"")}),n("div",{class:"q-loading__box column items-center "+Th.boxClass},e)])}return m(()=>{Uo(!0)}),()=>n(S,{name:"q-transition--fade",appear:!0,onAfterLeave:t},a)}},Lh.__parentApp),yh=bh.mount(e)},Th.delay)),e=>{void 0!==e&&Object(e)===e?Lh.show({...e,group:t}):Lh.hide(t)}},hide(e){if(!0===Lh.isActive){if(void 0===e)Eh={};else{if(void 0===Eh[e])return;{delete Eh[e];let t=Object.keys(Eh);if(0!==t.length){let e=t[t.length-1];return void Lh.show({group:e})}}}null!==Ch&&(clearTimeout(Ch),Ch=null),Lh.isActive=!1}},setDefaults(e){!0===je(e)&&Object.assign(Ah,e)},install({$q:e,parentApp:t}){e.loading=this,Lh.__parentApp=t,void 0!==e.config.loading&&this.setDefaults(e.config.loading)}}),Rh=Lh,zh=a(null),Nh=U({isActive:!1},{start:W,stop:W,increment:W,setDefaults:W,install({$q:e,parentApp:t}){if(e.loadingBar=this,!0===this.__installed)return void(void 0!==e.config.loadingBar&&this.setDefaults(e.config.loadingBar));let i=a(void 0!==e.config.loadingBar?{...e.config.loadingBar}:{});function r(){Nh.isActive=!0}function o(){Nh.isActive=!1}let s=Yn("q-loading-bar");He({name:"LoadingBar",devtools:{hide:!0},setup:()=>()=>n(st,{...i.value,onStart:r,onStop:o,ref:zh})},t).mount(s),Object.assign(this,{start(e){zh.value.start(e)},stop(){zh.value.stop()},increment(){zh.value.increment.apply(null,arguments)},setDefaults(e){!0===je(e)&&Object.assign(i.value,e)}})}}),Oh=Nh,Ih=null,qh=[];function Dh(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!0;for(let n in e)if(e[n]!==t[n])return!0}function jh(e){return!1===["class","style"].includes(e)}function Bh(e){return!1===["lang","dir"].includes(e)}function Fh(){Ih=null;let e={title:"",titleTemplate:null,meta:{},link:{},script:{},htmlAttr:{},bodyAttr:{}};for(let t=0;t{let n=e[t[0]],a=t[1];for(let e in n){let t=n[e];t.template&&(1===Object.keys(t).length?delete n[e]:(t[a]=t.template(t[a]||""),delete t.template))}})})(e),function({add:e,remove:t}){e.title&&(document.title=e.title),0!==Object.keys(t).length&&(["meta","link","script"].forEach(e=>{t[e].forEach(t=>{document.head.querySelector(`${e}[data-qmeta="${t}"]`).remove()})}),t.htmlAttr.filter(Bh).forEach(e=>{document.documentElement.removeAttribute(e)}),t.bodyAttr.filter(jh).forEach(e=>{document.body.removeAttribute(e)})),["meta","link","script"].forEach(t=>{let n=e[t];for(let e in n){let a=document.createElement(t);for(let t in n[e])"innerHTML"!==t&&a.setAttribute(t,n[e][t]);a.setAttribute("data-qmeta",e),"script"===t&&(a.innerHTML=n[e].innerHTML||""),document.head.appendChild(a)}}),Object.keys(e.htmlAttr).filter(Bh).forEach(t=>{document.documentElement.setAttribute(t,e.htmlAttr[t]||"")}),Object.keys(e.bodyAttr).filter(jh).forEach(t=>{document.body.setAttribute(t,e.bodyAttr[t]||"")})}(function(e,t){let n={},a={};return void 0===e?{add:t,remove:a}:(e.title!==t.title&&(n.title=t.title),["meta","link","script","htmlAttr","bodyAttr"].forEach(i=>{let r=e[i],o=t[i];if(a[i]=[],null!=r){n[i]={};for(let e in r)!1===o.hasOwnProperty(e)&&a[i].push(e);for(let e in o)!1===r.hasOwnProperty(e)?n[i][e]=o[e]:!0===Dh(r[e],o[e])&&(a[i].push(e),n[i][e]=o[e])}else n[i]=o}),{add:n,remove:a})}(Mh,e)),Mh=e}function $h(){null!==Ih&&clearTimeout(Ih),Ih=setTimeout(Fh,50)}var Vh={install(e){!0!==this.__installed&&!0===I.value&&(Mh=window.__Q_META__,document.getElementById("qmeta-init").remove())}},Uh=0,Hh={},Wh={},Gh={},Yh={},Kh=/^\s*$/,Qh=[],Zh=[void 0,null,!0,!1,""],Jh=["top-left","top-right","bottom-left","bottom-right","top","bottom","left","right","center"],Xh=["top-left","top-right","bottom-left","bottom-right"],ep={positive:{icon:e=>e.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function tp(e,t,n){if(!e)return ap("parameter required");let a,i={textColor:"white"};if(!0!==e.ignoreDefaults&&Object.assign(i,Hh),!1===je(e)&&(i.type&&Object.assign(i,ep[i.type]),e={message:e}),Object.assign(i,ep[e.type||i.type],e),"function"==typeof i.icon&&(i.icon=i.icon(t)),i.spinner?(!0===i.spinner&&(i.spinner=on),i.spinner=x(i.spinner)):i.spinner=!1,i.meta={hasMedia:!(!1===i.spinner&&!i.icon&&!i.avatar),hasText:np(i.message)||np(i.caption)},i.position){if(!1===Jh.includes(i.position))return ap("wrong position",e)}else i.position="bottom";if(!0===Zh.includes(i.timeout))i.timeout=5e3;else{let t=Number(i.timeout);if(isNaN(t)||t<0)return ap("wrong timeout",e);i.timeout=Number.isFinite(t)?t:0}0===i.timeout?i.progress=!1:!0===i.progress&&(i.meta.progressClass="q-notification__progress"+(i.progressClass?` ${i.progressClass}`:""),i.meta.progressStyle={animationDuration:`${i.timeout+1e3}ms`});let r=(!0===Array.isArray(e.actions)?e.actions:[]).concat(!0!==e.ignoreDefaults&&!0===Array.isArray(Hh.actions)?Hh.actions:[]).concat(!0===Array.isArray(ep[e.type]?.actions)?ep[e.type].actions:[]),{closeBtn:o}=i;if(o&&r.push({label:"string"==typeof o?o:t.lang.label.close}),i.actions=r.map(({handler:e,noDismiss:t,...n})=>({flat:!0,...n,onClick:"function"==typeof e?()=>{e(),!0!==t&&s()}:()=>{s()}})),void 0===i.multiLine&&(i.multiLine=i.actions.length>1),Object.assign(i.meta,{class:"q-notification row items-stretch q-notification--"+(!0===i.multiLine?"multi-line":"standard")+(void 0!==i.color?` bg-${i.color}`:"")+(void 0!==i.textColor?` text-${i.textColor}`:"")+(void 0!==i.classes?` ${i.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(!0===i.multiLine?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(!0===i.multiLine?"":" col"),leftClass:!0===i.meta.hasText?"additional":"single",attrs:{role:"alert",...i.attrs}}),!1===i.group?(i.group=void 0,i.meta.group=void 0):((void 0===i.group||!0===i.group)&&(i.group=[i.message,i.caption,i.multiline].concat(i.actions.map(e=>`${e.label}*${e.icon}`)).join("|")),i.meta.group=i.group+"|"+i.position),0===i.actions.length?i.actions=void 0:i.meta.actionsClass="q-notification__actions row items-center "+(!0===i.multiLine?"justify-end":"col-auto")+(!0===i.meta.hasMedia?" q-notification__actions--with-media":""),void 0!==n){n.notif.meta.timer&&(clearTimeout(n.notif.meta.timer),n.notif.meta.timer=void 0),i.meta.uid=n.notif.meta.uid;let e=Gh[i.position].value.indexOf(n.notif);Gh[i.position].value[e]=i}else{let t=Wh[i.meta.group];if(void 0===t){if(i.meta.uid=Uh++,i.meta.badge=1,-1!==["left","right","center"].indexOf(i.position))Gh[i.position].value.splice(Math.floor(Gh[i.position].value.length/2),0,i);else{let e=-1!==i.position.indexOf("top")?"unshift":"push";Gh[i.position].value[e](i)}void 0!==i.group&&(Wh[i.meta.group]=i)}else{if(t.meta.timer&&(clearTimeout(t.meta.timer),t.meta.timer=void 0),void 0!==i.badgePosition){if(!1===Xh.includes(i.badgePosition))return ap("wrong badgePosition",e)}else i.badgePosition="top-"+(-1!==i.position.indexOf("left")?"right":"left");i.meta.uid=t.meta.uid,i.meta.badge=t.meta.badge+1,i.meta.badgeClass=`q-notification__badge q-notification__badge--${i.badgePosition}`+(void 0!==i.badgeColor?` bg-${i.badgeColor}`:"")+(void 0!==i.badgeTextColor?` text-${i.badgeTextColor}`:"")+(i.badgeClass?` ${i.badgeClass}`:"");let n=Gh[i.position].value.indexOf(t);Gh[i.position].value[n]=Wh[i.meta.group]=i}}let s=()=>{(function(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);let t=Gh[e.position].value.indexOf(e);if(-1!==t){void 0!==e.group&&delete Wh[e.meta.group];let n=Qh[""+e.meta.uid];if(n){let{width:e,height:t}=getComputedStyle(n);n.style.left=`${n.offsetLeft}px`,n.style.width=e,n.style.height=t}Gh[e.position].value.splice(t,1),"function"==typeof e.onDismiss&&e.onDismiss()}})(i),a=void 0};return i.timeout>0&&(i.meta.timer=setTimeout(()=>{i.meta.timer=void 0,s()},i.timeout+1e3)),void 0!==i.group?t=>{void 0!==t?ap("trying to update a grouped one which is forbidden",e):s()}:(a={dismiss:s,config:e,notif:i},void 0===n?e=>{if(void 0!==a)if(void 0===e)a.dismiss();else{tp(Object.assign({},a.config,e,{group:!1,position:i.position}),t,a)}}:void Object.assign(n,a))}function np(e){return null!=e&&!0!==Kh.test(e)}function ap(e,t){return console.error(`Notify: ${e}`,t),!1}var ip={setDefaults(e){!0===je(e)&&Object.assign(Hh,e)},registerType(e,t){!0===je(t)&&(ep[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=t=>tp(t,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,void 0!==e.config.notify&&this.setDefaults(e.config.notify),!0!==this.__installed){Jh.forEach(e=>{Gh[e]=a([]);let t=!0===["left","center","right"].includes(e)?"center":-1!==e.indexOf("top")?"top":"bottom",n=-1!==e.indexOf("left")?"start":-1!==e.indexOf("right")?"end":"center",i=["left","right"].includes(e)?`items-${"left"===e?"start":"end"} justify-center`:"center"===e?"flex-center":`items-${n}`;Yh[e]=`q-notifications__list q-notifications__list--${t} fixed column no-wrap ${i}`});let e=Yn("q-notify");He($({name:"QNotifications",devtools:{hide:!0},setup:()=>()=>n("div",{class:"q-notifications"},Jh.map(e=>n(C,{key:e,class:Yh[e],tag:"div",name:`q-notification--${e}`},()=>Gh[e].value.map(e=>{let t=e.meta,a=[];if(!0===t.hasMedia&&(!1!==e.spinner?a.push(n(e.spinner,{class:"q-notification__spinner q-notification__spinner--"+t.leftClass,color:e.spinnerColor,size:e.spinnerSize})):e.icon?a.push(n(Mt,{class:"q-notification__icon q-notification__icon--"+t.leftClass,name:e.icon,color:e.iconColor,size:e.iconSize,role:"img"})):e.avatar&&a.push(n(Lt,{class:"q-notification__avatar q-notification__avatar--"+t.leftClass},()=>n("img",{src:e.avatar,"aria-hidden":"true"})))),!0===t.hasText){let t,i={class:"q-notification__message col"};if(!0===e.html)i.innerHTML=e.caption?`
${e.message}
${e.caption}
`:e.message;else{let a=[e.message];t=e.caption?[n("div",a),n("div",{class:"q-notification__caption"},[e.caption])]:a}a.push(n("div",i,t))}let i=[n("div",{class:t.contentClass},a)];return!0===e.progress&&i.push(n("div",{key:`${t.uid}|p|${t.badge}`,class:t.progressClass,style:t.progressStyle})),void 0!==e.actions&&i.push(n("div",{class:t.actionsClass},e.actions.map(e=>n(An,e)))),t.badge>1&&i.push(n("div",{key:`${t.uid}|${t.badge}`,class:e.meta.badgeClass,style:e.badgeStyle},[t.badge])),n("div",{ref:e=>{Qh[""+t.uid]=e},key:t.uid,class:t.class,...t.attrs},[n("div",{class:t.wrapperClass},i)])}))))}),t).mount(e)}}};function rp(){let e=()=>null;return{has:()=>!1,hasItem:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:W,setItem:W,remove:W,removeItem:W,clear:W,isEmpty:()=>!0}}function op(e){let t=window[e+"Storage"],n=e=>{let n=t.getItem(e);return n?function(e){if(e.length<9)return e;let t=e.substring(0,8),n=e.substring(9);switch(t){case"__q_date":let t=Number(n);return new Date(!0===Number.isNaN(t)?n:t);case"__q_expr":return new RegExp(n);case"__q_numb":return Number(n);case"__q_bool":return"1"===n;case"__q_strn":return""+n;case"__q_objt":return JSON.parse(n);default:return e}}(n):null},a=e=>null!==t.getItem(e),i=(e,n)=>{t.setItem(e,function(e){return!0===Be(e)?"__q_date|"+e.getTime():!0===Fe(e)?"__q_expr|"+e.source:"number"==typeof e?"__q_numb|"+e:"boolean"==typeof e?"__q_bool|"+(e?"1":"0"):"string"==typeof e?"__q_strn|"+e:"function"==typeof e?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}(n))},r=e=>{t.removeItem(e)};return{has:a,hasItem:a,getLength:()=>t.length,getItem:n,getIndex:e=>ee{let e,a={},i=t.length;for(let r=0;r{let e=[],n=t.length;for(let a=0;a{t.clear()},isEmpty:()=>0===t.length}}var sp=!1===j.has.webStorage?rp():op("local"),lp={install({$q:e}){e.localStorage=sp}};Object.assign(lp,sp);var up=lp,cp=!1===j.has.webStorage?rp():op("session"),dp={install({$q:e}){e.sessionStorage=cp}};Object.assign(dp,cp);var hp=dp,pp={};function fp(e){return void 0!==navigator.clipboard?navigator.clipboard.writeText(e):new Promise((t,n)=>{let a=function(e){let t=document.createElement("textarea");t.value=e,t.contentEditable="true",t.style.position="fixed";let n=()=>{};Ma(n),document.body.appendChild(t),t.focus(),t.select();let a=document.execCommand("copy");return t.remove(),La(n),a}(e);a?t(!0):n(a)})}t(pp,{EventBus:()=>gp,clone:()=>au,colors:()=>Nr,copyToClipboard:()=>fp,createMetaMixin:()=>mp,createUploaderComponent:()=>td,date:()=>ko,debounce:()=>ae,dom:()=>dn,event:()=>ne,exportFile:()=>vp,extend:()=>ms,format:()=>tt,frameDebounce:()=>eu,getCssVar:()=>Kd,is:()=>Ve,morph:()=>Sd,noop:()=>W,openURL:()=>yp,patterns:()=>Cr,runSequentialPromises:()=>wp,scroll:()=>ya,setCssVar:()=>ue,throttle:()=>hn,uid:()=>Ja});var mp=e=>{let t={activated(){this.__qMeta.active=!0,$h()},deactivated(){this.__qMeta.active=!1,$h()},unmounted(){qh.splice(qh.indexOf(this.__qMeta),1),$h(),this.__qMeta=void 0}};return"function"==typeof e?Object.assign(t,{computed:{__qMetaOptions(){return e.call(this)||{}}},watch:{__qMetaOptions(e){this.__qMeta.val=e,!0===this.__qMeta.active&&$h()}},created(){this.__qMeta={active:!0,val:this.__qMetaOptions},qh.push(this.__qMeta),$h()}}):t.created=function(){this.__qMeta={active:!0,val:e},qh.push(this.__qMeta),$h()},t},gp=class{constructor(){this.__stack={}}on(e,t,n){return(this.__stack[e]||(this.__stack[e]=[])).push({fn:t,ctx:n}),this}once(e,t,n){let a=(...i)=>{this.off(e,a),t.apply(n,i)};return a.__callback=t,this.on(e,a,n)}emit(e){let t=this.__stack[e];if(void 0!==t){let e=[].slice.call(arguments,1);t.forEach(t=>{t.fn.apply(t.ctx,e)})}return this}off(e,t){let n=this.__stack[e];if(void 0===n)return this;if(void 0===t)return delete this.__stack[e],this;let a=n.filter(e=>e.fn!==t&&e.fn.__callback!==t);return 0!==a.length?this.__stack[e]=a:delete this.__stack[e],this}};function _p(e){setTimeout(()=>{window.URL.revokeObjectURL(e.href)},1e4),e.remove()}function vp(e,t,n={}){let{mimeType:a,byteOrderMark:i,encoding:r}="string"==typeof n?{mimeType:n}:n,o=void 0!==r?new TextEncoder(r).encode([t]):t,s=new Blob(void 0!==i?[i,o]:[o],{type:a||"application/octet-stream"}),l=document.createElement("a");l.href=window.URL.createObjectURL(s),l.setAttribute("download",e),typeof l.download>"u"&&l.setAttribute("target","_blank"),l.classList.add("hidden"),l.style.position="fixed",document.body.appendChild(l);try{return l.click(),_p(l),!0}catch(e){return _p(l),e}}function bp(e,t,n){let a=window.open;if(!0===F.is.cordova)if(void 0!==cordova?.InAppBrowser?.open)a=cordova.InAppBrowser.open;else if(void 0!==navigator?.app)return navigator.app.loadUrl(e,{openExternal:!0});let i=a(e,"_blank",function(e){let t=Object.assign({noopener:!0},e),n=[];for(let e in t){let a=t[e];!0===a?n.push(e):($e(a)||"string"==typeof a&&""!==a)&&n.push(e+"="+a)}return n.join(",")}(n));if(i)return F.is.desktop&&i.focus(),i;t?.()}var yp=(e,t,n)=>{if(!0!==F.is.ios||void 0===window.SafariViewController)return bp(e,t,n);window.SafariViewController.isAvailable(a=>{a?window.SafariViewController.show({url:e},W,t):bp(e,t,n)})};function wp(e,{threadsNumber:t=1,abortOnFail:n=!0}={}){let a=-1,i=!1,{isList:r,totalJobs:o,resultAggregator:s,resultKeys:l}=function(e){let t=Array.isArray(e);if(!0===t){let n=e.length;return{isList:t,totalJobs:n,resultAggregator:Array(n).fill(null)}}let n=Object.keys(e),a={};return n.forEach(e=>{a[e]=null}),{isList:t,totalJobs:n.length,resultAggregator:a,resultKeys:n}}(e),u=Array(t).fill(null).map(()=>new Promise((t,u)=>{!function c(){let d=++a;if(!0===i||d>=o)return void t();let h=!0===r?d:l[d];e[h](s).then(e=>{!0!==i?(s[h]={key:h,status:"fulfilled",value:e},setTimeout(c)):t()}).catch(e=>{if(!0===i)return void t();let a={key:h,status:"rejected",reason:e};if(s[h]=a,!0===n)return i=!0,void u({...a,resultAggregator:s});setTimeout(c)})}()}));return Promise.all(u).then(()=>s)}var kp={};function xp(){let{emit:e,proxy:t}=k(),n=a(null);function i(){n.value.hide()}return Object.assign(t,{show:function(){n.value.show()},hide:i}),{dialogRef:n,onDialogHide:function(){e("hide")},onDialogOK:function(t){e("ok",t),i()},onDialogCancel:i}}t(kp,{useDialogPluginComponent:()=>xp,useFormChild:()=>Ns,useHydration:()=>ir,useId:()=>ei,useInterval:()=>Ep,useMeta:()=>Cp,useQuasar:()=>Tp,useRenderCache:()=>vi,useSplitAttrs:()=>cs,useTick:()=>na,useTimeout:()=>aa});var Sp=["ok","hide"];function Cp(e){{let t={active:!0};if("function"==typeof e){let n=i(e);t.val=n.value,r(n,e=>{t.val=e,!0===t.active&&$h()})}else t.val=e;qh.push(t),$h(),h(()=>{t.active=!0,$h()}),p(()=>{t.active=!1,$h()}),_(()=>{qh.splice(qh.indexOf(t),1),$h()})}}function Tp(){return y("_q_")}function Ep(){let e=null,t=k();function n(){null!==e&&(clearInterval(e),e=null)}return p(n),g(n),{removeInterval:n,registerInterval(a,i){n(),!1===Wt(t)&&(e=setInterval(a,i))}}}xp.emits=Sp,xp.emitsObject=Xc(Sp),void 0===window.Vue&&console.error("[ Quasar ] Vue is required to run. Please add a script tag for it before loading Quasar."),window.Quasar={version:"2.18.6",install(e,t){Ge(e,{components:Ye,directives:ld,plugins:Yd,...t})},lang:xe,iconSet:Te,...Ye,...ld,...Yd,...kp,...pp}})(); /*! * vuex v4.1.0 * (c) 2022 Evan You * @license MIT */ -var Vuex=function(e){"use strict";var t="store";function n(){return"undefined"!=typeof navigator?window:"undefined"!=typeof global?global:{}}var a="devtools-plugin:setup";function i(e,t){var i=n().__VUE_DEVTOOLS_GLOBAL_HOOK__;if(i)i.emit(a,e,t);else{var r=n();(r.__VUE_DEVTOOLS_PLUGINS__=r.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:e,setupFn:t})}}function r(e,t){if(void 0===t&&(t=[]),null===e||"object"!=typeof e)return e;var n,a=(n=function(t){return t.original===e},t.filter(n)[0]);if(a)return a.copy;var i=Array.isArray(e)?[]:{};return t.push({original:e,copy:i}),Object.keys(e).forEach((function(n){i[n]=r(e[n],t)})),i}function o(e,t){Object.keys(e).forEach((function(n){return t(e[n],n)}))}function s(e){return null!==e&&"object"==typeof e}function l(e,t){if(!e)throw new Error("[vuex] "+t)}function u(e,t,n){return t.indexOf(e)<0&&(n&&n.prepend?t.unshift(e):t.push(e)),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}function c(e,t){e._actions=Object.create(null),e._mutations=Object.create(null),e._wrappedGetters=Object.create(null),e._modulesNamespaceMap=Object.create(null);var n=e.state;h(e,n,[],e._modules.root,!0),d(e,n,t)}function d(t,n,a){var i=t._state,r=t._scope;t.getters={},t._makeLocalGettersCache=Object.create(null);var s=t._wrappedGetters,u={},c={},d=e.effectScope(!0);d.run((function(){o(s,(function(n,a){u[a]=function(e,t){return function(){return e(t)}}(n,t),c[a]=e.computed((function(){return u[a]()})),Object.defineProperty(t.getters,a,{get:function(){return c[a].value},enumerable:!0})}))})),t._state=e.reactive({data:n}),t._scope=d,t.strict&&function(t){e.watch((function(){return t._state.data}),(function(){l(t._committing,"do not mutate vuex store state outside mutation handlers.")}),{deep:!0,flush:"sync"})}(t),i&&a&&t._withCommit((function(){i.data=null})),r&&r.stop()}function h(e,t,n,a,i){var r=!n.length,o=e._modules.getNamespace(n);if(a.namespaced&&(e._modulesNamespaceMap[o]&&console.error("[vuex] duplicate namespace "+o+" for the namespaced module "+n.join("/")),e._modulesNamespaceMap[o]=a),!r&&!i){var s=f(t,n.slice(0,-1)),l=n[n.length-1];e._withCommit((function(){l in s&&console.warn('[vuex] state field "'+l+'" was overridden by a module with the same name at "'+n.join(".")+'"'),s[l]=a.state}))}var u=a.context=function(e,t,n){var a=""===t,i={dispatch:a?e.dispatch:function(n,a,i){var r=m(n,a,i),o=r.payload,s=r.options,l=r.type;if(s&&s.root||(l=t+l,e._actions[l]))return e.dispatch(l,o);console.error("[vuex] unknown local action type: "+r.type+", global type: "+l)},commit:a?e.commit:function(n,a,i){var r=m(n,a,i),o=r.payload,s=r.options,l=r.type;s&&s.root||(l=t+l,e._mutations[l])?e.commit(l,o,s):console.error("[vuex] unknown local mutation type: "+r.type+", global type: "+l)}};return Object.defineProperties(i,{getters:{get:a?function(){return e.getters}:function(){return p(e,t)}},state:{get:function(){return f(e.state,n)}}}),i}(e,o,n);a.forEachMutation((function(t,n){!function(e,t,n,a){var i=e._mutations[t]||(e._mutations[t]=[]);i.push((function(t){n.call(e,a.state,t)}))}(e,o+n,t,u)})),a.forEachAction((function(t,n){var a=t.root?n:o+n,i=t.handler||t;!function(e,t,n,a){var i=e._actions[t]||(e._actions[t]=[]);i.push((function(t){var i,r=n.call(e,{dispatch:a.dispatch,commit:a.commit,getters:a.getters,state:a.state,rootGetters:e.getters,rootState:e.state},t);return(i=r)&&"function"==typeof i.then||(r=Promise.resolve(r)),e._devtoolHook?r.catch((function(t){throw e._devtoolHook.emit("vuex:error",t),t})):r}))}(e,a,i,u)})),a.forEachGetter((function(t,n){!function(e,t,n,a){if(e._wrappedGetters[t])return void console.error("[vuex] duplicate getter key: "+t);e._wrappedGetters[t]=function(e){return n(a.state,a.getters,e.state,e.getters)}}(e,o+n,t,u)})),a.forEachChild((function(a,r){h(e,t,n.concat(r),a,i)}))}function p(e,t){if(!e._makeLocalGettersCache[t]){var n={},a=t.length;Object.keys(e.getters).forEach((function(i){if(i.slice(0,a)===t){var r=i.slice(a);Object.defineProperty(n,r,{get:function(){return e.getters[i]},enumerable:!0})}})),e._makeLocalGettersCache[t]=n}return e._makeLocalGettersCache[t]}function f(e,t){return t.reduce((function(e,t){return e[t]}),e)}function m(e,t,n){return s(e)&&e.type&&(n=t,t=e,e=e.type),l("string"==typeof e,"expects string as the type, but found "+typeof e+"."),{type:e,payload:t,options:n}}var g="vuex:mutations",_="vuex:actions",v="vuex",b=0;function y(e,t){i({id:"org.vuejs.vuex",app:e,label:"Vuex",homepage:"https://next.vuex.vuejs.org/",logo:"https://vuejs.org/images/icons/favicon-96x96.png",packageName:"vuex",componentStateTypes:["vuex bindings"]},(function(n){n.addTimelineLayer({id:g,label:"Vuex Mutations",color:w}),n.addTimelineLayer({id:_,label:"Vuex Actions",color:w}),n.addInspector({id:v,label:"Vuex",icon:"storage",treeFilterPlaceholder:"Filter stores..."}),n.on.getInspectorTree((function(n){if(n.app===e&&n.inspectorId===v)if(n.filter){var a=[];C(a,t._modules.root,n.filter,""),n.rootNodes=a}else n.rootNodes=[S(t._modules.root,"")]})),n.on.getInspectorState((function(n){if(n.app===e&&n.inspectorId===v){var a=n.nodeId;p(t,a),n.state=function(e,t,n){t="root"===n?t:t[n];var a=Object.keys(t),i={state:Object.keys(e.state).map((function(t){return{key:t,editable:!0,value:e.state[t]}}))};if(a.length){var r=function(e){var t={};return Object.keys(e).forEach((function(n){var a=n.split("/");if(a.length>1){var i=t,r=a.pop();a.forEach((function(e){i[e]||(i[e]={_custom:{value:{},display:e,tooltip:"Module",abstract:!0}}),i=i[e]._custom.value})),i[r]=T((function(){return e[n]}))}else t[n]=T((function(){return e[n]}))})),t}(t);i.getters=Object.keys(r).map((function(e){return{key:e.endsWith("/")?x(e):e,editable:!1,value:T((function(){return r[e]}))}}))}return i}((i=t._modules,(o=(r=a).split("/").filter((function(e){return e}))).reduce((function(e,t,n){var a=e[t];if(!a)throw new Error('Missing module "'+t+'" for path "'+r+'".');return n===o.length-1?a:a._children}),"root"===r?i:i.root._children)),"root"===a?t.getters:t._makeLocalGettersCache,a)}var i,r,o})),n.on.editInspectorState((function(n){if(n.app===e&&n.inspectorId===v){var a=n.nodeId,i=n.path;"root"!==a&&(i=a.split("/").filter(Boolean).concat(i)),t._withCommit((function(){n.set(t._state.data,i,n.state.value)}))}})),t.subscribe((function(e,t){var a={};e.payload&&(a.payload=e.payload),a.state=t,n.notifyComponentUpdate(),n.sendInspectorTree(v),n.sendInspectorState(v),n.addTimelineEvent({layerId:g,event:{time:Date.now(),title:e.type,data:a}})})),t.subscribeAction({before:function(e,t){var a={};e.payload&&(a.payload=e.payload),e._id=b++,e._time=Date.now(),a.state=t,n.addTimelineEvent({layerId:_,event:{time:e._time,title:e.type,groupId:e._id,subtitle:"start",data:a}})},after:function(e,t){var a={},i=Date.now()-e._time;a.duration={_custom:{type:"duration",display:i+"ms",tooltip:"Action duration",value:i}},e.payload&&(a.payload=e.payload),a.state=t,n.addTimelineEvent({layerId:_,event:{time:Date.now(),title:e.type,groupId:e._id,subtitle:"end",data:a}})}})}))}var w=8702998,k={label:"namespaced",textColor:16777215,backgroundColor:6710886};function x(e){return e&&"root"!==e?e.split("/").slice(-2,-1)[0]:"Root"}function S(e,t){return{id:t||"root",label:x(t),tags:e.namespaced?[k]:[],children:Object.keys(e._children).map((function(n){return S(e._children[n],t+n+"/")}))}}function C(e,t,n,a){a.includes(n)&&e.push({id:a||"root",label:a.endsWith("/")?a.slice(0,a.length-1):a||"Root",tags:t.namespaced?[k]:[]}),Object.keys(t._children).forEach((function(i){C(e,t._children[i],n,a+i+"/")}))}function T(e){try{return e()}catch(e){return e}}var E=function(e,t){this.runtime=t,this._children=Object.create(null),this._rawModule=e;var n=e.state;this.state=("function"==typeof n?n():n)||{}},P={namespaced:{configurable:!0}};P.namespaced.get=function(){return!!this._rawModule.namespaced},E.prototype.addChild=function(e,t){this._children[e]=t},E.prototype.removeChild=function(e){delete this._children[e]},E.prototype.getChild=function(e){return this._children[e]},E.prototype.hasChild=function(e){return e in this._children},E.prototype.update=function(e){this._rawModule.namespaced=e.namespaced,e.actions&&(this._rawModule.actions=e.actions),e.mutations&&(this._rawModule.mutations=e.mutations),e.getters&&(this._rawModule.getters=e.getters)},E.prototype.forEachChild=function(e){o(this._children,e)},E.prototype.forEachGetter=function(e){this._rawModule.getters&&o(this._rawModule.getters,e)},E.prototype.forEachAction=function(e){this._rawModule.actions&&o(this._rawModule.actions,e)},E.prototype.forEachMutation=function(e){this._rawModule.mutations&&o(this._rawModule.mutations,e)},Object.defineProperties(E.prototype,P);var A=function(e){this.register([],e,!1)};function L(e,t,n){if(z(e,n),t.update(n),n.modules)for(var a in n.modules){if(!t.getChild(a))return void console.warn("[vuex] trying to add a new module '"+a+"' on hot reloading, manual reload is needed");L(e.concat(a),t.getChild(a),n.modules[a])}}A.prototype.get=function(e){return e.reduce((function(e,t){return e.getChild(t)}),this.root)},A.prototype.getNamespace=function(e){var t=this.root;return e.reduce((function(e,n){return e+((t=t.getChild(n)).namespaced?n+"/":"")}),"")},A.prototype.update=function(e){L([],this.root,e)},A.prototype.register=function(e,t,n){var a=this;void 0===n&&(n=!0),z(e,t);var i=new E(t,n);0===e.length?this.root=i:this.get(e.slice(0,-1)).addChild(e[e.length-1],i);t.modules&&o(t.modules,(function(t,i){a.register(e.concat(i),t,n)}))},A.prototype.unregister=function(e){var t=this.get(e.slice(0,-1)),n=e[e.length-1],a=t.getChild(n);a?a.runtime&&t.removeChild(n):console.warn("[vuex] trying to unregister module '"+n+"', which is not registered")},A.prototype.isRegistered=function(e){var t=this.get(e.slice(0,-1)),n=e[e.length-1];return!!t&&t.hasChild(n)};var M={assert:function(e){return"function"==typeof e},expected:"function"},R={getters:M,mutations:M,actions:{assert:function(e){return"function"==typeof e||"object"==typeof e&&"function"==typeof e.handler},expected:'function or object with "handler" function'}};function z(e,t){Object.keys(R).forEach((function(n){if(t[n]){var a=R[n];o(t[n],(function(t,i){l(a.assert(t),function(e,t,n,a,i){var r=t+" should be "+i+' but "'+t+"."+n+'"';e.length>0&&(r+=' in module "'+e.join(".")+'"');return r+=" is "+JSON.stringify(a)+".",r}(e,n,i,t,a.expected))}))}}))}var N=function e(t){var n=this;void 0===t&&(t={}),l("undefined"!=typeof Promise,"vuex requires a Promise polyfill in this browser."),l(this instanceof e,"store must be called with the new operator.");var a=t.plugins;void 0===a&&(a=[]);var i=t.strict;void 0===i&&(i=!1);var r=t.devtools;this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new A(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._makeLocalGettersCache=Object.create(null),this._scope=null,this._devtools=r;var o=this,s=this.dispatch,u=this.commit;this.dispatch=function(e,t){return s.call(o,e,t)},this.commit=function(e,t,n){return u.call(o,e,t,n)},this.strict=i;var c=this._modules.root.state;h(this,c,[],this._modules.root),d(this,c),a.forEach((function(e){return e(n)}))},I={state:{configurable:!0}};N.prototype.install=function(e,n){e.provide(n||t,this),e.config.globalProperties.$store=this,(void 0===this._devtools||this._devtools)&&y(e,this)},I.state.get=function(){return this._state.data},I.state.set=function(e){l(!1,"use store.replaceState() to explicit replace store state.")},N.prototype.commit=function(e,t,n){var a=this,i=m(e,t,n),r=i.type,o=i.payload,s=i.options,l={type:r,payload:o},u=this._mutations[r];u?(this._withCommit((function(){u.forEach((function(e){e(o)}))})),this._subscribers.slice().forEach((function(e){return e(l,a.state)})),s&&s.silent&&console.warn("[vuex] mutation type: "+r+". Silent option has been removed. Use the filter functionality in the vue-devtools")):console.error("[vuex] unknown mutation type: "+r)},N.prototype.dispatch=function(e,t){var n=this,a=m(e,t),i=a.type,r=a.payload,o={type:i,payload:r},s=this._actions[i];if(s){try{this._actionSubscribers.slice().filter((function(e){return e.before})).forEach((function(e){return e.before(o,n.state)}))}catch(e){console.warn("[vuex] error in before action subscribers: "),console.error(e)}var l=s.length>1?Promise.all(s.map((function(e){return e(r)}))):s[0](r);return new Promise((function(e,t){l.then((function(t){try{n._actionSubscribers.filter((function(e){return e.after})).forEach((function(e){return e.after(o,n.state)}))}catch(e){console.warn("[vuex] error in after action subscribers: "),console.error(e)}e(t)}),(function(e){try{n._actionSubscribers.filter((function(e){return e.error})).forEach((function(t){return t.error(o,n.state,e)}))}catch(e){console.warn("[vuex] error in error action subscribers: "),console.error(e)}t(e)}))}))}console.error("[vuex] unknown action type: "+i)},N.prototype.subscribe=function(e,t){return u(e,this._subscribers,t)},N.prototype.subscribeAction=function(e,t){return u("function"==typeof e?{before:e}:e,this._actionSubscribers,t)},N.prototype.watch=function(t,n,a){var i=this;return l("function"==typeof t,"store.watch only accepts a function."),e.watch((function(){return t(i.state,i.getters)}),n,Object.assign({},a))},N.prototype.replaceState=function(e){var t=this;this._withCommit((function(){t._state.data=e}))},N.prototype.registerModule=function(e,t,n){void 0===n&&(n={}),"string"==typeof e&&(e=[e]),l(Array.isArray(e),"module path must be a string or an Array."),l(e.length>0,"cannot register the root module by using registerModule."),this._modules.register(e,t),h(this,this.state,e,this._modules.get(e),n.preserveState),d(this,this.state)},N.prototype.unregisterModule=function(e){var t=this;"string"==typeof e&&(e=[e]),l(Array.isArray(e),"module path must be a string or an Array."),this._modules.unregister(e),this._withCommit((function(){delete f(t.state,e.slice(0,-1))[e[e.length-1]]})),c(this)},N.prototype.hasModule=function(e){return"string"==typeof e&&(e=[e]),l(Array.isArray(e),"module path must be a string or an Array."),this._modules.isRegistered(e)},N.prototype.hotUpdate=function(e){this._modules.update(e),c(this,!0)},N.prototype._withCommit=function(e){var t=this._committing;this._committing=!0,e(),this._committing=t},Object.defineProperties(N.prototype,I);var O=$((function(e,t){var n={};return F(t)||console.error("[vuex] mapState: mapper parameter must be either an Array or an Object"),B(t).forEach((function(t){var a=t.key,i=t.val;n[a]=function(){var t=this.$store.state,n=this.$store.getters;if(e){var a=V(this.$store,"mapState",e);if(!a)return;t=a.context.state,n=a.context.getters}return"function"==typeof i?i.call(this,t,n):t[i]},n[a].vuex=!0})),n})),D=$((function(e,t){var n={};return F(t)||console.error("[vuex] mapMutations: mapper parameter must be either an Array or an Object"),B(t).forEach((function(t){var a=t.key,i=t.val;n[a]=function(){for(var t=[],n=arguments.length;n--;)t[n]=arguments[n];var a=this.$store.commit;if(e){var r=V(this.$store,"mapMutations",e);if(!r)return;a=r.context.commit}return"function"==typeof i?i.apply(this,[a].concat(t)):a.apply(this.$store,[i].concat(t))}})),n})),q=$((function(e,t){var n={};return F(t)||console.error("[vuex] mapGetters: mapper parameter must be either an Array or an Object"),B(t).forEach((function(t){var a=t.key,i=t.val;i=e+i,n[a]=function(){if(!e||V(this.$store,"mapGetters",e)){if(i in this.$store.getters)return this.$store.getters[i];console.error("[vuex] unknown getter: "+i)}},n[a].vuex=!0})),n})),j=$((function(e,t){var n={};return F(t)||console.error("[vuex] mapActions: mapper parameter must be either an Array or an Object"),B(t).forEach((function(t){var a=t.key,i=t.val;n[a]=function(){for(var t=[],n=arguments.length;n--;)t[n]=arguments[n];var a=this.$store.dispatch;if(e){var r=V(this.$store,"mapActions",e);if(!r)return;a=r.context.dispatch}return"function"==typeof i?i.apply(this,[a].concat(t)):a.apply(this.$store,[i].concat(t))}})),n}));function B(e){return F(e)?Array.isArray(e)?e.map((function(e){return{key:e,val:e}})):Object.keys(e).map((function(t){return{key:t,val:e[t]}})):[]}function F(e){return Array.isArray(e)||s(e)}function $(e){return function(t,n){return"string"!=typeof t?(n=t,t=""):"/"!==t.charAt(t.length-1)&&(t+="/"),e(t,n)}}function V(e,t,n){var a=e._modulesNamespaceMap[n];return a||console.error("[vuex] module namespace not found in "+t+"(): "+n),a}function U(e,t,n){var a=n?e.groupCollapsed:e.group;try{a.call(e,t)}catch(n){e.log(t)}}function H(e){try{e.groupEnd()}catch(t){e.log("—— log end ——")}}function W(){var e=new Date;return" @ "+G(e.getHours(),2)+":"+G(e.getMinutes(),2)+":"+G(e.getSeconds(),2)+"."+G(e.getMilliseconds(),3)}function G(e,t){return n="0",a=t-e.toString().length,new Array(a+1).join(n)+e;var n,a}return{version:"4.1.0",Store:N,storeKey:t,createStore:function(e){return new N(e)},useStore:function(n){return void 0===n&&(n=null),e.inject(null!==n?n:t)},mapState:O,mapMutations:D,mapGetters:q,mapActions:j,createNamespacedHelpers:function(e){return{mapState:O.bind(null,e),mapGetters:q.bind(null,e),mapMutations:D.bind(null,e),mapActions:j.bind(null,e)}},createLogger:function(e){void 0===e&&(e={});var t=e.collapsed;void 0===t&&(t=!0);var n=e.filter;void 0===n&&(n=function(e,t,n){return!0});var a=e.transformer;void 0===a&&(a=function(e){return e});var i=e.mutationTransformer;void 0===i&&(i=function(e){return e});var o=e.actionFilter;void 0===o&&(o=function(e,t){return!0});var s=e.actionTransformer;void 0===s&&(s=function(e){return e});var l=e.logMutations;void 0===l&&(l=!0);var u=e.logActions;void 0===u&&(u=!0);var c=e.logger;return void 0===c&&(c=console),function(e){var d=r(e.state);void 0!==c&&(l&&e.subscribe((function(e,o){var s=r(o);if(n(e,d,s)){var l=W(),u=i(e),h="mutation "+e.type+l;U(c,h,t),c.log("%c prev state","color: #9E9E9E; font-weight: bold",a(d)),c.log("%c mutation","color: #03A9F4; font-weight: bold",u),c.log("%c next state","color: #4CAF50; font-weight: bold",a(s)),H(c)}d=s})),u&&e.subscribeAction((function(e,n){if(o(e,n)){var a=W(),i=s(e),r="action "+e.type+a;U(c,r,t),c.log("%c action","color: #03A9F4; font-weight: bold",i),H(c)}})))}}}}(Vue),VueI18n=function(e,t){"use strict";function n(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const a="undefined"!=typeof window,i=(e,t=!1)=>t?Symbol.for(e):Symbol(e),r=(e,t,n)=>o({l:e,k:t,s:n}),o=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),s=e=>"number"==typeof e&&isFinite(e),l=e=>"[object Date]"===C(e),u=e=>"[object RegExp]"===C(e),c=e=>T(e)&&0===Object.keys(e).length,d=Object.assign,h=Object.create,p=(e=null)=>h(e);function f(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function m(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}const g=Object.prototype.hasOwnProperty;function _(e,t){return g.call(e,t)}const v=Array.isArray,b=e=>"function"==typeof e,y=e=>"string"==typeof e,w=e=>"boolean"==typeof e,k=e=>null!==e&&"object"==typeof e,x=e=>k(e)&&b(e.then)&&b(e.catch),S=Object.prototype.toString,C=e=>S.call(e),T=e=>"[object Object]"===C(e);function E(e,t=""){return e.reduce(((e,n,a)=>0===a?e+n:e+t+n),"")}const P=e=>!k(e)||v(e);function A(e,t){if(P(e)||P(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:e,des:t}=n.pop();Object.keys(e).forEach((a=>{"__proto__"!==a&&(k(e[a])&&!k(t[a])&&(t[a]=Array.isArray(e[a])?[]:p()),P(t[a])||P(e[a])?t[a]=e[a]:n.push({src:e[a],des:t[a]}))}))}}const L={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16};function M(e){throw e}const R=" ",z="\r",N="\n",I=String.fromCharCode(8232),O=String.fromCharCode(8233);function D(e){const t=e;let n=0,a=1,i=1,r=0;const o=e=>t[e]===z&&t[e+1]===N,s=e=>t[e]===O,l=e=>t[e]===I,u=e=>o(e)||s(e)||l(e)?N:t[e];function c(){return r=0,(e=>o(e)||(e=>t[e]===N)(e)||s(e)||l(e))(n)&&(a++,i=0),o(n)&&n++,n++,i++,t[n]}return{index:()=>n,line:()=>a,column:()=>i,peekOffset:()=>r,charAt:u,currentChar:()=>u(n),currentPeek:()=>u(n+r),next:c,peek:function(){return o(n+r)&&r++,r++,t[n+r]},reset:function(){n=0,a=1,i=1,r=0},resetPeek:function(e=0){r=e},skipToPeek:function(){const e=n+r;for(;e!==n;)c();r=0}}}const q=void 0,j="'";function B(e,t={}){const n=!1!==t.location,a=D(e),i=()=>a.index(),r=()=>({line:a.line(),column:a.column(),offset:a.index()}),o=r(),s=i(),l={currentType:13,offset:s,startLoc:o,endLoc:o,lastType:13,lastOffset:s,lastStartLoc:o,lastEndLoc:o,braceNest:0,inLinked:!1,text:""},{onError:u}=t;function c(e,t,a){e.endLoc=r(),e.currentType=t;const i={type:t};return n&&(i.loc=function(e,t){return{start:e,end:t}}(e.startLoc,e.endLoc)),null!=a&&(i.value=a),i}const d=e=>c(e,13);function h(e,t){return e.currentChar()===t?(e.next(),t):(L.EXPECTED_TOKEN,r(),"")}function p(e){let t="";for(;e.currentPeek()===R||e.currentPeek()===N;)t+=e.currentPeek(),e.peek();return t}function f(e){const t=p(e);return e.skipToPeek(),t}function m(e){if(e===q)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function g(e){p(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function _(e,t=!0){const n=(t=!1,a="")=>{const i=e.currentPeek();return"{"===i?t:"@"!==i&&i?"|"===i?!(a===R||a===N):i===R?(e.peek(),n(!0,R)):i!==N||(e.peek(),n(!0,N)):t},a=n();return t&&e.resetPeek(),a}function v(e,t){const n=e.currentChar();return n===q?q:t(n)?(e.next(),n):null}function b(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}function y(e){return v(e,b)}function w(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t||45===t}function k(e){return v(e,w)}function x(e){const t=e.charCodeAt(0);return t>=48&&t<=57}function S(e){return v(e,x)}function C(e){const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function T(e){return v(e,C)}function E(e){let t="",n="";for(;t=S(e);)n+=t;return n}function P(e){return e!==j&&e!==N}function A(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return M(e,t,4);case"U":return M(e,t,6);default:return L.UNKNOWN_ESCAPE_SEQUENCE,r(),""}}function M(e,t,n){h(e,t);let a="";for(let t=0;t=1&&(L.NOT_ALLOW_NEST_PLACEHOLDER,r()),e.next(),n=c(t,2,"{"),f(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&(L.EMPTY_PLACEHOLDER,r()),e.next(),n=c(t,3,"}"),t.braceNest--,t.braceNest>0&&f(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&(L.UNTERMINATED_CLOSING_BRACE,r()),n=B(e,t)||d(t),t.braceNest=0,n;default:{let a=!0,i=!0,o=!0;if(g(e))return t.braceNest>0&&(L.UNTERMINATED_CLOSING_BRACE,r()),n=c(t,1,I(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(4===t.currentType||5===t.currentType||6===t.currentType))return L.UNTERMINATED_CLOSING_BRACE,r(),t.braceNest=0,F(e,t);if(a=function(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const a=m(e.currentPeek());return e.resetPeek(),a}(e,t))return n=c(t,4,function(e){f(e);let t="",n="";for(;t=k(e);)n+=t;return e.currentChar()===q&&(L.UNTERMINATED_CLOSING_BRACE,r()),n}(e)),f(e),n;if(i=function(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const a=function(e){if(e===q)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),a}(e,t))return n=c(t,5,function(e){f(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${E(e)}`):t+=E(e),e.currentChar()===q&&(L.UNTERMINATED_CLOSING_BRACE,r()),t}(e)),f(e),n;if(o=function(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const a=e.currentPeek()===j;return e.resetPeek(),a}(e,t))return n=c(t,6,function(e){f(e),h(e,"'");let t="",n="";for(;t=v(e,P);)n+="\\"===t?A(e):t;const a=e.currentChar();return a===N||a===q?(L.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),a===N&&(e.next(),h(e,"'")),n):(h(e,"'"),n)}(e)),f(e),n;if(!a&&!i&&!o)return n=c(t,12,function(e){f(e);let t="",n="";for(;t=v(e,z);)n+=t;return n}(e)),L.INVALID_TOKEN_IN_PLACEHOLDER,r(),n.value,f(e),n;break}}return n}function B(e,t){const{currentType:n}=t;let a=null;const i=e.currentChar();switch(7!==n&&8!==n&&11!==n&&9!==n||i!==N&&i!==R||(L.INVALID_LINKED_FORMAT,r()),i){case"@":return e.next(),a=c(t,7,"@"),t.inLinked=!0,a;case".":return f(e),e.next(),c(t,8,".");case":":return f(e),e.next(),c(t,9,":");default:return g(e)?(a=c(t,1,I(e)),t.braceNest=0,t.inLinked=!1,a):function(e,t){const{currentType:n}=t;if(7!==n)return!1;p(e);const a="."===e.currentPeek();return e.resetPeek(),a}(e,t)||function(e,t){const{currentType:n}=t;if(7!==n&&11!==n)return!1;p(e);const a=":"===e.currentPeek();return e.resetPeek(),a}(e,t)?(f(e),B(e,t)):function(e,t){const{currentType:n}=t;if(8!==n)return!1;p(e);const a=m(e.currentPeek());return e.resetPeek(),a}(e,t)?(f(e),c(t,11,function(e){let t="",n="";for(;t=y(e);)n+=t;return n}(e))):function(e,t){const{currentType:n}=t;if(9!==n)return!1;const a=()=>{const t=e.currentPeek();return"{"===t?m(e.peek()):!("@"===t||"|"===t||":"===t||"."===t||t===R||!t)&&(t===N?(e.peek(),a()):_(e,!1))},i=a();return e.resetPeek(),i}(e,t)?(f(e),"{"===i?O(e,t)||a:c(t,10,function(e){const t=n=>{const a=e.currentChar();return"{"!==a&&"@"!==a&&"|"!==a&&"("!==a&&")"!==a&&a?a===R?n:(n+=a,e.next(),t(n)):n};return t("")}(e))):(7===n&&(L.INVALID_LINKED_FORMAT,r()),t.braceNest=0,t.inLinked=!1,F(e,t))}}function F(e,t){let n={type:13};if(t.braceNest>0)return O(e,t)||d(t);if(t.inLinked)return B(e,t)||d(t);switch(e.currentChar()){case"{":return O(e,t)||d(t);case"}":return L.UNBALANCED_CLOSING_BRACE,r(),e.next(),c(t,3,"}");case"@":return B(e,t)||d(t);default:if(g(e))return n=c(t,1,I(e)),t.braceNest=0,t.inLinked=!1,n;if(_(e))return c(t,0,function(e){let t="";for(;;){const n=e.currentChar();if("{"===n||"}"===n||"@"===n||"|"===n||!n)break;if(n===R||n===N)if(_(e))t+=n,e.next();else{if(g(e))break;t+=n,e.next()}else t+=n,e.next()}return t}(e))}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:o}=l;return l.lastType=e,l.lastOffset=t,l.lastStartLoc=n,l.lastEndLoc=o,l.offset=i(),l.startLoc=r(),a.currentChar()===q?c(l,13):F(a,l)},currentOffset:i,currentPosition:r,context:()=>l}}const F=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function $(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||n,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function V(e={}){const t=!1!==e.location,{onError:n}=e;function a(e,n,a){const i={type:e};return t&&(i.start=n,i.end=n,i.loc={start:a,end:a}),i}function i(e,n,a,i){t&&(e.end=n,e.loc&&(e.loc.end=a))}function r(e,t){const n=e.context(),r=a(3,n.offset,n.startLoc);return r.value=t,i(r,e.currentOffset(),e.currentPosition()),r}function o(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:o}=n,s=a(5,r,o);return s.index=parseInt(t,10),e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function s(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:o}=n,s=a(4,r,o);return s.key=t,e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function l(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:o}=n,s=a(9,r,o);return s.value=t.replace(F,$),e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function u(e){const t=e.context(),n=a(6,t.offset,t.startLoc);let r=e.nextToken();if(8===r.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:r,lastStartLoc:o}=n,s=a(8,r,o);return 11!==t.type?(L.UNEXPECTED_EMPTY_LINKED_MODIFIER,n.lastStartLoc,s.value="",i(s,r,o),{nextConsumeToken:t,node:s}):(null==t.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,n.lastStartLoc,U(t)),s.value=t.value||"",i(s,e.currentOffset(),e.currentPosition()),{node:s})}(e);n.modifier=t.node,r=t.nextConsumeToken||e.nextToken()}switch(9!==r.type&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(r)),r=e.nextToken(),2===r.type&&(r=e.nextToken()),r.type){case 10:null==r.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(r)),n.key=function(e,t){const n=e.context(),r=a(7,n.offset,n.startLoc);return r.value=t,i(r,e.currentOffset(),e.currentPosition()),r}(e,r.value||"");break;case 4:null==r.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(r)),n.key=s(e,r.value||"");break;case 5:null==r.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(r)),n.key=o(e,r.value||"");break;case 6:null==r.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(r)),n.key=l(e,r.value||"");break;default:{L.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc;const o=e.context(),s=a(7,o.offset,o.startLoc);return s.value="",i(s,o.offset,o.startLoc),n.key=s,i(n,o.offset,o.startLoc),{nextConsumeToken:r,node:n}}}return i(n,e.currentOffset(),e.currentPosition()),{node:n}}function c(e){const t=e.context(),n=a(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let c=null;do{const a=c||e.nextToken();switch(c=null,a.type){case 0:null==a.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(a)),n.items.push(r(e,a.value||""));break;case 5:null==a.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(a)),n.items.push(o(e,a.value||""));break;case 4:null==a.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(a)),n.items.push(s(e,a.value||""));break;case 6:null==a.value&&(L.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,U(a)),n.items.push(l(e,a.value||""));break;case 7:{const t=u(e);n.items.push(t.node),c=t.nextConsumeToken||null;break}}}while(13!==t.currentType&&1!==t.currentType);return i(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}return{parse:function(n){const r=B(n,d({},e)),o=r.context(),s=a(0,o.offset,o.startLoc);return t&&s.loc&&(s.loc.source=n),s.body=function(e){const t=e.context(),{offset:n,startLoc:r}=t,o=c(e);return 13===t.currentType?o:function(e,t,n,r){const o=e.context();let s=0===r.items.length;const l=a(1,t,n);l.cases=[],l.cases.push(r);do{const t=c(e);s||(s=0===t.items.length),l.cases.push(t)}while(13!==o.currentType);return i(l,e.currentOffset(),e.currentPosition()),l}(e,n,r,o)}(r),e.onCacheKey&&(s.cacheKey=e.onCacheKey(n)),13!==o.currentType&&(L.UNEXPECTED_LEXICAL_ANALYSIS,o.lastStartLoc,n[o.offset]),i(s,r.currentOffset(),r.currentPosition()),s}}}function U(e){if(13===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function H(e,t){for(let n=0;n1){e.push(`${n("plural")}([`),e.indent(a());const i=t.cases.length;for(let n=0;n{const n=y(t.mode)?t.mode:"normal",a=y(t.filename)?t.filename:"message.intl",i=!!t.sourceMap,r=null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",o=t.needIndent?t.needIndent:"arrow"!==n,s=e.helpers||[],l=function(e,t){const{sourceMap:n,filename:a,breakLineCode:i,needIndent:r}=t,o={filename:a,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:i,needIndent:r,indentLevel:0};function s(e,t){o.code+=e}function l(e,t=!0){const n=t?i:"";s(r?n+" ".repeat(e):n)}return!1!==t.location&&e.loc&&(o.source=e.loc.source),{context:()=>o,push:s,indent:function(e=!0){const t=++o.indentLevel;e&&l(t)},deindent:function(e=!0){const t=--o.indentLevel;e&&l(t)},newline:function(){l(o.indentLevel)},helper:e=>`_${e}`,needIndent:()=>o.needIndent}}(e,{mode:n,filename:a,sourceMap:i,breakLineCode:r,needIndent:o});l.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),l.indent(o),s.length>0&&(l.push(`const { ${E(s.map((e=>`${e}: _${e}`)),", ")} } = ctx`),l.newline()),l.push("return "),K(l,e),l.deindent(o),l.push("}"),delete e.helpers;const{code:u,map:c}=l.context();return{ast:e,code:u,map:c?c.toJSON():void 0}};function Z(e,t={}){const n=d({},t),a=!!n.jit,i=!!n.minify,r=null==n.optimize||n.optimize,o=V(n).parse(e);return a?(r&&function(e){const t=e.body;2===t.type?G(t):t.cases.forEach((e=>G(e)))}(o),i&&Y(o),{ast:o,code:""}):(function(e){const t=function(e){const t={ast:e,helpers:new Set};return{context:()=>t,helper:e=>(t.helpers.add(e),e)}}(e);t.helper("normalize"),e.body&&W(e.body,t);const n=t.context();e.helpers=Array.from(n.helpers)}(o,n),Q(o,n))}function J(e){return k(e)&&0===ie(e)&&(_(e,"b")||_(e,"body"))}const X=["b","body"],ee=["c","cases"],te=["s","static"],ne=["i","items"],ae=["t","type"];function ie(e){return le(e,ae)}const re=["v","value"];const oe=["m","modifier"],se=["k","key"];function le(e,t,n){for(let n=0;nfunction(e,t){const n=le(t,X);if(null==n)throw ce(0);if(1===ie(n)){const t=function(e){return le(e,ee,[])}(n);return e.plural(t.reduce(((t,n)=>[...t,he(e,n)]),[]))}return he(e,n)}(t,e)}function he(e,t){const n=function(e){return le(e,te)}(t);if(null!=n)return"text"===e.type?n:e.normalize([n]);{const n=function(e){return le(e,ne,[])}(t).reduce(((t,n)=>[...t,pe(e,n)]),[]);return e.normalize(n)}}function pe(e,t){const n=ie(t);switch(n){case 3:case 9:case 7:case 8:return function(e,t){const n=le(e,re);if(null!=n)return n;throw ce(t)}(t,n);case 4:{const a=t;if(_(a,"k")&&a.k)return e.interpolate(e.named(a.k));if(_(a,"key")&&a.key)return e.interpolate(e.named(a.key));throw ce(n)}case 5:{const a=t;if(_(a,"i")&&s(a.i))return e.interpolate(e.list(a.i));if(_(a,"index")&&s(a.index))return e.interpolate(e.list(a.index));throw ce(n)}case 6:{const n=t,a=function(e){return le(e,oe)}(n),i=function(e){const t=le(e,se);if(t)return t;throw ce(6)}(n);return e.linked(pe(e,i),a?pe(e,a):void 0,e.type)}default:throw new Error(`unhandled node on format message part: ${n}`)}}const fe=e=>e;let me=p();const ge={INVALID_ARGUMENT:17,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_NON_STRING_MESSAGE:20,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23};function _e(e,t){return null!=t.locale?be(t.locale):be(e.locale)}let ve;function be(e){if(y(e))return e;if(b(e)){if(e.resolvedOnce&&null!=ve)return ve;if("Function"===e.constructor.name){const t=e();if(x(t))throw Error(ge.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return ve=t}throw Error(ge.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}throw Error(ge.NOT_SUPPORT_LOCALE_TYPE)}function ye(e,t,n){return[...new Set([n,...v(t)?t:k(t)?Object.keys(t):y(t)?[t]:[n]])]}function we(e,t,n){const a=y(n)?n:Re,i=e;i.__localeChainCache||(i.__localeChainCache=new Map);let r=i.__localeChainCache.get(a);if(!r){r=[];let e=[n];for(;v(e);)e=ke(r,e,t);const o=v(t)||!T(t)?t:t.default?t.default:null;e=y(o)?[o]:o,v(e)&&ke(r,e,!1),i.__localeChainCache.set(a,r)}return r}function ke(e,t,n){let a=!0;for(let i=0;i`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;let Ie,Oe,De,qe=null;const je=e=>{qe=e},Be=()=>qe;let Fe=0;function $e(e={}){const t=b(e.onWarn)?e.onWarn:n,a=y(e.version)?e.version:Le,i=y(e.locale)||b(e.locale)?e.locale:Re,r=b(i)?Re:i,o=v(e.fallbackLocale)||T(e.fallbackLocale)||y(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:r,s=T(e.messages)?e.messages:Ve(r),l=T(e.datetimeFormats)?e.datetimeFormats:Ve(r),c=T(e.numberFormats)?e.numberFormats:Ve(r),h=d(p(),e.modifiers,{upper:(e,t)=>"text"===t&&y(e)?e.toUpperCase():"vnode"===t&&k(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&y(e)?e.toLowerCase():"vnode"===t&&k(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&y(e)?Ne(e):"vnode"===t&&k(e)&&"__v_isVNode"in e?Ne(e.children):e}),f=e.pluralRules||p(),m=b(e.missing)?e.missing:null,g=!w(e.missingWarn)&&!u(e.missingWarn)||e.missingWarn,_=!w(e.fallbackWarn)&&!u(e.fallbackWarn)||e.fallbackWarn,x=!!e.fallbackFormat,S=!!e.unresolving,C=b(e.postTranslation)?e.postTranslation:null,E=T(e.processor)?e.processor:null,P=!w(e.warnHtmlMessage)||e.warnHtmlMessage,A=!!e.escapeParameter,L=b(e.messageCompiler)?e.messageCompiler:Ie,M=b(e.messageResolver)?e.messageResolver:Oe||Ae,R=b(e.localeFallbacker)?e.localeFallbacker:De||ye,z=k(e.fallbackContext)?e.fallbackContext:void 0,N=e,I=k(N.__datetimeFormatters)?N.__datetimeFormatters:new Map,O=k(N.__numberFormatters)?N.__numberFormatters:new Map,D=k(N.__meta)?N.__meta:{};Fe++;const q={version:a,cid:Fe,locale:i,fallbackLocale:o,messages:s,modifiers:h,pluralRules:f,missing:m,missingWarn:g,fallbackWarn:_,fallbackFormat:x,unresolving:S,postTranslation:C,processor:E,warnHtmlMessage:P,escapeParameter:A,messageCompiler:L,messageResolver:M,localeFallbacker:R,fallbackContext:z,onWarn:t,__meta:D};return q.datetimeFormats=l,q.numberFormats=c,q.__datetimeFormatters=I,q.__numberFormatters=O,q}const Ve=e=>({[e]:p()});function Ue(e,t,n,a,i){const{missing:r,onWarn:o}=e;if(null!==r){const a=r(e,n,t,i);return y(a)?a:t}return t}function He(e,t,n){e.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function We(e,t){const n=t.indexOf(e);if(-1===n)return!1;for(let r=n+1;r{Ye.includes(e)?u[e]=n[e]:r[e]=n[e]})),y(a)?r.locale=a:T(a)&&(u=a),T(i)&&(u=i),[r.key||"",o,r,u]}function Qe(e,t,n){const a=e;for(const e in n){const n=`${t}__${e}`;a.__datetimeFormatters.has(n)&&a.__datetimeFormatters.delete(n)}}function Ze(e,...t){const{numberFormats:n,unresolving:a,fallbackLocale:i,onWarn:r,localeFallbacker:o}=e,{__numberFormatters:s}=e,[l,u,h,p]=Xe(...t);w(h.missingWarn)?h.missingWarn:e.missingWarn,w(h.fallbackWarn)?h.fallbackWarn:e.fallbackWarn;const f=!!h.part,m=_e(e,h),g=o(e,i,m);if(!y(l)||""===l)return new Intl.NumberFormat(m,p).format(u);let _,v={},b=null;for(let t=0;t{Je.includes(e)?o[e]=n[e]:r[e]=n[e]})),y(a)?r.locale=a:T(a)&&(o=a),T(i)&&(o=i),[r.key||"",l,r,o]}function et(e,t,n){const a=e;for(const e in n){const n=`${t}__${e}`;a.__numberFormatters.has(n)&&a.__numberFormatters.delete(n)}}const tt=e=>e,nt=e=>"",at="text",it=e=>0===e.length?"":E(e),rt=e=>null==e?"":v(e)||T(e)&&e.toString===S?JSON.stringify(e,null,2):String(e);function ot(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function st(e={}){const t=e.locale,n=function(e){const t=s(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(s(e.named.count)||s(e.named.n))?s(e.named.count)?e.named.count:s(e.named.n)?e.named.n:t:t}(e),a=k(e.pluralRules)&&y(t)&&b(e.pluralRules[t])?e.pluralRules[t]:ot,i=k(e.pluralRules)&&y(t)&&b(e.pluralRules[t])?ot:void 0,r=e.list||[],o=e.named||p();function l(t,n){return(b(e.messages)?e.messages(t,!!n):!!k(e.messages)&&e.messages[t])||(e.parent?e.parent.message(t):nt)}s(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,o);const u=T(e.processor)&&b(e.processor.normalize)?e.processor.normalize:it,c=T(e.processor)&&b(e.processor.interpolate)?e.processor.interpolate:rt,h={list:e=>r[e],named:e=>o[e],plural:e=>e[a(n,e.length,i)],linked:(t,...n)=>{const[a,i]=n;let r="text",o="";1===n.length?k(a)?(o=a.modifier||o,r=a.type||r):y(a)&&(o=a||o):2===n.length&&(y(a)&&(o=a||o),y(i)&&(r=i||r));const s=l(t,!0)(h),u="vnode"===r&&v(s)&&o?s[0]:s;return o?(c=o,e.modifiers?e.modifiers[c]:tt)(u,r):u;var c},message:l,type:T(e.processor)&&y(e.processor.type)?e.processor.type:at,interpolate:c,normalize:u,values:d(p(),r,o)};return h}const lt=()=>"",ut=e=>b(e);function ct(e,...t){const{fallbackFormat:n,postTranslation:a,unresolving:i,messageCompiler:r,fallbackLocale:o,messages:l}=e,[u,c]=pt(...t),d=w(c.missingWarn)?c.missingWarn:e.missingWarn,h=w(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,g=w(c.escapeParameter)?c.escapeParameter:e.escapeParameter,_=!!c.resolvedMessage,x=y(c.default)||w(c.default)?w(c.default)?r?u:()=>u:c.default:n?r?u:()=>u:null,S=n||null!=x&&(y(x)||b(x)),C=_e(e,c);g&&function(e){v(e.list)?e.list=e.list.map((e=>y(e)?f(e):e)):k(e.named)&&Object.keys(e.named).forEach((t=>{y(e.named[t])&&(e.named[t]=f(e.named[t]))}))}(c);let[T,E,P]=_?[u,C,l[C]||p()]:dt(e,u,C,o,h,d),A=T,L=u;if(_||y(A)||J(A)||ut(A)||S&&(A=x,L=A),!(_||(y(A)||J(A)||ut(A))&&y(E)))return i?Me:u;let M=!1;const R=ut(A)?A:ht(e,u,E,A,L,(()=>{M=!0}));if(M)return A;const z=function(e,t,n,a){const{modifiers:i,pluralRules:r,messageResolver:o,fallbackLocale:l,fallbackWarn:u,missingWarn:c,fallbackContext:d}=e,h={locale:t,modifiers:i,pluralRules:r,messages:(a,i)=>{let r=o(n,a);if(null==r&&(d||i)){const[,,n]=dt(d||e,a,t,l,u,c);r=o(n,a)}if(y(r)||J(r)){let n=!1;const i=ht(e,a,t,r,a,(()=>{n=!0}));return n?lt:i}return ut(r)?r:lt}};return e.processor&&(h.processor=e.processor),a.list&&(h.list=a.list),a.named&&(h.named=a.named),s(a.plural)&&(h.pluralIndex=a.plural),h}(e,E,P,c),N=function(e,t,n){return t(n)}(0,R,st(z));let I=a?a(N,u):N;var O;return g&&y(I)&&(O=(O=(O=I).replace(/(\w+)\s*=\s*"([^"]*)"/g,((e,t,n)=>`${t}="${m(n)}"`))).replace(/(\w+)\s*=\s*'([^']*)'/g,((e,t,n)=>`${t}='${m(n)}'`)),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(O)&&(O=O.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach((e=>{O=O.replace(e,"$1javascript:")})),I=O),I}function dt(e,t,n,a,i,r){const{messages:o,onWarn:s,messageResolver:l,localeFallbacker:u}=e,c=u(e,a,n);let d,h=p(),f=null;for(let n=0;na;return e.locale=n,e.key=t,e}const u=s(a,function(e,t,n,a,i,o){return{locale:t,key:n,warnHtmlMessage:i,onError:e=>{throw o&&o(e),e},onCacheKey:e=>r(t,n,e)}}(0,n,i,0,l,o));return u.locale=n,u.key=t,u.source=a,u}function pt(...e){const[t,n,a]=e,i=p();if(!(y(t)||s(t)||ut(t)||J(t)))throw Error(ge.INVALID_ARGUMENT);const r=s(t)?String(t):(ut(t),t);return s(n)?i.plural=n:y(n)?i.default=n:T(n)&&!c(n)?i.named=n:v(n)&&(i.list=n),s(a)?i.plural=a:y(a)?i.default=a:T(a)&&d(i,a),[r,i]}const ft="10.0.8",mt={UNEXPECTED_RETURN_TYPE:24,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:30,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32,NOT_COMPATIBLE_LEGACY_VUE_I18N:33,NOT_AVAILABLE_COMPOSITION_IN_LEGACY:34},gt=i("__translateVNode"),_t=i("__datetimeParts"),vt=i("__numberParts"),bt=i("__setPluralRules"),yt=i("__injectWithOption"),wt=i("__dispose");function kt(e){if(!k(e))return e;if(J(e))return e;for(const t in e)if(_(e,t))if(t.includes(".")){const n=t.split("."),a=n.length-1;let i=e,r=!1;for(let e=0;e{if("locale"in e&&"resource"in e){const{locale:t,resource:n}=e;t?(o[t]=o[t]||p(),A(n,o[t])):A(n,o)}else y(e)&&A(JSON.parse(e),o)})),null==i&&r)for(const e in o)_(o,e)&&kt(o[e]);return o}function St(e,t,n){let a=k(t.messages)?t.messages:p();"__i18nGlobal"in n&&(a=xt(e.locale.value,{messages:a,__i18n:n.__i18nGlobal}));const i=Object.keys(a);if(i.length&&i.forEach((t=>{e.mergeLocaleMessage(t,a[t])})),k(t.datetimeFormats)){const n=Object.keys(t.datetimeFormats);n.length&&n.forEach((n=>{e.mergeDateTimeFormat(n,t.datetimeFormats[n])}))}if(k(t.numberFormats)){const n=Object.keys(t.numberFormats);n.length&&n.forEach((n=>{e.mergeNumberFormat(n,t.numberFormats[n])}))}}function Ct(e){return t.createVNode(t.Text,null,e,0)}const Tt=()=>[],Et=()=>!1;let Pt=0;function At(e){return(n,a,i,r)=>e(a,i,t.getCurrentInstance()||void 0,r)}function Lt(e={}){const{__root:n,__injectWithOption:i}=e,r=void 0===n,o=e.flatJson,l=a?t.ref:t.shallowRef;let c=!w(e.inheritLocale)||e.inheritLocale;const h=l(n&&c?n.locale.value:y(e.locale)?e.locale:Re),p=l(n&&c?n.fallbackLocale.value:y(e.fallbackLocale)||v(e.fallbackLocale)||T(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:h.value),f=l(xt(h.value,e)),m=l(T(e.datetimeFormats)?e.datetimeFormats:{[h.value]:{}}),g=l(T(e.numberFormats)?e.numberFormats:{[h.value]:{}});let x=n?n.missingWarn:!w(e.missingWarn)&&!u(e.missingWarn)||e.missingWarn,S=n?n.fallbackWarn:!w(e.fallbackWarn)&&!u(e.fallbackWarn)||e.fallbackWarn,C=n?n.fallbackRoot:!w(e.fallbackRoot)||e.fallbackRoot,E=!!e.fallbackFormat,P=b(e.missing)?e.missing:null,L=b(e.missing)?At(e.missing):null,M=b(e.postTranslation)?e.postTranslation:null,R=n?n.warnHtmlMessage:!w(e.warnHtmlMessage)||e.warnHtmlMessage,z=!!e.escapeParameter;const N=n?n.modifiers:T(e.modifiers)?e.modifiers:{};let I,O=e.pluralRules||n&&n.pluralRules;I=(()=>{r&&je(null);const t={version:ft,locale:h.value,fallbackLocale:p.value,messages:f.value,modifiers:N,pluralRules:O,missing:null===L?void 0:L,missingWarn:x,fallbackWarn:S,fallbackFormat:E,unresolving:!0,postTranslation:null===M?void 0:M,warnHtmlMessage:R,escapeParameter:z,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};t.datetimeFormats=m.value,t.numberFormats=g.value,t.__datetimeFormatters=T(I)?I.__datetimeFormatters:void 0,t.__numberFormatters=T(I)?I.__numberFormatters:void 0;const n=$e(t);return r&&je(n),n})(),He(I,h.value,p.value);const D=t.computed({get:()=>h.value,set:e=>{h.value=e,I.locale=h.value}}),q=t.computed({get:()=>p.value,set:e=>{p.value=e,I.fallbackLocale=p.value,He(I,h.value,e)}}),j=t.computed((()=>f.value)),B=t.computed((()=>m.value)),F=t.computed((()=>g.value)),$=(e,t,a,i,o,l)=>{let u;h.value,p.value,f.value,m.value,g.value;try{r||(I.fallbackContext=n?Be():void 0),u=e(I)}finally{r||(I.fallbackContext=void 0)}if("translate exists"!==a&&s(u)&&u===Me||"translate exists"===a&&!u){const[e,a]=t();return n&&C?i(n):o(e)}if(l(u))return u;throw Error(mt.UNEXPECTED_RETURN_TYPE)};function V(...e){return $((t=>Reflect.apply(ct,null,[t,...e])),(()=>pt(...e)),"translate",(t=>Reflect.apply(t.t,t,[...e])),(e=>e),(e=>y(e)))}const U={normalize:function(e){return e.map((e=>y(e)||s(e)||w(e)?Ct(String(e)):e))},interpolate:e=>e,type:"vnode"};function H(e){return f.value[e]||{}}Pt++,n&&a&&(t.watch(n.locale,(e=>{c&&(h.value=e,I.locale=e,He(I,h.value,p.value))})),t.watch(n.fallbackLocale,(e=>{c&&(p.value=e,I.fallbackLocale=e,He(I,h.value,p.value))})));const W={id:Pt,locale:D,fallbackLocale:q,get inheritLocale(){return c},set inheritLocale(e){c=e,e&&n&&(h.value=n.locale.value,p.value=n.fallbackLocale.value,He(I,h.value,p.value))},get availableLocales(){return Object.keys(f.value).sort()},messages:j,get modifiers(){return N},get pluralRules(){return O||{}},get isGlobal(){return r},get missingWarn(){return x},set missingWarn(e){x=e,I.missingWarn=x},get fallbackWarn(){return S},set fallbackWarn(e){S=e,I.fallbackWarn=S},get fallbackRoot(){return C},set fallbackRoot(e){C=e},get fallbackFormat(){return E},set fallbackFormat(e){E=e,I.fallbackFormat=E},get warnHtmlMessage(){return R},set warnHtmlMessage(e){R=e,I.warnHtmlMessage=e},get escapeParameter(){return z},set escapeParameter(e){z=e,I.escapeParameter=e},t:V,getLocaleMessage:H,setLocaleMessage:function(e,t){if(o){const n={[e]:t};for(const e in n)_(n,e)&&kt(n[e]);t=n[e]}f.value[e]=t,I.messages=f.value},mergeLocaleMessage:function(e,t){f.value[e]=f.value[e]||{};const n={[e]:t};if(o)for(const e in n)_(n,e)&&kt(n[e]);A(t=n[e],f.value[e]),I.messages=f.value},getPostTranslationHandler:function(){return b(M)?M:null},setPostTranslationHandler:function(e){M=e,I.postTranslation=e},getMissingHandler:function(){return P},setMissingHandler:function(e){null!==e&&(L=At(e)),P=e,I.missing=L},[bt]:function(e){O=e,I.pluralRules=O}};return W.datetimeFormats=B,W.numberFormats=F,W.rt=function(...e){const[t,n,a]=e;if(a&&!k(a))throw Error(mt.INVALID_ARGUMENT);return V(t,n,d({resolvedMessage:!0},a||{}))},W.te=function(e,t){return $((()=>{if(!e)return!1;const n=H(y(t)?t:h.value),a=I.messageResolver(n,e);return J(a)||ut(a)||y(a)}),(()=>[e]),"translate exists",(n=>Reflect.apply(n.te,n,[e,t])),Et,(e=>w(e)))},W.tm=function(e){const t=function(e){let t=null;const n=we(I,p.value,h.value);for(let a=0;aReflect.apply(Ge,null,[t,...e])),(()=>Ke(...e)),"datetime format",(t=>Reflect.apply(t.d,t,[...e])),(()=>ze),(e=>y(e)))},W.n=function(...e){return $((t=>Reflect.apply(Ze,null,[t,...e])),(()=>Xe(...e)),"number format",(t=>Reflect.apply(t.n,t,[...e])),(()=>ze),(e=>y(e)))},W.getDateTimeFormat=function(e){return m.value[e]||{}},W.setDateTimeFormat=function(e,t){m.value[e]=t,I.datetimeFormats=m.value,Qe(I,e,t)},W.mergeDateTimeFormat=function(e,t){m.value[e]=d(m.value[e]||{},t),I.datetimeFormats=m.value,Qe(I,e,t)},W.getNumberFormat=function(e){return g.value[e]||{}},W.setNumberFormat=function(e,t){g.value[e]=t,I.numberFormats=g.value,et(I,e,t)},W.mergeNumberFormat=function(e,t){g.value[e]=d(g.value[e]||{},t),I.numberFormats=g.value,et(I,e,t)},W[yt]=i,W[gt]=function(...e){return $((t=>{let n;const a=t;try{a.processor=U,n=Reflect.apply(ct,null,[a,...e])}finally{a.processor=null}return n}),(()=>pt(...e)),"translate",(t=>t[gt](...e)),(e=>[Ct(e)]),(e=>v(e)))},W[_t]=function(...e){return $((t=>Reflect.apply(Ge,null,[t,...e])),(()=>Ke(...e)),"datetime format",(t=>t[_t](...e)),Tt,(e=>y(e)||v(e)))},W[vt]=function(...e){return $((t=>Reflect.apply(Ze,null,[t,...e])),(()=>Xe(...e)),"number format",(t=>t[vt](...e)),Tt,(e=>y(e)||v(e)))},W}function Mt(e={}){const t=Lt(function(e){const t=y(e.locale)?e.locale:Re,n=y(e.fallbackLocale)||v(e.fallbackLocale)||T(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:t,a=b(e.missing)?e.missing:void 0,i=!w(e.silentTranslationWarn)&&!u(e.silentTranslationWarn)||!e.silentTranslationWarn,r=!w(e.silentFallbackWarn)&&!u(e.silentFallbackWarn)||!e.silentFallbackWarn,o=!w(e.fallbackRoot)||e.fallbackRoot,s=!!e.formatFallbackMessages,l=T(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,h=b(e.postTranslation)?e.postTranslation:void 0,p=!y(e.warnHtmlInMessage)||"off"!==e.warnHtmlInMessage,f=!!e.escapeParameterHtml,m=!w(e.sync)||e.sync;let g=e.messages;if(T(e.sharedMessages)){const t=e.sharedMessages;g=Object.keys(t).reduce(((e,n)=>{const a=e[n]||(e[n]={});return d(a,t[n]),e}),g||{})}const{__i18n:_,__root:k,__injectWithOption:x}=e,S=e.datetimeFormats,C=e.numberFormats;return{locale:t,fallbackLocale:n,messages:g,flatJson:e.flatJson,datetimeFormats:S,numberFormats:C,missing:a,missingWarn:i,fallbackWarn:r,fallbackRoot:o,fallbackFormat:s,modifiers:l,pluralRules:c,postTranslation:h,warnHtmlMessage:p,escapeParameter:f,messageResolver:e.messageResolver,inheritLocale:m,__i18n:_,__root:k,__injectWithOption:x}}(e)),{__extender:n}=e,a={id:t.id,get locale(){return t.locale.value},set locale(e){t.locale.value=e},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(e){t.fallbackLocale.value=e},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(e){t.setMissingHandler(e)},get silentTranslationWarn(){return w(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(e){t.missingWarn=w(e)?!e:e},get silentFallbackWarn(){return w(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(e){t.fallbackWarn=w(e)?!e:e},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(e){t.fallbackFormat=e},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(e){t.setPostTranslationHandler(e)},get sync(){return t.inheritLocale},set sync(e){t.inheritLocale=e},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(e){t.warnHtmlMessage="off"!==e},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(e){t.escapeParameter=e},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t:(...e)=>Reflect.apply(t.t,t,[...e]),rt:(...e)=>Reflect.apply(t.rt,t,[...e]),tc(...e){const[n,a,i]=e,r={plural:1};let o=null,l=null;if(!y(n))throw Error(mt.INVALID_ARGUMENT);const u=n;return y(a)?r.locale=a:s(a)?r.plural=a:v(a)?o=a:T(a)&&(l=a),y(i)?r.locale=i:v(i)?o=i:T(i)&&(l=i),Reflect.apply(t.t,t,[u,o||l||{},r])},te:(e,n)=>t.te(e,n),tm:e=>t.tm(e),getLocaleMessage:e=>t.getLocaleMessage(e),setLocaleMessage(e,n){t.setLocaleMessage(e,n)},mergeLocaleMessage(e,n){t.mergeLocaleMessage(e,n)},d:(...e)=>Reflect.apply(t.d,t,[...e]),getDateTimeFormat:e=>t.getDateTimeFormat(e),setDateTimeFormat(e,n){t.setDateTimeFormat(e,n)},mergeDateTimeFormat(e,n){t.mergeDateTimeFormat(e,n)},n:(...e)=>Reflect.apply(t.n,t,[...e]),getNumberFormat:e=>t.getNumberFormat(e),setNumberFormat(e,n){t.setNumberFormat(e,n)},mergeNumberFormat(e,n){t.mergeNumberFormat(e,n)}};return a.__extender=n,a}function Rt(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[bt](t.pluralizationRules||e.pluralizationRules);const n=xt(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach((t=>e.mergeLocaleMessage(t,n[t]))),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach((n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n]))),t.numberFormats&&Object.keys(t.numberFormats).forEach((n=>e.mergeNumberFormat(n,t.numberFormats[n]))),e}const zt={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>"parent"===e||"global"===e,default:"parent"},i18n:{type:Object}};function Nt(){return t.Fragment}const It=t.defineComponent({name:"i18n-t",props:d({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>s(e)||!isNaN(e)}},zt),setup(e,n){const{slots:a,attrs:i}=n,r=e.i18n||Wt({useScope:e.scope,__useComponent:!0});return()=>{const o=Object.keys(a).filter((e=>"_"!==e)),s=p();e.locale&&(s.locale=e.locale),void 0!==e.plural&&(s.plural=y(e.plural)?+e.plural:e.plural);const l=function({slots:e},n){return 1===n.length&&"default"===n[0]?(e.default?e.default():[]).reduce(((e,n)=>[...e,...n.type===t.Fragment?n.children:[n]]),[]):n.reduce(((t,n)=>{const a=e[n];return a&&(t[n]=a()),t}),p())}(n,o),u=r[gt](e.keypath,l,s),c=d(p(),i),h=y(e.tag)||k(e.tag)?e.tag:Nt();return t.h(h,c,u)}}}),Ot=It;function Dt(e,n,a,i){const{slots:r,attrs:o}=n;return()=>{const n={part:!0};let s=p();e.locale&&(n.locale=e.locale),y(e.format)?n.key=e.format:k(e.format)&&(y(e.format.key)&&(n.key=e.format.key),s=Object.keys(e.format).reduce(((t,n)=>a.includes(n)?d(p(),t,{[n]:e.format[n]}):t),p()));const l=i(e.value,n,s);let u=[n.key];v(l)?u=l.map(((e,t)=>{const n=r[e.type],a=n?n({[e.type]:e.value,index:t,parts:l}):[e.value];var i;return v(i=a)&&!y(i[0])&&(a[0].key=`${e.type}-${t}`),a})):y(l)&&(u=[l]);const c=d(p(),o),h=y(e.tag)||k(e.tag)?e.tag:Nt();return t.h(h,c,u)}}const qt=t.defineComponent({name:"i18n-n",props:d({value:{type:Number,required:!0},format:{type:[String,Object]}},zt),setup(e,t){const n=e.i18n||Wt({useScope:e.scope,__useComponent:!0});return Dt(e,t,Je,((...e)=>n[vt](...e)))}}),jt=qt,Bt=t.defineComponent({name:"i18n-d",props:d({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},zt),setup(e,t){const n=e.i18n||Wt({useScope:e.scope,__useComponent:!0});return Dt(e,t,Ye,((...e)=>n[_t](...e)))}}),Ft=Bt;function $t(e){const n=t=>{const{instance:n,value:a}=t;if(!n||!n.$)throw Error(mt.UNEXPECTED_ERROR);const i=function(e,t){const n=e;if("composition"===e.mode)return n.__getInstance(t)||e.global;{const a=n.__getInstance(t);return null!=a?a.__composer:e.global.__composer}}(e,n.$),r=Vt(a);return[Reflect.apply(i.t,i,[...Ut(r)]),i]};return{created:(i,r)=>{const[o,s]=n(r);a&&e.global===s&&(i.__i18nWatcher=t.watch(s.locale,(()=>{r.instance&&r.instance.$forceUpdate()}))),i.__composer=s,i.textContent=o},unmounted:e=>{a&&e.__i18nWatcher&&(e.__i18nWatcher(),e.__i18nWatcher=void 0,delete e.__i18nWatcher),e.__composer&&(e.__composer=void 0,delete e.__composer)},beforeUpdate:(e,{value:t})=>{if(e.__composer){const n=e.__composer,a=Vt(t);e.textContent=Reflect.apply(n.t,n,[...Ut(a)])}},getSSRProps:e=>{const[t]=n(e);return{textContent:t}}}}function Vt(e){if(y(e))return{path:e};if(T(e)){if(!("path"in e))throw Error(mt.REQUIRED_VALUE,"path");return e}throw Error(mt.INVALID_VALUE)}function Ut(e){const{path:t,locale:n,args:a,choice:i,plural:r}=e,o={},l=a||{};return y(n)&&(o.locale=n),s(i)&&(o.plural=i),s(r)&&(o.plural=r),[t,l,o]}const Ht=i("global-vue-i18n");function Wt(e={}){const n=t.getCurrentInstance();if(null==n)throw Error(mt.MUST_BE_CALL_SETUP_TOP);if(!n.isCE&&null!=n.appContext.app&&!n.appContext.app.__VUE_I18N_SYMBOL__)throw Error(mt.NOT_INSTALLED);const a=function(e){const n=t.inject(e.isCE?Ht:e.appContext.app.__VUE_I18N_SYMBOL__);if(!n)throw Error(e.isCE?mt.NOT_INSTALLED_WITH_PROVIDE:mt.UNEXPECTED_ERROR);return n}(n),i=function(e){return"composition"===e.mode?e.global:e.global.__composer}(a),r=function(e){return e.type}(n),o=function(e,t){return c(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}(e,r);if("global"===o)return St(i,e,r),i;if("parent"===o){let t=function(e,t,n=!1){let a=null;const i=t.root;let r=function(e,t=!1){return null==e?null:t&&e.vnode.ctx||e.parent}(t,n);for(;null!=r;){const t=e;if("composition"===e.mode)a=t.__getInstance(r);else{const e=t.__getInstance(r);null!=e&&(a=e.__composer,n&&a&&!a[yt]&&(a=null))}if(null!=a)break;if(i===r)break;r=r.parent}return a}(a,n,e.__useComponent);return null==t&&(t=i),t}const s=a;let l=s.__getInstance(n);if(null==l){const a=d({},e);"__i18n"in r&&(a.__i18n=r.__i18n),i&&(a.__root=i),l=Lt(a),s.__composerExtend&&(l[wt]=s.__composerExtend(l)),function(e,n,a){t.onMounted((()=>{}),n),t.onUnmounted((()=>{const t=a;e.__deleteInstance(n);const i=t[wt];i&&(i(),delete t[wt])}),n)}(s,n,l),s.__setInstance(n,l)}return l}const Gt=["locale","fallbackLocale","availableLocales"],Yt=["t","rt","d","n","tm","te"];return Ie=function(e,t){if(y(e)){!w(t.warnHtmlMessage)||t.warnHtmlMessage;const n=(t.onCacheKey||fe)(e),a=me[n];if(a)return a;const{ast:i,detectError:r}=function(e,t={}){let n=!1;const a=t.onError||M;return t.onError=e=>{n=!0,a(e)},{...Z(e,t),detectError:n}}(e,{...t,location:!1,jit:!0}),o=de(i);return r?o:me[n]=o}{const t=e.cacheKey;if(t){return me[t]||(me[t]=de(e))}return de(e)}},Oe=function(e,t){if(!k(e))return null;let n=Pe.get(t);if(n||(n=function(e){const t=[];let n,a,i,r,o,s,l,u=-1,c=0,d=0;const h=[];function p(){const t=e[u+1];if(5===c&&"'"===t||6===c&&'"'===t)return u++,i="\\"+t,h[0](),!0}for(h[0]=()=>{void 0===a?a=i:a+=i},h[1]=()=>{void 0!==a&&(t.push(a),a=void 0)},h[2]=()=>{h[0](),d++},h[3]=()=>{if(d>0)d--,c=4,h[0]();else{if(d=0,void 0===a)return!1;if(a=function(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(n=t,Te.test(n)?function(e){const t=e.charCodeAt(0);return t!==e.charCodeAt(e.length-1)||34!==t&&39!==t?e:e.slice(1,-1)}(t):"*"+t);var n}(a),!1===a)return!1;h[1]()}};null!==c;)if(u++,n=e[u],"\\"!==n||!p()){if(r=Ee(n),l=Ce[c],o=l[r]||l.l||8,8===o)return;if(c=o[0],void 0!==o[1]&&(s=h[o[1]],s&&(i=n,!1===s())))return;if(7===c)return t}}(t),n&&Pe.set(t,n)),!n)return null;const a=n.length;let i=e,r=0;for(;rMt(e))):a.run((()=>Lt(e)));if(null==i)throw Error(mt.UNEXPECTED_ERROR);return[a,i]}(e,a),u=i(""),c={get mode(){return a?"legacy":"composition"},async install(e,...n){if(e.__VUE_I18N_SYMBOL__=u,e.provide(e.__VUE_I18N_SYMBOL__,c),T(n[0])){const e=n[0];c.__composerExtend=e.__composerExtend,c.__vueI18nExtend=e.__vueI18nExtend}let i=null;!a&&r&&(i=function(e,n){const a=Object.create(null);Gt.forEach((e=>{const i=Object.getOwnPropertyDescriptor(n,e);if(!i)throw Error(mt.UNEXPECTED_ERROR);const r=t.isRef(i.value)?{get:()=>i.value.value,set(e){i.value.value=e}}:{get:()=>i.get&&i.get()};Object.defineProperty(a,e,r)})),e.config.globalProperties.$i18n=a,Yt.forEach((t=>{const a=Object.getOwnPropertyDescriptor(n,t);if(!a||!a.value)throw Error(mt.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${t}`,a)}));return()=>{delete e.config.globalProperties.$i18n,Yt.forEach((t=>{delete e.config.globalProperties[`$${t}`]}))}}(e,c.global)),function(e,t,...n){const a=T(n[0])?n[0]:{};(!w(a.globalInstall)||a.globalInstall)&&([It.name,"I18nT"].forEach((t=>e.component(t,It))),[qt.name,"I18nN"].forEach((t=>e.component(t,qt))),[Bt.name,"I18nD"].forEach((t=>e.component(t,Bt)))),e.directive("t",$t(t))}(e,c,...n),a&&e.mixin(function(e,n,a){return{beforeCreate(){const i=t.getCurrentInstance();if(!i)throw Error(mt.UNEXPECTED_ERROR);const r=this.$options;if(r.i18n){const t=r.i18n;if(r.__i18n&&(t.__i18n=r.__i18n),t.__root=n,this===this.$root)this.$i18n=Rt(e,t);else{t.__injectWithOption=!0,t.__extender=a.__vueI18nExtend,this.$i18n=Mt(t);const e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}}else if(r.__i18n)if(this===this.$root)this.$i18n=Rt(e,r);else{this.$i18n=Mt({__i18n:r.__i18n,__injectWithOption:!0,__extender:a.__vueI18nExtend,__root:n});const e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}else this.$i18n=e;r.__i18nGlobal&&St(n,r,r),this.$t=(...e)=>this.$i18n.t(...e),this.$rt=(...e)=>this.$i18n.rt(...e),this.$tc=(...e)=>this.$i18n.tc(...e),this.$te=(e,t)=>this.$i18n.te(e,t),this.$d=(...e)=>this.$i18n.d(...e),this.$n=(...e)=>this.$i18n.n(...e),this.$tm=e=>this.$i18n.tm(e),a.__setInstance(i,this.$i18n)},mounted(){},unmounted(){const e=t.getCurrentInstance();if(!e)throw Error(mt.UNEXPECTED_ERROR);const n=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,n.__disposer&&(n.__disposer(),delete n.__disposer,delete n.__extender),a.__deleteInstance(e),delete this.$i18n}}}(l,l.__composer,c));const o=e.unmount;e.unmount=()=>{i&&i(),c.dispose(),o()}},get global(){return l},dispose(){s.stop()},__instances:o,__getInstance:function(e){return o.get(e)||null},__setInstance:function(e,t){o.set(e,t)},__deleteInstance:function(e){o.delete(e)}};return c},e.useI18n=Wt,e.vTDirective=$t,e}({},Vue),VueRouter=function(e,t){"use strict";const n="undefined"!=typeof document;function a(e){return"object"==typeof e||"displayName"in e||"props"in e||"__vccOpts"in e}function i(e){return e.__esModule||"Module"===e[Symbol.toStringTag]||e.default&&a(e.default)}const r=Object.assign;function o(e,t){const n={};for(const a in t){const i=t[a];n[a]=l(i)?i.map(e):e(i)}return n}const s=()=>{},l=Array.isArray;function u(e){const t=Array.from(arguments).slice(1);console.warn.apply(console,["[Vue Router warn]: "+e].concat(t))}const c=/#/g,d=/&/g,h=/\//g,p=/=/g,f=/\?/g,m=/\+/g,g=/%5B/g,_=/%5D/g,v=/%5E/g,b=/%60/g,y=/%7B/g,w=/%7C/g,k=/%7D/g,x=/%20/g;function S(e){return encodeURI(""+e).replace(w,"|").replace(g,"[").replace(_,"]")}function C(e){return S(e).replace(m,"%2B").replace(x,"+").replace(c,"%23").replace(d,"%26").replace(b,"`").replace(y,"{").replace(k,"}").replace(v,"^")}function T(e){return null==e?"":function(e){return S(e).replace(c,"%23").replace(f,"%3F")}(e).replace(h,"%2F")}function E(e){try{return decodeURIComponent(""+e)}catch(t){u(`Error decoding "${e}". Using original value`)}return""+e}const P=/\/$/,A=e=>e.replace(P,"");function L(e,t,n="/"){let a,i={},r="",o="";const s=t.indexOf("#");let l=t.indexOf("?");return s=0&&(l=-1),l>-1&&(a=t.slice(0,l),r=t.slice(l+1,s>-1?s:t.length),i=e(r)),s>-1&&(a=a||t.slice(0,s),o=t.slice(s,t.length)),a=function(e,t){if(e.startsWith("/"))return e;if(!t.startsWith("/"))return u(`Cannot resolve a relative location without an absolute path. Trying to resolve "${e}" from "${t}". It should look like "/${t}".`),e;if(!e)return t;const n=t.split("/"),a=e.split("/"),i=a[a.length-1];".."!==i&&"."!==i||a.push("");let r,o,s=n.length-1;for(r=0;r1&&s--}return n.slice(0,s).join("/")+"/"+a.slice(r).join("/")}(null!=a?a:t,n),{fullPath:a+(r&&"?")+r+o,path:a,query:i,hash:E(o)}}function M(e,t){return t&&e.toLowerCase().startsWith(t.toLowerCase())?e.slice(t.length)||"/":e}function R(e,t,n){const a=t.matched.length-1,i=n.matched.length-1;return a>-1&&a===i&&z(t.matched[a],n.matched[i])&&N(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function z(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function N(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!I(e[n],t[n]))return!1;return!0}function I(e,t){return l(e)?O(e,t):l(t)?O(t,e):e===t}function O(e,t){return l(t)?e.length===t.length&&e.every(((e,n)=>e===t[n])):1===e.length&&e[0]===t}const D={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var q,j;!function(e){e.pop="pop",e.push="push"}(q||(q={})),function(e){e.back="back",e.forward="forward",e.unknown=""}(j||(j={}));function B(e){if(!e)if(n){const t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return"/"!==e[0]&&"#"!==e[0]&&(e="/"+e),A(e)}const F=/^[^#]+#/;function $(e,t){return e.replace(F,"#")+t}const V=()=>({left:window.scrollX,top:window.scrollY});function U(e){let t;if("el"in e){const n=e.el,a="string"==typeof n&&n.startsWith("#");if(!("string"!=typeof e.el||a&&document.getElementById(e.el.slice(1))))try{const t=document.querySelector(e.el);if(a&&t)return void u(`The selector "${e.el}" should be passed as "el: document.querySelector('${e.el}')" because it starts with "#".`)}catch(t){return void u(`The selector "${e.el}" is invalid. If you are using an id selector, make sure to escape it. You can find more information about escaping characters in selectors at https://mathiasbynens.be/notes/css-escapes or use CSS.escape (https://developer.mozilla.org/en-US/docs/Web/API/CSS/escape).`)}const i="string"==typeof n?a?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return void u(`Couldn't find element using selector "${e.el}" returned by scrollBehavior.`);t=function(e,t){const n=document.documentElement.getBoundingClientRect(),a=e.getBoundingClientRect();return{behavior:t.behavior,left:a.left-n.left-(t.left||0),top:a.top-n.top-(t.top||0)}}(i,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(null!=t.left?t.left:window.scrollX,null!=t.top?t.top:window.scrollY)}function H(e,t){return(history.state?history.state.position-t:-1)+e}const W=new Map;let G=()=>location.protocol+"//"+location.host;function Y(e,t){const{pathname:n,search:a,hash:i}=t,r=e.indexOf("#");if(r>-1){let t=i.includes(e.slice(r))?e.slice(r).length:1,n=i.slice(t);return"/"!==n[0]&&(n="/"+n),M(n,"")}return M(n,e)+a+i}function K(e,t,n,a=!1,i=!1){return{back:e,current:t,forward:n,replaced:a,position:window.history.length,scroll:i?V():null}}function Q(e){const t=function(e){const{history:t,location:n}=window,a={value:Y(e,n)},i={value:t.state};function o(a,r,o){const s=e.indexOf("#"),l=s>-1?(n.host&&document.querySelector("base")?e:e.slice(s))+a:G()+e+a;try{t[o?"replaceState":"pushState"](r,"",l),i.value=r}catch(e){u("Error with push/replace State",e),n[o?"replace":"assign"](l)}}return i.value||o(a.value,{back:null,current:a.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0),{location:a,state:i,push:function(e,n){const s=r({},i.value,t.state,{forward:e,scroll:V()});t.state||u("history.state seems to have been manually replaced without preserving the necessary values. Make sure to preserve existing history state if you are manually calling history.replaceState:\n\nhistory.replaceState(history.state, '', url)\n\nYou can find more information at https://router.vuejs.org/guide/migration/#Usage-of-history-state"),o(s.current,s,!0),o(e,r({},K(a.value,e,null),{position:s.position+1},n),!1),a.value=e},replace:function(e,n){o(e,r({},t.state,K(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),a.value=e}}}(e=B(e)),n=function(e,t,n,a){let i=[],o=[],s=null;const l=({state:r})=>{const o=Y(e,location),l=n.value,u=t.value;let c=0;if(r){if(n.value=o,t.value=r,s&&s===l)return void(s=null);c=u?r.position-u.position:0}else a(o);i.forEach((e=>{e(n.value,l,{delta:c,type:q.pop,direction:c?c>0?j.forward:j.back:j.unknown})}))};function u(){const{history:e}=window;e.state&&e.replaceState(r({},e.state,{scroll:V()}),"")}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:function(){s=n.value},listen:function(e){i.push(e);const t=()=>{const t=i.indexOf(e);t>-1&&i.splice(t,1)};return o.push(t),t},destroy:function(){for(const e of o)e();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",u)}}}(e,t.state,t.location,t.replace);const a=r({location:"",base:e,go:function(e,t=!0){t||n.pauseListeners(),history.go(e)},createHref:$.bind(null,e)},t,n);return Object.defineProperty(a,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(a,"state",{enumerable:!0,get:()=>t.state.value}),a}function Z(e){return"string"==typeof e||e&&"object"==typeof e}function J(e){return"string"==typeof e||"symbol"==typeof e}const X=Symbol("navigation failure");var ee;e.NavigationFailureType=void 0,(ee=e.NavigationFailureType||(e.NavigationFailureType={}))[ee.aborted=4]="aborted",ee[ee.cancelled=8]="cancelled",ee[ee.duplicated=16]="duplicated";const te={1:({location:e,currentLocation:t})=>`No match for\n ${JSON.stringify(e)}${t?"\nwhile being at\n"+JSON.stringify(t):""}`,2:({from:e,to:t})=>`Redirected from "${e.fullPath}" to "${function(e){if("string"==typeof e)return e;if(null!=e.path)return e.path;const t={};for(const n of ie)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}(t)}" via a navigation guard.`,4:({from:e,to:t})=>`Navigation aborted from "${e.fullPath}" to "${t.fullPath}" via a navigation guard.`,8:({from:e,to:t})=>`Navigation cancelled from "${e.fullPath}" to "${t.fullPath}" with a new navigation.`,16:({from:e,to:t})=>`Avoided redundant navigation to current location: "${e.fullPath}".`};function ne(e,t){return r(new Error(te[e](t)),{type:e,[X]:!0},t)}function ae(e,t){return e instanceof Error&&X in e&&(null==t||!!(e.type&t))}const ie=["params","query","hash"];const re="[^/]+?",oe={sensitive:!1,strict:!1,start:!0,end:!0},se=/[.+*?^${}()[\]/\\]/g;function le(e,t){let n=0;for(;nt.length?1===t.length&&80===t[0]?1:-1:0}function ue(e,t){let n=0;const a=e.score,i=t.score;for(;n0&&t[t.length-1]<0}const de={type:0,value:""},he=/[a-zA-Z0-9_]/;function pe(e,t,n){const a=function(e,t){const n=r({},oe,t),a=[];let i=n.start?"^":"";const o=[];for(const t of e){const e=t.length?[]:[90];n.strict&&!t.length&&(i+="/");for(let a=0;a1&&("*"===s||"+"===s)&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),r.push({type:1,value:u,regexp:c,repeatable:"*"===s||"+"===s,optional:"*"===s||"?"===s})):t("Invalid state to consume buffer"),u="")}function h(){u+=s}for(;l{o(m)}:s}function o(e){if(J(e)){const t=a.get(e);t&&(a.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{const t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&a.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function l(e){const t=function(e,t){let n=0,a=t.length;for(;n!==a;){const i=n+a>>1;ue(e,t[i])<0?a=i:n=i+1}const i=function(e){let t=e;for(;t=t.parent;)if(Se(t)&&0===ue(e,t))return t;return}(e);i&&(a=t.lastIndexOf(i,a-1),a<0&&u(`Finding ancestor route "${i.record.path}" failed for "${e.record.path}"`));return a}(e,n);n.splice(t,0,e),e.record.name&&!ve(e)&&a.set(e.record.name,e)}return t=ye({strict:!1,end:!0,sensitive:!1},t),e.forEach((e=>i(e))),{addRoute:i,resolve:function(e,t){let i,o,s,l={};if("name"in e&&e.name){if(i=a.get(e.name),!i)throw ne(1,{location:e});{const t=Object.keys(e.params||{}).filter((e=>!i.keys.find((t=>t.name===e))));t.length&&u(`Discarded invalid param(s) "${t.join('", "')}" when navigating. See https://github.com/vuejs/router/blob/main/packages/router/CHANGELOG.md#414-2022-08-22 for more details.`)}s=i.record.name,l=r(me(t.params,i.keys.filter((e=>!e.optional)).concat(i.parent?i.parent.keys.filter((e=>e.optional)):[]).map((e=>e.name))),e.params&&me(e.params,i.keys.map((e=>e.name)))),o=i.stringify(l)}else if(null!=e.path)o=e.path,o.startsWith("/")||u(`The Matcher cannot resolve relative paths but received "${o}". Unless you directly called \`matcher.resolve("${o}")\`, this is probably a bug in vue-router. Please open an issue at https://github.com/vuejs/router/issues/new/choose.`),i=n.find((e=>e.re.test(o))),i&&(l=i.parse(o),s=i.record.name);else{if(i=t.name?a.get(t.name):n.find((e=>e.re.test(t.path))),!i)throw ne(1,{location:e,currentLocation:t});s=i.record.name,l=r({},t.params,e.params),o=i.stringify(l)}const c=[];let d=i;for(;d;)c.unshift(d.record),d=d.parent;return{name:s,path:o,params:l,matched:c,meta:be(c)}},removeRoute:o,clearRoutes:function(){n.length=0,a.clear()},getRoutes:function(){return n},getRecordMatcher:function(e){return a.get(e)}}}function me(e,t){const n={};for(const a of t)a in e&&(n[a]=e[a]);return n}function ge(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:_e(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 _e(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const a in e.components)t[a]="object"==typeof n?n[a]:n;return t}function ve(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function be(e){return e.reduce(((e,t)=>r(e,t.meta)),{})}function ye(e,t){const n={};for(const a in e)n[a]=a in t?t[a]:e[a];return n}function we(e,t){return e.name===t.name&&e.optional===t.optional&&e.repeatable===t.repeatable}function ke(e,t){for(const n of e.keys)if(!n.optional&&!t.keys.find(we.bind(null,n)))return u(`Alias "${t.record.path}" and the original record: "${e.record.path}" must have the exact same param named "${n.name}"`);for(const n of t.keys)if(!n.optional&&!e.keys.find(we.bind(null,n)))return u(`Alias "${t.record.path}" and the original record: "${e.record.path}" must have the exact same param named "${n.name}"`)}function xe(e,t){for(const n of t.keys)if(!e.keys.find(we.bind(null,n)))return u(`Absolute path "${e.record.path}" must have the exact same param named "${n.name}" as its parent "${t.record.path}".`)}function Se({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Ce(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let e=0;ee&&C(e))):[a&&C(a)]).forEach((e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))}))}return t}function Ee(e){const t={};for(const n in e){const a=e[n];void 0!==a&&(t[n]=l(a)?a.map((e=>null==e?null:""+e)):null==a?a:""+a)}return t}const Pe=Symbol("router view location matched"),Ae=Symbol("router view depth"),Le=Symbol("router"),Me=Symbol("route location"),Re=Symbol("router view location");function ze(){let e=[];return{add:function(t){return e.push(t),()=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)}},list:()=>e.slice(),reset:function(){e=[]}}}function Ne(e,n,a){const i=()=>{e[n].delete(a)};t.onUnmounted(i),t.onDeactivated(i),t.onActivated((()=>{e[n].add(a)})),e[n].add(a)}function Ie(e,t,n,a,i,r=e=>e()){const o=a&&(a.enterCallbacks[i]=a.enterCallbacks[i]||[]);return()=>new Promise(((s,l)=>{const c=e=>{!1===e?l(ne(4,{from:n,to:t})):e instanceof Error?l(e):Z(e)?l(ne(2,{from:t,to:e})):(o&&a.enterCallbacks[i]===o&&"function"==typeof e&&o.push(e),s())},d=r((()=>e.call(a&&a.instances[i],t,n,function(e,t,n){let a=0;return function(){1==a++&&u(`The "next" callback was called more than once in one navigation guard when going from "${n.fullPath}" to "${t.fullPath}". It should be called exactly one time in each navigation guard. This will fail in production.`),e._called=!0,1===a&&e.apply(null,arguments)}}(c,t,n))));let h=Promise.resolve(d);if(e.length<3&&(h=h.then(c)),e.length>2){const t=`The "next" callback was never called inside of ${e.name?'"'+e.name+'"':""}:\n${e.toString()}\n. If you are returning a value instead of calling "next", make sure to remove the "next" parameter from your function.`;if("object"==typeof d&&"then"in d)h=h.then((e=>c._called?e:(u(t),Promise.reject(new Error("Invalid navigation guard")))));else if(void 0!==d&&!c._called)return u(t),void l(new Error("Invalid navigation guard"))}h.catch((e=>l(e)))}))}function Oe(e,t,n,r,o=e=>e()){const s=[];for(const l of e){l.components||l.children.length||u(`Record with path "${l.path}" is either missing a "component(s)" or "children" property.`);for(const e in l.components){let c=l.components[e];if(!c||"object"!=typeof c&&"function"!=typeof c)throw u(`Component "${e}" in record with path "${l.path}" is not a valid component. Received "${String(c)}".`),new Error("Invalid route component");if("then"in c){u(`Component "${e}" in record with path "${l.path}" is a Promise instead of a function that returns a Promise. Did you write "import('./MyPage.vue')" instead of "() => import('./MyPage.vue')" ? This will break in production if not fixed.`);const t=c;c=()=>t}else c.__asyncLoader&&!c.__warnedDefineAsync&&(c.__warnedDefineAsync=!0,u(`Component "${e}" in record with path "${l.path}" is defined using "defineAsyncComponent()". Write "() => import('./MyPage.vue')" instead of "defineAsyncComponent(() => import('./MyPage.vue'))".`));if("beforeRouteEnter"===t||l.instances[e])if(a(c)){const a=(c.__vccOpts||c)[t];a&&s.push(Ie(a,n,r,l,e,o))}else{let a=c();"catch"in a||(u(`Component "${e}" in record with path "${l.path}" is a function that does not return a Promise. If you were passing a functional component, make sure to add a "displayName" to the component. This will break in production if not fixed.`),a=Promise.resolve(a)),s.push((()=>a.then((a=>{if(!a)throw new Error(`Couldn't resolve component "${e}" at "${l.path}"`);const s=i(a)?a.default:a;l.mods[e]=a,l.components[e]=s;const u=(s.__vccOpts||s)[t];return u&&Ie(u,n,r,l,e,o)()}))))}}}return s}function De(e){const a=t.inject(Le),i=t.inject(Me);let r=!1,o=null;const c=t.computed((()=>{const n=t.unref(e.to);return r&&n===o||(Z(n)||(r?u('Invalid value for prop "to" in useLink()\n- to:',n,"\n- previous to:",o,"\n- props:",e):u('Invalid value for prop "to" in useLink()\n- to:',n,"\n- props:",e)),o=n,r=!0),a.resolve(n)})),d=t.computed((()=>{const{matched:e}=c.value,{length:t}=e,n=e[t-1],a=i.matched;if(!n||!a.length)return-1;const r=a.findIndex(z.bind(null,n));if(r>-1)return r;const o=je(e[t-2]);return t>1&&je(n)===o&&a[a.length-1].path!==o?a.findIndex(z.bind(null,e[t-2])):r})),h=t.computed((()=>d.value>-1&&function(e,t){for(const n in t){const a=t[n],i=e[n];if("string"==typeof a){if(a!==i)return!1}else if(!l(i)||i.length!==a.length||a.some(((e,t)=>e!==i[t])))return!1}return!0}(i.params,c.value.params))),p=t.computed((()=>d.value>-1&&d.value===i.matched.length-1&&N(i.params,c.value.params)));if(n){const n=t.getCurrentInstance();if(n){const a={route:c.value,isActive:h.value,isExactActive:p.value,error:null};n.__vrl_devtools=n.__vrl_devtools||[],n.__vrl_devtools.push(a),t.watchEffect((()=>{a.route=c.value,a.isActive=h.value,a.isExactActive=p.value,a.error=Z(t.unref(e.to))?null:'Invalid "to" value'}),{flush:"post"})}}return{route:c,href:t.computed((()=>c.value.href)),isActive:h,isExactActive:p,navigate:function(n={}){return function(e){if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;if(e.defaultPrevented)return;if(void 0!==e.button&&0!==e.button)return;if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}e.preventDefault&&e.preventDefault();return!0}(n)?a[t.unref(e.replace)?"replace":"push"](t.unref(e.to)).catch(s):Promise.resolve()}}}const qe=t.defineComponent({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"}},useLink:De,setup(e,{slots:n}){const a=t.reactive(De(e)),{options:i}=t.inject(Le),r=t.computed((()=>({[Be(e.activeClass,i.linkActiveClass,"router-link-active")]:a.isActive,[Be(e.exactActiveClass,i.linkExactActiveClass,"router-link-exact-active")]:a.isExactActive})));return()=>{const i=n.default&&n.default(a);return e.custom?i:t.h("a",{"aria-current":a.isExactActive?e.ariaCurrentValue:null,href:a.href,onClick:a.navigate,class:r.value},i)}}});function je(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Be=(e,t,n)=>null!=e?e:null!=t?t:n;function Fe(e,t){if(!e)return null;const n=e(t);return 1===n.length?n[0]:n}const $e=t.defineComponent({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:a,slots:i}){!function(){const e=t.getCurrentInstance(),n=e.parent&&e.parent.type.name,a=e.parent&&e.parent.subTree&&e.parent.subTree.type;if(n&&("KeepAlive"===n||n.includes("Transition"))&&"object"==typeof a&&"RouterView"===a.name){const e="KeepAlive"===n?"keep-alive":"transition";u(` can no longer be used directly inside or .\nUse slot props instead:\n\n\n <${e}>\n \n \n`)}}();const o=t.inject(Re),s=t.computed((()=>e.route||o.value)),c=t.inject(Ae,0),d=t.computed((()=>{let e=t.unref(c);const{matched:n}=s.value;let a;for(;(a=n[e])&&!a.components;)e++;return e})),h=t.computed((()=>s.value.matched[d.value]));t.provide(Ae,t.computed((()=>d.value+1))),t.provide(Pe,h),t.provide(Re,s);const p=t.ref();return t.watch((()=>[p.value,h.value,e.name]),(([e,t,n],[a,i,r])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===a&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),!e||!t||i&&z(t,i)&&a||(t.enterCallbacks[n]||[]).forEach((t=>t(e)))}),{flush:"post"}),()=>{const o=s.value,u=e.name,c=h.value,f=c&&c.components[u];if(!f)return Fe(i.default,{Component:f,route:o});const m=c.props[u],g=m?!0===m?o.params:"function"==typeof m?m(o):m:null,_=t.h(f,r({},g,a,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(c.instances[u]=null)},ref:p}));if(n&&_.ref){const e={depth:d.value,name:c.name,path:c.path,meta:c.meta};(l(_.ref)?_.ref.map((e=>e.i)):[_.ref.i]).forEach((t=>{t.__vrv_devtools=e}))}return Fe(i.default,{Component:_,route:o})||_}}});function Ve(){return"undefined"!=typeof navigator&&"undefined"!=typeof window?window:"undefined"!=typeof globalThis?globalThis:{}}const Ue="function"==typeof Proxy,He="devtools-plugin:setup";let We,Ge;function Ye(){return void 0!==We||("undefined"!=typeof window&&window.performance?(We=!0,Ge=window.performance):"undefined"!=typeof globalThis&&(null===(e=globalThis.perf_hooks)||void 0===e?void 0:e.performance)?(We=!0,Ge=globalThis.perf_hooks.performance):We=!1),We?Ge.now():Date.now();var e}class Ke{constructor(e,t){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=e,this.hook=t;const n={};if(e.settings)for(const t in e.settings){const a=e.settings[t];n[t]=a.defaultValue}const a=`__vue-devtools-plugin-settings__${e.id}`;let i=Object.assign({},n);try{const e=localStorage.getItem(a),t=JSON.parse(e);Object.assign(i,t)}catch(e){}this.fallbacks={getSettings:()=>i,setSettings(e){try{localStorage.setItem(a,JSON.stringify(e))}catch(e){}i=e},now:()=>Ye()},t&&t.on("plugin:settings:set",((e,t)=>{e===this.plugin.id&&this.fallbacks.setSettings(t)})),this.proxiedOn=new Proxy({},{get:(e,t)=>this.target?this.target.on[t]:(...e)=>{this.onQueue.push({method:t,args:e})}}),this.proxiedTarget=new Proxy({},{get:(e,t)=>this.target?this.target[t]:"on"===t?this.proxiedOn:Object.keys(this.fallbacks).includes(t)?(...e)=>(this.targetQueue.push({method:t,args:e,resolve:()=>{}}),this.fallbacks[t](...e)):(...e)=>new Promise((n=>{this.targetQueue.push({method:t,args:e,resolve:n})}))})}async setRealTarget(e){this.target=e;for(const e of this.onQueue)this.target.on[e.method](...e.args);for(const e of this.targetQueue)e.resolve(await this.target[e.method](...e.args))}}function Qe(e,t){const n=e,a=Ve(),i=Ve().__VUE_DEVTOOLS_GLOBAL_HOOK__,r=Ue&&n.enableEarlyProxy;if(!i||!a.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__&&r){const e=r?new Ke(n,i):null;(a.__VUE_DEVTOOLS_PLUGINS__=a.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:t,proxy:e}),e&&t(e.proxiedTarget)}else i.emit(He,e,t)}function Ze(e,t){const n=r({},e,{matched:e.matched.map((e=>function(e,t){const n={};for(const a in e)t.includes(a)||(n[a]=e[a]);return n}(e,["instances","children","aliasOf"])))});return{_custom:{type:null,readOnly:!0,display:e.fullPath,tooltip:t,value:n}}}function Je(e){return{_custom:{display:e}}}let Xe=0;function et(e,n,a){if(n.__hasDevtools)return;n.__hasDevtools=!0;const i=Xe++;Qe({id:"org.vuejs.router"+(i?"."+i:""),label:"Vue Router",packageName:"vue-router",homepage:"https://router.vuejs.org",logo:"https://router.vuejs.org/logo.png",componentStateTypes:["Routing"],app:e},(r=>{"function"!=typeof r.now&&console.warn("[Vue Router]: You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html."),r.on.inspectComponent(((e,t)=>{e.instanceData&&e.instanceData.state.push({type:"Routing",key:"$route",editable:!1,value:Ze(n.currentRoute.value,"Current Route")})})),r.on.visitComponentTree((({treeNode:e,componentInstance:t})=>{if(t.__vrv_devtools){const n=t.__vrv_devtools;e.tags.push({label:(n.name?`${n.name.toString()}: `:"")+n.path,textColor:0,tooltip:"This component is rendered by <router-view>",backgroundColor:nt})}l(t.__vrl_devtools)&&(t.__devtoolsApi=r,t.__vrl_devtools.forEach((t=>{let n=t.route.path,a=ot,i="",r=0;t.error?(n=t.error,a=lt,r=ut):t.isExactActive?(a=it,i="This is exactly active"):t.isActive&&(a=at,i="This link is active"),e.tags.push({label:n,textColor:r,tooltip:i,backgroundColor:a})})))})),t.watch(n.currentRoute,(()=>{c(),r.notifyComponentUpdate(),r.sendInspectorTree(u),r.sendInspectorState(u)}));const o="router:navigations:"+i;r.addTimelineLayer({id:o,label:`Router${i?" "+i:""} Navigations`,color:4237508}),n.onError(((e,t)=>{r.addTimelineEvent({layerId:o,event:{title:"Error during Navigation",subtitle:t.fullPath,logType:"error",time:r.now(),data:{error:e},groupId:t.meta.__navigationId}})}));let s=0;n.beforeEach(((e,t)=>{const n={guard:Je("beforeEach"),from:Ze(t,"Current Location during this navigation"),to:Ze(e,"Target location")};Object.defineProperty(e.meta,"__navigationId",{value:s++}),r.addTimelineEvent({layerId:o,event:{time:r.now(),title:"Start of navigation",subtitle:e.fullPath,data:n,groupId:e.meta.__navigationId}})})),n.afterEach(((e,t,n)=>{const a={guard:Je("afterEach")};n?(a.failure={_custom:{type:Error,readOnly:!0,display:n?n.message:"",tooltip:"Navigation Failure",value:n}},a.status=Je("❌")):a.status=Je("✅"),a.from=Ze(t,"Current Location during this navigation"),a.to=Ze(e,"Target location"),r.addTimelineEvent({layerId:o,event:{title:"End of navigation",subtitle:e.fullPath,time:r.now(),data:a,logType:n?"warning":"default",groupId:e.meta.__navigationId}})}));const u="router-inspector:"+i;function c(){if(!d)return;const e=d;let t=a.getRoutes().filter((e=>!e.parent||!e.parent.record.components));t.forEach(ft),e.filter&&(t=t.filter((t=>mt(t,e.filter.toLowerCase())))),t.forEach((e=>pt(e,n.currentRoute.value))),e.rootNodes=t.map(ct)}let d;r.addInspector({id:u,label:"Routes"+(i?" "+i:""),icon:"book",treeFilterPlaceholder:"Search routes"}),r.on.getInspectorTree((t=>{d=t,t.app===e&&t.inspectorId===u&&c()})),r.on.getInspectorState((t=>{if(t.app===e&&t.inspectorId===u){const e=a.getRoutes().find((e=>e.record.__vd_id===t.nodeId));e&&(t.state={options:tt(e)})}})),r.sendInspectorTree(u),r.sendInspectorState(u)}))}function tt(e){const{record:t}=e,n=[{editable:!1,key:"path",value:t.path}];return null!=t.name&&n.push({editable:!1,key:"name",value:t.name}),n.push({editable:!1,key:"regexp",value:e.re}),e.keys.length&&n.push({editable:!1,key:"keys",value:{_custom:{type:null,readOnly:!0,display:e.keys.map((e=>`${e.name}${function(e){return e.optional?e.repeatable?"*":"?":e.repeatable?"+":""}(e)}`)).join(" "),tooltip:"Param keys",value:e.keys}}}),null!=t.redirect&&n.push({editable:!1,key:"redirect",value:t.redirect}),e.alias.length&&n.push({editable:!1,key:"aliases",value:e.alias.map((e=>e.record.path))}),Object.keys(e.record.meta).length&&n.push({editable:!1,key:"meta",value:e.record.meta}),n.push({key:"score",editable:!1,value:{_custom:{type:null,readOnly:!0,display:e.score.map((e=>e.join(", "))).join(" | "),tooltip:"Score used to sort routes",value:e.score}}}),n}const nt=15485081,at=2450411,it=8702998,rt=2282478,ot=16486972,st=6710886,lt=16704226,ut=12131356;function ct(e){const t=[],{record:n}=e;null!=n.name&&t.push({label:String(n.name),textColor:0,backgroundColor:rt}),n.aliasOf&&t.push({label:"alias",textColor:0,backgroundColor:ot}),e.__vd_match&&t.push({label:"matches",textColor:0,backgroundColor:nt}),e.__vd_exactActive&&t.push({label:"exact",textColor:0,backgroundColor:it}),e.__vd_active&&t.push({label:"active",textColor:0,backgroundColor:at}),n.redirect&&t.push({label:"string"==typeof n.redirect?`redirect: ${n.redirect}`:"redirects",textColor:16777215,backgroundColor:st});let a=n.__vd_id;return null==a&&(a=String(dt++),n.__vd_id=a),{id:a,label:n.path,tags:t,children:e.children.map(ct)}}let dt=0;const ht=/^\/(.*)\/([a-z]*)$/;function pt(e,t){const n=t.matched.length&&z(t.matched[t.matched.length-1],e.record);e.__vd_exactActive=e.__vd_active=n,n||(e.__vd_active=t.matched.some((t=>z(t,e.record)))),e.children.forEach((e=>pt(e,t)))}function ft(e){e.__vd_match=!1,e.children.forEach(ft)}function mt(e,t){const n=String(e.re).match(ht);if(e.__vd_match=!1,!n||n.length<3)return!1;if(new RegExp(n[1].replace(/\$$/,""),n[2]).test(t))return e.children.forEach((e=>mt(e,t))),("/"!==e.record.path||"/"===t)&&(e.__vd_match=e.re.test(t),!0);const a=e.record.path.toLowerCase(),i=E(a);return!(t.startsWith("/")||!i.includes(t)&&!a.includes(t))||(!(!i.startsWith(t)&&!a.startsWith(t))||(!(!e.record.name||!String(e.record.name).includes(t))||e.children.some((e=>mt(e,t)))))}return e.RouterLink=qe,e.RouterView=$e,e.START_LOCATION=D,e.createMemoryHistory=function(e=""){let t=[],n=[""],a=0;function i(e){a++,a!==n.length&&n.splice(a),n.push(e)}const r={location:"",state:{},base:e=B(e),createHref:$.bind(null,e),replace(e){n.splice(a--,1),i(e)},push(e,t){i(e)},listen:e=>(t.push(e),()=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)}),destroy(){t=[],n=[""],a=0},go(e,i=!0){const r=this.location,o=e<0?j.back:j.forward;a=Math.max(0,Math.min(a+e,n.length-1)),i&&function(e,n,{direction:a,delta:i}){const r={direction:a,delta:i,type:q.pop};for(const a of t)a(e,n,r)}(this.location,r,{direction:o,delta:e})}};return Object.defineProperty(r,"location",{enumerable:!0,get:()=>n[a]}),r},e.createRouter=function(e){const a=fe(e.routes,e),i=e.parseQuery||Ce,c=e.stringifyQuery||Te,d=e.history;if(!d)throw new Error('Provide the "history" option when calling "createRouter()": https://router.vuejs.org/api/interfaces/RouterOptions.html#history');const h=ze(),p=ze(),f=ze(),m=t.shallowRef(D);let g=D;n&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const _=o.bind(null,(e=>""+e)),b=o.bind(null,T),w=o.bind(null,E);function x(e,t){if(t=r({},t||m.value),"string"==typeof e){const n=L(i,e,t.path),o=a.resolve({path:n.path},t),s=d.createHref(n.fullPath);return s.startsWith("//")?u(`Location "${e}" resolved to "${s}". A resolved location cannot start with multiple slashes.`):o.matched.length||u(`No match found for location with path "${e}"`),r(n,o,{params:w(o.params),hash:E(n.hash),redirectedFrom:void 0,href:s})}if(!Z(e))return u("router.resolve() was passed an invalid location. This will fail in production.\n- Location:",e),x({});let n;if(null!=e.path)"params"in e&&!("name"in e)&&Object.keys(e.params).length&&u(`Path "${e.path}" was passed with params but they will be ignored. Use a named route alongside params instead.`),n=r({},e,{path:L(i,e.path,t.path).path});else{const a=r({},e.params);for(const e in a)null==a[e]&&delete a[e];n=r({},e,{params:b(a)}),t.params=b(t.params)}const o=a.resolve(n,t),s=e.hash||"";s&&!s.startsWith("#")&&u(`A \`hash\` should always start with the character "#". Replace "${s}" with "#${s}".`),o.params=_(w(o.params));const l=function(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}(c,r({},e,{hash:(h=s,S(h).replace(y,"{").replace(k,"}").replace(v,"^")),path:o.path}));var h;const p=d.createHref(l);return p.startsWith("//")?u(`Location "${e}" resolved to "${p}". A resolved location cannot start with multiple slashes.`):o.matched.length||u(`No match found for location with path "${null!=e.path?e.path:e}"`),r({fullPath:l,hash:s,query:c===Te?Ee(e.query):e.query||{}},o,{redirectedFrom:void 0,href:p})}function C(e){return"string"==typeof e?L(i,e,m.value.path):r({},e)}function P(e,t){if(g!==e)return ne(8,{from:t,to:e})}function A(e){return N(e)}function M(e){const t=e.matched[e.matched.length-1];if(t&&t.redirect){const{redirect:n}=t;let a="function"==typeof n?n(e):n;if("string"==typeof a&&(a=a.includes("?")||a.includes("#")?a=C(a):{path:a},a.params={}),null==a.path&&!("name"in a))throw u(`Invalid redirect found:\n${JSON.stringify(a,null,2)}\n when navigating to "${e.fullPath}". A redirect must contain a name or path. This will break in production.`),new Error("Invalid redirect");return r({query:e.query,hash:e.hash,params:null!=a.path?{}:e.params},a)}}function N(e,t){const n=g=x(e),a=m.value,i=e.state,o=e.force,s=!0===e.replace,l=M(n);if(l)return N(r(C(l),{state:"object"==typeof l?r({},i,l.state):i,force:o,replace:s}),t||n);const d=n;let h;return d.redirectedFrom=t,!o&&R(c,a,n)&&(h=ne(16,{to:d,from:a}),te(a,a,!0,!1)),(h?Promise.resolve(h):j(d,a)).catch((e=>ae(e)?ae(e,2)?e:ee(e):X(e,d,a))).then((e=>{if(e){if(ae(e,2))return R(c,x(e.to),d)&&t&&(t._count=t._count?t._count+1:1)>30?(u(`Detected a possibly infinite redirection in a navigation guard when going from "${a.fullPath}" to "${d.fullPath}". Aborting to avoid a Stack Overflow.\n Are you always returning a new location within a navigation guard? That would lead to this error. Only return when redirecting or aborting, that should fix this. This might break in production if not fixed.`),Promise.reject(new Error("Infinite redirect in navigation guard"))):N(r({replace:s},C(e.to),{state:"object"==typeof e.to?r({},i,e.to.state):i,force:o}),t||d)}else e=F(d,a,!0,s,i);return B(d,a,e),e}))}function I(e,t){const n=P(e,t);return n?Promise.reject(n):Promise.resolve()}function O(e){const t=oe.values().next().value;return t&&"function"==typeof t.runWithContext?t.runWithContext(e):e()}function j(e,t){let n;const[a,i,r]=function(e,t){const n=[],a=[],i=[],r=Math.max(t.matched.length,e.matched.length);for(let o=0;oz(e,r)))?a.push(r):n.push(r));const s=e.matched[o];s&&(t.matched.find((e=>z(e,s)))||i.push(s))}return[n,a,i]}(e,t);n=Oe(a.reverse(),"beforeRouteLeave",e,t);for(const i of a)i.leaveGuards.forEach((a=>{n.push(Ie(a,e,t))}));const o=I.bind(null,e,t);return n.push(o),le(n).then((()=>{n=[];for(const a of h.list())n.push(Ie(a,e,t));return n.push(o),le(n)})).then((()=>{n=Oe(i,"beforeRouteUpdate",e,t);for(const a of i)a.updateGuards.forEach((a=>{n.push(Ie(a,e,t))}));return n.push(o),le(n)})).then((()=>{n=[];for(const a of r)if(a.beforeEnter)if(l(a.beforeEnter))for(const i of a.beforeEnter)n.push(Ie(i,e,t));else n.push(Ie(a.beforeEnter,e,t));return n.push(o),le(n)})).then((()=>(e.matched.forEach((e=>e.enterCallbacks={})),n=Oe(r,"beforeRouteEnter",e,t,O),n.push(o),le(n)))).then((()=>{n=[];for(const a of p.list())n.push(Ie(a,e,t));return n.push(o),le(n)})).catch((e=>ae(e,8)?e:Promise.reject(e)))}function B(e,t,n){f.list().forEach((a=>O((()=>a(e,t,n)))))}function F(e,t,a,i,o){const s=P(e,t);if(s)return s;const l=t===D,u=n?history.state:{};a&&(i||l?d.replace(e.fullPath,r({scroll:l&&u&&u.scroll},o)):d.push(e.fullPath,o)),m.value=e,te(e,t,a,l),ee()}let $;function G(){$||($=d.listen(((e,t,a)=>{if(!se.listening)return;const i=x(e),o=M(i);if(o)return void N(r(o,{replace:!0}),i).catch(s);g=i;const l=m.value;var u,c;n&&(u=H(l.fullPath,a.delta),c=V(),W.set(u,c)),j(i,l).catch((e=>ae(e,12)?e:ae(e,2)?(N(e.to,i).then((e=>{ae(e,20)&&!a.delta&&a.type===q.pop&&d.go(-1,!1)})).catch(s),Promise.reject()):(a.delta&&d.go(-a.delta,!1),X(e,i,l)))).then((e=>{(e=e||F(i,l,!1))&&(a.delta&&!ae(e,8)?d.go(-a.delta,!1):a.type===q.pop&&ae(e,20)&&d.go(-1,!1)),B(i,l,e)})).catch(s)})))}let Y,K=ze(),Q=ze();function X(e,t,n){ee(e);const a=Q.list();return a.length?a.forEach((a=>a(e,t,n))):(u("uncaught error during route navigation:"),console.error(e)),Promise.reject(e)}function ee(e){return Y||(Y=!e,G(),K.list().forEach((([t,n])=>e?n(e):t())),K.reset()),e}function te(a,i,r,o){const{scrollBehavior:s}=e;if(!n||!s)return Promise.resolve();const l=!r&&function(e){const t=W.get(e);return W.delete(e),t}(H(a.fullPath,0))||(o||!r)&&history.state&&history.state.scroll||null;return t.nextTick().then((()=>s(a,i,l))).then((e=>e&&U(e))).catch((e=>X(e,a,i)))}const ie=e=>d.go(e);let re;const oe=new Set,se={currentRoute:m,listening:!0,addRoute:function(e,t){let n,i;return J(e)?(n=a.getRecordMatcher(e),n||u(`Parent route "${String(e)}" not found when adding child route`,t),i=t):i=e,a.addRoute(i,n)},removeRoute:function(e){const t=a.getRecordMatcher(e);t?a.removeRoute(t):u(`Cannot remove non-existent route "${String(e)}"`)},clearRoutes:a.clearRoutes,hasRoute:function(e){return!!a.getRecordMatcher(e)},getRoutes:function(){return a.getRoutes().map((e=>e.record))},resolve:x,options:e,push:A,replace:function(e){return A(r(C(e),{replace:!0}))},go:ie,back:()=>ie(-1),forward:()=>ie(1),beforeEach:h.add,beforeResolve:p.add,afterEach:f.add,onError:Q.add,isReady:function(){return Y&&m.value!==D?Promise.resolve():new Promise(((e,t)=>{K.add([e,t])}))},install(e){const i=this;e.component("RouterLink",qe),e.component("RouterView",$e),e.config.globalProperties.$router=i,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>t.unref(m)}),n&&!re&&m.value===D&&(re=!0,A(d.location).catch((e=>{u("Unexpected error when starting the router:",e)})));const r={};for(const e in D)Object.defineProperty(r,e,{get:()=>m.value[e],enumerable:!0});e.provide(Le,i),e.provide(Me,t.shallowReactive(r)),e.provide(Re,m);const o=e.unmount;oe.add(e),e.unmount=function(){oe.delete(e),oe.size<1&&(g=D,$&&$(),$=null,m.value=D,re=!1,Y=!1),o()},n&&et(e,i,a)}};function le(e){return e.reduce(((e,t)=>e.then((()=>O(t)))),Promise.resolve())}return se},e.createRouterMatcher=fe,e.createWebHashHistory=function(e){return(e=location.host?e||location.pathname+location.search:"").includes("#")||(e+="#"),e.endsWith("#/")||e.endsWith("#")||u(`A hash base must end with a "#":\n"${e}" should be "${e.replace(/#.*$/,"#")}".`),Q(e)},e.createWebHistory=Q,e.isNavigationFailure=ae,e.loadRouteLocation=function(e){return e.matched.every((e=>e.redirect))?Promise.reject(new Error("Cannot load a route that redirects.")):Promise.all(e.matched.map((e=>e.components&&Promise.all(Object.keys(e.components).reduce(((t,n)=>{const a=e.components[n];return"function"!=typeof a||"displayName"in a||t.push(a().then((t=>{if(!t)return Promise.reject(new Error(`Couldn't resolve component "${n}" at "${e.path}". Ensure you passed a function that returns a promise.`));const a=i(t)?t.default:t;e.mods[n]=t,e.components[n]=a}))),t}),[]))))).then((()=>e))},e.matchedRouteKey=Pe,e.onBeforeRouteLeave=function(e){if(!t.getCurrentInstance())return void u("getCurrentInstance() returned null. onBeforeRouteLeave() must be called at the top of a setup function");const n=t.inject(Pe,{}).value;n?Ne(n,"leaveGuards",e):u("No active route record was found when calling `onBeforeRouteLeave()`. Make sure you call this function inside a component child of . Maybe you called it inside of App.vue?")},e.onBeforeRouteUpdate=function(e){if(!t.getCurrentInstance())return void u("getCurrentInstance() returned null. onBeforeRouteUpdate() must be called at the top of a setup function");const n=t.inject(Pe,{}).value;n?Ne(n,"updateGuards",e):u("No active route record was found when calling `onBeforeRouteUpdate()`. Make sure you call this function inside a component child of . Maybe you called it inside of App.vue?")},e.parseQuery=Ce,e.routeLocationKey=Me,e.routerKey=Le,e.routerViewLocationKey=Re,e.stringifyQuery=Te,e.useLink=De,e.useRoute=function(e){return t.inject(Me)},e.useRouter=function(){return t.inject(Le)},e.viewDepthKey=Ae,e}({},Vue); +var Vuex=function(e){"use strict";var t="store";function n(){return"undefined"!=typeof navigator?window:"undefined"!=typeof global?global:{}}function a(e,t){var a=n().__VUE_DEVTOOLS_GLOBAL_HOOK__;if(a)a.emit("devtools-plugin:setup",e,t);else{var i=n();(i.__VUE_DEVTOOLS_PLUGINS__=i.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:e,setupFn:t})}}function i(e,t){if(void 0===t&&(t=[]),null===e||"object"!=typeof e)return e;var n,a=(n=function(t){return t.original===e},t.filter(n)[0]);if(a)return a.copy;var r=Array.isArray(e)?[]:{};return t.push({original:e,copy:r}),Object.keys(e).forEach(function(n){r[n]=i(e[n],t)}),r}function r(e,t){Object.keys(e).forEach(function(n){return t(e[n],n)})}function o(e){return null!==e&&"object"==typeof e}function s(e,t){if(!e)throw new Error("[vuex] "+t)}function l(e,t,n){return t.indexOf(e)<0&&(n&&n.prepend?t.unshift(e):t.push(e)),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}function u(e,t){e._actions=Object.create(null),e._mutations=Object.create(null),e._wrappedGetters=Object.create(null),e._modulesNamespaceMap=Object.create(null);var n=e.state;d(e,n,[],e._modules.root,!0),c(e,n,t)}function c(t,n,a){var i=t._state,o=t._scope;t.getters={},t._makeLocalGettersCache=Object.create(null);var l=t._wrappedGetters,u={},c={},d=e.effectScope(!0);d.run(function(){r(l,function(n,a){u[a]=function(e,t){return function(){return e(t)}}(n,t),c[a]=e.computed(function(){return u[a]()}),Object.defineProperty(t.getters,a,{get:function(){return c[a].value},enumerable:!0})})}),t._state=e.reactive({data:n}),t._scope=d,t.strict&&function(t){e.watch(function(){return t._state.data},function(){s(t._committing,"do not mutate vuex store state outside mutation handlers.")},{deep:!0,flush:"sync"})}(t),i&&a&&t._withCommit(function(){i.data=null}),o&&o.stop()}function d(e,t,n,a,i){var r=!n.length,o=e._modules.getNamespace(n);if(a.namespaced&&(e._modulesNamespaceMap[o]&&console.error("[vuex] duplicate namespace "+o+" for the namespaced module "+n.join("/")),e._modulesNamespaceMap[o]=a),!r&&!i){var s=p(t,n.slice(0,-1)),l=n[n.length-1];e._withCommit(function(){l in s&&console.warn('[vuex] state field "'+l+'" was overridden by a module with the same name at "'+n.join(".")+'"'),s[l]=a.state})}var u=a.context=function(e,t,n){var a=""===t,i={dispatch:a?e.dispatch:function(n,a,i){var r=f(n,a,i),o=r.payload,s=r.options,l=r.type;if(s&&s.root||(l=t+l,e._actions[l]))return e.dispatch(l,o);console.error("[vuex] unknown local action type: "+r.type+", global type: "+l)},commit:a?e.commit:function(n,a,i){var r=f(n,a,i),o=r.payload,s=r.options,l=r.type;s&&s.root||(l=t+l,e._mutations[l])?e.commit(l,o,s):console.error("[vuex] unknown local mutation type: "+r.type+", global type: "+l)}};return Object.defineProperties(i,{getters:{get:a?function(){return e.getters}:function(){return h(e,t)}},state:{get:function(){return p(e.state,n)}}}),i}(e,o,n);a.forEachMutation(function(t,n){!function(e,t,n,a){var i=e._mutations[t]||(e._mutations[t]=[]);i.push(function(t){n.call(e,a.state,t)})}(e,o+n,t,u)}),a.forEachAction(function(t,n){var a=t.root?n:o+n,i=t.handler||t;!function(e,t,n,a){var i=e._actions[t]||(e._actions[t]=[]);i.push(function(t){var i,r=n.call(e,{dispatch:a.dispatch,commit:a.commit,getters:a.getters,state:a.state,rootGetters:e.getters,rootState:e.state},t);return(i=r)&&"function"==typeof i.then||(r=Promise.resolve(r)),e._devtoolHook?r.catch(function(t){throw e._devtoolHook.emit("vuex:error",t),t}):r})}(e,a,i,u)}),a.forEachGetter(function(t,n){!function(e,t,n,a){if(e._wrappedGetters[t])return void console.error("[vuex] duplicate getter key: "+t);e._wrappedGetters[t]=function(e){return n(a.state,a.getters,e.state,e.getters)}}(e,o+n,t,u)}),a.forEachChild(function(a,r){d(e,t,n.concat(r),a,i)})}function h(e,t){if(!e._makeLocalGettersCache[t]){var n={},a=t.length;Object.keys(e.getters).forEach(function(i){if(i.slice(0,a)===t){var r=i.slice(a);Object.defineProperty(n,r,{get:function(){return e.getters[i]},enumerable:!0})}}),e._makeLocalGettersCache[t]=n}return e._makeLocalGettersCache[t]}function p(e,t){return t.reduce(function(e,t){return e[t]},e)}function f(e,t,n){return o(e)&&e.type&&(n=t,t=e,e=e.type),s("string"==typeof e,"expects string as the type, but found "+typeof e+"."),{type:e,payload:t,options:n}}var m="vuex:mutations",g="vuex:actions",_="vuex",v=0;function b(e,t){a({id:"org.vuejs.vuex",app:e,label:"Vuex",homepage:"https://next.vuex.vuejs.org/",logo:"https://vuejs.org/images/icons/favicon-96x96.png",packageName:"vuex",componentStateTypes:["vuex bindings"]},function(n){n.addTimelineLayer({id:m,label:"Vuex Mutations",color:y}),n.addTimelineLayer({id:g,label:"Vuex Actions",color:y}),n.addInspector({id:_,label:"Vuex",icon:"storage",treeFilterPlaceholder:"Filter stores..."}),n.on.getInspectorTree(function(n){if(n.app===e&&n.inspectorId===_)if(n.filter){var a=[];S(a,t._modules.root,n.filter,""),n.rootNodes=a}else n.rootNodes=[x(t._modules.root,"")]}),n.on.getInspectorState(function(n){if(n.app===e&&n.inspectorId===_){var a=n.nodeId;h(t,a),n.state=function(e,t,n){t="root"===n?t:t[n];var a=Object.keys(t),i={state:Object.keys(e.state).map(function(t){return{key:t,editable:!0,value:e.state[t]}})};if(a.length){var r=function(e){var t={};return Object.keys(e).forEach(function(n){var a=n.split("/");if(a.length>1){var i=t,r=a.pop();a.forEach(function(e){i[e]||(i[e]={_custom:{value:{},display:e,tooltip:"Module",abstract:!0}}),i=i[e]._custom.value}),i[r]=C(function(){return e[n]})}else t[n]=C(function(){return e[n]})}),t}(t);i.getters=Object.keys(r).map(function(e){return{key:e.endsWith("/")?k(e):e,editable:!1,value:C(function(){return r[e]})}})}return i}((i=t._modules,(o=(r=a).split("/").filter(function(e){return e})).reduce(function(e,t,n){var a=e[t];if(!a)throw new Error('Missing module "'+t+'" for path "'+r+'".');return n===o.length-1?a:a._children},"root"===r?i:i.root._children)),"root"===a?t.getters:t._makeLocalGettersCache,a)}var i,r,o}),n.on.editInspectorState(function(n){if(n.app===e&&n.inspectorId===_){var a=n.nodeId,i=n.path;"root"!==a&&(i=a.split("/").filter(Boolean).concat(i)),t._withCommit(function(){n.set(t._state.data,i,n.state.value)})}}),t.subscribe(function(e,t){var a={};e.payload&&(a.payload=e.payload),a.state=t,n.notifyComponentUpdate(),n.sendInspectorTree(_),n.sendInspectorState(_),n.addTimelineEvent({layerId:m,event:{time:Date.now(),title:e.type,data:a}})}),t.subscribeAction({before:function(e,t){var a={};e.payload&&(a.payload=e.payload),e._id=v++,e._time=Date.now(),a.state=t,n.addTimelineEvent({layerId:g,event:{time:e._time,title:e.type,groupId:e._id,subtitle:"start",data:a}})},after:function(e,t){var a={},i=Date.now()-e._time;a.duration={_custom:{type:"duration",display:i+"ms",tooltip:"Action duration",value:i}},e.payload&&(a.payload=e.payload),a.state=t,n.addTimelineEvent({layerId:g,event:{time:Date.now(),title:e.type,groupId:e._id,subtitle:"end",data:a}})}})})}var y=8702998,w={label:"namespaced",textColor:16777215,backgroundColor:6710886};function k(e){return e&&"root"!==e?e.split("/").slice(-2,-1)[0]:"Root"}function x(e,t){return{id:t||"root",label:k(t),tags:e.namespaced?[w]:[],children:Object.keys(e._children).map(function(n){return x(e._children[n],t+n+"/")})}}function S(e,t,n,a){a.includes(n)&&e.push({id:a||"root",label:a.endsWith("/")?a.slice(0,a.length-1):a||"Root",tags:t.namespaced?[w]:[]}),Object.keys(t._children).forEach(function(i){S(e,t._children[i],n,a+i+"/")})}function C(e){try{return e()}catch(e){return e}}var T=function(e,t){this.runtime=t,this._children=Object.create(null),this._rawModule=e;var n=e.state;this.state=("function"==typeof n?n():n)||{}},E={namespaced:{configurable:!0}};E.namespaced.get=function(){return!!this._rawModule.namespaced},T.prototype.addChild=function(e,t){this._children[e]=t},T.prototype.removeChild=function(e){delete this._children[e]},T.prototype.getChild=function(e){return this._children[e]},T.prototype.hasChild=function(e){return e in this._children},T.prototype.update=function(e){this._rawModule.namespaced=e.namespaced,e.actions&&(this._rawModule.actions=e.actions),e.mutations&&(this._rawModule.mutations=e.mutations),e.getters&&(this._rawModule.getters=e.getters)},T.prototype.forEachChild=function(e){r(this._children,e)},T.prototype.forEachGetter=function(e){this._rawModule.getters&&r(this._rawModule.getters,e)},T.prototype.forEachAction=function(e){this._rawModule.actions&&r(this._rawModule.actions,e)},T.prototype.forEachMutation=function(e){this._rawModule.mutations&&r(this._rawModule.mutations,e)},Object.defineProperties(T.prototype,E);var P=function(e){this.register([],e,!1)};function A(e,t,n){if(R(e,n),t.update(n),n.modules)for(var a in n.modules){if(!t.getChild(a))return void console.warn("[vuex] trying to add a new module '"+a+"' on hot reloading, manual reload is needed");A(e.concat(a),t.getChild(a),n.modules[a])}}P.prototype.get=function(e){return e.reduce(function(e,t){return e.getChild(t)},this.root)},P.prototype.getNamespace=function(e){var t=this.root;return e.reduce(function(e,n){return e+((t=t.getChild(n)).namespaced?n+"/":"")},"")},P.prototype.update=function(e){A([],this.root,e)},P.prototype.register=function(e,t,n){var a=this;void 0===n&&(n=!0),R(e,t);var i=new T(t,n);0===e.length?this.root=i:this.get(e.slice(0,-1)).addChild(e[e.length-1],i);t.modules&&r(t.modules,function(t,i){a.register(e.concat(i),t,n)})},P.prototype.unregister=function(e){var t=this.get(e.slice(0,-1)),n=e[e.length-1],a=t.getChild(n);a?a.runtime&&t.removeChild(n):console.warn("[vuex] trying to unregister module '"+n+"', which is not registered")},P.prototype.isRegistered=function(e){var t=this.get(e.slice(0,-1)),n=e[e.length-1];return!!t&&t.hasChild(n)};var M={assert:function(e){return"function"==typeof e},expected:"function"},L={getters:M,mutations:M,actions:{assert:function(e){return"function"==typeof e||"object"==typeof e&&"function"==typeof e.handler},expected:'function or object with "handler" function'}};function R(e,t){Object.keys(L).forEach(function(n){if(t[n]){var a=L[n];r(t[n],function(t,i){s(a.assert(t),function(e,t,n,a,i){var r=t+" should be "+i+' but "'+t+"."+n+'"';e.length>0&&(r+=' in module "'+e.join(".")+'"');return r+=" is "+JSON.stringify(a)+".",r}(e,n,i,t,a.expected))})}})}var z=function e(t){var n=this;void 0===t&&(t={}),s("undefined"!=typeof Promise,"vuex requires a Promise polyfill in this browser."),s(this instanceof e,"store must be called with the new operator.");var a=t.plugins;void 0===a&&(a=[]);var i=t.strict;void 0===i&&(i=!1);var r=t.devtools;this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new P(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._makeLocalGettersCache=Object.create(null),this._scope=null,this._devtools=r;var o=this,l=this.dispatch,u=this.commit;this.dispatch=function(e,t){return l.call(o,e,t)},this.commit=function(e,t,n){return u.call(o,e,t,n)},this.strict=i;var h=this._modules.root.state;d(this,h,[],this._modules.root),c(this,h),a.forEach(function(e){return e(n)})},N={state:{configurable:!0}};z.prototype.install=function(e,n){e.provide(n||t,this),e.config.globalProperties.$store=this,(void 0===this._devtools||this._devtools)&&b(e,this)},N.state.get=function(){return this._state.data},N.state.set=function(e){s(!1,"use store.replaceState() to explicit replace store state.")},z.prototype.commit=function(e,t,n){var a=this,i=f(e,t,n),r=i.type,o=i.payload,s=i.options,l={type:r,payload:o},u=this._mutations[r];u?(this._withCommit(function(){u.forEach(function(e){e(o)})}),this._subscribers.slice().forEach(function(e){return e(l,a.state)}),s&&s.silent&&console.warn("[vuex] mutation type: "+r+". Silent option has been removed. Use the filter functionality in the vue-devtools")):console.error("[vuex] unknown mutation type: "+r)},z.prototype.dispatch=function(e,t){var n=this,a=f(e,t),i=a.type,r=a.payload,o={type:i,payload:r},s=this._actions[i];if(s){try{this._actionSubscribers.slice().filter(function(e){return e.before}).forEach(function(e){return e.before(o,n.state)})}catch(e){console.warn("[vuex] error in before action subscribers: "),console.error(e)}var l=s.length>1?Promise.all(s.map(function(e){return e(r)})):s[0](r);return new Promise(function(e,t){l.then(function(t){try{n._actionSubscribers.filter(function(e){return e.after}).forEach(function(e){return e.after(o,n.state)})}catch(e){console.warn("[vuex] error in after action subscribers: "),console.error(e)}e(t)},function(e){try{n._actionSubscribers.filter(function(e){return e.error}).forEach(function(t){return t.error(o,n.state,e)})}catch(e){console.warn("[vuex] error in error action subscribers: "),console.error(e)}t(e)})})}console.error("[vuex] unknown action type: "+i)},z.prototype.subscribe=function(e,t){return l(e,this._subscribers,t)},z.prototype.subscribeAction=function(e,t){return l("function"==typeof e?{before:e}:e,this._actionSubscribers,t)},z.prototype.watch=function(t,n,a){var i=this;return s("function"==typeof t,"store.watch only accepts a function."),e.watch(function(){return t(i.state,i.getters)},n,Object.assign({},a))},z.prototype.replaceState=function(e){var t=this;this._withCommit(function(){t._state.data=e})},z.prototype.registerModule=function(e,t,n){void 0===n&&(n={}),"string"==typeof e&&(e=[e]),s(Array.isArray(e),"module path must be a string or an Array."),s(e.length>0,"cannot register the root module by using registerModule."),this._modules.register(e,t),d(this,this.state,e,this._modules.get(e),n.preserveState),c(this,this.state)},z.prototype.unregisterModule=function(e){var t=this;"string"==typeof e&&(e=[e]),s(Array.isArray(e),"module path must be a string or an Array."),this._modules.unregister(e),this._withCommit(function(){delete p(t.state,e.slice(0,-1))[e[e.length-1]]}),u(this)},z.prototype.hasModule=function(e){return"string"==typeof e&&(e=[e]),s(Array.isArray(e),"module path must be a string or an Array."),this._modules.isRegistered(e)},z.prototype.hotUpdate=function(e){this._modules.update(e),u(this,!0)},z.prototype._withCommit=function(e){var t=this._committing;this._committing=!0,e(),this._committing=t},Object.defineProperties(z.prototype,N);var O=F(function(e,t){var n={};return B(t)||console.error("[vuex] mapState: mapper parameter must be either an Array or an Object"),j(t).forEach(function(t){var a=t.key,i=t.val;n[a]=function(){var t=this.$store.state,n=this.$store.getters;if(e){var a=$(this.$store,"mapState",e);if(!a)return;t=a.context.state,n=a.context.getters}return"function"==typeof i?i.call(this,t,n):t[i]},n[a].vuex=!0}),n}),I=F(function(e,t){var n={};return B(t)||console.error("[vuex] mapMutations: mapper parameter must be either an Array or an Object"),j(t).forEach(function(t){var a=t.key,i=t.val;n[a]=function(){for(var t=[],n=arguments.length;n--;)t[n]=arguments[n];var a=this.$store.commit;if(e){var r=$(this.$store,"mapMutations",e);if(!r)return;a=r.context.commit}return"function"==typeof i?i.apply(this,[a].concat(t)):a.apply(this.$store,[i].concat(t))}}),n}),q=F(function(e,t){var n={};return B(t)||console.error("[vuex] mapGetters: mapper parameter must be either an Array or an Object"),j(t).forEach(function(t){var a=t.key,i=t.val;i=e+i,n[a]=function(){if(!e||$(this.$store,"mapGetters",e)){if(i in this.$store.getters)return this.$store.getters[i];console.error("[vuex] unknown getter: "+i)}},n[a].vuex=!0}),n}),D=F(function(e,t){var n={};return B(t)||console.error("[vuex] mapActions: mapper parameter must be either an Array or an Object"),j(t).forEach(function(t){var a=t.key,i=t.val;n[a]=function(){for(var t=[],n=arguments.length;n--;)t[n]=arguments[n];var a=this.$store.dispatch;if(e){var r=$(this.$store,"mapActions",e);if(!r)return;a=r.context.dispatch}return"function"==typeof i?i.apply(this,[a].concat(t)):a.apply(this.$store,[i].concat(t))}}),n});function j(e){return B(e)?Array.isArray(e)?e.map(function(e){return{key:e,val:e}}):Object.keys(e).map(function(t){return{key:t,val:e[t]}}):[]}function B(e){return Array.isArray(e)||o(e)}function F(e){return function(t,n){return"string"!=typeof t?(n=t,t=""):"/"!==t.charAt(t.length-1)&&(t+="/"),e(t,n)}}function $(e,t,n){var a=e._modulesNamespaceMap[n];return a||console.error("[vuex] module namespace not found in "+t+"(): "+n),a}function V(e,t,n){var a=n?e.groupCollapsed:e.group;try{a.call(e,t)}catch(n){e.log(t)}}function U(e){try{e.groupEnd()}catch(t){e.log("—— log end ——")}}function H(){var e=new Date;return" @ "+W(e.getHours(),2)+":"+W(e.getMinutes(),2)+":"+W(e.getSeconds(),2)+"."+W(e.getMilliseconds(),3)}function W(e,t){return n="0",a=t-e.toString().length,new Array(a+1).join(n)+e;var n,a}return{version:"4.1.0",Store:z,storeKey:t,createStore:function(e){return new z(e)},useStore:function(n){return void 0===n&&(n=null),e.inject(null!==n?n:t)},mapState:O,mapMutations:I,mapGetters:q,mapActions:D,createNamespacedHelpers:function(e){return{mapState:O.bind(null,e),mapGetters:q.bind(null,e),mapMutations:I.bind(null,e),mapActions:D.bind(null,e)}},createLogger:function(e){void 0===e&&(e={});var t=e.collapsed;void 0===t&&(t=!0);var n=e.filter;void 0===n&&(n=function(e,t,n){return!0});var a=e.transformer;void 0===a&&(a=function(e){return e});var r=e.mutationTransformer;void 0===r&&(r=function(e){return e});var o=e.actionFilter;void 0===o&&(o=function(e,t){return!0});var s=e.actionTransformer;void 0===s&&(s=function(e){return e});var l=e.logMutations;void 0===l&&(l=!0);var u=e.logActions;void 0===u&&(u=!0);var c=e.logger;return void 0===c&&(c=console),function(e){var d=i(e.state);void 0!==c&&(l&&e.subscribe(function(e,o){var s=i(o);if(n(e,d,s)){var l=H(),u=r(e),h="mutation "+e.type+l;V(c,h,t),c.log("%c prev state","color: #9E9E9E; font-weight: bold",a(d)),c.log("%c mutation","color: #03A9F4; font-weight: bold",u),c.log("%c next state","color: #4CAF50; font-weight: bold",a(s)),U(c)}d=s}),u&&e.subscribeAction(function(e,n){if(o(e,n)){var a=H(),i=s(e),r="action "+e.type+a;V(c,r,t),c.log("%c action","color: #03A9F4; font-weight: bold",i),U(c)}}))}}}}(Vue),VueI18n=function(e,t){"use strict";var n=function(e){var t=Object.create(null);if(e)for(var n in e)t[n]=e[n];return t.default=e,Object.freeze(t)}(t);function a(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const i="undefined"!=typeof window,r=(e,t=!1)=>t?Symbol.for(e):Symbol(e),o=(e,t,n)=>s({l:e,k:t,s:n}),s=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),l=e=>"number"==typeof e&&isFinite(e),u=e=>"[object RegExp]"===S(e),c=e=>C(e)&&0===Object.keys(e).length,d=Object.assign,h=Object.create,p=(e=null)=>h(e);function f(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function m(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}const g=Object.prototype.hasOwnProperty;function _(e,t){return g.call(e,t)}const v=Array.isArray,b=e=>"function"==typeof e,y=e=>"string"==typeof e,w=e=>"boolean"==typeof e,k=e=>null!==e&&"object"==typeof e,x=Object.prototype.toString,S=e=>x.call(e),C=e=>"[object Object]"===S(e);function T(e,t=""){return e.reduce((e,n,a)=>0===a?e+n:e+t+n,"")}const E=e=>!k(e)||v(e);function P(e,t){if(E(e)||E(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:e,des:t}=n.pop();Object.keys(e).forEach(a=>{"__proto__"!==a&&(k(e[a])&&!k(t[a])&&(t[a]=Array.isArray(e[a])?[]:p()),E(t[a])||E(e[a])?t[a]=e[a]:n.push({src:e[a],des:t[a]}))})}}function A(e){throw e}const M=" ",L="\n",R=String.fromCharCode(8232),z=String.fromCharCode(8233);function N(e){const t=e;let n=0,a=1,i=1,r=0;const o=e=>"\r"===t[e]&&t[e+1]===L,s=e=>t[e]===z,l=e=>t[e]===R,u=e=>o(e)||s(e)||l(e)?L:t[e];function c(){return r=0,(e=>o(e)||(e=>t[e]===L)(e)||s(e)||l(e))(n)&&(a++,i=0),o(n)&&n++,n++,i++,t[n]}return{index:()=>n,line:()=>a,column:()=>i,peekOffset:()=>r,charAt:u,currentChar:()=>u(n),currentPeek:()=>u(n+r),next:c,peek:function(){return o(n+r)&&r++,r++,t[n+r]},reset:function(){n=0,a=1,i=1,r=0},resetPeek:function(e=0){r=e},skipToPeek:function(){const e=n+r;for(;e!==n;)c();r=0}}}const O=void 0;function I(e,t={}){const n=!1!==t.location,a=N(e),i=()=>a.index(),r=()=>({line:a.line(),column:a.column(),offset:a.index()}),o=r(),s=i(),l={currentType:13,offset:s,startLoc:o,endLoc:o,lastType:13,lastOffset:s,lastStartLoc:o,lastEndLoc:o,braceNest:0,inLinked:!1,text:""},{onError:u}=t;function c(e,t,a){e.endLoc=r(),e.currentType=t;const i={type:t};return n&&(i.loc=function(e,t){return{start:e,end:t}}(e.startLoc,e.endLoc)),null!=a&&(i.value=a),i}const d=e=>c(e,13);function h(e,t){return e.currentChar()===t?(e.next(),t):(r(),"")}function p(e){let t="";for(;e.currentPeek()===M||e.currentPeek()===L;)t+=e.currentPeek(),e.peek();return t}function f(e){const t=p(e);return e.skipToPeek(),t}function m(e){if(e===O)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function g(e){p(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function _(e,t=!0){const n=(t=!1,a="")=>{const i=e.currentPeek();return"{"===i?t:"@"!==i&&i?"|"===i?!(a===M||a===L):i===M?(e.peek(),n(!0,M)):i!==L||(e.peek(),n(!0,L)):t},a=n();return t&&e.resetPeek(),a}function v(e,t){const n=e.currentChar();return n===O?O:t(n)?(e.next(),n):null}function b(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}function y(e){return v(e,b)}function w(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t||45===t}function k(e){return v(e,w)}function x(e){const t=e.charCodeAt(0);return t>=48&&t<=57}function S(e){return v(e,x)}function C(e){const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function T(e){return v(e,C)}function E(e){let t="",n="";for(;t=S(e);)n+=t;return n}function P(e){return"'"!==e&&e!==L}function A(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return R(e,t,4);case"U":return R(e,t,6);default:return r(),""}}function R(e,t,n){h(e,t);let a="";for(let t=0;t=1&&r(),e.next(),n=c(t,2,"{"),f(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&r(),e.next(),n=c(t,3,"}"),t.braceNest--,t.braceNest>0&&f(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&r(),n=j(e,t)||d(t),t.braceNest=0,n;default:{let a=!0,i=!0,o=!0;if(g(e))return t.braceNest>0&&r(),n=c(t,1,q(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(4===t.currentType||5===t.currentType||6===t.currentType))return r(),t.braceNest=0,B(e,t);if(a=function(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const a=m(e.currentPeek());return e.resetPeek(),a}(e,t))return n=c(t,4,function(e){f(e);let t="",n="";for(;t=k(e);)n+=t;const a=e.currentChar();if(a&&"}"!==a&&a!==O&&a!==M&&a!==L&&" "!==a){const t=I(e);return r(),n+t}return e.currentChar()===O&&r(),n}(e)),f(e),n;if(i=function(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const a=function(e){if(e===O)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),a}(e,t))return n=c(t,5,function(e){f(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${E(e)}`):t+=E(e),e.currentChar()===O&&r(),t}(e)),f(e),n;if(o=function(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const a="'"===e.currentPeek();return e.resetPeek(),a}(e,t))return n=c(t,6,function(e){f(e),h(e,"'");let t="",n="";for(;t=v(e,P);)n+="\\"===t?A(e):t;const a=e.currentChar();return a===L||a===O?(r(),a===L&&(e.next(),h(e,"'")),n):(h(e,"'"),n)}(e)),f(e),n;if(!a&&!i&&!o)return n=c(t,12,I(e)),r(),n.value,f(e),n;break}}return n}function j(e,t){const{currentType:n}=t;let a=null;const i=e.currentChar();switch(7!==n&&8!==n&&11!==n&&9!==n||i!==L&&i!==M||r(),i){case"@":return e.next(),a=c(t,7,"@"),t.inLinked=!0,a;case".":return f(e),e.next(),c(t,8,".");case":":return f(e),e.next(),c(t,9,":");default:return g(e)?(a=c(t,1,q(e)),t.braceNest=0,t.inLinked=!1,a):function(e,t){const{currentType:n}=t;if(7!==n)return!1;p(e);const a="."===e.currentPeek();return e.resetPeek(),a}(e,t)||function(e,t){const{currentType:n}=t;if(7!==n&&11!==n)return!1;p(e);const a=":"===e.currentPeek();return e.resetPeek(),a}(e,t)?(f(e),j(e,t)):function(e,t){const{currentType:n}=t;if(8!==n)return!1;p(e);const a=m(e.currentPeek());return e.resetPeek(),a}(e,t)?(f(e),c(t,11,function(e){let t="",n="";for(;t=y(e);)n+=t;return n}(e))):function(e,t){const{currentType:n}=t;if(9!==n)return!1;const a=()=>{const t=e.currentPeek();return"{"===t?m(e.peek()):!("@"===t||"|"===t||":"===t||"."===t||t===M||!t)&&(t===L?(e.peek(),a()):_(e,!1))},i=a();return e.resetPeek(),i}(e,t)?(f(e),"{"===i?D(e,t)||a:c(t,10,function(e){const t=n=>{const a=e.currentChar();return"{"!==a&&"@"!==a&&"|"!==a&&"("!==a&&")"!==a&&a?a===M?n:(n+=a,e.next(),t(n)):n};return t("")}(e))):(7===n&&r(),t.braceNest=0,t.inLinked=!1,B(e,t))}}function B(e,t){let n={type:13};if(t.braceNest>0)return D(e,t)||d(t);if(t.inLinked)return j(e,t)||d(t);switch(e.currentChar()){case"{":return D(e,t)||d(t);case"}":return r(),e.next(),c(t,3,"}");case"@":return j(e,t)||d(t);default:if(g(e))return n=c(t,1,q(e)),t.braceNest=0,t.inLinked=!1,n;if(_(e))return c(t,0,function(e){let t="";for(;;){const n=e.currentChar();if("{"===n||"}"===n||"@"===n||"|"===n||!n)break;if(n===M||n===L)if(_(e))t+=n,e.next();else{if(g(e))break;t+=n,e.next()}else t+=n,e.next()}return t}(e))}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:o}=l;return l.lastType=e,l.lastOffset=t,l.lastStartLoc=n,l.lastEndLoc=o,l.offset=i(),l.startLoc=r(),a.currentChar()===O?c(l,13):B(a,l)},currentOffset:i,currentPosition:r,context:()=>l}}const q=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function D(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||n,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function j(e={}){const t=!1!==e.location,{onError:n}=e;function a(e,n,a){const i={type:e};return t&&(i.start=n,i.end=n,i.loc={start:a,end:a}),i}function i(e,n,a,i){t&&(e.end=n,e.loc&&(e.loc.end=a))}function r(e,t){const n=e.context(),r=a(3,n.offset,n.startLoc);return r.value=t,i(r,e.currentOffset(),e.currentPosition()),r}function o(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:o}=n,s=a(5,r,o);return s.index=parseInt(t,10),e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function s(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:o}=n,s=a(4,r,o);return s.key=t,e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function l(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:o}=n,s=a(9,r,o);return s.value=t.replace(q,D),e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function u(e){const t=e.context(),n=a(6,t.offset,t.startLoc);let r=e.nextToken();if(8===r.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:r,lastStartLoc:o}=n,s=a(8,r,o);return 11!==t.type?(n.lastStartLoc,s.value="",i(s,r,o),{nextConsumeToken:t,node:s}):(null==t.value&&(n.lastStartLoc,B(t)),s.value=t.value||"",i(s,e.currentOffset(),e.currentPosition()),{node:s})}(e);n.modifier=t.node,r=t.nextConsumeToken||e.nextToken()}switch(9!==r.type&&(t.lastStartLoc,B(r)),r=e.nextToken(),2===r.type&&(r=e.nextToken()),r.type){case 10:null==r.value&&(t.lastStartLoc,B(r)),n.key=function(e,t){const n=e.context(),r=a(7,n.offset,n.startLoc);return r.value=t,i(r,e.currentOffset(),e.currentPosition()),r}(e,r.value||"");break;case 4:null==r.value&&(t.lastStartLoc,B(r)),n.key=s(e,r.value||"");break;case 5:null==r.value&&(t.lastStartLoc,B(r)),n.key=o(e,r.value||"");break;case 6:null==r.value&&(t.lastStartLoc,B(r)),n.key=l(e,r.value||"");break;default:{t.lastStartLoc;const o=e.context(),s=a(7,o.offset,o.startLoc);return s.value="",i(s,o.offset,o.startLoc),n.key=s,i(n,o.offset,o.startLoc),{nextConsumeToken:r,node:n}}}return i(n,e.currentOffset(),e.currentPosition()),{node:n}}function c(e){const t=e.context(),n=a(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let c=null;do{const a=c||e.nextToken();switch(c=null,a.type){case 0:null==a.value&&(t.lastStartLoc,B(a)),n.items.push(r(e,a.value||""));break;case 5:null==a.value&&(t.lastStartLoc,B(a)),n.items.push(o(e,a.value||""));break;case 4:null==a.value&&(t.lastStartLoc,B(a)),n.items.push(s(e,a.value||""));break;case 6:null==a.value&&(t.lastStartLoc,B(a)),n.items.push(l(e,a.value||""));break;case 7:{const t=u(e);n.items.push(t.node),c=t.nextConsumeToken||null;break}}}while(13!==t.currentType&&1!==t.currentType);return i(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}return{parse:function(n){const r=I(n,d({},e)),o=r.context(),s=a(0,o.offset,o.startLoc);return t&&s.loc&&(s.loc.source=n),s.body=function(e){const t=e.context(),{offset:n,startLoc:r}=t,o=c(e);return 13===t.currentType?o:function(e,t,n,r){const o=e.context();let s=0===r.items.length;const l=a(1,t,n);l.cases=[],l.cases.push(r);do{const t=c(e);s||(s=0===t.items.length),l.cases.push(t)}while(13!==o.currentType);return i(l,e.currentOffset(),e.currentPosition()),l}(e,n,r,o)}(r),e.onCacheKey&&(s.cacheKey=e.onCacheKey(n)),13!==o.currentType&&(o.lastStartLoc,n[o.offset]),i(s,r.currentOffset(),r.currentPosition()),s}}}function B(e){if(13===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function F(e,t){for(let n=0;n1){e.push(`${n("plural")}([`),e.indent(a());const i=t.cases.length;for(let n=0;n{const n=y(t.mode)?t.mode:"normal",a=y(t.filename)?t.filename:"message.intl",i=!!t.sourceMap,r=null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",o=t.needIndent?t.needIndent:"arrow"!==n,s=e.helpers||[],l=function(e,t){const{sourceMap:n,filename:a,breakLineCode:i,needIndent:r}=t,o={filename:a,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:i,needIndent:r,indentLevel:0};function s(e,t){o.code+=e}function l(e,t=!0){const n=t?i:"";s(r?n+" ".repeat(e):n)}return!1!==t.location&&e.loc&&(o.source=e.loc.source),{context:()=>o,push:s,indent:function(e=!0){const t=++o.indentLevel;e&&l(t)},deindent:function(e=!0){const t=--o.indentLevel;e&&l(t)},newline:function(){l(o.indentLevel)},helper:e=>`_${e}`,needIndent:()=>o.needIndent}}(e,{mode:n,filename:a,sourceMap:i,breakLineCode:r,needIndent:o});l.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),l.indent(o),s.length>0&&(l.push(`const { ${T(s.map(e=>`${e}: _${e}`),", ")} } = ctx`),l.newline()),l.push("return "),H(l,e),l.deindent(o),l.push("}"),delete e.helpers;const{code:u,map:c}=l.context();return{ast:e,code:u,map:c?c.toJSON():void 0}};function G(e,t={}){const n=d({},t),a=!!n.jit,i=!!n.minify,r=null==n.optimize||n.optimize,o=j(n).parse(e);return a?(r&&function(e){const t=e.body;2===t.type?V(t):t.cases.forEach(e=>V(e))}(o),i&&U(o),{ast:o,code:""}):(function(e){const t=function(e){const t={ast:e,helpers:new Set};return{context:()=>t,helper:e=>(t.helpers.add(e),e)}}(e);t.helper("normalize"),e.body&&$(e.body,t);const n=t.context();e.helpers=Array.from(n.helpers)}(o,n),W(o,n))}function Y(e){return k(e)&&0===ee(e)&&(_(e,"b")||_(e,"body"))}const K=["b","body"],Q=["c","cases"],Z=["s","static"],J=["i","items"],X=["t","type"];function ee(e){return ie(e,X)}const te=["v","value"];const ne=["m","modifier"],ae=["k","key"];function ie(e,t,n){for(let n=0;nfunction(e,t){const n=ie(t,K);if(null==n)throw oe(0);if(1===ee(n)){const t=function(e){return ie(e,Q,[])}(n);return e.plural(t.reduce((t,n)=>[...t,le(e,n)],[]))}return le(e,n)}(t,e)}function le(e,t){const n=function(e){return ie(e,Z)}(t);if(null!=n)return"text"===e.type?n:e.normalize([n]);{const n=function(e){return ie(e,J,[])}(t).reduce((t,n)=>[...t,ue(e,n)],[]);return e.normalize(n)}}function ue(e,t){const n=ee(t);switch(n){case 3:case 9:case 7:case 8:return function(e,t){const n=ie(e,te);if(null!=n)return n;throw oe(t)}(t,n);case 4:{const a=t;if(_(a,"k")&&a.k)return e.interpolate(e.named(a.k));if(_(a,"key")&&a.key)return e.interpolate(e.named(a.key));throw oe(n)}case 5:{const a=t;if(_(a,"i")&&l(a.i))return e.interpolate(e.list(a.i));if(_(a,"index")&&l(a.index))return e.interpolate(e.list(a.index));throw oe(n)}case 6:{const n=t,a=function(e){return ie(e,ne)}(n),i=function(e){const t=ie(e,ae);if(t)return t;throw oe(6)}(n);return e.linked(ue(e,i),a?ue(e,a):void 0,e.type)}default:throw new Error(`unhandled node on format message part: ${n}`)}}const ce=e=>e;let de=p();const he=17,pe=18,fe=19,me=21,ge=22,_e=23;function ve(e,t){return null!=t.locale?ye(t.locale):ye(e.locale)}let be;function ye(e){if(y(e))return e;if(b(e)){if(e.resolvedOnce&&null!=be)return be;if("Function"===e.constructor.name){const t=e();if((e=>k(e)&&b(e.then)&&b(e.catch))(t))throw Error(me);return be=t}throw Error(ge)}throw Error(_e)}function we(e,t,n){return[...new Set([n,...v(t)?t:k(t)?Object.keys(t):y(t)?[t]:[n]])]}function ke(e,t,n){const a=y(n)?n:Le,i=e;i.__localeChainCache||(i.__localeChainCache=new Map);let r=i.__localeChainCache.get(a);if(!r){r=[];let e=[n];for(;v(e);)e=xe(r,e,t);const o=v(t)||!C(t)?t:t.default?t.default:null;e=y(o)?[o]:o,v(e)&&xe(r,e,!1),i.__localeChainCache.set(a,r)}return r}function xe(e,t,n){let a=!0;for(let i=0;i`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;let ze,Ne,Oe,Ie=null;const qe=e=>{Ie=e};let De=0;function je(e={}){const t=b(e.onWarn)?e.onWarn:a,n=y(e.version)?e.version:"11.2.2",i=y(e.locale)||b(e.locale)?e.locale:Le,r=b(i)?Le:i,o=v(e.fallbackLocale)||C(e.fallbackLocale)||y(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:r,s=C(e.messages)?e.messages:Be(r),l=C(e.datetimeFormats)?e.datetimeFormats:Be(r),c=C(e.numberFormats)?e.numberFormats:Be(r),h=d(p(),e.modifiers,{upper:(e,t)=>"text"===t&&y(e)?e.toUpperCase():"vnode"===t&&k(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&y(e)?e.toLowerCase():"vnode"===t&&k(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&y(e)?Re(e):"vnode"===t&&k(e)&&"__v_isVNode"in e?Re(e.children):e}),f=e.pluralRules||p(),m=b(e.missing)?e.missing:null,g=!w(e.missingWarn)&&!u(e.missingWarn)||e.missingWarn,_=!w(e.fallbackWarn)&&!u(e.fallbackWarn)||e.fallbackWarn,x=!!e.fallbackFormat,S=!!e.unresolving,T=b(e.postTranslation)?e.postTranslation:null,E=C(e.processor)?e.processor:null,P=!w(e.warnHtmlMessage)||e.warnHtmlMessage,A=!!e.escapeParameter,M=b(e.messageCompiler)?e.messageCompiler:ze,L=b(e.messageResolver)?e.messageResolver:Ne||Me,R=b(e.localeFallbacker)?e.localeFallbacker:Oe||we,z=k(e.fallbackContext)?e.fallbackContext:void 0,N=e,O=k(N.__datetimeFormatters)?N.__datetimeFormatters:new Map,I=k(N.__numberFormatters)?N.__numberFormatters:new Map,q=k(N.__meta)?N.__meta:{};De++;const D={version:n,cid:De,locale:i,fallbackLocale:o,messages:s,modifiers:h,pluralRules:f,missing:m,missingWarn:g,fallbackWarn:_,fallbackFormat:x,unresolving:S,postTranslation:T,processor:E,warnHtmlMessage:P,escapeParameter:A,messageCompiler:M,messageResolver:L,localeFallbacker:R,fallbackContext:z,onWarn:t,__meta:q};return D.datetimeFormats=l,D.numberFormats=c,D.__datetimeFormatters=O,D.__numberFormatters=I,D}const Be=e=>({[e]:p()});function Fe(e,t,n,a,i){const{missing:r,onWarn:o}=e;if(null!==r){const a=r(e,n,t,i);return y(a)?a:t}return t}function $e(e,t,n){e.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function Ve(e,t){const n=t.indexOf(e);if(-1===n)return!1;for(let r=n+1;r"[object Date]"===S(e))(t)){if(isNaN(t.getTime()))throw Error(pe);o=t}else{if(!l(t))throw Error(he);o=t}return y(n)?r.key=n:C(n)&&Object.keys(n).forEach(e=>{He.includes(e)?s[e]=n[e]:r[e]=n[e]}),y(a)?r.locale=a:C(a)&&(s=a),C(i)&&(s=i),[r.key||"",o,r,s]}function Ge(e,t,n){const a=e;for(const e in n){const n=`${t}__${e}`;a.__datetimeFormatters.has(n)&&a.__datetimeFormatters.delete(n)}}function Ye(e,...t){const{numberFormats:n,unresolving:a,fallbackLocale:i,onWarn:r,localeFallbacker:o}=e,{__numberFormatters:s}=e,[l,u,h,p]=Qe(...t);w(h.missingWarn)?h.missingWarn:e.missingWarn,w(h.fallbackWarn)?h.fallbackWarn:e.fallbackWarn;const f=!!h.part,m=ve(e,h),g=o(e,i,m);if(!y(l)||""===l)return new Intl.NumberFormat(m,p).format(u);let _,v={},b=null;for(let t=0;t{Ke.includes(e)?o[e]=n[e]:r[e]=n[e]}),y(a)?r.locale=a:C(a)&&(o=a),C(i)&&(o=i),[r.key||"",s,r,o]}function Ze(e,t,n){const a=e;for(const e in n){const n=`${t}__${e}`;a.__numberFormatters.has(n)&&a.__numberFormatters.delete(n)}}const Je=e=>e,Xe=e=>"",et=e=>0===e.length?"":T(e),tt=e=>null==e?"":v(e)||C(e)&&e.toString===x?JSON.stringify(e,null,2):String(e);function nt(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function at(e={}){const t=e.locale,n=function(e){const t=l(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(l(e.named.count)||l(e.named.n))?l(e.named.count)?e.named.count:l(e.named.n)?e.named.n:t:t}(e),a=k(e.pluralRules)&&y(t)&&b(e.pluralRules[t])?e.pluralRules[t]:nt,i=k(e.pluralRules)&&y(t)&&b(e.pluralRules[t])?nt:void 0,r=e.list||[],o=e.named||p();function s(t,n){return(b(e.messages)?e.messages(t,!!n):!!k(e.messages)&&e.messages[t])||(e.parent?e.parent.message(t):Xe)}l(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,o);const u=C(e.processor)&&b(e.processor.normalize)?e.processor.normalize:et,c=C(e.processor)&&b(e.processor.interpolate)?e.processor.interpolate:tt,h={list:e=>r[e],named:e=>o[e],plural:e=>e[a(n,e.length,i)],linked:(t,...n)=>{const[a,i]=n;let r="text",o="";1===n.length?k(a)?(o=a.modifier||o,r=a.type||r):y(a)&&(o=a||o):2===n.length&&(y(a)&&(o=a||o),y(i)&&(r=i||r));const l=s(t,!0)(h),u="vnode"===r&&v(l)&&o?l[0]:l;return o?(c=o,e.modifiers?e.modifiers[c]:Je)(u,r):u;var c},message:s,type:C(e.processor)&&y(e.processor.type)?e.processor.type:"text",interpolate:c,normalize:u,values:d(p(),r,o)};return h}const it=()=>"",rt=e=>b(e);function ot(e,...t){const{fallbackFormat:n,postTranslation:a,unresolving:i,messageCompiler:r,fallbackLocale:o,messages:s}=e,[u,c]=ut(...t),d=w(c.missingWarn)?c.missingWarn:e.missingWarn,h=w(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,g=w(c.escapeParameter)?c.escapeParameter:e.escapeParameter,_=!!c.resolvedMessage,x=y(c.default)||w(c.default)?w(c.default)?r?u:()=>u:c.default:n?r?u:()=>u:null,S=n||null!=x&&(y(x)||b(x)),C=ve(e,c);g&&function(e){v(e.list)?e.list=e.list.map(e=>y(e)?f(e):e):k(e.named)&&Object.keys(e.named).forEach(t=>{y(e.named[t])&&(e.named[t]=f(e.named[t]))})}(c);let[T,E,P]=_?[u,C,s[C]||p()]:st(e,u,C,o,h,d),A=T,M=u;if(_||y(A)||Y(A)||rt(A)||S&&(A=x,M=A),!(_||(y(A)||Y(A)||rt(A))&&y(E)))return i?-1:u;let L=!1;const R=rt(A)?A:lt(e,u,E,A,M,()=>{L=!0});if(L)return A;const z=function(e,t,n,a){const{modifiers:i,pluralRules:r,messageResolver:o,fallbackLocale:s,fallbackWarn:u,missingWarn:c,fallbackContext:d}=e,h={locale:t,modifiers:i,pluralRules:r,messages:(a,i)=>{let r=o(n,a);if(null==r&&(d||i)){const[,,n]=st(d||e,a,t,s,u,c);r=o(n,a)}if(y(r)||Y(r)){let n=!1;const i=lt(e,a,t,r,a,()=>{n=!0});return n?it:i}return rt(r)?r:it}};return e.processor&&(h.processor=e.processor),a.list&&(h.list=a.list),a.named&&(h.named=a.named),l(a.plural)&&(h.pluralIndex=a.plural),h}(e,E,P,c),N=function(e,t,n){return t(n)}(0,R,at(z));let O=a?a(N,u):N;var I;return g&&y(O)&&(I=(I=(I=O).replace(/(\w+)\s*=\s*"([^"]*)"/g,(e,t,n)=>`${t}="${m(n)}"`)).replace(/(\w+)\s*=\s*'([^']*)'/g,(e,t,n)=>`${t}='${m(n)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(I)&&(I=I.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(e=>{I=I.replace(e,"$1javascript:")}),O=I),O}function st(e,t,n,a,i,r){const{messages:o,onWarn:s,messageResolver:l,localeFallbacker:u}=e,c=u(e,a,n);let d,h=p(),f=null;for(let n=0;na;return e.locale=n,e.key=t,e}const u=s(a,function(e,t,n,a,i,r){return{locale:t,key:n,warnHtmlMessage:i,onError:e=>{throw r&&r(e),e},onCacheKey:e=>o(t,n,e)}}(0,n,i,0,l,r));return u.locale=n,u.key=t,u.source=a,u}function ut(...e){const[t,n,a]=e,i=p();if(!(y(t)||l(t)||rt(t)||Y(t)))throw Error(he);const r=l(t)?String(t):(rt(t),t);return l(n)?i.plural=n:y(n)?i.default=n:C(n)&&!c(n)?i.named=n:v(n)&&(i.list=n),l(a)?i.plural=a:y(a)?i.default=a:C(a)&&d(i,a),[r,i]}const ct="11.2.2",dt=24,ht=25,pt=26,ft=27,mt=28,gt=29,_t=31,vt=32,bt=r("__translateVNode"),yt=r("__datetimeParts"),wt=r("__numberParts"),kt=r("__setPluralRules"),xt=r("__injectWithOption"),St=r("__dispose");function Ct(e){if(!k(e))return e;if(Y(e))return e;for(const t in e)if(_(e,t))if(t.includes(".")){const n=t.split("."),a=n.length-1;let i=e,r=!1;for(let e=0;e{if("locale"in e&&"resource"in e){const{locale:t,resource:n}=e;t?(o[t]=o[t]||p(),P(n,o[t])):P(n,o)}else y(e)&&P(JSON.parse(e),o)}),null==i&&r)for(const e in o)_(o,e)&&Ct(o[e]);return o}function Et(e,t,n){let a=k(t.messages)?t.messages:p();"__i18nGlobal"in n&&(a=Tt(e.locale.value,{messages:a,__i18n:n.__i18nGlobal}));const i=Object.keys(a);if(i.length&&i.forEach(t=>{e.mergeLocaleMessage(t,a[t])}),k(t.datetimeFormats)){const n=Object.keys(t.datetimeFormats);n.length&&n.forEach(n=>{e.mergeDateTimeFormat(n,t.datetimeFormats[n])})}if(k(t.numberFormats)){const n=Object.keys(t.numberFormats);n.length&&n.forEach(n=>{e.mergeNumberFormat(n,t.numberFormats[n])})}}function Pt(e){return t.createVNode(t.Text,null,e,0)}function At(){return"currentInstance"in n?n.currentInstance:n.getCurrentInstance()}const Mt=()=>[],Lt=()=>!1;let Rt=0;function zt(e){return(t,n,a,i)=>e(n,a,At()||void 0,i)}function Nt(e={}){const{__root:n,__injectWithOption:a}=e,r=void 0===n,o=e.flatJson,s=i?t.ref:t.shallowRef;let c=!w(e.inheritLocale)||e.inheritLocale;const h=s(n&&c?n.locale.value:y(e.locale)?e.locale:Le),p=s(n&&c?n.fallbackLocale.value:y(e.fallbackLocale)||v(e.fallbackLocale)||C(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:h.value),f=s(Tt(h.value,e)),m=s(C(e.datetimeFormats)?e.datetimeFormats:{[h.value]:{}}),g=s(C(e.numberFormats)?e.numberFormats:{[h.value]:{}});let x=n?n.missingWarn:!w(e.missingWarn)&&!u(e.missingWarn)||e.missingWarn,S=n?n.fallbackWarn:!w(e.fallbackWarn)&&!u(e.fallbackWarn)||e.fallbackWarn,T=n?n.fallbackRoot:!w(e.fallbackRoot)||e.fallbackRoot,E=!!e.fallbackFormat,A=b(e.missing)?e.missing:null,M=b(e.missing)?zt(e.missing):null,L=b(e.postTranslation)?e.postTranslation:null,R=n?n.warnHtmlMessage:!w(e.warnHtmlMessage)||e.warnHtmlMessage,z=!!e.escapeParameter;const N=n?n.modifiers:C(e.modifiers)?e.modifiers:{};let O,I=e.pluralRules||n&&n.pluralRules;O=(()=>{r&&qe(null);const t={version:ct,locale:h.value,fallbackLocale:p.value,messages:f.value,modifiers:N,pluralRules:I,missing:null===M?void 0:M,missingWarn:x,fallbackWarn:S,fallbackFormat:E,unresolving:!0,postTranslation:null===L?void 0:L,warnHtmlMessage:R,escapeParameter:z,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};t.datetimeFormats=m.value,t.numberFormats=g.value,t.__datetimeFormatters=C(O)?O.__datetimeFormatters:void 0,t.__numberFormatters=C(O)?O.__numberFormatters:void 0;const n=je(t);return r&&qe(n),n})(),$e(O,h.value,p.value);const q=t.computed({get:()=>h.value,set:e=>{O.locale=e,h.value=e}}),D=t.computed({get:()=>p.value,set:e=>{O.fallbackLocale=e,p.value=e,$e(O,h.value,e)}}),j=t.computed(()=>f.value),B=t.computed(()=>m.value),F=t.computed(()=>g.value),$=(e,t,a,i,o,s)=>{let u;h.value,p.value,f.value,m.value,g.value;try{r||(O.fallbackContext=n?Ie:void 0),u=e(O)}finally{r||(O.fallbackContext=void 0)}if("translate exists"!==a&&l(u)&&-1===u||"translate exists"===a&&!u){const[e,a]=t();return n&&T?i(n):o(e)}if(s(u))return u;throw Error(dt)};function V(...e){return $(t=>Reflect.apply(ot,null,[t,...e]),()=>ut(...e),"translate",t=>Reflect.apply(t.t,t,[...e]),e=>e,e=>y(e))}const U={normalize:function(e){return e.map(e=>y(e)||l(e)||w(e)?Pt(String(e)):e)},interpolate:e=>e,type:"vnode"};function H(e){return f.value[e]||{}}Rt++,n&&i&&(t.watch(n.locale,e=>{c&&(h.value=e,O.locale=e,$e(O,h.value,p.value))}),t.watch(n.fallbackLocale,e=>{c&&(p.value=e,O.fallbackLocale=e,$e(O,h.value,p.value))}));const W={id:Rt,locale:q,fallbackLocale:D,get inheritLocale(){return c},set inheritLocale(e){c=e,e&&n&&(h.value=n.locale.value,p.value=n.fallbackLocale.value,$e(O,h.value,p.value))},get availableLocales(){return Object.keys(f.value).sort()},messages:j,get modifiers(){return N},get pluralRules(){return I||{}},get isGlobal(){return r},get missingWarn(){return x},set missingWarn(e){x=e,O.missingWarn=x},get fallbackWarn(){return S},set fallbackWarn(e){S=e,O.fallbackWarn=S},get fallbackRoot(){return T},set fallbackRoot(e){T=e},get fallbackFormat(){return E},set fallbackFormat(e){E=e,O.fallbackFormat=E},get warnHtmlMessage(){return R},set warnHtmlMessage(e){R=e,O.warnHtmlMessage=e},get escapeParameter(){return z},set escapeParameter(e){z=e,O.escapeParameter=e},t:V,getLocaleMessage:H,setLocaleMessage:function(e,t){if(o){const n={[e]:t};for(const e in n)_(n,e)&&Ct(n[e]);t=n[e]}f.value[e]=t,O.messages=f.value},mergeLocaleMessage:function(e,t){f.value[e]=f.value[e]||{};const n={[e]:t};if(o)for(const e in n)_(n,e)&&Ct(n[e]);P(t=n[e],f.value[e]),O.messages=f.value},getPostTranslationHandler:function(){return b(L)?L:null},setPostTranslationHandler:function(e){L=e,O.postTranslation=e},getMissingHandler:function(){return A},setMissingHandler:function(e){null!==e&&(M=zt(e)),A=e,O.missing=M},[kt]:function(e){I=e,O.pluralRules=I}};return W.datetimeFormats=B,W.numberFormats=F,W.rt=function(...e){const[t,n,a]=e;if(a&&!k(a))throw Error(ht);return V(t,n,d({resolvedMessage:!0},a||{}))},W.te=function(e,t){return $(()=>{if(!e)return!1;const n=H(y(t)?t:h.value),a=O.messageResolver(n,e);return Y(a)||rt(a)||y(a)},()=>[e],"translate exists",n=>Reflect.apply(n.te,n,[e,t]),Lt,e=>w(e))},W.tm=function(e){const t=function(e){let t=null;const n=ke(O,p.value,h.value);for(let a=0;aReflect.apply(Ue,null,[t,...e]),()=>We(...e),"datetime format",t=>Reflect.apply(t.d,t,[...e]),()=>"",e=>y(e)||v(e))},W.n=function(...e){return $(t=>Reflect.apply(Ye,null,[t,...e]),()=>Qe(...e),"number format",t=>Reflect.apply(t.n,t,[...e]),()=>"",e=>y(e)||v(e))},W.getDateTimeFormat=function(e){return m.value[e]||{}},W.setDateTimeFormat=function(e,t){m.value[e]=t,O.datetimeFormats=m.value,Ge(O,e,t)},W.mergeDateTimeFormat=function(e,t){m.value[e]=d(m.value[e]||{},t),O.datetimeFormats=m.value,Ge(O,e,t)},W.getNumberFormat=function(e){return g.value[e]||{}},W.setNumberFormat=function(e,t){g.value[e]=t,O.numberFormats=g.value,Ze(O,e,t)},W.mergeNumberFormat=function(e,t){g.value[e]=d(g.value[e]||{},t),O.numberFormats=g.value,Ze(O,e,t)},W[xt]=a,W[bt]=function(...e){return $(t=>{let n;const a=t;try{a.processor=U,n=Reflect.apply(ot,null,[a,...e])}finally{a.processor=null}return n},()=>ut(...e),"translate",t=>t[bt](...e),e=>[Pt(e)],e=>v(e))},W[yt]=function(...e){return $(t=>Reflect.apply(Ue,null,[t,...e]),()=>We(...e),"datetime format",t=>t[yt](...e),Mt,e=>y(e)||v(e))},W[wt]=function(...e){return $(t=>Reflect.apply(Ye,null,[t,...e]),()=>Qe(...e),"number format",t=>t[wt](...e),Mt,e=>y(e)||v(e))},W}function Ot(e={}){const t=Nt(function(e){const t=y(e.locale)?e.locale:Le,n=y(e.fallbackLocale)||v(e.fallbackLocale)||C(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:t,a=b(e.missing)?e.missing:void 0,i=!w(e.silentTranslationWarn)&&!u(e.silentTranslationWarn)||!e.silentTranslationWarn,r=!w(e.silentFallbackWarn)&&!u(e.silentFallbackWarn)||!e.silentFallbackWarn,o=!w(e.fallbackRoot)||e.fallbackRoot,s=!!e.formatFallbackMessages,l=C(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,h=b(e.postTranslation)?e.postTranslation:void 0,p=!y(e.warnHtmlInMessage)||"off"!==e.warnHtmlInMessage,f=!!e.escapeParameterHtml,m=!w(e.sync)||e.sync;let g=e.messages;if(C(e.sharedMessages)){const t=e.sharedMessages;g=Object.keys(t).reduce((e,n)=>{const a=e[n]||(e[n]={});return d(a,t[n]),e},g||{})}const{__i18n:_,__root:k,__injectWithOption:x}=e,S=e.datetimeFormats,T=e.numberFormats;return{locale:t,fallbackLocale:n,messages:g,flatJson:e.flatJson,datetimeFormats:S,numberFormats:T,missing:a,missingWarn:i,fallbackWarn:r,fallbackRoot:o,fallbackFormat:s,modifiers:l,pluralRules:c,postTranslation:h,warnHtmlMessage:p,escapeParameter:f,messageResolver:e.messageResolver,inheritLocale:m,__i18n:_,__root:k,__injectWithOption:x}}(e)),{__extender:n}=e,a={id:t.id,get locale(){return t.locale.value},set locale(e){t.locale.value=e},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(e){t.fallbackLocale.value=e},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(e){t.setMissingHandler(e)},get silentTranslationWarn(){return w(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(e){t.missingWarn=w(e)?!e:e},get silentFallbackWarn(){return w(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(e){t.fallbackWarn=w(e)?!e:e},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(e){t.fallbackFormat=e},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(e){t.setPostTranslationHandler(e)},get sync(){return t.inheritLocale},set sync(e){t.inheritLocale=e},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(e){t.warnHtmlMessage="off"!==e},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(e){t.escapeParameter=e},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t:(...e)=>Reflect.apply(t.t,t,[...e]),rt:(...e)=>Reflect.apply(t.rt,t,[...e]),te:(e,n)=>t.te(e,n),tm:e=>t.tm(e),getLocaleMessage:e=>t.getLocaleMessage(e),setLocaleMessage(e,n){t.setLocaleMessage(e,n)},mergeLocaleMessage(e,n){t.mergeLocaleMessage(e,n)},d:(...e)=>Reflect.apply(t.d,t,[...e]),getDateTimeFormat:e=>t.getDateTimeFormat(e),setDateTimeFormat(e,n){t.setDateTimeFormat(e,n)},mergeDateTimeFormat(e,n){t.mergeDateTimeFormat(e,n)},n:(...e)=>Reflect.apply(t.n,t,[...e]),getNumberFormat:e=>t.getNumberFormat(e),setNumberFormat(e,n){t.setNumberFormat(e,n)},mergeNumberFormat(e,n){t.mergeNumberFormat(e,n)}};return a.__extender=n,a}function It(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[kt](t.pluralizationRules||e.pluralizationRules);const n=Tt(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(t=>e.mergeLocaleMessage(t,n[t])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}const qt={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>"parent"===e||"global"===e,default:"parent"},i18n:{type:Object}};function Dt(){return t.Fragment}const jt=t.defineComponent({name:"i18n-t",props:d({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>l(e)||!isNaN(e)}},qt),setup(e,n){const{slots:a,attrs:i}=n,r=e.i18n||Yt({useScope:e.scope,__useComponent:!0});return()=>{const o=Object.keys(a).filter(e=>"_"!==e[0]),s=p();e.locale&&(s.locale=e.locale),void 0!==e.plural&&(s.plural=y(e.plural)?+e.plural:e.plural);const l=function({slots:e},n){return 1===n.length&&"default"===n[0]?(e.default?e.default():[]).reduce((e,n)=>[...e,...n.type===t.Fragment?n.children:[n]],[]):n.reduce((t,n)=>{const a=e[n];return a&&(t[n]=a()),t},p())}(n,o),u=r[bt](e.keypath,l,s),c=d(p(),i),h=y(e.tag)||k(e.tag)?e.tag:Dt();return t.h(h,c,u)}}}),Bt=jt;function Ft(e,n,a,i){const{slots:r,attrs:o}=n;return()=>{const n={part:!0};let s=p();e.locale&&(n.locale=e.locale),y(e.format)?n.key=e.format:k(e.format)&&(y(e.format.key)&&(n.key=e.format.key),s=Object.keys(e.format).reduce((t,n)=>a.includes(n)?d(p(),t,{[n]:e.format[n]}):t,p()));const l=i(e.value,n,s);let u=[n.key];v(l)?u=l.map((e,t)=>{const n=r[e.type],a=n?n({[e.type]:e.value,index:t,parts:l}):[e.value];var i;return v(i=a)&&!y(i[0])&&(a[0].key=`${e.type}-${t}`),a}):y(l)&&(u=[l]);const c=d(p(),o),h=y(e.tag)||k(e.tag)?e.tag:Dt();return t.h(h,c,u)}}const $t=t.defineComponent({name:"i18n-n",props:d({value:{type:Number,required:!0},format:{type:[String,Object]}},qt),setup(e,t){const n=e.i18n||Yt({useScope:e.scope,__useComponent:!0});return Ft(e,t,Ke,(...e)=>n[wt](...e))}}),Vt=$t;function Ut(e){const n=t=>{const{instance:n,value:a}=t;if(!n||!n.$)throw Error(vt);const i=function(e,t){const n=e;if("composition"===e.mode)return n.__getInstance(t)||e.global;{const a=n.__getInstance(t);return null!=a?a.__composer:e.global.__composer}}(e,n.$),r=Ht(a);return[Reflect.apply(i.t,i,[...Wt(r)]),i]};return{created:(a,r)=>{const[o,s]=n(r);i&&e.global===s&&(a.__i18nWatcher=t.watch(s.locale,()=>{r.instance&&r.instance.$forceUpdate()})),a.__composer=s,a.textContent=o},unmounted:e=>{i&&e.__i18nWatcher&&(e.__i18nWatcher(),e.__i18nWatcher=void 0,delete e.__i18nWatcher),e.__composer&&(e.__composer=void 0,delete e.__composer)},beforeUpdate:(e,{value:t})=>{if(e.__composer){const n=e.__composer,a=Ht(t);e.textContent=Reflect.apply(n.t,n,[...Wt(a)])}},getSSRProps:e=>{const[t]=n(e);return{textContent:t}}}}function Ht(e){if(y(e))return{path:e};if(C(e)){if(!("path"in e))throw Error(mt,"path");return e}throw Error(gt)}function Wt(e){const{path:t,locale:n,args:a,choice:i,plural:r}=e,o={},s=a||{};return y(n)&&(o.locale=n),l(i)&&(o.plural=i),l(r)&&(o.plural=r),[t,s,o]}const Gt=r("global-vue-i18n");function Yt(e={}){const n=At();if(null==n)throw Error(pt);if(!n.isCE&&null!=n.appContext.app&&!n.appContext.app.__VUE_I18N_SYMBOL__)throw Error(ft);const a=function(e){const n=t.inject(e.isCE?Gt:e.appContext.app.__VUE_I18N_SYMBOL__);if(!n)throw Error(e.isCE?_t:vt);return n}(n),i=function(e){return"composition"===e.mode?e.global:e.global.__composer}(a),r=function(e){return e.type}(n),o=function(e,t){return c(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}(e,r);if("global"===o)return Et(i,e,r),i;if("parent"===o){let t=function(e,t,n=!1){let a=null;const i=t.root;let r=function(e,t=!1){return null==e?null:t&&e.vnode.ctx||e.parent}(t,n);for(;null!=r;){const t=e;if("composition"===e.mode)a=t.__getInstance(r);else{const e=t.__getInstance(r);null!=e&&(a=e.__composer,n&&a&&!a[xt]&&(a=null))}if(null!=a)break;if(i===r)break;r=r.parent}return a}(a,n,e.__useComponent);return null==t&&(t=i),t}const s=a;let l=s.__getInstance(n);if(null==l){const a=d({},e);"__i18n"in r&&(a.__i18n=r.__i18n),i&&(a.__root=i),l=Nt(a),s.__composerExtend&&(l[St]=s.__composerExtend(l)),function(e,n,a){t.onMounted(()=>{},n),t.onUnmounted(()=>{const t=a;e.__deleteInstance(n);const i=t[St];i&&(i(),delete t[St])},n)}(s,n,l),s.__setInstance(n,l)}return l}const Kt=["locale","fallbackLocale","availableLocales"],Qt=["t","rt","d","n","tm","te"],Zt=t.defineComponent({name:"i18n-d",props:d({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},qt),setup(e,t){const n=e.i18n||Yt({useScope:e.scope,__useComponent:!0});return Ft(e,t,He,(...e)=>n[yt](...e))}}),Jt=Zt;return ze=function(e,t){if(y(e)){!w(t.warnHtmlMessage)||t.warnHtmlMessage;const n=(t.onCacheKey||ce)(e),a=de[n];if(a)return a;const{ast:i,detectError:r}=function(e,t={}){let n=!1;const a=t.onError||A;return t.onError=e=>{n=!0,a(e)},{...G(e,t),detectError:n}}(e,{...t,location:!1,jit:!0}),o=se(i);return r?o:de[n]=o}{const t=e.cacheKey;if(t){return de[t]||(de[t]=se(e))}return se(e)}},Ne=function(e,t){if(!k(e))return null;let n=Ae.get(t);if(n||(n=function(e){const t=[];let n,a,i,r,o,s,l,u=-1,c=0,d=0;const h=[];function p(){const t=e[u+1];if(5===c&&"'"===t||6===c&&'"'===t)return u++,i="\\"+t,h[0](),!0}for(h[0]=()=>{void 0===a?a=i:a+=i},h[1]=()=>{void 0!==a&&(t.push(a),a=void 0)},h[2]=()=>{h[0](),d++},h[3]=()=>{if(d>0)d--,c=4,h[0]();else{if(d=0,void 0===a)return!1;if(a=function(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(n=t,Ee.test(n)?function(e){const t=e.charCodeAt(0);return t!==e.charCodeAt(e.length-1)||34!==t&&39!==t?e:e.slice(1,-1)}(t):"*"+t);var n}(a),!1===a)return!1;h[1]()}};null!==c;)if(u++,n=e[u],"\\"!==n||!p()){if(r=Pe(n),l=Te[c],o=l[r]||l.l||8,8===o)return;if(c=o[0],void 0!==o[1]&&(s=h[o[1]],s&&(i=n,!1===s())))return;if(7===c)return t}}(t),n&&Ae.set(t,n)),!n)return null;const a=n.length;let i=e,r=0;for(;rOt(e)):a.run(()=>Nt(e));if(null==i)throw Error(vt);return[a,i]}(e,n),l=r(""),u={get mode(){return n?"legacy":"composition"},async install(e,...i){if(e.__VUE_I18N_SYMBOL__=l,e.provide(e.__VUE_I18N_SYMBOL__,u),C(i[0])){const e=i[0];u.__composerExtend=e.__composerExtend,u.__vueI18nExtend=e.__vueI18nExtend}let r=null;!n&&a&&(r=function(e,n){const a=Object.create(null);Kt.forEach(e=>{const i=Object.getOwnPropertyDescriptor(n,e);if(!i)throw Error(vt);const r=t.isRef(i.value)?{get:()=>i.value.value,set(e){i.value.value=e}}:{get:()=>i.get&&i.get()};Object.defineProperty(a,e,r)}),e.config.globalProperties.$i18n=a,Qt.forEach(t=>{const a=Object.getOwnPropertyDescriptor(n,t);if(!a||!a.value)throw Error(vt);Object.defineProperty(e.config.globalProperties,`$${t}`,a)});return()=>{delete e.config.globalProperties.$i18n,Qt.forEach(t=>{delete e.config.globalProperties[`$${t}`]})}}(e,u.global)),function(e,t,...n){const a=C(n[0])?n[0]:{};(!w(a.globalInstall)||a.globalInstall)&&([jt.name,"I18nT"].forEach(t=>e.component(t,jt)),[$t.name,"I18nN"].forEach(t=>e.component(t,$t)),[Zt.name,"I18nD"].forEach(t=>e.component(t,Zt))),e.directive("t",Ut(t))}(e,u,...i),n&&e.mixin(function(e,t,n){return{beforeCreate(){const a=At();if(!a)throw Error(vt);const i=this.$options;if(i.i18n){const a=i.i18n;if(i.__i18n&&(a.__i18n=i.__i18n),a.__root=t,this===this.$root)this.$i18n=It(e,a);else{a.__injectWithOption=!0,a.__extender=n.__vueI18nExtend,this.$i18n=Ot(a);const e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}}else if(i.__i18n)if(this===this.$root)this.$i18n=It(e,i);else{this.$i18n=Ot({__i18n:i.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}else this.$i18n=e;i.__i18nGlobal&&Et(t,i,i),this.$t=(...e)=>this.$i18n.t(...e),this.$rt=(...e)=>this.$i18n.rt(...e),this.$te=(e,t)=>this.$i18n.te(e,t),this.$d=(...e)=>this.$i18n.d(...e),this.$n=(...e)=>this.$i18n.n(...e),this.$tm=e=>this.$i18n.tm(e),n.__setInstance(a,this.$i18n)},mounted(){},unmounted(){const e=At();if(!e)throw Error(vt);const t=this.$i18n;delete this.$t,delete this.$rt,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,t.__disposer&&(t.__disposer(),delete t.__disposer,delete t.__extender),n.__deleteInstance(e),delete this.$i18n}}}(s,s.__composer,u));const o=e.unmount;e.unmount=()=>{r&&r(),u.dispose(),o()}},get global(){return s},dispose(){o.stop()},__instances:i,__getInstance:function(e){return i.get(e)||null},__setInstance:function(e,t){i.set(e,t)},__deleteInstance:function(e){i.delete(e)}};return u},e.useI18n=Yt,e.vTDirective=Ut,e}({},Vue),VueRouter=function(e,t){var n=Object.create,a=Object.defineProperty,i=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,o=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty,l=(e,t)=>function(){return t||(0,e[r(e)[0]])((t={exports:{}}).exports,t),t.exports},u=(e,t,l)=>(l=null!=e?n(o(e)):{},((e,t,n,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var l,u=r(t),c=0,d=u.length;ct[e]).bind(null,l),enumerable:!(o=i(t,l))||o.enumerable});return e})(!t&&e&&e.__esModule?l:a(l,"default",{value:e,enumerable:!0}),e));t=u(t);const c="undefined"!=typeof document;function d(e){return"object"==typeof e||"displayName"in e||"props"in e||"__vccOpts"in e}function h(e){return e.__esModule||"Module"===e[Symbol.toStringTag]||e.default&&d(e.default)}const p=Object.assign;function f(e,t){const n={};for(const a in t){const i=t[a];n[a]=g(i)?i.map(e):e(i)}return n}const m=()=>{},g=Array.isArray;function _(e,t){const n={};for(const a in e)n[a]=a in t?t[a]:e[a];return n}function v(e){const t=Array.from(arguments).slice(1);console.warn.apply(console,["[Vue Router warn]: "+e].concat(t))}const b=/#/g,y=/&/g,w=/\//g,k=/=/g,x=/\?/g,S=/\+/g,C=/%5B/g,T=/%5D/g,E=/%5E/g,P=/%60/g,A=/%7B/g,M=/%7C/g,L=/%7D/g,R=/%20/g;function z(e){return null==e?"":encodeURI(""+e).replace(M,"|").replace(C,"[").replace(T,"]")}function N(e){return z(e).replace(S,"%2B").replace(R,"+").replace(b,"%23").replace(y,"%26").replace(P,"`").replace(A,"{").replace(L,"}").replace(E,"^")}function O(e){return N(e).replace(k,"%3D")}function I(e){return function(e){return z(e).replace(b,"%23").replace(x,"%3F")}(e).replace(w,"%2F")}function q(e){if(null==e)return null;try{return decodeURIComponent(""+e)}catch(t){v(`Error decoding "${e}". Using original value`)}return""+e}const D=/\/$/;function j(e,t,n="/"){let a,i={},r="",o="";const s=t.indexOf("#");let l=t.indexOf("?");return l=s>=0&&l>s?-1:l,l>=0&&(a=t.slice(0,l),r=t.slice(l,s>0?s:t.length),i=e(r.slice(1))),s>=0&&(a=a||t.slice(0,s),o=t.slice(s,t.length)),a=function(e,t){if(e.startsWith("/"))return e;if(!t.startsWith("/"))return v(`Cannot resolve a relative location without an absolute path. Trying to resolve "${e}" from "${t}". It should look like "/${t}".`),e;if(!e)return t;const n=t.split("/"),a=e.split("/"),i=a[a.length-1];".."!==i&&"."!==i||a.push("");let r,o,s=n.length-1;for(r=0;r1&&s--}return n.slice(0,s).join("/")+"/"+a.slice(r).join("/")}(null!=a?a:t,n),{fullPath:a+r+o,path:a,query:i,hash:q(o)}}function B(e,t){return t&&e.toLowerCase().startsWith(t.toLowerCase())?e.slice(t.length)||"/":e}function F(e,t,n){const a=t.matched.length-1,i=n.matched.length-1;return a>-1&&a===i&&$(t.matched[a],n.matched[i])&&V(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function $(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function V(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!U(e[n],t[n]))return!1;return!0}function U(e,t){return g(e)?H(e,t):g(t)?H(t,e):e===t}function H(e,t){return g(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):1===e.length&&e[0]===t}const W={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let G=function(e){return e.pop="pop",e.push="push",e}({}),Y=function(e){return e.back="back",e.forward="forward",e.unknown="",e}({});function K(e){if(!e)if(c){const t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return"/"!==e[0]&&"#"!==e[0]&&(e="/"+e),e.replace(D,"")}const Q=/^[^#]+#/;function Z(e,t){return e.replace(Q,"#")+t}const J=()=>({left:window.scrollX,top:window.scrollY});function X(e){let t;if("el"in e){const n=e.el,a="string"==typeof n&&n.startsWith("#");if(!("string"!=typeof e.el||a&&document.getElementById(e.el.slice(1))))try{const t=document.querySelector(e.el);if(a&&t)return void v(`The selector "${e.el}" should be passed as "el: document.querySelector('${e.el}')" because it starts with "#".`)}catch(t){return void v(`The selector "${e.el}" is invalid. If you are using an id selector, make sure to escape it. You can find more information about escaping characters in selectors at https://mathiasbynens.be/notes/css-escapes or use CSS.escape (https://developer.mozilla.org/en-US/docs/Web/API/CSS/escape).`)}const i="string"==typeof n?a?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return void v(`Couldn't find element using selector "${e.el}" returned by scrollBehavior.`);t=function(e,t){const n=document.documentElement.getBoundingClientRect(),a=e.getBoundingClientRect();return{behavior:t.behavior,left:a.left-n.left-(t.left||0),top:a.top-n.top-(t.top||0)}}(i,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(null!=t.left?t.left:window.scrollX,null!=t.top?t.top:window.scrollY)}function ee(e,t){return(history.state?history.state.position-t:-1)+e}const te=new Map;function ne(e,t){const{pathname:n,search:a,hash:i}=t,r=e.indexOf("#");if(r>-1){let t=i.includes(e.slice(r))?e.slice(r).length:1,n=i.slice(t);return"/"!==n[0]&&(n="/"+n),B(n,"")}return B(n,e)+a+i}function ae(e,t,n,a=!1,i=!1){return{back:e,current:t,forward:n,replaced:a,position:window.history.length,scroll:i?J():null}}function ie(e){const{history:t,location:n}=window,a={value:ne(e,n)},i={value:t.state};function r(a,r,o){const s=e.indexOf("#"),l=s>-1?(n.host&&document.querySelector("base")?e:e.slice(s))+a:location.protocol+"//"+location.host+e+a;try{t[o?"replaceState":"pushState"](r,"",l),i.value=r}catch(e){v("Error with push/replace State",e),n[o?"replace":"assign"](l)}}return i.value||r(a.value,{back:null,current:a.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0),{location:a,state:i,push:function(e,n){const o=p({},i.value,t.state,{forward:e,scroll:J()});t.state||v("history.state seems to have been manually replaced without preserving the necessary values. Make sure to preserve existing history state if you are manually calling history.replaceState:\n\nhistory.replaceState(history.state, '', url)\n\nYou can find more information at https://router.vuejs.org/guide/migration/#Usage-of-history-state"),r(o.current,o,!0),r(e,p({},ae(a.value,e,null),{position:o.position+1},n),!1),a.value=e},replace:function(e,n){r(e,p({},t.state,ae(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),a.value=e}}}function re(e){const t=ie(e=K(e)),n=function(e,t,n,a){let i=[],r=[],o=null;const s=({state:r})=>{const s=ne(e,location),l=n.value,u=t.value;let c=0;if(r){if(n.value=s,t.value=r,o&&o===l)return void(o=null);c=u?r.position-u.position:0}else a(s);i.forEach(e=>{e(n.value,l,{delta:c,type:G.pop,direction:c?c>0?Y.forward:Y.back:Y.unknown})})};function l(){if("hidden"===document.visibilityState){const{history:e}=window;if(!e.state)return;e.replaceState(p({},e.state,{scroll:J()}),"")}}return window.addEventListener("popstate",s),window.addEventListener("pagehide",l),document.addEventListener("visibilitychange",l),{pauseListeners:function(){o=n.value},listen:function(e){i.push(e);const t=()=>{const t=i.indexOf(e);t>-1&&i.splice(t,1)};return r.push(t),t},destroy:function(){for(const e of r)e();r=[],window.removeEventListener("popstate",s),window.removeEventListener("pagehide",l),document.removeEventListener("visibilitychange",l)}}}(e,t.state,t.location,t.replace);const a=p({location:"",base:e,go:function(e,t=!0){t||n.pauseListeners(),history.go(e)},createHref:Z.bind(null,e)},t,n);return Object.defineProperty(a,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(a,"state",{enumerable:!0,get:()=>t.state.value}),a}function oe(e){return"string"==typeof e||e&&"object"==typeof e}function se(e){return"string"==typeof e||"symbol"==typeof e}let le=function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e}({});const ue=Symbol("navigation failure");let ce=function(e){return e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated",e}({});const de={[le.MATCHER_NOT_FOUND]:({location:e,currentLocation:t})=>`No match for\n ${JSON.stringify(e)}${t?"\nwhile being at\n"+JSON.stringify(t):""}`,[le.NAVIGATION_GUARD_REDIRECT]:({from:e,to:t})=>`Redirected from "${e.fullPath}" to "${function(e){if("string"==typeof e)return e;if(null!=e.path)return e.path;const t={};for(const n of fe)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}(t)}" via a navigation guard.`,[le.NAVIGATION_ABORTED]:({from:e,to:t})=>`Navigation aborted from "${e.fullPath}" to "${t.fullPath}" via a navigation guard.`,[le.NAVIGATION_CANCELLED]:({from:e,to:t})=>`Navigation cancelled from "${e.fullPath}" to "${t.fullPath}" with a new navigation.`,[le.NAVIGATION_DUPLICATED]:({from:e,to:t})=>`Avoided redundant navigation to current location: "${e.fullPath}".`};function he(e,t){return p(new Error(de[e](t)),{type:e,[ue]:!0},t)}function pe(e,t){return e instanceof Error&&ue in e&&(null==t||!!(e.type&t))}const fe=["params","query","hash"];let me=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e}({});var ge=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e}(ge||{});const _e={type:me.Static,value:""},ve=/[a-zA-Z0-9_]/;const be="[^/]+?",ye={sensitive:!1,strict:!1,start:!0,end:!0};var we=function(e){return e[e._multiplier=10]="_multiplier",e[e.Root=90]="Root",e[e.Segment=40]="Segment",e[e.SubSegment=30]="SubSegment",e[e.Static=40]="Static",e[e.Dynamic=20]="Dynamic",e[e.BonusCustomRegExp=10]="BonusCustomRegExp",e[e.BonusWildcard=-50]="BonusWildcard",e[e.BonusRepeatable=-20]="BonusRepeatable",e[e.BonusOptional=-8]="BonusOptional",e[e.BonusStrict=.7000000000000001]="BonusStrict",e[e.BonusCaseSensitive=.25]="BonusCaseSensitive",e}(we||{});const ke=/[.+*?^${}()[\]/\\]/g;function xe(e,t){let n=0;for(;nt.length?1===t.length&&t[0]===we.Static+we.Segment?1:-1:0}function Se(e,t){let n=0;const a=e.score,i=t.score;for(;n0&&t[t.length-1]<0}const Te={strict:!1,end:!0,sensitive:!1};function Ee(e,t,n){const a=function(e,t){const n=p({},ye,t),a=[];let i=n.start?"^":"";const r=[];for(const t of e){const e=t.length?[]:[we.Root];n.strict&&!t.length&&(i+="/");for(let a=0;a1&&("*"===s||"+"===s)&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),r.push({type:me.Param,value:u,regexp:c,repeatable:"*"===s||"+"===s,optional:"*"===s||"?"===s})):t("Invalid state to consume buffer"),u="")}function h(){u+=s}for(;l{r(h)}:m}function r(e){if(se(e)){const t=a.get(e);t&&(a.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(r),t.alias.forEach(r))}else{const t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&a.delete(e.record.name),e.children.forEach(r),e.alias.forEach(r))}}function o(e){const t=function(e,t){let n=0,a=t.length;for(;n!==a;){const i=n+a>>1;Se(e,t[i])<0?a=i:n=i+1}const i=function(e){let t=e;for(;t=t.parent;)if(De(t)&&0===Se(e,t))return t}(e);i&&(a=t.lastIndexOf(i,a-1),a<0&&v(`Finding ancestor route "${i.record.path}" failed for "${e.record.path}"`));return a}(e,n);n.splice(t,0,e),e.record.name&&!Re(e)&&a.set(e.record.name,e)}return t=_(Te,t),e.forEach(e=>i(e)),{addRoute:i,resolve:function(e,t){let i,r,o,s={};if("name"in e&&e.name){if(i=a.get(e.name),!i)throw he(le.MATCHER_NOT_FOUND,{location:e});{const t=Object.keys(e.params||{}).filter(e=>!i.keys.find(t=>t.name===e));t.length&&v(`Discarded invalid param(s) "${t.join('", "')}" when navigating. See https://github.com/vuejs/router/blob/main/packages/router/CHANGELOG.md#414-2022-08-22 for more details.`)}o=i.record.name,s=p(Ae(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&Ae(e.params,i.keys.map(e=>e.name))),r=i.stringify(s)}else if(null!=e.path)r=e.path,r.startsWith("/")||v(`The Matcher cannot resolve relative paths but received "${r}". Unless you directly called \`matcher.resolve("${r}")\`, this is probably a bug in vue-router. Please open an issue at https://github.com/vuejs/router/issues/new/choose.`),i=n.find(e=>e.re.test(r)),i&&(s=i.parse(r),o=i.record.name);else{if(i=t.name?a.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw he(le.MATCHER_NOT_FOUND,{location:e,currentLocation:t});o=i.record.name,s=p({},t.params,e.params),r=i.stringify(s)}const l=[];let u=i;for(;u;)l.unshift(u.record),u=u.parent;return{name:o,path:r,params:s,matched:l,meta:ze(l)}},removeRoute:r,clearRoutes:function(){n.length=0,a.clear()},getRoutes:function(){return n},getRecordMatcher:function(e){return a.get(e)}}}function Ae(e,t){const n={};for(const a of t)a in e&&(n[a]=e[a]);return n}function Me(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Le(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 Le(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const a in e.components)t[a]="object"==typeof n?n[a]:n;return t}function Re(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function ze(e){return e.reduce((e,t)=>p(e,t.meta),{})}function Ne(e,t){return e.name===t.name&&e.optional===t.optional&&e.repeatable===t.repeatable}function Oe(e,t){for(const n of e.keys)if(!n.optional&&!t.keys.find(Ne.bind(null,n)))return v(`Alias "${t.record.path}" and the original record: "${e.record.path}" must have the exact same param named "${n.name}"`);for(const n of t.keys)if(!n.optional&&!e.keys.find(Ne.bind(null,n)))return v(`Alias "${t.record.path}" and the original record: "${e.record.path}" must have the exact same param named "${n.name}"`)}function Ie(e,t){for(let n=t;n;n=n.parent)if(n.record.name===e.name)throw new Error(`A route named "${String(e.name)}" has been added as a ${t===n?"child":"descendant"} of a route with the same name. Route names must be unique and a nested route cannot use the same name as an ancestor.`)}function qe(e,t){for(const n of t.keys)if(!e.keys.find(Ne.bind(null,n)))return v(`Absolute path "${e.record.path}" must have the exact same param named "${n.name}" as its parent "${t.record.path}".`)}function De({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function je(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let e=0;ee&&N(e)):[a&&N(a)]).forEach(e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))}):void 0!==a&&(t+=(t.length?"&":"")+n)}return t}function Fe(e){const t={};for(const n in e){const a=e[n];void 0!==a&&(t[n]=g(a)?a.map(e=>null==e?null:""+e):null==a?a:""+a)}return t}const $e=Symbol("router view location matched"),Ve=Symbol("router view depth"),Ue=Symbol("router"),He=Symbol("route location"),We=Symbol("router view location");function Ge(){let e=[];return{add:function(t){return e.push(t),()=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)}},list:()=>e.slice(),reset:function(){e=[]}}}function Ye(e,n,a){const i=()=>{e[n].delete(a)};(0,t.onUnmounted)(i),(0,t.onDeactivated)(i),(0,t.onActivated)(()=>{e[n].add(a)}),e[n].add(a)}function Ke(e,t,n,a,i,r=e=>e()){const o=a&&(a.enterCallbacks[i]=a.enterCallbacks[i]||[]);return()=>new Promise((s,l)=>{const u=e=>{!1===e?l(he(le.NAVIGATION_ABORTED,{from:n,to:t})):e instanceof Error?l(e):oe(e)?l(he(le.NAVIGATION_GUARD_REDIRECT,{from:t,to:e})):(o&&a.enterCallbacks[i]===o&&"function"==typeof e&&o.push(e),s())},c=r(()=>e.call(a&&a.instances[i],t,n,function(e,t,n){let a=0;return function(){1===a++&&v(`The "next" callback was called more than once in one navigation guard when going from "${n.fullPath}" to "${t.fullPath}". It should be called exactly one time in each navigation guard. This will fail in production.`),e._called=!0,1===a&&e.apply(null,arguments)}}(u,t,n)));let d=Promise.resolve(c);if(e.length<3&&(d=d.then(u)),e.length>2){const t=`The "next" callback was never called inside of ${e.name?'"'+e.name+'"':""}:\n${e.toString()}\n. If you are returning a value instead of calling "next", make sure to remove the "next" parameter from your function.`;if("object"==typeof c&&"then"in c)d=d.then(e=>u._called?e:(v(t),Promise.reject(new Error("Invalid navigation guard"))));else if(void 0!==c&&!u._called)return v(t),void l(new Error("Invalid navigation guard"))}d.catch(e=>l(e))})}function Qe(e,t,n,a,i=e=>e()){const r=[];for(const o of e){o.components||!o.children||o.children.length||v(`Record with path "${o.path}" is either missing a "component(s)" or "children" property.`);for(const e in o.components){let s=o.components[e];if(!s||"object"!=typeof s&&"function"!=typeof s)throw v(`Component "${e}" in record with path "${o.path}" is not a valid component. Received "${String(s)}".`),new Error("Invalid route component");if("then"in s){v(`Component "${e}" in record with path "${o.path}" is a Promise instead of a function that returns a Promise. Did you write "import('./MyPage.vue')" instead of "() => import('./MyPage.vue')" ? This will break in production if not fixed.`);const t=s;s=()=>t}else s.__asyncLoader&&!s.__warnedDefineAsync&&(s.__warnedDefineAsync=!0,v(`Component "${e}" in record with path "${o.path}" is defined using "defineAsyncComponent()". Write "() => import('./MyPage.vue')" instead of "defineAsyncComponent(() => import('./MyPage.vue'))".`));if("beforeRouteEnter"===t||o.instances[e])if(d(s)){const l=(s.__vccOpts||s)[t];l&&r.push(Ke(l,n,a,o,e,i))}else{let l=s();"catch"in l||(v(`Component "${e}" in record with path "${o.path}" is a function that does not return a Promise. If you were passing a functional component, make sure to add a "displayName" to the component. This will break in production if not fixed.`),l=Promise.resolve(l)),r.push(()=>l.then(r=>{if(!r)throw new Error(`Couldn't resolve component "${e}" at "${o.path}"`);const s=h(r)?r.default:r;o.mods[e]=r,o.components[e]=s;const l=(s.__vccOpts||s)[t];return l&&Ke(l,n,a,o,e,i)()}))}}}return r}function Ze(e){const n=(0,t.inject)(Ue),a=(0,t.inject)(He);let i=!1,r=null;const o=(0,t.computed)(()=>{const a=(0,t.unref)(e.to);return i&&a===r||(oe(a)||(i?v('Invalid value for prop "to" in useLink()\n- to:',a,"\n- previous to:",r,"\n- props:",e):v('Invalid value for prop "to" in useLink()\n- to:',a,"\n- props:",e)),r=a,i=!0),n.resolve(a)}),s=(0,t.computed)(()=>{const{matched:e}=o.value,{length:t}=e,n=e[t-1],i=a.matched;if(!n||!i.length)return-1;const r=i.findIndex($.bind(null,n));if(r>-1)return r;const s=Xe(e[t-2]);return t>1&&Xe(n)===s&&i[i.length-1].path!==s?i.findIndex($.bind(null,e[t-2])):r}),l=(0,t.computed)(()=>s.value>-1&&function(e,t){for(const n in t){const a=t[n],i=e[n];if("string"==typeof a){if(a!==i)return!1}else if(!g(i)||i.length!==a.length||a.some((e,t)=>e!==i[t]))return!1}return!0}(a.params,o.value.params)),u=(0,t.computed)(()=>s.value>-1&&s.value===a.matched.length-1&&V(a.params,o.value.params));if(c){const n=(0,t.getCurrentInstance)();if(n){const a={route:o.value,isActive:l.value,isExactActive:u.value,error:null};n.__vrl_devtools=n.__vrl_devtools||[],n.__vrl_devtools.push(a),(0,t.watchEffect)(()=>{a.route=o.value,a.isActive=l.value,a.isExactActive=u.value,a.error=oe((0,t.unref)(e.to))?null:'Invalid "to" value'},{flush:"post"})}}return{route:o,href:(0,t.computed)(()=>o.value.href),isActive:l,isExactActive:u,navigate:function(a={}){if(function(e){if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;if(e.defaultPrevented)return;if(void 0!==e.button&&0!==e.button)return;if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}e.preventDefault&&e.preventDefault();return!0}(a)){const a=n[(0,t.unref)(e.replace)?"replace":"push"]((0,t.unref)(e.to)).catch(m);return e.viewTransition&&"undefined"!=typeof document&&"startViewTransition"in document&&document.startViewTransition(()=>a),a}return Promise.resolve()}}}const Je=(0,t.defineComponent)({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:Ze,setup(e,{slots:n}){const a=(0,t.reactive)(Ze(e)),{options:i}=(0,t.inject)(Ue),r=(0,t.computed)(()=>({[et(e.activeClass,i.linkActiveClass,"router-link-active")]:a.isActive,[et(e.exactActiveClass,i.linkExactActiveClass,"router-link-exact-active")]:a.isExactActive}));return()=>{const i=n.default&&(1===(o=n.default(a)).length?o[0]:o);var o;return e.custom?i:(0,t.h)("a",{"aria-current":a.isExactActive?e.ariaCurrentValue:null,href:a.href,onClick:a.navigate,class:r.value},i)}}});function Xe(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const et=(e,t,n)=>null!=e?e:null!=t?t:n;function tt(e,t){if(!e)return null;const n=e(t);return 1===n.length?n[0]:n}const nt=(0,t.defineComponent)({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:n,slots:a}){!function(){const e=(0,t.getCurrentInstance)(),n=e.parent&&e.parent.type.name,a=e.parent&&e.parent.subTree&&e.parent.subTree.type;if(n&&("KeepAlive"===n||n.includes("Transition"))&&"object"==typeof a&&"RouterView"===a.name){const e="KeepAlive"===n?"keep-alive":"transition";v(` can no longer be used directly inside or .\nUse slot props instead:\n\n\n <${e}>\n \n \n`)}}();const i=(0,t.inject)(We),r=(0,t.computed)(()=>e.route||i.value),o=(0,t.inject)(Ve,0),s=(0,t.computed)(()=>{let e=(0,t.unref)(o);const{matched:n}=r.value;let a;for(;(a=n[e])&&!a.components;)e++;return e}),l=(0,t.computed)(()=>r.value.matched[s.value]);(0,t.provide)(Ve,(0,t.computed)(()=>s.value+1)),(0,t.provide)($e,l),(0,t.provide)(We,r);const u=(0,t.ref)();return(0,t.watch)(()=>[u.value,l.value,e.name],([e,t,n],[a,i,r])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===a&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),!e||!t||i&&$(t,i)&&a||(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:"post"}),()=>{const i=r.value,o=e.name,d=l.value,h=d&&d.components[o];if(!h)return tt(a.default,{Component:h,route:i});const f=d.props[o],m=f?!0===f?i.params:"function"==typeof f?f(i):f:null,_=(0,t.h)(h,p({},m,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(d.instances[o]=null)},ref:u}));if(c&&_.ref){const e={depth:s.value,name:d.name,path:d.path,meta:d.meta};(g(_.ref)?_.ref.map(e=>e.i):[_.ref.i]).forEach(t=>{t.__vrv_devtools=e})}return tt(a.default,{Component:_,route:i})||_}}});var at=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/env.js":e=>{function t(){return"undefined"!=typeof navigator&&"undefined"!=typeof window?window:"undefined"!=typeof globalThis?globalThis:{}}Object.defineProperty(e,"__esModule",{value:!0}),e.getDevtoolsGlobalHook=function(){return t().__VUE_DEVTOOLS_GLOBAL_HOOK__},e.getTarget=t,e.isProxyAvailable="function"==typeof Proxy}}),it=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/const.js":e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.HOOK_SETUP="devtools-plugin:setup",e.HOOK_PLUGIN_SETTINGS_SET="plugin:settings:set"}}),rt=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/time.js":e=>{let t,n;function a(){var e;return void 0!==t||("undefined"!=typeof window&&window.performance?(t=!0,n=window.performance):"undefined"!=typeof globalThis&&(null===(e=globalThis.perf_hooks)||void 0===e?void 0:e.performance)?(t=!0,n=globalThis.perf_hooks.performance):t=!1),t}Object.defineProperty(e,"__esModule",{value:!0}),e.isPerformanceSupported=a,e.now=function(){return a()?n.now():Date.now()}}}),ot=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/proxy.js":e=>{Object.defineProperty(e,"__esModule",{value:!0});const t=it(),n=rt();e.ApiProxy=class{constructor(e,a){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=e,this.hook=a;const i={};if(e.settings)for(const t in e.settings)i[t]=e.settings[t].defaultValue;const r=`__vue-devtools-plugin-settings__${e.id}`;let o=Object.assign({},i);try{const e=localStorage.getItem(r),t=JSON.parse(e);Object.assign(o,t)}catch(e){}this.fallbacks={getSettings:()=>o,setSettings(e){try{localStorage.setItem(r,JSON.stringify(e))}catch(e){}o=e},now:()=>(0,n.now)()},a&&a.on(t.HOOK_PLUGIN_SETTINGS_SET,(e,t)=>{e===this.plugin.id&&this.fallbacks.setSettings(t)}),this.proxiedOn=new Proxy({},{get:(e,t)=>this.target?this.target.on[t]:(...e)=>{this.onQueue.push({method:t,args:e})}}),this.proxiedTarget=new Proxy({},{get:(e,t)=>this.target?this.target[t]:"on"===t?this.proxiedOn:Object.keys(this.fallbacks).includes(t)?(...e)=>(this.targetQueue.push({method:t,args:e,resolve:()=>{}}),this.fallbacks[t](...e)):(...e)=>new Promise(n=>{this.targetQueue.push({method:t,args:e,resolve:n})})})}async setRealTarget(e){this.target=e;for(const e of this.onQueue)this.target.on[e.method](...e.args);for(const e of this.targetQueue)e.resolve(await this.target[e.method](...e.args))}}}}),st=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/api.js":e=>{Object.defineProperty(e,"__esModule",{value:!0})}}),lt=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/app.js":e=>{Object.defineProperty(e,"__esModule",{value:!0})}}),ut=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/component.js":e=>{Object.defineProperty(e,"__esModule",{value:!0})}}),ct=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/context.js":e=>{Object.defineProperty(e,"__esModule",{value:!0})}}),dt=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/hooks.js":e=>{Object.defineProperty(e,"__esModule",{value:!0})}}),ht=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/util.js":e=>{Object.defineProperty(e,"__esModule",{value:!0})}}),pt=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/index.js":e=>{var t=e&&e.__createBinding||(Object.create?function(e,t,n,a){void 0===a&&(a=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,a,i)}:function(e,t,n,a){void 0===a&&(a=n),e[a]=t[n]}),n=e&&e.__exportStar||function(e,n){for(var a in e)"default"===a||Object.prototype.hasOwnProperty.call(n,a)||t(n,e,a)};Object.defineProperty(e,"__esModule",{value:!0}),n(st(),e),n(lt(),e),n(ut(),e),n(ct(),e),n(dt(),e),n(ht(),e)}}),ft=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/plugin.js":e=>{Object.defineProperty(e,"__esModule",{value:!0})}}),mt=l({"../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/index.js":e=>{var t=e&&e.__createBinding||(Object.create?function(e,t,n,a){void 0===a&&(a=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,a,i)}:function(e,t,n,a){void 0===a&&(a=n),e[a]=t[n]}),n=e&&e.__exportStar||function(e,n){for(var a in e)"default"===a||Object.prototype.hasOwnProperty.call(n,a)||t(n,e,a)};Object.defineProperty(e,"__esModule",{value:!0}),e.setupDevtoolsPlugin=void 0;const a=at(),i=it(),r=ot();n(pt(),e),n(ft(),e),n(rt(),e),e.setupDevtoolsPlugin=function(e,t){const n=e,o=(0,a.getTarget)(),s=(0,a.getDevtoolsGlobalHook)(),l=a.isProxyAvailable&&n.enableEarlyProxy;if(!s||!o.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__&&l){const e=l?new r.ApiProxy(n,s):null;(o.__VUE_DEVTOOLS_PLUGINS__=o.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:t,proxy:e}),e&&t(e.proxiedTarget)}else s.emit(i.HOOK_SETUP,e,t)}}}),gt=u(mt());function _t(e,t){const n=p({},e,{matched:e.matched.map(e=>function(e,t){const n={};for(const a in e)t.includes(a)||(n[a]=e[a]);return n}(e,["instances","children","aliasOf"]))});return{_custom:{type:null,readOnly:!0,display:e.fullPath,tooltip:t,value:n}}}function vt(e){return{_custom:{display:e}}}let bt=0;function yt(e,n,a){if(n.__hasDevtools)return;n.__hasDevtools=!0;const i=bt++;(0,gt.setupDevtoolsPlugin)({id:"org.vuejs.router"+(i?"."+i:""),label:"Vue Router",packageName:"vue-router",homepage:"https://router.vuejs.org",logo:"https://router.vuejs.org/logo.png",componentStateTypes:["Routing"],app:e},r=>{"function"!=typeof r.now&&v("[Vue Router]: You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html."),r.on.inspectComponent((e,t)=>{e.instanceData&&e.instanceData.state.push({type:"Routing",key:"$route",editable:!1,value:_t(n.currentRoute.value,"Current Route")})}),r.on.visitComponentTree(({treeNode:e,componentInstance:t})=>{if(t.__vrv_devtools){const n=t.__vrv_devtools;e.tags.push({label:(n.name?`${n.name.toString()}: `:"")+n.path,textColor:0,tooltip:"This component is rendered by <router-view>",backgroundColor:kt})}g(t.__vrl_devtools)&&(t.__devtoolsApi=r,t.__vrl_devtools.forEach(t=>{let n=t.route.path,a=Tt,i="",r=0;t.error?(n=t.error,a=Pt,r=At):t.isExactActive?(a=St,i="This is exactly active"):t.isActive&&(a=xt,i="This link is active"),e.tags.push({label:n,textColor:r,tooltip:i,backgroundColor:a})}))}),(0,t.watch)(n.currentRoute,()=>{u(),r.notifyComponentUpdate(),r.sendInspectorTree(l),r.sendInspectorState(l)});const o="router:navigations:"+i;r.addTimelineLayer({id:o,label:`Router${i?" "+i:""} Navigations`,color:4237508}),n.onError((e,t)=>{r.addTimelineEvent({layerId:o,event:{title:"Error during Navigation",subtitle:t.fullPath,logType:"error",time:r.now(),data:{error:e},groupId:t.meta.__navigationId}})});let s=0;n.beforeEach((e,t)=>{const n={guard:vt("beforeEach"),from:_t(t,"Current Location during this navigation"),to:_t(e,"Target location")};Object.defineProperty(e.meta,"__navigationId",{value:s++}),r.addTimelineEvent({layerId:o,event:{time:r.now(),title:"Start of navigation",subtitle:e.fullPath,data:n,groupId:e.meta.__navigationId}})}),n.afterEach((e,t,n)=>{const a={guard:vt("afterEach")};n?(a.failure={_custom:{type:Error,readOnly:!0,display:n?n.message:"",tooltip:"Navigation Failure",value:n}},a.status=vt("❌")):a.status=vt("✅"),a.from=_t(t,"Current Location during this navigation"),a.to=_t(e,"Target location"),r.addTimelineEvent({layerId:o,event:{title:"End of navigation",subtitle:e.fullPath,time:r.now(),data:a,logType:n?"warning":"default",groupId:e.meta.__navigationId}})});const l="router-inspector:"+i;function u(){if(!c)return;const e=c;let t=a.getRoutes().filter(e=>!e.parent||!e.parent.record.components);t.forEach(Nt),e.filter&&(t=t.filter(t=>Ot(t,e.filter.toLowerCase()))),t.forEach(e=>zt(e,n.currentRoute.value)),e.rootNodes=t.map(Mt)}let c;r.addInspector({id:l,label:"Routes"+(i?" "+i:""),icon:"book",treeFilterPlaceholder:"Search routes"}),r.on.getInspectorTree(t=>{c=t,t.app===e&&t.inspectorId===l&&u()}),r.on.getInspectorState(t=>{if(t.app===e&&t.inspectorId===l){const e=a.getRoutes().find(e=>e.record.__vd_id===t.nodeId);e&&(t.state={options:wt(e)})}}),r.sendInspectorTree(l),r.sendInspectorState(l)})}function wt(e){const{record:t}=e,n=[{editable:!1,key:"path",value:t.path}];return null!=t.name&&n.push({editable:!1,key:"name",value:t.name}),n.push({editable:!1,key:"regexp",value:e.re}),e.keys.length&&n.push({editable:!1,key:"keys",value:{_custom:{type:null,readOnly:!0,display:e.keys.map(e=>`${e.name}${function(e){return e.optional?e.repeatable?"*":"?":e.repeatable?"+":""}(e)}`).join(" "),tooltip:"Param keys",value:e.keys}}}),null!=t.redirect&&n.push({editable:!1,key:"redirect",value:t.redirect}),e.alias.length&&n.push({editable:!1,key:"aliases",value:e.alias.map(e=>e.record.path)}),Object.keys(e.record.meta).length&&n.push({editable:!1,key:"meta",value:e.record.meta}),n.push({key:"score",editable:!1,value:{_custom:{type:null,readOnly:!0,display:e.score.map(e=>e.join(", ")).join(" | "),tooltip:"Score used to sort routes",value:e.score}}}),n}const kt=15485081,xt=2450411,St=8702998,Ct=2282478,Tt=16486972,Et=6710886,Pt=16704226,At=12131356;function Mt(e){const t=[],{record:n}=e;null!=n.name&&t.push({label:String(n.name),textColor:0,backgroundColor:Ct}),n.aliasOf&&t.push({label:"alias",textColor:0,backgroundColor:Tt}),e.__vd_match&&t.push({label:"matches",textColor:0,backgroundColor:kt}),e.__vd_exactActive&&t.push({label:"exact",textColor:0,backgroundColor:St}),e.__vd_active&&t.push({label:"active",textColor:0,backgroundColor:xt}),n.redirect&&t.push({label:"string"==typeof n.redirect?`redirect: ${n.redirect}`:"redirects",textColor:16777215,backgroundColor:Et});let a=n.__vd_id;return null==a&&(a=String(Lt++),n.__vd_id=a),{id:a,label:n.path,tags:t,children:e.children.map(Mt)}}let Lt=0;const Rt=/^\/(.*)\/([a-z]*)$/;function zt(e,t){const n=t.matched.length&&$(t.matched[t.matched.length-1],e.record);e.__vd_exactActive=e.__vd_active=n,n||(e.__vd_active=t.matched.some(t=>$(t,e.record))),e.children.forEach(e=>zt(e,t))}function Nt(e){e.__vd_match=!1,e.children.forEach(Nt)}function Ot(e,t){const n=String(e.re).match(Rt);if(e.__vd_match=!1,!n||n.length<3)return!1;if(new RegExp(n[1].replace(/\$$/,""),n[2]).test(t))return e.children.forEach(e=>Ot(e,t)),("/"!==e.record.path||"/"===t)&&(e.__vd_match=e.re.test(t),!0);const a=e.record.path.toLowerCase(),i=q(a);return!(t.startsWith("/")||!i.includes(t)&&!a.includes(t))||(!(!i.startsWith(t)&&!a.startsWith(t))||(!(!e.record.name||!String(e.record.name).includes(t))||e.children.some(e=>Ot(e,t))))}return e.NavigationFailureType=ce,e.RouterLink=Je,e.RouterView=nt,e.START_LOCATION=W,e.createMemoryHistory=function(e=""){let t=[],n=[["",{}]],a=0;function i(e,t={}){a++,a!==n.length&&n.splice(a),n.push([e,t])}const r={location:"",state:{},base:e=K(e),createHref:Z.bind(null,e),replace(e,t){n.splice(a--,1),i(e,t)},push(e,t){i(e,t)},listen:e=>(t.push(e),()=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)}),destroy(){t=[],n=[["",{}]],a=0},go(e,i=!0){const r=this.location,o=e<0?Y.back:Y.forward;a=Math.max(0,Math.min(a+e,n.length-1)),i&&function(e,n,{direction:a,delta:i}){const r={direction:a,delta:i,type:G.pop};for(const a of t)a(e,n,r)}(this.location,r,{direction:o,delta:e})}};return Object.defineProperty(r,"location",{enumerable:!0,get:()=>n[a][0]}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>n[a][1]}),r},e.createRouter=function(e){const n=Pe(e.routes,e),a=e.parseQuery||je,i=e.stringifyQuery||Be,r=e.history;if(!r)throw new Error('Provide the "history" option when calling "createRouter()": https://router.vuejs.org/api/interfaces/RouterOptions.html#history');const o=Ge(),s=Ge(),l=Ge(),u=(0,t.shallowRef)(W);let d=W;c&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const h=f.bind(null,e=>""+e),_=f.bind(null,I),b=f.bind(null,q);function y(e,t){if(t=p({},t||u.value),"string"==typeof e){const i=j(a,e,t.path),o=n.resolve({path:i.path},t),s=r.createHref(i.fullPath);return s.startsWith("//")?v(`Location "${e}" resolved to "${s}". A resolved location cannot start with multiple slashes.`):o.matched.length||v(`No match found for location with path "${e}"`),p(i,o,{params:b(o.params),hash:q(i.hash),redirectedFrom:void 0,href:s})}if(!oe(e))return v("router.resolve() was passed an invalid location. This will fail in production.\n- Location:",e),y({});let o;if(null!=e.path)"params"in e&&!("name"in e)&&Object.keys(e.params).length&&v(`Path "${e.path}" was passed with params but they will be ignored. Use a named route alongside params instead.`),o=p({},e,{path:j(a,e.path,t.path).path});else{const n=p({},e.params);for(const e in n)null==n[e]&&delete n[e];o=p({},e,{params:_(n)}),t.params=_(t.params)}const s=n.resolve(o,t),l=e.hash||"";l&&!l.startsWith("#")&&v(`A \`hash\` should always start with the character "#". Replace "${l}" with "#${l}".`),s.params=h(b(s.params));const c=function(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}(i,p({},e,{hash:(d=l,z(d).replace(A,"{").replace(L,"}").replace(E,"^")),path:s.path}));var d;const f=r.createHref(c);return f.startsWith("//")?v(`Location "${e}" resolved to "${f}". A resolved location cannot start with multiple slashes.`):s.matched.length||v(`No match found for location with path "${null!=e.path?e.path:e}"`),p({fullPath:c,hash:l,query:i===Be?Fe(e.query):e.query||{}},s,{redirectedFrom:void 0,href:f})}function w(e){return"string"==typeof e?j(a,e,u.value.path):p({},e)}function k(e,t){if(d!==e)return he(le.NAVIGATION_CANCELLED,{from:t,to:e})}function x(e){return C(e)}function S(e,t){const n=e.matched[e.matched.length-1];if(n&&n.redirect){const{redirect:a}=n;let i="function"==typeof a?a(e,t):a;if("string"==typeof i&&(i=i.includes("?")||i.includes("#")?i=w(i):{path:i},i.params={}),null==i.path&&!("name"in i))throw v(`Invalid redirect found:\n${JSON.stringify(i,null,2)}\n when navigating to "${e.fullPath}". A redirect must contain a name or path. This will break in production.`),new Error("Invalid redirect");return p({query:e.query,hash:e.hash,params:null!=i.path?{}:e.params},i)}}function C(e,t){const n=d=y(e),a=u.value,r=e.state,o=e.force,s=!0===e.replace,l=S(n,a);if(l)return C(p(w(l),{state:"object"==typeof l?p({},r,l.state):r,force:o,replace:s}),t||n);const c=n;let h;return c.redirectedFrom=t,!o&&F(i,a,n)&&(h=he(le.NAVIGATION_DUPLICATED,{to:c,from:a}),K(a,a,!0,!1)),(h?Promise.resolve(h):M(c,a)).catch(e=>pe(e)?pe(e,le.NAVIGATION_GUARD_REDIRECT)?e:Y(e):H(e,c,a)).then(e=>{if(e){if(pe(e,le.NAVIGATION_GUARD_REDIRECT))return F(i,y(e.to),c)&&t&&(t._count=t._count?t._count+1:1)>30?(v(`Detected a possibly infinite redirection in a navigation guard when going from "${a.fullPath}" to "${c.fullPath}". Aborting to avoid a Stack Overflow.\n Are you always returning a new location within a navigation guard? That would lead to this error. Only return when redirecting or aborting, that should fix this. This might break in production if not fixed.`),Promise.reject(new Error("Infinite redirect in navigation guard"))):C(p({replace:s},w(e.to),{state:"object"==typeof e.to?p({},r,e.to.state):r,force:o}),t||c)}else e=N(c,a,!0,s,r);return R(c,a,e),e})}function T(e,t){const n=k(e,t);return n?Promise.reject(n):Promise.resolve()}function P(e){const t=ne.values().next().value;return t&&"function"==typeof t.runWithContext?t.runWithContext(e):e()}function M(e,t){let n;const[a,i,r]=function(e,t){const n=[],a=[],i=[],r=Math.max(t.matched.length,e.matched.length);for(let o=0;o$(e,r))?a.push(r):n.push(r));const s=e.matched[o];s&&(t.matched.find(e=>$(e,s))||i.push(s))}return[n,a,i]}(e,t);n=Qe(a.reverse(),"beforeRouteLeave",e,t);for(const i of a)i.leaveGuards.forEach(a=>{n.push(Ke(a,e,t))});const l=T.bind(null,e,t);return n.push(l),ie(n).then(()=>{n=[];for(const a of o.list())n.push(Ke(a,e,t));return n.push(l),ie(n)}).then(()=>{n=Qe(i,"beforeRouteUpdate",e,t);for(const a of i)a.updateGuards.forEach(a=>{n.push(Ke(a,e,t))});return n.push(l),ie(n)}).then(()=>{n=[];for(const a of r)if(a.beforeEnter)if(g(a.beforeEnter))for(const i of a.beforeEnter)n.push(Ke(i,e,t));else n.push(Ke(a.beforeEnter,e,t));return n.push(l),ie(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Qe(r,"beforeRouteEnter",e,t,P),n.push(l),ie(n))).then(()=>{n=[];for(const a of s.list())n.push(Ke(a,e,t));return n.push(l),ie(n)}).catch(e=>pe(e,le.NAVIGATION_CANCELLED)?e:Promise.reject(e))}function R(e,t,n){l.list().forEach(a=>P(()=>a(e,t,n)))}function N(e,t,n,a,i){const o=k(e,t);if(o)return o;const s=t===W,l=c?history.state:{};n&&(a||s?r.replace(e.fullPath,p({scroll:s&&l&&l.scroll},i)):r.push(e.fullPath,i)),u.value=e,K(e,t,n,s),Y()}let O;function D(){O||(O=r.listen((e,t,n)=>{if(!ae.listening)return;const a=y(e),i=S(a,ae.currentRoute.value);if(i)return void C(p(i,{replace:!0,force:!0}),a).catch(m);d=a;const o=u.value;var s,l;c&&(s=ee(o.fullPath,n.delta),l=J(),te.set(s,l)),M(a,o).catch(e=>pe(e,le.NAVIGATION_ABORTED|le.NAVIGATION_CANCELLED)?e:pe(e,le.NAVIGATION_GUARD_REDIRECT)?(C(p(w(e.to),{force:!0}),a).then(e=>{pe(e,le.NAVIGATION_ABORTED|le.NAVIGATION_DUPLICATED)&&!n.delta&&n.type===G.pop&&r.go(-1,!1)}).catch(m),Promise.reject()):(n.delta&&r.go(-n.delta,!1),H(e,a,o))).then(e=>{(e=e||N(a,o,!1))&&(n.delta&&!pe(e,le.NAVIGATION_CANCELLED)?r.go(-n.delta,!1):n.type===G.pop&&pe(e,le.NAVIGATION_ABORTED|le.NAVIGATION_DUPLICATED)&&r.go(-1,!1)),R(a,o,e)}).catch(m)}))}let B,V=Ge(),U=Ge();function H(e,t,n){Y(e);const a=U.list();return a.length?a.forEach(a=>a(e,t,n)):(v("uncaught error during route navigation:"),console.error(e)),Promise.reject(e)}function Y(e){return B||(B=!e,D(),V.list().forEach(([t,n])=>e?n(e):t()),V.reset()),e}function K(n,a,i,r){const{scrollBehavior:o}=e;if(!c||!o)return Promise.resolve();const s=!i&&function(e){const t=te.get(e);return te.delete(e),t}(ee(n.fullPath,0))||(r||!i)&&history.state&&history.state.scroll||null;return(0,t.nextTick)().then(()=>o(n,a,s)).then(e=>e&&X(e)).catch(e=>H(e,n,a))}const Q=e=>r.go(e);let Z;const ne=new Set,ae={currentRoute:u,listening:!0,addRoute:function(e,t){let a,i;return se(e)?(a=n.getRecordMatcher(e),a||v(`Parent route "${String(e)}" not found when adding child route`,t),i=t):i=e,n.addRoute(i,a)},removeRoute:function(e){const t=n.getRecordMatcher(e);t?n.removeRoute(t):v(`Cannot remove non-existent route "${String(e)}"`)},clearRoutes:n.clearRoutes,hasRoute:function(e){return!!n.getRecordMatcher(e)},getRoutes:function(){return n.getRoutes().map(e=>e.record)},resolve:y,options:e,push:x,replace:function(e){return x(p(w(e),{replace:!0}))},go:Q,back:()=>Q(-1),forward:()=>Q(1),beforeEach:o.add,beforeResolve:s.add,afterEach:l.add,onError:U.add,isReady:function(){return B&&u.value!==W?Promise.resolve():new Promise((e,t)=>{V.add([e,t])})},install(e){e.component("RouterLink",Je),e.component("RouterView",nt),e.config.globalProperties.$router=ae,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>(0,t.unref)(u)}),c&&!Z&&u.value===W&&(Z=!0,x(r.location).catch(e=>{v("Unexpected error when starting the router:",e)}));const a={};for(const e in W)Object.defineProperty(a,e,{get:()=>u.value[e],enumerable:!0});e.provide(Ue,ae),e.provide(He,(0,t.shallowReactive)(a)),e.provide(We,u);const i=e.unmount;ne.add(e),e.unmount=function(){ne.delete(e),ne.size<1&&(d=W,O&&O(),O=null,u.value=W,Z=!1,B=!1),i()},c&&yt(e,ae,n)}};function ie(e){return e.reduce((e,t)=>e.then(()=>P(t)),Promise.resolve())}return ae},e.createRouterMatcher=Pe,e.createWebHashHistory=function(e){return(e=location.host?e||location.pathname+location.search:"").includes("#")||(e+="#"),e.endsWith("#/")||e.endsWith("#")||v(`A hash base must end with a "#":\n"${e}" should be "${e.replace(/#.*$/,"#")}".`),re(e)},e.createWebHistory=re,e.isNavigationFailure=pe,e.loadRouteLocation=function(e){return e.matched.every(e=>e.redirect)?Promise.reject(new Error("Cannot load a route that redirects.")):Promise.all(e.matched.map(e=>e.components&&Promise.all(Object.keys(e.components).reduce((t,n)=>{const a=e.components[n];return"function"!=typeof a||"displayName"in a||t.push(a().then(t=>{if(!t)return Promise.reject(new Error(`Couldn't resolve component "${n}" at "${e.path}". Ensure you passed a function that returns a promise.`));const a=h(t)?t.default:t;e.mods[n]=t,e.components[n]=a})),t},[])))).then(()=>e)},e.matchedRouteKey=$e,e.onBeforeRouteLeave=function(e){if(!(0,t.getCurrentInstance)())return void v("getCurrentInstance() returned null. onBeforeRouteLeave() must be called at the top of a setup function");const n=(0,t.inject)($e,{}).value;n?Ye(n,"leaveGuards",e):v("No active route record was found when calling `onBeforeRouteLeave()`. Make sure you call this function inside a component child of . Maybe you called it inside of App.vue?")},e.onBeforeRouteUpdate=function(e){if(!(0,t.getCurrentInstance)())return void v("getCurrentInstance() returned null. onBeforeRouteUpdate() must be called at the top of a setup function");const n=(0,t.inject)($e,{}).value;n?Ye(n,"updateGuards",e):v("No active route record was found when calling `onBeforeRouteUpdate()`. Make sure you call this function inside a component child of . Maybe you called it inside of App.vue?")},e.parseQuery=je,e.routeLocationKey=He,e.routerKey=Ue,e.routerViewLocationKey=We,e.stringifyQuery=Be,e.useLink=Ze,e.useRoute=function(e){return(0,t.inject)(He)},e.useRouter=function(){return(0,t.inject)(Ue)},e.viewDepthKey=Ve,e}({},Vue); /*! - * vue-i18n v10.0.8 + * vue-i18n v11.2.2 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */!function(e,t){"object"==typeof exports&&typeof module<"u"?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e=typeof globalThis<"u"?globalThis:e||self).VueQrcodeReader={},e.Vue)}(this,(function(e,t){"use strict";var n=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)},a=(e,t,a)=>(n(e,t,"read from private field"),a?a.call(e):t.get(e));const i=[["aztec","Aztec"],["code_128","Code128"],["code_39","Code39"],["code_93","Code93"],["codabar","Codabar"],["databar","DataBar"],["databar_expanded","DataBarExpanded"],["data_matrix","DataMatrix"],["dx_film_edge","DXFilmEdge"],["ean_13","EAN-13"],["ean_8","EAN-8"],["itf","ITF"],["maxi_code","MaxiCode"],["micro_qr_code","MicroQRCode"],["pdf417","PDF417"],["qr_code","QRCode"],["rm_qr_code","rMQRCode"],["upc_a","UPC-A"],["upc_e","UPC-E"],["linear_codes","Linear-Codes"],["matrix_codes","Matrix-Codes"]],r=[...i,["unknown"]].map((e=>e[0])),o=new Map(i);function s(e){for(const[t,n]of o)if(e===n)return t;return"unknown"}function l(e){try{return e instanceof HTMLImageElement}catch(e){return!1}}function u(e){try{return e instanceof SVGImageElement}catch(e){return!1}}function c(e){try{return e instanceof HTMLVideoElement}catch(e){return!1}}function d(e){try{return e instanceof HTMLCanvasElement}catch(e){return!1}}function h(e){try{return e instanceof ImageBitmap}catch(e){return!1}}function p(e){try{return e instanceof OffscreenCanvas}catch(e){return!1}}function f(e){try{return e instanceof VideoFrame}catch(e){return!1}}function m(e){try{return e instanceof Blob}catch(e){return!1}}async function g(e){if(l(e)&&!await async function(e){try{return await e.decode(),!0}catch(e){return!1}}(e))throw new DOMException("Failed to load or decode HTMLImageElement.","InvalidStateError");if(u(e)&&!await async function(e){var t;try{return await(null==(t=e.decode)?void 0:t.call(e)),!0}catch(e){return!1}}(e))throw new DOMException("Failed to load or decode SVGImageElement.","InvalidStateError");if(f(e)&&function(e){return null===e.format}(e))throw new DOMException("VideoFrame is closed.","InvalidStateError");if(c(e)&&(0===e.readyState||1===e.readyState))throw new DOMException("Invalid element or state.","InvalidStateError");if(h(e)&&function(e){return 0===e.width&&0===e.height}(e))throw new DOMException("The image source is detached.","InvalidStateError");const{width:t,height:n}=function(e){if(l(e))return{width:e.naturalWidth,height:e.naturalHeight};if(u(e))return{width:e.width.baseVal.value,height:e.height.baseVal.value};if(c(e))return{width:e.videoWidth,height:e.videoHeight};if(h(e))return{width:e.width,height:e.height};if(f(e))return{width:e.displayWidth,height:e.displayHeight};if(d(e))return{width:e.width,height:e.height};if(p(e))return{width:e.width,height:e.height};throw new TypeError("The provided value is not of type '(Blob or HTMLCanvasElement or HTMLImageElement or HTMLVideoElement or ImageBitmap or ImageData or OffscreenCanvas or SVGImageElement or VideoFrame)'.")}(e);if(0===t||0===n)return null;const a=function(e,t){try{const n=new OffscreenCanvas(e,t);if(n.getContext("2d")instanceof OffscreenCanvasRenderingContext2D)return n;throw void 0}catch(n){const a=document.createElement("canvas");return a.width=e,a.height=t,a}}(t,n).getContext("2d");a.drawImage(e,0,0);try{return a.getImageData(0,0,t,n)}catch(e){throw new DOMException("Source would taint origin.","SecurityError")}}async function _(e){if(m(e))return await async function(e){let t;try{if(globalThis.createImageBitmap)t=await createImageBitmap(e);else{if(!globalThis.Image)return e;{t=new Image;let n="";try{n=URL.createObjectURL(e),t.src=n,await t.decode()}finally{URL.revokeObjectURL(n)}}}}catch(e){throw new DOMException("Failed to load or decode Blob.","InvalidStateError")}return await g(t)}(e);if(function(e){try{return e instanceof ImageData}catch(e){return!1}}(e)){if(function(e){return 0===e.data.buffer.byteLength}(e))throw new DOMException("The image data has been detached.","InvalidStateError");return e}return d(e)||p(e)?function(e){const{width:t,height:n}=e;if(0===t||0===n)return null;const a=e.getContext("2d");try{return a.getImageData(0,0,t,n)}catch(e){throw new DOMException("Source would taint origin.","SecurityError")}}(e):await g(e)}function v(e,t){return e instanceof DOMException?new DOMException(`${t}: ${e.message}`,e.name):e instanceof Error?new e.constructor(`${t}: ${e.message}`):new Error(`${t}: ${e}`)}const b=["Aztec","Codabar","Code128","Code39","Code93","DataBar","DataBarExpanded","DataMatrix","DXFilmEdge","EAN-13","EAN-8","ITF","Linear-Codes","Matrix-Codes","MaxiCode","MicroQRCode","None","PDF417","QRCode","rMQRCode","UPC-A","UPC-E"];function y(e){return e.join("|")}function w(e){const t=k(e);let n=0,a=b.length-1;for(;n<=a;){const e=Math.floor((n+a)/2),i=b[e],r=k(i);if(r===t)return i;r{const n=e.match(/_(.+?)\.wasm$/);return n?`https://fastly.jsdelivr.net/npm/zxing-wasm@1.1.3/dist/${n[1]}/${e}`:t+e}};let z=new WeakMap;function N(e,t){var n;const a=z.get(e);if(null!=a&&a.modulePromise&&void 0===t)return a.modulePromise;const i=null!=(n=null==a?void 0:a.moduleOverrides)?n:R,r=e({...i});return z.set(e,{moduleOverrides:i,modulePromise:r}),r}A.formats;var I,O,D=(I=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0,function(e={}){var t,n,a=e;a.ready=new Promise(((e,a)=>{t=e,n=a}));var i=Object.assign({},a),r="./this.program",o="object"==typeof window,s="function"==typeof importScripts;"object"==typeof process&&"object"==typeof process.versions&&process.versions.node;var l,u="";(o||s)&&(s?u=self.location.href:typeof document<"u"&&document.currentScript&&(u=document.currentScript.src),I&&(u=I),u=0!==u.indexOf("blob:")?u.substr(0,u.replace(/[?#].*/,"").lastIndexOf("/")+1):"",s&&(l=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)})),a.print||console.log.bind(console);var c,d=a.printErr||console.error.bind(console);Object.assign(a,i),i=null,a.arguments&&a.arguments,a.thisProgram&&(r=a.thisProgram),a.quit&&a.quit,a.wasmBinary&&(c=a.wasmBinary),"object"!=typeof WebAssembly&&P("no native wasm support detected");var h,p,f,m,g,_,v,b,y,w=!1;function k(){var e=h.buffer;a.HEAP8=p=new Int8Array(e),a.HEAP16=m=new Int16Array(e),a.HEAPU8=f=new Uint8Array(e),a.HEAPU16=g=new Uint16Array(e),a.HEAP32=_=new Int32Array(e),a.HEAPU32=v=new Uint32Array(e),a.HEAPF32=b=new Float32Array(e),a.HEAPF64=y=new Float64Array(e)}var x=[],S=[],C=[],T=0,E=null;function P(e){var t;null===(t=a.onAbort)||void 0===t||t.call(a,e),d(e="Aborted("+e+")"),w=!0,e+=". Build with -sASSERTIONS for more info.";var i=new WebAssembly.RuntimeError(e);throw n(i),i}var A,L,M=e=>e.startsWith("data:application/octet-stream;base64,");function R(e){if(e==A&&c)return new Uint8Array(c);if(l)return l(e);throw"both async and sync fetching of the wasm failed"}function z(e,t,n){return function(e){return c||!o&&!s||"function"!=typeof fetch?Promise.resolve().then((()=>R(e))):fetch(e,{credentials:"same-origin"}).then((t=>{if(!t.ok)throw"failed to load wasm binary file at '"+e+"'";return t.arrayBuffer()})).catch((()=>R(e)))}(e).then((e=>WebAssembly.instantiate(e,t))).then((e=>e)).then(n,(e=>{d(`failed to asynchronously prepare wasm: ${e}`),P(e)}))}M(A="zxing_reader.wasm")||(L=A,A=a.locateFile?a.locateFile(L,u):u+L);var N=e=>{for(;e.length>0;)e.shift()(a)};a.noExitRuntime;var O=[],D=0,q=0;function j(e){this.excPtr=e,this.ptr=e-24,this.set_type=function(e){v[this.ptr+4>>2]=e},this.get_type=function(){return v[this.ptr+4>>2]},this.set_destructor=function(e){v[this.ptr+8>>2]=e},this.get_destructor=function(){return v[this.ptr+8>>2]},this.set_caught=function(e){e=e?1:0,p[this.ptr+12|0]=e},this.get_caught=function(){return 0!=p[this.ptr+12|0]},this.set_rethrown=function(e){e=e?1:0,p[this.ptr+13|0]=e},this.get_rethrown=function(){return 0!=p[this.ptr+13|0]},this.init=function(e,t){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(t)},this.set_adjusted_ptr=function(e){v[this.ptr+16>>2]=e},this.get_adjusted_ptr=function(){return v[this.ptr+16>>2]},this.get_exception_ptr=function(){if(zt(this.get_type()))return v[this.excPtr>>2];var e=this.get_adjusted_ptr();return 0!==e?e:this.excPtr}}var B=e=>{var t=q;if(!t)return Et(0),0;var n=new j(t);n.set_adjusted_ptr(t);var a=n.get_type();if(!a)return Et(0),t;for(var i in e){var r=e[i];if(0===r||r===a)break;var o=n.ptr+16;if(Rt(r,a,o))return Et(r),t}return Et(a),t},F={},$=e=>{for(;e.length;){var t=e.pop();e.pop()(t)}};function V(e){return this.fromWireType(_[e>>2])}var U,H,W,G={},Y={},K={},Q=e=>{throw new U(e)},Z=(e,t,n)=>{function a(t){var a=n(t);a.length!==e.length&&Q("Mismatched type converter count");for(var i=0;i{Y.hasOwnProperty(e)?i[t]=Y[e]:(r.push(e),G.hasOwnProperty(e)||(G[e]=[]),G[e].push((()=>{i[t]=Y[e],++o===r.length&&a(i)})))})),0===r.length&&a(i)},J=e=>{for(var t="",n=e;f[n];)t+=H[f[n++]];return t},X=e=>{throw new W(e)};function ee(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!("argPackAdvance"in t))throw new TypeError("registerType registeredInstance requires argPackAdvance");return function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};var a=t.name;if(e||X(`type "${a}" must have a positive integer typeid pointer`),Y.hasOwnProperty(e)){if(n.ignoreDuplicateRegistrations)return;X(`Cannot register type '${a}' twice`)}if(Y[e]=t,delete K[e],G.hasOwnProperty(e)){var i=G[e];delete G[e],i.forEach((e=>e()))}}(e,t,n)}var te,ne=8,ae=e=>({count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}),ie=e=>{X(e.$$.ptrType.registeredClass.name+" instance already deleted")},re=!1,oe=e=>{},se=e=>{e.count.value-=1,0===e.count.value&&(e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)})(e)},le=(e,t,n)=>{if(t===n)return e;if(void 0===n.baseClass)return null;var a=le(e,t,n.baseClass);return null===a?null:n.downcast(a)},ue={},ce=()=>Object.keys(me).length,de=()=>{var e=[];for(var t in me)me.hasOwnProperty(t)&&e.push(me[t]);return e},he=[],pe=()=>{for(;he.length;){var e=he.pop();e.$$.deleteScheduled=!1,e.delete()}},fe=e=>{te=e,he.length&&te&&te(pe)},me={},ge=(e,t)=>(t=((e,t)=>{for(void 0===t&&X("ptr should not be undefined");e.baseClass;)t=e.upcast(t),e=e.baseClass;return t})(e,t),me[t]),_e=(e,t)=>((!t.ptrType||!t.ptr)&&Q("makeClassHandle requires ptr and ptrType"),!!t.smartPtrType!=!!t.smartPtr&&Q("Both smartPtrType and smartPtr must be specified"),t.count={value:1},be(Object.create(e,{$$:{value:t,writable:!0}})));function ve(e){var t=this.getPointee(e);if(!t)return this.destructor(e),null;var n=ge(this.registeredClass,t);if(void 0!==n){if(0===n.$$.count.value)return n.$$.ptr=t,n.$$.smartPtr=e,n.clone();var a=n.clone();return this.destructor(e),a}function i(){return this.isSmartPointer?_e(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:e}):_e(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var r,o=this.registeredClass.getActualType(t),s=ue[o];if(!s)return i.call(this);r=this.isConst?s.constPointerType:s.pointerType;var l=le(t,this.registeredClass,r.registeredClass);return null===l?i.call(this):this.isSmartPointer?_e(r.registeredClass.instancePrototype,{ptrType:r,ptr:l,smartPtrType:this,smartPtr:e}):_e(r.registeredClass.instancePrototype,{ptrType:r,ptr:l})}var be=e=>typeof FinalizationRegistry>"u"?(be=e=>e,e):(re=new FinalizationRegistry((e=>{se(e.$$)})),oe=e=>re.unregister(e),(be=e=>{var t=e.$$;if(t.smartPtr){var n={$$:t};re.register(e,n,e)}return e})(e));function ye(){}var we=(e,t)=>Object.defineProperty(t,"name",{value:e}),ke=(e,t,n)=>{if(void 0===e[t].overloadTable){var a=e[t];e[t]=function(){return e[t].overloadTable.hasOwnProperty(arguments.length)||X(`Function '${n}' called with an invalid number of arguments (${arguments.length}) - expects one of (${e[t].overloadTable})!`),e[t].overloadTable[arguments.length].apply(this,arguments)},e[t].overloadTable=[],e[t].overloadTable[a.argCount]=a}},xe=(e,t,n)=>{a.hasOwnProperty(e)?((void 0===n||void 0!==a[e].overloadTable&&void 0!==a[e].overloadTable[n])&&X(`Cannot register public name '${e}' twice`),ke(a,e,e),a.hasOwnProperty(n)&&X(`Cannot register multiple overloads of a function with the same number of arguments (${n})!`),a[e].overloadTable[n]=t):(a[e]=t,void 0!==n&&(a[e].numArguments=n))};function Se(e,t,n,a,i,r,o,s){this.name=e,this.constructor=t,this.instancePrototype=n,this.rawDestructor=a,this.baseClass=i,this.getActualType=r,this.upcast=o,this.downcast=s,this.pureVirtualFunctions=[]}var Ce=(e,t,n)=>{for(;t!==n;)t.upcast||X(`Expected null or instance of ${n.name}, got an instance of ${t.name}`),e=t.upcast(e),t=t.baseClass;return e};function Te(e,t){if(null===t)return this.isReference&&X(`null is not a valid ${this.name}`),0;t.$$||X(`Cannot pass "${Qe(t)}" as a ${this.name}`),t.$$.ptr||X(`Cannot pass deleted object as a pointer of type ${this.name}`);var n=t.$$.ptrType.registeredClass;return Ce(t.$$.ptr,n,this.registeredClass)}function Ee(e,t){var n;if(null===t)return this.isReference&&X(`null is not a valid ${this.name}`),this.isSmartPointer?(n=this.rawConstructor(),null!==e&&e.push(this.rawDestructor,n),n):0;(!t||!t.$$)&&X(`Cannot pass "${Qe(t)}" as a ${this.name}`),t.$$.ptr||X(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&t.$$.ptrType.isConst&&X(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);var a=t.$$.ptrType.registeredClass;if(n=Ce(t.$$.ptr,a,this.registeredClass),this.isSmartPointer)switch(void 0===t.$$.smartPtr&&X("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?n=t.$$.smartPtr:X(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:n=t.$$.smartPtr;break;case 2:if(t.$$.smartPtrType===this)n=t.$$.smartPtr;else{var i=t.clone();n=this.rawShare(n,Ge.toHandle((()=>i.delete()))),null!==e&&e.push(this.rawDestructor,n)}break;default:X("Unsupporting sharing policy")}return n}function Pe(e,t){if(null===t)return this.isReference&&X(`null is not a valid ${this.name}`),0;t.$$||X(`Cannot pass "${Qe(t)}" as a ${this.name}`),t.$$.ptr||X(`Cannot pass deleted object as a pointer of type ${this.name}`),t.$$.ptrType.isConst&&X(`Cannot convert argument of type ${t.$$.ptrType.name} to parameter type ${this.name}`);var n=t.$$.ptrType.registeredClass;return Ce(t.$$.ptr,n,this.registeredClass)}function Ae(e){return this.fromWireType(v[e>>2])}function Le(e,t,n,a,i,r,o,s,l,u,c){this.name=e,this.registeredClass=t,this.isReference=n,this.isConst=a,this.isSmartPointer=i,this.pointeeType=r,this.sharingPolicy=o,this.rawGetPointee=s,this.rawConstructor=l,this.rawShare=u,this.rawDestructor=c,i||void 0!==t.baseClass?this.toWireType=Ee:a?(this.toWireType=Te,this.destructorFunction=null):(this.toWireType=Pe,this.destructorFunction=null)}var Me,Re,ze=(e,t,n)=>{a.hasOwnProperty(e)||Q("Replacing nonexistant public symbol"),void 0!==a[e].overloadTable&&void 0!==n?a[e].overloadTable[n]=t:(a[e]=t,a[e].argCount=n)},Ne=[],Ie=e=>{var t=Ne[e];return t||(e>=Ne.length&&(Ne.length=e+1),Ne[e]=t=Me.get(e)),t},Oe=(e,t,n)=>e.includes("j")?((e,t,n)=>{var i=a["dynCall_"+e];return n&&n.length?i.apply(null,[t].concat(n)):i.call(null,t)})(e,t,n):Ie(t).apply(null,n),De=(e,t)=>{var n=(e=J(e)).includes("j")?((e,t)=>{var n=[];return function(){return n.length=0,Object.assign(n,arguments),Oe(e,t,n)}})(e,t):Ie(t);return"function"!=typeof n&&X(`unknown function pointer with signature ${e}: ${t}`),n},qe=e=>{var t=Ct(e),n=J(t);return xt(t),n},je=(e,t)=>{var n=[],a={};throw t.forEach((function e(t){if(!a[t]&&!Y[t]){if(K[t])return void K[t].forEach(e);n.push(t),a[t]=!0}})),new Re(`${e}: `+n.map(qe).join([", "]))},Be=(e,t)=>{for(var n=[],a=0;a>2]);return n};function Fe(e,t,n,a,i,r){var o=t.length;o<2&&X("argTypes array size mismatch! Must at least get return value and 'this' types!");var s=null!==t[1]&&null!==n,l=function(e){for(var t=1;t{const t=(e=e.trim()).indexOf("(");return-1!==t?e.substr(0,t):e};function Ve(){this.allocated=[void 0],this.freelist=[]}var Ue=new Ve,He=e=>{e>=Ue.reserved&&0==--Ue.get(e).refcount&&Ue.free(e)},We=()=>{for(var e=0,t=Ue.reserved;t(e||X("Cannot use deleted val. handle = "+e),Ue.get(e).value),toHandle:e=>{switch(e){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:return Ue.allocate({refcount:1,value:e})}}},Ye=(e,t,n)=>{switch(t){case 1:return n?function(e){return this.fromWireType(p[0|e])}:function(e){return this.fromWireType(f[0|e])};case 2:return n?function(e){return this.fromWireType(m[e>>1])}:function(e){return this.fromWireType(g[e>>1])};case 4:return n?function(e){return this.fromWireType(_[e>>2])}:function(e){return this.fromWireType(v[e>>2])};default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},Ke=(e,t)=>{var n=Y[e];return void 0===n&&X(t+" has unknown type "+qe(e)),n},Qe=e=>{if(null===e)return"null";var t=typeof e;return"object"===t||"array"===t||"function"===t?e.toString():""+e},Ze=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(b[e>>2])};case 8:return function(e){return this.fromWireType(y[e>>3])};default:throw new TypeError(`invalid float width (${t}): ${e}`)}},Je=(e,t,n)=>{switch(t){case 1:return n?e=>p[0|e]:e=>f[0|e];case 2:return n?e=>m[e>>1]:e=>g[e>>1];case 4:return n?e=>_[e>>2]:e=>v[e>>2];default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},Xe=(e,t,n,a)=>{if(!(a>0))return 0;for(var i=n,r=n+a-1,o=0;o=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),s<=127){if(n>=r)break;t[n++]=s}else if(s<=2047){if(n+1>=r)break;t[n++]=192|s>>6,t[n++]=128|63&s}else if(s<=65535){if(n+2>=r)break;t[n++]=224|s>>12,t[n++]=128|s>>6&63,t[n++]=128|63&s}else{if(n+3>=r)break;t[n++]=240|s>>18,t[n++]=128|s>>12&63,t[n++]=128|s>>6&63,t[n++]=128|63&s}}return t[n]=0,n-i},et=e=>{for(var t=0,n=0;n=55296&&a<=57343?(t+=4,++n):t+=3}return t},tt=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,nt=(e,t)=>e?((e,t,n)=>{for(var a=t+n,i=t;e[i]&&!(i>=a);)++i;if(i-t>16&&e.buffer&&tt)return tt.decode(e.subarray(t,i));for(var r="";t>10,56320|1023&u)}}else r+=String.fromCharCode((31&o)<<6|s)}else r+=String.fromCharCode(o)}return r})(f,e,t):"",at=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0,it=(e,t)=>{for(var n=e,a=n>>1,i=a+t/2;!(a>=i)&&g[a];)++a;if((n=a<<1)-e>32&&at)return at.decode(f.subarray(e,n));for(var r="",o=0;!(o>=t/2);++o){var s=m[e+2*o>>1];if(0==s)break;r+=String.fromCharCode(s)}return r},rt=(e,t,n)=>{var a;if(null!==(a=n)&&void 0!==a||(n=2147483647),n<2)return 0;for(var i=t,r=(n-=2)<2*e.length?n/2:e.length,o=0;o>1]=s,t+=2}return m[t>>1]=0,t-i},ot=e=>2*e.length,st=(e,t)=>{for(var n=0,a="";!(n>=t/4);){var i=_[e+4*n>>2];if(0==i)break;if(++n,i>=65536){var r=i-65536;a+=String.fromCharCode(55296|r>>10,56320|1023&r)}else a+=String.fromCharCode(i)}return a},lt=(e,t,n)=>{var a;if(null!==(a=n)&&void 0!==a||(n=2147483647),n<4)return 0;for(var i=t,r=i+n-4,o=0;o=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),_[t>>2]=s,(t+=4)+4>r)break}return _[t>>2]=0,t-i},ut=e=>{for(var t=0,n=0;n=55296&&a<=57343&&++n,t+=4}return t},ct=[],dt={},ht=()=>{if("object"==typeof globalThis)return globalThis;function e(e){e.$$$embind_global$$$=e;var t="object"==typeof $$$embind_global$$$&&e.$$$embind_global$$$==e;return t||delete e.$$$embind_global$$$,t}if("object"==typeof $$$embind_global$$$||("object"==typeof global&&e(global)?$$$embind_global$$$=global:"object"==typeof self&&e(self)&&($$$embind_global$$$=self),"object"==typeof $$$embind_global$$$))return $$$embind_global$$$;throw Error("unable to get global object.")},pt=Reflect.construct,ft=e=>{var t=(e-h.buffer.byteLength+65535)/65536;try{return h.grow(t),k(),1}catch(e){}},mt={},gt=()=>{if(!gt.strings){var e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:r||"./this.program"};for(var t in mt)void 0===mt[t]?delete e[t]:e[t]=mt[t];var n=[];for(var t in e)n.push(`${t}=${e[t]}`);gt.strings=n}return gt.strings},_t=e=>e%4==0&&(e%100!=0||e%400==0),vt=[31,29,31,30,31,30,31,31,30,31,30,31],bt=[31,28,31,30,31,30,31,31,30,31,30,31],yt=(e,t,n,a)=>{var i=v[a+40>>2],r={tm_sec:_[a>>2],tm_min:_[a+4>>2],tm_hour:_[a+8>>2],tm_mday:_[a+12>>2],tm_mon:_[a+16>>2],tm_year:_[a+20>>2],tm_wday:_[a+24>>2],tm_yday:_[a+28>>2],tm_isdst:_[a+32>>2],tm_gmtoff:_[a+36>>2],tm_zone:i?nt(i):""},o=nt(n),s={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var l in s)o=o.replace(new RegExp(l,"g"),s[l]);var u=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],c=["January","February","March","April","May","June","July","August","September","October","November","December"];function d(e,t,n){for(var a="number"==typeof e?e.toString():e||"";a.length0?1:0}var a;return 0===(a=n(e.getFullYear()-t.getFullYear()))&&0===(a=n(e.getMonth()-t.getMonth()))&&(a=n(e.getDate()-t.getDate())),a}function m(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function g(e){var t=((e,t)=>{for(var n=new Date(e.getTime());t>0;){var a=_t(n.getFullYear()),i=n.getMonth(),r=(a?vt:bt)[i];if(!(t>r-n.getDate()))return n.setDate(n.getDate()+t),n;t-=r-n.getDate()+1,n.setDate(1),i<11?n.setMonth(i+1):(n.setMonth(0),n.setFullYear(n.getFullYear()+1))}return n})(new Date(e.tm_year+1900,0,1),e.tm_yday),n=new Date(t.getFullYear(),0,4),a=new Date(t.getFullYear()+1,0,4),i=m(n),r=m(a);return f(i,t)<=0?f(r,t)<=0?t.getFullYear()+1:t.getFullYear():t.getFullYear()-1}var b={"%a":e=>u[e.tm_wday].substring(0,3),"%A":e=>u[e.tm_wday],"%b":e=>c[e.tm_mon].substring(0,3),"%B":e=>c[e.tm_mon],"%C":e=>h((e.tm_year+1900)/100|0,2),"%d":e=>h(e.tm_mday,2),"%e":e=>d(e.tm_mday,2," "),"%g":e=>g(e).toString().substring(2),"%G":e=>g(e),"%H":e=>h(e.tm_hour,2),"%I":e=>{var t=e.tm_hour;return 0==t?t=12:t>12&&(t-=12),h(t,2)},"%j":e=>h(e.tm_mday+((e,t)=>{for(var n=0,a=0;a<=t;n+=e[a++]);return n})(_t(e.tm_year+1900)?vt:bt,e.tm_mon-1),3),"%m":e=>h(e.tm_mon+1,2),"%M":e=>h(e.tm_min,2),"%n":()=>"\n","%p":e=>e.tm_hour>=0&&e.tm_hour<12?"AM":"PM","%S":e=>h(e.tm_sec,2),"%t":()=>"\t","%u":e=>e.tm_wday||7,"%U":e=>{var t=e.tm_yday+7-e.tm_wday;return h(Math.floor(t/7),2)},"%V":e=>{var t=Math.floor((e.tm_yday+7-(e.tm_wday+6)%7)/7);if((e.tm_wday+371-e.tm_yday-2)%7<=2&&t++,t){if(53==t){var n=(e.tm_wday+371-e.tm_yday)%7;4!=n&&(3!=n||!_t(e.tm_year))&&(t=1)}}else{t=52;var a=(e.tm_wday+7-e.tm_yday-1)%7;(4==a||5==a&&_t(e.tm_year%400-1))&&t++}return h(t,2)},"%w":e=>e.tm_wday,"%W":e=>{var t=e.tm_yday+7-(e.tm_wday+6)%7;return h(Math.floor(t/7),2)},"%y":e=>(e.tm_year+1900).toString().substring(2),"%Y":e=>e.tm_year+1900,"%z":e=>{var t=e.tm_gmtoff;return(t>=0?"+":"-")+("0000"+(t=(t=Math.abs(t)/60)/60*100+t%60)).slice(-4)},"%Z":e=>e.tm_zone,"%%":()=>"%"};for(var l in o=o.replace(/%%/g,"\0\0"),b)o.includes(l)&&(o=o.replace(new RegExp(l,"g"),b[l](r)));var y=function(e){var t=et(e)+1,n=new Array(t);return Xe(e,n,0,n.length),n}(o=o.replace(/\0\0/g,"%"));return y.length>t?0:(((e,t)=>{p.set(e,t)})(y,e),y.length-1)};U=a.InternalError=class extends Error{constructor(e){super(e),this.name="InternalError"}},(()=>{for(var e=new Array(256),t=0;t<256;++t)e[t]=String.fromCharCode(t);H=e})(),W=a.BindingError=class extends Error{constructor(e){super(e),this.name="BindingError"}},Object.assign(ye.prototype,{isAliasOf(e){if(!(this instanceof ye&&e instanceof ye))return!1;var t=this.$$.ptrType.registeredClass,n=this.$$.ptr;e.$$=e.$$;for(var a=e.$$.ptrType.registeredClass,i=e.$$.ptr;t.baseClass;)n=t.upcast(n),t=t.baseClass;for(;a.baseClass;)i=a.upcast(i),a=a.baseClass;return t===a&&n===i},clone(){if(this.$$.ptr||ie(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=be(Object.create(Object.getPrototypeOf(this),{$$:{value:ae(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e},delete(){this.$$.ptr||ie(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&X("Object already scheduled for deletion"),oe(this),se(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||ie(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&X("Object already scheduled for deletion"),he.push(this),1===he.length&&te&&te(pe),this.$$.deleteScheduled=!0,this}}),a.getInheritedInstanceCount=ce,a.getLiveInheritedInstances=de,a.flushPendingDeletes=pe,a.setDelayFunction=fe,Object.assign(Le.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){var t;null===(t=this.rawDestructor)||void 0===t||t.call(this,e)},argPackAdvance:ne,readValueFromPointer:Ae,deleteObject(e){null!==e&&e.delete()},fromWireType:ve}),Re=a.UnboundTypeError=((e,t)=>{var n=we(t,(function(e){this.name=t,this.message=e;var n=new Error(e).stack;void 0!==n&&(this.stack=this.toString()+"\n"+n.replace(/^Error(:[^\n]*)?\n/,""))}));return n.prototype=Object.create(e.prototype),n.prototype.constructor=n,n.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`},n})(Error,"UnboundTypeError"),Object.assign(Ve.prototype,{get(e){return this.allocated[e]},has(e){return void 0!==this.allocated[e]},allocate(e){var t=this.freelist.pop()||this.allocated.length;return this.allocated[t]=e,t},free(e){this.allocated[e]=void 0,this.freelist.push(e)}}),Ue.allocated.push({value:void 0},{value:null},{value:!0},{value:!1}),Ue.reserved=Ue.allocated.length,a.count_emval_handles=We;var wt={s:e=>{var t=new j(e);return t.get_caught()||(t.set_caught(!0),D--),t.set_rethrown(!1),O.push(t),Mt(t.excPtr),t.get_exception_ptr()},u:()=>{Tt(0,0);var e=O.pop();Lt(e.excPtr),q=0},b:()=>B([]),g:e=>B([e]),q:(e,t)=>B([e,t]),J:()=>{var e=O.pop();e||P("no exception to throw");var t=e.excPtr;throw e.get_rethrown()||(O.push(e),e.set_rethrown(!0),e.set_caught(!1),D++),q=t},f:(e,t,n)=>{throw new j(e).init(t,n),D++,q=e},V:()=>D,d:e=>{throw q||(q=e),q},da:e=>{var t=F[e];delete F[e];var n=t.rawConstructor,a=t.rawDestructor,i=t.fields,r=i.map((e=>e.getterReturnType)).concat(i.map((e=>e.setterArgumentType)));Z([e],r,(e=>{var r={};return i.forEach(((t,n)=>{var a=t.fieldName,o=e[n],s=t.getter,l=t.getterContext,u=e[n+i.length],c=t.setter,d=t.setterContext;r[a]={read:e=>o.fromWireType(s(l,e)),write:(e,t)=>{var n=[];c(d,e,u.toWireType(n,t)),$(n)}}})),[{name:t.name,fromWireType:e=>{var t={};for(var n in r)t[n]=r[n].read(e);return a(e),t},toWireType:(e,t)=>{for(var i in r)if(!(i in t))throw new TypeError(`Missing field: "${i}"`);var o=n();for(i in r)r[i].write(o,t[i]);return null!==e&&e.push(a,o),o},argPackAdvance:ne,readValueFromPointer:V,destructorFunction:a}]}))},Q:(e,t,n,a,i)=>{},_:(e,t,n,a)=>{ee(e,{name:t=J(t),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?n:a},argPackAdvance:ne,readValueFromPointer:function(e){return this.fromWireType(f[e])},destructorFunction:null})},ca:(e,t,n,a,i,r,o,s,l,u,c,d,h)=>{c=J(c),r=De(i,r),s&&(s=De(o,s)),u&&(u=De(l,u)),h=De(d,h);var p=(e=>{if(void 0===e)return"_unknown";var t=(e=e.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return t>=48&&t<=57?`_${e}`:e})(c);xe(p,(function(){je(`Cannot construct ${c} due to unbound types`,[a])})),Z([e,t,n],a?[a]:[],(function(t){var n,i;t=t[0],i=a?(n=t.registeredClass).instancePrototype:ye.prototype;var o=we(c,(function(){if(Object.getPrototypeOf(this)!==l)throw new W("Use 'new' to construct "+c);if(void 0===m.constructor_body)throw new W(c+" has no accessible constructor");var e=m.constructor_body[arguments.length];if(void 0===e)throw new W(`Tried to invoke ctor of ${c} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(m.constructor_body).toString()}) parameters instead!`);return e.apply(this,arguments)})),l=Object.create(i,{constructor:{value:o}});o.prototype=l;var d,f,m=new Se(c,o,l,h,n,r,s,u);m.baseClass&&(null!==(f=(d=m.baseClass).__derivedClasses)&&void 0!==f||(d.__derivedClasses=[]),m.baseClass.__derivedClasses.push(m));var g=new Le(c,m,!0,!1,!1),_=new Le(c+"*",m,!1,!1,!1),v=new Le(c+" const*",m,!1,!0,!1);return ue[e]={pointerType:_,constPointerType:v},ze(p,o),[g,_,v]}))},ba:(e,t,n,a,i,r)=>{var o=Be(t,n);i=De(a,i),Z([],[e],(function(e){var n=`constructor ${(e=e[0]).name}`;if(void 0===e.registeredClass.constructor_body&&(e.registeredClass.constructor_body=[]),void 0!==e.registeredClass.constructor_body[t-1])throw new W(`Cannot register multiple constructors with identical number of parameters (${t-1}) for class '${e.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return e.registeredClass.constructor_body[t-1]=()=>{je(`Cannot construct ${e.name} due to unbound types`,o)},Z([],o,(a=>(a.splice(1,0,null),e.registeredClass.constructor_body[t-1]=Fe(n,a,null,i,r),[]))),[]}))},w:(e,t,n,a,i,r,o,s,l)=>{var u=Be(n,a);t=J(t),t=$e(t),r=De(i,r),Z([],[e],(function(e){var a=`${(e=e[0]).name}.${t}`;function i(){je(`Cannot call ${a} due to unbound types`,u)}t.startsWith("@@")&&(t=Symbol[t.substring(2)]),s&&e.registeredClass.pureVirtualFunctions.push(t);var l=e.registeredClass.instancePrototype,c=l[t];return void 0===c||void 0===c.overloadTable&&c.className!==e.name&&c.argCount===n-2?(i.argCount=n-2,i.className=e.name,l[t]=i):(ke(l,t,a),l[t].overloadTable[n-2]=i),Z([],u,(function(i){var s=Fe(a,i,e,r,o);return void 0===l[t].overloadTable?(s.argCount=n-2,l[t]=s):l[t].overloadTable[n-2]=s,[]})),[]}))},Y:(e,t)=>{ee(e,{name:t=J(t),fromWireType:e=>{var t=Ge.toValue(e);return He(e),t},toWireType:(e,t)=>Ge.toHandle(t),argPackAdvance:ne,readValueFromPointer:V,destructorFunction:null})},x:(e,t,n,a)=>{function i(){}t=J(t),i.values={},ee(e,{name:t,constructor:i,fromWireType:function(e){return this.constructor.values[e]},toWireType:(e,t)=>t.value,argPackAdvance:ne,readValueFromPointer:Ye(t,n,a),destructorFunction:null}),xe(t,i)},h:(e,t,n)=>{var a=Ke(e,"enum");t=J(t);var i=a.constructor,r=Object.create(a.constructor.prototype,{value:{value:n},constructor:{value:we(`${a.name}_${t}`,(function(){}))}});i.values[n]=r,i[t]=r},L:(e,t,n)=>{ee(e,{name:t=J(t),fromWireType:e=>e,toWireType:(e,t)=>t,argPackAdvance:ne,readValueFromPointer:Ze(t,n),destructorFunction:null})},M:(e,t,n,a,i,r,o)=>{var s=Be(t,n);e=J(e),e=$e(e),i=De(a,i),xe(e,(function(){je(`Cannot call ${e} due to unbound types`,s)}),t-1),Z([],s,(function(n){var a=[n[0],null].concat(n.slice(1));return ze(e,Fe(e,a,null,i,r),t-1),[]}))},t:(e,t,n,a,i)=>{t=J(t);var r=e=>e;if(0===a){var o=32-8*n;r=e=>e<>>o}var s=t.includes("unsigned");ee(e,{name:t,fromWireType:r,toWireType:s?function(e,t){return this.name,t>>>0}:function(e,t){return this.name,t},argPackAdvance:ne,readValueFromPointer:Je(t,n,0!==a),destructorFunction:null})},o:(e,t,n)=>{var a=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][t];function i(e){var t=v[e>>2],n=v[e+4>>2];return new a(p.buffer,n,t)}ee(e,{name:n=J(n),fromWireType:i,argPackAdvance:ne,readValueFromPointer:i},{ignoreDuplicateRegistrations:!0})},K:(e,t)=>{var n="std::string"===(t=J(t));ee(e,{name:t,fromWireType(e){var t,a=v[e>>2],i=e+4;if(n)for(var r=i,o=0;o<=a;++o){var s=i+o;if(o==a||0==f[s]){var l=nt(r,s-r);void 0===t?t=l:(t+="\0",t+=l),r=s+1}}else{var u=new Array(a);for(o=0;o>2]=a,n&&i)((e,t,n)=>{Xe(e,f,t,n)})(t,o,a+1);else if(i)for(var s=0;s255&&(xt(o),X("String has UTF-16 code units that do not fit in 8 bits")),f[o+s]=l}else for(s=0;s{var a,i,r,o,s;n=J(n),2===t?(a=it,i=rt,o=ot,r=()=>g,s=1):4===t&&(a=st,i=lt,o=ut,r=()=>v,s=2),ee(e,{name:n,fromWireType:e=>{for(var n,i=v[e>>2],o=r(),l=e+4,u=0;u<=i;++u){var c=e+4+u*t;if(u==i||0==o[c>>s]){var d=a(l,c-l);void 0===n?n=d:(n+="\0",n+=d),l=c+t}}return xt(e),n},toWireType:(e,a)=>{"string"!=typeof a&&X(`Cannot pass non-string to C++ string type ${n}`);var r=o(a),l=St(4+r+t);return v[l>>2]=r>>s,i(a,l+4,r+t),null!==e&&e.push(xt,l),l},argPackAdvance:ne,readValueFromPointer:V,destructorFunction(e){xt(e)}})},A:(e,t,n,a,i,r)=>{F[e]={name:J(t),rawConstructor:De(n,a),rawDestructor:De(i,r),fields:[]}},ea:(e,t,n,a,i,r,o,s,l,u)=>{F[e].fields.push({fieldName:J(t),getterReturnType:n,getter:De(a,i),getterContext:r,setterArgumentType:o,setter:De(s,l),setterContext:u})},$:(e,t)=>{ee(e,{isVoid:!0,name:t=J(t),argPackAdvance:0,fromWireType:()=>{},toWireType:(e,t)=>{}})},R:(e,t,n,a)=>(e=ct[e])(null,t=Ge.toValue(t),n,a),ha:He,fa:e=>0===e?Ge.toHandle(ht()):(e=(e=>{var t=dt[e];return void 0===t?J(e):t})(e),Ge.toHandle(ht()[e])),Z:(e,t,n)=>{var a=((e,t)=>{for(var n=new Array(e),a=0;a>2],"parameter "+a);return n})(e,t),i=a.shift();e--;var r=new Array(e),o=`methodCaller<(${a.map((e=>e.name)).join(", ")}) => ${i.name}>`;return(e=>{var t=ct.length;return ct.push(e),t})(we(o,((t,o,s,l)=>{for(var u=0,c=0;c{var a=[],i=e.toWireType(a,n);return a.length&&(v[t>>2]=Ge.toHandle(a)),i})(i,s,d)})))},N:e=>{e>4&&(Ue.get(e).refcount+=1)},O:e=>{var t=Ge.toValue(e);$(t),He(e)},aa:(e,t)=>{var n=(e=Ke(e,"_emval_take_value")).readValueFromPointer(t);return Ge.toHandle(n)},B:()=>{P("")},X:(e,t,n)=>f.copyWithin(e,t,t+n),W:e=>{var t,n,a=f.length,i=2147483648;if((e>>>=0)>i)return!1;for(var r=1;r<=4;r*=2){var o=a*(1+.2/r);o=Math.min(o,e+100663296);var s=Math.min(i,(t=Math.max(e,o))+((n=65536)-t%n)%n);if(ft(s))return!0}return!1},T:(e,t)=>{var n=0;return gt().forEach(((a,i)=>{var r=t+n;v[e+4*i>>2]=r,((e,t)=>{for(var n=0;n{var n=gt();v[e>>2]=n.length;var a=0;return n.forEach((e=>a+=e.length+1)),v[t>>2]=a,0},E:function(e,t,n,a){var i=Pt();try{return Ie(e)(t,n,a)}catch(e){if(At(i),e!==e+0)throw e;Tt(1,0)}},D:function(e,t,n,a,i){var r=Pt();try{return Ie(e)(t,n,a,i)}catch(e){if(At(r),e!==e+0)throw e;Tt(1,0)}},F:function(e,t,n,a){var i=Pt();try{return Ie(e)(t,n,a)}catch(e){if(At(i),e!==e+0)throw e;Tt(1,0)}},n:function(e){var t=Pt();try{return Ie(e)()}catch(e){if(At(t),e!==e+0)throw e;Tt(1,0)}},a:function(e,t){var n=Pt();try{return Ie(e)(t)}catch(e){if(At(n),e!==e+0)throw e;Tt(1,0)}},e:function(e,t,n){var a=Pt();try{return Ie(e)(t,n)}catch(e){if(At(a),e!==e+0)throw e;Tt(1,0)}},m:function(e,t,n,a){var i=Pt();try{return Ie(e)(t,n,a)}catch(e){if(At(i),e!==e+0)throw e;Tt(1,0)}},k:function(e,t,n,a,i){var r=Pt();try{return Ie(e)(t,n,a,i)}catch(e){if(At(r),e!==e+0)throw e;Tt(1,0)}},H:function(e,t,n,a,i,r){var o=Pt();try{return Ie(e)(t,n,a,i,r)}catch(e){if(At(o),e!==e+0)throw e;Tt(1,0)}},v:function(e,t,n,a,i,r,o){var s=Pt();try{return Ie(e)(t,n,a,i,r,o)}catch(e){if(At(s),e!==e+0)throw e;Tt(1,0)}},G:function(e,t,n,a,i,r,o,s){var l=Pt();try{return Ie(e)(t,n,a,i,r,o,s)}catch(e){if(At(l),e!==e+0)throw e;Tt(1,0)}},z:function(e,t,n,a,i,r,o,s,l,u,c,d){var h=Pt();try{return Ie(e)(t,n,a,i,r,o,s,l,u,c,d)}catch(e){if(At(h),e!==e+0)throw e;Tt(1,0)}},P:function(e,t,n,a,i){var r=Pt();try{return It(e,t,n,a,i)}catch(e){if(At(r),e!==e+0)throw e;Tt(1,0)}},l:function(e){var t=Pt();try{Ie(e)()}catch(e){if(At(t),e!==e+0)throw e;Tt(1,0)}},j:function(e,t){var n=Pt();try{Ie(e)(t)}catch(e){if(At(n),e!==e+0)throw e;Tt(1,0)}},c:function(e,t,n){var a=Pt();try{Ie(e)(t,n)}catch(e){if(At(a),e!==e+0)throw e;Tt(1,0)}},p:function(e,t,n,a){var i=Pt();try{Ie(e)(t,n,a)}catch(e){if(At(i),e!==e+0)throw e;Tt(1,0)}},I:function(e,t,n,a,i){var r=Pt();try{Ie(e)(t,n,a,i)}catch(e){if(At(r),e!==e+0)throw e;Tt(1,0)}},r:function(e,t,n,a,i,r,o,s){var l=Pt();try{Ie(e)(t,n,a,i,r,o,s)}catch(e){if(At(l),e!==e+0)throw e;Tt(1,0)}},i:function(e,t,n,a,i,r,o,s,l,u,c){var d=Pt();try{Ie(e)(t,n,a,i,r,o,s,l,u,c)}catch(e){if(At(d),e!==e+0)throw e;Tt(1,0)}},y:function(e,t,n,a,i,r,o,s,l,u,c,d,h,p,f,m){var g=Pt();try{Ie(e)(t,n,a,i,r,o,s,l,u,c,d,h,p,f,m)}catch(e){if(At(g),e!==e+0)throw e;Tt(1,0)}},ga:e=>e,S:(e,t,n,a,i)=>yt(e,t,n,a)},kt=function(){var e={a:wt};function t(e,t){return kt=e.exports,h=kt.ia,k(),Me=kt.ma,function(e){S.unshift(e)}(kt.ja),function(){var e;if(T--,null===(e=a.monitorRunDependencies)||void 0===e||e.call(a,T),0==T&&E){var t=E;E=null,t()}}(),kt}if(function(){var e;T++,null===(e=a.monitorRunDependencies)||void 0===e||e.call(a,T)}(),a.instantiateWasm)try{return a.instantiateWasm(e,t)}catch(e){d(`Module.instantiateWasm callback failed with error: ${e}`),n(e)}return function(e,t,n,a){return e||"function"!=typeof WebAssembly.instantiateStreaming||M(t)||"function"!=typeof fetch?z(t,n,a):fetch(t,{credentials:"same-origin"}).then((e=>WebAssembly.instantiateStreaming(e,n).then(a,(function(e){return d(`wasm streaming compile failed: ${e}`),d("falling back to ArrayBuffer instantiation"),z(t,n,a)}))))}(c,A,e,(function(e){t(e.instance)})).catch(n),{}}(),xt=a._free=e=>(xt=a._free=kt.ka)(e),St=a._malloc=e=>(St=a._malloc=kt.la)(e),Ct=e=>(Ct=kt.na)(e),Tt=(e,t)=>(Tt=kt.oa)(e,t),Et=e=>(Et=kt.pa)(e),Pt=()=>(Pt=kt.qa)(),At=e=>(At=kt.ra)(e),Lt=e=>(Lt=kt.sa)(e),Mt=e=>(Mt=kt.ta)(e),Rt=(e,t,n)=>(Rt=kt.ua)(e,t,n),zt=e=>(zt=kt.va)(e);a.dynCall_viijii=(e,t,n,i,r,o,s)=>(a.dynCall_viijii=kt.wa)(e,t,n,i,r,o,s);var Nt,It=a.dynCall_jiiii=(e,t,n,i,r)=>(It=a.dynCall_jiiii=kt.xa)(e,t,n,i,r);function Ot(){function e(){Nt||(Nt=!0,a.calledRun=!0,!w&&(N(S),t(a),a.onRuntimeInitialized&&a.onRuntimeInitialized(),function(){if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)e=a.postRun.shift(),C.unshift(e);var e;N(C)}()))}T>0||(function(){if(a.preRun)for("function"==typeof a.preRun&&(a.preRun=[a.preRun]);a.preRun.length;)e=a.preRun.shift(),x.unshift(e);var e;N(x)}(),T>0)||(a.setStatus?(a.setStatus("Running..."),setTimeout((function(){setTimeout((function(){a.setStatus("")}),1),e()}),1)):e())}if(a.dynCall_iiiiij=(e,t,n,i,r,o,s)=>(a.dynCall_iiiiij=kt.ya)(e,t,n,i,r,o,s),a.dynCall_iiiiijj=(e,t,n,i,r,o,s,l,u)=>(a.dynCall_iiiiijj=kt.za)(e,t,n,i,r,o,s,l,u),a.dynCall_iiiiiijj=(e,t,n,i,r,o,s,l,u,c)=>(a.dynCall_iiiiiijj=kt.Aa)(e,t,n,i,r,o,s,l,u,c),E=function e(){Nt||Ot(),Nt||(E=e)},a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);a.preInit.length>0;)a.preInit.pop()();return Ot(),e.ready});async function q(e,t){return async function(e,t,n=A){const a={...A,...n},i=await N(e),{size:r}=t,o=new Uint8Array(await t.arrayBuffer()),s=i._malloc(r);i.HEAPU8.set(o,s);const l=i.readBarcodesFromImage(s,r,L(i,a));i._free(s);const u=[];for(let e=0;e{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)})(this,O,void 0);try{const a=null==(t=null==e?void 0:e.formats)?void 0:t.filter((e=>"unknown"!==e));if(0===(null==a?void 0:a.length))throw new TypeError("Hint option provided, but is empty.");null==a||a.forEach((e=>{if(!o.has(e))throw new TypeError(`Failed to read the 'formats' property from 'BarcodeDetectorOptions': The provided value '${e}' is not a valid enum value of type BarcodeFormat.`)})),((e,t,a)=>{n(e,t,"write to private field"),t.set(e,a)})(this,O,null!=a?a:[]),function(e){return N(D,e)}().then((e=>{this.dispatchEvent(new CustomEvent("load",{detail:e}))})).catch((e=>{this.dispatchEvent(new CustomEvent("error",{detail:e}))}))}catch(e){throw v(e,"Failed to construct 'BarcodeDetector'")}}static async getSupportedFormats(){return r.filter((e=>"unknown"!==e))}async detect(e){try{const t=await _(e);if(null===t)return[];let n;try{n=m(t)?await q(t,{tryHarder:!0,formats:a(this,O).map((e=>o.get(e)))}):await j(t,{tryHarder:!0,formats:a(this,O).map((e=>o.get(e)))})}catch(e){throw console.error(e),new DOMException("Barcode detection service unavailable.","NotSupportedError")}return n.map((e=>{const{topLeft:{x:t,y:n},topRight:{x:a,y:i},bottomLeft:{x:r,y:o},bottomRight:{x:l,y:u}}=e.position,c=Math.min(t,a,r,l),d=Math.min(n,i,o,u),h=Math.max(t,a,r,l),p=Math.max(n,i,o,u);return{boundingBox:new DOMRectReadOnly(c,d,h-c,p-d),rawValue:e.text,format:s(e.format),cornerPoints:[{x:t,y:n},{x:a,y:i},{x:l,y:u},{x:r,y:o}]}}))}catch(e){throw v(e,"Failed to execute 'detect' on 'BarcodeDetector'")}}}O=new WeakMap;const F=(e,t,n="error")=>{let a,i;const r=new Promise(((r,o)=>{a=r,i=o,e.addEventListener(t,a),e.addEventListener(n,i)}));return r.finally((()=>{e.removeEventListener(t,a),e.removeEventListener(n,i)})),r},$=e=>new Promise((t=>setTimeout(t,e)));class V extends Error{constructor(){super("can't process cross-origin image"),this.name="DropImageFetchError"}}class U extends Error{constructor(){super("this browser has no Stream API support"),this.name="StreamApiNotSupportedError"}}class H extends Error{constructor(){super("camera access is only permitted in secure context. Use HTTPS or localhost rather than HTTP."),this.name="InsecureContextError"}}class W extends Error{constructor(){super("Loading camera stream timed out after 6 seconds. If you are on iOS in PWA mode, this is a known issue (see https://github.com/gruhn/vue-qrcode-reader/issues/298)"),this.name="StreamLoadTimeoutError"}}let G;async function Y(e){G=await async function(e){if(void 0===window.BarcodeDetector)return console.debug("[vue-qrcode-reader] Native BarcodeDetector not supported. Will use polyfill."),new B({formats:e});const t=await window.BarcodeDetector.getSupportedFormats(),n=e.filter((e=>!t.includes(e)));return n.length>0?(console.debug(`[vue-qrcode-reader] Native BarcodeDetector does not support formats ${JSON.stringify(n)}. Will use polyfill.`),new B({formats:e})):(console.debug("[vue-qrcode-reader] Will use native BarcodeDetector."),new window.BarcodeDetector({formats:e}))}(e)}const K=async(e,t=["qr_code"])=>await new B({formats:t}).detect(e),Q=async(e,t=["qr_code"])=>{const n=new B({formats:t}),a=await(async e=>{if(e.startsWith("http")&&!1===e.includes(location.host))throw new V;const t=document.createElement("img");return t.src=e,await F(t,"load"),t})(e);return await n.detect(a)};var Z={},J={};Object.defineProperty(J,"__esModule",{value:!0}),J.compactObject=function e(t){return ie(t)?Object.keys(t).reduce((function(n,a){var i=ie(t[a]),r=i?e(t[a]):t[a],o=i&&!Object.keys(r).length;return void 0===r||o?n:Object.assign(n,function(e,t,n){return t=function(e){var t=function(e,t){if("object"!==ee(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!==ee(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===ee(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}({},a,r))}),{}):t},J.deprecated=function(e,t){ne&&console.warn(e+" is deprecated, please use "+t+" instead.")};var X=J.detectBrowser=function(e){var t={browser:null,version:null};if(typeof e>"u"||!e.navigator||!e.navigator.userAgent)return t.browser="Not a browser.",t;var n=e.navigator;if(n.mozGetUserMedia)t.browser="firefox",t.version=ae(n.userAgent,/Firefox\/(\d+)\./,1);else if(n.webkitGetUserMedia||!1===e.isSecureContext&&e.webkitRTCPeerConnection)t.browser="chrome",t.version=ae(n.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else{if(!e.RTCPeerConnection||!n.userAgent.match(/AppleWebKit\/(\d+)\./))return t.browser="Not a supported browser.",t;t.browser="safari",t.version=ae(n.userAgent,/AppleWebKit\/(\d+)\./,1),t.supportsUnifiedPlan=e.RTCRtpTransceiver&&"currentDirection"in e.RTCRtpTransceiver.prototype}return t};function ee(e){return(ee="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}J.disableLog=function(e){return"boolean"!=typeof e?new Error("Argument type: "+ee(e)+". Please use a boolean."):(te=e,e?"adapter.js logging disabled":"adapter.js logging enabled")},J.disableWarnings=function(e){return"boolean"!=typeof e?new Error("Argument type: "+ee(e)+". Please use a boolean."):(ne=!e,"adapter.js deprecation warnings "+(e?"disabled":"enabled"))},J.extractVersion=ae,J.filterStats=function(e,t,n){var a=n?"outbound-rtp":"inbound-rtp",i=new Map;if(null===t)return i;var r=[];return e.forEach((function(e){"track"===e.type&&e.trackIdentifier===t.id&&r.push(e)})),r.forEach((function(t){e.forEach((function(n){n.type===a&&n.trackId===t.id&&re(e,n,i)}))})),i},J.log=function(){if("object"===(typeof window>"u"?"undefined":ee(window))){if(te)return;typeof console<"u"&&"function"==typeof console.log&&console.log.apply(console,arguments)}},J.walkStats=re,J.wrapPeerConnectionEvent=function(e,t,n){if(e.RTCPeerConnection){var a=e.RTCPeerConnection.prototype,i=a.addEventListener;a.addEventListener=function(e,a){if(e!==t)return i.apply(this,arguments);var r=function(e){var t=n(e);t&&(a.handleEvent?a.handleEvent(t):a(t))};return this._eventMap=this._eventMap||{},this._eventMap[t]||(this._eventMap[t]=new Map),this._eventMap[t].set(a,r),i.apply(this,[e,r])};var r=a.removeEventListener;a.removeEventListener=function(e,n){if(e!==t||!this._eventMap||!this._eventMap[t])return r.apply(this,arguments);if(!this._eventMap[t].has(n))return r.apply(this,arguments);var a=this._eventMap[t].get(n);return this._eventMap[t].delete(n),0===this._eventMap[t].size&&delete this._eventMap[t],0===Object.keys(this._eventMap).length&&delete this._eventMap,r.apply(this,[e,a])},Object.defineProperty(a,"on"+t,{get:function(){return this["_on"+t]},set:function(e){this["_on"+t]&&(this.removeEventListener(t,this["_on"+t]),delete this["_on"+t]),e&&this.addEventListener(t,this["_on"+t]=e)},enumerable:!0,configurable:!0})}};var te=!0,ne=!0;function ae(e,t,n){var a=e.match(t);return a&&a.length>=n&&parseInt(a[n],10)}function ie(e){return"[object Object]"===Object.prototype.toString.call(e)}function re(e,t,n){!t||n.has(t.id)||(n.set(t.id,t),Object.keys(t).forEach((function(a){a.endsWith("Id")?re(e,e.get(t[a]),n):a.endsWith("Ids")&&t[a].forEach((function(t){re(e,e.get(t),n)}))})))}Object.defineProperty(Z,"__esModule",{value:!0});var oe=Z.shimGetUserMedia=function(e,t){var n=e&&e.navigator;if(n.mediaDevices){var a=function(e){if("object"!==ue(e)||e.mandatory||e.optional)return e;var t={};return Object.keys(e).forEach((function(n){if("require"!==n&&"advanced"!==n&&"mediaSource"!==n){var a="object"===ue(e[n])?e[n]:{ideal:e[n]};void 0!==a.exact&&"number"==typeof a.exact&&(a.min=a.max=a.exact);var i=function(e,t){return e?e+t.charAt(0).toUpperCase()+t.slice(1):"deviceId"===t?"sourceId":t};if(void 0!==a.ideal){t.optional=t.optional||[];var r={};"number"==typeof a.ideal?(r[i("min",n)]=a.ideal,t.optional.push(r),(r={})[i("max",n)]=a.ideal,t.optional.push(r)):(r[i("",n)]=a.ideal,t.optional.push(r))}void 0!==a.exact&&"number"!=typeof a.exact?(t.mandatory=t.mandatory||{},t.mandatory[i("",n)]=a.exact):["min","max"].forEach((function(e){void 0!==a[e]&&(t.mandatory=t.mandatory||{},t.mandatory[i(e,n)]=a[e])}))}})),e.advanced&&(t.optional=(t.optional||[]).concat(e.advanced)),t},i=function(e,i){if(t.version>=61)return i(e);if((e=JSON.parse(JSON.stringify(e)))&&"object"===ue(e.audio)){var r=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])};r((e=JSON.parse(JSON.stringify(e))).audio,"autoGainControl","googAutoGainControl"),r(e.audio,"noiseSuppression","googNoiseSuppression"),e.audio=a(e.audio)}if(e&&"object"===ue(e.video)){var o=e.video.facingMode;o=o&&("object"===ue(o)?o:{ideal:o});var s,l=t.version<66;if(o&&("user"===o.exact||"environment"===o.exact||"user"===o.ideal||"environment"===o.ideal)&&(!n.mediaDevices.getSupportedConstraints||!n.mediaDevices.getSupportedConstraints().facingMode||l))if(delete e.video.facingMode,"environment"===o.exact||"environment"===o.ideal?s=["back","rear"]:("user"===o.exact||"user"===o.ideal)&&(s=["front"]),s)return n.mediaDevices.enumerateDevices().then((function(t){var n=(t=t.filter((function(e){return"videoinput"===e.kind}))).find((function(e){return s.some((function(t){return e.label.toLowerCase().includes(t)}))}));return!n&&t.length&&s.includes("back")&&(n=t[t.length-1]),n&&(e.video.deviceId=o.exact?{exact:n.deviceId}:{ideal:n.deviceId}),e.video=a(e.video),ce("chrome: "+JSON.stringify(e)),i(e)}));e.video=a(e.video)}return ce("chrome: "+JSON.stringify(e)),i(e)},r=function(e){return t.version>=64?e:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[e.name]||e.name,message:e.message,constraint:e.constraint||e.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}};if(n.getUserMedia=function(e,t,a){i(e,(function(e){n.webkitGetUserMedia(e,t,(function(e){a&&a(r(e))}))}))}.bind(n),n.mediaDevices.getUserMedia){var o=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(e){return i(e,(function(e){return o(e).then((function(t){if(e.audio&&!t.getAudioTracks().length||e.video&&!t.getVideoTracks().length)throw t.getTracks().forEach((function(e){e.stop()})),new DOMException("","NotFoundError");return t}),(function(e){return Promise.reject(r(e))}))}))}}}},se=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==ue(e)&&"function"!=typeof e)return{default:e};var n=le(t);if(n&&n.has(e))return n.get(e);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var o=i?Object.getOwnPropertyDescriptor(e,r):null;o&&(o.get||o.set)?Object.defineProperty(a,r,o):a[r]=e[r]}return a.default=e,n&&n.set(e,a),a}(J);function le(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(le=function(e){return e?n:t})(e)}function ue(e){return(ue="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var ce=se.log;var de={};Object.defineProperty(de,"__esModule",{value:!0});var he=de.shimGetUserMedia=function(e,t){var n=e&&e.navigator,a=e&&e.MediaStreamTrack;if(n.getUserMedia=function(e,t,a){pe.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(e).then(t,a)},!(t.version>55&&"autoGainControl"in n.mediaDevices.getSupportedConstraints())){var i=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])},r=n.mediaDevices.getUserMedia.bind(n.mediaDevices);if(n.mediaDevices.getUserMedia=function(e){return"object"===me(e)&&"object"===me(e.audio)&&(e=JSON.parse(JSON.stringify(e)),i(e.audio,"autoGainControl","mozAutoGainControl"),i(e.audio,"noiseSuppression","mozNoiseSuppression")),r(e)},a&&a.prototype.getSettings){var o=a.prototype.getSettings;a.prototype.getSettings=function(){var e=o.apply(this,arguments);return i(e,"mozAutoGainControl","autoGainControl"),i(e,"mozNoiseSuppression","noiseSuppression"),e}}if(a&&a.prototype.applyConstraints){var s=a.prototype.applyConstraints;a.prototype.applyConstraints=function(e){return"audio"===this.kind&&"object"===me(e)&&(e=JSON.parse(JSON.stringify(e)),i(e,"autoGainControl","mozAutoGainControl"),i(e,"noiseSuppression","mozNoiseSuppression")),s.apply(this,[e])}}}},pe=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==me(e)&&"function"!=typeof e)return{default:e};var n=fe(t);if(n&&n.has(e))return n.get(e);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var o=i?Object.getOwnPropertyDescriptor(e,r):null;o&&(o.get||o.set)?Object.defineProperty(a,r,o):a[r]=e[r]}return a.default=e,n&&n.set(e,a),a}(J);function fe(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(fe=function(e){return e?n:t})(e)}function me(e){return(me="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var ge={};Object.defineProperty(ge,"__esModule",{value:!0}),ge.shimAudioContext=function(e){"object"!==ye(e)||e.AudioContext||(e.AudioContext=e.webkitAudioContext)},ge.shimCallbacksAPI=function(e){if("object"===ye(e)&&e.RTCPeerConnection){var t=e.RTCPeerConnection.prototype,n=t.createOffer,a=t.createAnswer,i=t.setLocalDescription,r=t.setRemoteDescription,o=t.addIceCandidate;t.createOffer=function(e,t){var a=arguments.length>=2?arguments[2]:arguments[0],i=n.apply(this,[a]);return t?(i.then(e,t),Promise.resolve()):i},t.createAnswer=function(e,t){var n=arguments.length>=2?arguments[2]:arguments[0],i=a.apply(this,[n]);return t?(i.then(e,t),Promise.resolve()):i};var s=function(e,t,n){var a=i.apply(this,[e]);return n?(a.then(t,n),Promise.resolve()):a};t.setLocalDescription=s,s=function(e,t,n){var a=r.apply(this,[e]);return n?(a.then(t,n),Promise.resolve()):a},t.setRemoteDescription=s,s=function(e,t,n){var a=o.apply(this,[e]);return n?(a.then(t,n),Promise.resolve()):a},t.addIceCandidate=s}},ge.shimConstraints=we,ge.shimCreateOfferLegacy=function(e){var t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(e){if(e){typeof e.offerToReceiveAudio<"u"&&(e.offerToReceiveAudio=!!e.offerToReceiveAudio);var n=this.getTransceivers().find((function(e){return"audio"===e.receiver.track.kind}));!1===e.offerToReceiveAudio&&n?"sendrecv"===n.direction?n.setDirection?n.setDirection("sendonly"):n.direction="sendonly":"recvonly"===n.direction&&(n.setDirection?n.setDirection("inactive"):n.direction="inactive"):!0===e.offerToReceiveAudio&&!n&&this.addTransceiver("audio",{direction:"recvonly"}),typeof e.offerToReceiveVideo<"u"&&(e.offerToReceiveVideo=!!e.offerToReceiveVideo);var a=this.getTransceivers().find((function(e){return"video"===e.receiver.track.kind}));!1===e.offerToReceiveVideo&&a?"sendrecv"===a.direction?a.setDirection?a.setDirection("sendonly"):a.direction="sendonly":"recvonly"===a.direction&&(a.setDirection?a.setDirection("inactive"):a.direction="inactive"):!0===e.offerToReceiveVideo&&!a&&this.addTransceiver("video",{direction:"recvonly"})}return t.apply(this,arguments)}};var _e=ge.shimGetUserMedia=function(e){var t=e&&e.navigator;if(t.mediaDevices&&t.mediaDevices.getUserMedia){var n=t.mediaDevices,a=n.getUserMedia.bind(n);t.mediaDevices.getUserMedia=function(e){return a(we(e))}}!t.getUserMedia&&t.mediaDevices&&t.mediaDevices.getUserMedia&&(t.getUserMedia=function(e,n,a){t.mediaDevices.getUserMedia(e).then(n,a)}.bind(t))};ge.shimLocalStreamsAPI=function(e){if("object"===ye(e)&&e.RTCPeerConnection){if("getLocalStreams"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in e.RTCPeerConnection.prototype)){var t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addStream=function(e){var n=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(e)||this._localStreams.push(e),e.getAudioTracks().forEach((function(a){return t.call(n,a,e)})),e.getVideoTracks().forEach((function(a){return t.call(n,a,e)}))},e.RTCPeerConnection.prototype.addTrack=function(e){for(var n=this,a=arguments.length,i=new Array(a>1?a-1:0),r=1;r=0)){e._remoteStreams.push(t);var n=new Event("addstream");n.stream=t,e.dispatchEvent(n)}}))}),t.apply(e,arguments)}}},ge.shimTrackEventTransceiver=function(e){"object"===ye(e)&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})};var ve=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==ye(e)&&"function"!=typeof e)return{default:e};var n=be(t);if(n&&n.has(e))return n.get(e);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var o=i?Object.getOwnPropertyDescriptor(e,r):null;o&&(o.get||o.set)?Object.defineProperty(a,r,o):a[r]=e[r]}return a.default=e,n&&n.set(e,a),a}(J);function be(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(be=function(e){return e?n:t})(e)}function ye(e){return(ye="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function we(e){return e&&void 0!==e.video?Object.assign({},e,{video:ve.compactObject(e.video)}):e}function ke(e,t){if(!1===e)throw new Error(null!=t?t:"assertion failure")}function xe(e){throw new Error("this code should be unreachable")}const Se=(e=>{let t,n=!1;return(...a)=>(n||(t=e(a),n=!0),t)})((()=>{const e=X(window);switch(e.browser){case"chrome":oe(window,e);break;case"firefox":he(window,e);break;case"safari":_e(window,e);break;default:throw new U}}));let Ce=Promise.resolve({type:"stop",data:{}});async function Te(e,t,n){var a,i,r;if(console.debug("[vue-qrcode-reader] starting camera with constraints: ",JSON.stringify(t)),!0!==window.isSecureContext)throw new H;if(void 0===(null==(a=null==navigator?void 0:navigator.mediaDevices)?void 0:a.getUserMedia))throw new U;Se(),console.debug("[vue-qrcode-reader] calling getUserMedia");const o=await navigator.mediaDevices.getUserMedia({audio:!1,video:t});void 0!==e.srcObject?e.srcObject=o:void 0!==e.mozSrcObject?e.mozSrcObject=o:window.URL.createObjectURL?e.src=window.URL.createObjectURL(o):window.webkitURL?e.src=window.webkitURL.createObjectURL(o):e.src=o.id,e.play(),console.debug("[vue-qrcode-reader] waiting for video element to load"),await Promise.race([F(e,"loadeddata"),$(6e3).then((()=>{throw new W}))]),console.debug("[vue-qrcode-reader] video element loaded"),await $(500);const[s]=o.getVideoTracks(),l=null!=(r=null==(i=null==s?void 0:s.getCapabilities)?void 0:i.call(s))?r:{};let u=!1;return n&&l.torch&&(await s.applyConstraints({advanced:[{torch:!0}]}),u=!0),console.debug("[vue-qrcode-reader] camera ready"),{type:"start",data:{videoEl:e,stream:o,capabilities:l,constraints:t,isTorchOn:u}}}async function Ee(e,t,n){console.debug("[vue-qrcode-reader] stopping camera"),e.src="",e.srcObject=null,e.load(),await F(e,"error");for(const e of t.getTracks())null!=n||await e.applyConstraints({advanced:[{torch:!1}]}),t.removeTrack(e),e.stop();return{type:"stop",data:{}}}async function Pe(){if(Ce=Ce.then((e=>{if("stop"===e.type||"failed"===e.type)return e;const{data:{videoEl:t,stream:n,isTorchOn:a}}=e;return Ee(t,n,a)})),"start"===(await Ce).type)throw new Error("Something went wrong with the camera task queue (stop task).")}const Ae=t.defineComponent({__name:"QrcodeStream",props:{constraints:{type:Object,default:()=>({facingMode:"environment"})},formats:{type:Array,default:()=>["qr_code"]},paused:{type:Boolean,default:!1},torch:{type:Boolean,default:!1},track:{type:Function}},emits:["detect","camera-on","camera-off","error"],setup(e,{emit:n}){const a=e,i=n,r=t.ref(a.constraints),o=t.ref(a.formats);t.watch((()=>a.constraints),((e,t)=>{JSON.stringify(e)!==JSON.stringify(t)&&(r.value=e)}),{deep:!0}),t.watch((()=>a.formats),((e,t)=>{JSON.stringify(e)!==JSON.stringify(t)&&(o.value=e)}),{deep:!0});const s=t.ref(),l=t.ref(),u=t.ref(),c=t.ref(!1),d=t.ref(!1);t.onMounted((()=>{d.value=!0})),t.onUnmounted((()=>{Pe()}));const h=t.computed((()=>({torch:a.torch,constraints:r.value,shouldStream:d.value&&!a.paused})));t.watch(h,(async e=>{const t=u.value;ke(void 0!==t,"cameraSettings watcher should never be triggered when component is not mounted. Thus video element should always be defined.");const n=s.value;ke(void 0!==n,"cameraSettings watcher should never be triggered when component is not mounted. Thus canvas should always be defined.");const a=n.getContext("2d");if(ke(null!==a,"if cavnas is defined, canvas 2d context should also be non-null"),e.shouldStream){Pe(),c.value=!1;try{const n=await async function(e,{constraints:t,torch:n,restart:a=!1}){Ce=Ce.then((i=>{if("start"===i.type){const{data:{videoEl:r,stream:o,constraints:s,isTorchOn:l}}=i;return a||e!==r||t!==s||n!==l?Ee(r,o,l).then((()=>Te(e,t,n))):i}if("stop"===i.type||"failed"===i.type)return Te(e,t,n);xe()})).catch((e=>(console.debug(`[vue-qrcode-reader] starting camera failed with "${e}"`),{type:"failed",error:e})));const i=await Ce;if("stop"===i.type)throw new Error("Something went wrong with the camera task queue (start task).");if("failed"===i.type)throw i.error;if("start"===i.type)return i.data.capabilities;xe()}(t,e);d.value?(c.value=!0,i("camera-on",n)):await Pe()}catch(e){i("error",e)}}else n.width=t.videoWidth,n.height=t.videoHeight,a.drawImage(t,0,0,t.videoWidth,t.videoHeight),Pe(),c.value=!1,i("camera-off")}),{deep:!0}),t.watch(o,(async e=>{d.value&&await Y(e)}));const p=t.computed((()=>h.value.shouldStream&&c.value));t.watch(p,(e=>{if(e){ke(void 0!==s.value,"shouldScan watcher should only be triggered when component is mounted. Thus pause frame canvas is defined"),f(s.value),ke(void 0!==l.value,"shouldScan watcher should only be triggered when component is mounted. Thus tracking canvas is defined"),f(l.value);const e=()=>void 0===a.track?500:40;ke(void 0!==u.value,"shouldScan watcher should only be triggered when component is mounted. Thus video element is defined"),(async(e,{detectHandler:t,locateHandler:n,minDelay:a,formats:i})=>{console.debug("[vue-qrcode-reader] start scanning"),await Y(i);const r=i=>async o=>{if(0===e.readyState)console.debug("[vue-qrcode-reader] stop scanning: video element readyState is 0");else{const{lastScanned:s,contentBefore:l,lastScanHadContent:u}=i;if(o-s!l.includes(e.rawValue)));i&&t(a);const s=a.length>0;s&&n(a),!s&&u&&n(a);const c={lastScanned:o,lastScanHadContent:s,contentBefore:i?a.map((e=>e.rawValue)):l};window.requestAnimationFrame(r(c))}}};r({lastScanned:performance.now(),contentBefore:[],lastScanHadContent:!1})(performance.now())})(u.value,{detectHandler:e=>i("detect",e),formats:o.value,locateHandler:m,minDelay:e()})}}));const f=e=>{const t=e.getContext("2d");ke(null!==t,"canvas 2d context should always be non-null"),t.clearRect(0,0,e.width,e.height)},m=e=>{const t=l.value;ke(void 0!==t,"onLocate handler should only be called when component is mounted. Thus tracking canvas is always defined.");const n=u.value;if(ke(void 0!==n,"onLocate handler should only be called when component is mounted. Thus video element is always defined."),0===e.length||void 0===a.track)f(t);else{const i=n.offsetWidth,r=n.offsetHeight,o=n.videoWidth,s=n.videoHeight,l=Math.max(i/o,r/s),u=o*l,c=s*l,d=u/o,h=c/s,p=(i-u)/2,f=(r-c)/2,m=({x:e,y:t})=>({x:Math.floor(e*d),y:Math.floor(t*h)}),g=({x:e,y:t})=>({x:Math.floor(e+p),y:Math.floor(t+f)}),_=e.map((e=>{const{boundingBox:t,cornerPoints:n}=e,{x:a,y:i}=g(m({x:t.x,y:t.y})),{x:r,y:o}=m({x:t.width,y:t.height});return{...e,cornerPoints:n.map((e=>g(m(e)))),boundingBox:DOMRectReadOnly.fromRect({x:a,y:i,width:r,height:o})}}));t.width=n.offsetWidth,t.height=n.offsetHeight;const v=t.getContext("2d");a.track(_,v)}},g={width:"100%",height:"100%",position:"relative","z-index":"0"},_={width:"100%",height:"100%",position:"absolute",top:"0",left:"0"},v={width:"100%",height:"100%","object-fit":"cover"},b=t.computed((()=>p.value?v:{...v,visibility:"hidden",position:"absolute"}));return(e,n)=>(t.openBlock(),t.createElementBlock("div",{style:g},[t.createElementVNode("video",{ref_key:"videoRef",ref:u,style:t.normalizeStyle(b.value),autoplay:"",muted:"",playsinline:""},null,4),t.withDirectives(t.createElementVNode("canvas",{id:"qrcode-stream-pause-frame",ref_key:"pauseFrameRef",ref:s,style:v},null,512),[[t.vShow,!p.value]]),t.createElementVNode("canvas",{id:"qrcode-stream-tracking-layer",ref_key:"trackingLayerRef",ref:l,style:_},null,512),t.createElementVNode("div",{style:_},[t.renderSlot(e.$slots,"default")])]))}}),Le=t.defineComponent({__name:"QrcodeCapture",props:{formats:{type:Array,default:()=>["qr_code"]}},emits:["detect"],setup(e,{emit:n}){const a=e,i=n,r=e=>{if(e.target instanceof HTMLInputElement&&e.target.files)for(const t of Array.from(e.target.files))K(t,a.formats).then((e=>{i("detect",e)}))};return(e,n)=>(t.openBlock(),t.createElementBlock("input",{onChange:r,type:"file",name:"image",accept:"image/*",capture:"environment",multiple:""},null,32))}}),Me=t.defineComponent({__name:"QrcodeDropZone",props:{formats:{type:Array,default:()=>["qr_code"]}},emits:["detect","dragover","error"],setup(e,{emit:n}){const a=e,i=n,r=async e=>{try{const t=await e;i("detect",t)}catch(e){i("error",e)}},o=e=>{i("dragover",e)},s=({dataTransfer:e})=>{if(!e)return;o(!1);const t=[...Array.from(e.files)],n=e.getData("text/uri-list");t.forEach((e=>{r(K(e,a.formats))})),""!==n&&r(Q(n,a.formats))};return(e,n)=>(t.openBlock(),t.createElementBlock("div",{onDrop:t.withModifiers(s,["prevent","stop"]),onDragenter:n[0]||(n[0]=t.withModifiers((e=>o(!0)),["prevent","stop"])),onDragleave:n[1]||(n[1]=t.withModifiers((e=>o(!1)),["prevent","stop"])),onDragover:n[2]||(n[2]=t.withModifiers((()=>{}),["prevent","stop"]))},[t.renderSlot(e.$slots,"default")],32))}});function Re(e){e.component("qrcode-stream",Ae),e.component("qrcode-capture",Le),e.component("qrcode-drop-zone",Me)}const ze={install:Re};e.QrcodeCapture=Le,e.QrcodeDropZone=Me,e.QrcodeStream=Ae,e.VueQrcodeReader=ze,e.install=Re,e.setZXingModuleOverrides=function(e){return function(e,t){z.set(e,{moduleOverrides:t})}(D,e)},Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})})), + */!function(e,t){"object"==typeof exports&&typeof module<"u"?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e=typeof globalThis<"u"?globalThis:e||self).VueQrcodeReader={},e.Vue)}(this,function(e,t){"use strict";var n=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)},a=(e,t,a)=>(n(e,t,"read from private field"),a?a.call(e):t.get(e));const i=[["aztec","Aztec"],["code_128","Code128"],["code_39","Code39"],["code_93","Code93"],["codabar","Codabar"],["databar","DataBar"],["databar_expanded","DataBarExpanded"],["data_matrix","DataMatrix"],["dx_film_edge","DXFilmEdge"],["ean_13","EAN-13"],["ean_8","EAN-8"],["itf","ITF"],["maxi_code","MaxiCode"],["micro_qr_code","MicroQRCode"],["pdf417","PDF417"],["qr_code","QRCode"],["rm_qr_code","rMQRCode"],["upc_a","UPC-A"],["upc_e","UPC-E"],["linear_codes","Linear-Codes"],["matrix_codes","Matrix-Codes"]],r=[...i,["unknown"]].map(e=>e[0]),o=new Map(i);function s(e){for(const[t,n]of o)if(e===n)return t;return"unknown"}function l(e){try{return e instanceof HTMLImageElement}catch(e){return!1}}function u(e){try{return e instanceof SVGImageElement}catch(e){return!1}}function c(e){try{return e instanceof HTMLVideoElement}catch(e){return!1}}function d(e){try{return e instanceof HTMLCanvasElement}catch(e){return!1}}function h(e){try{return e instanceof ImageBitmap}catch(e){return!1}}function p(e){try{return e instanceof OffscreenCanvas}catch(e){return!1}}function f(e){try{return e instanceof VideoFrame}catch(e){return!1}}function m(e){try{return e instanceof Blob}catch(e){return!1}}async function g(e){if(l(e)&&!await async function(e){try{return await e.decode(),!0}catch(e){return!1}}(e))throw new DOMException("Failed to load or decode HTMLImageElement.","InvalidStateError");if(u(e)&&!await async function(e){var t;try{return await(null==(t=e.decode)?void 0:t.call(e)),!0}catch(e){return!1}}(e))throw new DOMException("Failed to load or decode SVGImageElement.","InvalidStateError");if(f(e)&&function(e){return null===e.format}(e))throw new DOMException("VideoFrame is closed.","InvalidStateError");if(c(e)&&(0===e.readyState||1===e.readyState))throw new DOMException("Invalid element or state.","InvalidStateError");if(h(e)&&function(e){return 0===e.width&&0===e.height}(e))throw new DOMException("The image source is detached.","InvalidStateError");const{width:t,height:n}=function(e){if(l(e))return{width:e.naturalWidth,height:e.naturalHeight};if(u(e))return{width:e.width.baseVal.value,height:e.height.baseVal.value};if(c(e))return{width:e.videoWidth,height:e.videoHeight};if(h(e))return{width:e.width,height:e.height};if(f(e))return{width:e.displayWidth,height:e.displayHeight};if(d(e))return{width:e.width,height:e.height};if(p(e))return{width:e.width,height:e.height};throw new TypeError("The provided value is not of type '(Blob or HTMLCanvasElement or HTMLImageElement or HTMLVideoElement or ImageBitmap or ImageData or OffscreenCanvas or SVGImageElement or VideoFrame)'.")}(e);if(0===t||0===n)return null;const a=function(e,t){try{const n=new OffscreenCanvas(e,t);if(n.getContext("2d")instanceof OffscreenCanvasRenderingContext2D)return n;throw void 0}catch(n){const a=document.createElement("canvas");return a.width=e,a.height=t,a}}(t,n).getContext("2d");a.drawImage(e,0,0);try{return a.getImageData(0,0,t,n)}catch(e){throw new DOMException("Source would taint origin.","SecurityError")}}async function _(e){if(m(e))return await async function(e){let t;try{if(globalThis.createImageBitmap)t=await createImageBitmap(e);else{if(!globalThis.Image)return e;{t=new Image;let n="";try{n=URL.createObjectURL(e),t.src=n,await t.decode()}finally{URL.revokeObjectURL(n)}}}}catch(e){throw new DOMException("Failed to load or decode Blob.","InvalidStateError")}return await g(t)}(e);if(function(e){try{return e instanceof ImageData}catch(e){return!1}}(e)){if(function(e){return 0===e.data.buffer.byteLength}(e))throw new DOMException("The image data has been detached.","InvalidStateError");return e}return d(e)||p(e)?function(e){const{width:t,height:n}=e;if(0===t||0===n)return null;const a=e.getContext("2d");try{return a.getImageData(0,0,t,n)}catch(e){throw new DOMException("Source would taint origin.","SecurityError")}}(e):await g(e)}function v(e,t){return e instanceof DOMException?new DOMException(`${t}: ${e.message}`,e.name):e instanceof Error?new e.constructor(`${t}: ${e.message}`):new Error(`${t}: ${e}`)}const b=["Aztec","Codabar","Code128","Code39","Code93","DataBar","DataBarExpanded","DataMatrix","DXFilmEdge","EAN-13","EAN-8","ITF","Linear-Codes","Matrix-Codes","MaxiCode","MicroQRCode","None","PDF417","QRCode","rMQRCode","UPC-A","UPC-E"];function y(e){return e.join("|")}function w(e){const t=k(e);let n=0,a=b.length-1;for(;n<=a;){const e=Math.floor((n+a)/2),i=b[e],r=k(i);if(r===t)return i;r{const n=e.match(/_(.+?)\.wasm$/);return n?`https://fastly.jsdelivr.net/npm/zxing-wasm@1.1.3/dist/${n[1]}/${e}`:t+e}};let z=new WeakMap;function N(e,t){var n;const a=z.get(e);if(null!=a&&a.modulePromise&&void 0===t)return a.modulePromise;const i=null!=(n=null==a?void 0:a.moduleOverrides)?n:R,r=e({...i});return z.set(e,{moduleOverrides:i,modulePromise:r}),r}var O,I,q=(O=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0,function(e={}){var t,n,a=e;a.ready=new Promise((e,a)=>{t=e,n=a});var i=Object.assign({},a),r="./this.program",o="object"==typeof window,s="function"==typeof importScripts;"object"==typeof process&&"object"==typeof process.versions&&process.versions.node;var l,u="";(o||s)&&(s?u=self.location.href:typeof document<"u"&&document.currentScript&&(u=document.currentScript.src),O&&(u=O),u=0!==u.indexOf("blob:")?u.substr(0,u.replace(/[?#].*/,"").lastIndexOf("/")+1):"",s&&(l=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)})),a.print||console.log.bind(console);var c,d=a.printErr||console.error.bind(console);Object.assign(a,i),i=null,a.arguments&&a.arguments,a.thisProgram&&(r=a.thisProgram),a.quit&&a.quit,a.wasmBinary&&(c=a.wasmBinary),"object"!=typeof WebAssembly&&M("no native wasm support detected");var h,p,f,m,g,_,v,b,y,w=!1;function k(){var e=h.buffer;a.HEAP8=p=new Int8Array(e),a.HEAP16=m=new Int16Array(e),a.HEAPU8=f=new Uint8Array(e),a.HEAPU16=g=new Uint16Array(e),a.HEAP32=_=new Int32Array(e),a.HEAPU32=v=new Uint32Array(e),a.HEAPF32=b=new Float32Array(e),a.HEAPF64=y=new Float64Array(e)}var x=[],S=[],C=[];function T(e){x.unshift(e)}function E(e){C.unshift(e)}var P=0,A=null;function M(e){var t;null===(t=a.onAbort)||void 0===t||t.call(a,e),d(e="Aborted("+e+")"),w=!0,e+=". Build with -sASSERTIONS for more info.";var i=new WebAssembly.RuntimeError(e);throw n(i),i}var L,R,z=e=>e.startsWith("data:application/octet-stream;base64,");function N(e){if(e==L&&c)return new Uint8Array(c);if(l)return l(e);throw"both async and sync fetching of the wasm failed"}function I(e,t,n){return function(e){return c||!o&&!s||"function"!=typeof fetch?Promise.resolve().then(()=>N(e)):fetch(e,{credentials:"same-origin"}).then(t=>{if(!t.ok)throw"failed to load wasm binary file at '"+e+"'";return t.arrayBuffer()}).catch(()=>N(e))}(e).then(e=>WebAssembly.instantiate(e,t)).then(e=>e).then(n,e=>{d(`failed to asynchronously prepare wasm: ${e}`),M(e)})}z(L="zxing_reader.wasm")||(R=L,L=a.locateFile?a.locateFile(R,u):u+R);var q=e=>{for(;e.length>0;)e.shift()(a)};a.noExitRuntime;var D=[],j=0,B=0;function F(e){this.excPtr=e,this.ptr=e-24,this.set_type=function(e){v[this.ptr+4>>2]=e},this.get_type=function(){return v[this.ptr+4>>2]},this.set_destructor=function(e){v[this.ptr+8>>2]=e},this.get_destructor=function(){return v[this.ptr+8>>2]},this.set_caught=function(e){e=e?1:0,p[this.ptr+12|0]=e},this.get_caught=function(){return 0!=p[this.ptr+12|0]},this.set_rethrown=function(e){e=e?1:0,p[this.ptr+13|0]=e},this.get_rethrown=function(){return 0!=p[this.ptr+13|0]},this.init=function(e,t){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(t)},this.set_adjusted_ptr=function(e){v[this.ptr+16>>2]=e},this.get_adjusted_ptr=function(){return v[this.ptr+16>>2]},this.get_exception_ptr=function(){if(Ot(this.get_type()))return v[this.excPtr>>2];var e=this.get_adjusted_ptr();return 0!==e?e:this.excPtr}}var $=e=>{var t=B;if(!t)return At(0),0;var n=new F(t);n.set_adjusted_ptr(t);var a=n.get_type();if(!a)return At(0),t;for(var i in e){var r=e[i];if(0===r||r===a)break;var o=n.ptr+16;if(Nt(r,a,o))return At(r),t}return At(a),t},V={},U=e=>{for(;e.length;){var t=e.pop();e.pop()(t)}};function H(e){return this.fromWireType(_[e>>2])}var W,G,Y,K={},Q={},Z={},J=e=>{throw new W(e)},X=(e,t,n)=>{function a(t){var a=n(t);a.length!==e.length&&J("Mismatched type converter count");for(var i=0;i{Q.hasOwnProperty(e)?i[t]=Q[e]:(r.push(e),K.hasOwnProperty(e)||(K[e]=[]),K[e].push(()=>{i[t]=Q[e],++o===r.length&&a(i)}))}),0===r.length&&a(i)},ee=e=>{for(var t="",n=e;f[n];)t+=G[f[n++]];return t},te=e=>{throw new Y(e)};function ne(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!("argPackAdvance"in t))throw new TypeError("registerType registeredInstance requires argPackAdvance");return function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};var a=t.name;if(e||te(`type "${a}" must have a positive integer typeid pointer`),Q.hasOwnProperty(e)){if(n.ignoreDuplicateRegistrations)return;te(`Cannot register type '${a}' twice`)}if(Q[e]=t,delete Z[e],K.hasOwnProperty(e)){var i=K[e];delete K[e],i.forEach(e=>e())}}(e,t,n)}var ae,ie=8,re=e=>({count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}),oe=e=>{te(e.$$.ptrType.registeredClass.name+" instance already deleted")},se=!1,le=e=>{},ue=e=>{e.count.value-=1,0===e.count.value&&(e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)})(e)},ce=(e,t,n)=>{if(t===n)return e;if(void 0===n.baseClass)return null;var a=ce(e,t,n.baseClass);return null===a?null:n.downcast(a)},de={},he=()=>Object.keys(_e).length,pe=()=>{var e=[];for(var t in _e)_e.hasOwnProperty(t)&&e.push(_e[t]);return e},fe=[],me=()=>{for(;fe.length;){var e=fe.pop();e.$$.deleteScheduled=!1,e.delete()}},ge=e=>{ae=e,fe.length&&ae&&ae(me)},_e={},ve=(e,t)=>(t=((e,t)=>{for(void 0===t&&te("ptr should not be undefined");e.baseClass;)t=e.upcast(t),e=e.baseClass;return t})(e,t),_e[t]),be=(e,t)=>((!t.ptrType||!t.ptr)&&J("makeClassHandle requires ptr and ptrType"),!!t.smartPtrType!=!!t.smartPtr&&J("Both smartPtrType and smartPtr must be specified"),t.count={value:1},we(Object.create(e,{$$:{value:t,writable:!0}})));function ye(e){var t=this.getPointee(e);if(!t)return this.destructor(e),null;var n=ve(this.registeredClass,t);if(void 0!==n){if(0===n.$$.count.value)return n.$$.ptr=t,n.$$.smartPtr=e,n.clone();var a=n.clone();return this.destructor(e),a}function i(){return this.isSmartPointer?be(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:e}):be(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var r,o=this.registeredClass.getActualType(t),s=de[o];if(!s)return i.call(this);r=this.isConst?s.constPointerType:s.pointerType;var l=ce(t,this.registeredClass,r.registeredClass);return null===l?i.call(this):this.isSmartPointer?be(r.registeredClass.instancePrototype,{ptrType:r,ptr:l,smartPtrType:this,smartPtr:e}):be(r.registeredClass.instancePrototype,{ptrType:r,ptr:l})}var we=e=>typeof FinalizationRegistry>"u"?(we=e=>e,e):(se=new FinalizationRegistry(e=>{ue(e.$$)}),le=e=>se.unregister(e),(we=e=>{var t=e.$$;if(t.smartPtr){var n={$$:t};se.register(e,n,e)}return e})(e));function ke(){}var xe=(e,t)=>Object.defineProperty(t,"name",{value:e}),Se=(e,t,n)=>{if(void 0===e[t].overloadTable){var a=e[t];e[t]=function(){return e[t].overloadTable.hasOwnProperty(arguments.length)||te(`Function '${n}' called with an invalid number of arguments (${arguments.length}) - expects one of (${e[t].overloadTable})!`),e[t].overloadTable[arguments.length].apply(this,arguments)},e[t].overloadTable=[],e[t].overloadTable[a.argCount]=a}},Ce=(e,t,n)=>{a.hasOwnProperty(e)?((void 0===n||void 0!==a[e].overloadTable&&void 0!==a[e].overloadTable[n])&&te(`Cannot register public name '${e}' twice`),Se(a,e,e),a.hasOwnProperty(n)&&te(`Cannot register multiple overloads of a function with the same number of arguments (${n})!`),a[e].overloadTable[n]=t):(a[e]=t,void 0!==n&&(a[e].numArguments=n))};function Te(e,t,n,a,i,r,o,s){this.name=e,this.constructor=t,this.instancePrototype=n,this.rawDestructor=a,this.baseClass=i,this.getActualType=r,this.upcast=o,this.downcast=s,this.pureVirtualFunctions=[]}var Ee=(e,t,n)=>{for(;t!==n;)t.upcast||te(`Expected null or instance of ${n.name}, got an instance of ${t.name}`),e=t.upcast(e),t=t.baseClass;return e};function Pe(e,t){if(null===t)return this.isReference&&te(`null is not a valid ${this.name}`),0;t.$$||te(`Cannot pass "${Je(t)}" as a ${this.name}`),t.$$.ptr||te(`Cannot pass deleted object as a pointer of type ${this.name}`);var n=t.$$.ptrType.registeredClass;return Ee(t.$$.ptr,n,this.registeredClass)}function Ae(e,t){var n;if(null===t)return this.isReference&&te(`null is not a valid ${this.name}`),this.isSmartPointer?(n=this.rawConstructor(),null!==e&&e.push(this.rawDestructor,n),n):0;(!t||!t.$$)&&te(`Cannot pass "${Je(t)}" as a ${this.name}`),t.$$.ptr||te(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&t.$$.ptrType.isConst&&te(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);var a=t.$$.ptrType.registeredClass;if(n=Ee(t.$$.ptr,a,this.registeredClass),this.isSmartPointer)switch(void 0===t.$$.smartPtr&&te("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?n=t.$$.smartPtr:te(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:n=t.$$.smartPtr;break;case 2:if(t.$$.smartPtrType===this)n=t.$$.smartPtr;else{var i=t.clone();n=this.rawShare(n,Ke.toHandle(()=>i.delete())),null!==e&&e.push(this.rawDestructor,n)}break;default:te("Unsupporting sharing policy")}return n}function Me(e,t){if(null===t)return this.isReference&&te(`null is not a valid ${this.name}`),0;t.$$||te(`Cannot pass "${Je(t)}" as a ${this.name}`),t.$$.ptr||te(`Cannot pass deleted object as a pointer of type ${this.name}`),t.$$.ptrType.isConst&&te(`Cannot convert argument of type ${t.$$.ptrType.name} to parameter type ${this.name}`);var n=t.$$.ptrType.registeredClass;return Ee(t.$$.ptr,n,this.registeredClass)}function Le(e){return this.fromWireType(v[e>>2])}function Re(e,t,n,a,i,r,o,s,l,u,c){this.name=e,this.registeredClass=t,this.isReference=n,this.isConst=a,this.isSmartPointer=i,this.pointeeType=r,this.sharingPolicy=o,this.rawGetPointee=s,this.rawConstructor=l,this.rawShare=u,this.rawDestructor=c,i||void 0!==t.baseClass?this.toWireType=Ae:a?(this.toWireType=Pe,this.destructorFunction=null):(this.toWireType=Me,this.destructorFunction=null)}var ze,Ne,Oe=(e,t,n)=>{a.hasOwnProperty(e)||J("Replacing nonexistant public symbol"),void 0!==a[e].overloadTable&&void 0!==n?a[e].overloadTable[n]=t:(a[e]=t,a[e].argCount=n)},Ie=[],qe=e=>{var t=Ie[e];return t||(e>=Ie.length&&(Ie.length=e+1),Ie[e]=t=ze.get(e)),t},De=(e,t,n)=>e.includes("j")?((e,t,n)=>{var i=a["dynCall_"+e];return n&&n.length?i.apply(null,[t].concat(n)):i.call(null,t)})(e,t,n):qe(t).apply(null,n),je=(e,t)=>{var n=(e=ee(e)).includes("j")?((e,t)=>{var n=[];return function(){return n.length=0,Object.assign(n,arguments),De(e,t,n)}})(e,t):qe(t);return"function"!=typeof n&&te(`unknown function pointer with signature ${e}: ${t}`),n},Be=e=>{var t=Et(e),n=ee(t);return Ct(t),n},Fe=(e,t)=>{var n=[],a={};throw t.forEach(function e(t){if(!a[t]&&!Q[t]){if(Z[t])return void Z[t].forEach(e);n.push(t),a[t]=!0}}),new Ne(`${e}: `+n.map(Be).join([", "]))},$e=(e,t)=>{for(var n=[],a=0;a>2]);return n};function Ve(e,t,n,a,i,r){var o=t.length;o<2&&te("argTypes array size mismatch! Must at least get return value and 'this' types!");var s=null!==t[1]&&null!==n,l=function(e){for(var t=1;t{const t=(e=e.trim()).indexOf("(");return-1!==t?e.substr(0,t):e};function He(){this.allocated=[void 0],this.freelist=[]}var We=new He,Ge=e=>{e>=We.reserved&&0===--We.get(e).refcount&&We.free(e)},Ye=()=>{for(var e=0,t=We.reserved;t(e||te("Cannot use deleted val. handle = "+e),We.get(e).value),toHandle:e=>{switch(e){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:return We.allocate({refcount:1,value:e})}}},Qe=(e,t,n)=>{switch(t){case 1:return n?function(e){return this.fromWireType(p[0|e])}:function(e){return this.fromWireType(f[0|e])};case 2:return n?function(e){return this.fromWireType(m[e>>1])}:function(e){return this.fromWireType(g[e>>1])};case 4:return n?function(e){return this.fromWireType(_[e>>2])}:function(e){return this.fromWireType(v[e>>2])};default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},Ze=(e,t)=>{var n=Q[e];return void 0===n&&te(t+" has unknown type "+Be(e)),n},Je=e=>{if(null===e)return"null";var t=typeof e;return"object"===t||"array"===t||"function"===t?e.toString():""+e},Xe=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(b[e>>2])};case 8:return function(e){return this.fromWireType(y[e>>3])};default:throw new TypeError(`invalid float width (${t}): ${e}`)}},et=(e,t,n)=>{switch(t){case 1:return n?e=>p[0|e]:e=>f[0|e];case 2:return n?e=>m[e>>1]:e=>g[e>>1];case 4:return n?e=>_[e>>2]:e=>v[e>>2];default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},tt=(e,t,n,a)=>{if(!(a>0))return 0;for(var i=n,r=n+a-1,o=0;o=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),s<=127){if(n>=r)break;t[n++]=s}else if(s<=2047){if(n+1>=r)break;t[n++]=192|s>>6,t[n++]=128|63&s}else if(s<=65535){if(n+2>=r)break;t[n++]=224|s>>12,t[n++]=128|s>>6&63,t[n++]=128|63&s}else{if(n+3>=r)break;t[n++]=240|s>>18,t[n++]=128|s>>12&63,t[n++]=128|s>>6&63,t[n++]=128|63&s}}return t[n]=0,n-i},nt=e=>{for(var t=0,n=0;n=55296&&a<=57343?(t+=4,++n):t+=3}return t},at=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,it=(e,t)=>e?((e,t,n)=>{for(var a=t+n,i=t;e[i]&&!(i>=a);)++i;if(i-t>16&&e.buffer&&at)return at.decode(e.subarray(t,i));for(var r="";t>10,56320|1023&u)}}else r+=String.fromCharCode((31&o)<<6|s)}else r+=String.fromCharCode(o)}return r})(f,e,t):"",rt=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0,ot=(e,t)=>{for(var n=e,a=n>>1,i=a+t/2;!(a>=i)&&g[a];)++a;if((n=a<<1)-e>32&&rt)return rt.decode(f.subarray(e,n));for(var r="",o=0;!(o>=t/2);++o){var s=m[e+2*o>>1];if(0==s)break;r+=String.fromCharCode(s)}return r},st=(e,t,n)=>{var a;if(null!==(a=n)&&void 0!==a||(n=2147483647),n<2)return 0;for(var i=t,r=(n-=2)<2*e.length?n/2:e.length,o=0;o>1]=s,t+=2}return m[t>>1]=0,t-i},lt=e=>2*e.length,ut=(e,t)=>{for(var n=0,a="";!(n>=t/4);){var i=_[e+4*n>>2];if(0==i)break;if(++n,i>=65536){var r=i-65536;a+=String.fromCharCode(55296|r>>10,56320|1023&r)}else a+=String.fromCharCode(i)}return a},ct=(e,t,n)=>{var a;if(null!==(a=n)&&void 0!==a||(n=2147483647),n<4)return 0;for(var i=t,r=i+n-4,o=0;o=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),_[t>>2]=s,(t+=4)+4>r)break}return _[t>>2]=0,t-i},dt=e=>{for(var t=0,n=0;n=55296&&a<=57343&&++n,t+=4}return t},ht=[],pt={},ft=()=>{if("object"==typeof globalThis)return globalThis;function e(e){e.$$$embind_global$$$=e;var t="object"==typeof $$$embind_global$$$&&e.$$$embind_global$$$==e;return t||delete e.$$$embind_global$$$,t}if("object"==typeof $$$embind_global$$$||("object"==typeof global&&e(global)?$$$embind_global$$$=global:"object"==typeof self&&e(self)&&($$$embind_global$$$=self),"object"==typeof $$$embind_global$$$))return $$$embind_global$$$;throw Error("unable to get global object.")},mt=Reflect.construct,gt=e=>{var t=(e-h.buffer.byteLength+65535)/65536;try{return h.grow(t),k(),1}catch(e){}},_t={},vt=()=>{if(!vt.strings){var e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:r||"./this.program"};for(var t in _t)void 0===_t[t]?delete e[t]:e[t]=_t[t];var n=[];for(var t in e)n.push(`${t}=${e[t]}`);vt.strings=n}return vt.strings},bt=e=>e%4==0&&(e%100!=0||e%400==0),yt=[31,29,31,30,31,30,31,31,30,31,30,31],wt=[31,28,31,30,31,30,31,31,30,31,30,31],kt=(e,t,n,a)=>{var i=v[a+40>>2],r={tm_sec:_[a>>2],tm_min:_[a+4>>2],tm_hour:_[a+8>>2],tm_mday:_[a+12>>2],tm_mon:_[a+16>>2],tm_year:_[a+20>>2],tm_wday:_[a+24>>2],tm_yday:_[a+28>>2],tm_isdst:_[a+32>>2],tm_gmtoff:_[a+36>>2],tm_zone:i?it(i):""},o=it(n),s={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var l in s)o=o.replace(new RegExp(l,"g"),s[l]);var u=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],c=["January","February","March","April","May","June","July","August","September","October","November","December"];function d(e,t,n){for(var a="number"==typeof e?e.toString():e||"";a.length0?1:0}var a;return 0===(a=n(e.getFullYear()-t.getFullYear()))&&0===(a=n(e.getMonth()-t.getMonth()))&&(a=n(e.getDate()-t.getDate())),a}function m(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function g(e){var t=((e,t)=>{for(var n=new Date(e.getTime());t>0;){var a=bt(n.getFullYear()),i=n.getMonth(),r=(a?yt:wt)[i];if(!(t>r-n.getDate()))return n.setDate(n.getDate()+t),n;t-=r-n.getDate()+1,n.setDate(1),i<11?n.setMonth(i+1):(n.setMonth(0),n.setFullYear(n.getFullYear()+1))}return n})(new Date(e.tm_year+1900,0,1),e.tm_yday),n=new Date(t.getFullYear(),0,4),a=new Date(t.getFullYear()+1,0,4),i=m(n),r=m(a);return f(i,t)<=0?f(r,t)<=0?t.getFullYear()+1:t.getFullYear():t.getFullYear()-1}var b={"%a":e=>u[e.tm_wday].substring(0,3),"%A":e=>u[e.tm_wday],"%b":e=>c[e.tm_mon].substring(0,3),"%B":e=>c[e.tm_mon],"%C":e=>h((e.tm_year+1900)/100|0,2),"%d":e=>h(e.tm_mday,2),"%e":e=>d(e.tm_mday,2," "),"%g":e=>g(e).toString().substring(2),"%G":e=>g(e),"%H":e=>h(e.tm_hour,2),"%I":e=>{var t=e.tm_hour;return 0==t?t=12:t>12&&(t-=12),h(t,2)},"%j":e=>h(e.tm_mday+((e,t)=>{for(var n=0,a=0;a<=t;n+=e[a++]);return n})(bt(e.tm_year+1900)?yt:wt,e.tm_mon-1),3),"%m":e=>h(e.tm_mon+1,2),"%M":e=>h(e.tm_min,2),"%n":()=>"\n","%p":e=>e.tm_hour>=0&&e.tm_hour<12?"AM":"PM","%S":e=>h(e.tm_sec,2),"%t":()=>"\t","%u":e=>e.tm_wday||7,"%U":e=>{var t=e.tm_yday+7-e.tm_wday;return h(Math.floor(t/7),2)},"%V":e=>{var t=Math.floor((e.tm_yday+7-(e.tm_wday+6)%7)/7);if((e.tm_wday+371-e.tm_yday-2)%7<=2&&t++,t){if(53==t){var n=(e.tm_wday+371-e.tm_yday)%7;4!=n&&(3!=n||!bt(e.tm_year))&&(t=1)}}else{t=52;var a=(e.tm_wday+7-e.tm_yday-1)%7;(4==a||5==a&&bt(e.tm_year%400-1))&&t++}return h(t,2)},"%w":e=>e.tm_wday,"%W":e=>{var t=e.tm_yday+7-(e.tm_wday+6)%7;return h(Math.floor(t/7),2)},"%y":e=>(e.tm_year+1900).toString().substring(2),"%Y":e=>e.tm_year+1900,"%z":e=>{var t=e.tm_gmtoff;return(t>=0?"+":"-")+("0000"+(t=(t=Math.abs(t)/60)/60*100+t%60)).slice(-4)},"%Z":e=>e.tm_zone,"%%":()=>"%"};for(var l in o=o.replace(/%%/g,"\0\0"),b)o.includes(l)&&(o=o.replace(new RegExp(l,"g"),b[l](r)));var y=function(e){var t=nt(e)+1,n=new Array(t);return tt(e,n,0,n.length),n}(o=o.replace(/\0\0/g,"%"));return y.length>t?0:(((e,t)=>{p.set(e,t)})(y,e),y.length-1)};W=a.InternalError=class extends Error{constructor(e){super(e),this.name="InternalError"}},(()=>{for(var e=new Array(256),t=0;t<256;++t)e[t]=String.fromCharCode(t);G=e})(),Y=a.BindingError=class extends Error{constructor(e){super(e),this.name="BindingError"}},Object.assign(ke.prototype,{isAliasOf(e){if(!(this instanceof ke&&e instanceof ke))return!1;var t=this.$$.ptrType.registeredClass,n=this.$$.ptr;e.$$=e.$$;for(var a=e.$$.ptrType.registeredClass,i=e.$$.ptr;t.baseClass;)n=t.upcast(n),t=t.baseClass;for(;a.baseClass;)i=a.upcast(i),a=a.baseClass;return t===a&&n===i},clone(){if(this.$$.ptr||oe(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=we(Object.create(Object.getPrototypeOf(this),{$$:{value:re(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e},delete(){this.$$.ptr||oe(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&te("Object already scheduled for deletion"),le(this),ue(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||oe(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&te("Object already scheduled for deletion"),fe.push(this),1===fe.length&&ae&&ae(me),this.$$.deleteScheduled=!0,this}}),a.getInheritedInstanceCount=he,a.getLiveInheritedInstances=pe,a.flushPendingDeletes=me,a.setDelayFunction=ge,Object.assign(Re.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){var t;null===(t=this.rawDestructor)||void 0===t||t.call(this,e)},argPackAdvance:ie,readValueFromPointer:Le,deleteObject(e){null!==e&&e.delete()},fromWireType:ye}),Ne=a.UnboundTypeError=((e,t)=>{var n=xe(t,function(e){this.name=t,this.message=e;var n=new Error(e).stack;void 0!==n&&(this.stack=this.toString()+"\n"+n.replace(/^Error(:[^\n]*)?\n/,""))});return n.prototype=Object.create(e.prototype),n.prototype.constructor=n,n.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`},n})(Error,"UnboundTypeError"),Object.assign(He.prototype,{get(e){return this.allocated[e]},has(e){return void 0!==this.allocated[e]},allocate(e){var t=this.freelist.pop()||this.allocated.length;return this.allocated[t]=e,t},free(e){this.allocated[e]=void 0,this.freelist.push(e)}}),We.allocated.push({value:void 0},{value:null},{value:!0},{value:!1}),We.reserved=We.allocated.length,a.count_emval_handles=Ye;var xt={s:e=>{var t=new F(e);return t.get_caught()||(t.set_caught(!0),j--),t.set_rethrown(!1),D.push(t),zt(t.excPtr),t.get_exception_ptr()},u:()=>{Pt(0,0);var e=D.pop();Rt(e.excPtr),B=0},b:()=>$([]),g:e=>$([e]),q:(e,t)=>$([e,t]),J:()=>{var e=D.pop();e||M("no exception to throw");var t=e.excPtr;throw e.get_rethrown()||(D.push(e),e.set_rethrown(!0),e.set_caught(!1),j++),B=t},f:(e,t,n)=>{throw new F(e).init(t,n),j++,B=e},V:()=>j,d:e=>{throw B||(B=e),B},da:e=>{var t=V[e];delete V[e];var n=t.rawConstructor,a=t.rawDestructor,i=t.fields,r=i.map(e=>e.getterReturnType).concat(i.map(e=>e.setterArgumentType));X([e],r,e=>{var r={};return i.forEach((t,n)=>{var a=t.fieldName,o=e[n],s=t.getter,l=t.getterContext,u=e[n+i.length],c=t.setter,d=t.setterContext;r[a]={read:e=>o.fromWireType(s(l,e)),write:(e,t)=>{var n=[];c(d,e,u.toWireType(n,t)),U(n)}}}),[{name:t.name,fromWireType:e=>{var t={};for(var n in r)t[n]=r[n].read(e);return a(e),t},toWireType:(e,t)=>{for(var i in r)if(!(i in t))throw new TypeError(`Missing field: "${i}"`);var o=n();for(i in r)r[i].write(o,t[i]);return null!==e&&e.push(a,o),o},argPackAdvance:ie,readValueFromPointer:H,destructorFunction:a}]})},Q:(e,t,n,a,i)=>{},_:(e,t,n,a)=>{ne(e,{name:t=ee(t),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?n:a},argPackAdvance:ie,readValueFromPointer:function(e){return this.fromWireType(f[e])},destructorFunction:null})},ca:(e,t,n,a,i,r,o,s,l,u,c,d,h)=>{c=ee(c),r=je(i,r),s&&(s=je(o,s)),u&&(u=je(l,u)),h=je(d,h);var p=(e=>{if(void 0===e)return"_unknown";var t=(e=e.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return t>=48&&t<=57?`_${e}`:e})(c);Ce(p,function(){Fe(`Cannot construct ${c} due to unbound types`,[a])}),X([e,t,n],a?[a]:[],function(t){var n,i;t=t[0],i=a?(n=t.registeredClass).instancePrototype:ke.prototype;var o=xe(c,function(){if(Object.getPrototypeOf(this)!==l)throw new Y("Use 'new' to construct "+c);if(void 0===m.constructor_body)throw new Y(c+" has no accessible constructor");var e=m.constructor_body[arguments.length];if(void 0===e)throw new Y(`Tried to invoke ctor of ${c} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(m.constructor_body).toString()}) parameters instead!`);return e.apply(this,arguments)}),l=Object.create(i,{constructor:{value:o}});o.prototype=l;var d,f,m=new Te(c,o,l,h,n,r,s,u);m.baseClass&&(null!==(f=(d=m.baseClass).__derivedClasses)&&void 0!==f||(d.__derivedClasses=[]),m.baseClass.__derivedClasses.push(m));var g=new Re(c,m,!0,!1,!1),_=new Re(c+"*",m,!1,!1,!1),v=new Re(c+" const*",m,!1,!0,!1);return de[e]={pointerType:_,constPointerType:v},Oe(p,o),[g,_,v]})},ba:(e,t,n,a,i,r)=>{var o=$e(t,n);i=je(a,i),X([],[e],function(e){var n=`constructor ${(e=e[0]).name}`;if(void 0===e.registeredClass.constructor_body&&(e.registeredClass.constructor_body=[]),void 0!==e.registeredClass.constructor_body[t-1])throw new Y(`Cannot register multiple constructors with identical number of parameters (${t-1}) for class '${e.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return e.registeredClass.constructor_body[t-1]=()=>{Fe(`Cannot construct ${e.name} due to unbound types`,o)},X([],o,a=>(a.splice(1,0,null),e.registeredClass.constructor_body[t-1]=Ve(n,a,null,i,r),[])),[]})},w:(e,t,n,a,i,r,o,s,l)=>{var u=$e(n,a);t=ee(t),t=Ue(t),r=je(i,r),X([],[e],function(e){var a=`${(e=e[0]).name}.${t}`;function i(){Fe(`Cannot call ${a} due to unbound types`,u)}t.startsWith("@@")&&(t=Symbol[t.substring(2)]),s&&e.registeredClass.pureVirtualFunctions.push(t);var l=e.registeredClass.instancePrototype,c=l[t];return void 0===c||void 0===c.overloadTable&&c.className!==e.name&&c.argCount===n-2?(i.argCount=n-2,i.className=e.name,l[t]=i):(Se(l,t,a),l[t].overloadTable[n-2]=i),X([],u,function(i){var s=Ve(a,i,e,r,o);return void 0===l[t].overloadTable?(s.argCount=n-2,l[t]=s):l[t].overloadTable[n-2]=s,[]}),[]})},Y:(e,t)=>{ne(e,{name:t=ee(t),fromWireType:e=>{var t=Ke.toValue(e);return Ge(e),t},toWireType:(e,t)=>Ke.toHandle(t),argPackAdvance:ie,readValueFromPointer:H,destructorFunction:null})},x:(e,t,n,a)=>{function i(){}t=ee(t),i.values={},ne(e,{name:t,constructor:i,fromWireType:function(e){return this.constructor.values[e]},toWireType:(e,t)=>t.value,argPackAdvance:ie,readValueFromPointer:Qe(t,n,a),destructorFunction:null}),Ce(t,i)},h:(e,t,n)=>{var a=Ze(e,"enum");t=ee(t);var i=a.constructor,r=Object.create(a.constructor.prototype,{value:{value:n},constructor:{value:xe(`${a.name}_${t}`,function(){})}});i.values[n]=r,i[t]=r},L:(e,t,n)=>{ne(e,{name:t=ee(t),fromWireType:e=>e,toWireType:(e,t)=>t,argPackAdvance:ie,readValueFromPointer:Xe(t,n),destructorFunction:null})},M:(e,t,n,a,i,r,o)=>{var s=$e(t,n);e=ee(e),e=Ue(e),i=je(a,i),Ce(e,function(){Fe(`Cannot call ${e} due to unbound types`,s)},t-1),X([],s,function(n){var a=[n[0],null].concat(n.slice(1));return Oe(e,Ve(e,a,null,i,r),t-1),[]})},t:(e,t,n,a,i)=>{t=ee(t);var r=e=>e;if(0===a){var o=32-8*n;r=e=>e<>>o}var s=t.includes("unsigned");ne(e,{name:t,fromWireType:r,toWireType:s?function(e,t){return this.name,t>>>0}:function(e,t){return this.name,t},argPackAdvance:ie,readValueFromPointer:et(t,n,0!==a),destructorFunction:null})},o:(e,t,n)=>{var a=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][t];function i(e){var t=v[e>>2],n=v[e+4>>2];return new a(p.buffer,n,t)}ne(e,{name:n=ee(n),fromWireType:i,argPackAdvance:ie,readValueFromPointer:i},{ignoreDuplicateRegistrations:!0})},K:(e,t)=>{var n="std::string"===(t=ee(t));ne(e,{name:t,fromWireType(e){var t,a=v[e>>2],i=e+4;if(n)for(var r=i,o=0;o<=a;++o){var s=i+o;if(o==a||0==f[s]){var l=it(r,s-r);void 0===t?t=l:(t+="\0",t+=l),r=s+1}}else{var u=new Array(a);for(o=0;o>2]=a,n&&i)((e,t,n)=>{tt(e,f,t,n)})(t,o,a+1);else if(i)for(var s=0;s255&&(Ct(o),te("String has UTF-16 code units that do not fit in 8 bits")),f[o+s]=l}else for(s=0;s{var a,i,r,o,s;n=ee(n),2===t?(a=ot,i=st,o=lt,r=()=>g,s=1):4===t&&(a=ut,i=ct,o=dt,r=()=>v,s=2),ne(e,{name:n,fromWireType:e=>{for(var n,i=v[e>>2],o=r(),l=e+4,u=0;u<=i;++u){var c=e+4+u*t;if(u==i||0==o[c>>s]){var d=a(l,c-l);void 0===n?n=d:(n+="\0",n+=d),l=c+t}}return Ct(e),n},toWireType:(e,a)=>{"string"!=typeof a&&te(`Cannot pass non-string to C++ string type ${n}`);var r=o(a),l=Tt(4+r+t);return v[l>>2]=r>>s,i(a,l+4,r+t),null!==e&&e.push(Ct,l),l},argPackAdvance:ie,readValueFromPointer:H,destructorFunction(e){Ct(e)}})},A:(e,t,n,a,i,r)=>{V[e]={name:ee(t),rawConstructor:je(n,a),rawDestructor:je(i,r),fields:[]}},ea:(e,t,n,a,i,r,o,s,l,u)=>{V[e].fields.push({fieldName:ee(t),getterReturnType:n,getter:je(a,i),getterContext:r,setterArgumentType:o,setter:je(s,l),setterContext:u})},$:(e,t)=>{ne(e,{isVoid:!0,name:t=ee(t),argPackAdvance:0,fromWireType:()=>{},toWireType:(e,t)=>{}})},R:(e,t,n,a)=>(e=ht[e])(null,t=Ke.toValue(t),n,a),ha:Ge,fa:e=>0===e?Ke.toHandle(ft()):(e=(e=>{var t=pt[e];return void 0===t?ee(e):t})(e),Ke.toHandle(ft()[e])),Z:(e,t,n)=>{var a=((e,t)=>{for(var n=new Array(e),a=0;a>2],"parameter "+a);return n})(e,t),i=a.shift();e--;var r=new Array(e),o=`methodCaller<(${a.map(e=>e.name).join(", ")}) => ${i.name}>`;return(e=>{var t=ht.length;return ht.push(e),t})(xe(o,(t,o,s,l)=>{for(var u=0,c=0;c{var a=[],i=e.toWireType(a,n);return a.length&&(v[t>>2]=Ke.toHandle(a)),i})(i,s,d)}))},N:e=>{e>4&&(We.get(e).refcount+=1)},O:e=>{var t=Ke.toValue(e);U(t),Ge(e)},aa:(e,t)=>{var n=(e=Ze(e,"_emval_take_value")).readValueFromPointer(t);return Ke.toHandle(n)},B:()=>{M("")},X:(e,t,n)=>f.copyWithin(e,t,t+n),W:e=>{var t=f.length,n=2147483648;if((e>>>=0)>n)return!1;for(var a=(e,t)=>e+(t-e%t)%t,i=1;i<=4;i*=2){var r=t*(1+.2/i);r=Math.min(r,e+100663296);var o=Math.min(n,a(Math.max(e,r),65536));if(gt(o))return!0}return!1},T:(e,t)=>{var n=0;return vt().forEach((a,i)=>{var r=t+n;v[e+4*i>>2]=r,((e,t)=>{for(var n=0;n{var n=vt();v[e>>2]=n.length;var a=0;return n.forEach(e=>a+=e.length+1),v[t>>2]=a,0},E:function(e,t,n,a){var i=Mt();try{return qe(e)(t,n,a)}catch(e){if(Lt(i),e!==e+0)throw e;Pt(1,0)}},D:function(e,t,n,a,i){var r=Mt();try{return qe(e)(t,n,a,i)}catch(e){if(Lt(r),e!==e+0)throw e;Pt(1,0)}},F:function(e,t,n,a){var i=Mt();try{return qe(e)(t,n,a)}catch(e){if(Lt(i),e!==e+0)throw e;Pt(1,0)}},n:function(e){var t=Mt();try{return qe(e)()}catch(e){if(Lt(t),e!==e+0)throw e;Pt(1,0)}},a:function(e,t){var n=Mt();try{return qe(e)(t)}catch(e){if(Lt(n),e!==e+0)throw e;Pt(1,0)}},e:function(e,t,n){var a=Mt();try{return qe(e)(t,n)}catch(e){if(Lt(a),e!==e+0)throw e;Pt(1,0)}},m:function(e,t,n,a){var i=Mt();try{return qe(e)(t,n,a)}catch(e){if(Lt(i),e!==e+0)throw e;Pt(1,0)}},k:function(e,t,n,a,i){var r=Mt();try{return qe(e)(t,n,a,i)}catch(e){if(Lt(r),e!==e+0)throw e;Pt(1,0)}},H:function(e,t,n,a,i,r){var o=Mt();try{return qe(e)(t,n,a,i,r)}catch(e){if(Lt(o),e!==e+0)throw e;Pt(1,0)}},v:function(e,t,n,a,i,r,o){var s=Mt();try{return qe(e)(t,n,a,i,r,o)}catch(e){if(Lt(s),e!==e+0)throw e;Pt(1,0)}},G:function(e,t,n,a,i,r,o,s){var l=Mt();try{return qe(e)(t,n,a,i,r,o,s)}catch(e){if(Lt(l),e!==e+0)throw e;Pt(1,0)}},z:function(e,t,n,a,i,r,o,s,l,u,c,d){var h=Mt();try{return qe(e)(t,n,a,i,r,o,s,l,u,c,d)}catch(e){if(Lt(h),e!==e+0)throw e;Pt(1,0)}},P:function(e,t,n,a,i){var r=Mt();try{return qt(e,t,n,a,i)}catch(e){if(Lt(r),e!==e+0)throw e;Pt(1,0)}},l:function(e){var t=Mt();try{qe(e)()}catch(e){if(Lt(t),e!==e+0)throw e;Pt(1,0)}},j:function(e,t){var n=Mt();try{qe(e)(t)}catch(e){if(Lt(n),e!==e+0)throw e;Pt(1,0)}},c:function(e,t,n){var a=Mt();try{qe(e)(t,n)}catch(e){if(Lt(a),e!==e+0)throw e;Pt(1,0)}},p:function(e,t,n,a){var i=Mt();try{qe(e)(t,n,a)}catch(e){if(Lt(i),e!==e+0)throw e;Pt(1,0)}},I:function(e,t,n,a,i){var r=Mt();try{qe(e)(t,n,a,i)}catch(e){if(Lt(r),e!==e+0)throw e;Pt(1,0)}},r:function(e,t,n,a,i,r,o,s){var l=Mt();try{qe(e)(t,n,a,i,r,o,s)}catch(e){if(Lt(l),e!==e+0)throw e;Pt(1,0)}},i:function(e,t,n,a,i,r,o,s,l,u,c){var d=Mt();try{qe(e)(t,n,a,i,r,o,s,l,u,c)}catch(e){if(Lt(d),e!==e+0)throw e;Pt(1,0)}},y:function(e,t,n,a,i,r,o,s,l,u,c,d,h,p,f,m){var g=Mt();try{qe(e)(t,n,a,i,r,o,s,l,u,c,d,h,p,f,m)}catch(e){if(Lt(g),e!==e+0)throw e;Pt(1,0)}},ga:e=>e,S:(e,t,n,a,i)=>kt(e,t,n,a)},St=function(){var e={a:xt};function t(e,t){return St=e.exports,h=St.ia,k(),ze=St.ma,function(e){S.unshift(e)}(St.ja),function(){var e;if(P--,null===(e=a.monitorRunDependencies)||void 0===e||e.call(a,P),0==P&&A){var t=A;A=null,t()}}(),St}if(function(){var e;P++,null===(e=a.monitorRunDependencies)||void 0===e||e.call(a,P)}(),a.instantiateWasm)try{return a.instantiateWasm(e,t)}catch(e){d(`Module.instantiateWasm callback failed with error: ${e}`),n(e)}return function(e,t,n,a){return e||"function"!=typeof WebAssembly.instantiateStreaming||z(t)||"function"!=typeof fetch?I(t,n,a):fetch(t,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,n).then(a,function(e){return d(`wasm streaming compile failed: ${e}`),d("falling back to ArrayBuffer instantiation"),I(t,n,a)}))}(c,L,e,function(e){t(e.instance)}).catch(n),{}}(),Ct=a._free=e=>(Ct=a._free=St.ka)(e),Tt=a._malloc=e=>(Tt=a._malloc=St.la)(e),Et=e=>(Et=St.na)(e),Pt=(e,t)=>(Pt=St.oa)(e,t),At=e=>(At=St.pa)(e),Mt=()=>(Mt=St.qa)(),Lt=e=>(Lt=St.ra)(e),Rt=e=>(Rt=St.sa)(e),zt=e=>(zt=St.ta)(e),Nt=(e,t,n)=>(Nt=St.ua)(e,t,n),Ot=e=>(Ot=St.va)(e);a.dynCall_viijii=(e,t,n,i,r,o,s)=>(a.dynCall_viijii=St.wa)(e,t,n,i,r,o,s);var It,qt=a.dynCall_jiiii=(e,t,n,i,r)=>(qt=a.dynCall_jiiii=St.xa)(e,t,n,i,r);function Dt(){function e(){It||(It=!0,a.calledRun=!0,!w&&(q(S),t(a),a.onRuntimeInitialized&&a.onRuntimeInitialized(),function(){if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)E(a.postRun.shift());q(C)}()))}P>0||(function(){if(a.preRun)for("function"==typeof a.preRun&&(a.preRun=[a.preRun]);a.preRun.length;)T(a.preRun.shift());q(x)}(),P>0)||(a.setStatus?(a.setStatus("Running..."),setTimeout(function(){setTimeout(function(){a.setStatus("")},1),e()},1)):e())}if(a.dynCall_iiiiij=(e,t,n,i,r,o,s)=>(a.dynCall_iiiiij=St.ya)(e,t,n,i,r,o,s),a.dynCall_iiiiijj=(e,t,n,i,r,o,s,l,u)=>(a.dynCall_iiiiijj=St.za)(e,t,n,i,r,o,s,l,u),a.dynCall_iiiiiijj=(e,t,n,i,r,o,s,l,u,c)=>(a.dynCall_iiiiiijj=St.Aa)(e,t,n,i,r,o,s,l,u,c),A=function e(){It||Dt(),It||(A=e)},a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);a.preInit.length>0;)a.preInit.pop()();return Dt(),e.ready});async function D(e,t){return async function(e,t,n=A){const a={...A,...n},i=await N(e),{size:r}=t,o=new Uint8Array(await t.arrayBuffer()),s=i._malloc(r);i.HEAPU8.set(o,s);const l=i.readBarcodesFromImage(s,r,M(i,a));i._free(s);const u=[];for(let e=0;e{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)})(this,I,void 0);try{const a=null==(t=null==e?void 0:e.formats)?void 0:t.filter(e=>"unknown"!==e);if(0===(null==a?void 0:a.length))throw new TypeError("Hint option provided, but is empty.");null==a||a.forEach(e=>{if(!o.has(e))throw new TypeError(`Failed to read the 'formats' property from 'BarcodeDetectorOptions': The provided value '${e}' is not a valid enum value of type BarcodeFormat.`)}),((e,t,a)=>{n(e,t,"write to private field"),t.set(e,a)})(this,I,null!=a?a:[]),function(e){return N(q,e)}().then(e=>{this.dispatchEvent(new CustomEvent("load",{detail:e}))}).catch(e=>{this.dispatchEvent(new CustomEvent("error",{detail:e}))})}catch(e){throw v(e,"Failed to construct 'BarcodeDetector'")}}static async getSupportedFormats(){return r.filter(e=>"unknown"!==e)}async detect(e){try{const t=await _(e);if(null===t)return[];let n;try{n=m(t)?await D(t,{tryHarder:!0,formats:a(this,I).map(e=>o.get(e))}):await j(t,{tryHarder:!0,formats:a(this,I).map(e=>o.get(e))})}catch(e){throw console.error(e),new DOMException("Barcode detection service unavailable.","NotSupportedError")}return n.map(e=>{const{topLeft:{x:t,y:n},topRight:{x:a,y:i},bottomLeft:{x:r,y:o},bottomRight:{x:l,y:u}}=e.position,c=Math.min(t,a,r,l),d=Math.min(n,i,o,u),h=Math.max(t,a,r,l),p=Math.max(n,i,o,u);return{boundingBox:new DOMRectReadOnly(c,d,h-c,p-d),rawValue:e.text,format:s(e.format),cornerPoints:[{x:t,y:n},{x:a,y:i},{x:l,y:u},{x:r,y:o}]}})}catch(e){throw v(e,"Failed to execute 'detect' on 'BarcodeDetector'")}}}I=new WeakMap;const F=(e,t,n="error")=>{let a,i;const r=new Promise((r,o)=>{a=r,i=o,e.addEventListener(t,a),e.addEventListener(n,i)});return r.finally(()=>{e.removeEventListener(t,a),e.removeEventListener(n,i)}),r},$=e=>new Promise(t=>setTimeout(t,e));class V extends Error{constructor(){super("can't process cross-origin image"),this.name="DropImageFetchError"}}class U extends Error{constructor(){super("this browser has no Stream API support"),this.name="StreamApiNotSupportedError"}}class H extends Error{constructor(){super("camera access is only permitted in secure context. Use HTTPS or localhost rather than HTTP."),this.name="InsecureContextError"}}class W extends Error{constructor(){super("Loading camera stream timed out after 6 seconds. If you are on iOS in PWA mode, this is a known issue (see https://github.com/gruhn/vue-qrcode-reader/issues/298)"),this.name="StreamLoadTimeoutError"}}let G;function Y(e){G=new B({formats:e})}const K=async(e,t=["qr_code"])=>await new B({formats:t}).detect(e),Q=async(e,t=["qr_code"])=>{const n=new B({formats:t}),a=await(async e=>{if(e.startsWith("http")&&!1===e.includes(location.host))throw new V;const t=document.createElement("img");return t.src=e,await F(t,"load"),t})(e);return await n.detect(a)};var Z={},J={};Object.defineProperty(J,"__esModule",{value:!0}),J.compactObject=function e(t){return ie(t)?Object.keys(t).reduce(function(n,a){var i=ie(t[a]),r=i?e(t[a]):t[a],o=i&&!Object.keys(r).length;return void 0===r||o?n:Object.assign(n,function(e,t,n){return t=function(e){var t=function(e,t){if("object"!==ee(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t);if("object"!==ee(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===ee(t)?t:String(t)}(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}({},a,r))},{}):t},J.deprecated=function(e,t){ne&&console.warn(e+" is deprecated, please use "+t+" instead.")};var X=J.detectBrowser=function(e){var t={browser:null,version:null};if(typeof e>"u"||!e.navigator||!e.navigator.userAgent)return t.browser="Not a browser.",t;var n=e.navigator;if(n.mozGetUserMedia)t.browser="firefox",t.version=ae(n.userAgent,/Firefox\/(\d+)\./,1);else if(n.webkitGetUserMedia||!1===e.isSecureContext&&e.webkitRTCPeerConnection)t.browser="chrome",t.version=ae(n.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else{if(!e.RTCPeerConnection||!n.userAgent.match(/AppleWebKit\/(\d+)\./))return t.browser="Not a supported browser.",t;t.browser="safari",t.version=ae(n.userAgent,/AppleWebKit\/(\d+)\./,1),t.supportsUnifiedPlan=e.RTCRtpTransceiver&&"currentDirection"in e.RTCRtpTransceiver.prototype}return t};function ee(e){return(ee="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}J.disableLog=function(e){return"boolean"!=typeof e?new Error("Argument type: "+ee(e)+". Please use a boolean."):(te=e,e?"adapter.js logging disabled":"adapter.js logging enabled")},J.disableWarnings=function(e){return"boolean"!=typeof e?new Error("Argument type: "+ee(e)+". Please use a boolean."):(ne=!e,"adapter.js deprecation warnings "+(e?"disabled":"enabled"))},J.extractVersion=ae,J.filterStats=function(e,t,n){var a=n?"outbound-rtp":"inbound-rtp",i=new Map;if(null===t)return i;var r=[];return e.forEach(function(e){"track"===e.type&&e.trackIdentifier===t.id&&r.push(e)}),r.forEach(function(t){e.forEach(function(n){n.type===a&&n.trackId===t.id&&re(e,n,i)})}),i},J.log=function(){if("object"===(typeof window>"u"?"undefined":ee(window))){if(te)return;typeof console<"u"&&"function"==typeof console.log&&console.log.apply(console,arguments)}},J.walkStats=re,J.wrapPeerConnectionEvent=function(e,t,n){if(e.RTCPeerConnection){var a=e.RTCPeerConnection.prototype,i=a.addEventListener;a.addEventListener=function(e,a){if(e!==t)return i.apply(this,arguments);var r=function(e){var t=n(e);t&&(a.handleEvent?a.handleEvent(t):a(t))};return this._eventMap=this._eventMap||{},this._eventMap[t]||(this._eventMap[t]=new Map),this._eventMap[t].set(a,r),i.apply(this,[e,r])};var r=a.removeEventListener;a.removeEventListener=function(e,n){if(e!==t||!this._eventMap||!this._eventMap[t])return r.apply(this,arguments);if(!this._eventMap[t].has(n))return r.apply(this,arguments);var a=this._eventMap[t].get(n);return this._eventMap[t].delete(n),0===this._eventMap[t].size&&delete this._eventMap[t],0===Object.keys(this._eventMap).length&&delete this._eventMap,r.apply(this,[e,a])},Object.defineProperty(a,"on"+t,{get:function(){return this["_on"+t]},set:function(e){this["_on"+t]&&(this.removeEventListener(t,this["_on"+t]),delete this["_on"+t]),e&&this.addEventListener(t,this["_on"+t]=e)},enumerable:!0,configurable:!0})}};var te=!0,ne=!0;function ae(e,t,n){var a=e.match(t);return a&&a.length>=n&&parseInt(a[n],10)}function ie(e){return"[object Object]"===Object.prototype.toString.call(e)}function re(e,t,n){!t||n.has(t.id)||(n.set(t.id,t),Object.keys(t).forEach(function(a){a.endsWith("Id")?re(e,e.get(t[a]),n):a.endsWith("Ids")&&t[a].forEach(function(t){re(e,e.get(t),n)})}))}Object.defineProperty(Z,"__esModule",{value:!0});var oe=Z.shimGetUserMedia=function(e,t){var n=e&&e.navigator;if(n.mediaDevices){var a=function(e){if("object"!==ue(e)||e.mandatory||e.optional)return e;var t={};return Object.keys(e).forEach(function(n){if("require"!==n&&"advanced"!==n&&"mediaSource"!==n){var a="object"===ue(e[n])?e[n]:{ideal:e[n]};void 0!==a.exact&&"number"==typeof a.exact&&(a.min=a.max=a.exact);var i=function(e,t){return e?e+t.charAt(0).toUpperCase()+t.slice(1):"deviceId"===t?"sourceId":t};if(void 0!==a.ideal){t.optional=t.optional||[];var r={};"number"==typeof a.ideal?(r[i("min",n)]=a.ideal,t.optional.push(r),(r={})[i("max",n)]=a.ideal,t.optional.push(r)):(r[i("",n)]=a.ideal,t.optional.push(r))}void 0!==a.exact&&"number"!=typeof a.exact?(t.mandatory=t.mandatory||{},t.mandatory[i("",n)]=a.exact):["min","max"].forEach(function(e){void 0!==a[e]&&(t.mandatory=t.mandatory||{},t.mandatory[i(e,n)]=a[e])})}}),e.advanced&&(t.optional=(t.optional||[]).concat(e.advanced)),t},i=function(e,i){if(t.version>=61)return i(e);if((e=JSON.parse(JSON.stringify(e)))&&"object"===ue(e.audio)){var r=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])};r((e=JSON.parse(JSON.stringify(e))).audio,"autoGainControl","googAutoGainControl"),r(e.audio,"noiseSuppression","googNoiseSuppression"),e.audio=a(e.audio)}if(e&&"object"===ue(e.video)){var o=e.video.facingMode;o=o&&("object"===ue(o)?o:{ideal:o});var s,l=t.version<66;if(o&&("user"===o.exact||"environment"===o.exact||"user"===o.ideal||"environment"===o.ideal)&&(!n.mediaDevices.getSupportedConstraints||!n.mediaDevices.getSupportedConstraints().facingMode||l))if(delete e.video.facingMode,"environment"===o.exact||"environment"===o.ideal?s=["back","rear"]:("user"===o.exact||"user"===o.ideal)&&(s=["front"]),s)return n.mediaDevices.enumerateDevices().then(function(t){var n=(t=t.filter(function(e){return"videoinput"===e.kind})).find(function(e){return s.some(function(t){return e.label.toLowerCase().includes(t)})});return!n&&t.length&&s.includes("back")&&(n=t[t.length-1]),n&&(e.video.deviceId=o.exact?{exact:n.deviceId}:{ideal:n.deviceId}),e.video=a(e.video),ce("chrome: "+JSON.stringify(e)),i(e)});e.video=a(e.video)}return ce("chrome: "+JSON.stringify(e)),i(e)},r=function(e){return t.version>=64?e:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[e.name]||e.name,message:e.message,constraint:e.constraint||e.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}};if(n.getUserMedia=function(e,t,a){i(e,function(e){n.webkitGetUserMedia(e,t,function(e){a&&a(r(e))})})}.bind(n),n.mediaDevices.getUserMedia){var o=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(e){return i(e,function(e){return o(e).then(function(t){if(e.audio&&!t.getAudioTracks().length||e.video&&!t.getVideoTracks().length)throw t.getTracks().forEach(function(e){e.stop()}),new DOMException("","NotFoundError");return t},function(e){return Promise.reject(r(e))})})}}}},se=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==ue(e)&&"function"!=typeof e)return{default:e};var n=le(t);if(n&&n.has(e))return n.get(e);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var o=i?Object.getOwnPropertyDescriptor(e,r):null;o&&(o.get||o.set)?Object.defineProperty(a,r,o):a[r]=e[r]}return a.default=e,n&&n.set(e,a),a}(J);function le(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(le=function(e){return e?n:t})(e)}function ue(e){return(ue="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var ce=se.log;var de={};Object.defineProperty(de,"__esModule",{value:!0});var he=de.shimGetUserMedia=function(e,t){var n=e&&e.navigator,a=e&&e.MediaStreamTrack;if(n.getUserMedia=function(e,t,a){pe.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(e).then(t,a)},!(t.version>55&&"autoGainControl"in n.mediaDevices.getSupportedConstraints())){var i=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])},r=n.mediaDevices.getUserMedia.bind(n.mediaDevices);if(n.mediaDevices.getUserMedia=function(e){return"object"===me(e)&&"object"===me(e.audio)&&(e=JSON.parse(JSON.stringify(e)),i(e.audio,"autoGainControl","mozAutoGainControl"),i(e.audio,"noiseSuppression","mozNoiseSuppression")),r(e)},a&&a.prototype.getSettings){var o=a.prototype.getSettings;a.prototype.getSettings=function(){var e=o.apply(this,arguments);return i(e,"mozAutoGainControl","autoGainControl"),i(e,"mozNoiseSuppression","noiseSuppression"),e}}if(a&&a.prototype.applyConstraints){var s=a.prototype.applyConstraints;a.prototype.applyConstraints=function(e){return"audio"===this.kind&&"object"===me(e)&&(e=JSON.parse(JSON.stringify(e)),i(e,"autoGainControl","mozAutoGainControl"),i(e,"noiseSuppression","mozNoiseSuppression")),s.apply(this,[e])}}}},pe=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==me(e)&&"function"!=typeof e)return{default:e};var n=fe(t);if(n&&n.has(e))return n.get(e);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var o=i?Object.getOwnPropertyDescriptor(e,r):null;o&&(o.get||o.set)?Object.defineProperty(a,r,o):a[r]=e[r]}return a.default=e,n&&n.set(e,a),a}(J);function fe(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(fe=function(e){return e?n:t})(e)}function me(e){return(me="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var ge={};Object.defineProperty(ge,"__esModule",{value:!0}),ge.shimAudioContext=function(e){"object"!==ye(e)||e.AudioContext||(e.AudioContext=e.webkitAudioContext)},ge.shimCallbacksAPI=function(e){if("object"===ye(e)&&e.RTCPeerConnection){var t=e.RTCPeerConnection.prototype,n=t.createOffer,a=t.createAnswer,i=t.setLocalDescription,r=t.setRemoteDescription,o=t.addIceCandidate;t.createOffer=function(e,t){var a=arguments.length>=2?arguments[2]:arguments[0],i=n.apply(this,[a]);return t?(i.then(e,t),Promise.resolve()):i},t.createAnswer=function(e,t){var n=arguments.length>=2?arguments[2]:arguments[0],i=a.apply(this,[n]);return t?(i.then(e,t),Promise.resolve()):i};var s=function(e,t,n){var a=i.apply(this,[e]);return n?(a.then(t,n),Promise.resolve()):a};t.setLocalDescription=s,s=function(e,t,n){var a=r.apply(this,[e]);return n?(a.then(t,n),Promise.resolve()):a},t.setRemoteDescription=s,s=function(e,t,n){var a=o.apply(this,[e]);return n?(a.then(t,n),Promise.resolve()):a},t.addIceCandidate=s}},ge.shimConstraints=we,ge.shimCreateOfferLegacy=function(e){var t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(e){if(e){typeof e.offerToReceiveAudio<"u"&&(e.offerToReceiveAudio=!!e.offerToReceiveAudio);var n=this.getTransceivers().find(function(e){return"audio"===e.receiver.track.kind});!1===e.offerToReceiveAudio&&n?"sendrecv"===n.direction?n.setDirection?n.setDirection("sendonly"):n.direction="sendonly":"recvonly"===n.direction&&(n.setDirection?n.setDirection("inactive"):n.direction="inactive"):!0===e.offerToReceiveAudio&&!n&&this.addTransceiver("audio",{direction:"recvonly"}),typeof e.offerToReceiveVideo<"u"&&(e.offerToReceiveVideo=!!e.offerToReceiveVideo);var a=this.getTransceivers().find(function(e){return"video"===e.receiver.track.kind});!1===e.offerToReceiveVideo&&a?"sendrecv"===a.direction?a.setDirection?a.setDirection("sendonly"):a.direction="sendonly":"recvonly"===a.direction&&(a.setDirection?a.setDirection("inactive"):a.direction="inactive"):!0===e.offerToReceiveVideo&&!a&&this.addTransceiver("video",{direction:"recvonly"})}return t.apply(this,arguments)}};var _e=ge.shimGetUserMedia=function(e){var t=e&&e.navigator;if(t.mediaDevices&&t.mediaDevices.getUserMedia){var n=t.mediaDevices,a=n.getUserMedia.bind(n);t.mediaDevices.getUserMedia=function(e){return a(we(e))}}!t.getUserMedia&&t.mediaDevices&&t.mediaDevices.getUserMedia&&(t.getUserMedia=function(e,n,a){t.mediaDevices.getUserMedia(e).then(n,a)}.bind(t))};ge.shimLocalStreamsAPI=function(e){if("object"===ye(e)&&e.RTCPeerConnection){if("getLocalStreams"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in e.RTCPeerConnection.prototype)){var t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addStream=function(e){var n=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(e)||this._localStreams.push(e),e.getAudioTracks().forEach(function(a){return t.call(n,a,e)}),e.getVideoTracks().forEach(function(a){return t.call(n,a,e)})},e.RTCPeerConnection.prototype.addTrack=function(e){for(var n=this,a=arguments.length,i=new Array(a>1?a-1:0),r=1;r=0)){e._remoteStreams.push(t);var n=new Event("addstream");n.stream=t,e.dispatchEvent(n)}})}),t.apply(e,arguments)}}},ge.shimTrackEventTransceiver=function(e){"object"===ye(e)&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})};var ve=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==ye(e)&&"function"!=typeof e)return{default:e};var n=be(t);if(n&&n.has(e))return n.get(e);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var o=i?Object.getOwnPropertyDescriptor(e,r):null;o&&(o.get||o.set)?Object.defineProperty(a,r,o):a[r]=e[r]}return a.default=e,n&&n.set(e,a),a}(J);function be(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(be=function(e){return e?n:t})(e)}function ye(e){return(ye="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function we(e){return e&&void 0!==e.video?Object.assign({},e,{video:ve.compactObject(e.video)}):e}function ke(e,t){if(!1===e)throw new Error(null!=t?t:"assertion failure")}function xe(e){throw new Error("this code should be unreachable")}const Se=(e=>{let t,n=!1;return(...a)=>(n||(t=e(a),n=!0),t)})(()=>{const e=X(window);switch(e.browser){case"chrome":oe(window,e);break;case"firefox":he(window,e);break;case"safari":_e(window,e);break;default:throw new U}});let Ce=Promise.resolve({type:"stop",data:{}});async function Te(e,t,n){var a,i,r;if(console.debug("[vue-qrcode-reader] starting camera with constraints: ",JSON.stringify(t)),!0!==window.isSecureContext)throw new H;if(void 0===(null==(a=null==navigator?void 0:navigator.mediaDevices)?void 0:a.getUserMedia))throw new U;Se(),console.debug("[vue-qrcode-reader] calling getUserMedia");const o=await navigator.mediaDevices.getUserMedia({audio:!1,video:t});void 0!==e.srcObject?e.srcObject=o:void 0!==e.mozSrcObject?e.mozSrcObject=o:window.URL.createObjectURL?e.src=window.URL.createObjectURL(o):window.webkitURL?e.src=window.webkitURL.createObjectURL(o):e.src=o.id,e.play(),console.debug("[vue-qrcode-reader] waiting for video element to load"),await Promise.race([F(e,"loadeddata"),$(6e3).then(()=>{throw new W})]),console.debug("[vue-qrcode-reader] video element loaded"),await $(500);const[s]=o.getVideoTracks(),l=null!=(r=null==(i=null==s?void 0:s.getCapabilities)?void 0:i.call(s))?r:{};let u=!1;return n&&l.torch&&(await s.applyConstraints({advanced:[{torch:!0}]}),u=!0),console.debug("[vue-qrcode-reader] camera ready"),{type:"start",data:{videoEl:e,stream:o,capabilities:l,constraints:t,isTorchOn:u}}}async function Ee(e,t,n){console.debug("[vue-qrcode-reader] stopping camera"),e.src="",e.srcObject=null,e.load(),await F(e,"error");for(const e of t.getTracks())null!=n||await e.applyConstraints({advanced:[{torch:!1}]}),t.removeTrack(e),e.stop();return{type:"stop",data:{}}}async function Pe(){if(Ce=Ce.then(e=>{if("stop"===e.type||"failed"===e.type)return e;const{data:{videoEl:t,stream:n,isTorchOn:a}}=e;return Ee(t,n,a)}),"start"===(await Ce).type)throw new Error("Something went wrong with the camera task queue (stop task).")}const Ae=t.defineComponent({__name:"QrcodeStream",props:{constraints:{default:()=>({facingMode:"environment"})},formats:{default:()=>["qr_code"]},paused:{type:Boolean,default:!1},torch:{type:Boolean,default:!1},track:{type:Function,default:void 0}},emits:["detect","camera-on","camera-off","error"],setup(e,{emit:n}){const a=e,i=n,r=t.ref(a.constraints),o=t.ref(a.formats);t.watch(()=>a.constraints,(e,t)=>{JSON.stringify(e)!==JSON.stringify(t)&&(r.value=e)},{deep:!0}),t.watch(()=>a.formats,(e,t)=>{JSON.stringify(e)!==JSON.stringify(t)&&(o.value=e)},{deep:!0});const s=t.ref(),l=t.ref(),u=t.ref(),c=t.ref(!1),d=t.ref(!1);t.onMounted(()=>{d.value=!0}),t.onUnmounted(()=>{Pe()});const h=t.computed(()=>({torch:a.torch,constraints:r.value,shouldStream:d.value&&!a.paused}));t.watch(h,async e=>{const t=u.value;ke(void 0!==t,"cameraSettings watcher should never be triggered when component is not mounted. Thus video element should always be defined.");const n=s.value;ke(void 0!==n,"cameraSettings watcher should never be triggered when component is not mounted. Thus canvas should always be defined.");const a=n.getContext("2d");if(ke(null!==a,"if cavnas is defined, canvas 2d context should also be non-null"),e.shouldStream){Pe(),c.value=!1;try{const n=await async function(e,{constraints:t,torch:n,restart:a=!1}){Ce=Ce.then(i=>{if("start"===i.type){const{data:{videoEl:r,stream:o,constraints:s,isTorchOn:l}}=i;return a||e!==r||t!==s||n!==l?Ee(r,o,l).then(()=>Te(e,t,n)):i}if("stop"===i.type||"failed"===i.type)return Te(e,t,n);xe()}).catch(e=>(console.debug(`[vue-qrcode-reader] starting camera failed with "${e}"`),{type:"failed",error:e}));const i=await Ce;if("stop"===i.type)throw new Error("Something went wrong with the camera task queue (start task).");if("failed"===i.type)throw i.error;if("start"===i.type)return i.data.capabilities;xe()}(t,e);d.value?(c.value=!0,i("camera-on",n)):await Pe()}catch(e){i("error",e)}}else n.width=t.videoWidth,n.height=t.videoHeight,a.drawImage(t,0,0,t.videoWidth,t.videoHeight),Pe(),c.value=!1,i("camera-off")},{deep:!0}),t.watch(o,e=>{d.value&&Y(e)});const p=t.computed(()=>h.value.shouldStream&&c.value);t.watch(p,e=>{if(e){ke(void 0!==s.value,"shouldScan watcher should only be triggered when component is mounted. Thus pause frame canvas is defined"),f(s.value),ke(void 0!==l.value,"shouldScan watcher should only be triggered when component is mounted. Thus tracking canvas is defined"),f(l.value);const e=()=>void 0===a.track?500:40;ke(void 0!==u.value,"shouldScan watcher should only be triggered when component is mounted. Thus video element is defined"),(async(e,{detectHandler:t,locateHandler:n,minDelay:a,formats:i})=>{console.debug("[vue-qrcode-reader] start scanning"),Y(i);const r=i=>async o=>{if(0===e.readyState)console.debug("[vue-qrcode-reader] stop scanning: video element readyState is 0");else{const{lastScanned:s,contentBefore:l,lastScanHadContent:u}=i;if(o-s!l.includes(e.rawValue));i&&t(a);const s=a.length>0;s&&n(a),!s&&u&&n(a);const c={lastScanned:o,lastScanHadContent:s,contentBefore:i?a.map(e=>e.rawValue):l};window.requestAnimationFrame(r(c))}}};r({lastScanned:performance.now(),contentBefore:[],lastScanHadContent:!1})(performance.now())})(u.value,{detectHandler:e=>i("detect",e),formats:o.value,locateHandler:m,minDelay:e()})}});const f=e=>{const t=e.getContext("2d");ke(null!==t,"canvas 2d context should always be non-null"),t.clearRect(0,0,e.width,e.height)},m=e=>{const t=l.value;ke(void 0!==t,"onLocate handler should only be called when component is mounted. Thus tracking canvas is always defined.");const n=u.value;if(ke(void 0!==n,"onLocate handler should only be called when component is mounted. Thus video element is always defined."),0===e.length||void 0===a.track)f(t);else{const i=n.offsetWidth,r=n.offsetHeight,o=n.videoWidth,s=n.videoHeight,l=Math.max(i/o,r/s),u=o*l,c=s*l,d=u/o,h=c/s,p=(i-u)/2,f=(r-c)/2,m=({x:e,y:t})=>({x:Math.floor(e*d),y:Math.floor(t*h)}),g=({x:e,y:t})=>({x:Math.floor(e+p),y:Math.floor(t+f)}),_=e.map(e=>{const{boundingBox:t,cornerPoints:n}=e,{x:a,y:i}=g(m({x:t.x,y:t.y})),{x:r,y:o}=m({x:t.width,y:t.height});return{...e,cornerPoints:n.map(e=>g(m(e))),boundingBox:DOMRectReadOnly.fromRect({x:a,y:i,width:r,height:o})}});t.width=n.offsetWidth,t.height=n.offsetHeight;const v=t.getContext("2d");ke(null!==v,"canvas 2d context should always be non-null"),a.track(_,v)}},g={width:"100%",height:"100%",position:"relative","z-index":"0"},_={width:"100%",height:"100%",position:"absolute",top:"0",left:"0"},v={width:"100%",height:"100%","object-fit":"cover"},b=t.computed(()=>p.value?v:{...v,visibility:"hidden",position:"absolute"});return(e,n)=>(t.openBlock(),t.createElementBlock("div",{style:g},[t.createElementVNode("video",{ref_key:"videoRef",ref:u,style:t.normalizeStyle(b.value),autoplay:"",muted:"",playsinline:""},null,4),t.withDirectives(t.createElementVNode("canvas",{id:"qrcode-stream-pause-frame",ref_key:"pauseFrameRef",ref:s,style:v},null,512),[[t.vShow,!p.value]]),t.createElementVNode("canvas",{id:"qrcode-stream-tracking-layer",ref_key:"trackingLayerRef",ref:l,style:_},null,512),t.createElementVNode("div",{style:_},[t.renderSlot(e.$slots,"default")])]))}}),Me=t.defineComponent({__name:"QrcodeCapture",props:{formats:{default:()=>["qr_code"]}},emits:["detect"],setup(e,{emit:n}){const a=e,i=n,r=e=>{if(e.target instanceof HTMLInputElement&&e.target.files)for(const t of Array.from(e.target.files))K(t,a.formats).then(e=>{i("detect",e)})};return(e,n)=>(t.openBlock(),t.createElementBlock("input",{onChange:r,type:"file",name:"image",accept:"image/*",capture:"environment",multiple:""},null,32))}}),Le=t.defineComponent({__name:"QrcodeDropZone",props:{formats:{default:()=>["qr_code"]}},emits:["detect","dragover","error"],setup(e,{emit:n}){const a=e,i=n,r=async e=>{try{const t=await e;i("detect",t)}catch(e){i("error",e)}},o=e=>{i("dragover",e)},s=({dataTransfer:e})=>{if(!e)return;o(!1);const t=[...Array.from(e.files)],n=e.getData("text/uri-list");t.forEach(e=>{r(K(e,a.formats))}),""!==n&&r(Q(n,a.formats))};return(e,n)=>(t.openBlock(),t.createElementBlock("div",{onDrop:t.withModifiers(s,["prevent","stop"]),onDragenter:n[0]||(n[0]=t.withModifiers(e=>o(!0),["prevent","stop"])),onDragleave:n[1]||(n[1]=t.withModifiers(e=>o(!1),["prevent","stop"])),onDragover:n[2]||(n[2]=t.withModifiers(()=>{},["prevent","stop"]))},[t.renderSlot(e.$slots,"default")],32))}});function Re(e){e.component("qrcode-stream",Ae),e.component("qrcode-capture",Me),e.component("qrcode-drop-zone",Le)}const ze={install:Re};e.QrcodeCapture=Me,e.QrcodeDropZone=Le,e.QrcodeStream=Ae,e.VueQrcodeReader=ze,e.install=Re,e.setZXingModuleOverrides=function(e){return function(e,t){z.set(e,{moduleOverrides:t})}(q,e)},Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}), /*! - * qrcode.vue v3.4.1 - * A Vue.js component to generate QRCode. - * © 2017-2023 @scopewu(https://github.com/scopewu) + * qrcode.vue v3.6.0 + * A Vue.js component to generate QRCode. Both support Vue 2 and Vue 3 + * © 2017-PRESENT @scopewu(https://github.com/scopewu) * MIT License. */ -function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define(["vue"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).QrcodeVue=t(e.Vue)}(this,(function(e){"use strict";var t,n=function(){return n=Object.assign||function(e){for(var t,n=1,a=arguments.length;nt.MAX_VERSION)throw new RangeError("Version value out of range");if(r<-1||r>7)throw new RangeError("Mask value out of range");this.size=4*e+17;for(var o=[],s=0;s7)throw new RangeError("Invalid value");var c,d;for(c=o;;c++){var h=8*t.getNumDataCodewords(c,a),p=r.getTotalBits(e,c);if(p<=h){d=p;break}if(c>=s)throw new RangeError("Data too long")}for(var f=0,m=[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH];f>>3]|=e<<7-(7&t)})),new t(c,a,T,l)},t.prototype.getModule=function(e,t){return 0<=e&&e>>9);var o=21522^(t<<10|n);i(o>>>15==0);for(r=0;r<=5;r++)this.setFunctionModule(8,r,a(o,r));this.setFunctionModule(8,7,a(o,6)),this.setFunctionModule(8,8,a(o,7)),this.setFunctionModule(7,8,a(o,8));for(r=9;r<15;r++)this.setFunctionModule(14-r,8,a(o,r));for(r=0;r<8;r++)this.setFunctionModule(this.size-1-r,8,a(o,r));for(r=8;r<15;r++)this.setFunctionModule(8,this.size-15+r,a(o,r));this.setFunctionModule(8,this.size-8,!0)},t.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^7973*(e>>>11);var n=this.version<<12|e;i(n>>>18==0);for(t=0;t<18;t++){var r=a(n,t),o=this.size-11+t%3,s=Math.floor(t/3);this.setFunctionModule(o,s,r),this.setFunctionModule(s,o,r)}}},t.prototype.drawFinderPattern=function(e,t){for(var n=-4;n<=4;n++)for(var a=-4;a<=4;a++){var i=Math.max(Math.abs(a),Math.abs(n)),r=e+a,o=t+n;0<=r&&r=l)&&g.push(t[e])}))};for(h=0;h=1;r-=2){6==r&&(r=5);for(var o=0;o>>3],7-(7&n)),n++)}}i(n==8*e.length)},t.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t5&&e++:(this.finderPenaltyAddHistory(r,o),a||(e+=this.finderPenaltyCountPatterns(o)*t.PENALTY_N3),a=this.modules[n][s],r=1);e+=this.finderPenaltyTerminateAndCount(a,r,o)*t.PENALTY_N3}for(s=0;s5&&e++:(this.finderPenaltyAddHistory(l,o),a||(e+=this.finderPenaltyCountPatterns(o)*t.PENALTY_N3),a=this.modules[n][s],l=1);e+=this.finderPenaltyTerminateAndCount(a,l,o)*t.PENALTY_N3}for(n=0;nt.MAX_VERSION)throw new RangeError("Version number out of range");var n=(16*e+128)*e+64;if(e>=2){var a=Math.floor(e/7)+2;n-=(25*a-10)*a-55,e>=7&&(n-=36)}return i(208<=n&&n<=29648),n},t.getNumDataCodewords=function(e,n){return Math.floor(t.getNumRawDataModules(e)/8)-t.ECC_CODEWORDS_PER_BLOCK[n.ordinal][e]*t.NUM_ERROR_CORRECTION_BLOCKS[n.ordinal][e]},t.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var n=[],a=0;a>>8!=0||t>>>8!=0)throw new RangeError("Byte out of range");for(var n=0,a=7;a>=0;a--)n=n<<1^285*(n>>>7),n^=(t>>>a&1)*e;return i(n>>>8==0),n},t.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];i(t<=3*this.size);var n=t>0&&e[2]==t&&e[3]==3*t&&e[4]==t&&e[5]==t;return(n&&e[0]>=4*t&&e[6]>=t?1:0)+(n&&e[6]>=4*t&&e[0]>=t?1:0)},t.prototype.finderPenaltyTerminateAndCount=function(e,t,n){return e&&(this.finderPenaltyAddHistory(t,n),t=0),t+=this.size,this.finderPenaltyAddHistory(t,n),this.finderPenaltyCountPatterns(n)},t.prototype.finderPenaltyAddHistory=function(e,t){0==t[0]&&(e+=this.size),t.pop(),t.unshift(e)},t.MIN_VERSION=1,t.MAX_VERSION=40,t.PENALTY_N1=3,t.PENALTY_N2=3,t.PENALTY_N3=40,t.PENALTY_N4=10,t.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],t.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],t}();function n(e,t,n){if(t<0||t>31||e>>>t!=0)throw new RangeError("Value out of range");for(var a=t-1;a>=0;a--)n.push(e>>>a&1)}function a(e,t){return!!(e>>>t&1)}function i(e){if(!e)throw new Error("Assertion error")}e.QrCode=t;var r=function(){function e(e,t,n){if(this.mode=e,this.numChars=t,this.bitData=n,t<0)throw new RangeError("Invalid argument");this.bitData=n.slice()}return e.makeBytes=function(t){for(var a=[],i=0,r=t;i=1<-1}}}),c=e.defineComponent({name:"QRCodeSvg",props:l,setup:function(t){var n=e.ref(0),r=e.ref(""),o=function(){var e=t.value,o=t.level,l=t.margin,u=a.QrCode.encodeText(e,i[o]).getModules();n.value=u.length+2*l,r.value=s(u,l)};return o(),e.onUpdated(o),function(){return e.h("svg",{width:t.size,height:t.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(n.value," ").concat(n.value)},[e.h("path",{fill:t.background,d:"M0,0 h".concat(n.value,"v").concat(n.value,"H0z")}),e.h("path",{fill:t.foreground,d:r.value})])}}}),d=e.defineComponent({name:"QRCodeCanvas",props:l,setup:function(t){var n=e.ref(null),o=function(){var e=t.value,o=t.level,l=t.size,u=t.margin,c=t.background,d=t.foreground,h=n.value;if(h){var p=h.getContext("2d");if(p){var f=a.QrCode.encodeText(e,i[o]).getModules(),m=f.length+2*u,g=window.devicePixelRatio||1,_=l/m*g;h.height=h.width=l*g,p.scale(_,_),p.fillStyle=c,p.fillRect(0,0,m,m),p.fillStyle=d,r?p.fill(new Path2D(s(f,u))):f.forEach((function(e,t){e.forEach((function(e,n){e&&p.fillRect(n+u,t+u,1,1)}))}))}}};return e.onMounted(o),e.onUpdated(o),function(){return e.h("canvas",{ref:n,style:{width:"".concat(t.size,"px"),height:"".concat(t.size,"px")}})}}});return e.defineComponent({name:"Qrcode",render:function(){var t=this.$props,n=t.renderAs,a=t.value,i=t.size,r=t.margin,s=t.level,l=t.background,u=t.foreground,h=i>>>0,p=r>>>0,f=o(s)?s:"H";return e.h("svg"===n?c:d,{value:a,size:h,margin:p,level:f,background:l,foreground:u})},props:u})})),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Chart=t()}(this,(function(){"use strict";var e=Object.freeze({__proto__:null,get Colors(){return zr},get Decimation(){return Or},get Filler(){return Xr},get Legend(){return ao},get SubTitle(){return so},get Title(){return ro},get Tooltip(){return xo}});function t(){}const n=(()=>{let e=0;return()=>e++})();function a(e){return null==e}function i(e){if(Array.isArray&&Array.isArray(e))return!0;const t=Object.prototype.toString.call(e);return"[object"===t.slice(0,7)&&"Array]"===t.slice(-6)}function r(e){return null!==e&&"[object Object]"===Object.prototype.toString.call(e)}function o(e){return("number"==typeof e||e instanceof Number)&&isFinite(+e)}function s(e,t){return o(e)?e:t}function l(e,t){return void 0===e?t:e}const u=(e,t)=>"string"==typeof e&&e.endsWith("%")?parseFloat(e)/100:+e/t,c=(e,t)=>"string"==typeof e&&e.endsWith("%")?parseFloat(e)/100*t:+e;function d(e,t,n){if(e&&"function"==typeof e.call)return e.apply(n,t)}function h(e,t,n,a){let o,s,l;if(i(e))if(s=e.length,a)for(o=s-1;o>=0;o--)t.call(n,e[o],o);else for(o=0;oe,x:e=>e.x,y:e=>e.y};function w(e){const t=e.split("."),n=[];let a="";for(const e of t)a+=e,a.endsWith("\\")?a=a.slice(0,-1)+".":(n.push(a),a="");return n}function k(e,t){const n=y[t]||(y[t]=function(e){const t=w(e);return e=>{for(const n of t){if(""===n)break;e=e&&e[n]}return e}}(t));return n(e)}function x(e){return e.charAt(0).toUpperCase()+e.slice(1)}const S=e=>void 0!==e,C=e=>"function"==typeof e,T=(e,t)=>{if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0};function E(e){return"mouseup"===e.type||"click"===e.type||"contextmenu"===e.type}const P=Math.PI,A=2*P,L=A+P,M=Number.POSITIVE_INFINITY,R=P/180,z=P/2,N=P/4,I=2*P/3,O=Math.log10,D=Math.sign;function q(e,t,n){return Math.abs(e-t)e-t)).pop(),t}function F(e){return!isNaN(parseFloat(e))&&isFinite(e)}function $(e,t){const n=Math.round(e);return n-t<=e&&n+t>=e}function V(e,t,n){let a,i,r;for(a=0,i=e.length;al&&u=Math.min(t,n)-a&&e<=Math.max(t,n)+a}function te(e,t,n){n=n||(n=>e[n]1;)a=r+i>>1,n(a)?r=a:i=a;return{lo:r,hi:i}}const ne=(e,t,n,a)=>te(e,n,a?a=>{const i=e[a][t];return ie[a][t]te(e,n,(a=>e[a][t]>=n));function ie(e,t,n){let a=0,i=e.length;for(;aa&&e[i-1]>n;)i--;return a>0||i{const n="_onData"+x(t),a=e[t];Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value(...t){const i=a.apply(this,t);return e._chartjs.listeners.forEach((e=>{"function"==typeof e[n]&&e[n](...t)})),i}})})))}function se(e,t){const n=e._chartjs;if(!n)return;const a=n.listeners,i=a.indexOf(t);-1!==i&&a.splice(i,1),a.length>0||(re.forEach((t=>{delete e[t]})),delete e._chartjs)}function le(e){const t=new Set(e);return t.size===e.length?e:Array.from(t)}const ue="undefined"==typeof window?function(e){return e()}:window.requestAnimationFrame;function ce(e,t){let n=[],a=!1;return function(...i){n=i,a||(a=!0,ue.call(window,(()=>{a=!1,e.apply(t,n)})))}}function de(e,t){let n;return function(...a){return t?(clearTimeout(n),n=setTimeout(e,t,a)):e.apply(this,a),t}}const he=e=>"start"===e?"left":"end"===e?"right":"center",pe=(e,t,n)=>"start"===e?t:"end"===e?n:(t+n)/2,fe=(e,t,n,a)=>e===(a?"left":"right")?n:"center"===e?(t+n)/2:t;function me(e,t,n){const a=t.length;let i=0,r=a;if(e._sorted){const{iScale:o,_parsed:s}=e,l=o.axis,{min:u,max:c,minDefined:d,maxDefined:h}=o.getUserBounds();d&&(i=J(Math.min(ne(s,l,u).lo,n?a:ne(t,l,o.getPixelForValue(u)).lo),0,a-1)),r=h?J(Math.max(ne(s,o.axis,c,!0).hi+1,n?0:ne(t,l,o.getPixelForValue(c),!0).hi+1),i,a)-i:a-i}return{start:i,count:r}}function ge(e){const{xScale:t,yScale:n,_scaleRanges:a}=e,i={xmin:t.min,xmax:t.max,ymin:n.min,ymax:n.max};if(!a)return e._scaleRanges=i,!0;const r=a.xmin!==t.min||a.xmax!==t.max||a.ymin!==n.min||a.ymax!==n.max;return Object.assign(a,i),r}var _e=new class{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(e,t,n,a){const i=t.listeners[a],r=t.duration;i.forEach((a=>a({chart:e,initial:t.initial,numSteps:r,currentStep:Math.min(n-t.start,r)})))}_refresh(){this._request||(this._running=!0,this._request=ue.call(window,(()=>{this._update(),this._request=null,this._running&&this._refresh()})))}_update(e=Date.now()){let t=0;this._charts.forEach(((n,a)=>{if(!n.running||!n.items.length)return;const i=n.items;let r,o=i.length-1,s=!1;for(;o>=0;--o)r=i[o],r._active?(r._total>n.duration&&(n.duration=r._total),r.tick(e),s=!0):(i[o]=i[i.length-1],i.pop());s&&(a.draw(),this._notify(a,n,e,"progress")),i.length||(n.running=!1,this._notify(a,n,e,"complete"),n.initial=!1),t+=i.length})),this._lastDate=e,0===t&&(this._running=!1)}_getAnims(e){const t=this._charts;let n=t.get(e);return n||(n={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},t.set(e,n)),n}listen(e,t,n){this._getAnims(e).listeners[t].push(n)}add(e,t){t&&t.length&&this._getAnims(e).items.push(...t)}has(e){return this._getAnims(e).items.length>0}start(e){const t=this._charts.get(e);t&&(t.running=!0,t.start=Date.now(),t.duration=t.items.reduce(((e,t)=>Math.max(e,t._duration)),0),this._refresh())}running(e){if(!this._running)return!1;const t=this._charts.get(e);return!!(t&&t.running&&t.items.length)}stop(e){const t=this._charts.get(e);if(!t||!t.items.length)return;const n=t.items;let a=n.length-1;for(;a>=0;--a)n[a].cancel();t.items=[],this._notify(e,t,Date.now(),"complete")}remove(e){return this._charts.delete(e)}}; +function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).QrcodeVue={},e.Vue)}(this,function(e,t){"use strict";var n,a=function(){return a=Object.assign||function(e){for(var t,n=1,a=arguments.length;nt.MAX_VERSION)throw new RangeError("Version value out of range");if(r<-1||r>7)throw new RangeError("Mask value out of range");this.size=4*e+17;for(var o=[],s=0;s7)throw new RangeError("Invalid value");var c,d;for(c=o;;c++){var h=8*t.getNumDataCodewords(c,a),p=r.getTotalBits(e,c);if(p<=h){d=p;break}if(c>=s)throw new RangeError("Data too long")}for(var f=0,m=[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH];f>>3]|=e<<7-(7&t)}),new t(c,a,T,l)},t.prototype.getModule=function(e,t){return 0<=e&&e>>9);var o=21522^(t<<10|n);i(o>>>15==0);for(r=0;r<=5;r++)this.setFunctionModule(8,r,a(o,r));this.setFunctionModule(8,7,a(o,6)),this.setFunctionModule(8,8,a(o,7)),this.setFunctionModule(7,8,a(o,8));for(r=9;r<15;r++)this.setFunctionModule(14-r,8,a(o,r));for(r=0;r<8;r++)this.setFunctionModule(this.size-1-r,8,a(o,r));for(r=8;r<15;r++)this.setFunctionModule(8,this.size-15+r,a(o,r));this.setFunctionModule(8,this.size-8,!0)},t.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^7973*(e>>>11);var n=this.version<<12|e;i(n>>>18==0);for(t=0;t<18;t++){var r=a(n,t),o=this.size-11+t%3,s=Math.floor(t/3);this.setFunctionModule(o,s,r),this.setFunctionModule(s,o,r)}}},t.prototype.drawFinderPattern=function(e,t){for(var n=-4;n<=4;n++)for(var a=-4;a<=4;a++){var i=Math.max(Math.abs(a),Math.abs(n)),r=e+a,o=t+n;0<=r&&r=l)&&g.push(t[e])})};for(h=0;h=1;r-=2){6==r&&(r=5);for(var o=0;o>>3],7-(7&n)),n++)}}i(n==8*e.length)},t.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t5&&e++:(this.finderPenaltyAddHistory(r,o),a||(e+=this.finderPenaltyCountPatterns(o)*t.PENALTY_N3),a=this.modules[n][s],r=1);e+=this.finderPenaltyTerminateAndCount(a,r,o)*t.PENALTY_N3}for(s=0;s5&&e++:(this.finderPenaltyAddHistory(l,o),a||(e+=this.finderPenaltyCountPatterns(o)*t.PENALTY_N3),a=this.modules[n][s],l=1);e+=this.finderPenaltyTerminateAndCount(a,l,o)*t.PENALTY_N3}for(n=0;nt.MAX_VERSION)throw new RangeError("Version number out of range");var n=(16*e+128)*e+64;if(e>=2){var a=Math.floor(e/7)+2;n-=(25*a-10)*a-55,e>=7&&(n-=36)}return i(208<=n&&n<=29648),n},t.getNumDataCodewords=function(e,n){return Math.floor(t.getNumRawDataModules(e)/8)-t.ECC_CODEWORDS_PER_BLOCK[n.ordinal][e]*t.NUM_ERROR_CORRECTION_BLOCKS[n.ordinal][e]},t.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var n=[],a=0;a>>8!=0||t>>>8!=0)throw new RangeError("Byte out of range");for(var n=0,a=7;a>=0;a--)n=n<<1^285*(n>>>7),n^=(t>>>a&1)*e;return i(n>>>8==0),n},t.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];i(t<=3*this.size);var n=t>0&&e[2]==t&&e[3]==3*t&&e[4]==t&&e[5]==t;return(n&&e[0]>=4*t&&e[6]>=t?1:0)+(n&&e[6]>=4*t&&e[0]>=t?1:0)},t.prototype.finderPenaltyTerminateAndCount=function(e,t,n){return e&&(this.finderPenaltyAddHistory(t,n),t=0),t+=this.size,this.finderPenaltyAddHistory(t,n),this.finderPenaltyCountPatterns(n)},t.prototype.finderPenaltyAddHistory=function(e,t){0==t[0]&&(e+=this.size),t.pop(),t.unshift(e)},t.MIN_VERSION=1,t.MAX_VERSION=40,t.PENALTY_N1=3,t.PENALTY_N2=3,t.PENALTY_N3=40,t.PENALTY_N4=10,t.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],t.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],t}();function n(e,t,n){if(t<0||t>31||e>>>t!=0)throw new RangeError("Value out of range");for(var a=t-1;a>=0;a--)n.push(e>>>a&1)}function a(e,t){return!!(e>>>t&1)}function i(e){if(!e)throw new Error("Assertion error")}e.QrCode=t;var r=function(){function e(e,t,n){if(this.mode=e,this.numChars=t,this.bitData=n,t<0)throw new RangeError("Invalid argument");this.bitData=n.slice()}return e.makeBytes=function(t){for(var a=[],i=0,r=t;i=1<=t.y+t.h?e:e.map(function(e,n){return(n=t.x+t.w)&&e})})}var d={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:"L",validator:function(e){return s(e)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0},imageSettings:{type:Object,required:!1,default:function(){return{}}},gradient:{type:Boolean,required:!1,default:!1},gradientType:{type:String,required:!1,default:"linear",validator:function(e){return["linear","radial"].indexOf(e)>-1}},gradientStartColor:{type:String,required:!1,default:"#000"},gradientEndColor:{type:String,required:!1,default:"#fff"}},h=a(a({},d),{renderAs:{type:String,required:!1,default:"canvas",validator:function(e){return["canvas","svg"].indexOf(e)>-1}}}),p=t.defineComponent({name:"QRCodeSvg",props:d,setup:function(e){var n,o=t.ref(0),d=t.ref(""),h=function(){var t=e.value,a=e.level,h=e.margin>>>0,p=s(a)?a:"L",f=i.QrCode.encodeText(t,r[p]).getModules();if(o.value=f.length+2*h,e.imageSettings.src){var m=u(f,e.size,h,e.imageSettings);n={x:m.x+h,y:m.y+h,width:m.w,height:m.h},m.excavation&&(f=c(f,m.excavation))}d.value=l(f,h)},p=function(){if(!e.gradient)return null;var n="linear"===e.gradientType?{x1:"0%",y1:"0%",x2:"100%",y2:"100%"}:{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%"};return t.h("linear"===e.gradientType?"linearGradient":"radialGradient",a({id:"qr-gradient"},n),[t.h("stop",{offset:"0%",style:{stopColor:e.gradientStartColor}}),t.h("stop",{offset:"100%",style:{stopColor:e.gradientEndColor}})])};return h(),t.onUpdated(h),function(){return t.h("svg",{width:e.size,height:e.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(o.value," ").concat(o.value)},[t.h("defs",{},[p()]),t.h("rect",{width:"100%",height:"100%",fill:e.background}),t.h("path",{fill:e.gradient?"url(#qr-gradient)":e.foreground,d:d.value}),e.imageSettings.src&&t.h("image",a({href:e.imageSettings.src},n))])}}}),f=t.defineComponent({name:"QRCodeCanvas",props:d,setup:function(e,n){var d=t.ref(null),h=t.ref(null),p=function(){var t=e.value,n=e.level,a=e.size,p=e.margin,f=e.background,m=e.foreground,g=e.gradient,_=e.gradientType,v=e.gradientStartColor,b=e.gradientEndColor,y=p>>>0,w=s(n)?n:"L",k=d.value;if(k){var x=k.getContext("2d");if(x){var S=i.QrCode.encodeText(t,r[w]).getModules(),C=S.length+2*y,T=h.value,E={x:0,y:0,width:0,height:0},P=e.imageSettings.src&&null!=T&&0!==T.naturalWidth&&0!==T.naturalHeight;if(P){var A=u(S,e.size,y,e.imageSettings);E={x:A.x+y,y:A.y+y,width:A.w,height:A.h},A.excavation&&(S=c(S,A.excavation))}var M=window.devicePixelRatio||1,L=a/C*M;if(k.height=k.width=a*M,x.scale(L,L),x.fillStyle=f,x.fillRect(0,0,C,C),g){var R=void 0;(R="linear"===_?x.createLinearGradient(0,0,C,C):x.createRadialGradient(C/2,C/2,0,C/2,C/2,C/2)).addColorStop(0,v),R.addColorStop(1,b),x.fillStyle=R}else x.fillStyle=m;o?x.fill(new Path2D(l(S,y))):S.forEach(function(e,t){e.forEach(function(e,n){e&&x.fillRect(n+y,t+y,1,1)})}),P&&x.drawImage(T,E.x,E.y,E.width,E.height)}}};t.onMounted(p),t.onUpdated(p);var f=n.attrs.style;return function(){return t.h(t.Fragment,[t.h("canvas",a(a({},n.attrs),{ref:d,style:a(a({},f),{width:"".concat(e.size,"px"),height:"".concat(e.size,"px")})})),e.imageSettings.src&&t.h("img",{ref:h,src:e.imageSettings.src,style:{display:"none"},onLoad:p})])}}}),m=t.defineComponent({name:"Qrcode",render:function(){var e=this.$props,n=e.renderAs,a=e.value,i=e.size,r=e.margin,o=e.level,s=e.background,l=e.foreground,u=e.imageSettings,c=e.gradient,d=e.gradientType,h=e.gradientStartColor,m=e.gradientEndColor;return t.h("svg"===n?p:f,{value:a,size:i,margin:r,level:o,background:s,foreground:l,imageSettings:u,gradient:c,gradientType:d,gradientStartColor:h,gradientEndColor:m})},props:h});e.QrcodeCanvas=f,e.QrcodeSvg=p,e.default=m,Object.defineProperty(e,"__esModule",{value:!0})}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Chart=t()}(this,function(){"use strict";var e=Object.freeze({__proto__:null,get Colors(){return zr},get Decimation(){return Ir},get Filler(){return eo},get Legend(){return io},get SubTitle(){return lo},get Title(){return oo},get Tooltip(){return So}});function t(){}const n=(()=>{let e=0;return()=>e++})();function a(e){return null==e}function i(e){if(Array.isArray&&Array.isArray(e))return!0;const t=Object.prototype.toString.call(e);return"[object"===t.slice(0,7)&&"Array]"===t.slice(-6)}function r(e){return null!==e&&"[object Object]"===Object.prototype.toString.call(e)}function o(e){return("number"==typeof e||e instanceof Number)&&isFinite(+e)}function s(e,t){return o(e)?e:t}function l(e,t){return void 0===e?t:e}const u=(e,t)=>"string"==typeof e&&e.endsWith("%")?parseFloat(e)/100:+e/t,c=(e,t)=>"string"==typeof e&&e.endsWith("%")?parseFloat(e)/100*t:+e;function d(e,t,n){if(e&&"function"==typeof e.call)return e.apply(n,t)}function h(e,t,n,a){let o,s,l;if(i(e))if(s=e.length,a)for(o=s-1;o>=0;o--)t.call(n,e[o],o);else for(o=0;oe,x:e=>e.x,y:e=>e.y};function w(e){const t=e.split("."),n=[];let a="";for(const e of t)a+=e,a.endsWith("\\")?a=a.slice(0,-1)+".":(n.push(a),a="");return n}function k(e,t){const n=y[t]||(y[t]=function(e){const t=w(e);return e=>{for(const n of t){if(""===n)break;e=e&&e[n]}return e}}(t));return n(e)}function x(e){return e.charAt(0).toUpperCase()+e.slice(1)}const S=e=>void 0!==e,C=e=>"function"==typeof e,T=(e,t)=>{if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0};function E(e){return"mouseup"===e.type||"click"===e.type||"contextmenu"===e.type}const P=Math.PI,A=2*P,M=A+P,L=Number.POSITIVE_INFINITY,R=P/180,z=P/2,N=P/4,O=2*P/3,I=Math.log10,q=Math.sign;function D(e,t,n){return Math.abs(e-t)e-t).pop(),t}function F(e){return!function(e){return"symbol"==typeof e||"object"==typeof e&&null!==e&&!(Symbol.toPrimitive in e||"toString"in e||"valueOf"in e)}(e)&&!isNaN(parseFloat(e))&&isFinite(e)}function $(e,t){const n=Math.round(e);return n-t<=e&&n+t>=e}function V(e,t,n){let a,i,r;for(a=0,i=e.length;al&&u=Math.min(t,n)-a&&e<=Math.max(t,n)+a}function te(e,t,n){n=n||(n=>e[n]1;)a=r+i>>1,n(a)?r=a:i=a;return{lo:r,hi:i}}const ne=(e,t,n,a)=>te(e,n,a?a=>{const i=e[a][t];return ie[a][t]te(e,n,a=>e[a][t]>=n);function ie(e,t,n){let a=0,i=e.length;for(;aa&&e[i-1]>n;)i--;return a>0||i{const n="_onData"+x(t),a=e[t];Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value(...t){const i=a.apply(this,t);return e._chartjs.listeners.forEach(e=>{"function"==typeof e[n]&&e[n](...t)}),i}})}))}function se(e,t){const n=e._chartjs;if(!n)return;const a=n.listeners,i=a.indexOf(t);-1!==i&&a.splice(i,1),a.length>0||(re.forEach(t=>{delete e[t]}),delete e._chartjs)}function le(e){const t=new Set(e);return t.size===e.length?e:Array.from(t)}const ue="undefined"==typeof window?function(e){return e()}:window.requestAnimationFrame;function ce(e,t){let n=[],a=!1;return function(...i){n=i,a||(a=!0,ue.call(window,()=>{a=!1,e.apply(t,n)}))}}function de(e,t){let n;return function(...a){return t?(clearTimeout(n),n=setTimeout(e,t,a)):e.apply(this,a),t}}const he=e=>"start"===e?"left":"end"===e?"right":"center",pe=(e,t,n)=>"start"===e?t:"end"===e?n:(t+n)/2,fe=(e,t,n,a)=>e===(a?"left":"right")?n:"center"===e?(t+n)/2:t;function me(e,t,n){const i=t.length;let r=0,o=i;if(e._sorted){const{iScale:s,vScale:l,_parsed:u}=e,c=e.dataset&&e.dataset.options?e.dataset.options.spanGaps:null,d=s.axis,{min:h,max:p,minDefined:f,maxDefined:m}=s.getUserBounds();if(f){if(r=Math.min(ne(u,d,h).lo,n?i:ne(t,d,s.getPixelForValue(h)).lo),c){const e=u.slice(0,r+1).reverse().findIndex(e=>!a(e[l.axis]));r-=Math.max(0,e)}r=J(r,0,i-1)}if(m){let e=Math.max(ne(u,s.axis,p,!0).hi+1,n?0:ne(t,d,s.getPixelForValue(p),!0).hi+1);if(c){const t=u.slice(e-1).findIndex(e=>!a(e[l.axis]));e+=Math.max(0,t)}o=J(e,r,i)-r}else o=i-r}return{start:r,count:o}}function ge(e){const{xScale:t,yScale:n,_scaleRanges:a}=e,i={xmin:t.min,xmax:t.max,ymin:n.min,ymax:n.max};if(!a)return e._scaleRanges=i,!0;const r=a.xmin!==t.min||a.xmax!==t.max||a.ymin!==n.min||a.ymax!==n.max;return Object.assign(a,i),r}var _e=new class{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(e,t,n,a){const i=t.listeners[a],r=t.duration;i.forEach(a=>a({chart:e,initial:t.initial,numSteps:r,currentStep:Math.min(n-t.start,r)}))}_refresh(){this._request||(this._running=!0,this._request=ue.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(e=Date.now()){let t=0;this._charts.forEach((n,a)=>{if(!n.running||!n.items.length)return;const i=n.items;let r,o=i.length-1,s=!1;for(;o>=0;--o)r=i[o],r._active?(r._total>n.duration&&(n.duration=r._total),r.tick(e),s=!0):(i[o]=i[i.length-1],i.pop());s&&(a.draw(),this._notify(a,n,e,"progress")),i.length||(n.running=!1,this._notify(a,n,e,"complete"),n.initial=!1),t+=i.length}),this._lastDate=e,0===t&&(this._running=!1)}_getAnims(e){const t=this._charts;let n=t.get(e);return n||(n={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},t.set(e,n)),n}listen(e,t,n){this._getAnims(e).listeners[t].push(n)}add(e,t){t&&t.length&&this._getAnims(e).items.push(...t)}has(e){return this._getAnims(e).items.length>0}start(e){const t=this._charts.get(e);t&&(t.running=!0,t.start=Date.now(),t.duration=t.items.reduce((e,t)=>Math.max(e,t._duration),0),this._refresh())}running(e){if(!this._running)return!1;const t=this._charts.get(e);return!!(t&&t.running&&t.items.length)}stop(e){const t=this._charts.get(e);if(!t||!t.items.length)return;const n=t.items;let a=n.length-1;for(;a>=0;--a)n[a].cancel();t.items=[],this._notify(e,t,Date.now(),"complete")}remove(e){return this._charts.delete(e)}}; /*! * @kurkle/color v0.3.2 * https://github.com/kurkle/color#readme * (c) 2023 Jukka Kurkela * Released under the MIT License - */function ve(e){return e+.5|0}const be=(e,t,n)=>Math.max(Math.min(e,n),t);function ye(e){return be(ve(2.55*e),0,255)}function we(e){return be(ve(255*e),0,255)}function ke(e){return be(ve(e/2.55)/100,0,1)}function xe(e){return be(ve(100*e),0,100)}const Se={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Ce=[..."0123456789ABCDEF"],Te=e=>Ce[15&e],Ee=e=>Ce[(240&e)>>4]+Ce[15&e],Pe=e=>(240&e)>>4==(15&e);const Ae=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Le(e,t,n){const a=t*Math.min(n,1-n),i=(t,i=(t+e/30)%12)=>n-a*Math.max(Math.min(i-3,9-i,1),-1);return[i(0),i(8),i(4)]}function Me(e,t,n){const a=(a,i=(a+e/60)%6)=>n-n*t*Math.max(Math.min(i,4-i,1),0);return[a(5),a(3),a(1)]}function Re(e,t,n){const a=Le(e,1,.5);let i;for(t+n>1&&(i=1/(t+n),t*=i,n*=i),i=0;i<3;i++)a[i]*=1-t-n,a[i]+=t;return a}function ze(e){const t=e.r/255,n=e.g/255,a=e.b/255,i=Math.max(t,n,a),r=Math.min(t,n,a),o=(i+r)/2;let s,l,u;return i!==r&&(u=i-r,l=o>.5?u/(2-i-r):u/(i+r),s=function(e,t,n,a,i){return e===i?(t-n)/a+(te<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055,$e=e=>e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4);function Ve(e,t,n){if(e){let a=ze(e);a[t]=Math.max(0,Math.min(a[t]+a[t]*n,0===t?360:1)),a=Ie(a),e.r=a[0],e.g=a[1],e.b=a[2]}}function Ue(e,t){return e?Object.assign(t||{},e):e}function He(e){var t={r:0,g:0,b:0,a:255};return Array.isArray(e)?e.length>=3&&(t={r:e[0],g:e[1],b:e[2],a:255},e.length>3&&(t.a=we(e[3]))):(t=Ue(e,{r:0,g:0,b:0,a:1})).a=we(t.a),t}function We(e){return"r"===e.charAt(0)?function(e){const t=Be.exec(e);let n,a,i,r=255;if(t){if(t[7]!==n){const e=+t[7];r=t[8]?ye(e):be(255*e,0,255)}return n=+t[1],a=+t[3],i=+t[5],n=255&(t[2]?ye(n):be(n,0,255)),a=255&(t[4]?ye(a):be(a,0,255)),i=255&(t[6]?ye(i):be(i,0,255)),{r:n,g:a,b:i,a:r}}}(e):function(e){const t=Ae.exec(e);let n,a=255;if(!t)return;t[5]!==n&&(a=t[6]?ye(+t[5]):we(+t[5]));const i=Oe(+t[2]),r=+t[3]/100,o=+t[4]/100;return n="hwb"===t[1]?function(e,t,n){return Ne(Re,e,t,n)}(i,r,o):"hsv"===t[1]?function(e,t,n){return Ne(Me,e,t,n)}(i,r,o):Ie(i,r,o),{r:n[0],g:n[1],b:n[2],a:a}}(e)}class Ge{constructor(e){if(e instanceof Ge)return e;const t=typeof e;let n;var a,i,r;"object"===t?n=He(e):"string"===t&&(r=(a=e).length,"#"===a[0]&&(4===r||5===r?i={r:255&17*Se[a[1]],g:255&17*Se[a[2]],b:255&17*Se[a[3]],a:5===r?17*Se[a[4]]:255}:7!==r&&9!==r||(i={r:Se[a[1]]<<4|Se[a[2]],g:Se[a[3]]<<4|Se[a[4]],b:Se[a[5]]<<4|Se[a[6]],a:9===r?Se[a[7]]<<4|Se[a[8]]:255})),n=i||function(e){je||(je=function(){const e={},t=Object.keys(qe),n=Object.keys(De);let a,i,r,o,s;for(a=0;a>16&255,r>>8&255,255&r]}return e}(),je.transparent=[0,0,0,0]);const t=je[e.toLowerCase()];return t&&{r:t[0],g:t[1],b:t[2],a:4===t.length?t[3]:255}}(e)||We(e)),this._rgb=n,this._valid=!!n}get valid(){return this._valid}get rgb(){var e=Ue(this._rgb);return e&&(e.a=ke(e.a)),e}set rgb(e){this._rgb=He(e)}rgbString(){return this._valid?(e=this._rgb)&&(e.a<255?`rgba(${e.r}, ${e.g}, ${e.b}, ${ke(e.a)})`:`rgb(${e.r}, ${e.g}, ${e.b})`):void 0;var e}hexString(){return this._valid?function(e){var t=(e=>Pe(e.r)&&Pe(e.g)&&Pe(e.b)&&Pe(e.a))(e)?Te:Ee;return e?"#"+t(e.r)+t(e.g)+t(e.b)+((e,t)=>e<255?t(e):"")(e.a,t):void 0}(this._rgb):void 0}hslString(){return this._valid?function(e){if(!e)return;const t=ze(e),n=t[0],a=xe(t[1]),i=xe(t[2]);return e.a<255?`hsla(${n}, ${a}%, ${i}%, ${ke(e.a)})`:`hsl(${n}, ${a}%, ${i}%)`}(this._rgb):void 0}mix(e,t){if(e){const n=this.rgb,a=e.rgb;let i;const r=t===i?.5:t,o=2*r-1,s=n.a-a.a,l=((o*s==-1?o:(o+s)/(1+o*s))+1)/2;i=1-l,n.r=255&l*n.r+i*a.r+.5,n.g=255&l*n.g+i*a.g+.5,n.b=255&l*n.b+i*a.b+.5,n.a=r*n.a+(1-r)*a.a,this.rgb=n}return this}interpolate(e,t){return e&&(this._rgb=function(e,t,n){const a=$e(ke(e.r)),i=$e(ke(e.g)),r=$e(ke(e.b));return{r:we(Fe(a+n*($e(ke(t.r))-a))),g:we(Fe(i+n*($e(ke(t.g))-i))),b:we(Fe(r+n*($e(ke(t.b))-r))),a:e.a+n*(t.a-e.a)}}(this._rgb,e._rgb,t)),this}clone(){return new Ge(this.rgb)}alpha(e){return this._rgb.a=we(e),this}clearer(e){return this._rgb.a*=1-e,this}greyscale(){const e=this._rgb,t=ve(.3*e.r+.59*e.g+.11*e.b);return e.r=e.g=e.b=t,this}opaquer(e){return this._rgb.a*=1+e,this}negate(){const e=this._rgb;return e.r=255-e.r,e.g=255-e.g,e.b=255-e.b,this}lighten(e){return Ve(this._rgb,2,e),this}darken(e){return Ve(this._rgb,2,-e),this}saturate(e){return Ve(this._rgb,1,e),this}desaturate(e){return Ve(this._rgb,1,-e),this}rotate(e){return function(e,t){var n=ze(e);n[0]=Oe(n[0]+t),n=Ie(n),e.r=n[0],e.g=n[1],e.b=n[2]}(this._rgb,e),this}}function Ye(e){if(e&&"object"==typeof e){const t=e.toString();return"[object CanvasPattern]"===t||"[object CanvasGradient]"===t}return!1}function Ke(e){return Ye(e)?e:new Ge(e)}function Qe(e){return Ye(e)?e:new Ge(e).saturate(.5).darken(.1).hexString()}const Ze=["x","y","borderWidth","radius","tension"],Je=["color","borderColor","backgroundColor"],Xe=new Map;function et(e,t,n){return function(e,t){t=t||{};const n=e+JSON.stringify(t);let a=Xe.get(n);return a||(a=new Intl.NumberFormat(e,t),Xe.set(n,a)),a}(t,n).format(e)}const tt={values:e=>i(e)?e:""+e,numeric(e,t,n){if(0===e)return"0";const a=this.chart.options.locale;let i,r=e;if(n.length>1){const t=Math.max(Math.abs(n[0].value),Math.abs(n[n.length-1].value));(t<1e-4||t>1e15)&&(i="scientific"),r=function(e,t){let n=t.length>3?t[2].value-t[1].value:t[1].value-t[0].value;return Math.abs(n)>=1&&e!==Math.floor(e)&&(n=e-Math.floor(e)),n}(e,n)}const o=O(Math.abs(r)),s=isNaN(o)?1:Math.max(Math.min(-1*Math.floor(o),20),0),l={notation:i,minimumFractionDigits:s,maximumFractionDigits:s};return Object.assign(l,this.options.ticks.format),et(e,a,l)},logarithmic(e,t,n){if(0===e)return"0";const a=n[t].significand||e/Math.pow(10,Math.floor(O(e)));return[1,2,3,5,10,15].includes(a)||t>.8*n.length?tt.numeric.call(this,e,t,n):""}};var nt={formatters:tt};const at=Object.create(null),it=Object.create(null);function rt(e,t){if(!t)return e;const n=t.split(".");for(let t=0,a=n.length;te.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(e,t)=>Qe(t.backgroundColor),this.hoverBorderColor=(e,t)=>Qe(t.borderColor),this.hoverColor=(e,t)=>Qe(t.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(e),this.apply(t)}set(e,t){return ot(this,e,t)}get(e){return rt(this,e)}describe(e,t){return ot(it,e,t)}override(e,t){return ot(at,e,t)}route(e,t,n,a){const i=rt(this,e),o=rt(this,n),s="_"+t;Object.defineProperties(i,{[s]:{value:i[t],writable:!0},[t]:{enumerable:!0,get(){const e=this[s],t=o[a];return r(e)?Object.assign({},t,e):l(e,t)},set(e){this[s]=e}}})}apply(e){e.forEach((e=>e(this)))}}({_scriptable:e=>!e.startsWith("on"),_indexable:e=>"events"!==e,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[function(e){e.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),e.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:e=>"onProgress"!==e&&"onComplete"!==e&&"fn"!==e}),e.set("animations",{colors:{type:"color",properties:Je},numbers:{type:"number",properties:Ze}}),e.describe("animations",{_fallback:"animation"}),e.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:e=>0|e}}}})},function(e){e.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})},function(e){e.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(e,t)=>t.lineWidth,tickColor:(e,t)=>t.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:nt.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),e.route("scale.ticks","color","","color"),e.route("scale.grid","color","","borderColor"),e.route("scale.border","color","","borderColor"),e.route("scale.title","color","","color"),e.describe("scale",{_fallback:!1,_scriptable:e=>!e.startsWith("before")&&!e.startsWith("after")&&"callback"!==e&&"parser"!==e,_indexable:e=>"borderDash"!==e&&"tickBorderDash"!==e&&"dash"!==e}),e.describe("scales",{_fallback:"scale"}),e.describe("scale.ticks",{_scriptable:e=>"backdropPadding"!==e&&"callback"!==e,_indexable:e=>"backdropPadding"!==e})}]);function lt(){return"undefined"!=typeof window&&"undefined"!=typeof document}function ut(e){let t=e.parentNode;return t&&"[object ShadowRoot]"===t.toString()&&(t=t.host),t}function ct(e,t,n){let a;return"string"==typeof e?(a=parseInt(e,10),-1!==e.indexOf("%")&&(a=a/100*t.parentNode[n])):a=e,a}const dt=e=>e.ownerDocument.defaultView.getComputedStyle(e,null);function ht(e,t){return dt(e).getPropertyValue(t)}const pt=["top","right","bottom","left"];function ft(e,t,n){const a={};n=n?"-"+n:"";for(let i=0;i<4;i++){const r=pt[i];a[r]=parseFloat(e[t+"-"+r+n])||0}return a.width=a.left+a.right,a.height=a.top+a.bottom,a}const mt=(e,t,n)=>(e>0||t>0)&&(!n||!n.shadowRoot);function gt(e,t){if("native"in e)return e;const{canvas:n,currentDevicePixelRatio:a}=t,i=dt(n),r="border-box"===i.boxSizing,o=ft(i,"padding"),s=ft(i,"border","width"),{x:l,y:u,box:c}=function(e,t){const n=e.touches,a=n&&n.length?n[0]:e,{offsetX:i,offsetY:r}=a;let o,s,l=!1;if(mt(i,r,e.target))o=i,s=r;else{const e=t.getBoundingClientRect();o=a.clientX-e.left,s=a.clientY-e.top,l=!0}return{x:o,y:s,box:l}}(e,n),d=o.left+(c&&s.left),h=o.top+(c&&s.top);let{width:p,height:f}=t;return r&&(p-=o.width+s.width,f-=o.height+s.height),{x:Math.round((l-d)/p*n.width/a),y:Math.round((u-h)/f*n.height/a)}}const _t=e=>Math.round(10*e)/10;function vt(e,t,n,a){const i=dt(e),r=ft(i,"margin"),o=ct(i.maxWidth,e,"clientWidth")||M,s=ct(i.maxHeight,e,"clientHeight")||M,l=function(e,t,n){let a,i;if(void 0===t||void 0===n){const r=e&&ut(e);if(r){const e=r.getBoundingClientRect(),o=dt(r),s=ft(o,"border","width"),l=ft(o,"padding");t=e.width-l.width-s.width,n=e.height-l.height-s.height,a=ct(o.maxWidth,r,"clientWidth"),i=ct(o.maxHeight,r,"clientHeight")}else t=e.clientWidth,n=e.clientHeight}return{width:t,height:n,maxWidth:a||M,maxHeight:i||M}}(e,t,n);let{width:u,height:c}=l;if("content-box"===i.boxSizing){const e=ft(i,"border","width"),t=ft(i,"padding");u-=t.width+e.width,c-=t.height+e.height}return u=Math.max(0,u-r.width),c=Math.max(0,a?u/a:c-r.height),u=_t(Math.min(u,o,l.maxWidth)),c=_t(Math.min(c,s,l.maxHeight)),u&&!c&&(c=_t(u/2)),(void 0!==t||void 0!==n)&&a&&l.height&&c>l.height&&(c=l.height,u=_t(Math.floor(c*a))),{width:u,height:c}}function bt(e,t,n){const a=t||1,i=Math.floor(e.height*a),r=Math.floor(e.width*a);e.height=Math.floor(e.height),e.width=Math.floor(e.width);const o=e.canvas;return o.style&&(n||!o.style.height&&!o.style.width)&&(o.style.height=`${e.height}px`,o.style.width=`${e.width}px`),(e.currentDevicePixelRatio!==a||o.height!==i||o.width!==r)&&(e.currentDevicePixelRatio=a,o.height=i,o.width=r,e.ctx.setTransform(a,0,0,a,0,0),!0)}const yt=function(){let e=!1;try{const t={get passive(){return e=!0,!1}};lt()&&(window.addEventListener("test",null,t),window.removeEventListener("test",null,t))}catch(e){}return e}();function wt(e,t){const n=ht(e,t),a=n&&n.match(/^(\d+)(\.\d+)?px$/);return a?+a[1]:void 0}function kt(e){return!e||a(e.size)||a(e.family)?null:(e.style?e.style+" ":"")+(e.weight?e.weight+" ":"")+e.size+"px "+e.family}function xt(e,t,n,a,i){let r=t[i];return r||(r=t[i]=e.measureText(i).width,n.push(i)),r>a&&(a=r),a}function St(e,t,n,a){let r=(a=a||{}).data=a.data||{},o=a.garbageCollect=a.garbageCollect||[];a.font!==t&&(r=a.data={},o=a.garbageCollect=[],a.font=t),e.save(),e.font=t;let s=0;const l=n.length;let u,c,d,h,p;for(u=0;un.length){for(u=0;u0&&e.stroke()}}function At(e,t,n){return n=n||.5,!t||e&&e.x>t.left-n&&e.xt.top-n&&e.y0&&""!==s.strokeColor;let c,d;for(e.save(),e.font=o.string,function(e,t){t.translation&&e.translate(t.translation[0],t.translation[1]),a(t.rotation)||e.rotate(t.rotation),t.color&&(e.fillStyle=t.color),t.textAlign&&(e.textAlign=t.textAlign),t.textBaseline&&(e.textBaseline=t.textBaseline)}(e,s),c=0;ce[0]){const r=n||e;void 0===a&&(a=Kt("_fallback",e));const o={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:e,_rootScopes:r,_fallback:a,_getTarget:i,override:n=>qt([n,...e],t,r,a)};return new Proxy(o,{deleteProperty:(t,n)=>(delete t[n],delete t._keys,delete e[0][n],!0),get:(n,a)=>Vt(n,a,(()=>function(e,t,n,a){let i;for(const r of t)if(i=Kt(Ft(r,e),n),void 0!==i)return $t(e,i)?Gt(n,a,e,i):i}(a,t,e,n))),getOwnPropertyDescriptor:(e,t)=>Reflect.getOwnPropertyDescriptor(e._scopes[0],t),getPrototypeOf:()=>Reflect.getPrototypeOf(e[0]),has:(e,t)=>Qt(e).includes(t),ownKeys:e=>Qt(e),set(e,t,n){const a=e._storage||(e._storage=i());return e[t]=a[t]=n,delete e._keys,!0}})}function jt(e,t,n,a){const o={_cacheable:!1,_proxy:e,_context:t,_subProxy:n,_stack:new Set,_descriptors:Bt(e,a),setContext:t=>jt(e,t,n,a),override:i=>jt(e.override(i),t,n,a)};return new Proxy(o,{deleteProperty:(t,n)=>(delete t[n],delete e[n],!0),get:(e,t,n)=>Vt(e,t,(()=>function(e,t,n){const{_proxy:a,_context:o,_subProxy:s,_descriptors:l}=e;let u=a[t];return C(u)&&l.isScriptable(t)&&(u=function(e,t,n,a){const{_proxy:i,_context:r,_subProxy:o,_stack:s}=n;if(s.has(e))throw new Error("Recursion detected: "+Array.from(s).join("->")+"->"+e);s.add(e);let l=t(r,o||a);return s.delete(e),$t(e,l)&&(l=Gt(i._scopes,i,e,l)),l}(t,u,e,n)),i(u)&&u.length&&(u=function(e,t,n,a){const{_proxy:i,_context:o,_subProxy:s,_descriptors:l}=n;if(void 0!==o.index&&a(e))return t[o.index%t.length];if(r(t[0])){const n=t,a=i._scopes.filter((e=>e!==n));t=[];for(const r of n){const n=Gt(a,i,e,r);t.push(jt(n,o,s&&s[e],l))}}return t}(t,u,e,l.isIndexable)),$t(t,u)&&(u=jt(u,o,s&&s[t],l)),u}(e,t,n))),getOwnPropertyDescriptor:(t,n)=>t._descriptors.allKeys?Reflect.has(e,n)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(e,n),getPrototypeOf:()=>Reflect.getPrototypeOf(e),has:(t,n)=>Reflect.has(e,n),ownKeys:()=>Reflect.ownKeys(e),set:(t,n,a)=>(e[n]=a,delete t[n],!0)})}function Bt(e,t={scriptable:!0,indexable:!0}){const{_scriptable:n=t.scriptable,_indexable:a=t.indexable,_allKeys:i=t.allKeys}=e;return{allKeys:i,scriptable:n,indexable:a,isScriptable:C(n)?n:()=>n,isIndexable:C(a)?a:()=>a}}const Ft=(e,t)=>e?e+x(t):t,$t=(e,t)=>r(t)&&"adapters"!==e&&(null===Object.getPrototypeOf(t)||t.constructor===Object);function Vt(e,t,n){if(Object.prototype.hasOwnProperty.call(e,t)||"constructor"===t)return e[t];const a=n();return e[t]=a,a}function Ut(e,t,n){return C(e)?e(t,n):e}const Ht=(e,t)=>!0===e?t:"string"==typeof e?k(t,e):void 0;function Wt(e,t,n,a,i){for(const r of t){const t=Ht(n,r);if(t){e.add(t);const r=Ut(t._fallback,n,i);if(void 0!==r&&r!==n&&r!==a)return r}else if(!1===t&&void 0!==a&&n!==a)return null}return!1}function Gt(e,t,n,a){const o=t._rootScopes,s=Ut(t._fallback,n,a),l=[...e,...o],u=new Set;u.add(a);let c=Yt(u,l,n,s||n,a);return null!==c&&(void 0===s||s===n||(c=Yt(u,l,s,c,a),null!==c))&&qt(Array.from(u),[""],o,s,(()=>function(e,t,n){const a=e._getTarget();t in a||(a[t]={});const o=a[t];return i(o)&&r(n)?n:o||{}}(t,n,a)))}function Yt(e,t,n,a,i){for(;n;)n=Wt(e,t,n,a,i);return n}function Kt(e,t){for(const n of t){if(!n)continue;const t=n[e];if(void 0!==t)return t}}function Qt(e){let t=e._keys;return t||(t=e._keys=function(e){const t=new Set;for(const n of e)for(const e of Object.keys(n).filter((e=>!e.startsWith("_"))))t.add(e);return Array.from(t)}(e._scopes)),t}function Zt(e,t,n,a){const{iScale:i}=e,{key:r="r"}=this._parsing,o=new Array(a);let s,l,u,c;for(s=0,l=a;st"x"===e?"y":"x";function tn(e,t,n,a){const i=e.skip?t:e,r=t,o=n.skip?t:n,s=Y(r,i),l=Y(o,r);let u=s/(s+l),c=l/(s+l);u=isNaN(u)?0:u,c=isNaN(c)?0:c;const d=a*u,h=a*c;return{previous:{x:r.x-d*(o.x-i.x),y:r.y-d*(o.y-i.y)},next:{x:r.x+h*(o.x-i.x),y:r.y+h*(o.y-i.y)}}}function nn(e,t="x"){const n=en(t),a=e.length,i=Array(a).fill(0),r=Array(a);let o,s,l,u=Xt(e,0);for(o=0;o!e.skip))),"monotone"===t.cubicInterpolationMode)nn(e,i);else{let n=a?e[e.length-1]:e[0];for(r=0,o=e.length;r0===e||1===e,sn=(e,t,n)=>-Math.pow(2,10*(e-=1))*Math.sin((e-t)*A/n),ln=(e,t,n)=>Math.pow(2,-10*e)*Math.sin((e-t)*A/n)+1,un={linear:e=>e,easeInQuad:e=>e*e,easeOutQuad:e=>-e*(e-2),easeInOutQuad:e=>(e/=.5)<1?.5*e*e:-.5*(--e*(e-2)-1),easeInCubic:e=>e*e*e,easeOutCubic:e=>(e-=1)*e*e+1,easeInOutCubic:e=>(e/=.5)<1?.5*e*e*e:.5*((e-=2)*e*e+2),easeInQuart:e=>e*e*e*e,easeOutQuart:e=>-((e-=1)*e*e*e-1),easeInOutQuart:e=>(e/=.5)<1?.5*e*e*e*e:-.5*((e-=2)*e*e*e-2),easeInQuint:e=>e*e*e*e*e,easeOutQuint:e=>(e-=1)*e*e*e*e+1,easeInOutQuint:e=>(e/=.5)<1?.5*e*e*e*e*e:.5*((e-=2)*e*e*e*e+2),easeInSine:e=>1-Math.cos(e*z),easeOutSine:e=>Math.sin(e*z),easeInOutSine:e=>-.5*(Math.cos(P*e)-1),easeInExpo:e=>0===e?0:Math.pow(2,10*(e-1)),easeOutExpo:e=>1===e?1:1-Math.pow(2,-10*e),easeInOutExpo:e=>on(e)?e:e<.5?.5*Math.pow(2,10*(2*e-1)):.5*(2-Math.pow(2,-10*(2*e-1))),easeInCirc:e=>e>=1?e:-(Math.sqrt(1-e*e)-1),easeOutCirc:e=>Math.sqrt(1-(e-=1)*e),easeInOutCirc:e=>(e/=.5)<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(e-=2)*e)+1),easeInElastic:e=>on(e)?e:sn(e,.075,.3),easeOutElastic:e=>on(e)?e:ln(e,.075,.3),easeInOutElastic(e){const t=.1125;return on(e)?e:e<.5?.5*sn(2*e,t,.45):.5+.5*ln(2*e-1,t,.45)},easeInBack(e){const t=1.70158;return e*e*((t+1)*e-t)},easeOutBack(e){const t=1.70158;return(e-=1)*e*((t+1)*e+t)+1},easeInOutBack(e){let t=1.70158;return(e/=.5)<1?e*e*((1+(t*=1.525))*e-t)*.5:.5*((e-=2)*e*((1+(t*=1.525))*e+t)+2)},easeInBounce:e=>1-un.easeOutBounce(1-e),easeOutBounce(e){const t=7.5625,n=2.75;return e<1/n?t*e*e:e<2/n?t*(e-=1.5/n)*e+.75:e<2.5/n?t*(e-=2.25/n)*e+.9375:t*(e-=2.625/n)*e+.984375},easeInOutBounce:e=>e<.5?.5*un.easeInBounce(2*e):.5*un.easeOutBounce(2*e-1)+.5};function cn(e,t,n,a){return{x:e.x+n*(t.x-e.x),y:e.y+n*(t.y-e.y)}}function dn(e,t,n,a){return{x:e.x+n*(t.x-e.x),y:"middle"===a?n<.5?e.y:t.y:"after"===a?n<1?e.y:t.y:n>0?t.y:e.y}}function hn(e,t,n,a){const i={x:e.cp2x,y:e.cp2y},r={x:t.cp1x,y:t.cp1y},o=cn(e,i,n),s=cn(i,r,n),l=cn(r,t,n),u=cn(o,s,n),c=cn(s,l,n);return cn(u,c,n)}const pn=/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/,fn=/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/;function mn(e,t){const n=(""+e).match(pn);if(!n||"normal"===n[1])return 1.2*t;switch(e=+n[2],n[3]){case"px":return e;case"%":e/=100}return t*e}const gn=e=>+e||0;function _n(e,t){const n={},a=r(t),i=a?Object.keys(t):t,o=r(e)?a?n=>l(e[n],e[t[n]]):t=>e[t]:()=>e;for(const e of i)n[e]=gn(o(e));return n}function vn(e){return _n(e,{top:"y",right:"x",bottom:"y",left:"x"})}function bn(e){return _n(e,["topLeft","topRight","bottomLeft","bottomRight"])}function yn(e){const t=vn(e);return t.width=t.left+t.right,t.height=t.top+t.bottom,t}function wn(e,t){e=e||{},t=t||st.font;let n=l(e.size,t.size);"string"==typeof n&&(n=parseInt(n,10));let a=l(e.style,t.style);a&&!(""+a).match(fn)&&(console.warn('Invalid font style specified: "'+a+'"'),a=void 0);const i={family:l(e.family,t.family),lineHeight:mn(l(e.lineHeight,t.lineHeight),n),size:n,style:a,weight:l(e.weight,t.weight),string:""};return i.string=kt(i),i}function kn(e,t,n,a){let r,o,s,l=!0;for(r=0,o=e.length;rn&&0===e?0:e+t;return{min:o(a,-Math.abs(r)),max:o(i,r)}}function Sn(e,t){return Object.assign(Object.create(e),t)}function Cn(e,t,n){return e?function(e,t){return{x:n=>e+e+t-n,setWidth(e){t=e},textAlign:e=>"center"===e?e:"right"===e?"left":"right",xPlus:(e,t)=>e-t,leftForLtr:(e,t)=>e-t}}(t,n):{x:e=>e,setWidth(e){},textAlign:e=>e,xPlus:(e,t)=>e+t,leftForLtr:(e,t)=>e}}function Tn(e,t){let n,a;"ltr"!==t&&"rtl"!==t||(n=e.canvas.style,a=[n.getPropertyValue("direction"),n.getPropertyPriority("direction")],n.setProperty("direction",t,"important"),e.prevTextDirection=a)}function En(e,t){void 0!==t&&(delete e.prevTextDirection,e.canvas.style.setProperty("direction",t[0],t[1]))}function Pn(e){return"angle"===e?{between:Z,compare:K,normalize:Q}:{between:ee,compare:(e,t)=>e-t,normalize:e=>e}}function An({start:e,end:t,count:n,loop:a,style:i}){return{start:e%n,end:t%n,loop:a&&(t-e+1)%n==0,style:i}}function Ln(e,t,n){if(!n)return[e];const{property:a,start:i,end:r}=n,o=t.length,{compare:s,between:l,normalize:u}=Pn(a),{start:c,end:d,loop:h,style:p}=function(e,t,n){const{property:a,start:i,end:r}=n,{between:o,normalize:s}=Pn(a),l=t.length;let u,c,{start:d,end:h,loop:p}=e;if(p){for(d+=l,h+=l,u=0,c=l;ui&&e[r%t].skip;)r--;return r%=t,{start:i,end:r}}(n,i,r,a);return zn(e,!0===a?[{start:o,end:s,loop:r}]:function(e,t,n,a){const i=e.length,r=[];let o,s=t,l=e[t];for(o=t+1;o<=n;++o){const n=e[o%i];n.skip||n.stop?l.skip||(a=!1,r.push({start:t%i,end:(o-1)%i,loop:a}),t=s=n.stop?o:null):(s=o,l.skip&&(t=o)),l=n}return null!==s&&r.push({start:t%i,end:s%i,loop:a}),r}(n,o,s{e[o]&&e[o](t[n],i)&&(r.push({element:e,datasetIndex:a,index:l}),s=s||e.inRange(t.x,t.y,i))})),a&&!s?[]:r}var $n={evaluateInteractionItems:qn,modes:{index(e,t,n,a){const i=gt(t,e),r=n.axis||"x",o=n.includeInvisible||!1,s=n.intersect?jn(e,i,r,a,o):Bn(e,i,r,!1,a,o),l=[];return s.length?(e.getSortedVisibleDatasetMetas().forEach((e=>{const t=s[0].index,n=e.data[t];n&&!n.skip&&l.push({element:n,datasetIndex:e.index,index:t})})),l):[]},dataset(e,t,n,a){const i=gt(t,e),r=n.axis||"xy",o=n.includeInvisible||!1;let s=n.intersect?jn(e,i,r,a,o):Bn(e,i,r,!1,a,o);if(s.length>0){const t=s[0].datasetIndex,n=e.getDatasetMeta(t).data;s=[];for(let e=0;ejn(e,gt(t,e),n.axis||"xy",a,n.includeInvisible||!1),nearest(e,t,n,a){const i=gt(t,e),r=n.axis||"xy",o=n.includeInvisible||!1;return Bn(e,i,r,n.intersect,a,o)},x:(e,t,n,a)=>Fn(e,gt(t,e),"x",n.intersect,a),y:(e,t,n,a)=>Fn(e,gt(t,e),"y",n.intersect,a)}};const Vn=["left","top","right","bottom"];function Un(e,t){return e.filter((e=>e.pos===t))}function Hn(e,t){return e.filter((e=>-1===Vn.indexOf(e.pos)&&e.box.axis===t))}function Wn(e,t){return e.sort(((e,n)=>{const a=t?n:e,i=t?e:n;return a.weight===i.weight?a.index-i.index:a.weight-i.weight}))}function Gn(e,t,n,a){return Math.max(e[n],t[n])+Math.max(e[a],t[a])}function Yn(e,t){e.top=Math.max(e.top,t.top),e.left=Math.max(e.left,t.left),e.bottom=Math.max(e.bottom,t.bottom),e.right=Math.max(e.right,t.right)}function Kn(e,t,n,a){const{pos:i,box:o}=n,s=e.maxPadding;if(!r(i)){n.size&&(e[i]-=n.size);const t=a[n.stack]||{size:0,count:1};t.size=Math.max(t.size,n.horizontal?o.height:o.width),n.size=t.size/t.count,e[i]+=n.size}o.getPadding&&Yn(s,o.getPadding());const l=Math.max(0,t.outerWidth-Gn(s,e,"left","right")),u=Math.max(0,t.outerHeight-Gn(s,e,"top","bottom")),c=l!==e.w,d=u!==e.h;return e.w=l,e.h=u,n.horizontal?{same:c,other:d}:{same:d,other:c}}function Qn(e,t){const n=t.maxPadding;return function(e){const a={left:0,top:0,right:0,bottom:0};return e.forEach((e=>{a[e]=Math.max(t[e],n[e])})),a}(e?["left","right"]:["top","bottom"])}function Zn(e,t,n,a){const i=[];let r,o,s,l,u,c;for(r=0,o=e.length,u=0;re.box.fullSize)),!0),a=Wn(Un(t,"left"),!0),i=Wn(Un(t,"right")),r=Wn(Un(t,"top"),!0),o=Wn(Un(t,"bottom")),s=Hn(t,"x"),l=Hn(t,"y");return{fullSize:n,leftAndTop:a.concat(r),rightAndBottom:i.concat(l).concat(o).concat(s),chartArea:Un(t,"chartArea"),vertical:a.concat(i).concat(l),horizontal:r.concat(o).concat(s)}}(e.boxes),l=s.vertical,u=s.horizontal;h(e.boxes,(e=>{"function"==typeof e.beforeLayout&&e.beforeLayout()}));const c=l.reduce(((e,t)=>t.box.options&&!1===t.box.options.display?e:e+1),0)||1,d=Object.freeze({outerWidth:t,outerHeight:n,padding:i,availableWidth:r,availableHeight:o,vBoxMaxWidth:r/2/c,hBoxMaxHeight:o/2}),p=Object.assign({},i);Yn(p,yn(a));const f=Object.assign({maxPadding:p,w:r,h:o,x:i.left,y:i.top},i),m=function(e,t){const n=function(e){const t={};for(const n of e){const{stack:e,pos:a,stackWeight:i}=n;if(!e||!Vn.includes(a))continue;const r=t[e]||(t[e]={count:0,placed:0,weight:0,size:0});r.count++,r.weight+=i}return t}(e),{vBoxMaxWidth:a,hBoxMaxHeight:i}=t;let r,o,s;for(r=0,o=e.length;r{const n=t.box;Object.assign(n,e.chartArea),n.update(f.w,f.h,{left:0,top:0,right:0,bottom:0})}))}};class ta{acquireContext(e,t){}releaseContext(e){return!1}addEventListener(e,t,n){}removeEventListener(e,t,n){}getDevicePixelRatio(){return 1}getMaximumSize(e,t,n,a){return t=Math.max(0,t||e.width),n=n||e.height,{width:t,height:Math.max(0,a?Math.floor(t/a):n)}}isAttached(e){return!0}updateConfig(e){}}class na extends ta{acquireContext(e){return e&&e.getContext&&e.getContext("2d")||null}updateConfig(e){e.options.animation=!1}}const aa="$chartjs",ia={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},ra=e=>null===e||""===e,oa=!!yt&&{passive:!0};function sa(e,t,n){e&&e.canvas&&e.canvas.removeEventListener(t,n,oa)}function la(e,t){for(const n of e)if(n===t||n.contains(t))return!0}function ua(e,t,n){const a=e.canvas,i=new MutationObserver((e=>{let t=!1;for(const n of e)t=t||la(n.addedNodes,a),t=t&&!la(n.removedNodes,a);t&&n()}));return i.observe(document,{childList:!0,subtree:!0}),i}function ca(e,t,n){const a=e.canvas,i=new MutationObserver((e=>{let t=!1;for(const n of e)t=t||la(n.removedNodes,a),t=t&&!la(n.addedNodes,a);t&&n()}));return i.observe(document,{childList:!0,subtree:!0}),i}const da=new Map;let ha=0;function pa(){const e=window.devicePixelRatio;e!==ha&&(ha=e,da.forEach(((t,n)=>{n.currentDevicePixelRatio!==e&&t()})))}function fa(e,t,n){const a=e.canvas,i=a&&ut(a);if(!i)return;const r=ce(((e,t)=>{const a=i.clientWidth;n(e,t),a{const t=e[0],n=t.contentRect.width,a=t.contentRect.height;0===n&&0===a||r(n,a)}));return o.observe(i),function(e,t){da.size||window.addEventListener("resize",pa),da.set(e,t)}(e,r),o}function ma(e,t,n){n&&n.disconnect(),"resize"===t&&function(e){da.delete(e),da.size||window.removeEventListener("resize",pa)}(e)}function ga(e,t,n){const a=e.canvas,i=ce((t=>{null!==e.ctx&&n(function(e,t){const n=ia[e.type]||e.type,{x:a,y:i}=gt(e,t);return{type:n,chart:t,native:e,x:void 0!==a?a:null,y:void 0!==i?i:null}}(t,e))}),e);return function(e,t,n){e&&e.addEventListener(t,n,oa)}(a,t,i),i}class _a extends ta{acquireContext(e,t){const n=e&&e.getContext&&e.getContext("2d");return n&&n.canvas===e?(function(e,t){const n=e.style,a=e.getAttribute("height"),i=e.getAttribute("width");if(e[aa]={initial:{height:a,width:i,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",n.boxSizing=n.boxSizing||"border-box",ra(i)){const t=wt(e,"width");void 0!==t&&(e.width=t)}if(ra(a))if(""===e.style.height)e.height=e.width/(t||2);else{const t=wt(e,"height");void 0!==t&&(e.height=t)}}(e,t),n):null}releaseContext(e){const t=e.canvas;if(!t[aa])return!1;const n=t[aa].initial;["height","width"].forEach((e=>{const i=n[e];a(i)?t.removeAttribute(e):t.setAttribute(e,i)}));const i=n.style||{};return Object.keys(i).forEach((e=>{t.style[e]=i[e]})),t.width=t.width,delete t[aa],!0}addEventListener(e,t,n){this.removeEventListener(e,t);const a=e.$proxies||(e.$proxies={}),i={attach:ua,detach:ca,resize:fa}[t]||ga;a[t]=i(e,t,n)}removeEventListener(e,t){const n=e.$proxies||(e.$proxies={}),a=n[t];a&&(({attach:ma,detach:ma,resize:ma}[t]||sa)(e,t,a),n[t]=void 0)}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(e,t,n,a){return vt(e,t,n,a)}isAttached(e){const t=e&&ut(e);return!(!t||!t.isConnected)}}function va(e){return!lt()||"undefined"!=typeof OffscreenCanvas&&e instanceof OffscreenCanvas?na:_a}var ba=Object.freeze({__proto__:null,BasePlatform:ta,BasicPlatform:na,DomPlatform:_a,_detectPlatform:va});const ya="transparent",wa={boolean:(e,t,n)=>n>.5?t:e,color(e,t,n){const a=Ke(e||ya),i=a.valid&&Ke(t||ya);return i&&i.valid?i.mix(a,n).hexString():t},number:(e,t,n)=>e+(t-e)*n};class ka{constructor(e,t,n,a){const i=t[n];a=kn([e.to,a,i,e.from]);const r=kn([e.from,i,a]);this._active=!0,this._fn=e.fn||wa[e.type||typeof r],this._easing=un[e.easing]||un.linear,this._start=Math.floor(Date.now()+(e.delay||0)),this._duration=this._total=Math.floor(e.duration),this._loop=!!e.loop,this._target=t,this._prop=n,this._from=r,this._to=a,this._promises=void 0}active(){return this._active}update(e,t,n){if(this._active){this._notify(!1);const a=this._target[this._prop],i=n-this._start,r=this._duration-i;this._start=n,this._duration=Math.floor(Math.max(r,e.duration)),this._total+=i,this._loop=!!e.loop,this._to=kn([e.to,t,a,e.from]),this._from=kn([e.from,a,t])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(e){const t=e-this._start,n=this._duration,a=this._prop,i=this._from,r=this._loop,o=this._to;let s;if(this._active=i!==o&&(r||t1?2-s:s,s=this._easing(Math.min(1,Math.max(0,s))),this._target[a]=this._fn(i,o,s))}wait(){const e=this._promises||(this._promises=[]);return new Promise(((t,n)=>{e.push({res:t,rej:n})}))}_notify(e){const t=e?"res":"rej",n=this._promises||[];for(let e=0;e{const o=e[a];if(!r(o))return;const s={};for(const e of t)s[e]=o[e];(i(o.properties)&&o.properties||[a]).forEach((e=>{e!==a&&n.has(e)||n.set(e,s)}))}))}_animateOptions(e,t){const n=t.options,a=function(e,t){if(!t)return;let n=e.options;if(n)return n.$shared&&(e.options=n=Object.assign({},n,{$shared:!1,$animations:{}})),n;e.options=t}(e,n);if(!a)return[];const i=this._createAnimations(a,n);return n.$shared&&function(e,t){const n=[],a=Object.keys(t);for(let t=0;t{e.options=n}),(()=>{})),i}_createAnimations(e,t){const n=this._properties,a=[],i=e.$animations||(e.$animations={}),r=Object.keys(t),o=Date.now();let s;for(s=r.length-1;s>=0;--s){const l=r[s];if("$"===l.charAt(0))continue;if("options"===l){a.push(...this._animateOptions(e,t));continue}const u=t[l];let c=i[l];const d=n.get(l);if(c){if(d&&c.active()){c.update(d,u,o);continue}c.cancel()}d&&d.duration?(i[l]=c=new ka(d,e,l,u),a.push(c)):e[l]=u}return a}update(e,t){if(0===this._properties.size)return void Object.assign(e,t);const n=this._createAnimations(e,t);return n.length?(_e.add(this._chart,n),!0):void 0}}function Sa(e,t){const n=e&&e.options||{},a=n.reverse,i=void 0===n.min?t:0,r=void 0===n.max?t:0;return{start:a?r:i,end:a?i:r}}function Ca(e,t){const n=[],a=e._getSortedDatasetMetas(t);let i,r;for(i=0,r=a.length;i0||!n&&t<0)return i.index}return null}function La(e,t){const{chart:n,_cachedMeta:a}=e,i=n._stacks||(n._stacks={}),{iScale:r,vScale:o,index:s}=a,l=r.axis,u=o.axis,c=function(e,t,n){return`${e.id}.${t.id}.${n.stack||n.type}`}(r,o,a),d=t.length;let h;for(let e=0;en[e].axis===t)).shift()}function Ra(e,t){const n=e.controller.index,a=e.vScale&&e.vScale.axis;if(a){t=t||e._parsed;for(const e of t){const t=e._stacks;if(!t||void 0===t[a]||void 0===t[a][n])return;delete t[a][n],void 0!==t[a]._visualValues&&void 0!==t[a]._visualValues[n]&&delete t[a]._visualValues[n]}}}const za=e=>"reset"===e||"none"===e,Na=(e,t)=>t?e:Object.assign({},e);class Ia{static defaults={};static datasetElementType=null;static dataElementType=null;constructor(e,t){this.chart=e,this._ctx=e.ctx,this.index=t,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const e=this._cachedMeta;this.configure(),this.linkScales(),e._stacked=Ea(e.vScale,e),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(e){this.index!==e&&Ra(this._cachedMeta),this.index=e}linkScales(){const e=this.chart,t=this._cachedMeta,n=this.getDataset(),a=(e,t,n,a)=>"x"===e?t:"r"===e?a:n,i=t.xAxisID=l(n.xAxisID,Ma(e,"x")),r=t.yAxisID=l(n.yAxisID,Ma(e,"y")),o=t.rAxisID=l(n.rAxisID,Ma(e,"r")),s=t.indexAxis,u=t.iAxisID=a(s,i,r,o),c=t.vAxisID=a(s,r,i,o);t.xScale=this.getScaleForId(i),t.yScale=this.getScaleForId(r),t.rScale=this.getScaleForId(o),t.iScale=this.getScaleForId(u),t.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(e){return this.chart.scales[e]}_getOtherScale(e){const t=this._cachedMeta;return e===t.iScale?t.vScale:t.iScale}reset(){this._update("reset")}_destroy(){const e=this._cachedMeta;this._data&&se(this._data,this),e._stacked&&Ra(e)}_dataCheck(){const e=this.getDataset(),t=e.data||(e.data=[]),n=this._data;if(r(t)){const e=this._cachedMeta;this._data=function(e,t){const{iScale:n,vScale:a}=t,i="x"===n.axis?"x":"y",r="x"===a.axis?"x":"y",o=Object.keys(e),s=new Array(o.length);let l,u,c;for(l=0,u=o.length;l0&&n._parsed[e-1];if(!1===this._parsing)n._parsed=a,n._sorted=!0,d=a;else{d=i(a[e])?this.parseArrayData(n,a,e,t):r(a[e])?this.parseObjectData(n,a,e,t):this.parsePrimitiveData(n,a,e,t);const o=()=>null===c[l]||p&&c[l]e&&!t.hidden&&t._stacked&&{keys:Ca(n,!0),values:null})(t,n,this.chart),u={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:d}=function(e){const{min:t,max:n,minDefined:a,maxDefined:i}=e.getUserBounds();return{min:a?t:Number.NEGATIVE_INFINITY,max:i?n:Number.POSITIVE_INFINITY}}(s);let h,p;function f(){p=a[h];const t=p[s.axis];return!o(p[e.axis])||c>t||d=0;--h)if(!f()){this.updateRangeFromParsed(u,e,p,l);break}return u}getAllParsedValues(e){const t=this._cachedMeta._parsed,n=[];let a,i,r;for(a=0,i=t.length;a=0&&ethis.getContext(n,a,t)),c);return p.$shared&&(p.$shared=s,i[r]=Object.freeze(Na(p,s))),p}_resolveAnimations(e,t,n){const a=this.chart,i=this._cachedDataOpts,r=`animation-${t}`,o=i[r];if(o)return o;let s;if(!1!==a.options.animation){const a=this.chart.config,i=a.datasetAnimationScopeKeys(this._type,t),r=a.getOptionScopes(this.getDataset(),i);s=a.createResolver(r,this.getContext(e,n,t))}const l=new xa(a,s&&s.animations);return s&&s._cacheable&&(i[r]=Object.freeze(l)),l}getSharedOptions(e){if(e.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},e))}includeOptions(e,t){return!t||za(e)||this.chart._animationsDisabled}_getSharedOptions(e,t){const n=this.resolveDataElementOptions(e,t),a=this._sharedOptions,i=this.getSharedOptions(n),r=this.includeOptions(t,i)||i!==a;return this.updateSharedOptions(i,t,n),{sharedOptions:i,includeOptions:r}}updateElement(e,t,n,a){za(a)?Object.assign(e,n):this._resolveAnimations(t,a).update(e,n)}updateSharedOptions(e,t,n){e&&!za(t)&&this._resolveAnimations(void 0,t).update(e,n)}_setStyle(e,t,n,a){e.active=a;const i=this.getStyle(t,a);this._resolveAnimations(t,n,a).update(e,{options:!a&&this.getSharedOptions(i)||i})}removeHoverStyle(e,t,n){this._setStyle(e,n,"active",!1)}setHoverStyle(e,t,n){this._setStyle(e,n,"active",!0)}_removeDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!1)}_setDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!0)}_resyncElements(e){const t=this._data,n=this._cachedMeta.data;for(const[e,t,n]of this._syncList)this[e](t,n);this._syncList=[];const a=n.length,i=t.length,r=Math.min(i,a);r&&this.parse(0,r),i>a?this._insertElements(a,i-a,e):i{for(e.length+=t,o=e.length-1;o>=r;o--)e[o]=e[o-t]};for(s(i),o=e;o{a[e]=n[e]&&n[e].active()?n[e]._to:this[e]})),a}}function Da(e,t){const n=e.options.ticks,i=function(e){const t=e.options.offset,n=e._tickSize(),a=e._length/n+(t?0:1),i=e._maxLength/n;return Math.floor(Math.min(a,i))}(e),r=Math.min(n.maxTicksLimit||i,i),o=n.major.enabled?function(e){const t=[];let n,a;for(n=0,a=e.length;nr)return function(e,t,n,a){let i,r=0,o=n[0];for(a=Math.ceil(a),i=0;ii)return t}return Math.max(i,1)}(o,t,r);if(s>0){let e,n;const i=s>1?Math.round((u-l)/(s-1)):null;for(qa(t,c,d,a(i)?0:l-i,l),e=0,n=s-1;e"top"===t||"left"===t?e[t]+n:e[t]-n,Ba=(e,t)=>Math.min(t||e,e);function Fa(e,t){const n=[],a=e.length/t,i=e.length;let r=0;for(;ro+s)))return u}function Va(e){return e.drawTicks?e.tickLength:0}function Ua(e,t){if(!e.display)return 0;const n=wn(e.font,t),a=yn(e.padding);return(i(e.text)?e.text.length:1)*n.lineHeight+a.height}function Ha(e,t,n){let a=he(e);return(n&&"right"!==t||!n&&"right"===t)&&(a=(e=>"left"===e?"right":"right"===e?"left":e)(a)),a}class Wa extends Oa{constructor(e){super(),this.id=e.id,this.type=e.type,this.options=void 0,this.ctx=e.ctx,this.chart=e.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(e){this.options=e.setContext(this.getContext()),this.axis=e.axis,this._userMin=this.parse(e.min),this._userMax=this.parse(e.max),this._suggestedMin=this.parse(e.suggestedMin),this._suggestedMax=this.parse(e.suggestedMax)}parse(e,t){return e}getUserBounds(){let{_userMin:e,_userMax:t,_suggestedMin:n,_suggestedMax:a}=this;return e=s(e,Number.POSITIVE_INFINITY),t=s(t,Number.NEGATIVE_INFINITY),n=s(n,Number.POSITIVE_INFINITY),a=s(a,Number.NEGATIVE_INFINITY),{min:s(e,n),max:s(t,a),minDefined:o(e),maxDefined:o(t)}}getMinMax(e){let t,{min:n,max:a,minDefined:i,maxDefined:r}=this.getUserBounds();if(i&&r)return{min:n,max:a};const o=this.getMatchingVisibleMetas();for(let s=0,l=o.length;sa?a:n,a=i&&n>a?n:a,{min:s(n,s(a,n)),max:s(a,s(n,a))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const e=this.chart.data;return this.options.labels||(this.isHorizontal()?e.xLabels:e.yLabels)||e.labels||[]}getLabelItems(e=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(e))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){d(this.options.beforeUpdate,[this])}update(e,t,n){const{beginAtZero:a,grace:i,ticks:r}=this.options,o=r.sampleSize;this.beforeUpdate(),this.maxWidth=e,this.maxHeight=t,this._margins=n=Object.assign({left:0,right:0,top:0,bottom:0},n),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+n.left+n.right:this.height+n.top+n.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=xn(this,i,a),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const s=o=i||n<=1||!this.isHorizontal())return void(this.labelRotation=a);const u=this._getLabelSizes(),c=u.widest.width,d=u.highest.height,h=J(this.chart.width-c,0,this.maxWidth);r=e.offset?this.maxWidth/n:h/(n-1),c+6>r&&(r=h/(n-(e.offset?.5:1)),o=this.maxHeight-Va(e.grid)-t.padding-Ua(e.title,this.chart.options.font),s=Math.sqrt(c*c+d*d),l=H(Math.min(Math.asin(J((u.highest.height+6)/r,-1,1)),Math.asin(J(o/s,-1,1))-Math.asin(J(d/s,-1,1)))),l=Math.max(a,Math.min(i,l))),this.labelRotation=l}afterCalculateLabelRotation(){d(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){d(this.options.beforeFit,[this])}fit(){const e={width:0,height:0},{chart:t,options:{ticks:n,title:a,grid:i}}=this,r=this._isVisible(),o=this.isHorizontal();if(r){const r=Ua(a,t.options.font);if(o?(e.width=this.maxWidth,e.height=Va(i)+r):(e.height=this.maxHeight,e.width=Va(i)+r),n.display&&this.ticks.length){const{first:t,last:a,widest:i,highest:r}=this._getLabelSizes(),s=2*n.padding,l=U(this.labelRotation),u=Math.cos(l),c=Math.sin(l);if(o){const t=n.mirror?0:c*i.width+u*r.height;e.height=Math.min(this.maxHeight,e.height+t+s)}else{const t=n.mirror?0:u*i.width+c*r.height;e.width=Math.min(this.maxWidth,e.width+t+s)}this._calculatePadding(t,a,c,u)}}this._handleMargins(),o?(this.width=this._length=t.width-this._margins.left-this._margins.right,this.height=e.height):(this.width=e.width,this.height=this._length=t.height-this._margins.top-this._margins.bottom)}_calculatePadding(e,t,n,a){const{ticks:{align:i,padding:r},position:o}=this.options,s=0!==this.labelRotation,l="top"!==o&&"x"===this.axis;if(this.isHorizontal()){const o=this.getPixelForTick(0)-this.left,u=this.right-this.getPixelForTick(this.ticks.length-1);let c=0,d=0;s?l?(c=a*e.width,d=n*t.height):(c=n*e.height,d=a*t.width):"start"===i?d=t.width:"end"===i?c=e.width:"inner"!==i&&(c=e.width/2,d=t.width/2),this.paddingLeft=Math.max((c-o+r)*this.width/(this.width-o),0),this.paddingRight=Math.max((d-u+r)*this.width/(this.width-u),0)}else{let n=t.height/2,a=e.height/2;"start"===i?(n=0,a=e.height):"end"===i&&(n=t.height,a=0),this.paddingTop=n+r,this.paddingBottom=a+r}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){d(this.options.afterFit,[this])}isHorizontal(){const{axis:e,position:t}=this.options;return"top"===t||"bottom"===t||"x"===e}isFullSize(){return this.options.fullSize}_convertTicksToLabels(e){let t,n;for(this.beforeTickToLabelConversion(),this.generateTickLabels(e),t=0,n=e.length;t{const n=e.gc,a=n.length/2;let i;if(a>t){for(i=0;i({width:s[e]||0,height:l[e]||0});return{first:T(0),last:T(t-1),widest:T(S),highest:T(C),widths:s,heights:l}}getLabelForValue(e){return e}getPixelForValue(e,t){return NaN}getValueForPixel(e){}getPixelForTick(e){const t=this.ticks;return e<0||e>t.length-1?null:this.getPixelForValue(t[e].value)}getPixelForDecimal(e){this._reversePixels&&(e=1-e);const t=this._startPixel+e*this._length;return X(this._alignToPixels?Ct(this.chart,t,0):t)}getDecimalForPixel(e){const t=(e-this._startPixel)/this._length;return this._reversePixels?1-t:t}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:e,max:t}=this;return e<0&&t<0?t:e>0&&t>0?e:0}getContext(e){const t=this.ticks||[];if(e>=0&&eo*a?o/n:s/a:s*a0}_computeGridLineItems(e){const t=this.axis,n=this.chart,a=this.options,{grid:i,position:o,border:s}=a,u=i.offset,c=this.isHorizontal(),d=this.ticks.length+(u?1:0),h=Va(i),p=[],f=s.setContext(this.getContext()),m=f.display?f.width:0,g=m/2,_=function(e){return Ct(n,e,m)};let v,b,y,w,k,x,S,C,T,E,P,A;if("top"===o)v=_(this.bottom),x=this.bottom-h,C=v-g,E=_(e.top)+g,A=e.bottom;else if("bottom"===o)v=_(this.top),E=e.top,A=_(e.bottom)-g,x=v+g,C=this.top+h;else if("left"===o)v=_(this.right),k=this.right-h,S=v-g,T=_(e.left)+g,P=e.right;else if("right"===o)v=_(this.left),T=e.left,P=_(e.right)-g,k=v+g,S=this.left+h;else if("x"===t){if("center"===o)v=_((e.top+e.bottom)/2+.5);else if(r(o)){const e=Object.keys(o)[0],t=o[e];v=_(this.chart.scales[e].getPixelForValue(t))}E=e.top,A=e.bottom,x=v+g,C=x+h}else if("y"===t){if("center"===o)v=_((e.left+e.right)/2);else if(r(o)){const e=Object.keys(o)[0],t=o[e];v=_(this.chart.scales[e].getPixelForValue(t))}k=v-g,S=k-h,T=e.left,P=e.right}const L=l(a.ticks.maxTicksLimit,d),M=Math.max(1,Math.ceil(d/L));for(b=0;b0&&(r-=a/2)}d={left:r,top:i,width:a+t.width,height:n+t.height,color:e.backdropColor}}_.push({label:w,font:T,textOffset:A,options:{rotation:g,color:n,strokeColor:r,strokeWidth:u,textAlign:p,textBaseline:L,translation:[k,x],backdrop:d}})}return _}_getXAxisLabelAlignment(){const{position:e,ticks:t}=this.options;if(-U(this.labelRotation))return"top"===e?"left":"right";let n="center";return"start"===t.align?n="left":"end"===t.align?n="right":"inner"===t.align&&(n="inner"),n}_getYAxisLabelAlignment(e){const{position:t,ticks:{crossAlign:n,mirror:a,padding:i}}=this.options,r=e+i,o=this._getLabelSizes().widest.width;let s,l;return"left"===t?a?(l=this.right+i,"near"===n?s="left":"center"===n?(s="center",l+=o/2):(s="right",l+=o)):(l=this.right-r,"near"===n?s="right":"center"===n?(s="center",l-=o/2):(s="left",l=this.left)):"right"===t?a?(l=this.left+i,"near"===n?s="right":"center"===n?(s="center",l-=o/2):(s="left",l-=o)):(l=this.left+r,"near"===n?s="left":"center"===n?(s="center",l+=o/2):(s="right",l=this.right)):s="right",{textAlign:s,x:l}}_computeLabelArea(){if(this.options.ticks.mirror)return;const e=this.chart,t=this.options.position;return"left"===t||"right"===t?{top:0,left:this.left,bottom:e.height,right:this.right}:"top"===t||"bottom"===t?{top:this.top,left:0,bottom:this.bottom,right:e.width}:void 0}drawBackground(){const{ctx:e,options:{backgroundColor:t},left:n,top:a,width:i,height:r}=this;t&&(e.save(),e.fillStyle=t,e.fillRect(n,a,i,r),e.restore())}getLineWidthForValue(e){const t=this.options.grid;if(!this._isVisible()||!t.display)return 0;const n=this.ticks.findIndex((t=>t.value===e));return n>=0?t.setContext(this.getContext(n)).lineWidth:0}drawGrid(e){const t=this.options.grid,n=this.ctx,a=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(e));let i,r;const o=(e,t,a)=>{a.width&&a.color&&(n.save(),n.lineWidth=a.width,n.strokeStyle=a.color,n.setLineDash(a.borderDash||[]),n.lineDashOffset=a.borderDashOffset,n.beginPath(),n.moveTo(e.x,e.y),n.lineTo(t.x,t.y),n.stroke(),n.restore())};if(t.display)for(i=0,r=a.length;i{this.drawBackground(),this.drawGrid(e),this.drawTitle()}},{z:a,draw:()=>{this.drawBorder()}},{z:t,draw:e=>{this.drawLabels(e)}}]:[{z:t,draw:e=>{this.draw(e)}}]}getMatchingVisibleMetas(e){const t=this.chart.getSortedVisibleDatasetMetas(),n=this.axis+"AxisID",a=[];let i,r;for(i=0,r=t.length;i{const a=n.split("."),i=a.pop(),r=[e].concat(a).join("."),o=t[n].split("."),s=o.pop(),l=o.join(".");st.route(r,i,l,s)}))}(t,e.defaultRoutes),e.descriptors&&st.describe(t,e.descriptors)}(e,r,n),this.override&&st.override(e.id,e.overrides)),r}get(e){return this.items[e]}unregister(e){const t=this.items,n=e.id,a=this.scope;n in t&&delete t[n],a&&n in st[a]&&(delete st[a][n],this.override&&delete at[n])}}var Ya=new class{constructor(){this.controllers=new Ga(Ia,"datasets",!0),this.elements=new Ga(Oa,"elements"),this.plugins=new Ga(Object,"plugins"),this.scales=new Ga(Wa,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...e){this._each("register",e)}remove(...e){this._each("unregister",e)}addControllers(...e){this._each("register",e,this.controllers)}addElements(...e){this._each("register",e,this.elements)}addPlugins(...e){this._each("register",e,this.plugins)}addScales(...e){this._each("register",e,this.scales)}getController(e){return this._get(e,this.controllers,"controller")}getElement(e){return this._get(e,this.elements,"element")}getPlugin(e){return this._get(e,this.plugins,"plugin")}getScale(e){return this._get(e,this.scales,"scale")}removeControllers(...e){this._each("unregister",e,this.controllers)}removeElements(...e){this._each("unregister",e,this.elements)}removePlugins(...e){this._each("unregister",e,this.plugins)}removeScales(...e){this._each("unregister",e,this.scales)}_each(e,t,n){[...t].forEach((t=>{const a=n||this._getRegistryForType(t);n||a.isForType(t)||a===this.plugins&&t.id?this._exec(e,a,t):h(t,(t=>{const a=n||this._getRegistryForType(t);this._exec(e,a,t)}))}))}_exec(e,t,n){const a=x(e);d(n["before"+a],[],n),t[e](n),d(n["after"+a],[],n)}_getRegistryForType(e){for(let t=0;te.filter((e=>!t.some((t=>e.plugin.id===t.plugin.id))));this._notify(a(t,n),e,"stop"),this._notify(a(n,t),e,"start")}}function Qa(e,t){return t||!1!==e?!0===e?{}:e:null}function Za(e,{plugin:t,local:n},a,i){const r=e.pluginScopeKeys(t),o=e.getOptionScopes(a,r);return n&&t.defaults&&o.push(t.defaults),e.createResolver(o,i,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function Ja(e,t){const n=st.datasets[e]||{};return((t.datasets||{})[e]||{}).indexAxis||t.indexAxis||n.indexAxis||"x"}function Xa(e){if("x"===e||"y"===e||"r"===e)return e}function ei(e,...t){if(Xa(e))return e;for(const a of t){const t=a.axis||("top"===(n=a.position)||"bottom"===n?"x":"left"===n||"right"===n?"y":void 0)||e.length>1&&Xa(e[0].toLowerCase());if(t)return t}var n;throw new Error(`Cannot determine type of '${e}' axis. Please provide 'axis' or 'position' option.`)}function ti(e,t,n){if(n[t+"AxisID"]===e)return{axis:t}}function ni(e){const t=e.options||(e.options={});t.plugins=l(t.plugins,{}),t.scales=function(e,t){const n=at[e.type]||{scales:{}},a=t.scales||{},i=Ja(e.type,t),o=Object.create(null);return Object.keys(a).forEach((t=>{const s=a[t];if(!r(s))return console.error(`Invalid scale configuration for scale: ${t}`);if(s._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${t}`);const l=ei(t,s,function(e,t){if(t.data&&t.data.datasets){const n=t.data.datasets.filter((t=>t.xAxisID===e||t.yAxisID===e));if(n.length)return ti(e,"x",n[0])||ti(e,"y",n[0])}return{}}(t,e),st.scales[s.type]),u=function(e,t){return e===t?"_index_":"_value_"}(l,i),c=n.scales||{};o[t]=v(Object.create(null),[{axis:l},s,c[l],c[u]])})),e.data.datasets.forEach((n=>{const i=n.type||e.type,r=n.indexAxis||Ja(i,t),s=(at[i]||{}).scales||{};Object.keys(s).forEach((e=>{const t=function(e,t){let n=e;return"_index_"===e?n=t:"_value_"===e&&(n="x"===t?"y":"x"),n}(e,r),i=n[t+"AxisID"]||t;o[i]=o[i]||Object.create(null),v(o[i],[{axis:t},a[i],s[e]])}))})),Object.keys(o).forEach((e=>{const t=o[e];v(t,[st.scales[t.type],st.scale])})),o}(e,t)}function ai(e){return(e=e||{}).datasets=e.datasets||[],e.labels=e.labels||[],e}const ii=new Map,ri=new Set;function oi(e,t){let n=ii.get(e);return n||(n=t(),ii.set(e,n),ri.add(n)),n}const si=(e,t,n)=>{const a=k(t,n);void 0!==a&&e.add(a)};class li{constructor(e){this._config=function(e){return(e=e||{}).data=ai(e.data),ni(e),e}(e),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(e){this._config.type=e}get data(){return this._config.data}set data(e){this._config.data=ai(e)}get options(){return this._config.options}set options(e){this._config.options=e}get plugins(){return this._config.plugins}update(){const e=this._config;this.clearCache(),ni(e)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(e){return oi(e,(()=>[[`datasets.${e}`,""]]))}datasetAnimationScopeKeys(e,t){return oi(`${e}.transition.${t}`,(()=>[[`datasets.${e}.transitions.${t}`,`transitions.${t}`],[`datasets.${e}`,""]]))}datasetElementScopeKeys(e,t){return oi(`${e}-${t}`,(()=>[[`datasets.${e}.elements.${t}`,`datasets.${e}`,`elements.${t}`,""]]))}pluginScopeKeys(e){const t=e.id;return oi(`${this.type}-plugin-${t}`,(()=>[[`plugins.${t}`,...e.additionalOptionScopes||[]]]))}_cachedScopes(e,t){const n=this._scopeCache;let a=n.get(e);return a&&!t||(a=new Map,n.set(e,a)),a}getOptionScopes(e,t,n){const{options:a,type:i}=this,r=this._cachedScopes(e,n),o=r.get(t);if(o)return o;const s=new Set;t.forEach((t=>{e&&(s.add(e),t.forEach((t=>si(s,e,t)))),t.forEach((e=>si(s,a,e))),t.forEach((e=>si(s,at[i]||{},e))),t.forEach((e=>si(s,st,e))),t.forEach((e=>si(s,it,e)))}));const l=Array.from(s);return 0===l.length&&l.push(Object.create(null)),ri.has(t)&&r.set(t,l),l}chartOptionScopes(){const{options:e,type:t}=this;return[e,at[t]||{},st.datasets[t]||{},{type:t},st,it]}resolveNamedOptions(e,t,n,a=[""]){const r={$shared:!0},{resolver:o,subPrefixes:s}=ui(this._resolverCache,e,a);let l=o;(function(e,t){const{isScriptable:n,isIndexable:a}=Bt(e);for(const r of t){const t=n(r),o=a(r),s=(o||t)&&e[r];if(t&&(C(s)||ci(s))||o&&i(s))return!0}return!1})(o,t)&&(r.$shared=!1,l=jt(o,n=C(n)?n():n,this.createResolver(e,n,s)));for(const e of t)r[e]=l[e];return r}createResolver(e,t,n=[""],a){const{resolver:i}=ui(this._resolverCache,e,n);return r(t)?jt(i,t,void 0,a):i}}function ui(e,t,n){let a=e.get(t);a||(a=new Map,e.set(t,a));const i=n.join();let r=a.get(i);return r||(r={resolver:qt(t,n),subPrefixes:n.filter((e=>!e.toLowerCase().includes("hover")))},a.set(i,r)),r}const ci=e=>r(e)&&Object.getOwnPropertyNames(e).some((t=>C(e[t]))),di=["top","bottom","left","right","chartArea"];function hi(e,t){return"top"===e||"bottom"===e||-1===di.indexOf(e)&&"x"===t}function pi(e,t){return function(n,a){return n[e]===a[e]?n[t]-a[t]:n[e]-a[e]}}function fi(e){const t=e.chart,n=t.options.animation;t.notifyPlugins("afterRender"),d(n&&n.onComplete,[e],t)}function mi(e){const t=e.chart,n=t.options.animation;d(n&&n.onProgress,[e],t)}function gi(e){return lt()&&"string"==typeof e?e=document.getElementById(e):e&&e.length&&(e=e[0]),e&&e.canvas&&(e=e.canvas),e}const _i={},vi=e=>{const t=gi(e);return Object.values(_i).filter((e=>e.canvas===t)).pop()};function bi(e,t,n){const a=Object.keys(e);for(const i of a){const a=+i;if(a>=t){const r=e[i];delete e[i],(n>0||a>t)&&(e[a+n]=r)}}}function yi(e,t,n){return e.options.clip?e[n]:t[n]}class wi{static defaults=st;static instances=_i;static overrides=at;static registry=Ya;static version="4.4.4";static getChart=vi;static register(...e){Ya.add(...e),ki()}static unregister(...e){Ya.remove(...e),ki()}constructor(e,t){const a=this.config=new li(t),i=gi(e),r=vi(i);if(r)throw new Error("Canvas is already in use. Chart with ID '"+r.id+"' must be destroyed before the canvas with ID '"+r.canvas.id+"' can be reused.");const o=a.createResolver(a.chartOptionScopes(),this.getContext());this.platform=new(a.platform||va(i)),this.platform.updateConfig(a);const s=this.platform.acquireContext(i,o.aspectRatio),l=s&&s.canvas,u=l&&l.height,c=l&&l.width;this.id=n(),this.ctx=s,this.canvas=l,this.width=c,this.height=u,this._options=o,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new Ka,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=de((e=>this.update(e)),o.resizeDelay||0),this._dataChanges=[],_i[this.id]=this,s&&l?(_e.listen(this,"complete",fi),_e.listen(this,"progress",mi),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:e,maintainAspectRatio:t},width:n,height:i,_aspectRatio:r}=this;return a(e)?t&&r?r:i?n/i:null:e}get data(){return this.config.data}set data(e){this.config.data=e}get options(){return this._options}set options(e){this.config.options=e}get registry(){return Ya}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():bt(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Tt(this.canvas,this.ctx),this}stop(){return _e.stop(this),this}resize(e,t){_e.running(this)?this._resizeBeforeDraw={width:e,height:t}:this._resize(e,t)}_resize(e,t){const n=this.options,a=this.canvas,i=n.maintainAspectRatio&&this.aspectRatio,r=this.platform.getMaximumSize(a,e,t,i),o=n.devicePixelRatio||this.platform.getDevicePixelRatio(),s=this.width?"resize":"attach";this.width=r.width,this.height=r.height,this._aspectRatio=this.aspectRatio,bt(this,o,!0)&&(this.notifyPlugins("resize",{size:r}),d(n.onResize,[this,r],this),this.attached&&this._doResize(s)&&this.render())}ensureScalesHaveIDs(){h(this.options.scales||{},((e,t)=>{e.id=t}))}buildOrUpdateScales(){const e=this.options,t=e.scales,n=this.scales,a=Object.keys(n).reduce(((e,t)=>(e[t]=!1,e)),{});let i=[];t&&(i=i.concat(Object.keys(t).map((e=>{const n=t[e],a=ei(e,n),i="r"===a,r="x"===a;return{options:n,dposition:i?"chartArea":r?"bottom":"left",dtype:i?"radialLinear":r?"category":"linear"}})))),h(i,(t=>{const i=t.options,r=i.id,o=ei(r,i),s=l(i.type,t.dtype);void 0!==i.position&&hi(i.position,o)===hi(t.dposition)||(i.position=t.dposition),a[r]=!0;let u=null;r in n&&n[r].type===s?u=n[r]:(u=new(Ya.getScale(s))({id:r,type:s,ctx:this.ctx,chart:this}),n[u.id]=u),u.init(i,e)})),h(a,((e,t)=>{e||delete n[t]})),h(n,(e=>{ea.configure(this,e,e.options),ea.addBox(this,e)}))}_updateMetasets(){const e=this._metasets,t=this.data.datasets.length,n=e.length;if(e.sort(((e,t)=>e.index-t.index)),n>t){for(let e=t;et.length&&delete this._stacks,e.forEach(((e,n)=>{0===t.filter((t=>t===e._dataset)).length&&this._destroyDatasetMeta(n)}))}buildOrUpdateControllers(){const e=[],t=this.data.datasets;let n,a;for(this._removeUnreferencedMetasets(),n=0,a=t.length;n{this.getDatasetMeta(t).controller.reset()}),this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(e){const t=this.config;t.update();const n=this._options=t.createResolver(t.chartOptionScopes(),this.getContext()),a=this._animationsDisabled=!n.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:e,cancelable:!0}))return;const i=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let r=0;for(let e=0,t=this.data.datasets.length;e{e.reset()})),this._updateDatasets(e),this.notifyPlugins("afterUpdate",{mode:e}),this._layers.sort(pi("z","_idx"));const{_active:o,_lastEvent:s}=this;s?this._eventHandler(s,!0):o.length&&this._updateHoverStyles(o,o,!0),this.render()}_updateScales(){h(this.scales,(e=>{ea.removeBox(this,e)})),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const e=this.options,t=new Set(Object.keys(this._listeners)),n=new Set(e.events);T(t,n)&&!!this._responsiveListeners===e.responsive||(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:e}=this,t=this._getUniformDataChanges()||[];for(const{method:n,start:a,count:i}of t)bi(e,a,"_removeElements"===n?-i:i)}_getUniformDataChanges(){const e=this._dataChanges;if(!e||!e.length)return;this._dataChanges=[];const t=this.data.datasets.length,n=t=>new Set(e.filter((e=>e[0]===t)).map(((e,t)=>t+","+e.splice(1).join(",")))),a=n(0);for(let e=1;ee.split(","))).map((e=>({method:e[1],start:+e[2],count:+e[3]})))}_updateLayout(e){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;ea.update(this,this.width,this.height,e);const t=this.chartArea,n=t.width<=0||t.height<=0;this._layers=[],h(this.boxes,(e=>{n&&"chartArea"===e.position||(e.configure&&e.configure(),this._layers.push(...e._layers()))}),this),this._layers.forEach(((e,t)=>{e._idx=t})),this.notifyPlugins("afterLayout")}_updateDatasets(e){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:e,cancelable:!0})){for(let e=0,t=this.data.datasets.length;e=0;--t)this._drawDataset(e[t]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(e){const t=this.ctx,n=e._clip,a=!n.disabled,i=function(e,t){const{xScale:n,yScale:a}=e;return n&&a?{left:yi(n,t,"left"),right:yi(n,t,"right"),top:yi(a,t,"top"),bottom:yi(a,t,"bottom")}:t}(e,this.chartArea),r={meta:e,index:e.index,cancelable:!0};!1!==this.notifyPlugins("beforeDatasetDraw",r)&&(a&&Lt(t,{left:!1===n.left?0:i.left-n.left,right:!1===n.right?this.width:i.right+n.right,top:!1===n.top?0:i.top-n.top,bottom:!1===n.bottom?this.height:i.bottom+n.bottom}),e.controller.draw(),a&&Mt(t),r.cancelable=!1,this.notifyPlugins("afterDatasetDraw",r))}isPointInArea(e){return At(e,this.chartArea,this._minPadding)}getElementsAtEventForMode(e,t,n,a){const i=$n.modes[t];return"function"==typeof i?i(this,e,n,a):[]}getDatasetMeta(e){const t=this.data.datasets[e],n=this._metasets;let a=n.filter((e=>e&&e._dataset===t)).pop();return a||(a={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:t&&t.order||0,index:e,_dataset:t,_parsed:[],_sorted:!1},n.push(a)),a}getContext(){return this.$context||(this.$context=Sn(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(e){const t=this.data.datasets[e];if(!t)return!1;const n=this.getDatasetMeta(e);return"boolean"==typeof n.hidden?!n.hidden:!t.hidden}setDatasetVisibility(e,t){this.getDatasetMeta(e).hidden=!t}toggleDataVisibility(e){this._hiddenIndices[e]=!this._hiddenIndices[e]}getDataVisibility(e){return!this._hiddenIndices[e]}_updateVisibility(e,t,n){const a=n?"show":"hide",i=this.getDatasetMeta(e),r=i.controller._resolveAnimations(void 0,a);S(t)?(i.data[t].hidden=!n,this.update()):(this.setDatasetVisibility(e,n),r.update(i,{visible:n}),this.update((t=>t.datasetIndex===e?a:void 0)))}hide(e,t){this._updateVisibility(e,t,!1)}show(e,t){this._updateVisibility(e,t,!0)}_destroyDatasetMeta(e){const t=this._metasets[e];t&&t.controller&&t.controller._destroy(),delete this._metasets[e]}_stop(){let e,t;for(this.stop(),_e.remove(this),e=0,t=this.data.datasets.length;e{t.addEventListener(this,n,a),e[n]=a},a=(e,t,n)=>{e.offsetX=t,e.offsetY=n,this._eventHandler(e)};h(this.options.events,(e=>n(e,a)))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const e=this._responsiveListeners,t=this.platform,n=(n,a)=>{t.addEventListener(this,n,a),e[n]=a},a=(n,a)=>{e[n]&&(t.removeEventListener(this,n,a),delete e[n])},i=(e,t)=>{this.canvas&&this.resize(e,t)};let r;const o=()=>{a("attach",o),this.attached=!0,this.resize(),n("resize",i),n("detach",r)};r=()=>{this.attached=!1,a("resize",i),this._stop(),this._resize(0,0),n("attach",o)},t.isAttached(this.canvas)?o():r()}unbindEvents(){h(this._listeners,((e,t)=>{this.platform.removeEventListener(this,t,e)})),this._listeners={},h(this._responsiveListeners,((e,t)=>{this.platform.removeEventListener(this,t,e)})),this._responsiveListeners=void 0}updateHoverStyle(e,t,n){const a=n?"set":"remove";let i,r,o,s;for("dataset"===t&&(i=this.getDatasetMeta(e[0].datasetIndex),i.controller["_"+a+"DatasetHoverStyle"]()),o=0,s=e.length;o{const n=this.getDatasetMeta(e);if(!n)throw new Error("No dataset found at index "+e);return{datasetIndex:e,element:n.data[t],index:t}}));!p(n,t)&&(this._active=n,this._lastEvent=null,this._updateHoverStyles(n,t))}notifyPlugins(e,t,n){return this._plugins.notify(this,e,t,n)}isPluginEnabled(e){return 1===this._plugins._cache.filter((t=>t.plugin.id===e)).length}_updateHoverStyles(e,t,n){const a=this.options.hover,i=(e,t)=>e.filter((e=>!t.some((t=>e.datasetIndex===t.datasetIndex&&e.index===t.index)))),r=i(t,e),o=n?e:i(e,t);r.length&&this.updateHoverStyle(r,a.mode,!1),o.length&&a.mode&&this.updateHoverStyle(o,a.mode,!0)}_eventHandler(e,t){const n={event:e,replay:t,cancelable:!0,inChartArea:this.isPointInArea(e)},a=t=>(t.options.events||this.options.events).includes(e.native.type);if(!1===this.notifyPlugins("beforeEvent",n,a))return;const i=this._handleEvent(e,t,n.inChartArea);return n.cancelable=!1,this.notifyPlugins("afterEvent",n,a),(i||n.changed)&&this.render(),this}_handleEvent(e,t,n){const{_active:a=[],options:i}=this,r=t,o=this._getActiveElements(e,a,n,r),s=E(e),l=function(e,t,n,a){return n&&"mouseout"!==e.type?a?t:e:null}(e,this._lastEvent,n,s);n&&(this._lastEvent=null,d(i.onHover,[e,o,this],this),s&&d(i.onClick,[e,o,this],this));const u=!p(o,a);return(u||t)&&(this._active=o,this._updateHoverStyles(o,a,t)),this._lastEvent=l,u}_getActiveElements(e,t,n,a){if("mouseout"===e.type)return[];if(!n)return t;const i=this.options.hover;return this.getElementsAtEventForMode(e,i.mode,i,a)}}function ki(){return h(wi.instances,(e=>e._plugins.invalidate()))}function xi(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class Si{static override(e){Object.assign(Si.prototype,e)}options;constructor(e){this.options=e||{}}init(){}formats(){return xi()}parse(){return xi()}format(){return xi()}add(){return xi()}diff(){return xi()}startOf(){return xi()}endOf(){return xi()}}var Ci={_date:Si};function Ti(e){const t=e.iScale,n=function(e,t){if(!e._cache.$bar){const n=e.getMatchingVisibleMetas(t);let a=[];for(let t=0,i=n.length;te-t)))}return e._cache.$bar}(t,e.type);let a,i,r,o,s=t._length;const l=()=>{32767!==r&&-32768!==r&&(S(o)&&(s=Math.min(s,Math.abs(r-o)||s)),o=r)};for(a=0,i=n.length;aMath.abs(s)&&(l=s,u=o),t[n.axis]=u,t._custom={barStart:l,barEnd:u,start:i,end:r,min:o,max:s}}(e,t,n,a):t[n.axis]=n.parse(e,a),t}function Pi(e,t,n,a){const i=e.iScale,r=e.vScale,o=i.getLabels(),s=i===r,l=[];let u,c,d,h;for(u=n,c=n+a;ue.x,n="left",a="right"):(t=e.base"spacing"!==e,_indexable:e=>"spacing"!==e&&!e.startsWith("borderDash")&&!e.startsWith("hoverBorderDash")};static overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(e){const t=e.data;if(t.labels.length&&t.datasets.length){const{labels:{pointStyle:n,color:a}}=e.legend.options;return t.labels.map(((t,i)=>{const r=e.getDatasetMeta(0).controller.getStyle(i);return{text:t,fillStyle:r.backgroundColor,strokeStyle:r.borderColor,fontColor:a,lineWidth:r.borderWidth,pointStyle:n,hidden:!e.getDataVisibility(i),index:i}}))}return[]}},onClick(e,t,n){n.chart.toggleDataVisibility(t.index),n.chart.update()}}}};constructor(e,t){super(e,t),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(e,t){const n=this.getDataset().data,a=this._cachedMeta;if(!1===this._parsing)a._parsed=n;else{let i,o,s=e=>+n[e];if(r(n[e])){const{key:e="value"}=this._parsing;s=t=>+k(n[t],e)}for(i=e,o=e+t;iZ(e,s,l,!0)?1:Math.max(t,t*n,a,a*n),f=(e,t,a)=>Z(e,s,l,!0)?-1:Math.min(t,t*n,a,a*n),m=p(0,u,d),g=p(z,c,h),_=f(P,u,d),v=f(P+z,c,h);a=(m-_)/2,i=(g-v)/2,r=-(m+_)/2,o=-(g+v)/2}return{ratioX:a,ratioY:i,offsetX:r,offsetY:o}}(h,d,s),_=(n.width-r)/p,v=(n.height-r)/f,b=Math.max(Math.min(_,v)/2,0),y=c(this.options.radius,b),w=(y-Math.max(y*s,0))/this._getVisibleDatasetWeightTotal();this.offsetX=m*y,this.offsetY=g*y,a.total=this.calculateTotal(),this.outerRadius=y-w*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-w*l,0),this.updateElements(i,0,i.length,e)}_circumference(e,t){const n=this.options,a=this._cachedMeta,i=this._getCircumference();return t&&n.animation.animateRotate||!this.chart.getDataVisibility(e)||null===a._parsed[e]||a.data[e].hidden?0:this.calculateCircumference(a._parsed[e]*i/A)}updateElements(e,t,n,a){const i="reset"===a,r=this.chart,o=r.chartArea,s=r.options.animation,l=(o.left+o.right)/2,u=(o.top+o.bottom)/2,c=i&&s.animateScale,d=c?0:this.innerRadius,h=c?0:this.outerRadius,{sharedOptions:p,includeOptions:f}=this._getSharedOptions(t,a);let m,g=this._getRotation();for(m=0;m0&&!isNaN(e)?A*(Math.abs(e)/t):0}getLabelAndValue(e){const t=this._cachedMeta,n=this.chart,a=n.data.labels||[],i=et(t._parsed[e],n.options.locale);return{label:a[e]||"",value:i}}getMaxBorderWidth(e){let t=0;const n=this.chart;let a,i,r,o,s;if(!e)for(a=0,i=n.data.datasets.length;a{const r=e.getDatasetMeta(0).controller.getStyle(i);return{text:t,fillStyle:r.backgroundColor,strokeStyle:r.borderColor,fontColor:a,lineWidth:r.borderWidth,pointStyle:n,hidden:!e.getDataVisibility(i),index:i}}))}return[]}},onClick(e,t,n){n.chart.toggleDataVisibility(t.index),n.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};constructor(e,t){super(e,t),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(e){const t=this._cachedMeta,n=this.chart,a=n.data.labels||[],i=et(t._parsed[e].r,n.options.locale);return{label:a[e]||"",value:i}}parseObjectData(e,t,n,a){return Zt.bind(this)(e,t,n,a)}update(e){const t=this._cachedMeta.data;this._updateRadius(),this.updateElements(t,0,t.length,e)}getMinMax(){const e=this._cachedMeta,t={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return e.data.forEach(((e,n)=>{const a=this.getParsed(n).r;!isNaN(a)&&this.chart.getDataVisibility(n)&&(at.max&&(t.max=a))})),t}_updateRadius(){const e=this.chart,t=e.chartArea,n=e.options,a=Math.min(t.right-t.left,t.bottom-t.top),i=Math.max(a/2,0),r=(i-Math.max(n.cutoutPercentage?i/100*n.cutoutPercentage:1,0))/e.getVisibleDatasetCount();this.outerRadius=i-r*this.index,this.innerRadius=this.outerRadius-r}updateElements(e,t,n,a){const i="reset"===a,r=this.chart,o=r.options.animation,s=this._cachedMeta.rScale,l=s.xCenter,u=s.yCenter,c=s.getIndexAngle(0)-.5*P;let d,h=c;const p=360/this.countVisibleElements();for(d=0;d{!isNaN(this.getParsed(n).r)&&this.chart.getDataVisibility(n)&&t++})),t}_computeAngle(e,t,n){return this.chart.getDataVisibility(e)?U(this.resolveDataElementOptions(e,t).angle||n):0}}var Oi=Object.freeze({__proto__:null,BarController:class extends Ia{static id="bar";static defaults={datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}};static overrides={scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}};parsePrimitiveData(e,t,n,a){return Pi(e,t,n,a)}parseArrayData(e,t,n,a){return Pi(e,t,n,a)}parseObjectData(e,t,n,a){const{iScale:i,vScale:r}=e,{xAxisKey:o="x",yAxisKey:s="y"}=this._parsing,l="x"===i.axis?o:s,u="x"===r.axis?o:s,c=[];let d,h,p,f;for(d=n,h=n+a;de.controller.options.grouped)),r=n.options.stacked,o=[],s=this._cachedMeta.controller.getParsed(t),l=s&&s[n.axis],u=e=>{const t=e._parsed.find((e=>e[n.axis]===l)),i=t&&t[e.vScale.axis];if(a(i)||isNaN(i))return!0};for(const n of i)if((void 0===t||!u(n))&&((!1===r||-1===o.indexOf(n.stack)||void 0===r&&void 0===n.stack)&&o.push(n.stack),n.index===e))break;return o.length||o.push(void 0),o}_getStackCount(e){return this._getStacks(void 0,e).length}_getStackIndex(e,t,n){const a=this._getStacks(e,n),i=void 0!==t?a.indexOf(t):-1;return-1===i?a.length-1:i}_getRuler(){const e=this.options,t=this._cachedMeta,n=t.iScale,a=[];let i,r;for(i=0,r=t.data.length;i=n?1:-1)}(h,t,s)*o,p===s&&(_-=h/2);const e=t.getPixelForDecimal(0),a=t.getPixelForDecimal(1),r=Math.min(e,a),u=Math.max(e,a);_=Math.max(Math.min(_,u),r),d=_+h,n&&!c&&(l._stacks[t.axis]._visualValues[i]=t.getValueForPixel(d)-t.getValueForPixel(_))}if(_===t.getPixelForValue(s)){const e=D(h)*t.getLineWidthForValue(s)/2;_+=e,h-=e}return{size:h,base:_,head:d,center:d+h/2}}_calculateBarIndexPixels(e,t){const n=t.scale,i=this.options,r=i.skipNull,o=l(i.maxBarThickness,1/0);let s,u;if(t.grouped){const n=r?this._getStackCount(e):t.stackCount,l="flex"===i.barThickness?function(e,t,n,a){const i=t.pixels,r=i[e];let o=e>0?i[e-1]:null,s=e=0;--n)t=Math.max(t,e[n].size(this.resolveDataElementOptions(n))/2);return t>0&&t}getLabelAndValue(e){const t=this._cachedMeta,n=this.chart.data.labels||[],{xScale:a,yScale:i}=t,r=this.getParsed(e),o=a.getLabelForValue(r.x),s=i.getLabelForValue(r.y),l=r._custom;return{label:n[e]||"",value:"("+o+", "+s+(l?", "+l:"")+")"}}update(e){const t=this._cachedMeta.data;this.updateElements(t,0,t.length,e)}updateElements(e,t,n,a){const i="reset"===a,{iScale:r,vScale:o}=this._cachedMeta,{sharedOptions:s,includeOptions:l}=this._getSharedOptions(t,a),u=r.axis,c=o.axis;for(let d=t;d0&&this.getParsed(t-1);for(let n=0;n=v){b.skip=!0;continue}const w=this.getParsed(n),k=a(w[p]),x=b[h]=o.getPixelForValue(w[h],n),S=b[p]=r||k?s.getBasePixel():s.getPixelForValue(l?this.applyStack(s,w,l):w[p],n);b.skip=isNaN(x)||isNaN(S)||k,b.stop=n>0&&Math.abs(w[h]-y[h])>g,m&&(b.parsed=w,b.raw=u.data[n]),d&&(b.options=c||this.resolveDataElementOptions(n,f.active?"active":i)),_||this.updateElement(f,n,b,i),y=w}}getMaxOverflow(){const e=this._cachedMeta,t=e.dataset,n=t.options&&t.options.borderWidth||0,a=e.data||[];if(!a.length)return n;const i=a[0].size(this.resolveDataElementOptions(0)),r=a[a.length-1].size(this.resolveDataElementOptions(a.length-1));return Math.max(n,i,r)/2}draw(){const e=this._cachedMeta;e.dataset.updateControlPoints(this.chart.chartArea,e.iScale.axis),super.draw()}},PieController:class extends Ni{static id="pie";static defaults={cutout:0,rotation:0,circumference:360,radius:"100%"}},PolarAreaController:Ii,RadarController:class extends Ia{static id="radar";static defaults={datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}};static overrides={aspectRatio:1,scales:{r:{type:"radialLinear"}}};getLabelAndValue(e){const t=this._cachedMeta.vScale,n=this.getParsed(e);return{label:t.getLabels()[e],value:""+t.getLabelForValue(n[t.axis])}}parseObjectData(e,t,n,a){return Zt.bind(this)(e,t,n,a)}update(e){const t=this._cachedMeta,n=t.dataset,a=t.data||[],i=t.iScale.getLabels();if(n.points=a,"resize"!==e){const t=this.resolveDatasetElementOptions(e);this.options.showLine||(t.borderWidth=0);const r={_loop:!0,_fullLoop:i.length===a.length,options:t};this.updateElement(n,void 0,r,e)}this.updateElements(a,0,a.length,e)}updateElements(e,t,n,a){const i=this._cachedMeta.rScale,r="reset"===a;for(let o=t;o0&&this.getParsed(t-1);for(let c=t;c0&&Math.abs(n[p]-b[p])>_,g&&(m.parsed=n,m.raw=u.data[c]),h&&(m.options=d||this.resolveDataElementOptions(c,t.active?"active":i)),v||this.updateElement(t,c,m,i),b=n}this.updateSharedOptions(d,i,c)}getMaxOverflow(){const e=this._cachedMeta,t=e.data||[];if(!this.options.showLine){let e=0;for(let n=t.length-1;n>=0;--n)e=Math.max(e,t[n].size(this.resolveDataElementOptions(n))/2);return e>0&&e}const n=e.dataset,a=n.options&&n.options.borderWidth||0;if(!t.length)return a;const i=t[0].size(this.resolveDataElementOptions(0)),r=t[t.length-1].size(this.resolveDataElementOptions(t.length-1));return Math.max(a,i,r)/2}}});function Di(e,t,n,a){return{x:n+e*Math.cos(t),y:a+e*Math.sin(t)}}function qi(e,t,n,a,i,r){const{x:o,y:s,startAngle:l,pixelMargin:u,innerRadius:c}=t,d=Math.max(t.outerRadius+a+n-u,0),h=c>0?c+a+n+u:0;let p=0;const f=i-l;if(a){const e=((c>0?c-a:0)+(d>0?d-a:0))/2;p=(f-(0!==e?f*e/(e+a):f))/2}const m=(f-Math.max(.001,f*d-n/P)/d)/2,g=l+m+p,_=i-m-p,{outerStart:v,outerEnd:b,innerStart:y,innerEnd:w}=function(e,t,n,a){const i=_n(e.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]),r=(n-t)/2,o=Math.min(r,a*t/2),s=e=>{const t=(n-Math.min(r,e))*a/2;return J(e,0,Math.min(r,t))};return{outerStart:s(i.outerStart),outerEnd:s(i.outerEnd),innerStart:J(i.innerStart,0,o),innerEnd:J(i.innerEnd,0,o)}}(t,h,d,_-g),k=d-v,x=d-b,S=g+v/k,C=_-b/x,T=h+y,E=h+w,A=g+y/T,L=_-w/E;if(e.beginPath(),r){const t=(S+C)/2;if(e.arc(o,s,d,S,t),e.arc(o,s,d,t,C),b>0){const t=Di(x,C,o,s);e.arc(t.x,t.y,b,C,_+z)}const n=Di(E,_,o,s);if(e.lineTo(n.x,n.y),w>0){const t=Di(E,L,o,s);e.arc(t.x,t.y,w,_+z,L+Math.PI)}const a=(_-w/h+(g+y/h))/2;if(e.arc(o,s,h,_-w/h,a,!0),e.arc(o,s,h,a,g+y/h,!0),y>0){const t=Di(T,A,o,s);e.arc(t.x,t.y,y,A+Math.PI,g-z)}const i=Di(k,g,o,s);if(e.lineTo(i.x,i.y),v>0){const t=Di(k,S,o,s);e.arc(t.x,t.y,v,g-z,S)}}else{e.moveTo(o,s);const t=Math.cos(S)*d+o,n=Math.sin(S)*d+s;e.lineTo(t,n);const a=Math.cos(C)*d+o,i=Math.sin(C)*d+s;e.lineTo(a,i)}e.closePath()}function ji(e,t,n=t){e.lineCap=l(n.borderCapStyle,t.borderCapStyle),e.setLineDash(l(n.borderDash,t.borderDash)),e.lineDashOffset=l(n.borderDashOffset,t.borderDashOffset),e.lineJoin=l(n.borderJoinStyle,t.borderJoinStyle),e.lineWidth=l(n.borderWidth,t.borderWidth),e.strokeStyle=l(n.borderColor,t.borderColor)}function Bi(e,t,n){e.lineTo(n.x,n.y)}function Fi(e,t,n={}){const a=e.length,{start:i=0,end:r=a-1}=n,{start:o,end:s}=t,l=Math.max(i,o),u=Math.min(r,s),c=is&&r>s;return{count:a,start:l,loop:t.loop,ilen:u(o+(u?s-e:e))%r,b=()=>{p!==f&&(e.lineTo(g,f),e.lineTo(g,p),e.lineTo(g,m))};for(l&&(d=i[v(0)],e.moveTo(d.x,d.y)),c=0;c<=s;++c){if(d=i[v(c)],d.skip)continue;const t=d.x,n=d.y,a=0|t;a===h?(nf&&(f=n),g=(_*g+t)/++_):(b(),e.lineTo(t,n),h=a,_=0,p=f=n),m=n}b()}function Ui(e){const t=e.options,n=t.borderDash&&t.borderDash.length;return e._decimated||e._loop||t.tension||"monotone"===t.cubicInterpolationMode||t.stepped||n?$i:Vi}const Hi="function"==typeof Path2D;class Wi extends Oa{static id="line";static defaults={borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};static descriptors={_scriptable:!0,_indexable:e=>"borderDash"!==e&&"fill"!==e};constructor(e){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,e&&Object.assign(this,e)}updateControlPoints(e,t){const n=this.options;if((n.tension||"monotone"===n.cubicInterpolationMode)&&!n.stepped&&!this._pointsUpdated){const a=n.spanGaps?this._loop:this._fullLoop;rn(this._points,n,e,a,t),this._pointsUpdated=!0}}set points(e){this._points=e,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=Rn(this,this.options.segment))}first(){const e=this.segments,t=this.points;return e.length&&t[e[0].start]}last(){const e=this.segments,t=this.points,n=e.length;return n&&t[e[n-1].end]}interpolate(e,t){const n=this.options,a=e[t],i=this.points,r=Mn(this,{property:t,start:a,end:a});if(!r.length)return;const o=[],s=function(e){return e.stepped?dn:e.tension||"monotone"===e.cubicInterpolationMode?hn:cn}(n);let l,u;for(l=0,u=r.length;l"borderDash"!==e};circumference;endAngle;fullCircles;innerRadius;outerRadius;pixelMargin;startAngle;constructor(e){super(),this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,e&&Object.assign(this,e)}inRange(e,t,n){const a=this.getProps(["x","y"],n),{angle:i,distance:r}=G(a,{x:e,y:t}),{startAngle:o,endAngle:s,innerRadius:u,outerRadius:c,circumference:d}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],n),h=(this.options.spacing+this.options.borderWidth)/2,p=l(d,s-o),f=Z(i,o,s)&&o!==s,m=p>=A||f,g=ee(r,u+h,c+h);return m&&g}getCenterPoint(e){const{x:t,y:n,startAngle:a,endAngle:i,innerRadius:r,outerRadius:o}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],e),{offset:s,spacing:l}=this.options,u=(a+i)/2,c=(r+o+l+s)/2;return{x:t+Math.cos(u)*c,y:n+Math.sin(u)*c}}tooltipPosition(e){return this.getCenterPoint(e)}draw(e){const{options:t,circumference:n}=this,a=(t.offset||0)/4,i=(t.spacing||0)/2,r=t.circular;if(this.pixelMargin="inner"===t.borderAlign?.33:0,this.fullCircles=n>A?Math.floor(n/A):0,0===n||this.innerRadius<0||this.outerRadius<0)return;e.save();const o=(this.startAngle+this.endAngle)/2;e.translate(Math.cos(o)*a,Math.sin(o)*a);const s=a*(1-Math.sin(Math.min(P,n||0)));e.fillStyle=t.backgroundColor,e.strokeStyle=t.borderColor,function(e,t,n,a,i){const{fullCircles:r,startAngle:o,circumference:s}=t;let l=t.endAngle;if(r){qi(e,t,n,a,l,i);for(let t=0;ti?(u=i/l,e.arc(r,o,l,n+u,a-u,!0)):e.arc(r,o,i,n+z,a-z),e.closePath(),e.clip()}(e,t,f),r||(qi(e,t,n,a,f,i),e.stroke())}(e,this,s,i,r),e.restore()}},BarElement:class extends Oa{static id="bar";static defaults={borderSkipped:"start",borderWidth:0,borderRadius:0,inflateAmount:"auto",pointStyle:void 0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};constructor(e){super(),this.options=void 0,this.horizontal=void 0,this.base=void 0,this.width=void 0,this.height=void 0,this.inflateAmount=void 0,e&&Object.assign(this,e)}draw(e){const{inflateAmount:t,options:{borderColor:n,backgroundColor:a}}=this,{inner:i,outer:r}=Qi(this),o=(s=r.radius).topLeft||s.topRight||s.bottomLeft||s.bottomRight?Dt:Ji;var s;e.save(),r.w===i.w&&r.h===i.h||(e.beginPath(),o(e,Xi(r,t,i)),e.clip(),o(e,Xi(i,-t,r)),e.fillStyle=n,e.fill("evenodd")),e.beginPath(),o(e,Xi(i,t)),e.fillStyle=a,e.fill(),e.restore()}inRange(e,t,n){return Zi(this,e,t,n)}inXRange(e,t){return Zi(this,e,null,t)}inYRange(e,t){return Zi(this,null,e,t)}getCenterPoint(e){const{x:t,y:n,base:a,horizontal:i}=this.getProps(["x","y","base","horizontal"],e);return{x:i?(t+a)/2:t,y:i?n:(n+a)/2}}getRange(e){return"x"===e?this.width/2:this.height/2}},LineElement:Wi,PointElement:class extends Oa{static id="point";parsed;skip;stop;static defaults={borderWidth:1,hitRadius:1,hoverBorderWidth:1,hoverRadius:4,pointStyle:"circle",radius:3,rotation:0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};constructor(e){super(),this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,e&&Object.assign(this,e)}inRange(e,t,n){const a=this.options,{x:i,y:r}=this.getProps(["x","y"],n);return Math.pow(e-i,2)+Math.pow(t-r,2)=0&&ea=t?a:e,o=e=>i=n?i:e;if(e){const e=D(a),t=D(i);e<0&&t<0?o(0):e>0&&t>0&&r(0)}if(a===i){let t=0===i?1:Math.abs(.05*i);o(i+t),e||r(a-t)}this.min=a,this.max=i}getTickLimit(){const e=this.options.ticks;let t,{maxTicksLimit:n,stepSize:a}=e;return a?(t=Math.ceil(this.max/a)-Math.floor(this.min/a)+1,t>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${a} would result generating up to ${t} ticks. Limiting to 1000.`),t=1e3)):(t=this.computeTickLimit(),n=n||11),n&&(t=Math.min(n,t)),t}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const e=this.options,t=e.ticks;let n=this.getTickLimit();n=Math.max(2,n);const i=function(e,t){const n=[],{bounds:i,step:r,min:o,max:s,precision:l,count:u,maxTicks:c,maxDigits:d,includeBounds:h}=e,p=r||1,f=c-1,{min:m,max:g}=t,_=!a(o),v=!a(s),b=!a(u),y=(g-m)/(d+1);let w,k,x,S,C=j((g-m)/f/p)*p;if(C<1e-14&&!_&&!v)return[{value:m},{value:g}];S=Math.ceil(g/C)-Math.floor(m/C),S>f&&(C=j(S*C/f/p)*p),a(l)||(w=Math.pow(10,l),C=Math.ceil(C*w)/w),"ticks"===i?(k=Math.floor(m/C)*C,x=Math.ceil(g/C)*C):(k=m,x=g),_&&v&&r&&$((s-o)/r,C/1e3)?(S=Math.round(Math.min((s-o)/C,c)),C=(s-o)/S,k=o,x=s):b?(k=_?o:k,x=v?s:x,S=u-1,C=(x-k)/S):(S=(x-k)/C,S=q(S,Math.round(S),C/1e3)?Math.round(S):Math.ceil(S));const T=Math.max(W(C),W(k));w=Math.pow(10,a(l)?T:l),k=Math.round(k*w)/w,x=Math.round(x*w)/w;let E=0;for(_&&(h&&k!==o?(n.push({value:o}),ks)break;n.push({value:e})}return v&&h&&x!==s?n.length&&q(n[n.length-1].value,s,nr(s,y,e))?n[n.length-1].value=s:n.push({value:s}):v&&x!==s||n.push({value:x}),n}({maxTicks:n,bounds:e.bounds,min:e.min,max:e.max,precision:t.precision,step:t.stepSize,count:t.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:t.minRotation||0,includeBounds:!1!==t.includeBounds},this._range||this);return"ticks"===e.bounds&&V(i,this,"value"),e.reverse?(i.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),i}configure(){const e=this.ticks;let t=this.min,n=this.max;if(super.configure(),this.options.offset&&e.length){const a=(n-t)/Math.max(e.length-1,1)/2;t-=a,n+=a}this._startValue=t,this._endValue=n,this._valueRange=n-t}getLabelForValue(e){return et(e,this.chart.options.locale,this.options.ticks.format)}}class ir extends ar{static id="linear";static defaults={ticks:{callback:nt.formatters.numeric}};determineDataLimits(){const{min:e,max:t}=this.getMinMax(!0);this.min=o(e)?e:0,this.max=o(t)?t:1,this.handleTickRangeOptions()}computeTickLimit(){const e=this.isHorizontal(),t=e?this.width:this.height,n=U(this.options.ticks.minRotation),a=(e?Math.sin(n):Math.cos(n))||.001,i=this._resolveTickFontOptions(0);return Math.ceil(t/Math.min(40,i.lineHeight/a))}getPixelForValue(e){return null===e?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getValueForPixel(e){return this._startValue+this.getDecimalForPixel(e)*this._valueRange}}const rr=e=>Math.floor(O(e)),or=(e,t)=>Math.pow(10,rr(e)+t);function sr(e){return 1==e/Math.pow(10,rr(e))}function lr(e,t,n){const a=Math.pow(10,n),i=Math.floor(e/a);return Math.ceil(t/a)-i}class ur extends Wa{static id="logarithmic";static defaults={ticks:{callback:nt.formatters.logarithmic,major:{enabled:!0}}};constructor(e){super(e),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(e,t){const n=ar.prototype.parse.apply(this,[e,t]);if(0!==n)return o(n)&&n>0?n:null;this._zero=!0}determineDataLimits(){const{min:e,max:t}=this.getMinMax(!0);this.min=o(e)?Math.max(0,e):null,this.max=o(t)?Math.max(0,t):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!o(this._userMin)&&(this.min=e===or(this.min,0)?or(this.min,-1):or(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:e,maxDefined:t}=this.getUserBounds();let n=this.min,a=this.max;const i=t=>n=e?n:t,r=e=>a=t?a:e;n===a&&(n<=0?(i(1),r(10)):(i(or(n,-1)),r(or(a,1)))),n<=0&&i(or(a,-1)),a<=0&&r(or(n,1)),this.min=n,this.max=a}buildTicks(){const e=this.options,t=function(e,{min:t,max:n}){t=s(e.min,t);const a=[],i=rr(t);let r=function(e,t){let n=rr(t-e);for(;lr(e,t,n)>10;)n++;for(;lr(e,t,n)<10;)n--;return Math.min(n,rr(e))}(t,n),o=r<0?Math.pow(10,Math.abs(r)):1;const l=Math.pow(10,r),u=i>r?Math.pow(10,i):0,c=Math.round((t-u)*o)/o,d=Math.floor((t-u)/l/10)*l*10;let h=Math.floor((c-d)/Math.pow(10,r)),p=s(e.min,Math.round((u+d+h*Math.pow(10,r))*o)/o);for(;p=10?h=h<15?15:20:h++,h>=20&&(r++,h=2,o=r>=0?1:o),p=Math.round((u+d+h*Math.pow(10,r))*o)/o;const f=s(e.max,p);return a.push({value:f,major:sr(f),significand:h}),a}({min:this._userMin,max:this._userMax},this);return"ticks"===e.bounds&&V(t,this,"value"),e.reverse?(t.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),t}getLabelForValue(e){return void 0===e?"0":et(e,this.chart.options.locale,this.options.ticks.format)}configure(){const e=this.min;super.configure(),this._startValue=O(e),this._valueRange=O(this.max)-O(e)}getPixelForValue(e){return void 0!==e&&0!==e||(e=this.min),null===e||isNaN(e)?NaN:this.getPixelForDecimal(e===this.min?0:(O(e)-this._startValue)/this._valueRange)}getValueForPixel(e){const t=this.getDecimalForPixel(e);return Math.pow(10,this._startValue+t*this._valueRange)}}function cr(e){const t=e.ticks;if(t.display&&e.display){const e=yn(t.backdropPadding);return l(t.font&&t.font.size,st.font.size)+e.height}return 0}function dr(e,t,n,a,i){return e===a||e===i?{start:t-n/2,end:t+n/2}:ei?{start:t-n,end:t}:{start:t,end:t+n}}function hr(e,t,n,a,i){const r=Math.abs(Math.sin(n)),o=Math.abs(Math.cos(n));let s=0,l=0;a.startt.r&&(s=(a.end-t.r)/r,e.r=Math.max(e.r,t.r+s)),i.startt.b&&(l=(i.end-t.b)/o,e.b=Math.max(e.b,t.b+l))}function pr(e,t,n){const a=e.drawingArea,{extra:i,additionalAngle:r,padding:o,size:s}=n,l=e.getPointPosition(t,a+i+o,r),u=Math.round(H(Q(l.angle+z))),c=function(e,t,n){return 90===n||270===n?e-=t/2:(n>270||n<90)&&(e-=t),e}(l.y,s.h,u),d=function(e){return 0===e||180===e?"center":e<180?"left":"right"}(u),h=function(e,t,n){return"right"===n?e-=t:"center"===n&&(e-=t/2),e}(l.x,s.w,d);return{visible:!0,x:l.x,y:c,textAlign:d,left:h,top:c,right:h+s.w,bottom:c+s.h}}function fr(e,t){if(!t)return!0;const{left:n,top:a,right:i,bottom:r}=e;return!(At({x:n,y:a},t)||At({x:n,y:r},t)||At({x:i,y:a},t)||At({x:i,y:r},t))}function mr(e,t,n){const{left:i,top:r,right:o,bottom:s}=n,{backdropColor:l}=t;if(!a(l)){const n=bn(t.borderRadius),a=yn(t.backdropPadding);e.fillStyle=l;const u=i-a.left,c=r-a.top,d=o-i+a.width,h=s-r+a.height;Object.values(n).some((e=>0!==e))?(e.beginPath(),Dt(e,{x:u,y:c,w:d,h:h,radius:n}),e.fill()):e.fillRect(u,c,d,h)}}function gr(e,t,n,a){const{ctx:i}=e;if(n)i.arc(e.xCenter,e.yCenter,t,0,A);else{let n=e.getPointPosition(0,t);i.moveTo(n.x,n.y);for(let r=1;re,padding:5,centerPointLabels:!1}};static defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"};static descriptors={angleLines:{_fallback:"grid"}};constructor(e){super(e),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const e=this._padding=yn(cr(this.options)/2),t=this.width=this.maxWidth-e.width,n=this.height=this.maxHeight-e.height;this.xCenter=Math.floor(this.left+t/2+e.left),this.yCenter=Math.floor(this.top+n/2+e.top),this.drawingArea=Math.floor(Math.min(t,n)/2)}determineDataLimits(){const{min:e,max:t}=this.getMinMax(!1);this.min=o(e)&&!isNaN(e)?e:0,this.max=o(t)&&!isNaN(t)?t:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/cr(this.options))}generateTickLabels(e){ar.prototype.generateTickLabels.call(this,e),this._pointLabels=this.getLabels().map(((e,t)=>{const n=d(this.options.pointLabels.callback,[e,t],this);return n||0===n?n:""})).filter(((e,t)=>this.chart.getDataVisibility(t)))}fit(){const e=this.options;e.display&&e.pointLabels.display?function(e){const t={l:e.left+e._padding.left,r:e.right-e._padding.right,t:e.top+e._padding.top,b:e.bottom-e._padding.bottom},n=Object.assign({},t),a=[],r=[],o=e._pointLabels.length,s=e.options.pointLabels,l=s.centerPointLabels?P/o:0;for(let h=0;h=0&&e=0;i--){const t=e._pointLabelItems[i];if(!t.visible)continue;const r=a.setContext(e.getPointLabelContext(i));mr(n,r,t);const o=wn(r.font),{x:s,y:l,textAlign:u}=t;Ot(n,e._pointLabels[i],s,l+o.lineHeight/2,o,{color:r.color,textAlign:u,textBaseline:"middle"})}}(this,r),a.display&&this.ticks.forEach(((e,t)=>{if(0!==t||0===t&&this.min<0){s=this.getDistanceFromCenterForValue(e.value);const n=this.getContext(t),o=a.setContext(n),l=i.setContext(n);!function(e,t,n,a,i){const r=e.ctx,o=t.circular,{color:s,lineWidth:l}=t;!o&&!a||!s||!l||n<0||(r.save(),r.strokeStyle=s,r.lineWidth=l,r.setLineDash(i.dash),r.lineDashOffset=i.dashOffset,r.beginPath(),gr(e,n,o,a),r.closePath(),r.stroke(),r.restore())}(this,o,s,r,l)}})),n.display){for(e.save(),o=r-1;o>=0;o--){const a=n.setContext(this.getPointLabelContext(o)),{color:i,lineWidth:r}=a;r&&i&&(e.lineWidth=r,e.strokeStyle=i,e.setLineDash(a.borderDash),e.lineDashOffset=a.borderDashOffset,s=this.getDistanceFromCenterForValue(t.reverse?this.min:this.max),l=this.getPointPosition(o,s),e.beginPath(),e.moveTo(this.xCenter,this.yCenter),e.lineTo(l.x,l.y),e.stroke())}e.restore()}}drawBorder(){}drawLabels(){const e=this.ctx,t=this.options,n=t.ticks;if(!n.display)return;const a=this.getIndexAngle(0);let i,r;e.save(),e.translate(this.xCenter,this.yCenter),e.rotate(a),e.textAlign="center",e.textBaseline="middle",this.ticks.forEach(((a,o)=>{if(0===o&&this.min>=0&&!t.reverse)return;const s=n.setContext(this.getContext(o)),l=wn(s.font);if(i=this.getDistanceFromCenterForValue(this.ticks[o].value),s.showLabelBackdrop){e.font=l.string,r=e.measureText(a.label).width,e.fillStyle=s.backdropColor;const t=yn(s.backdropPadding);e.fillRect(-r/2-t.left,-i-l.size/2-t.top,r+t.width,l.size+t.height)}Ot(e,a.label,0,-i,l,{color:s.color,strokeColor:s.textStrokeColor,strokeWidth:s.textStrokeWidth})})),e.restore()}drawTitle(){}}const vr={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},br=Object.keys(vr);function yr(e,t){return e-t}function wr(e,t){if(a(t))return null;const n=e._adapter,{parser:i,round:r,isoWeekday:s}=e._parseOpts;let l=t;return"function"==typeof i&&(l=i(l)),o(l)||(l="string"==typeof i?n.parse(l,i):n.parse(l)),null===l?null:(r&&(l="week"!==r||!F(s)&&!0!==s?n.startOf(l,r):n.startOf(l,"isoWeek",s)),+l)}function kr(e,t,n,a){const i=br.length;for(let r=br.indexOf(e);r=t?n[a]:n[i]]=!0}}else e[t]=!0}function Sr(e,t,n){const a=[],i={},r=t.length;let o,s;for(o=0;o=0&&(t[l].major=!0);return t}(e,a,i,n):a}class Cr extends Wa{static id="time";static defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}};constructor(e){super(e),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(e,t={}){const n=e.time||(e.time={}),a=this._adapter=new Ci._date(e.adapters.date);a.init(t),v(n.displayFormats,a.formats()),this._parseOpts={parser:n.parser,round:n.round,isoWeekday:n.isoWeekday},super.init(e),this._normalized=t.normalized}parse(e,t){return void 0===e?null:wr(this,e)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const e=this.options,t=this._adapter,n=e.time.unit||"day";let{min:a,max:i,minDefined:r,maxDefined:s}=this.getUserBounds();function l(e){r||isNaN(e.min)||(a=Math.min(a,e.min)),s||isNaN(e.max)||(i=Math.max(i,e.max))}r&&s||(l(this._getLabelBounds()),"ticks"===e.bounds&&"labels"===e.ticks.source||l(this.getMinMax(!1))),a=o(a)&&!isNaN(a)?a:+t.startOf(Date.now(),n),i=o(i)&&!isNaN(i)?i:+t.endOf(Date.now(),n)+1,this.min=Math.min(a,i-1),this.max=Math.max(a+1,i)}_getLabelBounds(){const e=this.getLabelTimestamps();let t=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;return e.length&&(t=e[0],n=e[e.length-1]),{min:t,max:n}}buildTicks(){const e=this.options,t=e.time,n=e.ticks,a="labels"===n.source?this.getLabelTimestamps():this._generate();"ticks"===e.bounds&&a.length&&(this.min=this._userMin||a[0],this.max=this._userMax||a[a.length-1]);const i=this.min,r=ie(a,i,this.max);return this._unit=t.unit||(n.autoSkip?kr(t.minUnit,this.min,this.max,this._getLabelCapacity(i)):function(e,t,n,a,i){for(let r=br.length-1;r>=br.indexOf(n);r--){const n=br[r];if(vr[n].common&&e._adapter.diff(i,a,n)>=t-1)return n}return br[n?br.indexOf(n):0]}(this,r.length,t.minUnit,this.min,this.max)),this._majorUnit=n.major.enabled&&"year"!==this._unit?function(e){for(let t=br.indexOf(e)+1,n=br.length;t+e.value)))}initOffsets(e=[]){let t,n,a=0,i=0;this.options.offset&&e.length&&(t=this.getDecimalForValue(e[0]),a=1===e.length?1-t:(this.getDecimalForValue(e[1])-t)/2,n=this.getDecimalForValue(e[e.length-1]),i=1===e.length?n:(n-this.getDecimalForValue(e[e.length-2]))/2);const r=e.length<3?.5:.25;a=J(a,0,r),i=J(i,0,r),this._offsets={start:a,end:i,factor:1/(a+1+i)}}_generate(){const e=this._adapter,t=this.min,n=this.max,a=this.options,i=a.time,r=i.unit||kr(i.minUnit,t,n,this._getLabelCapacity(t)),o=l(a.ticks.stepSize,1),s="week"===r&&i.isoWeekday,u=F(s)||!0===s,c={};let d,h,p=t;if(u&&(p=+e.startOf(p,"isoWeek",s)),p=+e.startOf(p,u?"day":r),e.diff(n,t,r)>1e5*o)throw new Error(t+" and "+n+" are too far apart with stepSize of "+o+" "+r);const f="data"===a.ticks.source&&this.getDataTimestamps();for(d=p,h=0;d+e))}getLabelForValue(e){const t=this._adapter,n=this.options.time;return n.tooltipFormat?t.format(e,n.tooltipFormat):t.format(e,n.displayFormats.datetime)}format(e,t){const n=this.options.time.displayFormats,a=this._unit,i=t||n[a];return this._adapter.format(e,i)}_tickFormatFunction(e,t,n,a){const i=this.options,r=i.ticks.callback;if(r)return d(r,[e,t,n],this);const o=i.time.displayFormats,s=this._unit,l=this._majorUnit,u=s&&o[s],c=l&&o[l],h=n[t],p=l&&c&&h&&h.major;return this._adapter.format(e,a||(p?c:u))}generateTickLabels(e){let t,n,a;for(t=0,n=e.length;t0?o:1}getDataTimestamps(){let e,t,n=this._cache.data||[];if(n.length)return n;const a=this.getMatchingVisibleMetas();if(this._normalized&&a.length)return this._cache.data=a[0].controller.getAllParsedValues(this);for(e=0,t=a.length;e=e[s].pos&&t<=e[l].pos&&({lo:s,hi:l}=ne(e,"pos",t)),({pos:a,time:r}=e[s]),({pos:i,time:o}=e[l])):(t>=e[s].time&&t<=e[l].time&&({lo:s,hi:l}=ne(e,"time",t)),({time:a,pos:r}=e[s]),({time:i,pos:o}=e[l]));const u=i-a;return u?r+(o-r)*(t-a)/u:r}var Er=Object.freeze({__proto__:null,CategoryScale:class extends Wa{static id="category";static defaults={ticks:{callback:tr}};constructor(e){super(e),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(e){const t=this._addedLabels;if(t.length){const e=this.getLabels();for(const{index:n,label:a}of t)e[n]===a&&e.splice(n,1);this._addedLabels=[]}super.init(e)}parse(e,t){if(a(e))return null;const n=this.getLabels();return((e,t)=>null===e?null:J(Math.round(e),0,t))(t=isFinite(t)&&n[t]===e?t:function(e,t,n,a){const i=e.indexOf(t);return-1===i?((e,t,n,a)=>("string"==typeof t?(n=e.push(t)-1,a.unshift({index:n,label:t})):isNaN(t)&&(n=null),n))(e,t,n,a):i!==e.lastIndexOf(t)?n:i}(n,e,l(t,e),this._addedLabels),n.length-1)}determineDataLimits(){const{minDefined:e,maxDefined:t}=this.getUserBounds();let{min:n,max:a}=this.getMinMax(!0);"ticks"===this.options.bounds&&(e||(n=0),t||(a=this.getLabels().length-1)),this.min=n,this.max=a}buildTicks(){const e=this.min,t=this.max,n=this.options.offset,a=[];let i=this.getLabels();i=0===e&&t===i.length-1?i:i.slice(e,t+1),this._valueRange=Math.max(i.length-(n?0:1),1),this._startValue=this.min-(n?.5:0);for(let n=e;n<=t;n++)a.push({value:n});return a}getLabelForValue(e){return tr.call(this,e)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(e){return"number"!=typeof e&&(e=this.parse(e)),null===e?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getPixelForTick(e){const t=this.ticks;return e<0||e>t.length-1?null:this.getPixelForValue(t[e].value)}getValueForPixel(e){return Math.round(this._startValue+this.getDecimalForPixel(e)*this._valueRange)}getBasePixel(){return this.bottom}},LinearScale:ir,LogarithmicScale:ur,RadialLinearScale:_r,TimeScale:Cr,TimeSeriesScale:class extends Cr{static id="timeseries";static defaults=Cr.defaults;constructor(e){super(e),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const e=this._getTimestampsForTable(),t=this._table=this.buildLookupTable(e);this._minPos=Tr(t,this.min),this._tableRange=Tr(t,this.max)-this._minPos,super.initOffsets(e)}buildLookupTable(e){const{min:t,max:n}=this,a=[],i=[];let r,o,s,l,u;for(r=0,o=e.length;r=t&&l<=n&&a.push(l);if(a.length<2)return[{time:t,pos:0},{time:n,pos:1}];for(r=0,o=a.length;re-t))}_getTimestampsForTable(){let e=this._cache.all||[];if(e.length)return e;const t=this.getDataTimestamps(),n=this.getLabelTimestamps();return e=t.length&&n.length?this.normalize(t.concat(n)):t.length?t:n,e=this._cache.all=e,e}getDecimalForValue(e){return(Tr(this._table,e)-this._minPos)/this._tableRange}getValueForPixel(e){const t=this._offsets,n=this.getDecimalForPixel(e)/t.factor-t.end;return Tr(this._table,n*this._tableRange+this._minPos,!0)}}});const Pr=["rgb(54, 162, 235)","rgb(255, 99, 132)","rgb(255, 159, 64)","rgb(255, 205, 86)","rgb(75, 192, 192)","rgb(153, 102, 255)","rgb(201, 203, 207)"],Ar=Pr.map((e=>e.replace("rgb(","rgba(").replace(")",", 0.5)")));function Lr(e){return Pr[e%Pr.length]}function Mr(e){return Ar[e%Ar.length]}function Rr(e){let t;for(t in e)if(e[t].borderColor||e[t].backgroundColor)return!0;return!1}var zr={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(e,t,n){if(!n.enabled)return;const{data:{datasets:a},options:i}=e.config,{elements:r}=i;if(!n.forceOverride&&(Rr(a)||(o=i)&&(o.borderColor||o.backgroundColor)||r&&Rr(r)))return;var o;const s=function(e){let t=0;return(n,a)=>{const i=e.getDatasetMeta(a).controller;i instanceof Ni?t=function(e,t){return e.backgroundColor=e.data.map((()=>Lr(t++))),t}(n,t):i instanceof Ii?t=function(e,t){return e.backgroundColor=e.data.map((()=>Mr(t++))),t}(n,t):i&&(t=function(e,t){return e.borderColor=Lr(t),e.backgroundColor=Mr(t),++t}(n,t))}}(e);a.forEach(s)}};function Nr(e){if(e._decimated){const t=e._data;delete e._decimated,delete e._data,Object.defineProperty(e,"data",{configurable:!0,enumerable:!0,writable:!0,value:t})}}function Ir(e){e.data.datasets.forEach((e=>{Nr(e)}))}var Or={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(e,t,n)=>{if(!n.enabled)return void Ir(e);const i=e.width;e.data.datasets.forEach(((t,r)=>{const{_data:o,indexAxis:s}=t,l=e.getDatasetMeta(r),u=o||t.data;if("y"===kn([s,e.options.indexAxis]))return;if(!l.controller.supportsDecimation)return;const c=e.scales[l.xAxisID];if("linear"!==c.type&&"time"!==c.type)return;if(e.options.parsing)return;let d,{start:h,count:p}=function(e,t){const n=t.length;let a,i=0;const{iScale:r}=e,{min:o,max:s,minDefined:l,maxDefined:u}=r.getUserBounds();return l&&(i=J(ne(t,r.axis,o).lo,0,n-1)),a=u?J(ne(t,r.axis,s).hi+1,i,n)-i:n-i,{start:i,count:a}}(l,u);if(p<=(n.threshold||4*i))Nr(t);else{switch(a(o)&&(t._data=u,delete t.data,Object.defineProperty(t,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(e){this._data=e}})),n.algorithm){case"lttb":d=function(e,t,n,a,i){const r=i.samples||a;if(r>=n)return e.slice(t,t+n);const o=[],s=(n-2)/(r-2);let l=0;const u=t+n-1;let c,d,h,p,f,m=t;for(o[l++]=e[m],c=0;ch&&(h=p,d=e[a],f=a);o[l++]=d,m=f}return o[l++]=e[u],o}(u,h,p,i,n);break;case"min-max":d=function(e,t,n,i){let r,o,s,l,u,c,d,h,p,f,m=0,g=0;const _=[],v=t+n-1,b=e[t].x,y=e[v].x-b;for(r=t;rf&&(f=l,d=r),m=(g*m+o.x)/++g;else{const n=r-1;if(!a(c)&&!a(d)){const t=Math.min(c,d),a=Math.max(c,d);t!==h&&t!==n&&_.push({...e[t],x:m}),a!==h&&a!==n&&_.push({...e[a],x:m})}r>0&&n!==h&&_.push(e[n]),_.push(o),u=t,g=0,p=f=l,c=d=h=r}}return _}(u,h,p,i);break;default:throw new Error(`Unsupported decimation algorithm '${n.algorithm}'`)}t._decimated=d}}))},destroy(e){Ir(e)}};function Dr(e,t,n,a){if(a)return;let i=t[e],r=n[e];return"angle"===e&&(i=Q(i),r=Q(r)),{property:e,start:i,end:r}}function qr(e,t,n){for(;t>e;t--){const e=n[t];if(!isNaN(e.x)&&!isNaN(e.y))break}return t}function jr(e,t,n,a){return e&&t?a(e[n],t[n]):e?e[n]:t?t[n]:0}function Br(e,t){let n=[],a=!1;return i(e)?(a=!0,n=e):n=function(e,t){const{x:n=null,y:a=null}=e||{},i=t.points,r=[];return t.segments.forEach((({start:e,end:t})=>{t=qr(e,t,i);const o=i[e],s=i[t];null!==a?(r.push({x:o.x,y:a}),r.push({x:s.x,y:a})):null!==n&&(r.push({x:n,y:o.y}),r.push({x:n,y:s.y}))})),r}(e,t),n.length?new Wi({points:n,options:{tension:0},_loop:a,_fullLoop:a}):null}function Fr(e){return e&&!1!==e.fill}function $r(e,t,n){let a=e[t].fill;const i=[t];let r;if(!n)return a;for(;!1!==a&&-1===i.indexOf(a);){if(!o(a))return a;if(r=e[a],!r)return!1;if(r.visible)return a;i.push(a),a=r.fill}return!1}function Vr(e,t,n){const a=function(e){const t=e.options,n=t.fill;let a=l(n&&n.target,n);return void 0===a&&(a=!!t.backgroundColor),!1!==a&&null!==a&&(!0===a?"origin":a)}(e);if(r(a))return!isNaN(a.value)&&a;let i=parseFloat(a);return o(i)&&Math.floor(i)===i?function(e,t,n,a){return"-"!==e&&"+"!==e||(n=t+n),!(n===t||n<0||n>=a)&&n}(a[0],t,i,n):["origin","start","end","stack","shape"].indexOf(a)>=0&&a}function Ur(e,t,n){const a=[];for(let i=0;i=0;--t){const n=i[t].$filler;n&&(n.line.updateControlPoints(r,n.axis),a&&n.fill&&Yr(e.ctx,n,r))}},beforeDatasetsDraw(e,t,n){if("beforeDatasetsDraw"!==n.drawTime)return;const a=e.getSortedVisibleDatasetMetas();for(let t=a.length-1;t>=0;--t){const n=a[t].$filler;Fr(n)&&Yr(e.ctx,n,e.chartArea)}},beforeDatasetDraw(e,t,n){const a=t.meta.$filler;Fr(a)&&"beforeDatasetDraw"===n.drawTime&&Yr(e.ctx,a,e.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const eo=(e,t)=>{let{boxHeight:n=t,boxWidth:a=t}=e;return e.usePointStyle&&(n=Math.min(n,t),a=e.pointStyleWidth||Math.min(a,t)),{boxWidth:a,boxHeight:n,itemHeight:Math.max(t,n)}};class to extends Oa{constructor(e){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=e.chart,this.options=e.options,this.ctx=e.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(e,t,n){this.maxWidth=e,this.maxHeight=t,this._margins=n,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const e=this.options.labels||{};let t=d(e.generateLabels,[this.chart],this)||[];e.filter&&(t=t.filter((t=>e.filter(t,this.chart.data)))),e.sort&&(t=t.sort(((t,n)=>e.sort(t,n,this.chart.data)))),this.options.reverse&&t.reverse(),this.legendItems=t}fit(){const{options:e,ctx:t}=this;if(!e.display)return void(this.width=this.height=0);const n=e.labels,a=wn(n.font),i=a.size,r=this._computeTitleHeight(),{boxWidth:o,itemHeight:s}=eo(n,i);let l,u;t.font=a.string,this.isHorizontal()?(l=this.maxWidth,u=this._fitRows(r,i,o,s)+10):(u=this.maxHeight,l=this._fitCols(r,a,o,s)+10),this.width=Math.min(l,e.maxWidth||this.maxWidth),this.height=Math.min(u,e.maxHeight||this.maxHeight)}_fitRows(e,t,n,a){const{ctx:i,maxWidth:r,options:{labels:{padding:o}}}=this,s=this.legendHitBoxes=[],l=this.lineWidths=[0],u=a+o;let c=e;i.textAlign="left",i.textBaseline="middle";let d=-1,h=-u;return this.legendItems.forEach(((e,p)=>{const f=n+t/2+i.measureText(e.text).width;(0===p||l[l.length-1]+f+2*o>r)&&(c+=u,l[l.length-(p>0?0:1)]=0,h+=u,d++),s[p]={left:0,top:h,row:d,width:f,height:a},l[l.length-1]+=f+o})),c}_fitCols(e,t,n,a){const{ctx:i,maxHeight:r,options:{labels:{padding:o}}}=this,s=this.legendHitBoxes=[],l=this.columnSizes=[],u=r-e;let c=o,d=0,h=0,p=0,f=0;return this.legendItems.forEach(((e,r)=>{const{itemWidth:m,itemHeight:g}=function(e,t,n,a,i){const r=function(e,t,n,a){let i=e.text;return i&&"string"!=typeof i&&(i=i.reduce(((e,t)=>e.length>t.length?e:t))),t+n.size/2+a.measureText(i).width}(a,e,t,n),o=function(e,t,n){let a=e;return"string"!=typeof t.text&&(a=no(t,n)),a}(i,a,t.lineHeight);return{itemWidth:r,itemHeight:o}}(n,t,i,e,a);r>0&&h+g+2*o>u&&(c+=d+o,l.push({width:d,height:h}),p+=d+o,f++,d=h=0),s[r]={left:p,top:h,col:f,width:m,height:g},d=Math.max(d,m),h+=g+o})),c+=d,l.push({width:d,height:h}),c}adjustHitBoxes(){if(!this.options.display)return;const e=this._computeTitleHeight(),{legendHitBoxes:t,options:{align:n,labels:{padding:a},rtl:i}}=this,r=Cn(i,this.left,this.width);if(this.isHorizontal()){let i=0,o=pe(n,this.left+a,this.right-this.lineWidths[i]);for(const s of t)i!==s.row&&(i=s.row,o=pe(n,this.left+a,this.right-this.lineWidths[i])),s.top+=this.top+e+a,s.left=r.leftForLtr(r.x(o),s.width),o+=s.width+a}else{let i=0,o=pe(n,this.top+e+a,this.bottom-this.columnSizes[i].height);for(const s of t)s.col!==i&&(i=s.col,o=pe(n,this.top+e+a,this.bottom-this.columnSizes[i].height)),s.top=o,s.left+=this.left+a,s.left=r.leftForLtr(r.x(s.left),s.width),o+=s.height+a}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const e=this.ctx;Lt(e,this),this._draw(),Mt(e)}}_draw(){const{options:e,columnSizes:t,lineWidths:n,ctx:a}=this,{align:i,labels:r}=e,o=st.color,s=Cn(e.rtl,this.left,this.width),u=wn(r.font),{padding:c}=r,d=u.size,h=d/2;let p;this.drawTitle(),a.textAlign=s.textAlign("left"),a.textBaseline="middle",a.lineWidth=.5,a.font=u.string;const{boxWidth:f,boxHeight:m,itemHeight:g}=eo(r,d),_=this.isHorizontal(),v=this._computeTitleHeight();p=_?{x:pe(i,this.left+c,this.right-n[0]),y:this.top+c+v,line:0}:{x:this.left+c,y:pe(i,this.top+v+c,this.bottom-t[0].height),line:0},Tn(this.ctx,e.textDirection);const b=g+c;this.legendItems.forEach(((y,w)=>{a.strokeStyle=y.fontColor,a.fillStyle=y.fontColor;const k=a.measureText(y.text).width,x=s.textAlign(y.textAlign||(y.textAlign=r.textAlign)),S=f+h+k;let C=p.x,T=p.y;if(s.setWidth(this.width),_?w>0&&C+S+c>this.right&&(T=p.y+=b,p.line++,C=p.x=pe(i,this.left+c,this.right-n[p.line])):w>0&&T+b>this.bottom&&(C=p.x=C+t[p.line].width+c,p.line++,T=p.y=pe(i,this.top+v+c,this.bottom-t[p.line].height)),function(e,t,n){if(isNaN(f)||f<=0||isNaN(m)||m<0)return;a.save();const i=l(n.lineWidth,1);if(a.fillStyle=l(n.fillStyle,o),a.lineCap=l(n.lineCap,"butt"),a.lineDashOffset=l(n.lineDashOffset,0),a.lineJoin=l(n.lineJoin,"miter"),a.lineWidth=i,a.strokeStyle=l(n.strokeStyle,o),a.setLineDash(l(n.lineDash,[])),r.usePointStyle){const o={radius:m*Math.SQRT2/2,pointStyle:n.pointStyle,rotation:n.rotation,borderWidth:i},l=s.xPlus(e,f/2);Pt(a,o,l,t+h,r.pointStyleWidth&&f)}else{const r=t+Math.max((d-m)/2,0),o=s.leftForLtr(e,f),l=bn(n.borderRadius);a.beginPath(),Object.values(l).some((e=>0!==e))?Dt(a,{x:o,y:r,w:f,h:m,radius:l}):a.rect(o,r,f,m),a.fill(),0!==i&&a.stroke()}a.restore()}(s.x(C),T,y),C=fe(x,C+f+h,_?C+S:this.right,e.rtl),function(e,t,n){Ot(a,n.text,e,t+g/2,u,{strikethrough:n.hidden,textAlign:s.textAlign(n.textAlign)})}(s.x(C),T,y),_)p.x+=S+c;else if("string"!=typeof y.text){const e=u.lineHeight;p.y+=no(y,e)+c}else p.y+=b})),En(this.ctx,e.textDirection)}drawTitle(){const e=this.options,t=e.title,n=wn(t.font),a=yn(t.padding);if(!t.display)return;const i=Cn(e.rtl,this.left,this.width),r=this.ctx,o=t.position,s=n.size/2,l=a.top+s;let u,c=this.left,d=this.width;if(this.isHorizontal())d=Math.max(...this.lineWidths),u=this.top+l,c=pe(e.align,c,this.right-d);else{const t=this.columnSizes.reduce(((e,t)=>Math.max(e,t.height)),0);u=l+pe(e.align,this.top,this.bottom-t-e.labels.padding-this._computeTitleHeight())}const h=pe(o,c,c+d);r.textAlign=i.textAlign(he(o)),r.textBaseline="middle",r.strokeStyle=t.color,r.fillStyle=t.color,r.font=n.string,Ot(r,t.text,h,u,n)}_computeTitleHeight(){const e=this.options.title,t=wn(e.font),n=yn(e.padding);return e.display?t.lineHeight+n.height:0}_getLegendItemAt(e,t){let n,a,i;if(ee(e,this.left,this.right)&&ee(t,this.top,this.bottom))for(i=this.legendHitBoxes,n=0;ne.chart.options.color,boxWidth:40,padding:10,generateLabels(e){const t=e.data.datasets,{labels:{usePointStyle:n,pointStyle:a,textAlign:i,color:r,useBorderRadius:o,borderRadius:s}}=e.legend.options;return e._getSortedDatasetMetas().map((e=>{const l=e.controller.getStyle(n?0:void 0),u=yn(l.borderWidth);return{text:t[e.index].label,fillStyle:l.backgroundColor,fontColor:r,hidden:!e.visible,lineCap:l.borderCapStyle,lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:(u.width+u.height)/4,strokeStyle:l.borderColor,pointStyle:a||l.pointStyle,rotation:l.rotation,textAlign:i||l.textAlign,borderRadius:o&&(s||l.borderRadius),datasetIndex:e.index}}),this)}},title:{color:e=>e.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:e=>!e.startsWith("on"),labels:{_scriptable:e=>!["generateLabels","filter","sort"].includes(e)}}};class io extends Oa{constructor(e){super(),this.chart=e.chart,this.options=e.options,this.ctx=e.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(e,t){const n=this.options;if(this.left=0,this.top=0,!n.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=e,this.height=this.bottom=t;const a=i(n.text)?n.text.length:1;this._padding=yn(n.padding);const r=a*wn(n.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=r:this.width=r}isHorizontal(){const e=this.options.position;return"top"===e||"bottom"===e}_drawArgs(e){const{top:t,left:n,bottom:a,right:i,options:r}=this,o=r.align;let s,l,u,c=0;return this.isHorizontal()?(l=pe(o,n,i),u=t+e,s=i-n):("left"===r.position?(l=n+e,u=pe(o,a,t),c=-.5*P):(l=i-e,u=pe(o,t,a),c=.5*P),s=a-t),{titleX:l,titleY:u,maxWidth:s,rotation:c}}draw(){const e=this.ctx,t=this.options;if(!t.display)return;const n=wn(t.font),a=n.lineHeight/2+this._padding.top,{titleX:i,titleY:r,maxWidth:o,rotation:s}=this._drawArgs(a);Ot(e,t.text,0,0,n,{color:t.color,maxWidth:o,rotation:s,textAlign:he(t.align),textBaseline:"middle",translation:[i,r]})}}var ro={id:"title",_element:io,start(e,t,n){!function(e,t){const n=new io({ctx:e.ctx,options:t,chart:e});ea.configure(e,n,t),ea.addBox(e,n),e.titleBlock=n}(e,n)},stop(e){const t=e.titleBlock;ea.removeBox(e,t),delete e.titleBlock},beforeUpdate(e,t,n){const a=e.titleBlock;ea.configure(e,a,n),a.options=n},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const oo=new WeakMap;var so={id:"subtitle",start(e,t,n){const a=new io({ctx:e.ctx,options:n,chart:e});ea.configure(e,a,n),ea.addBox(e,a),oo.set(e,a)},stop(e){ea.removeBox(e,oo.get(e)),oo.delete(e)},beforeUpdate(e,t,n){const a=oo.get(e);ea.configure(e,a,n),a.options=n},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const lo={average(e){if(!e.length)return!1;let t,n,a=new Set,i=0,r=0;for(t=0,n=e.length;te+t))/a.size,y:i/r}},nearest(e,t){if(!e.length)return!1;let n,a,i,r=t.x,o=t.y,s=Number.POSITIVE_INFINITY;for(n=0,a=e.length;n-1?e.split("\n"):e}function ho(e,t){const{element:n,datasetIndex:a,index:i}=t,r=e.getDatasetMeta(a).controller,{label:o,value:s}=r.getLabelAndValue(i);return{chart:e,label:o,parsed:r.getParsed(i),raw:e.data.datasets[a].data[i],formattedValue:s,dataset:r.getDataset(),dataIndex:i,datasetIndex:a,element:n}}function po(e,t){const n=e.chart.ctx,{body:a,footer:i,title:r}=e,{boxWidth:o,boxHeight:s}=t,l=wn(t.bodyFont),u=wn(t.titleFont),c=wn(t.footerFont),d=r.length,p=i.length,f=a.length,m=yn(t.padding);let g=m.height,_=0,v=a.reduce(((e,t)=>e+t.before.length+t.lines.length+t.after.length),0);v+=e.beforeBody.length+e.afterBody.length,d&&(g+=d*u.lineHeight+(d-1)*t.titleSpacing+t.titleMarginBottom),v&&(g+=f*(t.displayColors?Math.max(s,l.lineHeight):l.lineHeight)+(v-f)*l.lineHeight+(v-1)*t.bodySpacing),p&&(g+=t.footerMarginTop+p*c.lineHeight+(p-1)*t.footerSpacing);let b=0;const y=function(e){_=Math.max(_,n.measureText(e).width+b)};return n.save(),n.font=u.string,h(e.title,y),n.font=l.string,h(e.beforeBody.concat(e.afterBody),y),b=t.displayColors?o+2+t.boxPadding:0,h(a,(e=>{h(e.before,y),h(e.lines,y),h(e.after,y)})),b=0,n.font=c.string,h(e.footer,y),n.restore(),_+=m.width,{width:_,height:g}}function fo(e,t,n,a){const{x:i,width:r}=n,{width:o,chartArea:{left:s,right:l}}=e;let u="center";return"center"===a?u=i<=(s+l)/2?"left":"right":i<=r/2?u="left":i>=o-r/2&&(u="right"),function(e,t,n,a){const{x:i,width:r}=a,o=n.caretSize+n.caretPadding;return"left"===e&&i+r+o>t.width||"right"===e&&i-r-o<0||void 0}(u,e,t,n)&&(u="center"),u}function mo(e,t,n){const a=n.yAlign||t.yAlign||function(e,t){const{y:n,height:a}=t;return ne.height-a/2?"bottom":"center"}(e,n);return{xAlign:n.xAlign||t.xAlign||fo(e,t,n,a),yAlign:a}}function go(e,t,n,a){const{caretSize:i,caretPadding:r,cornerRadius:o}=e,{xAlign:s,yAlign:l}=n,u=i+r,{topLeft:c,topRight:d,bottomLeft:h,bottomRight:p}=bn(o);let f=function(e,t){let{x:n,width:a}=e;return"right"===t?n-=a:"center"===t&&(n-=a/2),n}(t,s);const m=function(e,t,n){let{y:a,height:i}=e;return"top"===t?a+=n:a-="bottom"===t?i+n:i/2,a}(t,l,u);return"center"===l?"left"===s?f+=u:"right"===s&&(f-=u):"left"===s?f-=Math.max(c,h)+i:"right"===s&&(f+=Math.max(d,p)+i),{x:J(f,0,a.width-t.width),y:J(m,0,a.height-t.height)}}function _o(e,t,n){const a=yn(n.padding);return"center"===t?e.x+e.width/2:"right"===t?e.x+e.width-a.right:e.x+a.left}function vo(e){return uo([],co(e))}function bo(e,t){const n=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return n?e.override(n):e}const yo={beforeTitle:t,title(e){if(e.length>0){const t=e[0],n=t.chart.data.labels,a=n?n.length:0;if(this&&this.options&&"dataset"===this.options.mode)return t.dataset.label||"";if(t.label)return t.label;if(a>0&&t.dataIndex{const t={before:[],lines:[],after:[]},i=bo(n,e);uo(t.before,co(wo(i,"beforeLabel",this,e))),uo(t.lines,wo(i,"label",this,e)),uo(t.after,co(wo(i,"afterLabel",this,e))),a.push(t)})),a}getAfterBody(e,t){return vo(wo(t.callbacks,"afterBody",this,e))}getFooter(e,t){const{callbacks:n}=t,a=wo(n,"beforeFooter",this,e),i=wo(n,"footer",this,e),r=wo(n,"afterFooter",this,e);let o=[];return o=uo(o,co(a)),o=uo(o,co(i)),o=uo(o,co(r)),o}_createItems(e){const t=this._active,n=this.chart.data,a=[],i=[],r=[];let o,s,l=[];for(o=0,s=t.length;oe.filter(t,a,i,n)))),e.itemSort&&(l=l.sort(((t,a)=>e.itemSort(t,a,n)))),h(l,(t=>{const n=bo(e.callbacks,t);a.push(wo(n,"labelColor",this,t)),i.push(wo(n,"labelPointStyle",this,t)),r.push(wo(n,"labelTextColor",this,t))})),this.labelColors=a,this.labelPointStyles=i,this.labelTextColors=r,this.dataPoints=l,l}update(e,t){const n=this.options.setContext(this.getContext()),a=this._active;let i,r=[];if(a.length){const e=lo[n.position].call(this,a,this._eventPosition);r=this._createItems(n),this.title=this.getTitle(r,n),this.beforeBody=this.getBeforeBody(r,n),this.body=this.getBody(r,n),this.afterBody=this.getAfterBody(r,n),this.footer=this.getFooter(r,n);const t=this._size=po(this,n),o=Object.assign({},e,t),s=mo(this.chart,n,o),l=go(n,o,s,this.chart);this.xAlign=s.xAlign,this.yAlign=s.yAlign,i={opacity:1,x:l.x,y:l.y,width:t.width,height:t.height,caretX:e.x,caretY:e.y}}else 0!==this.opacity&&(i={opacity:0});this._tooltipItems=r,this.$context=void 0,i&&this._resolveAnimations().update(this,i),e&&n.external&&n.external.call(this,{chart:this.chart,tooltip:this,replay:t})}drawCaret(e,t,n,a){const i=this.getCaretPosition(e,n,a);t.lineTo(i.x1,i.y1),t.lineTo(i.x2,i.y2),t.lineTo(i.x3,i.y3)}getCaretPosition(e,t,n){const{xAlign:a,yAlign:i}=this,{caretSize:r,cornerRadius:o}=n,{topLeft:s,topRight:l,bottomLeft:u,bottomRight:c}=bn(o),{x:d,y:h}=e,{width:p,height:f}=t;let m,g,_,v,b,y;return"center"===i?(b=h+f/2,"left"===a?(m=d,g=m-r,v=b+r,y=b-r):(m=d+p,g=m+r,v=b-r,y=b+r),_=m):(g="left"===a?d+Math.max(s,u)+r:"right"===a?d+p-Math.max(l,c)-r:this.caretX,"top"===i?(v=h,b=v-r,m=g-r,_=g+r):(v=h+f,b=v+r,m=g+r,_=g-r),y=v),{x1:m,x2:g,x3:_,y1:v,y2:b,y3:y}}drawTitle(e,t,n){const a=this.title,i=a.length;let r,o,s;if(i){const l=Cn(n.rtl,this.x,this.width);for(e.x=_o(this,n.titleAlign,n),t.textAlign=l.textAlign(n.titleAlign),t.textBaseline="middle",r=wn(n.titleFont),o=n.titleSpacing,t.fillStyle=n.titleColor,t.font=r.string,s=0;s0!==e))?(e.beginPath(),e.fillStyle=i.multiKeyBackground,Dt(e,{x:t,y:f,w:u,h:l,radius:s}),e.fill(),e.stroke(),e.fillStyle=o.backgroundColor,e.beginPath(),Dt(e,{x:n,y:f+1,w:u-2,h:l-2,radius:s}),e.fill()):(e.fillStyle=i.multiKeyBackground,e.fillRect(t,f,u,l),e.strokeRect(t,f,u,l),e.fillStyle=o.backgroundColor,e.fillRect(n,f+1,u-2,l-2))}e.fillStyle=this.labelTextColors[n]}drawBody(e,t,n){const{body:a}=this,{bodySpacing:i,bodyAlign:r,displayColors:o,boxHeight:s,boxWidth:l,boxPadding:u}=n,c=wn(n.bodyFont);let d=c.lineHeight,p=0;const f=Cn(n.rtl,this.x,this.width),m=function(n){t.fillText(n,f.x(e.x+p),e.y+d/2),e.y+=d+i},g=f.textAlign(r);let _,v,b,y,w,k,x;for(t.textAlign=r,t.textBaseline="middle",t.font=c.string,e.x=_o(this,g,n),t.fillStyle=n.bodyColor,h(this.beforeBody,m),p=o&&"right"!==g?"center"===r?l/2+u:l+2+u:0,y=0,k=a.length;y0&&t.stroke()}_updateAnimationTarget(e){const t=this.chart,n=this.$animations,a=n&&n.x,i=n&&n.y;if(a||i){const n=lo[e.position].call(this,this._active,this._eventPosition);if(!n)return;const r=this._size=po(this,e),o=Object.assign({},n,this._size),s=mo(t,e,o),l=go(e,o,s,t);a._to===l.x&&i._to===l.y||(this.xAlign=s.xAlign,this.yAlign=s.yAlign,this.width=r.width,this.height=r.height,this.caretX=n.x,this.caretY=n.y,this._resolveAnimations().update(this,l))}}_willRender(){return!!this.opacity}draw(e){const t=this.options.setContext(this.getContext());let n=this.opacity;if(!n)return;this._updateAnimationTarget(t);const a={width:this.width,height:this.height},i={x:this.x,y:this.y};n=Math.abs(n)<.001?0:n;const r=yn(t.padding),o=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;t.enabled&&o&&(e.save(),e.globalAlpha=n,this.drawBackground(i,e,a,t),Tn(e,t.textDirection),i.y+=r.top,this.drawTitle(i,e,t),this.drawBody(i,e,t),this.drawFooter(i,e,t),En(e,t.textDirection),e.restore())}getActiveElements(){return this._active||[]}setActiveElements(e,t){const n=this._active,a=e.map((({datasetIndex:e,index:t})=>{const n=this.chart.getDatasetMeta(e);if(!n)throw new Error("Cannot find a dataset at index "+e);return{datasetIndex:e,element:n.data[t],index:t}})),i=!p(n,a),r=this._positionChanged(a,t);(i||r)&&(this._active=a,this._eventPosition=t,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(e,t,n=!0){if(t&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const a=this.options,i=this._active||[],r=this._getActiveElements(e,i,t,n),o=this._positionChanged(r,e),s=t||!p(r,i)||o;return s&&(this._active=r,(a.enabled||a.external)&&(this._eventPosition={x:e.x,y:e.y},this.update(!0,t))),s}_getActiveElements(e,t,n,a){const i=this.options;if("mouseout"===e.type)return[];if(!a)return t.filter((e=>this.chart.data.datasets[e.datasetIndex]&&void 0!==this.chart.getDatasetMeta(e.datasetIndex).controller.getParsed(e.index)));const r=this.chart.getElementsAtEventForMode(e,i.mode,i,n);return i.reverse&&r.reverse(),r}_positionChanged(e,t){const{caretX:n,caretY:a,options:i}=this,r=lo[i.position].call(this,e,t);return!1!==r&&(n!==r.x||a!==r.y)}}var xo={id:"tooltip",_element:ko,positioners:lo,afterInit(e,t,n){n&&(e.tooltip=new ko({chart:e,options:n}))},beforeUpdate(e,t,n){e.tooltip&&e.tooltip.initialize(n)},reset(e,t,n){e.tooltip&&e.tooltip.initialize(n)},afterDraw(e){const t=e.tooltip;if(t&&t._willRender()){const n={tooltip:t};if(!1===e.notifyPlugins("beforeTooltipDraw",{...n,cancelable:!0}))return;t.draw(e.ctx),e.notifyPlugins("afterTooltipDraw",n)}},afterEvent(e,t){if(e.tooltip){const n=t.replay;e.tooltip.handleEvent(t.event,n,t.inChartArea)&&(t.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(e,t)=>t.bodyFont.size,boxWidth:(e,t)=>t.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:yo},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:e=>"filter"!==e&&"itemSort"!==e&&"external"!==e,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};return wi.register(Oi,Er,er,e),wi.helpers={...On},wi._adapters=Ci,wi.Animation=ka,wi.Animations=xa,wi.animator=_e,wi.controllers=Ya.controllers.items,wi.DatasetController=Ia,wi.Element=Oa,wi.elements=er,wi.Interaction=$n,wi.layouts=ea,wi.platforms=ba,wi.Scale=Wa,wi.Ticks=nt,Object.assign(wi,Oi,Er,er,e,ba),wi.Chart=wi,"undefined"!=typeof window&&(window.Chart=wi),wi})),/*! showdown v 2.1.0 - 21-04-2022 */ -function(){function e(e){"use strict";var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic 'section-' prefix",type:"string"},rawPrefixHeaderId:{defaultValue:!1,describe:'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)',type:"boolean"},ghCompatibleHeaderId:{defaultValue:!1,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},rawHeaderId:{defaultValue:!1,describe:"Remove only spaces, ' and \" from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids",type:"boolean"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:!1,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:!1,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,describe:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:!1,describe:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:!1,describe:"Parses simple line breaks as
(GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:!1,describe:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:!1,describe:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",describe:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:!0,describe:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:!1,describe:"Open all links in new windows",type:"boolean"},backslashEscapesHTMLTags:{defaultValue:!1,describe:"Support for HTML Tag escaping. ex:
foo
",type:"boolean"},emoji:{defaultValue:!1,describe:"Enable emoji support. Ex: `this is a :smile: emoji`",type:"boolean"},underline:{defaultValue:!1,describe:"Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `` and ``",type:"boolean"},ellipsis:{defaultValue:!0,describe:"Replaces three dots with the ellipsis unicode character",type:"boolean"},completeHTMLDocument:{defaultValue:!1,describe:"Outputs a complete html document, including ``, `` and `` tags",type:"boolean"},metadata:{defaultValue:!1,describe:"Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).",type:"boolean"},splitAdjacentBlockquotes:{defaultValue:!1,describe:"Split adjacent blockquote blocks",type:"boolean"}};if(!1===e)return JSON.parse(JSON.stringify(t));var n={};for(var a in t)t.hasOwnProperty(a)&&(n[a]=t[a].defaultValue);return n}var t={},n={},a={},i=e(!0),r="vanilla",o={github:{omitExtraWLInCodeBlocks:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,disableForced4SpacesIndentedSublists:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghCompatibleHeaderId:!0,ghMentions:!0,backslashEscapesHTMLTags:!0,emoji:!0,splitAdjacentBlockquotes:!0},original:{noHeaderId:!0,ghCodeBlocks:!1},ghost:{omitExtraWLInCodeBlocks:!0,parseImgDimensions:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,smoothLivePreview:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghMentions:!1,encodeEmails:!0},vanilla:e(!0),allOn:function(){"use strict";var t=e(!0),n={};for(var a in t)t.hasOwnProperty(a)&&(n[a]=!0);return n}()};function s(e,n){"use strict";var a=n?"Error in "+n+" extension->":"Error in unnamed extension",i={valid:!0,error:""};t.helper.isArray(e)||(e=[e]);for(var r=0;r").replace(/&/g,"&")};var u=function(e,t,n,a){"use strict";var i,r,o,s,l,u=a||"",c=u.indexOf("g")>-1,d=new RegExp(t+"|"+n,"g"+u.replace(/g/g,"")),h=new RegExp(t,u.replace(/g/g,"")),p=[];do{for(i=0;o=d.exec(e);)if(h.test(o[0]))i++||(s=(r=d.lastIndex)-o[0].length);else if(i&&! --i){l=o.index+o[0].length;var f={left:{start:s,end:r},match:{start:r,end:o.index},right:{start:o.index,end:l},wholeMatch:{start:s,end:l}};if(p.push(f),!c)return p}}while(i&&(d.lastIndex=r));return p};t.helper.matchRecursiveRegExp=function(e,t,n,a){"use strict";for(var i=u(e,t,n,a),r=[],o=0;o0){var d=[];0!==s[0].wholeMatch.start&&d.push(e.slice(0,s[0].wholeMatch.start));for(var h=0;h=0?i+(a||0):i},t.helper.splitAtIndex=function(e,n){"use strict";if(!t.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";return[e.substring(0,n),e.substring(n)]},t.helper.encodeEmailAddress=function(e){"use strict";var t=[function(e){return"&#"+e.charCodeAt(0)+";"},function(e){return"&#x"+e.charCodeAt(0).toString(16)+";"},function(e){return e}];return e=e.replace(/./g,(function(e){if("@"===e)e=t[Math.floor(2*Math.random())](e);else{var n=Math.random();e=n>.9?t[2](e):n>.45?t[1](e):t[0](e)}return e}))},t.helper.padEnd=function(e,t,n){"use strict";return t|=0,n=String(n||" "),e.length>t?String(e):((t-=e.length)>n.length&&(n+=n.repeat(t/n.length)),String(e)+n.slice(0,t))},"undefined"==typeof console&&(console={warn:function(e){"use strict";alert(e)},log:function(e){"use strict";alert(e)},error:function(e){"use strict";throw e}}),t.helper.regexes={asteriskDashAndColon:/([*_:~])/g},t.helper.emojis={"+1":"👍","-1":"👎",100:"💯",1234:"🔢","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉","8ball":"🎱",a:"🅰️",ab:"🆎",abc:"🔤",abcd:"🔡",accept:"🉑",aerial_tramway:"🚡",airplane:"✈️",alarm_clock:"⏰",alembic:"⚗️",alien:"👽",ambulance:"🚑",amphora:"🏺",anchor:"⚓️",angel:"👼",anger:"💢",angry:"😠",anguished:"😧",ant:"🐜",apple:"🍎",aquarius:"♒️",aries:"♈️",arrow_backward:"◀️",arrow_double_down:"⏬",arrow_double_up:"⏫",arrow_down:"⬇️",arrow_down_small:"🔽",arrow_forward:"▶️",arrow_heading_down:"⤵️",arrow_heading_up:"⤴️",arrow_left:"⬅️",arrow_lower_left:"↙️",arrow_lower_right:"↘️",arrow_right:"➡️",arrow_right_hook:"↪️",arrow_up:"⬆️",arrow_up_down:"↕️",arrow_up_small:"🔼",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",art:"🎨",articulated_lorry:"🚛",artificial_satellite:"🛰",astonished:"😲",athletic_shoe:"👟",atm:"🏧",atom_symbol:"⚛️",avocado:"🥑",b:"🅱️",baby:"👶",baby_bottle:"🍼",baby_chick:"🐤",baby_symbol:"🚼",back:"🔙",bacon:"🥓",badminton:"🏸",baggage_claim:"🛄",baguette_bread:"🥖",balance_scale:"⚖️",balloon:"🎈",ballot_box:"🗳",ballot_box_with_check:"☑️",bamboo:"🎍",banana:"🍌",bangbang:"‼️",bank:"🏦",bar_chart:"📊",barber:"💈",baseball:"⚾️",basketball:"🏀",basketball_man:"⛹️",basketball_woman:"⛹️‍♀️",bat:"🦇",bath:"🛀",bathtub:"🛁",battery:"🔋",beach_umbrella:"🏖",bear:"🐻",bed:"🛏",bee:"🐝",beer:"🍺",beers:"🍻",beetle:"🐞",beginner:"🔰",bell:"🔔",bellhop_bell:"🛎",bento:"🍱",biking_man:"🚴",bike:"🚲",biking_woman:"🚴‍♀️",bikini:"👙",biohazard:"☣️",bird:"🐦",birthday:"🎂",black_circle:"⚫️",black_flag:"🏴",black_heart:"🖤",black_joker:"🃏",black_large_square:"⬛️",black_medium_small_square:"◾️",black_medium_square:"◼️",black_nib:"✒️",black_small_square:"▪️",black_square_button:"🔲",blonde_man:"👱",blonde_woman:"👱‍♀️",blossom:"🌼",blowfish:"🐡",blue_book:"📘",blue_car:"🚙",blue_heart:"💙",blush:"😊",boar:"🐗",boat:"⛵️",bomb:"💣",book:"📖",bookmark:"🔖",bookmark_tabs:"📑",books:"📚",boom:"💥",boot:"👢",bouquet:"💐",bowing_man:"🙇",bow_and_arrow:"🏹",bowing_woman:"🙇‍♀️",bowling:"🎳",boxing_glove:"🥊",boy:"👦",bread:"🍞",bride_with_veil:"👰",bridge_at_night:"🌉",briefcase:"💼",broken_heart:"💔",bug:"🐛",building_construction:"🏗",bulb:"💡",bullettrain_front:"🚅",bullettrain_side:"🚄",burrito:"🌯",bus:"🚌",business_suit_levitating:"🕴",busstop:"🚏",bust_in_silhouette:"👤",busts_in_silhouette:"👥",butterfly:"🦋",cactus:"🌵",cake:"🍰",calendar:"📆",call_me_hand:"🤙",calling:"📲",camel:"🐫",camera:"📷",camera_flash:"📸",camping:"🏕",cancer:"♋️",candle:"🕯",candy:"🍬",canoe:"🛶",capital_abcd:"🔠",capricorn:"♑️",car:"🚗",card_file_box:"🗃",card_index:"📇",card_index_dividers:"🗂",carousel_horse:"🎠",carrot:"🥕",cat:"🐱",cat2:"🐈",cd:"💿",chains:"⛓",champagne:"🍾",chart:"💹",chart_with_downwards_trend:"📉",chart_with_upwards_trend:"📈",checkered_flag:"🏁",cheese:"🧀",cherries:"🍒",cherry_blossom:"🌸",chestnut:"🌰",chicken:"🐔",children_crossing:"🚸",chipmunk:"🐿",chocolate_bar:"🍫",christmas_tree:"🎄",church:"⛪️",cinema:"🎦",circus_tent:"🎪",city_sunrise:"🌇",city_sunset:"🌆",cityscape:"🏙",cl:"🆑",clamp:"🗜",clap:"👏",clapper:"🎬",classical_building:"🏛",clinking_glasses:"🥂",clipboard:"📋",clock1:"🕐",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",clock12:"🕛",clock1230:"🕧",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",closed_book:"📕",closed_lock_with_key:"🔐",closed_umbrella:"🌂",cloud:"☁️",cloud_with_lightning:"🌩",cloud_with_lightning_and_rain:"⛈",cloud_with_rain:"🌧",cloud_with_snow:"🌨",clown_face:"🤡",clubs:"♣️",cocktail:"🍸",coffee:"☕️",coffin:"⚰️",cold_sweat:"😰",comet:"☄️",computer:"💻",computer_mouse:"🖱",confetti_ball:"🎊",confounded:"😖",confused:"😕",congratulations:"㊗️",construction:"🚧",construction_worker_man:"👷",construction_worker_woman:"👷‍♀️",control_knobs:"🎛",convenience_store:"🏪",cookie:"🍪",cool:"🆒",policeman:"👮",copyright:"©️",corn:"🌽",couch_and_lamp:"🛋",couple:"👫",couple_with_heart_woman_man:"💑",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_man_woman:"💏",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",cow:"🐮",cow2:"🐄",cowboy_hat_face:"🤠",crab:"🦀",crayon:"🖍",credit_card:"💳",crescent_moon:"🌙",cricket:"🏏",crocodile:"🐊",croissant:"🥐",crossed_fingers:"🤞",crossed_flags:"🎌",crossed_swords:"⚔️",crown:"👑",cry:"😢",crying_cat_face:"😿",crystal_ball:"🔮",cucumber:"🥒",cupid:"💘",curly_loop:"➰",currency_exchange:"💱",curry:"🍛",custard:"🍮",customs:"🛃",cyclone:"🌀",dagger:"🗡",dancer:"💃",dancing_women:"👯",dancing_men:"👯‍♂️",dango:"🍡",dark_sunglasses:"🕶",dart:"🎯",dash:"💨",date:"📅",deciduous_tree:"🌳",deer:"🦌",department_store:"🏬",derelict_house:"🏚",desert:"🏜",desert_island:"🏝",desktop_computer:"🖥",male_detective:"🕵️",diamond_shape_with_a_dot_inside:"💠",diamonds:"♦️",disappointed:"😞",disappointed_relieved:"😥",dizzy:"💫",dizzy_face:"😵",do_not_litter:"🚯",dog:"🐶",dog2:"🐕",dollar:"💵",dolls:"🎎",dolphin:"🐬",door:"🚪",doughnut:"🍩",dove:"🕊",dragon:"🐉",dragon_face:"🐲",dress:"👗",dromedary_camel:"🐪",drooling_face:"🤤",droplet:"💧",drum:"🥁",duck:"🦆",dvd:"📀","e-mail":"📧",eagle:"🦅",ear:"👂",ear_of_rice:"🌾",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",egg:"🥚",eggplant:"🍆",eight_pointed_black_star:"✴️",eight_spoked_asterisk:"✳️",electric_plug:"🔌",elephant:"🐘",email:"✉️",end:"🔚",envelope_with_arrow:"📩",euro:"💶",european_castle:"🏰",european_post_office:"🏤",evergreen_tree:"🌲",exclamation:"❗️",expressionless:"😑",eye:"👁",eye_speech_bubble:"👁‍🗨",eyeglasses:"👓",eyes:"👀",face_with_head_bandage:"🤕",face_with_thermometer:"🤒",fist_oncoming:"👊",factory:"🏭",fallen_leaf:"🍂",family_man_woman_boy:"👪",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",fast_forward:"⏩",fax:"📠",fearful:"😨",feet:"🐾",female_detective:"🕵️‍♀️",ferris_wheel:"🎡",ferry:"⛴",field_hockey:"🏑",file_cabinet:"🗄",file_folder:"📁",film_projector:"📽",film_strip:"🎞",fire:"🔥",fire_engine:"🚒",fireworks:"🎆",first_quarter_moon:"🌓",first_quarter_moon_with_face:"🌛",fish:"🐟",fish_cake:"🍥",fishing_pole_and_fish:"🎣",fist_raised:"✊",fist_left:"🤛",fist_right:"🤜",flags:"🎏",flashlight:"🔦",fleur_de_lis:"⚜️",flight_arrival:"🛬",flight_departure:"🛫",floppy_disk:"💾",flower_playing_cards:"🎴",flushed:"😳",fog:"🌫",foggy:"🌁",football:"🏈",footprints:"👣",fork_and_knife:"🍴",fountain:"⛲️",fountain_pen:"🖋",four_leaf_clover:"🍀",fox_face:"🦊",framed_picture:"🖼",free:"🆓",fried_egg:"🍳",fried_shrimp:"🍤",fries:"🍟",frog:"🐸",frowning:"😦",frowning_face:"☹️",frowning_man:"🙍‍♂️",frowning_woman:"🙍",middle_finger:"🖕",fuelpump:"⛽️",full_moon:"🌕",full_moon_with_face:"🌝",funeral_urn:"⚱️",game_die:"🎲",gear:"⚙️",gem:"💎",gemini:"♊️",ghost:"👻",gift:"🎁",gift_heart:"💝",girl:"👧",globe_with_meridians:"🌐",goal_net:"🥅",goat:"🐐",golf:"⛳️",golfing_man:"🏌️",golfing_woman:"🏌️‍♀️",gorilla:"🦍",grapes:"🍇",green_apple:"🍏",green_book:"📗",green_heart:"💚",green_salad:"🥗",grey_exclamation:"❕",grey_question:"❔",grimacing:"😬",grin:"😁",grinning:"😀",guardsman:"💂",guardswoman:"💂‍♀️",guitar:"🎸",gun:"🔫",haircut_woman:"💇",haircut_man:"💇‍♂️",hamburger:"🍔",hammer:"🔨",hammer_and_pick:"⚒",hammer_and_wrench:"🛠",hamster:"🐹",hand:"✋",handbag:"👜",handshake:"🤝",hankey:"💩",hatched_chick:"🐥",hatching_chick:"🐣",headphones:"🎧",hear_no_evil:"🙉",heart:"❤️",heart_decoration:"💟",heart_eyes:"😍",heart_eyes_cat:"😻",heartbeat:"💓",heartpulse:"💗",hearts:"♥️",heavy_check_mark:"✔️",heavy_division_sign:"➗",heavy_dollar_sign:"💲",heavy_heart_exclamation:"❣️",heavy_minus_sign:"➖",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",helicopter:"🚁",herb:"🌿",hibiscus:"🌺",high_brightness:"🔆",high_heel:"👠",hocho:"🔪",hole:"🕳",honey_pot:"🍯",horse:"🐴",horse_racing:"🏇",hospital:"🏥",hot_pepper:"🌶",hotdog:"🌭",hotel:"🏨",hotsprings:"♨️",hourglass:"⌛️",hourglass_flowing_sand:"⏳",house:"🏠",house_with_garden:"🏡",houses:"🏘",hugs:"🤗",hushed:"😯",ice_cream:"🍨",ice_hockey:"🏒",ice_skate:"⛸",icecream:"🍦",id:"🆔",ideograph_advantage:"🉐",imp:"👿",inbox_tray:"📥",incoming_envelope:"📨",tipping_hand_woman:"💁",information_source:"ℹ️",innocent:"😇",interrobang:"⁉️",iphone:"📱",izakaya_lantern:"🏮",jack_o_lantern:"🎃",japan:"🗾",japanese_castle:"🏯",japanese_goblin:"👺",japanese_ogre:"👹",jeans:"👖",joy:"😂",joy_cat:"😹",joystick:"🕹",kaaba:"🕋",key:"🔑",keyboard:"⌨️",keycap_ten:"🔟",kick_scooter:"🛴",kimono:"👘",kiss:"💋",kissing:"😗",kissing_cat:"😽",kissing_closed_eyes:"😚",kissing_heart:"😘",kissing_smiling_eyes:"😙",kiwi_fruit:"🥝",koala:"🐨",koko:"🈁",label:"🏷",large_blue_circle:"🔵",large_blue_diamond:"🔷",large_orange_diamond:"🔶",last_quarter_moon:"🌗",last_quarter_moon_with_face:"🌜",latin_cross:"✝️",laughing:"😆",leaves:"🍃",ledger:"📒",left_luggage:"🛅",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",lemon:"🍋",leo:"♌️",leopard:"🐆",level_slider:"🎚",libra:"♎️",light_rail:"🚈",link:"🔗",lion:"🦁",lips:"👄",lipstick:"💄",lizard:"🦎",lock:"🔒",lock_with_ink_pen:"🔏",lollipop:"🍭",loop:"➿",loud_sound:"🔊",loudspeaker:"📢",love_hotel:"🏩",love_letter:"💌",low_brightness:"🔅",lying_face:"🤥",m:"Ⓜ️",mag:"🔍",mag_right:"🔎",mahjong:"🀄️",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",man:"👨",man_artist:"👨‍🎨",man_astronaut:"👨‍🚀",man_cartwheeling:"🤸‍♂️",man_cook:"👨‍🍳",man_dancing:"🕺",man_facepalming:"🤦‍♂️",man_factory_worker:"👨‍🏭",man_farmer:"👨‍🌾",man_firefighter:"👨‍🚒",man_health_worker:"👨‍⚕️",man_in_tuxedo:"🤵",man_judge:"👨‍⚖️",man_juggling:"🤹‍♂️",man_mechanic:"👨‍🔧",man_office_worker:"👨‍💼",man_pilot:"👨‍✈️",man_playing_handball:"🤾‍♂️",man_playing_water_polo:"🤽‍♂️",man_scientist:"👨‍🔬",man_shrugging:"🤷‍♂️",man_singer:"👨‍🎤",man_student:"👨‍🎓",man_teacher:"👨‍🏫",man_technologist:"👨‍💻",man_with_gua_pi_mao:"👲",man_with_turban:"👳",tangerine:"🍊",mans_shoe:"👞",mantelpiece_clock:"🕰",maple_leaf:"🍁",martial_arts_uniform:"🥋",mask:"😷",massage_woman:"💆",massage_man:"💆‍♂️",meat_on_bone:"🍖",medal_military:"🎖",medal_sports:"🏅",mega:"📣",melon:"🍈",memo:"📝",men_wrestling:"🤼‍♂️",menorah:"🕎",mens:"🚹",metal:"🤘",metro:"🚇",microphone:"🎤",microscope:"🔬",milk_glass:"🥛",milky_way:"🌌",minibus:"🚐",minidisc:"💽",mobile_phone_off:"📴",money_mouth_face:"🤑",money_with_wings:"💸",moneybag:"💰",monkey:"🐒",monkey_face:"🐵",monorail:"🚝",moon:"🌔",mortar_board:"🎓",mosque:"🕌",motor_boat:"🛥",motor_scooter:"🛵",motorcycle:"🏍",motorway:"🛣",mount_fuji:"🗻",mountain:"⛰",mountain_biking_man:"🚵",mountain_biking_woman:"🚵‍♀️",mountain_cableway:"🚠",mountain_railway:"🚞",mountain_snow:"🏔",mouse:"🐭",mouse2:"🐁",movie_camera:"🎥",moyai:"🗿",mrs_claus:"🤶",muscle:"💪",mushroom:"🍄",musical_keyboard:"🎹",musical_note:"🎵",musical_score:"🎼",mute:"🔇",nail_care:"💅",name_badge:"📛",national_park:"🏞",nauseated_face:"🤢",necktie:"👔",negative_squared_cross_mark:"❎",nerd_face:"🤓",neutral_face:"😐",new:"🆕",new_moon:"🌑",new_moon_with_face:"🌚",newspaper:"📰",newspaper_roll:"🗞",next_track_button:"⏭",ng:"🆖",no_good_man:"🙅‍♂️",no_good_woman:"🙅",night_with_stars:"🌃",no_bell:"🔕",no_bicycles:"🚳",no_entry:"⛔️",no_entry_sign:"🚫",no_mobile_phones:"📵",no_mouth:"😶",no_pedestrians:"🚷",no_smoking:"🚭","non-potable_water":"🚱",nose:"👃",notebook:"📓",notebook_with_decorative_cover:"📔",notes:"🎶",nut_and_bolt:"🔩",o:"⭕️",o2:"🅾️",ocean:"🌊",octopus:"🐙",oden:"🍢",office:"🏢",oil_drum:"🛢",ok:"🆗",ok_hand:"👌",ok_man:"🙆‍♂️",ok_woman:"🙆",old_key:"🗝",older_man:"👴",older_woman:"👵",om:"🕉",on:"🔛",oncoming_automobile:"🚘",oncoming_bus:"🚍",oncoming_police_car:"🚔",oncoming_taxi:"🚖",open_file_folder:"📂",open_hands:"👐",open_mouth:"😮",open_umbrella:"☂️",ophiuchus:"⛎",orange_book:"📙",orthodox_cross:"☦️",outbox_tray:"📤",owl:"🦉",ox:"🐂",package:"📦",page_facing_up:"📄",page_with_curl:"📃",pager:"📟",paintbrush:"🖌",palm_tree:"🌴",pancakes:"🥞",panda_face:"🐼",paperclip:"📎",paperclips:"🖇",parasol_on_ground:"⛱",parking:"🅿️",part_alternation_mark:"〽️",partly_sunny:"⛅️",passenger_ship:"🛳",passport_control:"🛂",pause_button:"⏸",peace_symbol:"☮️",peach:"🍑",peanuts:"🥜",pear:"🍐",pen:"🖊",pencil2:"✏️",penguin:"🐧",pensive:"😔",performing_arts:"🎭",persevere:"😣",person_fencing:"🤺",pouting_woman:"🙎",phone:"☎️",pick:"⛏",pig:"🐷",pig2:"🐖",pig_nose:"🐽",pill:"💊",pineapple:"🍍",ping_pong:"🏓",pisces:"♓️",pizza:"🍕",place_of_worship:"🛐",plate_with_cutlery:"🍽",play_or_pause_button:"⏯",point_down:"👇",point_left:"👈",point_right:"👉",point_up:"☝️",point_up_2:"👆",police_car:"🚓",policewoman:"👮‍♀️",poodle:"🐩",popcorn:"🍿",post_office:"🏣",postal_horn:"📯",postbox:"📮",potable_water:"🚰",potato:"🥔",pouch:"👝",poultry_leg:"🍗",pound:"💷",rage:"😡",pouting_cat:"😾",pouting_man:"🙎‍♂️",pray:"🙏",prayer_beads:"📿",pregnant_woman:"🤰",previous_track_button:"⏮",prince:"🤴",princess:"👸",printer:"🖨",purple_heart:"💜",purse:"👛",pushpin:"📌",put_litter_in_its_place:"🚮",question:"❓",rabbit:"🐰",rabbit2:"🐇",racehorse:"🐎",racing_car:"🏎",radio:"📻",radio_button:"🔘",radioactive:"☢️",railway_car:"🚃",railway_track:"🛤",rainbow:"🌈",rainbow_flag:"🏳️‍🌈",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐",raised_hands:"🙌",raising_hand_woman:"🙋",raising_hand_man:"🙋‍♂️",ram:"🐏",ramen:"🍜",rat:"🐀",record_button:"⏺",recycle:"♻️",red_circle:"🔴",registered:"®️",relaxed:"☺️",relieved:"😌",reminder_ribbon:"🎗",repeat:"🔁",repeat_one:"🔂",rescue_worker_helmet:"⛑",restroom:"🚻",revolving_hearts:"💞",rewind:"⏪",rhinoceros:"🦏",ribbon:"🎀",rice:"🍚",rice_ball:"🍙",rice_cracker:"🍘",rice_scene:"🎑",right_anger_bubble:"🗯",ring:"💍",robot:"🤖",rocket:"🚀",rofl:"🤣",roll_eyes:"🙄",roller_coaster:"🎢",rooster:"🐓",rose:"🌹",rosette:"🏵",rotating_light:"🚨",round_pushpin:"📍",rowing_man:"🚣",rowing_woman:"🚣‍♀️",rugby_football:"🏉",running_man:"🏃",running_shirt_with_sash:"🎽",running_woman:"🏃‍♀️",sa:"🈂️",sagittarius:"♐️",sake:"🍶",sandal:"👡",santa:"🎅",satellite:"📡",saxophone:"🎷",school:"🏫",school_satchel:"🎒",scissors:"✂️",scorpion:"🦂",scorpius:"♏️",scream:"😱",scream_cat:"🙀",scroll:"📜",seat:"💺",secret:"㊙️",see_no_evil:"🙈",seedling:"🌱",selfie:"🤳",shallow_pan_of_food:"🥘",shamrock:"☘️",shark:"🦈",shaved_ice:"🍧",sheep:"🐑",shell:"🐚",shield:"🛡",shinto_shrine:"⛩",ship:"🚢",shirt:"👕",shopping:"🛍",shopping_cart:"🛒",shower:"🚿",shrimp:"🦐",signal_strength:"📶",six_pointed_star:"🔯",ski:"🎿",skier:"⛷",skull:"💀",skull_and_crossbones:"☠️",sleeping:"😴",sleeping_bed:"🛌",sleepy:"😪",slightly_frowning_face:"🙁",slightly_smiling_face:"🙂",slot_machine:"🎰",small_airplane:"🛩",small_blue_diamond:"🔹",small_orange_diamond:"🔸",small_red_triangle:"🔺",small_red_triangle_down:"🔻",smile:"😄",smile_cat:"😸",smiley:"😃",smiley_cat:"😺",smiling_imp:"😈",smirk:"😏",smirk_cat:"😼",smoking:"🚬",snail:"🐌",snake:"🐍",sneezing_face:"🤧",snowboarder:"🏂",snowflake:"❄️",snowman:"⛄️",snowman_with_snow:"☃️",sob:"😭",soccer:"⚽️",soon:"🔜",sos:"🆘",sound:"🔉",space_invader:"👾",spades:"♠️",spaghetti:"🍝",sparkle:"❇️",sparkler:"🎇",sparkles:"✨",sparkling_heart:"💖",speak_no_evil:"🙊",speaker:"🔈",speaking_head:"🗣",speech_balloon:"💬",speedboat:"🚤",spider:"🕷",spider_web:"🕸",spiral_calendar:"🗓",spiral_notepad:"🗒",spoon:"🥄",squid:"🦑",stadium:"🏟",star:"⭐️",star2:"🌟",star_and_crescent:"☪️",star_of_david:"✡️",stars:"🌠",station:"🚉",statue_of_liberty:"🗽",steam_locomotive:"🚂",stew:"🍲",stop_button:"⏹",stop_sign:"🛑",stopwatch:"⏱",straight_ruler:"📏",strawberry:"🍓",stuck_out_tongue:"😛",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue_winking_eye:"😜",studio_microphone:"🎙",stuffed_flatbread:"🥙",sun_behind_large_cloud:"🌥",sun_behind_rain_cloud:"🌦",sun_behind_small_cloud:"🌤",sun_with_face:"🌞",sunflower:"🌻",sunglasses:"😎",sunny:"☀️",sunrise:"🌅",sunrise_over_mountains:"🌄",surfing_man:"🏄",surfing_woman:"🏄‍♀️",sushi:"🍣",suspension_railway:"🚟",sweat:"😓",sweat_drops:"💦",sweat_smile:"😅",sweet_potato:"🍠",swimming_man:"🏊",swimming_woman:"🏊‍♀️",symbols:"🔣",synagogue:"🕍",syringe:"💉",taco:"🌮",tada:"🎉",tanabata_tree:"🎋",taurus:"♉️",taxi:"🚕",tea:"🍵",telephone_receiver:"📞",telescope:"🔭",tennis:"🎾",tent:"⛺️",thermometer:"🌡",thinking:"🤔",thought_balloon:"💭",ticket:"🎫",tickets:"🎟",tiger:"🐯",tiger2:"🐅",timer_clock:"⏲",tipping_hand_man:"💁‍♂️",tired_face:"😫",tm:"™️",toilet:"🚽",tokyo_tower:"🗼",tomato:"🍅",tongue:"👅",top:"🔝",tophat:"🎩",tornado:"🌪",trackball:"🖲",tractor:"🚜",traffic_light:"🚥",train:"🚋",train2:"🚆",tram:"🚊",triangular_flag_on_post:"🚩",triangular_ruler:"📐",trident:"🔱",triumph:"😤",trolleybus:"🚎",trophy:"🏆",tropical_drink:"🍹",tropical_fish:"🐠",truck:"🚚",trumpet:"🎺",tulip:"🌷",tumbler_glass:"🥃",turkey:"🦃",turtle:"🐢",tv:"📺",twisted_rightwards_arrows:"🔀",two_hearts:"💕",two_men_holding_hands:"👬",two_women_holding_hands:"👭",u5272:"🈹",u5408:"🈴",u55b6:"🈺",u6307:"🈯️",u6708:"🈷️",u6709:"🈶",u6e80:"🈵",u7121:"🈚️",u7533:"🈸",u7981:"🈲",u7a7a:"🈳",umbrella:"☔️",unamused:"😒",underage:"🔞",unicorn:"🦄",unlock:"🔓",up:"🆙",upside_down_face:"🙃",v:"✌️",vertical_traffic_light:"🚦",vhs:"📼",vibration_mode:"📳",video_camera:"📹",video_game:"🎮",violin:"🎻",virgo:"♍️",volcano:"🌋",volleyball:"🏐",vs:"🆚",vulcan_salute:"🖖",walking_man:"🚶",walking_woman:"🚶‍♀️",waning_crescent_moon:"🌘",waning_gibbous_moon:"🌖",warning:"⚠️",wastebasket:"🗑",watch:"⌚️",water_buffalo:"🐃",watermelon:"🍉",wave:"👋",wavy_dash:"〰️",waxing_crescent_moon:"🌒",wc:"🚾",weary:"😩",wedding:"💒",weight_lifting_man:"🏋️",weight_lifting_woman:"🏋️‍♀️",whale:"🐳",whale2:"🐋",wheel_of_dharma:"☸️",wheelchair:"♿️",white_check_mark:"✅",white_circle:"⚪️",white_flag:"🏳️",white_flower:"💮",white_large_square:"⬜️",white_medium_small_square:"◽️",white_medium_square:"◻️",white_small_square:"▫️",white_square_button:"🔳",wilted_flower:"🥀",wind_chime:"🎐",wind_face:"🌬",wine_glass:"🍷",wink:"😉",wolf:"🐺",woman:"👩",woman_artist:"👩‍🎨",woman_astronaut:"👩‍🚀",woman_cartwheeling:"🤸‍♀️",woman_cook:"👩‍🍳",woman_facepalming:"🤦‍♀️",woman_factory_worker:"👩‍🏭",woman_farmer:"👩‍🌾",woman_firefighter:"👩‍🚒",woman_health_worker:"👩‍⚕️",woman_judge:"👩‍⚖️",woman_juggling:"🤹‍♀️",woman_mechanic:"👩‍🔧",woman_office_worker:"👩‍💼",woman_pilot:"👩‍✈️",woman_playing_handball:"🤾‍♀️",woman_playing_water_polo:"🤽‍♀️",woman_scientist:"👩‍🔬",woman_shrugging:"🤷‍♀️",woman_singer:"👩‍🎤",woman_student:"👩‍🎓",woman_teacher:"👩‍🏫",woman_technologist:"👩‍💻",woman_with_turban:"👳‍♀️",womans_clothes:"👚",womans_hat:"👒",women_wrestling:"🤼‍♀️",womens:"🚺",world_map:"🗺",worried:"😟",wrench:"🔧",writing_hand:"✍️",x:"❌",yellow_heart:"💛",yen:"💴",yin_yang:"☯️",yum:"😋",zap:"⚡️",zipper_mouth_face:"🤐",zzz:"💤",octocat:':octocat:',showdown:"S"},t.Converter=function(e){"use strict";var n={},l=[],u=[],c={},d=r,h={parsed:{},raw:"",format:""};function p(e,n){if(n=n||null,t.helper.isString(e)){if(n=e=t.helper.stdExtName(e),t.extensions[e])return console.warn("DEPRECATION WARNING: "+e+" is an old extension that uses a deprecated loading method.Please inform the developer that the extension should be updated!"),void function(e,n){"function"==typeof e&&(e=e(new t.Converter));t.helper.isArray(e)||(e=[e]);var a=s(e,n);if(!a.valid)throw Error(a.error);for(var i=0;i[ \t]+¨NBSP;<"),!n){if(!window||!window.document)throw new Error("HTMLParser is undefined. If in a webworker or nodejs environment, you need to provide a WHATWG DOM and HTML such as JSDOM");n=window.document}var a=n.createElement("div");a.innerHTML=e;var i={preList:function(e){for(var n=e.querySelectorAll("pre"),a=[],i=0;i'}else a.push(n[i].innerHTML),n[i].innerHTML="",n[i].setAttribute("prenum",i.toString());return a}(a)};!function e(t){for(var n=0;n? ?(['"].*['"])?\)$/m)>-1)o="";else if(!o){if(r||(r=i.toLowerCase().replace(/ ?\n/g," ")),o="#"+r,t.helper.isUndefined(a.gUrls[r]))return e;o=a.gUrls[r],t.helper.isUndefined(a.gTitles[r])||(u=a.gTitles[r])}var c='
"};return e=(e=(e=(e=(e=a.converter._dispatch("anchors.before",e,n,a)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,i)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]??(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i)).replace(/\[([^\[\]]+)]()()()()()/g,i),n.ghMentions&&(e=e.replace(/(^|\s)(\\)?(@([a-z\d]+(?:[a-z\d.-]+?[a-z\d]+)*))/gim,(function(e,a,i,r,o){if("\\"===i)return a+r;if(!t.helper.isString(n.ghMentionsLink))throw new Error("ghMentionsLink option must be a string");var s=n.ghMentionsLink.replace(/\{u}/g,o),l="";return n.openLinksInNewWindow&&(l=' rel="noopener noreferrer" target="¨E95Eblank"'),a+'"+r+""}))),e=a.converter._dispatch("anchors.after",e,n,a)}));var c=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+?\.[^'">\s]+?)()(\1)?(?=\s|$)(?!["<>])/gi,d=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]])?(\1)?(?=\s|$)(?!["<>])/gi,h=/()<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>()/gi,p=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,f=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,m=function(e){"use strict";return function(n,a,i,r,o,s,l){var u=i=i.replace(t.helper.regexes.asteriskDashAndColon,t.helper.escapeCharactersCallback),c="",d="",h=a||"",p=l||"";return/^www\./i.test(i)&&(i=i.replace(/^www\./i,"http://www.")),e.excludeTrailingPunctuationFromURLs&&s&&(c=s),e.openLinksInNewWindow&&(d=' rel="noopener noreferrer" target="¨E95Eblank"'),h+'"+u+""+c+p}},g=function(e,n){"use strict";return function(a,i,r){var o="mailto:";return i=i||"",r=t.subParser("unescapeSpecialChars")(r,e,n),e.encodeEmails?(o=t.helper.encodeEmailAddress(o+r),r=t.helper.encodeEmailAddress(r)):o+=r,i+''+r+""}};t.subParser("autoLinks",(function(e,t,n){"use strict";return e=(e=(e=n.converter._dispatch("autoLinks.before",e,t,n)).replace(h,m(t))).replace(f,g(t,n)),e=n.converter._dispatch("autoLinks.after",e,t,n)})),t.subParser("simplifiedAutoLinks",(function(e,t,n){"use strict";return t.simplifiedAutoLink?(e=n.converter._dispatch("simplifiedAutoLinks.before",e,t,n),e=(e=t.excludeTrailingPunctuationFromURLs?e.replace(d,m(t)):e.replace(c,m(t))).replace(p,g(t,n)),e=n.converter._dispatch("simplifiedAutoLinks.after",e,t,n)):e})),t.subParser("blockGamut",(function(e,n,a){"use strict";return e=a.converter._dispatch("blockGamut.before",e,n,a),e=t.subParser("blockQuotes")(e,n,a),e=t.subParser("headers")(e,n,a),e=t.subParser("horizontalRule")(e,n,a),e=t.subParser("lists")(e,n,a),e=t.subParser("codeBlocks")(e,n,a),e=t.subParser("tables")(e,n,a),e=t.subParser("hashHTMLBlocks")(e,n,a),e=t.subParser("paragraphs")(e,n,a),e=a.converter._dispatch("blockGamut.after",e,n,a)})),t.subParser("blockQuotes",(function(e,n,a){"use strict";e=a.converter._dispatch("blockQuotes.before",e,n,a),e+="\n\n";var i=/(^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+/gm;return n.splitAdjacentBlockquotes&&(i=/^ {0,3}>[\s\S]*?(?:\n\n)/gm),e=e.replace(i,(function(e){return e=(e=(e=e.replace(/^[ \t]*>[ \t]?/gm,"")).replace(/¨0/g,"")).replace(/^[ \t]+$/gm,""),e=t.subParser("githubCodeBlocks")(e,n,a),e=(e=(e=t.subParser("blockGamut")(e,n,a)).replace(/(^|\n)/g,"$1 ")).replace(/(\s*
[^\r]+?<\/pre>)/gm,(function(e,t){var n=t;return n=(n=n.replace(/^  /gm,"¨0")).replace(/¨0/g,"")})),t.subParser("hashBlock")("
\n"+e+"\n
",n,a)})),e=a.converter._dispatch("blockQuotes.after",e,n,a)})),t.subParser("codeBlocks",(function(e,n,a){"use strict";e=a.converter._dispatch("codeBlocks.before",e,n,a);return e=(e=(e+="¨0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g,(function(e,i,r){var o=i,s=r,l="\n";return o=t.subParser("outdent")(o,n,a),o=t.subParser("encodeCode")(o,n,a),o=(o=(o=t.subParser("detab")(o,n,a)).replace(/^\n+/g,"")).replace(/\n+$/g,""),n.omitExtraWLInCodeBlocks&&(l=""),o="
"+o+l+"
",t.subParser("hashBlock")(o,n,a)+s}))).replace(/¨0/,""),e=a.converter._dispatch("codeBlocks.after",e,n,a)})),t.subParser("codeSpans",(function(e,n,a){"use strict";return void 0===(e=a.converter._dispatch("codeSpans.before",e,n,a))&&(e=""),e=e.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,(function(e,i,r,o){var s=o;return s=(s=s.replace(/^([ \t]*)/g,"")).replace(/[ \t]*$/g,""),s=i+""+(s=t.subParser("encodeCode")(s,n,a))+"",s=t.subParser("hashHTMLSpans")(s,n,a)})),e=a.converter._dispatch("codeSpans.after",e,n,a)})),t.subParser("completeHTMLDocument",(function(e,t,n){"use strict";if(!t.completeHTMLDocument)return e;e=n.converter._dispatch("completeHTMLDocument.before",e,t,n);var a="html",i="\n",r="",o='\n',s="",l="";for(var u in void 0!==n.metadata.parsed.doctype&&(i="\n","html"!==(a=n.metadata.parsed.doctype.toString().toLowerCase())&&"html5"!==a||(o='')),n.metadata.parsed)if(n.metadata.parsed.hasOwnProperty(u))switch(u.toLowerCase()){case"doctype":break;case"title":r=""+n.metadata.parsed.title+"\n";break;case"charset":o="html"===a||"html5"===a?'\n':'\n';break;case"language":case"lang":s=' lang="'+n.metadata.parsed[u]+'"',l+='\n';break;default:l+='\n'}return e=i+"\n\n"+r+o+l+"\n\n"+e.trim()+"\n\n",e=n.converter._dispatch("completeHTMLDocument.after",e,t,n)})),t.subParser("detab",(function(e,t,n){"use strict";return e=(e=(e=(e=(e=(e=n.converter._dispatch("detab.before",e,t,n)).replace(/\t(?=\t)/g," ")).replace(/\t/g,"¨A¨B")).replace(/¨B(.+?)¨A/g,(function(e,t){for(var n=t,a=4-n.length%4,i=0;i/g,">"),e=n.converter._dispatch("encodeAmpsAndAngles.after",e,t,n)})),t.subParser("encodeBackslashEscapes",(function(e,n,a){"use strict";return e=(e=(e=a.converter._dispatch("encodeBackslashEscapes.before",e,n,a)).replace(/\\(\\)/g,t.helper.escapeCharactersCallback)).replace(/\\([`*_{}\[\]()>#+.!~=|:-])/g,t.helper.escapeCharactersCallback),e=a.converter._dispatch("encodeBackslashEscapes.after",e,n,a)})),t.subParser("encodeCode",(function(e,n,a){"use strict";return e=(e=a.converter._dispatch("encodeCode.before",e,n,a)).replace(/&/g,"&").replace(//g,">").replace(/([*_{}\[\]\\=~-])/g,t.helper.escapeCharactersCallback),e=a.converter._dispatch("encodeCode.after",e,n,a)})),t.subParser("escapeSpecialCharsWithinTagAttributes",(function(e,n,a){"use strict";return e=(e=(e=a.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",e,n,a)).replace(/<\/?[a-z\d_:-]+(?:[\s]+[\s\S]+?)?>/gi,(function(e){return e.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,t.helper.escapeCharactersCallback)}))).replace(/-]|-[^>])(?:[^-]|-[^-])*)--)>/gi,(function(e){return e.replace(/([\\`*_~=|])/g,t.helper.escapeCharactersCallback)})),e=a.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",e,n,a)})),t.subParser("githubCodeBlocks",(function(e,n,a){"use strict";return n.ghCodeBlocks?(e=a.converter._dispatch("githubCodeBlocks.before",e,n,a),e=(e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*)\n([\s\S]*?)\n(?: {0,3})\1/g,(function(e,i,r,o){var s=n.omitExtraWLInCodeBlocks?"":"\n";return o=t.subParser("encodeCode")(o,n,a),o="
"+(o=(o=(o=t.subParser("detab")(o,n,a)).replace(/^\n+/g,"")).replace(/\n+$/g,""))+s+"
",o=t.subParser("hashBlock")(o,n,a),"\n\n¨G"+(a.ghCodeBlocks.push({text:e,codeblock:o})-1)+"G\n\n"}))).replace(/¨0/,""),a.converter._dispatch("githubCodeBlocks.after",e,n,a)):e})),t.subParser("hashBlock",(function(e,t,n){"use strict";return e=(e=n.converter._dispatch("hashBlock.before",e,t,n)).replace(/(^\n+|\n+$)/g,""),e="\n\n¨K"+(n.gHtmlBlocks.push(e)-1)+"K\n\n",e=n.converter._dispatch("hashBlock.after",e,t,n)})),t.subParser("hashCodeTags",(function(e,n,a){"use strict";e=a.converter._dispatch("hashCodeTags.before",e,n,a);return e=t.helper.replaceRecursiveRegExp(e,(function(e,i,r,o){var s=r+t.subParser("encodeCode")(i,n,a)+o;return"¨C"+(a.gHtmlSpans.push(s)-1)+"C"}),"]*>","","gim"),e=a.converter._dispatch("hashCodeTags.after",e,n,a)})),t.subParser("hashElement",(function(e,t,n){"use strict";return function(e,t){var a=t;return a=(a=(a=a.replace(/\n\n/g,"\n")).replace(/^\n/,"")).replace(/\n+$/g,""),a="\n\n¨K"+(n.gHtmlBlocks.push(a)-1)+"K\n\n"}})),t.subParser("hashHTMLBlocks",(function(e,n,a){"use strict";e=a.converter._dispatch("hashHTMLBlocks.before",e,n,a);var i=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],r=function(e,t,n,i){var r=e;return-1!==n.search(/\bmarkdown\b/)&&(r=n+a.converter.makeHtml(t)+i),"\n\n¨K"+(a.gHtmlBlocks.push(r)-1)+"K\n\n"};n.backslashEscapesHTMLTags&&(e=e.replace(/\\<(\/?[^>]+?)>/g,(function(e,t){return"<"+t+">"})));for(var o=0;o]*>)","im"),u="<"+i[o]+"\\b[^>]*>",c="";-1!==(s=t.helper.regexIndexOf(e,l));){var d=t.helper.splitAtIndex(e,s),h=t.helper.replaceRecursiveRegExp(d[1],r,u,c,"im");if(h===d[1])break;e=d[0].concat(h)}return e=e.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,t.subParser("hashElement")(e,n,a)),e=(e=t.helper.replaceRecursiveRegExp(e,(function(e){return"\n\n¨K"+(a.gHtmlBlocks.push(e)-1)+"K\n\n"}),"^ {0,3}\x3c!--","--\x3e","gm")).replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,t.subParser("hashElement")(e,n,a)),e=a.converter._dispatch("hashHTMLBlocks.after",e,n,a)})),t.subParser("hashHTMLSpans",(function(e,t,n){"use strict";function a(e){return"¨C"+(n.gHtmlSpans.push(e)-1)+"C"}return e=(e=(e=(e=(e=n.converter._dispatch("hashHTMLSpans.before",e,t,n)).replace(/<[^>]+?\/>/gi,(function(e){return a(e)}))).replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,(function(e){return a(e)}))).replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,(function(e){return a(e)}))).replace(/<[^>]+?>/gi,(function(e){return a(e)})),e=n.converter._dispatch("hashHTMLSpans.after",e,t,n)})),t.subParser("unhashHTMLSpans",(function(e,t,n){"use strict";e=n.converter._dispatch("unhashHTMLSpans.before",e,t,n);for(var a=0;a]*>\\s*]*>","^ {0,3}\\s*
","gim"),e=a.converter._dispatch("hashPreCodeTags.after",e,n,a)})),t.subParser("headers",(function(e,n,a){"use strict";e=a.converter._dispatch("headers.before",e,n,a);var i=isNaN(parseInt(n.headerLevelStart))?1:parseInt(n.headerLevelStart),r=n.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,o=n.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;e=(e=e.replace(r,(function(e,r){var o=t.subParser("spanGamut")(r,n,a),s=n.noHeaderId?"":' id="'+l(r)+'"',u=""+o+"";return t.subParser("hashBlock")(u,n,a)}))).replace(o,(function(e,r){var o=t.subParser("spanGamut")(r,n,a),s=n.noHeaderId?"":' id="'+l(r)+'"',u=i+1,c=""+o+"";return t.subParser("hashBlock")(c,n,a)}));var s=n.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm;function l(e){var i,r;if(n.customizedHeaderId){var o=e.match(/\{([^{]+?)}\s*$/);o&&o[1]&&(e=o[1])}return i=e,r=t.helper.isString(n.prefixHeaderId)?n.prefixHeaderId:!0===n.prefixHeaderId?"section-":"",n.rawPrefixHeaderId||(i=r+i),i=n.ghCompatibleHeaderId?i.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase():n.rawHeaderId?i.replace(/ /g,"-").replace(/&/g,"&").replace(/¨T/g,"¨").replace(/¨D/g,"$").replace(/["']/g,"-").toLowerCase():i.replace(/[^\w]/g,"").toLowerCase(),n.rawPrefixHeaderId&&(i=r+i),a.hashLinkCounts[i]?i=i+"-"+a.hashLinkCounts[i]++:a.hashLinkCounts[i]=1,i}return e=e.replace(s,(function(e,r,o){var s=o;n.customizedHeaderId&&(s=o.replace(/\s?\{([^{]+?)}\s*$/,""));var u=t.subParser("spanGamut")(s,n,a),c=n.noHeaderId?"":' id="'+l(o)+'"',d=i-1+r.length,h=""+u+"";return t.subParser("hashBlock")(h,n,a)})),e=a.converter._dispatch("headers.after",e,n,a)})),t.subParser("horizontalRule",(function(e,n,a){"use strict";e=a.converter._dispatch("horizontalRule.before",e,n,a);var i=t.subParser("hashBlock")("
",n,a);return e=(e=(e=e.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,i)).replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,i)).replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,i),e=a.converter._dispatch("horizontalRule.after",e,n,a)})),t.subParser("images",(function(e,n,a){"use strict";function i(e,n,i,r,o,s,l,u){var c=a.gUrls,d=a.gTitles,h=a.gDimensions;if(i=i.toLowerCase(),u||(u=""),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)r="";else if(""===r||null===r){if(""!==i&&null!==i||(i=n.toLowerCase().replace(/ ?\n/g," ")),r="#"+i,t.helper.isUndefined(c[i]))return e;r=c[i],t.helper.isUndefined(d[i])||(u=d[i]),t.helper.isUndefined(h[i])||(o=h[i].width,s=h[i].height)}n=n.replace(/"/g,""").replace(t.helper.regexes.asteriskDashAndColon,t.helper.escapeCharactersCallback);var p=''+n+'"}return e=(e=(e=(e=(e=(e=a.converter._dispatch("images.before",e,n,a)).replace(/!\[([^\]]*?)] ?(?:\n *)?\[([\s\S]*?)]()()()()()/g,i)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,(function(e,t,n,a,r,o,s,l){return i(e,t,n,a=a.replace(/\s/g,""),r,o,s,l)}))).replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,i)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,i)).replace(/!\[([^\[\]]+)]()()()()()/g,i),e=a.converter._dispatch("images.after",e,n,a)})),t.subParser("italicsAndBold",(function(e,t,n){"use strict";function a(e,t,n){return t+e+n}return e=n.converter._dispatch("italicsAndBold.before",e,t,n),e=t.literalMidWordUnderscores?(e=(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return a(t,"","")}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return a(t,"","")}))).replace(/\b_(\S[\s\S]*?)_\b/g,(function(e,t){return a(t,"","")})):(e=(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?a(t,"",""):e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?a(t,"",""):e}))).replace(/_([^\s_][\s\S]*?)_/g,(function(e,t){return/\S$/.test(t)?a(t,"",""):e})),e=t.literalMidWordAsterisks?(e=(e=e.replace(/([^*]|^)\B\*\*\*(\S[\s\S]*?)\*\*\*\B(?!\*)/g,(function(e,t,n){return a(n,t+"","")}))).replace(/([^*]|^)\B\*\*(\S[\s\S]*?)\*\*\B(?!\*)/g,(function(e,t,n){return a(n,t+"","")}))).replace(/([^*]|^)\B\*(\S[\s\S]*?)\*\B(?!\*)/g,(function(e,t,n){return a(n,t+"","")})):(e=(e=e.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,(function(e,t){return/\S$/.test(t)?a(t,"",""):e}))).replace(/\*\*(\S[\s\S]*?)\*\*/g,(function(e,t){return/\S$/.test(t)?a(t,"",""):e}))).replace(/\*([^\s*][\s\S]*?)\*/g,(function(e,t){return/\S$/.test(t)?a(t,"",""):e})),e=n.converter._dispatch("italicsAndBold.after",e,t,n)})),t.subParser("lists",(function(e,n,a){"use strict";function i(e,i){a.gListLevel++,e=e.replace(/\n{2,}$/,"\n");var r=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,o=/\n[ \t]*\n(?!¨0)/.test(e+="¨0");return n.disableForced4SpacesIndentedSublists&&(r=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm),e=(e=e.replace(r,(function(e,i,r,s,l,u,c){c=c&&""!==c.trim();var d=t.subParser("outdent")(l,n,a),h="";return u&&n.tasklists&&(h=' class="task-list-item" style="list-style-type: none;"',d=d.replace(/^[ \t]*\[(x|X| )?]/m,(function(){var e='-1?(d=t.subParser("githubCodeBlocks")(d,n,a),d=t.subParser("blockGamut")(d,n,a)):(d=(d=t.subParser("lists")(d,n,a)).replace(/\n$/,""),d=(d=t.subParser("hashHTMLBlocks")(d,n,a)).replace(/\n\n+/g,"\n\n"),d=o?t.subParser("paragraphs")(d,n,a):t.subParser("spanGamut")(d,n,a)),d=""+(d=d.replace("¨A",""))+"\n"}))).replace(/¨0/g,""),a.gListLevel--,i&&(e=e.replace(/\s+$/,"")),e}function r(e,t){if("ol"===t){var n=e.match(/^ *(\d+)\./);if(n&&"1"!==n[1])return' start="'+n[1]+'"'}return""}function o(e,t,a){var o=n.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,s=n.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,l="ul"===t?o:s,u="";if(-1!==e.search(l))!function n(c){var d=c.search(l),h=r(e,t);-1!==d?(u+="\n\n<"+t+h+">\n"+i(c.slice(0,d),!!a)+"\n",l="ul"===(t="ul"===t?"ol":"ul")?o:s,n(c.slice(d))):u+="\n\n<"+t+h+">\n"+i(c,!!a)+"\n"}(e);else{var c=r(e,t);u="\n\n<"+t+c+">\n"+i(e,!!a)+"\n"}return u}return e=a.converter._dispatch("lists.before",e,n,a),e+="¨0",e=(e=a.gListLevel?e.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,n){return o(t,n.search(/[*+-]/g)>-1?"ul":"ol",!0)})):e.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,n,a){return o(n,a.search(/[*+-]/g)>-1?"ul":"ol",!1)}))).replace(/¨0/,""),e=a.converter._dispatch("lists.after",e,n,a)})),t.subParser("metadata",(function(e,t,n){"use strict";if(!t.metadata)return e;function a(e){n.metadata.raw=e,(e=(e=e.replace(/&/g,"&").replace(/"/g,""")).replace(/\n {4}/g," ")).replace(/^([\S ]+): +([\s\S]+?)$/gm,(function(e,t,a){return n.metadata.parsed[t]=a,""}))}return e=(e=(e=(e=n.converter._dispatch("metadata.before",e,t,n)).replace(/^\s*«««+(\S*?)\n([\s\S]+?)\n»»»+\n/,(function(e,t,n){return a(n),"¨M"}))).replace(/^\s*---+(\S*?)\n([\s\S]+?)\n---+\n/,(function(e,t,i){return t&&(n.metadata.format=t),a(i),"¨M"}))).replace(/¨M/g,""),e=n.converter._dispatch("metadata.after",e,t,n)})),t.subParser("outdent",(function(e,t,n){"use strict";return e=(e=(e=n.converter._dispatch("outdent.before",e,t,n)).replace(/^(\t|[ ]{1,4})/gm,"¨0")).replace(/¨0/g,""),e=n.converter._dispatch("outdent.after",e,t,n)})),t.subParser("paragraphs",(function(e,n,a){"use strict";for(var i=(e=(e=(e=a.converter._dispatch("paragraphs.before",e,n,a)).replace(/^\n+/g,"")).replace(/\n+$/g,"")).split(/\n{2,}/g),r=[],o=i.length,s=0;s=0?r.push(l):l.search(/\S/)>=0&&(l=(l=t.subParser("spanGamut")(l,n,a)).replace(/^([ \t]*)/g,"

"),l+="

",r.push(l))}for(o=r.length,s=0;s]*>\s*]*>/.test(c)&&(d=!0)}r[s]=c}return e=(e=(e=r.join("\n")).replace(/^\n+/g,"")).replace(/\n+$/g,""),a.converter._dispatch("paragraphs.after",e,n,a)})),t.subParser("runExtension",(function(e,t,n,a){"use strict";if(e.filter)t=e.filter(t,a.converter,n);else if(e.regex){var i=e.regex;i instanceof RegExp||(i=new RegExp(i,"g")),t=t.replace(i,e.replace)}return t})),t.subParser("spanGamut",(function(e,n,a){"use strict";return e=a.converter._dispatch("spanGamut.before",e,n,a),e=t.subParser("codeSpans")(e,n,a),e=t.subParser("escapeSpecialCharsWithinTagAttributes")(e,n,a),e=t.subParser("encodeBackslashEscapes")(e,n,a),e=t.subParser("images")(e,n,a),e=t.subParser("anchors")(e,n,a),e=t.subParser("autoLinks")(e,n,a),e=t.subParser("simplifiedAutoLinks")(e,n,a),e=t.subParser("emoji")(e,n,a),e=t.subParser("underline")(e,n,a),e=t.subParser("italicsAndBold")(e,n,a),e=t.subParser("strikethrough")(e,n,a),e=t.subParser("ellipsis")(e,n,a),e=t.subParser("hashHTMLSpans")(e,n,a),e=t.subParser("encodeAmpsAndAngles")(e,n,a),n.simpleLineBreaks?/\n\n¨K/.test(e)||(e=e.replace(/\n+/g,"
\n")):e=e.replace(/ +\n/g,"
\n"),e=a.converter._dispatch("spanGamut.after",e,n,a)})),t.subParser("strikethrough",(function(e,n,a){"use strict";return n.strikethrough&&(e=(e=a.converter._dispatch("strikethrough.before",e,n,a)).replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,(function(e,i){return function(e){return n.simplifiedAutoLink&&(e=t.subParser("simplifiedAutoLinks")(e,n,a)),""+e+""}(i)})),e=a.converter._dispatch("strikethrough.after",e,n,a)),e})),t.subParser("stripLinkDefinitions",(function(e,n,a){"use strict";var i=function(i,r,o,s,l,u,c){return r=r.toLowerCase(),e.toLowerCase().split(r).length-1<2?i:(o.match(/^data:.+?\/.+?;base64,/)?a.gUrls[r]=o.replace(/\s/g,""):a.gUrls[r]=t.subParser("encodeAmpsAndAngles")(o,n,a),u?u+c:(c&&(a.gTitles[r]=c.replace(/"|'/g,""")),n.parseImgDimensions&&s&&l&&(a.gDimensions[r]={width:s,height:l}),""))};return e=(e=(e=(e+="¨0").replace(/^ {0,3}\[([^\]]+)]:[ \t]*\n?[ \t]*?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n\n|(?=¨0)|(?=\n\[))/gm,i)).replace(/^ {0,3}\[([^\]]+)]:[ \t]*\n?[ \t]*\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm,i)).replace(/¨0/,"")})),t.subParser("tables",(function(e,n,a){"use strict";if(!n.tables)return e;function i(e,i){return""+t.subParser("spanGamut")(e,n,a)+"\n"}function r(e){var r,o=e.split("\n");for(r=0;r"+(l=t.subParser("spanGamut")(l,n,a))+"\n"));for(r=0;r\n\n\n",i=0;i\n";for(var r=0;r\n"}return n+"\n\n"}(f,g)}return e=(e=(e=(e=a.converter._dispatch("tables.before",e,n,a)).replace(/\\(\|)/g,t.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,r)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,r),e=a.converter._dispatch("tables.after",e,n,a)})),t.subParser("underline",(function(e,n,a){"use strict";return n.underline?(e=a.converter._dispatch("underline.before",e,n,a),e=(e=n.literalMidWordUnderscores?(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return""+t+""}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return""+t+""})):(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/(_)/g,t.helper.escapeCharactersCallback),e=a.converter._dispatch("underline.after",e,n,a)):e})),t.subParser("unescapeSpecialChars",(function(e,t,n){"use strict";return e=(e=n.converter._dispatch("unescapeSpecialChars.before",e,t,n)).replace(/¨E(\d+)E/g,(function(e,t){var n=parseInt(t);return String.fromCharCode(n)})),e=n.converter._dispatch("unescapeSpecialChars.after",e,t,n)})),t.subParser("makeMarkdown.blockquote",(function(e,n){"use strict";var a="";if(e.hasChildNodes())for(var i=e.childNodes,r=i.length,o=0;o ")})),t.subParser("makeMarkdown.codeBlock",(function(e,t){"use strict";var n=e.getAttribute("language"),a=e.getAttribute("precodenum");return"```"+n+"\n"+t.preList[a]+"\n```"})),t.subParser("makeMarkdown.codeSpan",(function(e){"use strict";return"`"+e.innerHTML+"`"})),t.subParser("makeMarkdown.emphasis",(function(e,n){"use strict";var a="";if(e.hasChildNodes()){a+="*";for(var i=e.childNodes,r=i.length,o=0;o",e.hasAttribute("width")&&e.hasAttribute("height")&&(t+=" ="+e.getAttribute("width")+"x"+e.getAttribute("height")),e.hasAttribute("title")&&(t+=' "'+e.getAttribute("title")+'"'),t+=")"),t})),t.subParser("makeMarkdown.links",(function(e,n){"use strict";var a="";if(e.hasChildNodes()&&e.hasAttribute("href")){var i=e.childNodes,r=i.length;a="[";for(var o=0;o",e.hasAttribute("title")&&(a+=' "'+e.getAttribute("title")+'"'),a+=")"}return a})),t.subParser("makeMarkdown.list",(function(e,n,a){"use strict";var i="";if(!e.hasChildNodes())return"";for(var r=e.childNodes,o=r.length,s=e.getAttribute("start")||1,l=0;l"+t.preList[n]+""})),t.subParser("makeMarkdown.strikethrough",(function(e,n){"use strict";var a="";if(e.hasChildNodes()){a+="~~";for(var i=e.childNodes,r=i.length,o=0;otr>th"),l=e.querySelectorAll("tbody>tr");for(a=0;af&&(f=m)}for(a=0;a/g,"\\$1>")).replace(/^#/gm,"\\#")).replace(/^(\s*)([-=]{3,})(\s*)$/,"$1\\$2$3")).replace(/^( {0,3}\d+)\./gm,"$1\\.")).replace(/^( {0,3})([+-])/gm,"$1\\$2")).replace(/]([\s]*)\(/g,"\\]$1\\(")).replace(/^ {0,3}\[([\S \t]*?)]:/gm,"\\[$1]:")}));"function"==typeof define&&define.amd?define((function(){"use strict";return t})):"undefined"!=typeof module&&module.exports?module.exports=t:this.showdown=t}.call(this);var NostrTools=(()=>{var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,i=(t,n)=>{for(var a in n)e(t,a,{get:n[a],enumerable:!0})},r={};function o(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function s(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function l(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}i(r,{Relay:()=>Ia,SimplePool:()=>Da,finalizeEvent:()=>Ft,fj:()=>ya,generateSecretKey:()=>jt,getEventHash:()=>Dt,getFilterLimit:()=>ba,getPublicKey:()=>Bt,kinds:()=>Vt,matchFilter:()=>ga,matchFilters:()=>_a,mergeFilters:()=>va,nip04:()=>Pi,nip05:()=>Ar,nip10:()=>Or,nip11:()=>qr,nip13:()=>Fr,nip18:()=>Ur,nip19:()=>qa,nip21:()=>Yr,nip25:()=>Jr,nip27:()=>to,nip28:()=>ro,nip30:()=>ho,nip39:()=>vo,nip42:()=>Ea,nip44:()=>wo,nip47:()=>is,nip57:()=>ls,nip98:()=>fs,parseReferences:()=>Ei,serializeEvent:()=>Ot,sortEvents:()=>mt,utils:()=>Et,validateEvent:()=>ft,verifiedSymbol:()=>ht,verifyEvent:()=>$t});var u="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0,c=e=>e instanceof Uint8Array,d=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),h=(e,t)=>e<<32-t|e>>>t;if(!(68===new Uint8Array(new Uint32Array([287454020]).buffer)[0]))throw new Error("Non little-endian hardware is not supported");function p(e){if("string"==typeof e&&(e=function(e){if("string"!=typeof e)throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array((new TextEncoder).encode(e))}(e)),!c(e))throw new Error("expected Uint8Array, got "+typeof e);return e}var f=class{clone(){return this._cloneInto()}};function m(e){const t=t=>e().update(p(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function g(e=32){if(u&&"function"==typeof u.getRandomValues)return u.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}var _=class extends f{constructor(e,t,n,a){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=d(this.buffer)}update(e){l(this);const{view:t,buffer:n,blockLen:a}=this,i=(e=p(e)).length;for(let r=0;ra-r&&(this.process(n,0),r=0);for(let e=r;e>i&r),s=Number(n&r),l=a?4:0,u=a?0:4;e.setUint32(t+l,o,a),e.setUint32(t+u,s,a)}(n,a-8,BigInt(8*this.length),i),this.process(n,0);const o=d(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=u/4,h=this.get();if(c>h.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;ee&t^e&n^t&n,b=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),y=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),w=new Uint32Array(64),k=class extends _{constructor(){super(64,32,8,!1),this.A=0|y[0],this.B=0|y[1],this.C=0|y[2],this.D=0|y[3],this.E=0|y[4],this.F=0|y[5],this.G=0|y[6],this.H=0|y[7]}get(){const{A:e,B:t,C:n,D:a,E:i,F:r,G:o,H:s}=this;return[e,t,n,a,i,r,o,s]}set(e,t,n,a,i,r,o,s){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|a,this.E=0|i,this.F=0|r,this.G=0|o,this.H=0|s}process(e,t){for(let n=0;n<16;n++,t+=4)w[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=w[e-15],n=w[e-2],a=h(t,7)^h(t,18)^t>>>3,i=h(n,17)^h(n,19)^n>>>10;w[e]=i+w[e-7]+a+w[e-16]|0}let{A:n,B:a,C:i,D:r,E:o,F:s,G:l,H:u}=this;for(let e=0;e<64;e++){const t=u+(h(o,6)^h(o,11)^h(o,25))+((c=o)&s^~c&l)+b[e]+w[e]|0,d=(h(n,2)^h(n,13)^h(n,22))+v(n,a,i)|0;u=l,l=s,s=o,o=r+t|0,r=i,i=a,a=n,n=t+d|0}var c;n=n+this.A|0,a=a+this.B|0,i=i+this.C|0,r=r+this.D|0,o=o+this.E|0,s=s+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(n,a,i,r,o,s,l,u)}roundClean(){w.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},x=m((()=>new k)),S={};i(S,{bitGet:()=>U,bitLen:()=>V,bitMask:()=>W,bitSet:()=>H,bytesToHex:()=>L,bytesToNumberBE:()=>N,bytesToNumberLE:()=>I,concatBytes:()=>B,createHmacDrbg:()=>K,ensureBytes:()=>j,equalBytes:()=>F,hexToBytes:()=>z,hexToNumber:()=>R,numberToBytesBE:()=>O,numberToBytesLE:()=>D,numberToHexUnpadded:()=>M,numberToVarBytesBE:()=>q,utf8ToBytes:()=>$,validateObject:()=>Z});var C=BigInt(0),T=BigInt(1),E=BigInt(2),P=e=>e instanceof Uint8Array,A=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function L(e){if(!P(e))throw new Error("Uint8Array expected");let t="";for(let n=0;ne+t.length),0));let n=0;return e.forEach((e=>{if(!P(e))throw new Error("Uint8Array expected");t.set(e,n),n+=e.length})),t}function F(e,t){if(e.length!==t.length)return!1;for(let n=0;nC;e>>=T,t+=1);return t}function U(e,t){return e>>BigInt(t)&T}var H=(e,t,n)=>e|(n?T:C)<(E<new Uint8Array(e),Y=e=>Uint8Array.from(e);function K(e,t,n){if("number"!=typeof e||e<2)throw new Error("hashLen must be a number");if("number"!=typeof t||t<2)throw new Error("qByteLen must be a number");if("function"!=typeof n)throw new Error("hmacFn must be a function");let a=G(e),i=G(e),r=0;const o=()=>{a.fill(1),i.fill(0),r=0},s=(...e)=>n(i,a,...e),l=(e=G())=>{i=s(Y([0]),e),a=s(),0!==e.length&&(i=s(Y([1]),e),a=s())},u=()=>{if(r++>=1e3)throw new Error("drbg: tried 1000 values");let e=0;const n=[];for(;e{let n;for(o(),l(e);!(n=t(u()));)l();return o(),n}}var Q={bigint:e=>"bigint"==typeof e,function:e=>"function"==typeof e,boolean:e=>"boolean"==typeof e,string:e=>"string"==typeof e,stringOrUint8Array:e=>"string"==typeof e||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>"function"==typeof e&&Number.isSafeInteger(e.outputLen)};function Z(e,t,n={}){const a=(t,n,a)=>{const i=Q[n];if("function"!=typeof i)throw new Error(`Invalid validator "${n}", expected function`);const r=e[t];if(!(a&&void 0===r||i(r,e)))throw new Error(`Invalid param ${String(t)}=${r} (${typeof r}), expected ${n}`)};for(const[e,n]of Object.entries(t))a(e,n,!1);for(const[e,t]of Object.entries(n))a(e,t,!0);return e}var J=BigInt(0),X=BigInt(1),ee=BigInt(2),te=BigInt(3),ne=BigInt(4),ae=BigInt(5),ie=BigInt(8);BigInt(9),BigInt(16);function re(e,t){const n=e%t;return n>=J?n:t+n}function oe(e,t,n){if(n<=J||t 0");if(n===X)return J;let a=X;for(;t>J;)t&X&&(a=a*e%n),e=e*e%n,t>>=X;return a}function se(e,t,n){let a=e;for(;t-- >J;)a*=a,a%=n;return a}function le(e,t){if(e===J||t<=J)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let n=re(e,t),a=t,i=J,r=X,o=X,s=J;for(;n!==J;){const e=a/n,t=a%n,l=i-o*e,u=r-s*e;a=n,n=t,i=o,r=s,o=l,s=u}if(a!==X)throw new Error("invert: does not exist");return re(i,t)}function ue(e){if(e%ne===te){const t=(e+X)/ne;return function(e,n){const a=e.pow(n,t);if(!e.eql(e.sqr(a),n))throw new Error("Cannot find square root");return a}}if(e%ie===ae){const t=(e-ae)/ie;return function(e,n){const a=e.mul(n,ee),i=e.pow(a,t),r=e.mul(n,i),o=e.mul(e.mul(r,ee),i),s=e.mul(r,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),n))throw new Error("Cannot find square root");return s}}return function(e){const t=(e-X)/ee;let n,a,i;for(n=e-X,a=0;n%ee===J;n/=ee,a++);for(i=ee;i(e[t]="function",e)),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"})),Z(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...de(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var{bytesToNumberBE:_e,hexToBytes:ve}=S,be={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(e){const{Err:t}=be;if(e.length<2||2!==e[0])throw new t("Invalid signature integer tag");const n=e[1],a=e.subarray(2,n+2);if(!n||a.length!==n)throw new t("Invalid signature integer: wrong length");if(128&a[0])throw new t("Invalid signature integer: negative");if(0===a[0]&&!(128&a[1]))throw new t("Invalid signature integer: unnecessary leading zero");return{d:_e(a),l:e.subarray(n+2)}},toSig(e){const{Err:t}=be,n="string"==typeof e?ve(e):e;if(!(n instanceof Uint8Array))throw new Error("ui8a expected");let a=n.length;if(a<2||48!=n[0])throw new t("Invalid signature tag");if(n[1]!==a-2)throw new t("Invalid signature: incorrect length");const{d:i,l:r}=be._parseInt(n.subarray(2)),{d:o,l:s}=be._parseInt(r);if(s.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s:o}},hexFromSig(e){const t=e=>8&Number.parseInt(e[0],16)?"00"+e:e,n=e=>{const t=e.toString(16);return 1&t.length?`0${t}`:t},a=t(n(e.s)),i=t(n(e.r)),r=a.length/2,o=i.length/2,s=n(r),l=n(o);return`30${n(o+r+4)}02${l}${i}02${s}${a}`}},ye=BigInt(0),we=BigInt(1),ke=(BigInt(2),BigInt(3));BigInt(4);function xe(e){const t=function(e){const t=ge(e);Z(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:n,Fp:a,a:i}=t;if(n){if(!a.eql(i,a.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if("object"!=typeof n||"bigint"!=typeof n.beta||"function"!=typeof n.splitScalar)throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}(e),{Fp:n}=t,a=t.toBytes||((e,t,a)=>{const i=t.toAffine();return B(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),i=t.fromBytes||(e=>{const t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function r(e){const{a:a,b:i}=t,r=n.sqr(e),o=n.mul(r,e);return n.add(n.add(o,n.mul(e,a)),i)}if(!n.eql(n.sqr(t.Gy),r(t.Gx)))throw new Error("bad generator point: equation left != right");function o(e){return"bigint"==typeof e&&yen.eql(e,n.ZERO);return i(t)&&i(a)?d.ZERO:new d(t,a,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){const t=n.invertBatch(e.map((e=>e.pz)));return e.map(((e,n)=>e.toAffine(t[n]))).map(d.fromAffine)}static fromHex(e){const t=d.fromAffine(i(j("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return d.BASE.multiply(l(e))}_setWindowSize(e){this._WINDOW_SIZE=e,u.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!n.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:e,y:a}=this.toAffine();if(!n.isValid(e)||!n.isValid(a))throw new Error("bad point: x or y not FE");const i=n.sqr(a),o=r(e);if(!n.eql(i,o))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw new Error("Field doesn't support isOdd")}equals(e){c(e);const{px:t,py:a,pz:i}=this,{px:r,py:o,pz:s}=e,l=n.eql(n.mul(t,s),n.mul(r,i)),u=n.eql(n.mul(a,s),n.mul(o,i));return l&&u}negate(){return new d(this.px,n.neg(this.py),this.pz)}double(){const{a:e,b:a}=t,i=n.mul(a,ke),{px:r,py:o,pz:s}=this;let l=n.ZERO,u=n.ZERO,c=n.ZERO,h=n.mul(r,r),p=n.mul(o,o),f=n.mul(s,s),m=n.mul(r,o);return m=n.add(m,m),c=n.mul(r,s),c=n.add(c,c),l=n.mul(e,c),u=n.mul(i,f),u=n.add(l,u),l=n.sub(p,u),u=n.add(p,u),u=n.mul(l,u),l=n.mul(m,l),c=n.mul(i,c),f=n.mul(e,f),m=n.sub(h,f),m=n.mul(e,m),m=n.add(m,c),c=n.add(h,h),h=n.add(c,h),h=n.add(h,f),h=n.mul(h,m),u=n.add(u,h),f=n.mul(o,s),f=n.add(f,f),h=n.mul(f,m),l=n.sub(l,h),c=n.mul(f,p),c=n.add(c,c),c=n.add(c,c),new d(l,u,c)}add(e){c(e);const{px:a,py:i,pz:r}=this,{px:o,py:s,pz:l}=e;let u=n.ZERO,h=n.ZERO,p=n.ZERO;const f=t.a,m=n.mul(t.b,ke);let g=n.mul(a,o),_=n.mul(i,s),v=n.mul(r,l),b=n.add(a,i),y=n.add(o,s);b=n.mul(b,y),y=n.add(g,_),b=n.sub(b,y),y=n.add(a,r);let w=n.add(o,l);return y=n.mul(y,w),w=n.add(g,v),y=n.sub(y,w),w=n.add(i,r),u=n.add(s,l),w=n.mul(w,u),u=n.add(_,v),w=n.sub(w,u),p=n.mul(f,y),u=n.mul(m,v),p=n.add(u,p),u=n.sub(_,p),p=n.add(_,p),h=n.mul(u,p),_=n.add(g,g),_=n.add(_,g),v=n.mul(f,v),y=n.mul(m,y),_=n.add(_,v),v=n.sub(g,v),v=n.mul(f,v),y=n.add(y,v),g=n.mul(_,y),h=n.add(h,g),g=n.mul(w,y),u=n.mul(b,u),u=n.sub(u,g),g=n.mul(b,_),p=n.mul(w,p),p=n.add(p,g),new d(u,h,p)}subtract(e){return this.add(e.negate())}is0(){return this.equals(d.ZERO)}wNAF(e){return p.wNAFCached(this,u,e,(e=>{const t=n.invertBatch(e.map((e=>e.pz)));return e.map(((e,n)=>e.toAffine(t[n]))).map(d.fromAffine)}))}multiplyUnsafe(e){const a=d.ZERO;if(e===ye)return a;if(s(e),e===we)return this;const{endo:i}=t;if(!i)return p.unsafeLadder(this,e);let{k1neg:r,k1:o,k2neg:l,k2:u}=i.splitScalar(e),c=a,h=a,f=this;for(;o>ye||u>ye;)o&we&&(c=c.add(f)),u&we&&(h=h.add(f)),f=f.double(),o>>=we,u>>=we;return r&&(c=c.negate()),l&&(h=h.negate()),h=new d(n.mul(h.px,i.beta),h.py,h.pz),c.add(h)}multiply(e){s(e);let a,i,r=e;const{endo:o}=t;if(o){const{k1neg:e,k1:t,k2neg:s,k2:l}=o.splitScalar(r);let{p:u,f:c}=this.wNAF(t),{p:h,f:f}=this.wNAF(l);u=p.constTimeNegate(e,u),h=p.constTimeNegate(s,h),h=new d(n.mul(h.px,o.beta),h.py,h.pz),a=u.add(h),i=c.add(f)}else{const{p:e,f:t}=this.wNAF(r);a=e,i=t}return d.normalizeZ([a,i])[0]}multiplyAndAddUnsafe(e,t,n){const a=d.BASE,i=(e,t)=>t!==ye&&t!==we&&e.equals(a)?e.multiply(t):e.multiplyUnsafe(t),r=i(this,t).add(i(e,n));return r.is0()?void 0:r}toAffine(e){const{px:t,py:a,pz:i}=this,r=this.is0();null==e&&(e=r?n.ONE:n.inv(i));const o=n.mul(t,e),s=n.mul(a,e),l=n.mul(i,e);if(r)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw new Error("invZ was invalid");return{x:o,y:s}}isTorsionFree(){const{h:e,isTorsionFree:n}=t;if(e===we)return!0;if(n)return n(d,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:e,clearCofactor:n}=t;return e===we?this:n?n(d,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return this.assertValidity(),a(d,this,e)}toHex(e=!0){return L(this.toRawBytes(e))}}d.BASE=new d(t.Gx,t.Gy,n.ONE),d.ZERO=new d(n.ZERO,n.ONE,n.ZERO);const h=t.nBitLength,p=function(e,t){const n=(e,t)=>{const n=t.negate();return e?n:t},a=e=>({windows:Math.ceil(t/e)+1,windowSize:2**(e-1)});return{constTimeNegate:n,unsafeLadder(t,n){let a=e.ZERO,i=t;for(;n>fe;)n&me&&(a=a.add(i)),i=i.double(),n>>=me;return a},precomputeWindow(e,t){const{windows:n,windowSize:i}=a(t),r=[];let o=e,s=o;for(let e=0;e>=h,a>s&&(a-=d,r+=me);const o=t,p=t+Math.abs(a)-1,f=e%2!=0,m=a<0;0===a?u=u.add(n(f,i[o])):l=l.add(n(m,i[p]))}return{p:l,f:u}},wNAFCached(e,t,n,a){const i=e._WINDOW_SIZE||1;let r=t.get(e);return r||(r=this.precomputeWindow(e,i),1!==i&&t.set(e,a(r))),this.wNAF(i,r,n)}}}(d,t.endo?Math.ceil(h/2):h);return{CURVE:t,ProjectivePoint:d,normPrivateKeyToScalar:l,weierstrassEquation:r,isWithinCurveOrder:o}}function Se(e){const t=function(e){const t=ge(e);return Z(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}(e),{Fp:n,n:a}=t,i=n.BYTES+1,r=2*n.BYTES+1;function o(e){return re(e,a)}function s(e){return le(e,a)}const{ProjectivePoint:l,normPrivateKeyToScalar:u,weierstrassEquation:c,isWithinCurveOrder:d}=xe({...t,toBytes(e,t,a){const i=t.toAffine(),r=n.toBytes(i.x),o=B;return a?o(Uint8Array.from([t.hasEvenY()?2:3]),r):o(Uint8Array.from([4]),r,n.toBytes(i.y))},fromBytes(e){const t=e.length,a=e[0],o=e.subarray(1);if(t!==i||2!==a&&3!==a){if(t===r&&4===a){return{x:n.fromBytes(o.subarray(0,n.BYTES)),y:n.fromBytes(o.subarray(n.BYTES,2*n.BYTES))}}throw new Error(`Point of length ${t} was invalid. Expected ${i} compressed bytes or ${r} uncompressed bytes`)}{const e=N(o);if(!(ye<(s=e)&&sL(O(e,t.nByteLength));function p(e){return e>a>>we}const f=(e,t,n)=>N(e.slice(t,n));class m{constructor(e,t,n){this.r=e,this.s=t,this.recovery=n,this.assertValidity()}static fromCompact(e){const n=t.nByteLength;return e=j("compactSignature",e,2*n),new m(f(e,0,n),f(e,n,2*n))}static fromDER(e){const{r:t,s:n}=be.toSig(j("DER",e));return new m(t,n)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(e){return new m(this.r,this.s,e)}recoverPublicKey(e){const{r:a,s:i,recovery:r}=this,u=b(j("msgHash",e));if(null==r||![0,1,2,3].includes(r))throw new Error("recovery id invalid");const c=2===r||3===r?a+t.n:a;if(c>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const d=1&r?"03":"02",p=l.fromHex(d+h(c)),f=s(c),m=o(-u*f),g=o(i*f),_=l.BASE.multiplyAndAddUnsafe(p,m,g);if(!_)throw new Error("point at infinify");return _.assertValidity(),_}hasHighS(){return p(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,o(-this.s),this.recovery):this}toDERRawBytes(){return z(this.toDERHex())}toDERHex(){return be.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return z(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}const g={isValidPrivateKey(e){try{return u(e),!0}catch(e){return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{const e=pe(t.n);return function(e,t,n=!1){const a=e.length,i=he(t),r=pe(t);if(a<16||a1024)throw new Error(`expected ${r}-1024 bytes of input, got ${a}`);const o=re(n?N(e):I(e),t-X)+X;return n?D(o,i):O(o,i)}(t.randomBytes(e),t.n)},precompute:(e=8,t=l.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)};function _(e){const t=e instanceof Uint8Array,n="string"==typeof e,a=(t||n)&&e.length;return t?a===i||a===r:n?a===2*i||a===2*r:e instanceof l}const v=t.bits2int||function(e){const n=N(e),a=8*e.length-t.nBitLength;return a>0?n>>BigInt(a):n},b=t.bits2int_modN||function(e){return o(v(e))},y=W(t.nBitLength);function w(e){if("bigint"!=typeof e)throw new Error("bigint expected");if(!(ye<=e&&ee in i)))throw new Error("sign() legacy options not supported");const{hash:r,randomBytes:c}=t;let{lowS:h,prehash:f,extraEntropy:g}=i;null==h&&(h=!0),e=j("msgHash",e),f&&(e=j("prehashed msgHash",r(e)));const _=b(e),y=u(a),k=[w(y),w(_)];if(null!=g){const e=!0===g?c(n.BYTES):g;k.push(j("extraEntropy",e))}const S=B(...k),C=_;return{seed:S,k2sig:function(e){const t=v(e);if(!d(t))return;const n=s(t),a=l.BASE.multiply(t).toAffine(),i=o(a.x);if(i===ye)return;const r=o(n*o(C+i*y));if(r===ye)return;let u=(a.x===i?0:2)|Number(a.y&we),c=r;return h&&p(r)&&(c=function(e){return p(e)?o(-e):e}(r),u^=1),new m(i,c,u)}}}const x={lowS:t.lowS,prehash:!1},S={lowS:t.lowS,prehash:!1};return l.BASE._setWindowSize(8),{CURVE:t,getPublicKey:function(e,t=!0){return l.fromPrivateKey(e).toRawBytes(t)},getSharedSecret:function(e,t,n=!0){if(_(e))throw new Error("first arg must be private key");if(!_(t))throw new Error("second arg must be public key");return l.fromHex(t).multiply(u(e)).toRawBytes(n)},sign:function(e,n,a=x){const{seed:i,k2sig:r}=k(e,n,a),o=t;return K(o.hash.outputLen,o.nByteLength,o.hmac)(i,r)},verify:function(e,n,a,i=S){const r=e;if(n=j("msgHash",n),a=j("publicKey",a),"strict"in i)throw new Error("options.strict was renamed to lowS");const{lowS:u,prehash:c}=i;let d,h;try{if("string"==typeof r||r instanceof Uint8Array)try{d=m.fromDER(r)}catch(e){if(!(e instanceof be.Err))throw e;d=m.fromCompact(r)}else{if("object"!=typeof r||"bigint"!=typeof r.r||"bigint"!=typeof r.s)throw new Error("PARSE");{const{r:e,s:t}=r;d=new m(e,t)}}h=l.fromHex(a)}catch(e){if("PARSE"===e.message)throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(u&&d.hasHighS())return!1;c&&(n=t.hash(n));const{r:p,s:f}=d,g=b(n),_=s(f),v=o(g*_),y=o(p*_),w=l.BASE.multiplyAndAddUnsafe(h,v,y)?.toAffine();return!!w&&o(w.x)===p},ProjectivePoint:l,Signature:m,utils:g}}var Ce=class extends f{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,function(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");o(e.outputLen),o(e.blockLen)}(e);const n=p(t);if(this.iHash=e.create(),"function"!=typeof this.iHash.update)throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const a=this.blockLen,i=new Uint8Array(a);i.set(n.length>a?e.create().update(n).digest():n);for(let e=0;enew Ce(e,t).update(n).digest();function Ee(e){return{hash:e,hmac:(t,...n)=>Te(e,t,function(...e){const t=new Uint8Array(e.reduce(((e,t)=>e+t.length),0));let n=0;return e.forEach((e=>{if(!c(e))throw new Error("Uint8Array expected");t.set(e,n),n+=e.length})),t}(...n)),randomBytes:g}}Te.create=(e,t)=>new Ce(e,t);var Pe=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Ae=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Le=BigInt(1),Me=BigInt(2),Re=(e,t)=>(e+t/Me)/t;function ze(e){const t=Pe,n=BigInt(3),a=BigInt(6),i=BigInt(11),r=BigInt(22),o=BigInt(23),s=BigInt(44),l=BigInt(88),u=e*e*e%t,c=u*u*e%t,d=se(c,n,t)*c%t,h=se(d,n,t)*c%t,p=se(h,Me,t)*u%t,f=se(p,i,t)*p%t,m=se(f,r,t)*f%t,g=se(m,s,t)*m%t,_=se(g,l,t)*g%t,v=se(_,s,t)*m%t,b=se(v,n,t)*c%t,y=se(b,o,t)*f%t,w=se(y,a,t)*u%t,k=se(w,Me,t);if(!Ne.eql(Ne.sqr(k),e))throw new Error("Cannot find square root");return k}var Ne=function(e,t,n=!1,a={}){if(e<=J)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:i,nByteLength:r}=de(e,t);if(r>2048)throw new Error("Field lengths over 2048 bytes are not supported");const o=ue(e),s=Object.freeze({ORDER:e,BITS:i,BYTES:r,MASK:W(i),ZERO:J,ONE:X,create:t=>re(t,e),isValid:t=>{if("bigint"!=typeof t)throw new Error("Invalid field element: expected bigint, got "+typeof t);return J<=t&&te===J,isOdd:e=>(e&X)===X,neg:t=>re(-t,e),eql:(e,t)=>e===t,sqr:t=>re(t*t,e),add:(t,n)=>re(t+n,e),sub:(t,n)=>re(t-n,e),mul:(t,n)=>re(t*n,e),pow:(e,t)=>function(e,t,n){if(n 0");if(n===J)return e.ONE;if(n===X)return t;let a=e.ONE,i=t;for(;n>J;)n&X&&(a=e.mul(a,i)),i=e.sqr(i),n>>=X;return a}(s,e,t),div:(t,n)=>re(t*le(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>le(t,e),sqrt:a.sqrt||(e=>o(s,e)),invertBatch:e=>function(e,t){const n=new Array(t.length),a=t.reduce(((t,a,i)=>e.is0(a)?t:(n[i]=t,e.mul(t,a))),e.ONE),i=e.inv(a);return t.reduceRight(((t,a,i)=>e.is0(a)?t:(n[i]=e.mul(t,n[i]),e.mul(t,a))),i),n}(s,e),cmov:(e,t,n)=>n?t:e,toBytes:e=>n?D(e,r):O(e,r),fromBytes:e=>{if(e.length!==r)throw new Error(`Fp.fromBytes: expected ${r}, got ${e.length}`);return n?I(e):N(e)}});return Object.freeze(s)}(Pe,void 0,void 0,{sqrt:ze}),Ie=function(e,t){const n=t=>Se({...e,...Ee(t)});return Object.freeze({...n(t),create:n})}({a:BigInt(0),b:BigInt(7),Fp:Ne,n:Ae,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=Ae,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),a=-Le*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),r=n,o=BigInt("0x100000000000000000000000000000000"),s=Re(r*e,t),l=Re(-a*e,t);let u=re(e-s*n-l*i,t),c=re(-s*a-l*r,t);const d=u>o,h=c>o;if(d&&(u=t-u),h&&(c=t-c),u>o||c>o)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:d,k1:u,k2neg:h,k2:c}}}},x),Oe=BigInt(0),De=e=>"bigint"==typeof e&&Oe"bigint"==typeof e&&Oee.charCodeAt(0))));n=B(t,t),je[e]=n}return x(B(n,...t))}var Fe=e=>e.toRawBytes(!0).slice(1),$e=e=>O(e,32),Ve=e=>re(e,Pe),Ue=e=>re(e,Ae),He=Ie.ProjectivePoint,We=(e,t,n)=>He.BASE.multiplyAndAddUnsafe(e,t,n);function Ge(e){let t=Ie.utils.normPrivateKeyToScalar(e),n=He.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:Ue(-t),bytes:Fe(n)}}function Ye(e){if(!De(e))throw new Error("bad x: need 0 < x < p");const t=Ve(e*e);let n=ze(Ve(t*e+BigInt(7)));n%Me!==Oe&&(n=Ve(-n));const a=new He(e,n,Le);return a.assertValidity(),a}function Ke(...e){return Ue(N(Be("BIP0340/challenge",...e)))}function Qe(e){return Ge(e).bytes}function Ze(e,t,n=g(32)){const a=j("message",e),{bytes:i,scalar:r}=Ge(t),o=j("auxRand",n,32),s=$e(r^N(Be("BIP0340/aux",o))),l=Be("BIP0340/nonce",s,i,a),u=Ue(N(l));if(u===Oe)throw new Error("sign failed: k is zero");const{bytes:c,scalar:d}=Ge(u),h=Ke(c,i,a),p=new Uint8Array(64);if(p.set(c,0),p.set($e(Ue(d+h*r)),32),!Je(p,a,i))throw new Error("sign: Invalid signature produced");return p}function Je(e,t,n){const a=j("signature",e,64),i=j("message",t),r=j("publicKey",n,32);try{const e=Ye(N(r)),t=N(a.subarray(0,32));if(!De(t))return!1;const n=N(a.subarray(32,64));if(!qe(n))return!1;const o=Ke($e(t),Fe(e),i),s=We(e,n,Ue(-o));return!(!s||!s.hasEvenY()||s.toAffine().x!==t)}catch(e){return!1}}var Xe=(()=>({getPublicKey:Qe,sign:Ze,verify:Je,utils:{randomPrivateKey:Ie.utils.randomPrivateKey,lift_x:Ye,pointToBytes:Fe,numberToBytesBE:O,bytesToNumberBE:N,taggedHash:Be,mod:re}}))(),et="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0,tt=e=>e instanceof Uint8Array,nt=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),at=(e,t)=>e<<32-t|e>>>t;if(!(68===new Uint8Array(new Uint32Array([287454020]).buffer)[0]))throw new Error("Non little-endian hardware is not supported");var it=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function rt(e){if(!tt(e))throw new Error("Uint8Array expected");let t="";for(let n=0;ne+t.length),0));let n=0;return e.forEach((e=>{if(!tt(e))throw new Error("Uint8Array expected");t.set(e,n),n+=e.length})),t}var ut=class{clone(){return this._cloneInto()}};function ct(e){const t=t=>e().update(st(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function dt(e=32){if(et&&"function"==typeof et.getRandomValues)return et.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}var ht=Symbol("verified"),pt=e=>e instanceof Object;function ft(e){if(!pt(e))return!1;if("number"!=typeof e.kind)return!1;if("string"!=typeof e.content)return!1;if("number"!=typeof e.created_at)return!1;if("string"!=typeof e.pubkey)return!1;if(!e.pubkey.match(/^[a-f0-9]{64}$/))return!1;if(!Array.isArray(e.tags))return!1;for(let t=0;te.created_at!==t.created_at?t.created_at-e.created_at:e.id.localeCompare(t.id)))}function gt(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function _t(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}var vt={number:gt,bool:function(e){if("boolean"!=typeof e)throw new Error(`Expected boolean, not ${e}`)},bytes:_t,hash:function(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");gt(e.outputLen),gt(e.blockLen)},exists:function(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")},output:function(e,t){_t(e);const n=t.outputLen;if(e.lengtha-r&&(this.process(n,0),r=0);for(let e=r;e>i&r),s=Number(n&r),l=a?4:0,u=a?0:4;e.setUint32(t+l,o,a),e.setUint32(t+u,s,a)}(n,a-8,BigInt(8*this.length),i),this.process(n,0);const o=nt(e),s=this.outputLen;if(s%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const l=s/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;ee&t^e&n^t&n,wt=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),kt=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),xt=new Uint32Array(64),St=class extends bt{constructor(){super(64,32,8,!1),this.A=0|kt[0],this.B=0|kt[1],this.C=0|kt[2],this.D=0|kt[3],this.E=0|kt[4],this.F=0|kt[5],this.G=0|kt[6],this.H=0|kt[7]}get(){const{A:e,B:t,C:n,D:a,E:i,F:r,G:o,H:s}=this;return[e,t,n,a,i,r,o,s]}set(e,t,n,a,i,r,o,s){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|a,this.E=0|i,this.F=0|r,this.G=0|o,this.H=0|s}process(e,t){for(let n=0;n<16;n++,t+=4)xt[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=xt[e-15],n=xt[e-2],a=at(t,7)^at(t,18)^t>>>3,i=at(n,17)^at(n,19)^n>>>10;xt[e]=i+xt[e-7]+a+xt[e-16]|0}let{A:n,B:a,C:i,D:r,E:o,F:s,G:l,H:u}=this;for(let e=0;e<64;e++){const t=u+(at(o,6)^at(o,11)^at(o,25))+((c=o)&s^~c&l)+wt[e]+xt[e]|0,d=(at(n,2)^at(n,13)^at(n,22))+yt(n,a,i)|0;u=l,l=s,s=o,o=r+t|0,r=i,i=a,a=n,n=t+d|0}var c;n=n+this.A|0,a=a+this.B|0,i=i+this.C|0,r=r+this.D|0,o=o+this.E|0,s=s+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(n,a,i,r,o,s,l,u)}roundClean(){xt.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},Ct=class extends St{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}},Tt=ct((()=>new St)),Et=(ct((()=>new Ct)),{});i(Et,{Queue:()=>It,QueueNode:()=>Nt,binarySearch:()=>zt,insertEventIntoAscendingList:()=>Rt,insertEventIntoDescendingList:()=>Mt,normalizeURL:()=>Lt,utf8Decoder:()=>Pt,utf8Encoder:()=>At});var Pt=new TextDecoder("utf-8"),At=new TextEncoder;function Lt(e){-1===e.indexOf("://")&&(e="wss://"+e);let t=new URL(e);return t.pathname=t.pathname.replace(/\/+/g,"/"),t.pathname.endsWith("/")&&(t.pathname=t.pathname.slice(0,-1)),("80"===t.port&&"ws:"===t.protocol||"443"===t.port&&"wss:"===t.protocol)&&(t.port=""),t.searchParams.sort(),t.hash="",t.toString()}function Mt(e,t){const[n,a]=zt(e,(e=>t.id===e.id?0:t.created_at===e.created_at?-1:e.created_at-t.created_at));return a||e.splice(n,0,t),e}function Rt(e,t){const[n,a]=zt(e,(e=>t.id===e.id?0:t.created_at===e.created_at?-1:t.created_at-e.created_at));return a||e.splice(n,0,t),e}function zt(e,t){let n=0,a=e.length-1;for(;n<=a;){const i=Math.floor((n+a)/2),r=t(e[i]);if(0===r)return[i,!0];r<0?a=i-1:n=i+1}return[n,!1]}var Nt=class{value;next=null;prev=null;constructor(e){this.value=e}},It=class{first;last;constructor(){this.first=null,this.last=null}enqueue(e){const t=new Nt(e);return this.last?this.last===this.first?(this.last=t,this.last.prev=this.first,this.first.next=t):(t.prev=this.last,this.last.next=t,this.last=t):(this.first=t,this.last=t),!0}dequeue(){if(!this.first)return null;if(this.first===this.last){const e=this.first;return this.first=null,this.last=null,e.value}const e=this.first;return this.first=e.next,e.value}};function Ot(e){if(!ft(e))throw new Error("can't serialize event with wrong or missing properties");return JSON.stringify([0,e.pubkey,e.created_at,e.kind,e.tags,e.content])}function Dt(e){return rt(Tt(At.encode(Ot(e))))}var qt=new class{generateSecretKey(){return Xe.utils.randomPrivateKey()}getPublicKey(e){return rt(Xe.getPublicKey(e))}finalizeEvent(e,t){const n=e;return n.pubkey=rt(Xe.getPublicKey(t)),n.id=Dt(n),n.sig=rt(Xe.sign(Dt(n),t)),n[ht]=!0,n}verifyEvent(e){if("boolean"==typeof e[ht])return e[ht];const t=Dt(e);if(t!==e.id)return e[ht]=!1,!1;try{const n=Xe.verify(e.sig,t,e.pubkey);return e[ht]=n,n}catch(t){return e[ht]=!1,!1}}},jt=qt.generateSecretKey,Bt=qt.getPublicKey,Ft=qt.finalizeEvent,$t=qt.verifyEvent,Vt={};function Ut(e){return 1e3<=e&&e<1e4||[1,2,4,5,6,7,8,16,40,41,42,43,44].includes(e)}function Ht(e){return[0,3].includes(e)||1e4<=e&&e<2e4}function Wt(e){return 2e4<=e&&e<3e4}function Gt(e){return 3e4<=e&&e<4e4}function Yt(e){return Ut(e)?"regular":Ht(e)?"replaceable":Wt(e)?"ephemeral":Gt(e)?"parameterized":"unknown"}i(Vt,{Application:()=>ia,BadgeAward:()=>rn,BadgeDefinition:()=>Zn,BlockedRelaysList:()=>zn,BookmarkList:()=>Ln,Bookmarksets:()=>Yn,Calendar:()=>da,CalendarEventRSVP:()=>ha,ChannelCreation:()=>sn,ChannelHideMessage:()=>cn,ChannelMessage:()=>un,ChannelMetadata:()=>ln,ChannelMuteUser:()=>dn,ClassifiedListing:()=>sa,ClientAuth:()=>Bn,CommunitiesList:()=>Mn,CommunityDefinition:()=>ma,CommunityPostApproval:()=>bn,Contacts:()=>Jt,CreateOrUpdateProduct:()=>ea,CreateOrUpdateStall:()=>Xn,Curationsets:()=>Kn,Date:()=>ua,DraftClassifiedListing:()=>la,DraftLong:()=>na,Emojisets:()=>aa,EncryptedDirectMessage:()=>Xt,EncryptedDirectMessages:()=>en,EventDeletion:()=>tn,FileMetadata:()=>pn,FileServerPreference:()=>Dn,Followsets:()=>Hn,GenericRepost:()=>on,Genericlists:()=>Wn,HTTPAuth:()=>Un,Handlerinformation:()=>fa,Handlerrecommendation:()=>pa,Highlights:()=>Tn,InterestsList:()=>In,Interestsets:()=>Jn,JobFeedback:()=>kn,JobRequest:()=>yn,JobResult:()=>wn,Label:()=>vn,LightningPubRPC:()=>jn,LiveChatMessage:()=>fn,LiveEvent:()=>ra,LongFormArticle:()=>ta,Metadata:()=>Kt,Mutelist:()=>En,NWCWalletInfo:()=>qn,NWCWalletRequest:()=>Fn,NWCWalletResponse:()=>$n,NostrConnect:()=>Vn,OpenTimestamps:()=>hn,Pinlist:()=>Pn,ProblemTracker:()=>mn,ProfileBadges:()=>Qn,PublicChatsList:()=>Rn,Reaction:()=>an,RecommendRelay:()=>Zt,RelayList:()=>An,Relaysets:()=>Gn,Report:()=>gn,Reporting:()=>_n,Repost:()=>nn,SearchRelaysList:()=>Nn,ShortTextNote:()=>Qt,Time:()=>ca,UserEmojiList:()=>On,UserStatuses:()=>oa,Zap:()=>Cn,ZapGoal:()=>xn,ZapRequest:()=>Sn,classifyKind:()=>Yt,isEphemeralKind:()=>Wt,isParameterizedReplaceableKind:()=>Gt,isRegularKind:()=>Ut,isReplaceableKind:()=>Ht});var Kt=0,Qt=1,Zt=2,Jt=3,Xt=4,en=4,tn=5,nn=6,an=7,rn=8,on=16,sn=40,ln=41,un=42,cn=43,dn=44,hn=1040,pn=1063,fn=1311,mn=1971,gn=1984,_n=1984,vn=1985,bn=4550,yn=5999,wn=6999,kn=7e3,xn=9041,Sn=9734,Cn=9735,Tn=9802,En=1e4,Pn=10001,An=10002,Ln=10003,Mn=10004,Rn=10005,zn=10006,Nn=10007,In=10015,On=10030,Dn=10096,qn=13194,jn=21e3,Bn=22242,Fn=23194,$n=23195,Vn=24133,Un=27235,Hn=3e4,Wn=30001,Gn=30002,Yn=30003,Kn=30004,Qn=30008,Zn=30009,Jn=30015,Xn=30017,ea=30018,ta=30023,na=30024,aa=30030,ia=30078,ra=30311,oa=30315,sa=30402,la=30403,ua=31922,ca=31923,da=31924,ha=31925,pa=31989,fa=31990,ma=34550;function ga(e,t){if(e.ids&&-1===e.ids.indexOf(t.id))return!1;if(e.kinds&&-1===e.kinds.indexOf(t.kind))return!1;if(e.authors&&-1===e.authors.indexOf(t.pubkey))return!1;for(let n in e)if("#"===n[0]){let a=e[`#${n.slice(1)}`];if(a&&!t.tags.find((([e,t])=>e===n.slice(1)&&-1!==a.indexOf(t))))return!1}return!(e.since&&t.created_ate.until)}function _a(e,t){for(let n=0;n{if("kinds"===e||"ids"===e||"authors"===e||"#"===e[0]){t[e]=t[e]||[];for(let a=0;at.limit)&&(t.limit=a.limit),a.until&&(!t.until||a.until>t.until)&&(t.until=a.until),a.since&&(!t.since||a.sinceHt(e)))?e.authors.length*e.kinds.length:1/0,e.authors?.length&&e.kinds?.every((e=>Gt(e)))&&e["#d"]?.length?e.authors.length*e.kinds.length*e["#d"].length:1/0)}var ya={};function wa(e,t){let n=t.length+3,a=e.indexOf(`"${t}":`)+n,i=e.slice(a).indexOf('"')+a+1;return e.slice(i,i+64)}function ka(e,t){let n=t.length,a=e.indexOf(`"${t}":`)+n+3,i=e.slice(a),r=Math.min(i.indexOf(","),i.indexOf("}"));return parseInt(i.slice(0,r),10)}function xa(e){let t=e.slice(0,22).indexOf('"EVENT"');if(-1===t)return null;let n=e.slice(t+7+1).indexOf('"');if(-1===n)return null;let a=t+7+1+n,i=e.slice(a+1,80).indexOf('"');if(-1===i)return null;let r=a+1+i;return e.slice(a+1,r)}function Sa(e,t){return t===wa(e,"id")}function Ca(e,t){return t===wa(e,"pubkey")}function Ta(e,t){return t===ka(e,"kind")}i(ya,{getHex64:()=>wa,getInt:()=>ka,getSubscriptionId:()=>xa,matchEventId:()=>Sa,matchEventKind:()=>Ta,matchEventPubkey:()=>Ca});var Ea={};function Pa(e,t){return{kind:Bn,created_at:Math.floor(Date.now()/1e3),tags:[["relay",e],["challenge",t]],content:""}}async function Aa(){return new Promise((e=>{const t=new MessageChannel,n=()=>{t.port1.removeEventListener("message",n),e()};t.port1.addEventListener("message",n),t.port2.postMessage(0),t.port1.start()}))}i(Ea,{makeAuthEvent:()=>Pa});var La,Ma=e=>(e[ht]=!0,!0),Ra=class{url;_connected=!1;onclose=null;onnotice=e=>console.debug(`NOTICE from ${this.url}: ${e}`);_onauth=null;baseEoseTimeout=4400;connectionTimeout=4400;openSubs=new Map;connectionTimeoutHandle;connectionPromise;openCountRequests=new Map;openEventPublishes=new Map;ws;incomingMessageQueue=new It;queueRunning=!1;challenge;serial=0;verifyEvent;_WebSocket;constructor(e,t){this.url=Lt(e),this.verifyEvent=t.verifyEvent,this._WebSocket=t.websocketImplementation||WebSocket}static async connect(e,t){const n=new Ra(e,t);return await n.connect(),n}closeAllSubscriptions(e){for(let[t,n]of this.openSubs)n.close(e);this.openSubs.clear();for(let[t,n]of this.openEventPublishes)n.reject(new Error(e));this.openEventPublishes.clear();for(let[t,n]of this.openCountRequests)n.reject(new Error(e));this.openCountRequests.clear()}get connected(){return this._connected}async connect(){return this.connectionPromise||(this.challenge=void 0,this.connectionPromise=new Promise(((e,t)=>{this.connectionTimeoutHandle=setTimeout((()=>{t("connection timed out"),this.connectionPromise=void 0,this.onclose?.(),this.closeAllSubscriptions("relay connection timed out")}),this.connectionTimeout);try{this.ws=new this._WebSocket(this.url)}catch(e){return void t(e)}this.ws.onopen=()=>{clearTimeout(this.connectionTimeoutHandle),this._connected=!0,e()},this.ws.onerror=e=>{t(e.message||"websocket error"),this._connected&&(this._connected=!1,this.connectionPromise=void 0,this.onclose?.(),this.closeAllSubscriptions("relay connection errored"))},this.ws.onclose=async()=>{this._connected&&(this._connected=!1,this.connectionPromise=void 0,this.onclose?.(),this.closeAllSubscriptions("relay connection closed"))},this.ws.onmessage=this._onmessage.bind(this)}))),this.connectionPromise}async runQueue(){for(this.queueRunning=!0;!1!==this.handleNext();)await Aa();this.queueRunning=!1}handleNext(){const e=this.incomingMessageQueue.dequeue();if(!e)return!1;const t=xa(e);if(t){const n=this.openSubs.get(t);if(!n)return;const a=wa(e,"id"),i=n.alreadyHaveEvent?.(a);if(n.receivedEvent?.(this,a),i)return}try{let t=JSON.parse(e);switch(t[0]){case"EVENT":{const e=this.openSubs.get(t[1]),n=t[2];return void(this.verifyEvent(n)&&_a(e.filters,n)&&e.onevent(n))}case"COUNT":{const e=t[1],n=t[2],a=this.openCountRequests.get(e);return void(a&&(a.resolve(n.count),this.openCountRequests.delete(e)))}case"EOSE":{const e=this.openSubs.get(t[1]);if(!e)return;return void e.receivedEose()}case"OK":{const e=t[1],n=t[2],a=t[3],i=this.openEventPublishes.get(e);return n?i.resolve(a):i.reject(new Error(a)),void this.openEventPublishes.delete(e)}case"CLOSED":{const e=t[1],n=this.openSubs.get(e);if(!n)return;return n.closed=!0,void n.close(t[2])}case"NOTICE":return void this.onnotice(t[1]);case"AUTH":return this.challenge=t[1],void this._onauth?.(t[1])}}catch(e){return}}async send(e){if(!this.connectionPromise)throw new Error("sending on closed connection");this.connectionPromise.then((()=>{this.ws?.send(e)}))}async auth(e){if(!this.challenge)throw new Error("can't perform auth, no challenge was received");const t=await e(Pa(this.url,this.challenge)),n=new Promise(((e,n)=>{this.openEventPublishes.set(t.id,{resolve:e,reject:n})}));return this.send('["AUTH",'+JSON.stringify(t)+"]"),n}async publish(e){const t=new Promise(((t,n)=>{this.openEventPublishes.set(e.id,{resolve:t,reject:n})}));return this.send('["EVENT",'+JSON.stringify(e)+"]"),t}async count(e,t){this.serial++;const n=t?.id||"count:"+this.serial,a=new Promise(((e,t)=>{this.openCountRequests.set(n,{resolve:e,reject:t})}));return this.send('["COUNT","'+n+'",'+JSON.stringify(e).substring(1)),a}subscribe(e,t){const n=this.prepareSubscription(e,t);return n.fire(),n}prepareSubscription(e,t){this.serial++;const n=t.id||"sub:"+this.serial,a=new za(this,n,e,t);return this.openSubs.set(n,a),a}close(){this.closeAllSubscriptions("relay connection closed by us"),this._connected=!1,this.ws?.close()}_onmessage(e){this.incomingMessageQueue.enqueue(e.data),this.queueRunning||this.runQueue()}},za=class{relay;id;closed=!1;eosed=!1;filters;alreadyHaveEvent;receivedEvent;onevent;oneose;onclose;eoseTimeout;eoseTimeoutHandle;constructor(e,t,n,a){this.relay=e,this.filters=n,this.id=t,this.alreadyHaveEvent=a.alreadyHaveEvent,this.receivedEvent=a.receivedEvent,this.eoseTimeout=a.eoseTimeout||e.baseEoseTimeout,this.oneose=a.oneose,this.onclose=a.onclose,this.onevent=a.onevent||(e=>{console.warn(`onevent() callback not defined for subscription '${this.id}' in relay ${this.relay.url}. event received:`,e)})}fire(){this.relay.send('["REQ","'+this.id+'",'+JSON.stringify(this.filters).substring(1)),this.eoseTimeoutHandle=setTimeout(this.receivedEose.bind(this),this.eoseTimeout)}receivedEose(){this.eosed||(clearTimeout(this.eoseTimeoutHandle),this.eosed=!0,this.oneose?.())}close(e="closed by caller"){!this.closed&&this.relay.connected&&(this.relay.send('["CLOSE",'+JSON.stringify(this.id)+"]"),this.closed=!0),this.relay.openSubs.delete(this.id),this.onclose?.(e)}};try{La=WebSocket}catch{}var Na,Ia=class extends Ra{constructor(e){super(e,{verifyEvent:$t,websocketImplementation:La})}static async connect(e){const t=new Ia(e);return await t.connect(),t}},Oa=class{relays=new Map;seenOn=new Map;trackRelays=!1;verifyEvent;trustedRelayURLs=new Set;_WebSocket;constructor(e){this.verifyEvent=e.verifyEvent,this._WebSocket=e.websocketImplementation}async ensureRelay(e,t){e=Lt(e);let n=this.relays.get(e);return n||(n=new Ra(e,{verifyEvent:this.trustedRelayURLs.has(e)?Ma:this.verifyEvent,websocketImplementation:this._WebSocket}),t?.connectionTimeout&&(n.connectionTimeout=t.connectionTimeout),this.relays.set(e,n)),await n.connect(),n}close(e){e.map(Lt).forEach((e=>{this.relays.get(e)?.close()}))}subscribeMany(e,t,n){return this.subscribeManyMap(Object.fromEntries(e.map((e=>[e,t]))),n)}subscribeManyMap(e,t){this.trackRelays&&(t.receivedEvent=(e,t)=>{let n=this.seenOn.get(t);n||(n=new Set,this.seenOn.set(t,n)),n.add(e)});const n=new Set,a=[],i=Object.keys(e).length,r=[];let o=e=>{r[e]=!0,r.filter((e=>e)).length===i&&(t.oneose?.(),o=()=>{})};const s=[];let l=(e,n)=>{o(e),s[e]=n,s.filter((e=>e)).length===i&&(t.onclose?.(s),l=()=>{})};const u=e=>{if(t.alreadyHaveEvent?.(e))return!0;const a=n.has(e);return n.add(e),a},c=Promise.all(Object.entries(e).map((async(e,n,i)=>{if(i.indexOf(e)!==n)return void l(n,"duplicate url");let r,[s,c]=e;s=Lt(s);try{r=await this.ensureRelay(s,{connectionTimeout:t.maxWait?Math.max(.8*t.maxWait,t.maxWait-1e3):void 0})}catch(e){return void l(n,e?.message||String(e))}let d=r.subscribe(c,{...t,oneose:()=>o(n),onclose:e=>l(n,e),alreadyHaveEvent:u,eoseTimeout:t.maxWait});a.push(d)})));return{async close(){await c,a.forEach((e=>{e.close()}))}}}subscribeManyEose(e,t,n){const a=this.subscribeMany(e,t,{...n,oneose(){a.close()}});return a}async querySync(e,t,n){return new Promise((async a=>{const i=[];this.subscribeManyEose(e,[t],{...n,onevent(e){i.push(e)},onclose(e){a(i)}})}))}async get(e,t,n){t.limit=1;const a=await this.querySync(e,t,n);return a.sort(((e,t)=>t.created_at-e.created_at)),a[0]||null}publish(e,t){return e.map(Lt).map((async(e,n,a)=>{if(a.indexOf(e)!==n)return Promise.reject("duplicate url");return(await this.ensureRelay(e)).publish(t)}))}listConnectionStatus(){const e=new Map;return this.relays.forEach(((t,n)=>e.set(n,t.connected))),e}destroy(){this.relays.forEach((e=>e.close())),this.relays=new Map}};try{Na=WebSocket}catch{}var Da=class extends Oa{constructor(){super({verifyEvent:$t,websocketImplementation:Na})}},qa={};function ja(e){if(!Number.isSafeInteger(e))throw new Error(`Wrong integer: ${e}`)}function Ba(...e){const t=(e,t)=>n=>e(t(n));return{encode:Array.from(e).reverse().reduce(((e,n)=>e?t(e,n.encode):n.encode),void 0),decode:e.reduce(((e,n)=>e?t(e,n.decode):n.decode),void 0)}}function Fa(e){return{encode:t=>{if(!Array.isArray(t)||t.length&&"number"!=typeof t[0])throw new Error("alphabet.encode input should be an array of numbers");return t.map((t=>{if(ja(t),t<0||t>=e.length)throw new Error(`Digit index outside alphabet: ${t} (alphabet: ${e.length})`);return e[t]}))},decode:t=>{if(!Array.isArray(t)||t.length&&"string"!=typeof t[0])throw new Error("alphabet.decode input should be array of strings");return t.map((t=>{if("string"!=typeof t)throw new Error(`alphabet.decode: not string element=${t}`);const n=e.indexOf(t);if(-1===n)throw new Error(`Unknown letter: "${t}". Allowed: ${e}`);return n}))}}}function $a(e=""){if("string"!=typeof e)throw new Error("join separator should be string");return{encode:t=>{if(!Array.isArray(t)||t.length&&"string"!=typeof t[0])throw new Error("join.encode input should be array of strings");for(let e of t)if("string"!=typeof e)throw new Error(`join.encode: non-string input=${e}`);return t.join(e)},decode:t=>{if("string"!=typeof t)throw new Error("join.decode input should be string");return t.split(e)}}}function Va(e,t="="){if(ja(e),"string"!=typeof t)throw new Error("padding chr should be string");return{encode(n){if(!Array.isArray(n)||n.length&&"string"!=typeof n[0])throw new Error("padding.encode input should be array of strings");for(let e of n)if("string"!=typeof e)throw new Error(`padding.encode: non-string input=${e}`);for(;n.length*e%8;)n.push(t);return n},decode(n){if(!Array.isArray(n)||n.length&&"string"!=typeof n[0])throw new Error("padding.encode input should be array of strings");for(let e of n)if("string"!=typeof e)throw new Error(`padding.decode: non-string input=${e}`);let a=n.length;if(a*e%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;a>0&&n[a-1]===t;a--)if(!((a-1)*e%8))throw new Error("Invalid padding: string has too much padding");return n.slice(0,a)}}}function Ua(e){if("function"!=typeof e)throw new Error("normalize fn should be function");return{encode:e=>e,decode:t=>e(t)}}function Ha(e,t,n){if(t<2)throw new Error(`convertRadix: wrong from=${t}, base cannot be less than 2`);if(n<2)throw new Error(`convertRadix: wrong to=${n}, base cannot be less than 2`);if(!Array.isArray(e))throw new Error("convertRadix: data should be array");if(!e.length)return[];let a=0;const i=[],r=Array.from(e);for(r.forEach((e=>{if(ja(e),e<0||e>=t)throw new Error(`Wrong integer: ${e}`)}));;){let e=0,o=!0;for(let i=a;ipi,Bech32MaxSize:()=>hi,decode:()=>fi,encodeBytes:()=>yi,naddrEncode:()=>xi,neventEncode:()=>ki,noteEncode:()=>vi,nprofileEncode:()=>wi,npubEncode:()=>_i,nrelayEncode:()=>Si,nsecEncode:()=>gi});var Wa=(e,t)=>t?Wa(t,e%t):e,Ga=(e,t)=>e+(t-Wa(e,t));function Ya(e,t,n,a){if(!Array.isArray(e))throw new Error("convertRadix2: data should be array");if(t<=0||t>32)throw new Error(`convertRadix2: wrong from=${t}`);if(n<=0||n>32)throw new Error(`convertRadix2: wrong to=${n}`);if(Ga(t,n)>32)throw new Error(`convertRadix2: carry overflow from=${t} to=${n} carryBits=${Ga(t,n)}`);let i=0,r=0;const o=2**n-1,s=[];for(const a of e){if(ja(a),a>=2**t)throw new Error(`convertRadix2: invalid data word=${a} from=${t}`);if(i=i<32)throw new Error(`convertRadix2: carry overflow pos=${r} from=${t}`);for(r+=t;r>=n;r-=n)s.push((i>>r-n&o)>>>0);i&=2**r-1}if(i=i<=t)throw new Error("Excess padding");if(!a&&i)throw new Error(`Non-zero padding: ${i}`);return a&&r>0&&s.push(i>>>0),s}function Ka(e,t=!1){if(ja(e),e<=0||e>32)throw new Error("radix2: bits should be in (0..32]");if(Ga(8,e)>32||Ga(e,8)>32)throw new Error("radix2: carry overflow");return{encode:n=>{if(!(n instanceof Uint8Array))throw new Error("radix2.encode input should be Uint8Array");return Ya(Array.from(n),8,e,!t)},decode:n=>{if(!Array.isArray(n)||n.length&&"number"!=typeof n[0])throw new Error("radix2.decode input should be array of strings");return Uint8Array.from(Ya(n,e,8,t))}}}function Qa(e){if("function"!=typeof e)throw new Error("unsafeWrapper fn should be function");return function(...t){try{return e.apply(null,t)}catch(e){}}}var Za=Ba(Ka(4),Fa("0123456789ABCDEF"),$a("")),Ja=Ba(Ka(5),Fa("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),Va(5),$a("")),Xa=(Ba(Ka(5),Fa("0123456789ABCDEFGHIJKLMNOPQRSTUV"),Va(5),$a("")),Ba(Ka(5),Fa("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),$a(""),Ua((e=>e.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1")))),Ba(Ka(6),Fa("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),Va(6),$a(""))),ei=Ba(Ka(6),Fa("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),Va(6),$a("")),ti=e=>{return Ba((ja(t=58),{encode:e=>{if(!(e instanceof Uint8Array))throw new Error("radix.encode input should be Uint8Array");return Ha(Array.from(e),256,t)},decode:e=>{if(!Array.isArray(e)||e.length&&"number"!=typeof e[0])throw new Error("radix.decode input should be array of strings");return Uint8Array.from(Ha(e,t,256))}}),Fa(e),$a(""));var t},ni=ti("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),ai=(ti("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),ti("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"),[0,2,3,5,6,7,9,10,11]),ii={encode(e){let t="";for(let n=0;n>25;let n=(33554431&e)<<5;for(let e=0;e>e&1)&&(n^=oi[e]);return n}function li(e,t,n=1){const a=e.length;let i=1;for(let t=0;t126)throw new Error(`Invalid prefix (${e})`);i=si(i)^n>>5}i=si(i);for(let t=0;tn)throw new TypeError(`Wrong string length: ${e.length} (${e}). Expected (8..${n})`);const a=e.toLowerCase();if(e!==a&&e!==e.toUpperCase())throw new Error("String must be lowercase or uppercase");const i=(e=a).lastIndexOf("1");if(0===i||-1===i)throw new Error('Letter "1" must be present between prefix and data only');const r=e.slice(0,i),o=e.slice(i+1);if(o.length<6)throw new Error("Data must be at least 6 characters long");const s=ri.decode(o).slice(0,-6),l=li(r,s,t);if(!o.endsWith(l))throw new Error(`Invalid checksum in ${e}: expected "${l}"`);return{prefix:r,words:s}}return{encode:function(e,n,a=90){if("string"!=typeof e)throw new Error("bech32.encode prefix should be string, not "+typeof e);if(!Array.isArray(n)||n.length&&"number"!=typeof n[0])throw new Error("bech32.encode words should be array of numbers, not "+typeof n);const i=e.length+7+n.length;if(!1!==a&&i>a)throw new TypeError(`Length ${i} exceeds limit ${a}`);return`${e=e.toLowerCase()}1${ri.encode(n)}${li(e,n,t)}`},decode:o,decodeToBytes:function(e){const{prefix:t,words:n}=o(e,!1);return{prefix:t,words:n,bytes:a(n)}},decodeUnsafe:Qa(o),fromWords:a,fromWordsUnsafe:r,toWords:i}}var ci=ui("bech32"),di=(ui("bech32m"),{utf8:{encode:e=>(new TextDecoder).decode(e),decode:e=>(new TextEncoder).encode(e)},hex:Ba(Ka(4),Fa("0123456789abcdef"),$a(""),Ua((e=>{if("string"!=typeof e||e.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof e} with length ${e.length}`);return e.toLowerCase()}))),base16:Za,base32:Ja,base64:Xa,base64url:ei,base58:ni,base58xmr:ii}),hi=(Object.keys(di).join(", "),5e3),pi=/[\x21-\x7E]{1,83}1[023456789acdefghjklmnpqrstuvwxyz]{6,}/;function fi(e){let{prefix:t,words:n}=ci.decode(e,hi),a=new Uint8Array(ci.fromWords(n));switch(t){case"nprofile":{let e=mi(a);if(!e[0]?.[0])throw new Error("missing TLV 0 for nprofile");if(32!==e[0][0].length)throw new Error("TLV 0 should be 32 bytes");return{type:"nprofile",data:{pubkey:rt(e[0][0]),relays:e[1]?e[1].map((e=>Pt.decode(e))):[]}}}case"nevent":{let e=mi(a);if(!e[0]?.[0])throw new Error("missing TLV 0 for nevent");if(32!==e[0][0].length)throw new Error("TLV 0 should be 32 bytes");if(e[2]&&32!==e[2][0].length)throw new Error("TLV 2 should be 32 bytes");if(e[3]&&4!==e[3][0].length)throw new Error("TLV 3 should be 4 bytes");return{type:"nevent",data:{id:rt(e[0][0]),relays:e[1]?e[1].map((e=>Pt.decode(e))):[],author:e[2]?.[0]?rt(e[2][0]):void 0,kind:e[3]?.[0]?parseInt(rt(e[3][0]),16):void 0}}}case"naddr":{let e=mi(a);if(!e[0]?.[0])throw new Error("missing TLV 0 for naddr");if(!e[2]?.[0])throw new Error("missing TLV 2 for naddr");if(32!==e[2][0].length)throw new Error("TLV 2 should be 32 bytes");if(!e[3]?.[0])throw new Error("missing TLV 3 for naddr");if(4!==e[3][0].length)throw new Error("TLV 3 should be 4 bytes");return{type:"naddr",data:{identifier:Pt.decode(e[0][0]),pubkey:rt(e[2][0]),kind:parseInt(rt(e[3][0]),16),relays:e[1]?e[1].map((e=>Pt.decode(e))):[]}}}case"nrelay":{let e=mi(a);if(!e[0]?.[0])throw new Error("missing TLV 0 for nrelay");return{type:"nrelay",data:Pt.decode(e[0][0])}}case"nsec":return{type:t,data:a};case"npub":case"note":return{type:t,data:rt(a)};default:throw new Error(`unknown prefix ${t}`)}}function mi(e){let t={},n=e;for(;n.length>0;){let e=n[0],a=n[1],i=n.slice(2,2+a);if(n=n.slice(2+a),i.lengthAt.encode(e)))}))}function ki(e){let t;return void 0!==e.kind&&(t=function(e){const t=new Uint8Array(4);return t[0]=e>>24&255,t[1]=e>>16&255,t[2]=e>>8&255,t[3]=255&e,t}(e.kind)),bi("nevent",Ci({0:[ot(e.id)],1:(e.relays||[]).map((e=>At.encode(e))),2:e.author?[ot(e.author)]:[],3:t?[new Uint8Array(t)]:[]}))}function xi(e){let t=new ArrayBuffer(4);return new DataView(t).setUint32(0,e.kind,!1),bi("naddr",Ci({0:[At.encode(e.identifier)],1:(e.relays||[]).map((e=>At.encode(e))),2:[ot(e.pubkey)],3:[new Uint8Array(t)]}))}function Si(e){return bi("nrelay",Ci({0:[At.encode(e)]}))}function Ci(e){let t=[];return Object.entries(e).reverse().forEach((([e,n])=>{n.forEach((n=>{let a=new Uint8Array(n.length+2);a.set([parseInt(e)],0),a.set([n.length],1),a.set(n,2),t.push(a)}))})),lt(...t)}var Ti=/\bnostr:((note|npub|naddr|nevent|nprofile)1\w+)\b|#\[(\d+)\]/g;function Ei(e){let t=[];for(let n of e.content.matchAll(Ti))if(n[2])try{let{type:e,data:a}=fi(n[1]);switch(e){case"npub":t.push({text:n[0],profile:{pubkey:a,relays:[]}});break;case"nprofile":t.push({text:n[0],profile:a});break;case"note":t.push({text:n[0],event:{id:a,relays:[]}});break;case"nevent":t.push({text:n[0],event:a});break;case"naddr":t.push({text:n[0],address:a})}}catch(e){}else if(n[3]){let a=parseInt(n[3],10),i=e.tags[a];if(!i)continue;switch(i[0]){case"p":t.push({text:n[0],profile:{pubkey:i[1],relays:i[2]?[i[2]]:[]}});break;case"e":t.push({text:n[0],event:{id:i[1],relays:i[2]?[i[2]]:[]}});break;case"a":try{let[e,a,r]=i[1].split(":");t.push({text:n[0],address:{identifier:r,pubkey:a,kind:parseInt(e,10),relays:i[2]?[i[2]]:[]}})}catch(e){}}}return t}var Pi={};function Ai(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function Li(e){if("boolean"!=typeof e)throw new Error(`boolean expected, not ${e}`)}function Mi(e){return e instanceof Uint8Array||null!=e&&"object"==typeof e&&"Uint8Array"===e.constructor.name}function Ri(e,...t){if(!Mi(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function zi(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Ni(e,t){Ri(e);const n=t.outputLen;if(e.lengthEr,encrypt:()=>Tr});var Ii=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),Oi=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),Di=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);if(!(68===new Uint8Array(new Uint32Array([287454020]).buffer)[0]))throw new Error("Non little-endian hardware is not supported");function qi(e){if("string"!=typeof e)throw new Error("string expected, got "+typeof e);return new Uint8Array((new TextEncoder).encode(e))}function ji(e){if("string"==typeof e)e=qi(e);else{if(!Mi(e))throw new Error("Uint8Array expected, got "+typeof e);e=e.slice()}return e}function Bi(e,t){if(e.length!==t.length)return!1;let n=0;for(let a=0;a(Object.assign(t,e),t);function $i(e,t,n,a){if("function"==typeof e.setBigUint64)return e.setBigUint64(t,n,a);const i=BigInt(32),r=BigInt(4294967295),o=Number(n>>i&r),s=Number(n&r),l=a?4:0,u=a?0:4;e.setUint32(t+l,o,a),e.setUint32(t+u,s,a)}var Vi=16,Ui=new Uint8Array(16),Hi=Oi(Ui),Wi=e=>(e>>>0&255)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255;var Gi=class{constructor(e,t){this.blockLen=Vi,this.outputLen=Vi,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,Ri(e=ji(e),16);const n=Di(e);let a=n.getUint32(0,!1),i=n.getUint32(4,!1),r=n.getUint32(8,!1),o=n.getUint32(12,!1);const s=[];for(let e=0;e<128;e++)s.push({s0:Wi(a),s1:Wi(i),s2:Wi(r),s3:Wi(o)}),({s0:a,s1:i,s2:r,s3:o}={s3:(c=r)<<31|(d=o)>>>1,s2:(u=i)<<31|c>>>1,s1:(l=a)<<31|u>>>1,s0:l>>>1^225<<24&-(1&d)});var l,u,c,d;const h=(p=t||1024)>65536?8:p>1024?4:2;var p;if(![1,2,4,8].includes(h))throw new Error(`ghash: wrong window size=${h}, should be 2, 4 or 8`);this.W=h;const f=128/h,m=this.windowSize=2**h,g=[];for(let e=0;e>>h-o-1&1))continue;const{s0:l,s1:u,s2:c,s3:d}=s[h*e+o];n^=l,a^=u,i^=c,r^=d}g.push({s0:n,s1:a,s2:i,s3:r})}this.t=g}_updateBlock(e,t,n,a){e^=this.s0,t^=this.s1,n^=this.s2,a^=this.s3;const{W:i,t:r,windowSize:o}=this;let s=0,l=0,u=0,c=0;const d=(1<>>8*e&255;for(let e=8/i-1;e>=0;e--){const n=t>>>i*e&d,{s0:a,s1:p,s2:f,s3:m}=r[h*o+n];s^=a,l^=p,u^=f,c^=m,h+=1}}this.s0=s,this.s1=l,this.s2=u,this.s3=c}update(e){e=ji(e),zi(this);const t=Oi(e),n=Math.floor(e.length/Vi),a=e.length%Vi;for(let e=0;e>>1|n,n=(1&a)<<7}return e[0]^=225&-t,e}((e=ji(e)).slice());super(n,t),n.fill(0)}update(e){e=ji(e),zi(this);const t=Oi(e),n=e.length%Vi,a=Math.floor(e.length/Vi);for(let e=0;ee(n,t.length).update(ji(t)).digest(),n=e(new Uint8Array(16),0);return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=(t,n)=>e(t,n),t}var Qi=Ki(((e,t)=>new Gi(e,t))),Zi=Ki(((e,t)=>new Yi(e,t))),Ji=16,Xi=new Uint8Array(Ji),er=283;function tr(e){return e<<1^er&-(e>>7)}function nr(e,t){let n=0;for(;t>0;t>>=1)n^=e&-(1&t),e=tr(e);return n}var ar=(()=>{let e=new Uint8Array(256);for(let t=0,n=1;t<256;t++,n^=tr(n))e[t]=n;const t=new Uint8Array(256);t[0]=99;for(let n=0;n<255;n++){let a=e[255-n];a|=a<<8,t[e[n]]=255&(a^a>>4^a>>5^a>>6^a>>7^99)}return t})(),ir=ar.map(((e,t)=>ar.indexOf(t))),rr=e=>e<<24|e>>>8,or=e=>e<<8|e>>>24;function sr(e,t){if(256!==e.length)throw new Error("Wrong sbox length");const n=new Uint32Array(256).map(((n,a)=>t(e[a]))),a=n.map(or),i=a.map(or),r=i.map(or),o=new Uint32Array(65536),s=new Uint32Array(65536),l=new Uint16Array(65536);for(let t=0;t<256;t++)for(let u=0;u<256;u++){const c=256*t+u;o[c]=n[t]^a[u],s[c]=i[t]^r[u],l[c]=e[t]<<8|e[u]}return{sbox:e,sbox2:l,T0:n,T1:a,T2:i,T3:r,T01:o,T23:s}}var lr=sr(ar,(e=>nr(e,3)<<24|e<<16|e<<8|nr(e,2))),ur=sr(ir,(e=>nr(e,11)<<24|nr(e,13)<<16|nr(e,9)<<8|nr(e,14))),cr=(()=>{const e=new Uint8Array(16);for(let t=0,n=1;t<16;t++,n=tr(n))e[t]=n;return e})();function dr(e){Ri(e);const t=e.length;if(![16,24,32].includes(t))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${t}`);const{sbox2:n}=lr,a=Oi(e),i=a.length,r=e=>fr(n,e,e,e,e),o=new Uint32Array(t+28);o.set(a);for(let e=i;e6&&e%i==4&&(t=r(t)),o[e]=o[e-i]^t}return o}function hr(e){const t=dr(e),n=t.slice(),a=t.length,{sbox2:i}=lr,{T0:r,T1:o,T2:s,T3:l}=ur;for(let e=0;e>>8&255]^s[a>>>16&255]^l[a>>>24]}return n}function pr(e,t,n,a,i,r){return e[n<<8&65280|a>>>8&255]^t[i>>>8&65280|r>>>24&255]}function fr(e,t,n,a,i){return e[255&t|65280&n]|e[a>>>16&255|i>>>16&65280]<<16}function mr(e,t,n,a,i){const{sbox2:r,T01:o,T23:s}=lr;let l=0;t^=e[l++],n^=e[l++],a^=e[l++],i^=e[l++];const u=e.length/4-2;for(let r=0;r>>0,s.setUint32(c,h,t),({s0:p,s1:f,s2:m,s3:g}=mr(e,o[0],o[1],o[2],o[3]));const _=Ji*Math.floor(l.length/4);if(_=0;e--)n=n+(255&r[e])|0,r[e]=255&n,n>>>=8;({s0:s,s1:l,s2:u,s3:c}=mr(e,o[0],o[1],o[2],o[3]))}const p=Ji*Math.floor(d.length/4);if(pn(e,t),decrypt:(e,t)=>n(e,t)}}));function br(e){if(Ri(e),e.length%Ji!=0)throw new Error("aes/(cbc-ecb).decrypt ciphertext should consist of blocks with size 16")}function yr(e,t,n){let a=e.length;const i=a%Ji;if(!t&&0!==i)throw new Error("aec/(cbc-ecb): unpadded plaintext with disabled padding");const r=Oi(e);if(t){let e=Ji-i;e||(e=Ji),a+=e}const o=_r(a,n);return{b:r,o:Oi(o),out:o}}function wr(e,t){if(!t)return e;const n=e.length;if(!n)throw new Error("aes/pcks5: empty ciphertext not allowed");const a=e[n-1];if(a<=0||a>16)throw new Error(`aes/pcks5: wrong padding byte: ${a}`);const i=e.subarray(0,-a);for(let t=0;t{Ri(t);const{b:i,o:r,out:o}=yr(t,n,a),s=dr(e);let l=0;for(;l+4<=i.length;){const{s0:e,s1:t,s2:n,s3:a}=mr(s,i[l+0],i[l+1],i[l+2],i[l+3]);r[l++]=e,r[l++]=t,r[l++]=n,r[l++]=a}if(n){const e=kr(t.subarray(4*l)),{s0:n,s1:a,s2:i,s3:o}=mr(s,e[0],e[1],e[2],e[3]);r[l++]=n,r[l++]=a,r[l++]=i,r[l++]=o}return s.fill(0),o},decrypt:(t,a)=>{br(t);const i=hr(e),r=_r(t.length,a),o=Oi(t),s=Oi(r);for(let e=0;e+4<=o.length;){const{s0:t,s1:n,s2:a,s3:r}=gr(i,o[e+0],o[e+1],o[e+2],o[e+3]);s[e++]=t,s[e++]=n,s[e++]=a,s[e++]=r}return i.fill(0),wr(r,n)}}}));var xr=Fi({blockSize:16,nonceLength:16},(function(e,t,n={}){Ri(e),Ri(t,16);const a=!n.disablePadding;return{encrypt:(n,i)=>{const r=dr(e),{b:o,o:s,out:l}=yr(n,a,i),u=Oi(t);let c=u[0],d=u[1],h=u[2],p=u[3],f=0;for(;f+4<=o.length;)c^=o[f+0],d^=o[f+1],h^=o[f+2],p^=o[f+3],({s0:c,s1:d,s2:h,s3:p}=mr(r,c,d,h,p)),s[f++]=c,s[f++]=d,s[f++]=h,s[f++]=p;if(a){const e=kr(n.subarray(4*f));c^=e[0],d^=e[1],h^=e[2],p^=e[3],({s0:c,s1:d,s2:h,s3:p}=mr(r,c,d,h,p)),s[f++]=c,s[f++]=d,s[f++]=h,s[f++]=p}return r.fill(0),l},decrypt:(n,i)=>{br(n);const r=hr(e),o=Oi(t),s=_r(n.length,i),l=Oi(n),u=Oi(s);let c=o[0],d=o[1],h=o[2],p=o[3];for(let e=0;e+4<=l.length;){const t=c,n=d,a=h,i=p;c=l[e+0],d=l[e+1],h=l[e+2],p=l[e+3];const{s0:o,s1:s,s2:f,s3:m}=gr(r,c,d,h,p);u[e++]=o^t,u[e++]=s^n,u[e++]=f^a,u[e++]=m^i}return r.fill(0),wr(s,a)}}}));function Sr(e,t,n,a,i){const r=e.create(n,a.length+(i?.length||0));i&&r.update(i),r.update(a);const o=new Uint8Array(16),s=Di(o);return i&&$i(s,0,BigInt(8*i.length),t),$i(s,8,BigInt(8*a.length),t),r.update(o),r.digest()}Fi({blockSize:16,nonceLength:12,tagLength:16},(function(e,t,n){if(Ri(t),0===t.length)throw new Error("aes/gcm: empty nonce");const a=16;function i(e,t,a){const i=Sr(Qi,!1,e,a,n);for(let e=0;e{Ri(e);const{xk:t,authKey:n,counter:o,tagMask:s}=r(),l=new Uint8Array(e.length+a);vr(t,!1,o,e,l);const u=i(n,s,l.subarray(0,l.length-a));return l.set(u,e.length),t.fill(0),l},decrypt:e=>{if(Ri(e),e.lengtha=>{if(!Number.isSafeInteger(a)||t>a||a>n)throw new Error(`${e}: invalid value=${a}, must be [${t}..${n}]`)};Fi({blockSize:16,nonceLength:12,tagLength:16},(function(e,t,n){const a=Cr("AAD",0,2**36),i=Cr("plaintext",0,2**36),r=Cr("nonce",12,12),o=Cr("ciphertext",16,2**36+16);function s(){const n=e.length;if(16!==n&&24!==n&&32!==n)throw new Error(`key length must be 16, 24 or 32 bytes, got: ${n} bytes`);const a=dr(e),i=new Uint8Array(n),r=new Uint8Array(16),o=Oi(t);let s=0,l=o[0],u=o[1],c=o[2],d=0;for(const e of[r,i].map(Oi)){const t=Oi(e);for(let e=0;e{Ri(e),i(e.length);const{encKey:t,authKey:n}=s(),a=l(t,n,e),r=new Uint8Array(e.length+16);return r.set(a,e.length),r.set(u(t,a,e)),t.fill(0),n.fill(0),r},decrypt:e=>{Ri(e),o(e.length);const t=e.subarray(-16),{encKey:n,authKey:a}=s(),i=u(n,t,e.subarray(0,-16)),r=l(n,a,i);if(n.fill(0),a.fill(0),!Bi(t,r))throw new Error("invalid polyval tag");return i}}}));async function Tr(e,t,n){const a=e instanceof Uint8Array?rt(e):e,i=Pr(Ie.getSharedSecret(a,"02"+t));let r=Uint8Array.from(dt(16)),o=At.encode(n),s=xr(i,r).encrypt(o);return`${Xa.encode(new Uint8Array(s))}?iv=${Xa.encode(new Uint8Array(r.buffer))}`}async function Er(e,t,n){const a=e instanceof Uint8Array?rt(e):e;let[i,r]=n.split("?iv="),o=Pr(Ie.getSharedSecret(a,"02"+t)),s=Xa.decode(r),l=Xa.decode(i),u=xr(o,s).decrypt(l);return Pt.decode(u)}function Pr(e){return e.slice(1,33)}var Ar={};i(Ar,{NIP05_REGEX:()=>Mr,isValid:()=>Ir,queryProfile:()=>Nr,searchDomain:()=>zr,useFetchImplementation:()=>Rr});var Lr,Mr=/^(?:([\w.+-]+)@)?([\w_-]+(\.[\w_-]+)+)$/;try{Lr=fetch}catch{}function Rr(e){Lr=e}async function zr(e,t=""){try{const n=`https://${e}/.well-known/nostr.json?name=${t}`,a=await Lr(n,{redirect:"error"});return(await a.json()).names}catch(e){return{}}}async function Nr(e){const t=e.match(Mr);if(!t)return null;const[n,a="_",i]=t;try{const e=`https://${i}/.well-known/nostr.json?name=${a}`,t=await(await Lr(e,{redirect:"error"})).json();let n=t.names[a];return n?{pubkey:n,relays:t.relays?.[n]}:null}catch(e){return null}}async function Ir(e,t){let n=await Nr(t);return!!n&&n.pubkey===e}var Or={};function Dr(e){const t={reply:void 0,root:void 0,mentions:[],profiles:[]},n=[];for(const a of e.tags)"e"===a[0]&&a[1]&&n.push(a),"p"===a[0]&&a[1]&&t.profiles.push({pubkey:a[1],relays:a[2]?[a[2]]:[]});for(let e=0;eDr});var qr={};i(qr,{fetchRelayInformation:()=>Br,useFetchImplementation:()=>jr});try{fetch}catch{}function jr(e){e}async function Br(e){return await(await fetch(e.replace("ws://","http://").replace("wss://","https://"),{headers:{Accept:"application/nostr+json"}})).json()}var Fr={};function $r(e){let t=0;for(let n=0;n=t)break}return a}i(Fr,{getPow:()=>$r,minePow:()=>Vr});var Ur={};function Hr(e,t,n,a){return Ft({kind:nn,tags:[...e.tags??[],["e",t.id,n],["p",t.pubkey]],content:""===e.content?"":JSON.stringify(t),created_at:e.created_at},a)}function Wr(e){if(e.kind!==nn)return;let t,n;for(let a=e.tags.length-1;a>=0&&(void 0===t||void 0===n);a--){const i=e.tags[a];i.length>=2&&("e"===i[0]&&void 0===t?t=i:"p"===i[0]&&void 0===n&&(n=i))}return void 0!==t?{id:t[1],relays:[t[2],n?.[2]].filter((e=>"string"==typeof e)),author:n?.[1]}:void 0}function Gr(e,{skipVerification:t}={}){const n=Wr(e);if(void 0===n||""===e.content)return;let a;try{a=JSON.parse(e.content)}catch(e){return}return a.id===n.id&&(t||$t(a))?a:void 0}i(Ur,{finishRepostEvent:()=>Hr,getRepostedEvent:()=>Gr,getRepostedEventPointer:()=>Wr});var Yr={};i(Yr,{NOSTR_URI_REGEX:()=>Kr,parse:()=>Zr,test:()=>Qr});var Kr=new RegExp(`nostr:(${pi.source})`);function Qr(e){return"string"==typeof e&&new RegExp(`^${Kr.source}$`).test(e)}function Zr(e){const t=e.match(new RegExp(`^${Kr.source}$`));if(!t)throw new Error(`Invalid Nostr URI: ${e}`);return{uri:t[0],value:t[1],decoded:fi(t[1])}}var Jr={};function Xr(e,t,n){const a=t.tags.filter((e=>e.length>=2&&("e"===e[0]||"p"===e[0])));return Ft({...e,kind:an,tags:[...e.tags??[],...a,["e",t.id],["p",t.pubkey]],content:e.content??"+"},n)}function eo(e){if(e.kind!==an)return;let t,n;for(let a=e.tags.length-1;a>=0&&(void 0===t||void 0===n);a--){const i=e.tags[a];i.length>=2&&("e"===i[0]&&void 0===t?t=i:"p"===i[0]&&void 0===n&&(n=i))}return void 0!==t&&void 0!==n?{id:t[1],relays:[t[2],n[2]].filter((e=>void 0!==e)),author:n[1]}:void 0}i(Jr,{finishReactionEvent:()=>Xr,getReactedEventPointer:()=>eo});var to={};i(to,{matchAll:()=>ao,regex:()=>no,replaceAll:()=>io});var no=()=>new RegExp(`\\b${Kr.source}\\b`,"g");function*ao(e){const t=e.matchAll(no());for(const e of t)try{const[t,n]=e;yield{uri:t,value:n,decoded:fi(n),start:e.index,end:e.index+t.length}}catch(e){}}function io(e,t){return e.replaceAll(no(),((e,n)=>t({uri:e,value:n,decoded:fi(n)})))}var ro={};i(ro,{channelCreateEvent:()=>oo,channelHideMessageEvent:()=>uo,channelMessageEvent:()=>lo,channelMetadataEvent:()=>so,channelMuteUserEvent:()=>co});var oo=(e,t)=>{let n;if("object"==typeof e.content)n=JSON.stringify(e.content);else{if("string"!=typeof e.content)return;n=e.content}return Ft({kind:sn,tags:[...e.tags??[]],content:n,created_at:e.created_at},t)},so=(e,t)=>{let n;if("object"==typeof e.content)n=JSON.stringify(e.content);else{if("string"!=typeof e.content)return;n=e.content}return Ft({kind:ln,tags:[["e",e.channel_create_event_id],...e.tags??[]],content:n,created_at:e.created_at},t)},lo=(e,t)=>{const n=[["e",e.channel_create_event_id,e.relay_url,"root"]];return e.reply_to_channel_message_event_id&&n.push(["e",e.reply_to_channel_message_event_id,e.relay_url,"reply"]),Ft({kind:un,tags:[...n,...e.tags??[]],content:e.content,created_at:e.created_at},t)},uo=(e,t)=>{let n;if("object"==typeof e.content)n=JSON.stringify(e.content);else{if("string"!=typeof e.content)return;n=e.content}return Ft({kind:cn,tags:[["e",e.channel_message_event_id],...e.tags??[]],content:n,created_at:e.created_at},t)},co=(e,t)=>{let n;if("object"==typeof e.content)n=JSON.stringify(e.content);else{if("string"!=typeof e.content)return;n=e.content}return Ft({kind:dn,tags:[["p",e.pubkey_to_mute],...e.tags??[]],content:n,created_at:e.created_at},t)},ho={};i(ho,{EMOJI_SHORTCODE_REGEX:()=>po,matchAll:()=>mo,regex:()=>fo,replaceAll:()=>go});var po=/:(\w+):/,fo=()=>new RegExp(`\\B${po.source}\\B`,"g");function*mo(e){const t=e.matchAll(fo());for(const e of t)try{const[t,n]=e;yield{shortcode:t,name:n,start:e.index,end:e.index+t.length}}catch(e){}}function go(e,t){return e.replaceAll(fo(),((e,n)=>t({shortcode:e,name:n})))}var _o,vo={};i(vo,{useFetchImplementation:()=>bo,validateGithub:()=>yo});try{_o=fetch}catch{}function bo(e){_o=e}async function yo(e,t,n){try{return await(await _o(`https://gist.github.com/${t}/${n}/raw`)).text()===`Verifying that I control the following Nostr public key: ${e}`}catch(e){return!1}}var wo={};i(wo,{decrypt:()=>ns,encrypt:()=>ts,getConversationKey:()=>Qo,v2:()=>as});var ko=(e,t)=>255&e[t++]|(255&e[t++])<<8,xo=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,Ri(e=ji(e),32);const t=ko(e,0),n=ko(e,2),a=ko(e,4),i=ko(e,6),r=ko(e,8),o=ko(e,10),s=ko(e,12),l=ko(e,14);this.r[0]=8191&t,this.r[1]=8191&(t>>>13|n<<3),this.r[2]=7939&(n>>>10|a<<6),this.r[3]=8191&(a>>>7|i<<9),this.r[4]=255&(i>>>4|r<<12),this.r[5]=r>>>1&8190,this.r[6]=8191&(r>>>14|o<<2),this.r[7]=8065&(o>>>11|s<<5),this.r[8]=8191&(s>>>8|l<<8),this.r[9]=l>>>5&127;for(let t=0;t<8;t++)this.pad[t]=ko(e,16+2*t)}process(e,t,n=!1){const a=n?0:2048,{h:i,r:r}=this,o=r[0],s=r[1],l=r[2],u=r[3],c=r[4],d=r[5],h=r[6],p=r[7],f=r[8],m=r[9],g=ko(e,t+0),_=ko(e,t+2),v=ko(e,t+4),b=ko(e,t+6),y=ko(e,t+8),w=ko(e,t+10),k=ko(e,t+12),x=ko(e,t+14);let S=i[0]+(8191&g),C=i[1]+(8191&(g>>>13|_<<3)),T=i[2]+(8191&(_>>>10|v<<6)),E=i[3]+(8191&(v>>>7|b<<9)),P=i[4]+(8191&(b>>>4|y<<12)),A=i[5]+(y>>>1&8191),L=i[6]+(8191&(y>>>14|w<<2)),M=i[7]+(8191&(w>>>11|k<<5)),R=i[8]+(8191&(k>>>8|x<<8)),z=i[9]+(x>>>5|a),N=0,I=N+S*o+C*(5*m)+T*(5*f)+E*(5*p)+P*(5*h);N=I>>>13,I&=8191,I+=A*(5*d)+L*(5*c)+M*(5*u)+R*(5*l)+z*(5*s),N+=I>>>13,I&=8191;let O=N+S*s+C*o+T*(5*m)+E*(5*f)+P*(5*p);N=O>>>13,O&=8191,O+=A*(5*h)+L*(5*d)+M*(5*c)+R*(5*u)+z*(5*l),N+=O>>>13,O&=8191;let D=N+S*l+C*s+T*o+E*(5*m)+P*(5*f);N=D>>>13,D&=8191,D+=A*(5*p)+L*(5*h)+M*(5*d)+R*(5*c)+z*(5*u),N+=D>>>13,D&=8191;let q=N+S*u+C*l+T*s+E*o+P*(5*m);N=q>>>13,q&=8191,q+=A*(5*f)+L*(5*p)+M*(5*h)+R*(5*d)+z*(5*c),N+=q>>>13,q&=8191;let j=N+S*c+C*u+T*l+E*s+P*o;N=j>>>13,j&=8191,j+=A*(5*m)+L*(5*f)+M*(5*p)+R*(5*h)+z*(5*d),N+=j>>>13,j&=8191;let B=N+S*d+C*c+T*u+E*l+P*s;N=B>>>13,B&=8191,B+=A*o+L*(5*m)+M*(5*f)+R*(5*p)+z*(5*h),N+=B>>>13,B&=8191;let F=N+S*h+C*d+T*c+E*u+P*l;N=F>>>13,F&=8191,F+=A*s+L*o+M*(5*m)+R*(5*f)+z*(5*p),N+=F>>>13,F&=8191;let $=N+S*p+C*h+T*d+E*c+P*u;N=$>>>13,$&=8191,$+=A*l+L*s+M*o+R*(5*m)+z*(5*f),N+=$>>>13,$&=8191;let V=N+S*f+C*p+T*h+E*d+P*c;N=V>>>13,V&=8191,V+=A*u+L*l+M*s+R*o+z*(5*m),N+=V>>>13,V&=8191;let U=N+S*m+C*f+T*p+E*h+P*d;N=U>>>13,U&=8191,U+=A*c+L*u+M*l+R*s+z*o,N+=U>>>13,U&=8191,N=(N<<2)+N|0,N=N+I|0,I=8191&N,N>>>=13,O+=N,i[0]=I,i[1]=O,i[2]=D,i[3]=q,i[4]=j,i[5]=B,i[6]=F,i[7]=$,i[8]=V,i[9]=U}finalize(){const{h:e,pad:t}=this,n=new Uint16Array(10);let a=e[1]>>>13;e[1]&=8191;for(let t=2;t<10;t++)e[t]+=a,a=e[t]>>>13,e[t]&=8191;e[0]+=5*a,a=e[0]>>>13,e[0]&=8191,e[1]+=a,a=e[1]>>>13,e[1]&=8191,e[2]+=a,n[0]=e[0]+5,a=n[0]>>>13,n[0]&=8191;for(let t=1;t<10;t++)n[t]=e[t]+a,a=n[t]>>>13,n[t]&=8191;n[9]-=8192;let i=(1^a)-1;for(let e=0;e<10;e++)n[e]&=i;i=~i;for(let t=0;t<10;t++)e[t]=e[t]&i|n[t];e[0]=65535&(e[0]|e[1]<<13),e[1]=65535&(e[1]>>>3|e[2]<<10),e[2]=65535&(e[2]>>>6|e[3]<<7),e[3]=65535&(e[3]>>>9|e[4]<<4),e[4]=65535&(e[4]>>>12|e[5]<<1|e[6]<<14),e[5]=65535&(e[6]>>>2|e[7]<<11),e[6]=65535&(e[7]>>>5|e[8]<<8),e[7]=65535&(e[8]>>>8|e[9]<<5);let r=e[0]+t[0];e[0]=65535&r;for(let n=1;n<8;n++)r=(e[n]+t[n]|0)+(r>>>16)|0,e[n]=65535&r}update(e){zi(this);const{buffer:t,blockLen:n}=this,a=(e=ji(e)).length;for(let i=0;i>>0,e[i++]=n[t]>>>8;return e}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}};var So=function(e){const t=(t,n)=>e(n).update(ji(t)).digest(),n=e(new Uint8Array(32));return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}((e=>new xo(e))),Co=qi("expand 16-byte k"),To=qi("expand 32-byte k"),Eo=Oi(Co),Po=Oi(To);function Ao(e,t){return e<>>32-t}function Lo(e){return e.byteOffset%4==0}var Mo=64,Ro=16,zo=2**32-1,No=new Uint32Array;function Io(e,t){const{allowShortKeys:n,extendNonceFn:a,counterLength:i,counterRight:r,rounds:o}=function(e,t){if(null==t||"object"!=typeof t)throw new Error("options must be defined");return Object.assign(e,t)}({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if("function"!=typeof e)throw new Error("core must be a function");return Ai(i),Ai(o),Li(r),Li(n),(t,s,l,u,c=0)=>{Ri(t),Ri(s),Ri(l);const d=l.length;if(u||(u=new Uint8Array(d)),Ri(u),Ai(c),c<0||c>=zo)throw new Error("arx: counter overflow");if(u.length=zo)throw new Error("arx: counter overflow");const m=Math.min(Mo,l-f);if(d&&m===Mo){const e=f/4;if(f%4!=0)throw new Error("arx: invalid block position");for(let t,n=0;n0;)h.pop().fill(0);return u}}function Oo(e,t,n,a,i,r=20){let o=e[0],s=e[1],l=e[2],u=e[3],c=t[0],d=t[1],h=t[2],p=t[3],f=t[4],m=t[5],g=t[6],_=t[7],v=i,b=n[0],y=n[1],w=n[2],k=o,x=s,S=l,C=u,T=c,E=d,P=h,A=p,L=f,M=m,R=g,z=_,N=v,I=b,O=y,D=w;for(let e=0;e{e.update(t);const n=t.length%16;n&&e.update(jo.subarray(n))},Fo=new Uint8Array(32);function $o(e,t,n,a,i){const r=e(t,n,Fo),o=So.create(r);i&&Bo(o,i),Bo(o,a);const s=new Uint8Array(16),l=Di(s);$i(l,0,BigInt(i?i.length:0),!0),$i(l,8,BigInt(a.length),!0),o.update(s);const u=o.digest();return r.fill(0),u}var Vo=e=>(t,n,a)=>{const i=16;return Ri(t,32),Ri(n),{encrypt:(r,o)=>{const s=r.length,l=s+i;o?Ri(o,l):o=new Uint8Array(l),e(t,n,r,o,1);const u=$o(e,t,n,o.subarray(0,-16),a);return o.set(u,s),o},decrypt:(r,o)=>{const s=r.length,l=s-i;if(sa?e.create().update(n).digest():n);for(let e=0;enew Uo(e,t).update(n).digest();Ho.create=(e,t)=>new Uo(e,t);var Wo=new Uint8Array([0]),Go=new Uint8Array;var Yo=1,Ko=65535;function Qo(e,t){const n=Ie.getSharedSecret(e,"02"+t).subarray(1,33);return a=Tt,i=n,r="nip44-v2",vt.hash(a),void 0===r&&(r=new Uint8Array(a.outputLen)),Ho(a,st(r),st(i));var a,i,r}function Zo(e,t){const n=function(e,t,n,a=32){if(vt.hash(e),vt.number(a),a>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");const i=Math.ceil(a/e.outputLen);void 0===n&&(n=Go);const r=new Uint8Array(i*e.outputLen),o=Ho.create(e,t),s=o._cloneInto(),l=new Uint8Array(o.outputLen);for(let t=0;tKo)throw new Error("invalid plaintext size: must be between 1 and 65535 bytes");const t=new Uint8Array(2);return new DataView(t.buffer).setUint16(0,e,!1),t}(n),t,new Uint8Array(Jo(n)-n))}function es(e,t,n){if(32!==n.length)throw new Error("AAD associated data must be 32 bytes");const a=lt(n,t);return Ho(Tt,e,a)}function ts(e,t,n=dt(32)){const{chacha_key:a,chacha_nonce:i,hmac_key:r}=Zo(t,n),o=Xo(e),s=Do(a,i,o),l=es(r,s,n);return Xa.encode(lt(new Uint8Array([2]),n,s,l))}function ns(e,t){const{nonce:n,ciphertext:a,mac:i}=function(e){if("string"!=typeof e)throw new Error("payload must be a valid string");const t=e.length;if(t<132||t>87472)throw new Error("invalid payload length: "+t);if("#"===e[0])throw new Error("unknown encryption version");let n;try{n=Xa.decode(e)}catch(e){throw new Error("invalid base64: "+e.message)}const a=n.length;if(a<99||a>65603)throw new Error("invalid data length: "+a);const i=n[0];if(2!==i)throw new Error("unknown encryption version "+i);return{nonce:n.subarray(1,33),ciphertext:n.subarray(33,-32),mac:n.subarray(-32)}}(e),{chacha_key:r,chacha_nonce:o,hmac_key:s}=Zo(t,n);if(!Bi(es(s,a,n),i))throw new Error("invalid MAC");return function(e){const t=new DataView(e.buffer).getUint16(0),n=e.subarray(2,2+t);if(tKo||n.length!==t||e.length!==2+Jo(t))throw new Error("invalid padding");return Pt.decode(n)}(Do(r,o,a))}var as={utils:{getConversationKey:Qo,calcPaddedLen:Jo},encrypt:ts,decrypt:ns},is={};function rs(e){const{pathname:t,searchParams:n}=new URL(e),a=t,i=n.get("relay"),r=n.get("secret");if(!a||!i||!r)throw new Error("invalid connection string");return{pubkey:a,relay:i,secret:r}}async function os(e,t,n){const a={method:"pay_invoice",params:{invoice:n}},i=await Tr(t,e,JSON.stringify(a)),r={kind:Fn,created_at:Math.round(Date.now()/1e3),content:i,tags:[["p",e]]};return Ft(r,t)}i(is,{makeNwcRequestEvent:()=>os,parseConnectionString:()=>rs});var ss,ls={};i(ls,{getZapEndpoint:()=>cs,makeZapReceipt:()=>ps,makeZapRequest:()=>ds,useFetchImplementation:()=>us,validateZapRequest:()=>hs});try{ss=fetch}catch{}function us(e){ss=e}async function cs(e){try{let t="",{lud06:n,lud16:a}=JSON.parse(e.content);if(n){let{words:e}=ci.decode(n,1e3),a=ci.fromWords(e);t=Pt.decode(a)}else{if(!a)return null;{let[e,n]=a.split("@");t=new URL(`/.well-known/lnurlp/${e}`,`https://${n}`).toString()}}let i=await ss(t),r=await i.json();if(r.allowsNostr&&r.nostrPubkey)return r.callback}catch(e){}return null}function ds({profile:e,event:t,amount:n,relays:a,comment:i=""}){if(!n)throw new Error("amount not given");if(!e)throw new Error("profile not given");let r={kind:9734,created_at:Math.round(Date.now()/1e3),content:i,tags:[["p",e],["amount",n.toString()],["relays",...a]]};return t&&r.tags.push(["e",t]),r}function hs(e){let t;try{t=JSON.parse(e)}catch(e){return"Invalid zap request JSON."}if(!ft(t))return"Zap request is not a valid Nostr event.";if(!$t(t))return"Invalid signature on zap request.";let n=t.tags.find((([e,t])=>"p"===e&&t));if(!n)return"Zap request doesn't have a 'p' tag.";if(!n[1].match(/^[a-f0-9]{64}$/))return"Zap request 'p' tag is not valid hex.";let a=t.tags.find((([e,t])=>"e"===e&&t));return a&&!a[1].match(/^[a-f0-9]{64}$/)?"Zap request 'e' tag is not valid hex.":t.tags.find((([e,t])=>"relays"===e&&t))?null:"Zap request doesn't have a 'relays' tag."}function ps({zapRequest:e,preimage:t,bolt11:n,paidAt:a}){let i=JSON.parse(e),r=i.tags.filter((([e])=>"e"===e||"p"===e||"a"===e)),o={kind:9735,created_at:Math.round(a.getTime()/1e3),content:"",tags:[...r,["P",i.pubkey],["bolt11",n],["description",e]]};return t&&o.tags.push(["preimage",t]),o}var fs={};i(fs,{getToken:()=>_s,hashPayload:()=>Ss,unpackEventFromToken:()=>bs,validateEvent:()=>Ts,validateEventKind:()=>ws,validateEventMethodTag:()=>xs,validateEventPayloadTag:()=>Cs,validateEventTimestamp:()=>ys,validateEventUrlTag:()=>ks,validateToken:()=>vs});var ms,gs="Nostr ";async function _s(e,t,n,a=!1,i){const r={kind:Un,tags:[["u",e],["method",t]],created_at:Math.round((new Date).getTime()/1e3),content:""};i&&r.tags.push(["payload",Ss(i)]);const o=await n(r);return(a?gs:"")+Xa.encode(At.encode(JSON.stringify(o)))}async function vs(e,t,n){const a=await bs(e).catch((e=>{throw e}));return await Ts(a,t,n).catch((e=>{throw e}))}async function bs(e){if(!e)throw new Error("Missing token");e=e.replace(gs,"");const t=Pt.decode(Xa.decode(e));if(!t||0===t.length||!t.startsWith("{"))throw new Error("Invalid token");return JSON.parse(t)}function ys(e){return!!e.created_at&&Math.round((new Date).getTime()/1e3)-e.created_at<60}function ws(e){return e.kind===Un}function ks(e,t){const n=e.tags.find((e=>"u"===e[0]));return!!n&&(n.length>0&&n[1]===t)}function xs(e,t){const n=e.tags.find((e=>"method"===e[0]));return!!n&&(n.length>0&&n[1].toLowerCase()===t.toLowerCase())}function Ss(e){return rt(Tt(At.encode(JSON.stringify(e))))}function Cs(e,t){const n=e.tags.find((e=>"payload"===e[0]));if(!n)return!1;const a=Ss(t);return n.length>0&&n[1]===a}async function Ts(e,t,n,a){if(!$t(e))throw new Error("Invalid nostr event, signature invalid");if(!ws(e))throw new Error("Invalid nostr event, kind invalid");if(!ys(e))throw new Error("Invalid nostr event, created_at timestamp invalid");if(!ks(e,t))throw new Error("Invalid nostr event, url tag invalid");if(!xs(e,n))throw new Error("Invalid nostr event, method tag invalid");if(Boolean(a)&&"object"==typeof a&&Object.keys(a).length>0&&!Cs(e,a))throw new Error("Invalid nostr event, payload tag does not match request body hash");return!0}return ms=r,((i,r,o,s)=>{if(r&&"object"==typeof r||"function"==typeof r)for(let l of n(r))a.call(i,l)||l===o||e(i,l,{get:()=>r[l],enumerable:!(s=t(r,l))||s.enumerable});return i})(e({},"__esModule",{value:!0}),ms)})();window.localisation={},window.localisation.de={confirm:"Ja",server:"Server",theme:"Theme",site_customisation:"Website-Anpassung",funding:"Funding",users:"Benutzer",audit:"Prüfung",apps:"Apps",channels:"Kanäle",transactions:"Transaktionen",dashboard:"Armaturenbrett",node:"Knoten",export_users:"Benutzer exportieren",no_users:"Keine Benutzer gefunden",total_capacity:"Gesamtkapazität",avg_channel_size:"Durchschn. Kanalgröße",biggest_channel_size:"Größte Kanalgröße",smallest_channel_size:"Kleinste Kanalgröße",number_of_channels:"Anzahl der Kanäle",active_channels:"Aktive Kanäle",connect_peer:"Peer verbinden",connect:"Verbinden",open_channel:"Offener Kanal",open:"Öffnen",close_channel:"Kanal schließen",close:"Schließen",restart:"Server neu starten",save:"Speichern",save_tooltip:"Änderungen speichern",credit_debit:"Kredit / Debit",credit_hint:"Klicke Enter, um das Konto zu belasten",credit_label:"{denomination} zu belasten",credit_ok:"Erfolgreiches Gutschreiben/Abziehen von virtuellen Geldern ({amount} Sats). Zahlungen hängen von den tatsächlichen Mitteln der Finanzierungsquelle ab.",restart_tooltip:"Starte den Server neu, um die Änderungen zu übernehmen",add_funds_tooltip:"Füge Geld zu einer Wallet hinzu.",reset_defaults:"Zurücksetzen",reset_defaults_tooltip:"Alle Einstellungen auf die Standardeinstellungen zurücksetzen.",download_backup:"Datenbank-Backup herunterladen",name_your_wallet:"Vergib deiner {name} Wallet einen Namen",paste_invoice_label:"Füge eine Rechnung, Zahlungsanforderung oder LNURL ein *",lnbits_description:"Einfach zu installieren und kompakt, LNbits kann auf jeder Funding-Quelle im Lightning Netzwerk aufsetzen und sogar LNbits selbst! Du kannst LNbits für dich selbst betreiben oder anderen die Verwaltung durch dich anbieten. Jede Wallet hat ihre eigenen API-Schlüssel und die Anzahl der Wallets ist unbegrenzt. Die Möglichkeit, Gelder auf verschiedene Accounts mit unterschiedlicher Logik aufteilen zu können macht LNbits zu einem nützlichen Werkzeug für deine Buchhaltung - aber auch als Entwicklungswerkzeug. Erweiterungen bereichern LNbits Accounts um zusätzliche Funktionalität, so dass du mit einer Reihe von neuartigen Technologien auf dem Lightning-Netzwerk experimentieren kannst. Wir haben es so einfach wie möglich gemacht, Erweiterungen zu entwickeln, und als freies und Open-Source-Projekt möchten wir Menschen ermutigen, sich selbst hieran zu versuchen und gemeinsam mit uns neue Funktionalitäten zu entwickeln.",export_to_phone:"Auf dem Telefon öffnen",export_to_phone_desc:"Dieser QR-Code beinhaltet vollständige Rechte auf deine Wallet. Du kannst den QR-Code mit Deinem Telefon scannen, um deine Wallet dort zu öffnen.",wallet:"Brieftasche:",wallets:"Wallets",add_wallet:"Wallet hinzufügen",delete_wallet:"Wallet löschen",delete_wallet_desc:"Die Wallet wird gelöscht, die hierin beinhalteten Daten hierin oder innerhalb einer Erweiterung sind UNWIEDERBRINGLICH.",rename_wallet:"Wallet umbenennen",update_name:"Namen aktualisieren",fiat_tracking:"Fiat-Tracking",currency:"Währung",update_currency:"Währung aktualisieren",press_to_claim:"Klicken, um Bitcoin einzufordern.",donate:"Spenden",view_github:"Auf GitHub anzeigen",voidwallet_active:"VoidWallet ist aktiv! Zahlungen deaktiviert",use_with_caution:"BITTE MIT VORSICHT BENUTZEN - {name} Wallet ist noch BETA",service_fee:"Dienstleistungsgebühr: {amount} % pro Transaktion",service_fee_max:"Servicegebühr: {amount} % pro Transaktion (max {max} Sats)",service_fee_tooltip:"Bearbeitungsgebühr, die vom LNbits Server-Administrator pro ausgehender Transaktion berechnet wird",toggle_darkmode:"Auf Dark Mode umschalten",payment_reactions:"Zahlungsreaktionen",view_swagger_docs:"LNbits Swagger API-Dokumentation",api_docs:"API-Dokumentation",api_keys_api_docs:"Knoten-URL, API-Schlüssel und API-Dokumentation",lnbits_version:"LNbits-Version",runs_on:"Läuft auf",paste:"Einfügen",paste_from_clipboard:"Einfügen aus der Zwischenablage",paste_request:"Anfrage einfügen",create_invoice:"Rechnung erstellen",camera_tooltip:"Verwende die Kamera, um eine Rechnung oder einen QR-Code zu scannen",export_csv:"Exportieren als CSV",chart_tooltip:"Diagramm anzeigen",pending:"Ausstehend",copy_invoice:"Rechnung kopieren",withdraw_from:"Abheben von",cancel:"Stornieren",scan:"Scannen",read:"Lesen",pay:"Zahlen",memo:"Memo",date:"Datum",payment_processing:"Zahlung wird verarbeitet ...",not_enough_funds:"Geldmittel sind erschöpft!",search_by_tag_memo_amount:"Suche nach Tag, Memo, Betrag",invoice_waiting:"Rechnung wartend auf Zahlung",payment_received:"Zahlung erhalten",payment_sent:"Zahlung gesendet",receive:"erhalten",send:"schicken",outgoing_payment_pending:"Ausgehende Zahlung wartend",drain_funds:"Sats abziehen",drain_funds_desc:"LNURL-withdraw QR-Code, der das Abziehen aller Geldmittel aus dieser Wallet erlaubt. Teile ihn mit niemandem! Kompatibel mit balanceCheck und balanceNotify, so dass dein Wallet die Sats nach dem ersten Abzug kontinuierlich von hier abziehen kann.",i_understand:"Ich verstehe",copy_wallet_url:"Wallet-URL kopieren",disclaimer_dialog_title:"Wichtig!",disclaimer_dialog:"Login-Funktionalität wird in einem zukünftigen Update veröffentlicht. Bis dahin ist die Speicherung der Wallet-URL als Lesezeichen absolut notwendig, um Zugriff auf die Wallet zu erhalten! Dieser Service ist in BETA und wir übernehmen keine Verantwortung für Verluste durch verlorene Zugriffe.",no_transactions:"Keine Transaktionen",manage:"Verwalten",exchanges:"Börsenplätze",extensions:"Erweiterungen",no_extensions:"Du hast noch keine Erweiterungen installiert :(",created:"Erstellt",search_extensions:"Sucherweiterungen",extension_sources:"Erweiterungsquellen",ext_sources_hint:"Repositorys, von denen die Erweiterungen heruntergeladen werden können.",ext_sources_label:"Quell-URL (verwenden Sie nur die offizielle LNbits-Erweiterungsquelle und vertrauenswürdige Quellen)",warning:"Warnung",repository:"Repository",confirm_continue:"Bist du sicher, dass du fortfahren möchtest?",manage_extension_details:"Erweiterung installieren/deinstallieren",install:"Installieren",uninstall:"Deinstallieren",drop_db:"Daten löschen",enable:"Aktivieren",pay_to_enable:"Zahlen Sie zum Aktivieren",enable_extension_details:"Erweiterung für aktuellen Benutzer aktivieren",disable:"Deaktivieren",delete:"Löschen",installed:"Installiert",activated:"Aktiviert",deactivated:"Deaktiviert",release_notes:"Versionshinweise",activate_extension_details:"Erweiterung für Benutzer verfügbar/nicht verfügbar machen",featured:"Vorgestellt",all:"Alle",only_admins_can_install:"(Nur Administratorkonten können Erweiterungen installieren)",admin_only:"Nur für Admins",new_version:"Neue Version",extension_depends_on:"Hängt ab von:",extension_rating_soon:"Bewertungen sind bald verfügbar",extension_installed_version:"Installierte Version",extension_uninstall_warning:"Sie sind dabei, die Erweiterung für alle Benutzer zu entfernen.",uninstall_confirm:"Ja, deinstallieren",extension_db_drop_info:"Alle Daten für die Erweiterung werden dauerhaft gelöscht. Es gibt keine Möglichkeit, diesen Vorgang rückgängig zu machen!",extension_db_drop_warning:"Sie sind dabei, alle Daten für die Erweiterung zu entfernen. Bitte geben Sie den Namen der Erweiterung ein, um fortzufahren:",extension_required_lnbits_version:"Diese Version erfordert mindestens die LNbits-Version",min_version:"Mindestwert (inklusive)",max_version:"Maximalwert (ausgeschlossen)",payment_hash:"Zahlungs-Hash",fee:"Gebühr",amount:"Menge",amount_sats:"Betrag (sats)",tag:"Tag",unit:"Einheit",description:"Beschreibung",expiry:"Ablauf",webhook:"Webhook",payment_proof:"Beleg",update:"Aktualisieren",update_available:"Aktualisierung {version} verfügbar!",latest_update:"Sie sind auf der neuesten Version {version}.",notifications:"Benachrichtigungen",no_notifications:"Keine Benachrichtigungen",notifications_disabled:"LNbits Statusbenachrichtigungen sind deaktiviert.",enable_notifications:"Aktiviere Benachrichtigungen",enable_notifications_desc:"Wenn aktiviert, werden die neuesten LNbits-Statusaktualisierungen, wie Sicherheitsvorfälle und Updates, abgerufen.",enable_watchdog:"Aktiviere Watchdog",enable_watchdog_desc:"Wenn aktiviert, wird Ihre Zahlungsquelle automatisch auf VoidWallet umgestellt, wenn Ihr Guthaben niedriger als das LNbits-Guthaben ist. Nach einem Update müssen Sie dies manuell aktivieren.",watchdog_interval:"Überwachungszeitintervall",watchdog_interval_desc:"Wie oft die Hintergrundaufgabe nach einem Abschaltsignal im Wachhund-Delta [node_balance - lnbits_balance] suchen soll (in Minuten).",watchdog_delta:"Watchdog Delta",watchdog_delta_desc:"Limit, bevor der Notausschalter die Finanzierungsquelle auf VoidWallet ändert [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Benachrichtigungsquelle",notification_source_label:"Quell-URL (verwenden Sie nur die offizielle LNbits-Statusquelle und Quellen, denen Sie vertrauen können)",more:"mehr",less:"weniger",releases:"Veröffentlichungen",watchdog:"Wachhund",server_logs:"Serverprotokolle",ip_blocker:"IP-Sperre",security:"Sicherheit",security_tools:"Sicherheitstools",block_access_hint:"Zugriff per IP sperren",allow_access_hint:"Zugriff durch IP erlauben (überschreibt blockierte IPs)",enter_ip:"Geben Sie die IP ein und drücken Sie die Eingabetaste",rate_limiter:"Ratenbegrenzer",wallet_limiter:"Geldbeutel-Limiter",wallet_limit_max_withdraw_per_day:"Maximales tägliches Wallet-Auszahlungslimit in Sats (0 zum Deaktivieren)",wallet_max_ballance:"Maximales Guthaben der Wallet in Sats (0 zum Deaktivieren)",wallet_limit_secs_between_trans:"Mindestsekunden zwischen Transaktionen pro Wallet (0 zum Deaktivieren)",number_of_requests:"Anzahl der Anfragen",time_unit:"Zeiteinheit",minute:"Minute",second:"Sekunde",hour:"Stunde",disable_server_log:"Server-Log deaktivieren",enable_server_log:"Serverprotokollierung aktivieren",coming_soon:"Funktion demnächst verfügbar",session_has_expired:"Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an.",instant_access_question:"Möchten Sie sofortigen Zugang?",login_with_user_id:"Mit Benutzer-ID anmelden",or:"oder",create_new_wallet:"Neue Geldbörse erstellen",login_to_account:"Melden Sie sich bei Ihrem Konto an",create_account:"Konto erstellen",account_settings:"Kontoeinstellungen",signin_with_nostr:"Mit Nostr fortfahren",signin_with_google:"Mit Google anmelden",signin_with_github:"Anmelden mit GitHub",signin_with_keycloak:"Mit Keycloak anmelden",username_or_email:"Benutzername oder E-Mail",password:"Passwort",password_config:"Passwortkonfiguration",password_repeat:"Passwortwiederholung",change_password:"Passwort ändern",update_credentials:"Anmeldeinformationen aktualisieren",update_pubkey:"Öffentlichen Schlüssel aktualisieren",set_password:"Passwort festlegen",invalid_password:"Das Passwort muss mindestens 8 Zeichen haben.",login:"Anmelden",register:"Registrieren",username:"Benutzername",pubkey:"Öffentlicher Schlüssel",user_id:"Benutzer-ID",email:"E-Mail",first_name:"Vorname",last_name:"Nachname",picture:"Bild",verify_email:"E-Mail verifizieren mit",account:"Konto",update_account:"Konto aktualisieren",invalid_username:"Ungültiger Benutzername",auth_provider:"Anbieter für Authentifizierung",my_account:"Mein Konto",back:"Zurück",logout:"Abmelden",look_and_feel:"Aussehen und Verhalten",toggle_gradient:"Verlauf umschalten",gradient_background:"Verlaufs-Hintergrund",language:"Sprache",color_scheme:"Farbschema",admin_settings:"Admin-Einstellungen",extension_cost:"Diese Version erfordert eine Zahlung von mindestens {cost} Sats.",extension_paid_sats:"Sie haben bereits {paid_sats} Sats bezahlt.",release_details_error:"Kann die Details zur Veröffentlichung nicht abrufen.",pay_from_wallet:"Zahlen aus dem Geldbeutel",wallet_required:"Wallet *",show_qr:"QR anzeigen",retry_install:"Installieren erneut versuchen",new_payment:"Neue Zahlung vornehmen",update_payment:"Zahlung aktualisieren",already_paid_question:"Haben Sie schon bezahlt?",sell:"Verkaufen",sell_require:"Zahlung anfordern, um die Erweiterung zu aktivieren",sell_info:"Die {name}-Erweiterung erfordert eine Zahlung von mindestens {amount} Satoshis, um aktiviert zu werden.",hide_empty_wallets:"Leere Geldbörsen verbergen",recheck:"Erneut überprüfen",contributors:"Mitwirkende",license:"Lizenz",reset_key:"Zurücksetzen-Schlüssel",reset_password:"Passwort zurücksetzen",border_choices:"Randoptionen",select_all:"Alles auswählen",nfc_supported:"NFC unterstützt",nfc_not_supported:"NFC wird nicht unterstützt",expire_date:"Ablaufdatum:",hash:"Hash:",welcome_lnbits:"Willkommen bei LNbits",setup_su_account:"Richten Sie das Superuser-Konto unten ein.",create_ticker_converter:"Währungsticker-Konverter erstellen",enable_audit:"Audit aktivieren",recommended:"Empfohlen",audit_desc:"HTTP-Anfragen entsprechend den angegebenen Filtern aufzeichnen",audit_record_req:"Anfragekörper aufzeichnen",audit_record_warning:"Warnung:",audit_record_req_warning_1:"Vertrauliche Daten (wie Passwörter) werden protokolliert.",audit_record_req_warning_2:"Der Anfragetext kann groß sein.",audit_record_use:"Verwenden Sie es mit Vorsicht.",audit_ip:"IP-Adresse aufzeichnen",audit_ip_desc:"Speichern Sie die IP-Adresse des Clients",audit_path_params:"Pfadparameter aufzeichnen",audit_query_params:"Abfrageparameter aufzeichnen",audit_http_methods:"HTTP-Methoden einschließen",audit_http_methods_hint:"Liste der HTTP-Methoden, die einbezogen werden sollen. Leere Listen bedeuten alle.",audit_http_methods_label:"HTTP-Methoden",audit_resp_codes:"HTTP-Antwortcodes einbeziehen",audit_resp_codes_hint:"Liste der einzuschließenden HTTP-Codes (regex-Match). Leere Liste bedeutet alle. Z.B.: 4.*, 5.*",audit_resp_codes_label:"HTTP-Antwortcode (Regex)",audit_paths:"Einfügepfade",audit_paths_hint:"Liste der aufzunehmenden Pfade (Regex-Übereinstimmung). Leere Liste bedeutet alle.",audit_paths_label:"HTTP-Pfad (Regex)",audit_paths_exclude:"Pfade ausschließen",audit_paths_exclude_hint:"Liste der auszuschließenden Pfade (regex-Match). Leere Liste bedeutet keine.",audit_paths_exclude_label:"HTTP-Pfad (Regex)",exchange_providers:"Austauschdienste",admin_extensions:"Admin-Erweiterungen",admin_extensions_label:"Admin-Erweiterungen",admin_extensions_hint:"Nur Benutzer mit Admin-Rechten können Erweiterungen verwenden.",user_default_extensions:"Standarderweiterungen des Benutzers",user_default_extensions_label:"Benutzererweiterungen",user_default_extensions_hint:"Erweiterungen, die standardmäßig für die Benutzer aktiviert werden.",miscellanous:"Verschiedenes",misc_disable_extensions:"Erweiterungen deaktivieren",misc_disable_extensions_label:"Alle Erweiterungen deaktivieren",misc_hide_api:"API ausblenden",misc_hide_api_label:"Verbirgt Wallet-API, Erweiterungen können es ehren",wallets_management:"Verwaltung von Geldbörsen",funding_source_info:"Finanzierungsquelleninformationen",funding_source:"Finanzierungsquelle: {wallet_class}",node_balance:"Kontostand: {balance} Sats",lnbits_balance:"LNbits-Guthaben: {balance} Sats",funding_reserve_percent:"Reservieren Prozent: {percent} %",node_management:"Knotenverwaltung",node_management_not_supported:"Knotenverwaltung wird von der aktiven Finanzierungsquelle nicht unterstützt",toggle_node_ui:"Node-Benutzeroberfläche",toggle_public_node_ui:"Öffentliche Knoten-Benutzeroberfläche",toggle_transactions_node_ui:"Transaktionen-Tab (Bei großen CLN-Knoten deaktivieren)",invoice_expiry:"Rechnungsablauf",invoice_expiry_label:"Rechnungsablauf (Sekunden)",fee_reserve:"Gebührenreserve",fee_reserve_msats:"Reservierungsgebühr in msats",fee_reserve_percent:"Reservierungsgebühr in Prozent",server_management:"Serververwaltung",base_url:"Basis-URL",base_url_label:"Statische/Basis-URL für den Server",authentication:"Authentifizierung",auth_token_expiry_label:"Token-Ablaufminuten",auth_token_expiry_hint:"Zeit in Minuten bis der Token abläuft",auth_allowed_methods_label:"Erlaubte Autorisierungsmethoden",auth_allowed_methods_hint:"Wählen Sie Autorisierungsmethoden aus",auth_nostr_label:"Nostr-Anforderungs-URL",auth_nostr_hint:"Absolute URL, die die Clients für die Anmeldung verwenden.",auth_google_ci_label:"Google-Client-ID",auth_google_ci_hint:"Stellen Sie sicher, dass die autorisierten Umleitungs-URIs https://{domain}/api/v1/auth/google/token enthalten",auth_google_cs_label:"Google-Client-Geheimnis",auth_gh_client_id_label:"GitHub-Client-ID",auth_gh_client_id_hint:"Stellen Sie sicher, dass die URL für den Autorisierungsrückruf auf https://{domain}/api/v1/auth/github/token gesetzt ist.",auth_gh_client_secret_label:"GitHub-Client-Geheimnis",auth_keycloak_label:"Keycloak Discovery-URL",auth_keycloak_ci_label:"Keycloak-Client-ID",auth_keycloak_ci_hint:"Stellen Sie sicher, dass die Autorisierungs-Callback-URL auf https://{domain}/api/v1/auth/keycloak/token eingestellt ist.",auth_keycloak_cs_label:"Keycloak-Client-Geheimnis",currency_settings:"Währungseinstellungen",allowed_currencies:"Erlaubte Währungen",allowed_currencies_hint:"Begrenzen Sie die Anzahl der verfügbaren Fiat-Währungen",default_account_currency:"Standardkontowährung",default_account_currency_hint:"Standardwährung für Buchhaltung",service_fee_label:"Servicegebühr (%)",service_fee_hint:"Gebühr pro Transaktion (%)",service_fee_max_label:"Servicegebühr max. (sats)",service_fee_max_hint:"Maximale Servicegebühr in (sats) berechnen.",fee_wallet:"Gebühren-Wallet",fee_wallet_label:"Gebühren-Wallet (Wallet-ID)",fee_wallet_hint:"Wallet-ID, an die Gelder gesendet werden sollen",disable_fee:"Gebühr deaktivieren",disable_fee_internal:"Dienstleistungsgebühr für interne Zahlungen deaktivieren",disable_fee_internal_desc:"Dienstleistungsgebühr für interne Lightning-Zahlungen deaktivieren",ui_management:"UI-Verwaltung",ui_site_title:"Seitentitel",ui_site_tagline:"Seitenslogan",ui_elements_enable:"Elemente auf der Startseite aktivieren",ui_elements_disable:"Elemente auf der Startseite deaktivieren",ui_toggle_elements_tip:"Entfernen Sie Homepage-Elemente wie 'läuft auf' usw.",ui_site_description:"Seitenbeschreibung",ui_site_description_hint:"Verwenden Sie einfachen Text, Markdown oder rohes HTML",ui_default_wallet_name:"Standard-Walletname",lnbits_wallet:"LNbits-Wallet",denomination:"Nomination",denomination_hint:"Der Name für das FakeWallet-Token",ui_qr_code_logo:"QR-Code-Logo",ui_qr_code_logo_hint:"URL zum Logo-Bild im QR-Code",ui_custom_badge:"Benutzerdefiniertes Abzeichen",ui_custom_badge_label:"Benutzerdefiniertes Abzeichen 'MIT VORSICHT VERWENDEN - LNbits-Wallet ist noch in der BETA-Phase'",ui_custom_badge_color_label:"Benutzerdefinierte Abzeichenfarbe",themes:"Themen",themes_hint:"Wählen Sie Themen, die für Benutzer verfügbar sind",custom_logo:"Benutzerdefiniertes Logo",custom_logo_hint:"URL zum Logobild",ad_space_title:"Anzeigentitel",ad_space_title_label:"Unterstützt von",ad_slots:"Werbeplätze",ad_slots_hint:"URL-Adressen und Bilddateipfade im CSV-Format, Erweiterungen können darauf achten",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Anzeigen aktiviert",ads_disabled:"Anzeigen deaktiviert",user_management:"Benutzerverwaltung",admin_users:"Admin-Benutzer",admin_users_hint:"Benutzer mit Administratorrechten",admin_users_label:"Benutzer-ID",allowed_users:"Zugelassene Benutzer",allowed_users_hint:"Nur diese Benutzer können LNbits verwenden.",allowed_users_label:"Benutzer-ID",allow_creation_user:"Erlauben Sie die Erstellung neuer Benutzer",allow_creation_user_desc:"Erlauben Sie das Erstellen neuer Benutzer auf der Indexseite",components:"Komponenten",long_running_endpoints:"Top 5 lang laufende Endpunkte",http_request_methods:"HTTP-Anfragemethoden",http_response_codes:"HTTP-Antwortcodes",request_details:"Anfragedetails",http_request_details:"HTTP-Anfragedetails"},window.localisation.en={confirm:"Yes",server:"Server",theme:"Theme",site_customisation:"Site Customisation",funding:"Funding",users:"Users",audit:"Audit",api_watch:"Api Watch",apps:"Apps",channels:"Channels",transactions:"Transactions",dashboard:"Dashboard",node:"Node",export_users:"Export Users",no_users:"No users found",total_capacity:"Total Capacity",avg_channel_size:"Avg. Channel Size",biggest_channel_size:"Biggest Channel Size",smallest_channel_size:"Smallest Channel Size",number_of_channels:"Number of Channels",active_channels:"Active Channels",connect_peer:"Connect Peer",connect:"Connect",reconnect:"Reconnect",open_channel:"Open Channel",open:"Open",clear:"Clear",close_channel:"Close Channel",close:"Close",restart:"Restart server",image_library:"Image Library",save:"Save",save_tooltip:"Save your changes",must_save:"You have unsaved changes",credit_debit:"Credit / Debit",credit_hint:"Press Enter to credit/debit wallet (negative values allowed)",credit_label:"{denomination} to credit/debit",credit_ok:"Success crediting/debiting virtual funds ({amount} sats). Payments depend on actual funds on funding source.",restart_tooltip:"Restart the server for changes to take effect",add_funds_tooltip:"Add funds to a wallet.",reset_defaults:"Reset to defaults",reset_defaults_tooltip:"Delete all settings and reset to defaults.",download_backup:"Download database backup",name_your_wallet:"Name your {name} wallet",paste_invoice_label:"Paste an invoice, payment request or lnurl code *",lnbits_description:"Easy to set up and lightweight, LNbits can run on any Lightning Network funding source and even LNbits itself! You can run LNbits for yourself, or easily offer a custodian solution for others. Each wallet has its own API keys and there is no limit to the number of wallets you can make. Being able to partition funds makes LNbits a useful tool for money management and as a development tool. Extensions add extra functionality to LNbits so you can experiment with a range of cutting-edge technologies on the lightning network. We have made developing extensions as easy as possible, and as a free and open-source project, we encourage people to develop and submit their own.",export_to_phone:"Export to Phone with QR Code",export_to_phone_desc:"This QR code contains your wallet URL with full access. You can scan it from your phone to open your wallet from there.",access_wallet_on_mobile:"Mobile Access",stored_paylinks:"Stored LNURL pay links",wallet:"Wallet: ",wallet_name:"Wallet name",wallet_type:"Wallet type",shared_wallet:"Shared Wallet",share_wallet:"Share Wallet",update_permissions:"Update Permissions",shared_wallet_id:"Shared Wallet ID",shared_wallet_desc:"You have been invited to have access to someone else's wallet.",wallets:"Wallets",exclude_wallets:"Exclude Wallets",add_wallet:"Add wallet",reject_wallet:"Reject wallet",add_new_wallet:"Add a new wallet",pin_wallet:"Pin wallet",delete_wallet:"Delete wallet",delete_wallet_desc:"This whole wallet will be deleted, the funds will be UNRECOVERABLE.",rename_wallet:"Rename wallet",update_name:"Update name",fiat_tracking:"Fiat tracking",fiat_providers:"Fiat providers",currency:"Currency",update_currency:"Update currency",press_to_claim:"Press to claim bitcoin",claim_desc:"It seems you have a claimable amount of bitcoin but you don’t have a wallet yet. Press the button below to claim it. This will create a new wallet for you.",donate:"Donate",view_github:"View on GitHub",voidwallet_active:"VoidWallet is active! Payments disabled",voidwallet_active_user:"Funding source unavailable. Please contact your admin to configure.",voidwallet_active_admin:"Funding source unavailable. Click here to configure.",service_fee_badge:"Service fee: {amount} % per transaction",service_fee_max_badge:"Service fee: {amount} % per transaction (max {max} {denom})",service_fee_tooltip:"Service fee charged by the LNbits server admin per outgoing transaction",toggle_darkmode:"Toggle Dark Mode",payment_reactions:"Payment Reactions",view_swagger_docs:"View LNbits Swagger API docs",api_docs:"API docs",api_keys_api_docs:"Node URL, API keys and API docs",lnbits_version:"LNbits version",runs_on:"Runs on",paste:"Paste",paste_from_clipboard:"Paste from clipboard",paste_request:"Paste Request",create_invoice:"Create Invoice",camera_tooltip:"Use camera to scan an invoice/QR",export_csv:"Export to CSV",export_csv_details:"Export to CSV with details",chart_tooltip:"Show chart",pending:"Pending",copy_invoice:"Copy invoice",withdraw_from:"Withdraw from",cancel:"Cancel",scan:"Scan",read:"Read",write:"Write",pay:"Pay",memo:"Memo",date:"Date",path:"Path",internal_memo:"Internal memo (optional)",internal_memo_hint_receive:"This memo is not shown to the payer but it's stored in the invoice for your reference.",internal_memo_hint_pay:"This memo is not shown to the payee but it's stored in the payment for your reference.",payment_processing:"Processing payment...",payment_processing:"Processing payment...",payment_successful:"Payment successful!",payment_pending:"Payment pending...",payment_check:"Check payment",not_enough_funds:"Not enough funds!",search_by_tag_memo_amount:"Search by tag, memo, amount",search:"Search",invoice_waiting:"Invoice waiting to be paid",payment_received:"Payment Received",payment_sent:"Payment Sent",payment_failed:"Payment Failed",receive:"receive",send:"send",outgoing_payment_pending:"Outgoing payment pending",drain_funds:"Drain Funds",drain_funds_desc:"This is an LNURL-withdraw QR code for slurping everything from this wallet. Do not share with anyone. It is compatible with balanceCheck and balanceNotify so your wallet may keep pulling the funds continuously from here after the first withdraw.",i_understand:"I understand",copy_wallet_url:"Copy wallet URL",disclaimer_dialog_title:"Important!",disclaimer_dialog:"You *must* save your login credentials to be able to access your wallet again. If you lose them, you will lose access to your wallet and funds.\n\nFind your login credentials on your account settings page.\n\nLNbits holds no responsibility for loss of access to funds.",no_transactions:"No transactions made yet",manage:"Manage",exchanges:"Exchanges",extensions:"Extensions",no_extensions:"You don't have any extensions installed :(",created:"Created",created_at:"Created At",updated_at:"Updated At",search_extensions:"Search extensions",search_wallets:"Search wallets",extension_sources:"Extension Sources",ext_sources_hint:"Repositories from where the extensions can be downloaded",ext_sources_label:"Source URL (only use the official LNbits extension source, and sources you can trust)",warning:"Warning",repository:"Repository",confirm_continue:"Are you sure you want to continue?",manage_extension_details:"Install/uninstall extension",upload:"Upload",install:"Install",uninstall:"Uninstall",drop_db:"Remove Data",enable:"Enable",enabled:"Enabled",pay_to_enable:"Pay To Enable",enable_extension_details:"Enable extension for current user",disable:"Disable",delete:"Delete",installed:"Installed",activated:"Activated",deactivated:"Deactivated",release_notes:"Release Notes",activate_extension_details:"Make extension available/unavailable for users",featured:"Featured",all:"All",only_admins_can_install:"(Only admin accounts can install extensions)",only_admins_can_create_extensions:"Only admin accounts can create extensions",admin_only:"Admin Only",new_version:"New Version",extension_has_free_release:"Has free releases",extension_has_paid_release:"Has paid releases",extension_depends_on:"Depends on:",extension_rating_soon:"Ratings coming soon",extension_installed_version:"Installed version",extension_uninstall_warning:"You are about to remove the extension for all users.",uninstall_confirm:"Yes, Uninstall",extension_db_drop_info:"All data for the extension will be permanently deleted. There is no way to undo this operation!",extension_db_drop_warning:"You are about to remove all data for the extension. Please type the extension name to continue:",extension_required_lnbits_version:"This release requires LNbits version",min_version:"Minimum (included)",max_version:"Maximum (excluded)",preimage:"Preimage",preimage_hint:"Preimage to settle the hold invoice",hold_invoice:"Hold Invoice",hold_invoice_description:"This invoice is on hold and requires a preimage to settle.",payment_hash:"Payment Hash",invoice_cancelled:"Invoice Cancelled",invoice_settled:"Invoice Settled",hold_invoice_payment_hash:"Payment hash for hold invoice (optional)",settle_invoice:"Settle Invoice",cancel_invoice:"Cancel Invoice",fee:"Fee",amount:"Amount",amount_limits:"Amount Limits",amount_sats:"Amount (sats)",faucest_wallet:"Faucet Wallet",faucest_wallet_desc_1:"Each time a payment is confirmed by the {provider} provider funds will be subtracted from this wallet.",faucest_wallet_desc_2:"This helps monitor all {provider} payments and their status.",faucest_wallet_desc_3:"This wallet must be topped up with the amount of sats that the admin is willing to offer in exchange for the fiat currency.",faucest_wallet_desc_4:"If this wallet is configured, but is empty, the {provider} payments will not be processed.",faucest_wallet_desc_5:"This wallet can eventually get to a negative balance if parallel fiat payments are made.",faucest_wallet_id:"Faucet Wallet ID (optional)",faucest_wallet_id_hint:"Wallet ID to use for the faucet. It will be used to send the funds to the user.",tag:"Tag",unit:"Unit",description:"Description",expiry:"Expiry",webhook:"Webhook",webhook_url:"Webhook URL",webhook_url_hint:"Webhook URL to send the payment details to. It will be called when the payment is completed.",webhook_events_list:"The following events must be supported by the webhook:",webhook_stripe_description:"One the stripe side you must configure a webhook with a URL that points to your LNbits server.",payment_proof:"Payment Proof",update:"Update",update_available:"Update {version} available!",funding_sources:"Funding Sources",latest_update:"You are on the latest version {version}.",notifications:"Notifications",notifications_configure:"Configure Notifications",notifications_nostr_config:"Nostr Configuration",notifications_enable_nostr:"Enable Nostr",notifications_enable_nostr_desc:"Send notfications over Nostr",notifications_nostr_private_key:"Nostr Private Key",notifications_nostr_private_key_desc:"Private key (hex or nsec) to sign the messages sent to Nostr",notifications_nostr_identifier:"Nostr Identifier",notifications_nostr_identifier_desc:"Nip5 identifier to send notifications to",notifications_nostr_identifiers:"Nostr Identifiers",notifications_nostr_identifiers_desc:"List of identifiers to send notifications to",notifications_telegram_config:"Telegram Configuration",notifications_enable_telegram:"Enable Telegram",notifications_enable_telegram_desc:"Send notfications over Telegram",notifications_telegram_access_token:"Access Token",notifications_telegram_access_token_desc:"Access token for the bot",notifications_chat_id:"Telegram Chat ID",notifications_chat_id_desc:"Telegram Chat ID to send the notifications to",notifications_excluded_wallets_desc:"Do not send notifications for these wallets",notifications_email_config:"Email Configuration",notifications_enable_email:"Enable Email",notifications_enable_email_desc:"Send notifications over email",notifications_send_test_email:"Send test email",notifications_send_email:"Send email",notifications_send_email_desc:"Email you will send from",notifications_send_email_username:"Username",notifications_send_email_username_desc:"Username, will use the email if not set",notifications_send_email_password:"Send email password",notifications_send_email_password_desc:"Password for the email you will send from",notifications_send_email_server_port:"Send email SMTP port",notifications_send_email_server_port_desc:"Port for the SMTP server",notifications_send_email_server:"Send email SMTP server",notifications_send_email_server_desc:"SMTP server for the email you will send from",notifications_send_to_emails:"Emails to send to",notifications_send_to_emails_desc:"Emails notifications will be sent to",notification_settings_update:"Settings updated",notification_settings_update_desc:"Notify when server settings have been updated",notification_server_start_stop:"Server Start/Stop",notification_server_start_stop_desc:"Notify when the server has been started/stopped",notification_watchdog_limit:"Watchdog Limit Notification",notification_watchdog_limit_desc:"Notify when the watchdog limit has been reached (does not affect the funding source)",notification_server_status:"Server Status",notification_server_status_desc:"Send regular notifications about the server status (interval value in hours)",notification_incoming_payment:"Incoming Payments",notification_incoming_payment_desc:"Notify when a wallet has received a payment above the specified amount (sats)",notification_outgoing_payment:"Outgoing Payments",notification_outgoing_payment_desc:"Notify when a wallet has sent a payment above the specified amount (sats)",notification_credit_debit:"Credit / Debit",notification_credit_debit_desc:"Notify when a wallet has been credited/debited by the superuser",notification_balance_delta_changed:"Balance Delta Changed",notification_balance_delta_changed_desc:"Notify when the difference between the node balance and the LNbits balance has changed by more than the specified amount (in sats). Set to 0 to disable. This runs every minute.",enable_watchdog:"Enable Watchdog Switch",enable_watchdog_desc:"If enabled it will change your funding source to VoidWallet automatically if your balance is lower than the LNbits balance. You will need to enable manually after an update.",watchdog_interval:"Watchdog Interval",watchdog_interval_desc:"How often the background task should check for a killswitch signal in the watchdog delta [node_balance - lnbits_balance] (in minutes).",watchdog_delta:"Watchdog Delta",watchdog_delta_desc:"Limit before killswitch changes funding source to VoidWallet [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Notification Source",notification_source_label:"Source URL (only use the official LNbits status source, and sources you can trust)",more:"more",more_count:"{count} more",less:"less",releases:"Releases",watchdog:"Watchdog",server_logs:"Server Logs",ip_blocker:"IP Blocker",security:"Security",security_tools:"Security tools",block_access_hint:"Block access by IP",allow_access_hint:"Allow access by IP (will override blocked IPs)",enter_ip:"Enter IP and hit enter",rate_limiter:"Rate Limiter",callback_url_rules:"Callback URL Rules",enter_callback_url_rule:"Enter URL rule as regex and hit enter",callback_url_rule_hint:"Callback URLs (like LNURL one) will be validated against these rules. At leat one rule must match. No rule means all URLs are allowed.",wallet_limiter:"Wallet Limiter",wallet_config:"Wallet Config",wallet_charts:"Wallet Charts",wallet_limit_max_withdraw_per_day:"Max daily wallet withdrawal in sats (0 for no limit, -1 to block withdrawal)",wallet_max_ballance:"Wallet max balance in sats (0 to disable)",wallet_limit_secs_between_trans:"Min secs between transactions per wallet (0 to disable)",only_incoming_payments_allowed:"Only incoming payments allowed",disable_outgoing_payments:"Disable outgoing payments",number_of_requests:"Number of requests",time_unit:"Time unit",minute:"minute",settings:"Settings",second:"second",hour:"hour",disable_server_log:"Disable Server Log",enable_server_log:"Enable Server Log",coming_soon:"Feature coming soon",session_has_expired:"Your session has expired. Please login again.",instant_access_question:"or instant access",login_with_user_id:"Login with user ID",or:"or",create_new_wallet:"Create New Wallet",delete_all_wallets:"Delete All Wallets",confirm_delete_all_wallets:"Are you sure you want to delete ALL wallets for this user?",login_to_account:"Login to your account",create_account:"Create account",account_settings:"Account Settings",signin_with_oauth:"Login with",signin_with_oauth_or:"or Login with",signin_with_nostr:"Continue with Nostr",signin_with_google:"Sign in with Google",signin_with_github:"Sign in with GitHub",signin_with_custom_org:"Sign in with {custom_org}",username_or_email:"Username or Email",password:"Password",password_config:"Password Config",password_repeat:"Password repeat",update_password:"Update Password",change_password:"Change Password",update_credentials:"Update Credentials",update_pubkey:"Update Public Key",nostr_pubkey_tooltip:"Enter this user's Nostr public key (hex value)",set_password:"Set Password",set_password_tooltip:"Set a password for this user",invalid_password:"Password must have at least 8 characters",invalid_password_repeat:"Passwords do not match",reset_key_generated:"A reset key has been generated.",reset_key_copy:"Click OK to copy the reset URL to your clipboard.",login:"Login",register:"Register",username:"Username",pubkey:"Public Key",user_id:"User ID",id:"ID",email:"Email",first_name:"First Name",last_name:"Last Name",picture:"Picture",user_picture_desc:"URL to an image to use as profile picture. You can upload it as an asset.",verify_email:"Verify email with",account:"Account",update_account:"Update Account",invalid_username:"Invalid Username",auth_provider:"Auth Provider",external_id:"External ID",my_account:"My Account",existing_account_question:"Already have an account?",background_image:"Background Image",back:"Back",logout:"Logout",look_and_feel:"Look and Feel",endpoint:"Endpoint",api:"API",api_token:"API Token",api_tokens:"API Tokens",access_control_list:"Access Control List",access_control_list_admin_warning:"This is an admin account. The generated tokens will have admin privileges.",new_api_acl:"New Access Control List",api_token_id:"Token Id",toggle_gradient:"Toggle Gradient",gradient_background:"Gradient Background",language:"Language",assets:"Assets",max_asset_size_mb:"Max Asset Size (MB)",max_asset_size_mb_desc:"The maximum allowed size for asset uploads in megabytes (can use decimal values).",assets_allowed_mime_types:"Allowed MIME Types",assets_allowed_mime_types_desc:"The MIME types that are allowed for asset uploads. No value means all uploads are allowed.",thumbnail_width:"Thumbnail Width",thumbnail_width_desc:"Width of the generated thumbnail in pixels.",thumbnail_height:"Thumbnail Height",thumbnail_height_desc:"Height of the generated thumbnail in pixels.",thumbnail_format:"Thumbnail Format",thumbnail_format_desc:"Image format of the generated thumbnail (PNG, JPEG, etc.).",max_assets_per_user:"Max Assets Per User",max_assets_per_user_desc:"The maximum number of assets a user can upload. Zero means upload forbidden.",assets_no_limit_users:"Users Without Asset Limits",assets_no_limit_users_desc:"These users can upload an unlimited number of assets (user id based).",color_scheme:"Color Scheme",visible_wallet_count:"Visible Wallet Count",admin_settings:"Admin Settings",extension_cost:"This release requires a payment of minimum {cost} sats.",extension_paid_sats:"You have already paid {paid_sats} sats.",create_extension:"Create Extension",release_details_error:"Cannot get the release details.",pay_from_wallet:"Pay from Wallet",pay_with:"Pay with {provider}",select_payment_provider:"Select payment provider",wallet_required:"Wallet *",show_qr:"Show QR",retry_install:"Retry Install",new_payment:"Make New Payment",update_payment:"Update Payment",already_paid_question:"Have you already paid?",sell:"Sell",sell_require:"Ask payment to enable extension",sell_info:"The {name} extension requires a payment of minimum {amount} sats to enable.",hide_empty_wallets:"Hide empty wallets",recheck:"Recheck",check:"Check",check_connection:"Check Connection",check_webhook:"Check Webhook",contributors:"Contributors",license:"License",reset_key:"Reset Key",reset_password:"Reset Password",border_choices:"Border Choices",select_all:"Select All",nfc_supported:"NFC Supported",nfc_not_supported:"NFC not Supported",expire_date:"Expire Date: ",hash:"Hash: ",welcome_lnbits:"Welcome to LNbits",setup_su_account:"Set up the Superuser account below.",create_ticker_converter:"Create Currency Ticker Converter",enable_audit:"Enable Audit",recommended:"Recommended",audit_desc:"Record HTTP requests according with the specified filters",audit_record_req:"Record Request Body",audit_record_warning:"Warning: ",audit_record_req_warning_1:"confidential data (like passwords) will be logged.",audit_record_req_warning_2:"the request body can have large size.",audit_record_use:"Use it with caution.",audit_ip:"Record IP Address",audit_ip_desc:"Record the IP address of the client",audit_path_params:"Record Path Parameters",audit_query_params:"Record Query Parameters",audit_http_methods:"Include HTTP Methods",audit_http_methods_hint:"List of HTTP methods to be included. Empty lists means all.",audit_http_methods_label:"HTTP Methods",audit_resp_codes:"Include HTTP Response Codes",audit_resp_codes_hint:"List of HTTP codes to be included (regex match). Empty lists means all. Eg: 4.*, 5.*",audit_resp_codes_label:"HTTP Response code (regex)",audit_paths:"Include Paths",audit_paths_hint:"List of paths to be included (regex match). Empty list means all.",audit_paths_label:"HTTP Path (regex)",audit_paths_exclude:"Exclude Paths",audit_paths_exclude_hint:"List of paths to be excluded (regex match). Empty list means none.",audit_paths_exclude_label:"HTTP Path (regex)",exchange_providers:"Exchange Providers",admin_extensions:"Admin Extensions",admin_extensions_label:"Admin extensions",admin_extensions_hint:"Extensions only user with admin privileges can use",user_default_extensions:"User Default Extensions",user_default_extensions_label:"User extensions",user_default_extensions_hint:"Extensions that will be enabled by default for the users.",extension_builder:"Extension Builder",extension_builder_manifest_url:"Extension Builder Manifest URL",extension_builder_manifest_url_hint:"URL to a JSON manifest file with extension builder details",miscellanous:"Miscellanous",misc_disable_extensions:"Disable Extensions",misc_disable_extensions_label:"Disable all extensions",misc_disable_extensions_builder:"Enable Extensions Builder",misc_disable_extensions_builder_label:"Enable Extensions Builder for non admin users.",misc_hide_api:"Hide API",misc_hide_api_label:"Hides wallet api, extensions can choose to honor",wallets_management:"Wallets Management",funding_source_info:"Funding Source Info",funding_source:"Funding Source: {wallet_class}",node_balance:"Node Balance: {balance} sats",lnbits_balance:"LNbits Balance: {balance} sats",funding_reserve_percent:"Reserve Percent: {percent} %",node_management:"Node Management",node_management_not_supported:"Node Management not supported by active funding source",toggle_node_ui:"Node UI",toggle_public_node_ui:"Public Node UI",toggle_transactions_node_ui:"Transactions Tab (Disable on large CLN nodes)",invoice_expiry:"Invoice Expiry",invoice_expiry_label:"Invoice expiry (seconds)",fee_reserve:"Fee Reserve",fee_reserve_percent:"Fee Reserve Percent",fee_reserve_msats:"Reserve fee in msats",reserve_fee_in_percent:"Reserve fee in percent",payment_wait_time:"Payment Wait Time (sec)",payment_wait_time_desc:"Wait time before marking an outgoing payment as pending. Default: 5s; raise for slow-settling invoices.",payment_wait_time_tooltip:"Controls how long LNbits waits for an outgoing payment attempt to confirm before marking it as pending. Higher values help when paying slow-settling invoices (e.g., HODL invoices, Boltz). The payment will be rechecked later and updated automatically or manually.",server_management:"Server Management",base_url:"Base URL",base_url_label:"Static/Base url for the server",authentication:"Authentication",auth_token_expiry_label:"Token expire minutes",auth_token_expiry_hint:"Time in minutes until the token expires",auth_allowed_methods_label:"Allowed authorization methods",auth_allowed_methods_hint:"Select authorization methods",auth_nostr_label:"Nostr Request URL",auth_nostr_hint:"Absolute URL that the clients will use to login.",auth_google_ci_label:"Google Client ID",auth_google_ci_hint:"Make sure that the authorized redirect URIs contain https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"GitHub Client ID",auth_gh_client_id_hint:"Make sure that the authorization callback URL is set to https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Client Secret",auth_keycloak_label:"Keycloak Discovery URL",auth_keycloak_ci_label:"Keycloak Client ID",auth_keycloak_ci_hint:"Make sure thant the authorization callback URL is set to https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Client Secret",auth_keycloak_custom_org_label:"Keycloak Custom Organization",auth_keycloak_custom_icon_label:"Keycloak Custom Icon (URL)",currency_settings:"Currency Settings",allowed_currencies:"Allowed Currencies",allowed_currencies_hint:"Limit the number of available fiat currencies",default_account_currency:"Default Account Currency",default_account_currency_hint:"Default currency for accounting",min_incoming_payment_amount:"Min Incoming Payment Amount",min_incoming_payment_amount_desc:"Minimum amount allowed for generating an invoice",max_incoming_payment_amount:"Max Incoming Payment Amount",max_incoming_payment_amount_desc:"Maximum amount allowed for generating an invoice",max_outgoing_payment_amount:"Max Outgoing Payment Amount",max_outgoing_payment_amount_desc:"Maximum amount allowed for making a payment",service_fee:"Service Fee",service_fee_label:"Service fee (%)",service_fee_hint:"Fee charged per tx (%)",service_fee_max:"Service Fee Max",service_fee_max_label:"Service fee max (sats)",service_fee_max_hint:"Max service fee to charge in (sats)",fee_wallet:"Fee Wallet",fee_wallet_label:"Fee wallet (wallet ID)",fee_wallet_hint:"Wallet ID to send funds to",disable_fee:"Disable Fee",disable_fee_internal:"Disable Service Fee for Internal Payments",disable_fee_internal_desc:"Disable Service Fee for Internal Lightning Payments",ui_management:"UI Management",ui_site_title:"Site Title",ui_changing_remove_lnbits_elements:" (changing will remove LNbits elements on the homepage and footer)",ui_site_tagline:"Site Tagline",ui_elements_enable:"Enable elements on homepage/footer",ui_elements_disable:"Disable elements on homepage/footer",ui_toggle_elements_tip:"Remove homepage elements like 'runs on' etc",ui_site_description:"Site Description",ui_site_description_hint:"Use plain text, Markdown, or raw HTML",ui_default_wallet_name:"Default Wallet Name",ui_default_theme:"Default Theme",lnbits_wallet:"LNbits wallet",denomination:"Denomination",denomination_hint:"The name for the FakeWallet token",denomination_error:"Denomination must be 3 characters, or `sats`",ui_qr_code_logo:"QR Code/Favicon Logo",ui_qr_code_logo_hint:"QR code and favicon logo url",ui_custom_image:"Custom Image",ui_custom_image_label:"URL to custom image",ui_custom_image_hint:"Image showed at homepage/login",ui_custom_badge:"Custom Badge",ui_custom_badge_label:"Custom Badge 'USE WITH CAUTION'",ui_custom_badge_color_label:"Custom Badge Color",themes:"Themes",themes_hint:"Choose themes available for users",custom_logo:"Custom Logo",custom_logo_hint:"URL to logo image",ad_space_title:"Ad Space Title",ad_space_title_label:"Supported by",ad_slots:"Advertisement Slots",ad_slots_hint:"Ad url and image filepaths in CSV format, extensions can choose to honor",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Ads Enabled",ads_disabled:"Ads Disabled",user_management:"User Management",admin_users:"Admin Users",admin_users_hint:"Users with admin privileges",admin_users_label:"User ID",allowed_users:"Allowed Users",allowed_users_hint:"Only these users can use LNbits",allowed_users_hint_feature:"Only these users can use {feature}",allowed_users_label:"User ID",allow_creation_user:"Allow creation of new users",allow_creation_user_desc:"Allow creation of new users on the index page",new_user_not_allowed:"Registration is disabled.",components:"Components",long_running_endpoints:"Top 5 Long Running Endpoints",http_request_methods:"HTTP Request Methods",http_response_codes:"HTTP Response Codes",request_details:"Request Details",http_request_details:"HTTP Request Details",payment_details:"Payment Details",payment_details_desc:"Detailed information about the payment",payments:"Payments",payment_show_internal:"Show Internal Payments",payment_chart_flow:"Monthly Payment Flow",payment_chart_status:"Payment Status",payment_chart_tx_per_wallet:"Transactions per Wallet (balance/count)",payment_details_back:"Back to Payments",payment_chart_tags:"Payments by Tags",payments_balance_in_out:"Balance In/Out",payments_count_in_out:"Count In/Out",payments_status_chart:"Status Chart",payments_tag_chart:"Tag Chart",payments_balance_chart:"Balance Chart",payments_wallets_chart:"Wallets Chart",payments_balance_in_out_chart:"Balance In/Out Chart",payments_count_in_out_chart:"Count In/Out Chart",reset_wallet_keys:"Reset Keys",reset_wallet_keys_desc:"Reset the API keys for this wallet. This will invalidate the current keys and generate new ones.",view_list:"View wallets as list",view_column:"View wallets as rows",filter_payments:"Filter payments",filter_labels:"Filter labels",filter_date:"Filter by date",websocket_example:"Websocket example",secret_key:"Secret Key",signing_secret:"Signing Secret",signing_secret_hint:"Signing secret for the webhook. Messages will be signed with this secret.",callback_success_url:"Callback Success URL",callback_success_url_hint:"The user will be redirected to this URL after the payment is successful",connected:"Connected",not_connected:"Not Connected",free:"Free",paid:"Paid",funding_source_retries:"Max Retries",funding_source_retries_desc:"Maximum number of retries for funding sources, before it falls back to VoidWallet.",add_label:"Add Label",label:"Label",labels:"Labels",label_filter:"Label Filter",no_labels_defined:"No labels defined yet",manage_labels:"Manage Labels",update_label:"Update Label",delete_label:"Delete Label",add_remove_labels:"Add or Remove Labels",payment_labels_updated:"Payment labels updated",color:"Color",sort:"Sort",sort_by:"Sort by"},window.localisation.es={confirm:"Sí",server:"Servidor",theme:"Tema",site_customisation:"Personalización del sitio",funding:"Financiación",users:"Usuarios",audit:"Auditoría",apps:"Aplicaciones",channels:"Canales",transactions:"Transacciones",dashboard:"Tablero de instrumentos",node:"Nodo",export_users:"Exportar Usuarios",no_users:"No se encontraron usuarios",total_capacity:"Capacidad Total",avg_channel_size:"Tamaño Medio del Canal",biggest_channel_size:"Tamaño del Canal Más Grande",smallest_channel_size:"Tamaño de canal más pequeño",number_of_channels:"Número de canales",active_channels:"Canales activos",connect_peer:"Conectar Par",connect:"Conectar",open_channel:"Canal Abierto",open:"Abrir",close_channel:"Cerrar canal",close:"Cerrar",restart:"Reiniciar el servidor",save:"Guardar",save_tooltip:"Guardar cambios",credit_debit:"Crédito / Débito",credit_hint:"Presione Enter para cargar la cuenta",credit_label:"Cargar {denomination}",credit_ok:"Éxito al acreditar/debitar fondos virtuales ({amount} sats). Los pagos dependen de los fondos reales en la fuente de financiación.",restart_tooltip:"Reinicie el servidor para aplicar los cambios",add_funds_tooltip:"Agregue fondos a una billetera.",reset_defaults:"Restablecer",reset_defaults_tooltip:"Borrar todas las configuraciones y restablecer a los valores predeterminados.",download_backup:"Descargar copia de seguridad de la base de datos",name_your_wallet:"Nombre de su billetera {name}",paste_invoice_label:"Pegue la factura aquí",lnbits_description:"Fácil de instalar y liviano, LNbits puede ejecutarse en cualquier fuente de financiación de la red Lightning y hasta LNbits mismo! Puede ejecutar LNbits para usted mismo o ofrecer una solución competente a otros. Cada billetera tiene su propia clave API y no hay límite para la cantidad de billeteras que puede crear. La capacidad de particionar fondos hace de LNbits una herramienta útil para la administración de fondos y como herramienta de desarrollo. Las extensiones agregan funcionalidad adicional a LNbits, por lo que puede experimentar con una variedad de tecnologías de vanguardia en la red Lightning. Lo hemos hecho lo más simple posible para desarrollar extensiones y, como un proyecto gratuito y de código abierto, animamos a las personas a que se desarrollen a sí mismas y envíen sus propios contribuciones.",export_to_phone:"Exportar a teléfono con código QR",export_to_phone_desc:"Este código QR contiene su URL de billetera con acceso completo. Puede escanearlo desde su teléfono para abrir su billetera allí.",wallet:"Billetera:",wallets:"Billeteras",add_wallet:"Agregar nueva billetera",delete_wallet:"Eliminar billetera",delete_wallet_desc:"Esta billetera completa se eliminará, los fondos son IRREVERSIBLES.",rename_wallet:"Cambiar el nombre de la billetera",update_name:"Actualizar nombre",fiat_tracking:"Seguimiento Fiat",currency:"Moneda",update_currency:"Actualizar moneda",press_to_claim:"Presione para reclamar Bitcoin",donate:"Donar",view_github:"Ver en GitHub",voidwallet_active:"¡VoidWallet está activo! Pagos desactivados",use_with_caution:"USAR CON CUIDADO - {name} Wallet aún está en BETA",service_fee:"Tarifa de servicio: {amount} % por transacción",service_fee_max:"Tarifa de servicio: {amount} % por transacción (máx {max} sats)",service_fee_tooltip:"Comisión de servicio cobrada por el administrador del servidor LNbits por cada transacción saliente",toggle_darkmode:"Cambiar modo oscuro",payment_reactions:"Reacciones de Pago",view_swagger_docs:"Ver documentación de API de LNbits Swagger",api_docs:"Documentación de API",api_keys_api_docs:"URL del nodo, claves de API y documentación de API",lnbits_version:"Versión de LNbits",runs_on:"Corre en",paste:"Pegar",paste_from_clipboard:"Pegar desde el portapapeles",paste_request:"Pegar solicitud",create_invoice:"Crear factura",camera_tooltip:"Utilice la cámara para escanear una factura / código QR",export_csv:"Exportar a CSV",chart_tooltip:"Mostrar gráfico",pending:"Pendiente",copy_invoice:"Copiar factura",withdraw_from:"Retirar de",cancel:"Cancelar",scan:"Escanear",read:"Leer",pay:"Pagar",memo:"Memo",date:"Fecha",payment_processing:"Procesando pago ...",not_enough_funds:"¡No hay suficientes fondos!",search_by_tag_memo_amount:"Buscar por etiqueta, memo, cantidad",invoice_waiting:"Factura esperando pago",payment_received:"Pago recibido",payment_sent:"Pago enviado",receive:"recibir",send:"enviar",outgoing_payment_pending:"Pago saliente pendiente",drain_funds:"Drenar fondos",drain_funds_desc:"Este es un código QR LNURL-withdraw para drenar todos los fondos de esta billetera. No lo comparta con nadie. Es compatible con balanceCheck y balanceNotify, por lo que su billetera puede continuar drenando los fondos de aquí después del primer drenaje.",i_understand:"Lo entiendo",copy_wallet_url:"Copiar URL de billetera",disclaimer_dialog_title:"¡Importante!",disclaimer_dialog:"La funcionalidad de inicio de sesión se lanzará en una actualización futura, por ahora, asegúrese de guardar esta página como marcador para acceder a su billetera en el futuro. Este servicio está en BETA y no asumimos ninguna responsabilidad por personas que pierdan el acceso a sus fondos.",no_transactions:"No hay transacciones todavía",manage:"Administrar",exchanges:"Intercambios",extensions:"Extensiones",no_extensions:"No tienes extensiones instaladas :(",created:"Creado",search_extensions:"Extensiones de búsqueda",extension_sources:"Fuentes de extensión",ext_sources_hint:"Repositorios desde donde se pueden descargar las extensiones",ext_sources_label:"URL de origen (utilice solo la fuente oficial de la extensión LNbits y fuentes en las que pueda confiar)",warning:"Advertencia",repository:"Repositorio",confirm_continue:"¿Está seguro de que desea continuar?",manage_extension_details:"Instalar/desinstalar extensión",install:"Instalar",uninstall:"Desinstalar",drop_db:"Eliminar datos",enable:"Habilitar",pay_to_enable:"Pagar para habilitar",enable_extension_details:"Habilitar extensión para el usuario actual",disable:"Deshabilitar",delete:"Eliminar",installed:"Instalado",activated:"Activado",deactivated:"Desactivado",release_notes:"Notas de la versión",activate_extension_details:"Hacer que la extensión esté disponible/no disponible para los usuarios",featured:"Destacado",all:"Todos",only_admins_can_install:"(Solo las cuentas de administrador pueden instalar extensiones)",admin_only:"Solo administradores",new_version:"Nueva Versión",extension_depends_on:"Depende de:",extension_rating_soon:"Calificaciones próximamente",extension_installed_version:"Versión instalada",extension_uninstall_warning:"Está a punto de eliminar la extensión para todos los usuarios.",uninstall_confirm:"Sí, desinstalar",extension_db_drop_info:"Todos los datos para la extensión se eliminarán permanentemente. ¡No hay manera de deshacer esta operación!",extension_db_drop_warning:"Está a punto de eliminar todos los datos para la extensión. Por favor, escriba el nombre de la extensión para continuar:",extension_required_lnbits_version:"Esta versión requiere al menos una versión de LNbits",min_version:"Mínimo (incluido)",max_version:"Máximo (excluido)",payment_hash:"Hash de pago",fee:"Cuota",amount:"Cantidad",amount_sats:"Cantidad (sats)",tag:"Etiqueta",unit:"Unidad",description:"Descripción",expiry:"Expiración",webhook:"Webhook",payment_proof:"Prueba de pago",update:"Actualizar",update_available:"¡Actualización {version} disponible!",latest_update:"Usted está en la última versión {version}.",notifications:"Notificaciones",no_notifications:"No hay notificaciones",notifications_disabled:"Las notificaciones de estado de LNbits están desactivadas.",enable_notifications:"Activar notificaciones",enable_notifications_desc:"Si está activado, buscará las últimas actualizaciones del estado de LNbits, como incidentes de seguridad y actualizaciones.",enable_watchdog_desc:"Si está activado, cambiará automáticamente su fuente de financiamiento a VoidWallet si su saldo es inferior al saldo de LNbits. Tendrá que activarlo manualmente después de una actualización.",watchdog_interval:"Intervalo de vigilancia",watchdog_interval_desc:"Con qué frecuencia la tarea de fondo debe verificar la señal de killswitch en el delta del watchdog [node_balance - lnbits_balance] (en minutos).",watchdog_delta:"Vigilante Delta",watchdog_delta_desc:"Límite antes de que el interruptor de apagado cambie la fuente de financiamiento a VoidWallet [lnbits_balance - node_balance > delta]",status:"Estado",notification_source:"Fuente de notificación",notification_source_label:"URL de origen (solo use la fuente oficial de estado de LNbits y fuentes en las que confíe)",more:"más",less:"menos",releases:"Lanzamientos",watchdog:"Perro guardián",server_logs:"Registros del Servidor",ip_blocker:"Bloqueador de IP",security:"Seguridad",security_tools:"Herramientas de seguridad",block_access_hint:"Bloquear acceso por IP",allow_access_hint:"Permitir acceso por IP (anulará las IPs bloqueadas)",enter_ip:"Ingrese la IP y presione enter",rate_limiter:"Limitador de tasa",wallet_limiter:"Limitador de Cartera",wallet_limit_max_withdraw_per_day:"Límite diario de retiro de la cartera en sats (0 para deshabilitar)",wallet_max_ballance:"Saldo máximo de la billetera en sats (0 para desactivar)",wallet_limit_secs_between_trans:"Mín. segs entre transacciones por cartera (0 para desactivar)",number_of_requests:"Número de solicitudes",time_unit:"Unidad de tiempo",minute:"minuto",second:"segundo",hour:"hora",disable_server_log:"Desactivar registro del servidor",enable_server_log:"Activar registro del servidor",coming_soon:"Función próximamente disponible",session_has_expired:"Tu sesión ha expirado. Por favor, inicia sesión de nuevo.",instant_access_question:"¿Quieres acceso instantáneo?",login_with_user_id:"Iniciar sesión con ID de usuario",or:"o",create_new_wallet:"Crear Nueva Cartera",login_to_account:"Inicie sesión en su cuenta",create_account:"Crear cuenta",account_settings:"Configuración de la cuenta",signin_with_nostr:"Continuar con Nostr",signin_with_google:"Inicia sesión con Google",signin_with_github:"Inicia sesión con GitHub",signin_with_keycloak:"Iniciar sesión con Keycloak",username_or_email:"Nombre de usuario o correo electrónico",password:"Contraseña",password_config:"Configuración de Contraseña",password_repeat:"Repetición de contraseña",change_password:"Cambiar contraseña",update_credentials:"Actualizar credenciales",update_pubkey:"Actualizar clave pública",set_password:"Establecer contraseña",invalid_password:"La contraseña debe tener al menos 8 caracteres.",login:"Iniciar sesión",register:"Registrarse",username:"Nombre de usuario",pubkey:"Clave pública",user_id:"Identificación de usuario",email:"Correo electrónico",first_name:"Nombre de pila",last_name:"Apellido",picture:"Imagen",verify_email:"Verifique el correo electrónico con",account:"Cuenta",update_account:"Actualizar cuenta",invalid_username:"Nombre de usuario inválido",auth_provider:"Proveedor de Autenticación",my_account:"Mi cuenta",back:"Atrás",logout:"Cerrar sesión",look_and_feel:"Apariencia",toggle_gradient:"Alternar degradado",gradient_background:"Fondo de gradiente",language:"Idioma",color_scheme:"Esquema de colores",admin_settings:"Configuración del administrador",extension_cost:"Esta versión requiere un pago mínimo de {cost} sats.",extension_paid_sats:"Ya has pagado {paid_sats} sats.",release_details_error:"No se pueden obtener los detalles de la versión.",pay_from_wallet:"Pagar desde la billetera",wallet_required:"Billetera *",show_qr:"Mostrar QR",retry_install:"Reintentar Instalación",new_payment:"Realizar nuevo pago",update_payment:"Actualizar Pago",already_paid_question:"¿Ya has pagado?",sell:"Vender",sell_require:"Solicitar pago para habilitar la extensión",sell_info:"La extensión {name} requiere un pago mínimo de {amount} sats para habilitar.",hide_empty_wallets:"Ocultar billeteras vacías",recheck:"Revisar de nuevo",contributors:"Colaboradores",license:"Licencia",reset_key:"Restablecer clave",reset_password:"Restablecer contraseña",border_choices:"Opciones de Borde",select_all:"Seleccionar todo",nfc_supported:"Compatible con NFC",nfc_not_supported:"NFC no compatible",expire_date:"Fecha de vencimiento:",hash:"Hash:",welcome_lnbits:"Bienvenido a LNbits",setup_su_account:"Configura la cuenta de Superusuario a continuación.",create_ticker_converter:"Crear Convertidor de Ticker de Moneda",enable_audit:"Habilitar auditoría",recommended:"Recomendado",audit_desc:"Registrar solicitudes HTTP de acuerdo con los filtros especificados",audit_record_req:"Registrar cuerpo de solicitud",audit_record_warning:"Advertencia:",audit_record_req_warning_1:"los datos confidenciales (como las contraseñas) serán registrados.",audit_record_req_warning_2:"el cuerpo de la solicitud puede tener un tamaño grande.",audit_record_use:"Úsalo con precaución.",audit_ip:"Registrar Dirección IP",audit_ip_desc:"Registra la dirección IP del cliente",audit_path_params:"Registrar parámetros de ruta",audit_query_params:"Registrar parámetros de consulta",audit_http_methods:"Incluye métodos HTTP",audit_http_methods_hint:"Lista de métodos HTTP a incluir. Las listas vacías significan todos.",audit_http_methods_label:"Métodos HTTP",audit_resp_codes:"Incluir Códigos de Respuesta HTTP",audit_resp_codes_hint:"Lista de códigos HTTP a incluir (coincidencia regex). Listas vacías significan todos. Ej: 4.*, 5.*",audit_resp_codes_label:"Código de respuesta HTTP (regex)",audit_paths:"Incluir rutas",audit_paths_hint:"Lista de rutas a incluir (coincidencia de expresión regular). Lista vacía significa todas.",audit_paths_label:"Ruta HTTP (regex)",audit_paths_exclude:"Excluir rutas",audit_paths_exclude_hint:"Lista de rutas a excluir (coincidencia de expresiones regulares). Lista vacía significa ninguna.",audit_paths_exclude_label:"Ruta HTTP (regex)",exchange_providers:"Proveedores de intercambio",admin_extensions:"Extensiones de Administración",admin_extensions_label:"Extensiones de administración",admin_extensions_hint:"Solo los usuarios con privilegios de administrador pueden usar extensiones.",user_default_extensions:"Extensiones predeterminadas del usuario",user_default_extensions_label:"Extensiones de usuario",user_default_extensions_hint:"Extensiones que estarán habilitadas de forma predeterminada para los usuarios.",miscellanous:"Misceláneo",misc_disable_extensions:"Desactivar extensiones",misc_disable_extensions_label:"Desactivar todas las extensiones",misc_hide_api:"Ocultar API",misc_hide_api_label:"Oculta la API de la billetera, las extensiones pueden optar por respetar",wallets_management:"Gestión de Carteras",funding_source_info:"Información sobre la Fuente de Financiamiento",funding_source:"Fuente de financiamiento: {wallet_class}",node_balance:"Balance de Nodo: {balance} sats",lnbits_balance:"Saldo de LNbits: {balance} sats",funding_reserve_percent:"Reserve Porcentaje: {percent} %",node_management:"Gestión de nodos",node_management_not_supported:"La gestión de nodos no es compatible con la fuente de financiación activa",toggle_node_ui:"Interfaz de usuario de nodo",toggle_public_node_ui:"Interfaz Pública de Nodo",toggle_transactions_node_ui:"Pestaña de transacciones (desactivar en nodos CLN grandes)",invoice_expiry:"Vencimiento de la Factura",invoice_expiry_label:"Expiración de la factura (segundos)",fee_reserve:"Reserva de tarifa",fee_reserve_msats:"Cuota de reserva en msats",fee_reserve_percent:"Tasa de reserva en porcentaje",server_management:"Gestión del Servidor",base_url:"URL base",base_url_label:"URL base estática para el servidor",authentication:"Autenticación",auth_token_expiry_label:"Minutos de vencimiento del token",auth_token_expiry_hint:"Tiempo en minutos hasta que el token expire",auth_allowed_methods_label:"Métodos de autorización permitidos",auth_allowed_methods_hint:"Seleccione métodos de autorización",auth_nostr_label:"URL de solicitud Nostr",auth_nostr_hint:"URL absoluto que los clientes utilizarán para iniciar sesión.",auth_google_ci_label:"ID de cliente de Google",auth_google_ci_hint:"Asegúrate de que los URIs de redirección autorizados contengan https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Secreto del Cliente de Google",auth_gh_client_id_label:"ID de cliente de GitHub",auth_gh_client_id_hint:"Asegúrate de que la URL de devolución de llamada de autorización esté configurada en https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Secreto del cliente de GitHub",auth_keycloak_label:"URL de descubrimiento de Keycloak",auth_keycloak_ci_label:"ID de cliente de Keycloak",auth_keycloak_ci_hint:"Asegúrate de que la URL de devolución de llamada de autorización esté configurada en https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Secreto del Cliente de Keycloak",currency_settings:"Configuración de moneda",allowed_currencies:"Monedas permitidas",allowed_currencies_hint:"Limite el número de monedas fiduciarias disponibles",default_account_currency:"Moneda predeterminada de la cuenta",default_account_currency_hint:"Moneda predeterminada para contabilidad",service_fee_label:"Tarifa de servicio (%)",service_fee_hint:"Tarifa cobrada por tx (%)",service_fee_max_label:"Tarifa de servicio máx (sats)",service_fee_max_hint:"Tarifa máxima por servicio a cobrar en (sats)",fee_wallet:"Billetera de Tarifas",fee_wallet_label:"Billetera de tarifas (ID de billetera)",fee_wallet_hint:"ID de la billetera a la que enviar fondos",disable_fee:"Desactivar tarifa",disable_fee_internal:"Desactivar tarifa de servicio para pagos internos",disable_fee_internal_desc:"Desactivar tarifa de servicio para pagos internos Lightning",ui_management:"Gestión de la interfaz de usuario",ui_site_title:"Título del Sitio",ui_site_tagline:"Lema del sitio",ui_elements_enable:"Habilitar elementos en la página de inicio",ui_elements_disable:"Desactivar elementos en la página de inicio",ui_toggle_elements_tip:"Eliminar elementos de la página de inicio como 'funciona en', etc.",ui_site_description:"Descripción del sitio",ui_site_description_hint:"Usa texto sin formato, Markdown o HTML sin procesar",ui_default_wallet_name:"Nombre predeterminado de la billetera",lnbits_wallet:"Cartera LNbits",denomination:"Denominación",denomination_hint:"El nombre para el token FakeWallet",ui_qr_code_logo:"Logo de código QR",ui_qr_code_logo_hint:"URL a la imagen del logo en el código QR",ui_custom_badge:"Insignia personalizada",ui_custom_badge_label:"Insignia personalizada 'USAR CON PRECAUCIÓN - La billetera LNbits aún está en BETA'",ui_custom_badge_color_label:"Color personalizado de insignia",themes:"Temas",themes_hint:"Elige los temas disponibles para los usuarios",custom_logo:"Logotipo personalizado",custom_logo_hint:"URL a la imagen del logo",ad_space_title:"Título del Espacio Publicitario",ad_space_title_label:"Respaldado por",ad_slots:"Espacios publicitarios",ad_slots_hint:"URL de anuncio y rutas de archivo de imagen en formato CSV, las extensiones pueden optar por respetar",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Anuncios habilitados",ads_disabled:"Anuncios desactivados",user_management:"Gestión de Usuarios",admin_users:"Usuarios Administradores",admin_users_hint:"Usuarios con privilegios de administrador",admin_users_label:"ID de usuario",allowed_users:"Usuarios Permitidos",allowed_users_hint:"Solo estos usuarios pueden usar LNbits",allowed_users_label:"ID de usuario",allow_creation_user:"Permitir la creación de nuevos usuarios",allow_creation_user_desc:"Permitir la creación de nuevos usuarios en la página de índice",components:"Componentes",long_running_endpoints:"Principales 5 puntos de conexión de larga duración",http_request_methods:"Métodos de solicitud HTTP",http_response_codes:"Códigos de Respuesta HTTP",request_details:"Detalles de la solicitud",http_request_details:"Detalles de la Solicitud HTTP"},window.localisation.fr={confirm:"Oui",server:"Serveur",theme:"Thème",site_customisation:"Personnalisation du site",funding:"Financement",users:"Utilisateurs",audit:"Audit",apps:"Applications",channels:"Canaux",transactions:"Transactions",dashboard:"Tableau de bord",node:"Noeud",export_users:"Exporter les utilisateurs",no_users:"Aucun utilisateur trouvé",total_capacity:"Capacité totale",avg_channel_size:"Taille moyenne du canal",biggest_channel_size:"Taille de canal maximale",smallest_channel_size:"Taille de canal la plus petite",number_of_channels:"Nombre de canaux",active_channels:"Canaux actifs",connect_peer:"Connecter un pair",connect:"Connecter",open_channel:"Ouvrir le canal",open:"Ouvrir",close_channel:"Fermer le canal",close:"Fermer",restart:"Redémarrer le serveur",save:"Enregistrer",save_tooltip:"Enregistrer vos modifications",credit_debit:"Crédit / Débit",credit_hint:"Appuyez sur Entrée pour créditer le compte",credit_label:"{denomination} à créditer",credit_ok:"Succès du crédit/débit des fonds virtuels ({amount} sats). Les paiements dépendent des fonds réels sur la source de financement.",restart_tooltip:"Redémarrez le serveur pour que les changements prennent effet",add_funds_tooltip:"Ajouter des fonds à un portefeuille.",reset_defaults:"Réinitialiser aux valeurs par défaut",reset_defaults_tooltip:"Supprimer tous les paramètres et les réinitialiser aux valeurs par défaut.",download_backup:"Télécharger la sauvegarde de la base de données",name_your_wallet:"Nommez votre portefeuille {name}",paste_invoice_label:"Coller une facture, une demande de paiement ou un code lnurl *",lnbits_description:"Facile à installer et léger, LNbits peut fonctionner sur n'importe quelle source de financement du réseau Lightning et même LNbits lui-même! Vous pouvez exécuter LNbits pour vous-même ou offrir facilement une solution de gardien pour les autres. Chaque portefeuille a ses propres clés API et il n'y a pas de limite au nombre de portefeuilles que vous pouvez créer. La capacité de partitionner les fonds rend LNbits un outil utile pour la gestion de l'argent et comme outil de développement. Les extensions ajoutent une fonctionnalité supplémentaire à LNbits afin que vous puissiez expérimenter une gamme de technologies de pointe sur le réseau Lightning. Nous avons rendu le développement d'extensions aussi simple que possible et, en tant que projet gratuit et open source, nous encourageons les gens à développer et à soumettre les leurs.",export_to_phone:"Exporter vers le téléphone avec un code QR",export_to_phone_desc:"Ce code QR contient l'URL de votre portefeuille avec un accès complet. Vous pouvez le scanner depuis votre téléphone pour ouvrir votre portefeuille depuis là-bas.",wallet:"Portefeuille :",wallets:"Portefeuilles",add_wallet:"Ajouter un nouveau portefeuille",delete_wallet:"Supprimer le portefeuille",delete_wallet_desc:"Ce portefeuille entier sera supprimé et les fonds seront IRRECUPERABLES.",rename_wallet:"Renommer le portefeuille",update_name:"Mettre à jour le nom",fiat_tracking:"Suivi Fiat",currency:"Devise",update_currency:"Mettre à jour la devise",press_to_claim:"Appuyez pour demander du Bitcoin",donate:"Donner",view_github:"Voir sur GitHub",voidwallet_active:"VoidWallet est actif! Paiements désactivés",use_with_caution:"UTILISER AVEC PRUDENCE - Le portefeuille {name} est toujours en version BETA",service_fee:"Frais de service : {amount} % par transaction",service_fee_max:"Frais de service : {amount} % par transaction (max {max} sats)",service_fee_tooltip:"Frais de service facturés par l'administrateur du serveur LNbits pour chaque transaction sortante",toggle_darkmode:"Basculer le mode sombre",payment_reactions:"Réactions de paiement",view_swagger_docs:"Voir les documentation de l'API Swagger de LNbits",api_docs:"Documentation de l'API",api_keys_api_docs:"URL du nœud, clés API et documentation API",lnbits_version:"Version de LNbits",runs_on:"Fonctionne sur",paste:"Coller",paste_from_clipboard:"Coller depuis le presse-papiers",paste_request:"Coller la requête",create_invoice:"Créer une facture",camera_tooltip:"Utiliser la caméra pour scanner une facture / un code QR",export_csv:"Exporter vers CSV",chart_tooltip:"Afficher le graphique",pending:"En attente",copy_invoice:"Copier la facture",withdraw_from:"Retirer de",cancel:"Annuler",scan:"Scanner",read:"Lire",pay:"Payer",memo:"Mémo",date:"Date",payment_processing:"Traitement du paiement...",not_enough_funds:"Fonds insuffisants !",search_by_tag_memo_amount:"Rechercher par tag, mémo, montant",invoice_waiting:"Facture en attente de paiement",payment_received:"Paiement reçu",payment_sent:"Paiement envoyé",receive:"recevoir",send:"envoyer",outgoing_payment_pending:"Paiement sortant en attente",drain_funds:"Vider les fonds",drain_funds_desc:"Il s'agit d'un code QR LNURL-withdraw pour tout aspirer de ce portefeuille. Ne le partagez avec personne. Il est compatible avec balanceCheck et balanceNotify, de sorte que votre portefeuille peut continuer à retirer les fonds continuellement à partir d'ici après le premier retrait.",i_understand:"J'ai compris",copy_wallet_url:"Copier l'URL du portefeuille",disclaimer_dialog_title:"Important !",disclaimer_dialog:"La fonctionnalité de connexion sera publiée dans une future mise à jour, pour l'instant, assurez-vous de mettre cette page en favori pour accéder à votre portefeuille ultérieurement ! Ce service est en BETA, et nous ne sommes pas responsables des personnes qui perdent l'accès à leurs fonds.",no_transactions:"Aucune transaction effectuée pour le moment",manage:"Gérer",exchanges:"Échanges",extensions:"Extensions",no_extensions:"Vous n'avez installé aucune extension :(",created:"Créé",search_extensions:"Rechercher des extensions",extension_sources:"Sources d'extension",ext_sources_hint:"Dépôts à partir desquels les extensions peuvent être téléchargées",ext_sources_label:"URL source (utilisez uniquement la source officielle de l'extension LNbits et des sources fiables)",warning:"Avertissement",repository:"Référentiel",confirm_continue:"Êtes-vous sûr de vouloir continuer ?",manage_extension_details:"Installer/désinstaller l'extension",install:"Installer",uninstall:"Désinstaller",drop_db:"Supprimer les données",enable:"Activer",pay_to_enable:"Payer pour activer",enable_extension_details:"Activer l'extension pour l'utilisateur actuel",disable:"Désactiver",delete:"Supprimer",installed:"Installé",activated:"Activé",deactivated:"Désactivé",release_notes:"Notes de version",activate_extension_details:"Rendre l'extension disponible/indisponible pour les utilisateurs",featured:"Mis en avant",all:"Tout",only_admins_can_install:"Seuls les comptes administrateurs peuvent installer des extensions",admin_only:"Réservé aux administrateurs",new_version:"Nouvelle version",extension_depends_on:"Dépend de :",extension_rating_soon:"Notes des utilisateurs à venir bientôt",extension_installed_version:"Version installée",extension_uninstall_warning:"Vous êtes sur le point de supprimer l'extension pour tous les utilisateurs.",uninstall_confirm:"Oui, Désinstaller",extension_db_drop_info:"Toutes les données pour l'extension seront supprimées de manière permanente. Il n'est pas possible d'annuler cette opération !",extension_db_drop_warning:"Vous êtes sur le point de supprimer toutes les données de l'extension. Veuillez taper le nom de l'extension pour continuer :",extension_required_lnbits_version:"Cette version nécessite au moins LNbits version",min_version:"Minimum (inclus)",max_version:"Maximum (exclu)",payment_hash:"Hash de paiement",fee:"Frais",amount:"Montant",amount_sats:"Montant (sats)",tag:"Étiqueter",unit:"Unité",description:"Description",expiry:"Expiration",webhook:"Webhook",payment_proof:"Preuve de paiement",update:"Mettre à jour",update_available:"Mise à jour {version} disponible !",latest_update:"Vous êtes sur la dernière version {version}.",notifications:"Notifications",no_notifications:"Aucune notification",notifications_disabled:"Les notifications de statut LNbits sont désactivées.",enable_notifications:"Activer les notifications",enable_notifications_desc:"Si activé, il récupérera les dernières mises à jour du statut LNbits, telles que les incidents de sécurité et les mises à jour.",enable_watchdog:"Activer le Watchdog",enable_watchdog_desc:"Si elle est activée, elle changera automatiquement votre source de financement en VoidWallet si votre solde est inférieur au solde LNbits. Vous devrez activer manuellement après une mise à jour.",watchdog_interval:"Intervalle du gardien",watchdog_interval_desc:"À quelle fréquence la tâche en arrière-plan doit-elle vérifier la présence d'un signal d'arrêt d'urgence dans le delta du gardien [node_balance - lnbits_balance] (en minutes).",watchdog_delta:"Chien de garde Delta",watchdog_delta_desc:"Limite avant que l'interrupteur d'arrêt ne change la source de financement pour VoidWallet [lnbits_balance - node_balance > delta]",status:"Statut",notification_source:"Source de notification",notification_source_label:"URL source (utilisez uniquement la source officielle de statut LNbits et des sources de confiance)",more:"plus",less:"moins",releases:"Versions",watchdog:"Chien de garde",server_logs:"Journaux du serveur",ip_blocker:"Bloqueur d'IP",security:"Sécurité",security_tools:"Outils de sécurité",block_access_hint:"Bloquer l'accès par IP",allow_access_hint:"Autoriser l'accès par IP (cela passera outre les IP bloquées)",enter_ip:"Entrez l'adresse IP et appuyez sur Entrée",rate_limiter:"Limiteur de débit",wallet_limiter:"Limiteur de portefeuille",wallet_limit_max_withdraw_per_day:"Retrait quotidien maximum du portefeuille en sats (0 pour désactiver)",wallet_max_ballance:"Solde maximum du portefeuille en sats (0 pour désactiver)",wallet_limit_secs_between_trans:"Minutes et secondes entre les transactions par portefeuille (0 pour désactiver)",number_of_requests:"Nombre de requêtes",time_unit:"Unité de temps",minute:"minute",second:"seconde",hour:"heure",disable_server_log:"Désactiver le journal du serveur",enable_server_log:"Activer le journal du serveur",coming_soon:"Fonctionnalité à venir bientôt",session_has_expired:"Votre session a expiré. Veuillez vous reconnecter.",instant_access_question:"Voulez-vous un accès instantané ?",login_with_user_id:"Connexion avec l'identifiant utilisateur",or:"ou",create_new_wallet:"Créer un nouveau portefeuille",login_to_account:"Connectez-vous à votre compte",create_account:"Créer un compte",account_settings:"Paramètres du compte",signin_with_nostr:"Continuer avec Nostr",signin_with_google:"Connectez-vous avec Google",signin_with_github:"Connectez-vous avec GitHub",signin_with_keycloak:"Connectez-vous avec Keycloak",username_or_email:"Nom d'utilisateur ou e-mail",password:"Mot de passe",password_config:"Configuration du mot de passe",password_repeat:"Répétition du mot de passe",change_password:"Changer le mot de passe",update_credentials:"Mettre à jour les informations d'identification",update_pubkey:"Mettre à jour la clé publique",set_password:"Définir le mot de passe",invalid_password:"Le mot de passe doit comporter au moins 8 caractères",login:"Connexion",register:"Inscrire",username:"Nom d'utilisateur",pubkey:"Clé publique",user_id:"Identifiant utilisateur",email:"E-mail",first_name:"Prénom",last_name:"Nom de famille",picture:"Image",verify_email:"Vérifiez l'e-mail avec",account:"Compte",update_account:"Mettre à jour le compte",invalid_username:"Nom d'utilisateur invalide",auth_provider:"Fournisseur d'authentification",my_account:"Mon compte",back:"Retour",logout:"Déconnexion",look_and_feel:"Apparence",toggle_gradient:"Basculer le dégradé",gradient_background:"Fond en dégradé",language:"Langue",color_scheme:"Schéma de couleurs",admin_settings:"Paramètres administrateur",extension_cost:"Cette version nécessite un paiement minimum de {cost} sats.",extension_paid_sats:"Vous avez déjà payé {paid_sats} sats.",release_details_error:"Impossible d'obtenir les détails de la version.",pay_from_wallet:"Payer depuis le portefeuille",wallet_required:"Portefeuille *",show_qr:"Afficher le QR",retry_install:"Réessayer l'installation",new_payment:"Effectuer un nouveau paiement",update_payment:"Mettre à jour le paiement",already_paid_question:"Avez-vous déjà payé ?",sell:"Vendre",sell_require:"Demander un paiement pour activer l'extension",sell_info:"L'extension {name} nécessite un paiement minimum de {amount} sats pour être activée.",hide_empty_wallets:"Masquer les portefeuilles vides",recheck:"Revérifier",contributors:"Contributeurs",license:"Licence",reset_key:"Réinitialiser la clé",reset_password:"Réinitialiser le mot de passe",border_choices:"Choix de bordure",select_all:"Sélectionner tout",nfc_supported:"NFC pris en charge",nfc_not_supported:"NFC non pris en charge",expire_date:"Date d'expiration :",hash:"Hash :",welcome_lnbits:"Bienvenue à LNbits",setup_su_account:"Configurez le compte Superuser ci-dessous.",create_ticker_converter:"Créer un convertisseur de code de devise",enable_audit:"Activer l'audit",recommended:"Recommandé",audit_desc:"Enregistrer les requêtes HTTP selon les filtres spécifiés",audit_record_req:"Enregistrer le corps de la demande",audit_record_warning:"Avertissement :",audit_record_req_warning_1:"les données confidentielles (comme les mots de passe) seront enregistrées.",audit_record_req_warning_2:"le corps de la requête peut être de grande taille.",audit_record_use:"Utilisez-le avec précaution.",audit_ip:"Enregistrer l'adresse IP",audit_ip_desc:"Enregistrer l'adresse IP du client",audit_path_params:"Enregistrer les paramètres de chemin",audit_query_params:"Enregistrer les paramètres de la requête",audit_http_methods:"Inclure les méthodes HTTP",audit_http_methods_hint:"Liste des méthodes HTTP à inclure. Listes vides signifie toutes.",audit_http_methods_label:"Méthodes HTTP",audit_resp_codes:"Inclure les codes de réponse HTTP",audit_resp_codes_hint:"Liste des codes HTTP à inclure (correspondance regex). Les listes vides signifient tout. Ex : 4.*, 5.*",audit_resp_codes_label:"Code de réponse HTTP (regex)",audit_paths:"Inclure des chemins",audit_paths_hint:"Liste des chemins à inclure (correspondance regex). Liste vide signifie tout.",audit_paths_label:"Chemin HTTP (regex)",audit_paths_exclude:"Exclure les chemins",audit_paths_exclude_hint:"Liste des chemins à exclure (correspondance regex). Liste vide signifie aucun.",audit_paths_exclude_label:"Chemin HTTP (regex)",exchange_providers:"Fournisseurs d'échange",admin_extensions:"Extensions d'administration",admin_extensions_label:"Extensions d'administration",admin_extensions_hint:"Seuls les utilisateurs avec des privilèges d'administrateur peuvent utiliser les extensions.",user_default_extensions:"Extensions par défaut de l'utilisateur",user_default_extensions_label:"Extensions utilisateur",user_default_extensions_hint:"Extensions qui seront activées par défaut pour les utilisateurs.",miscellanous:"Divers",misc_disable_extensions:"Désactiver les extensions",misc_disable_extensions_label:"Désactiver toutes les extensions",misc_hide_api:"Masquer l'API",misc_hide_api_label:"Masque l'API du portefeuille, les extensions peuvent choisir de respecter",wallets_management:"Gestion des portefeuilles",funding_source_info:"Informations sur la source de financement",funding_source:"Source de financement : {wallet_class}",node_balance:"Solde du nœud : {balance} sats",lnbits_balance:"Solde LNbits : {balance} sats",funding_reserve_percent:"Pourcentage de Réserve : {percent} %",node_management:"Gestion des nœuds",node_management_not_supported:"La gestion des nœuds n'est pas prise en charge par la source de financement active",toggle_node_ui:"Interface utilisateur de nœud",toggle_public_node_ui:"Interface utilisateur du nœud public",toggle_transactions_node_ui:"Onglet des transactions (Désactiver sur les grands nœuds CLN)",invoice_expiry:"Expiration de la facture",invoice_expiry_label:"Expiration de la facture (secondes)",fee_reserve:"Réserve de frais",fee_reserve_msats:"Frais de réservation en msats",fee_reserve_percent:"Frais de réservation en pourcentage",server_management:"Gestion de serveur",base_url:"URL de base",base_url_label:"URL statique/de base pour le serveur",authentication:"Authentification",auth_token_expiry_label:"Durée d'expiration du jeton (en minutes)",auth_token_expiry_hint:"Durée en minutes avant l'expiration du jeton",auth_allowed_methods_label:"Méthodes d'autorisation autorisées",auth_allowed_methods_hint:"Sélectionnez les méthodes d'autorisation",auth_nostr_label:"URL de requête Nostr",auth_nostr_hint:"URL absolue que les clients utiliseront pour se connecter.",auth_google_ci_label:"ID Client Google",auth_google_ci_hint:"Assurez-vous que les URIs de redirection autorisées contiennent https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Secret client Google",auth_gh_client_id_label:"Identifiant client GitHub",auth_gh_client_id_hint:"Assurez-vous que l'URL de rappel d'autorisation est définie sur https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Secret Client GitHub",auth_keycloak_label:"URL de découverte Keycloak",auth_keycloak_ci_label:"ID Client Keycloak",auth_keycloak_ci_hint:"Assurez-vous que l'URL de rappel d'autorisation est définie sur https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Secret client Keycloak",currency_settings:"Paramètres de devise",allowed_currencies:"Devises autorisées",allowed_currencies_hint:"Limiter le nombre de devises fiduciaires disponibles",default_account_currency:"Devise par défaut du compte",default_account_currency_hint:"Devise par défaut pour la comptabilité",service_fee_label:"Frais de service (%)",service_fee_hint:"Frais facturés par tx (%)",service_fee_max_label:"Frais de service max (sats)",service_fee_max_hint:"Frais de service maximum à facturer en (sats)",fee_wallet:"Portefeuille de frais",fee_wallet_label:"Portefeuille de frais (ID de portefeuille)",fee_wallet_hint:"Identifiant de portefeuille pour envoyer des fonds à",disable_fee:"Désactiver les frais",disable_fee_internal:"Désactiver les frais de service pour les paiements internes",disable_fee_internal_desc:"Désactiver les frais de service pour les paiements Lightning internes",ui_management:"Gestion de l'interface utilisateur",ui_site_title:"Titre du site",ui_site_tagline:"Slogan du site",ui_elements_enable:"Activer les éléments sur la page d'accueil",ui_elements_disable:"Désactiver les éléments sur la page d'accueil",ui_toggle_elements_tip:"Supprimer les éléments de la page d'accueil comme 'fonctionne avec', etc.",ui_site_description:"Description du site",ui_site_description_hint:"Utilisez du texte brut, du Markdown ou du HTML brut",ui_default_wallet_name:"Nom par Défaut du Portefeuille",lnbits_wallet:"Portefeuille LNbits",denomination:"Dénomination",denomination_hint:"Le nom du jeton FakeWallet",ui_qr_code_logo:"Logo de code QR",ui_qr_code_logo_hint:"URL de l'image du logo dans le code QR",ui_custom_badge:"Badge personnalisé",ui_custom_badge_label:"Badge personnalisé 'À UTILISER AVEC PRÉCAUTION - Le portefeuille LNbits est encore en BÊTA'",ui_custom_badge_color_label:"Couleur de badge personnalisée",themes:"Thèmes",themes_hint:"Choisissez des thèmes disponibles pour les utilisateurs",custom_logo:"Logo personnalisé",custom_logo_hint:"URL de l'image du logo",ad_space_title:"Titre de l'espace publicitaire",ad_space_title_label:"Soutenu par",ad_slots:"Emplacements publicitaires",ad_slots_hint:"URL de l'annonce et chemins des fichiers image au format CSV, les extensions peuvent choisir de respecter",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Annonces activées",ads_disabled:"Publicités désactivées",user_management:"Gestion des utilisateurs",admin_users:"Utilisateurs administrateurs",admin_users_hint:"Utilisateurs avec des privilèges d'administration",admin_users_label:"Identifiant utilisateur",allowed_users:"Utilisateurs autorisés",allowed_users_hint:"Seuls ces utilisateurs peuvent utiliser LNbits",allowed_users_label:"ID utilisateur",allow_creation_user:"Autoriser la création de nouveaux utilisateurs",allow_creation_user_desc:"Permettre la création de nouveaux utilisateurs sur la page d’index",components:"Composants",long_running_endpoints:"Top 5 points de terminaison longue durée",http_request_methods:"Méthodes de requête HTTP",http_response_codes:"Codes de réponse HTTP",request_details:"Détails de la demande",http_request_details:"Détails de la requête HTTP"},window.localisation.it={confirm:"Sì",server:"Server",theme:"Tema",site_customisation:"Personalizzazione del sito",funding:"Funding",users:"Utenti",audit:"Verifica",apps:"Applicazioni",channels:"Canali",transactions:"Transazioni",dashboard:"Pannello di controllo",node:"Interruttore",export_users:"Esporta utenti",no_users:"Nessun utente trovato",total_capacity:"Capacità Totale",avg_channel_size:"Dimensione media del canale",biggest_channel_size:"Dimensione del canale più grande",smallest_channel_size:"Dimensione Più Piccola del Canale",number_of_channels:"Numero di Canali",active_channels:"Canali Attivi",connect_peer:"Connetti Peer",connect:"Connetti",open_channel:"Canale aperto",open:"Apri",close_channel:"Chiudi Canale",close:"Chiudi",restart:"Riavvia il server",save:"Salva",save_tooltip:"Salva le modifiche",credit_debit:"Credito / Debito",credit_hint:"Premere Invio per accreditare i fondi",credit_label:"{denomination} da accreditare",credit_ok:"Credito/addebito riuscito di fondi virtuali ({amount} sats). I pagamenti dipendono dai fondi effettivi sulla fonte di finanziamento.",restart_tooltip:"Riavvia il server affinché le modifiche abbiano effetto",add_funds_tooltip:"Aggiungere fondi a un portafoglio",reset_defaults:"Ripristina le impostazioni predefinite",reset_defaults_tooltip:"Cancella tutte le impostazioni e ripristina i valori predefiniti",download_backup:"Scarica il backup del database",name_your_wallet:"Dai un nome al tuo portafoglio {name}",paste_invoice_label:"Incolla una fattura, una richiesta di pagamento o un codice lnurl *",lnbits_description:"Leggero e facile da configurare, LNbits può funzionare su qualsiasi fonte di finanziamento Lightning Network e persino LNbits stesso! Potete gestire LNbits per conto vostro o offrire facilmente una soluzione di custodia per altri. Ogni portafoglio ha le proprie chiavi API e non c'è limite al numero di portafogli che si possono creare. La possibilità di suddividere i fondi rende LNbits uno strumento utile per la gestione del denaro e come strumento di sviluppo. Le estensioni aggiungono ulteriori funzionalità a LNbits, consentendo di sperimentare una serie di tecnologie all'avanguardia sulla rete Lightning. Abbiamo reso lo sviluppo delle estensioni il più semplice possibile e, in quanto progetto libero e open-source, incoraggiamo le persone a sviluppare e inviare le proprie",export_to_phone:"Esportazione su telefono con codice QR",export_to_phone_desc:"Questo codice QR contiene l'URL del portafoglio con accesso da amministratore. È possibile scansionarlo dal telefono per aprire il portafoglio da lì.",wallet:"Portafoglio:",wallets:"Portafogli",add_wallet:"Aggiungi un nuovo portafoglio",delete_wallet:"Elimina il portafoglio",delete_wallet_desc:"L'intero portafoglio sarà cancellato, i fondi saranno irrecuperabili",rename_wallet:"Rinomina il portafoglio",update_name:"Aggiorna il nome",fiat_tracking:"Tracciamento Fiat",currency:"Valuta",update_currency:"Aggiorna valuta",press_to_claim:"Premi per richiedere bitcoin",donate:"Donazioni",view_github:"Visualizza su GitHub",voidwallet_active:"VoidWallet è attivo! Pagamenti disabilitati",use_with_caution:"USARE CON CAUTELA - {name} portafoglio è ancora in BETA",service_fee:"Commissione di servizio: {amount} % per transazione",service_fee_max:"Commissione di servizio: {amount} % per transazione (max {max} sats)",service_fee_tooltip:"Commissione di servizio addebitata dall'amministratore del server LNbits per ogni transazione in uscita",toggle_darkmode:"Attiva la modalità notturna",payment_reactions:"Reazioni al Pagamento",view_swagger_docs:"Visualizza i documentazione dell'API Swagger di LNbits",api_docs:"Documentazione dell'API",api_keys_api_docs:"URL del nodo, chiavi API e documentazione API",lnbits_version:"Versione di LNbits",runs_on:"Esegue su",paste:"Incolla",paste_from_clipboard:"Incolla dagli appunti",paste_request:"Richiesta di pagamento",create_invoice:"Crea fattura",camera_tooltip:"Usa la fotocamera per scansionare la fattura/QR",export_csv:"Esporta CSV",chart_tooltip:"Mostra grafico",pending:"In attesa",copy_invoice:"Copia fattura",withdraw_from:"Prelevare da",cancel:"Annulla",scan:"Scansiona",read:"Leggi",pay:"Paga",memo:"Memo",date:"Dati",payment_processing:"Elaborazione pagamento...",not_enough_funds:"Non ci sono abbastanza fondi!",search_by_tag_memo_amount:"Cerca per tag, memo, importo...",invoice_waiting:"Fattura in attesa di pagamento",payment_received:"Pagamento ricevuto",payment_sent:"Pagamento inviato",receive:"ricevere",send:"inviare",outgoing_payment_pending:"Pagamento in uscita in attesa",drain_funds:"Fondi di drenaggio",drain_funds_desc:"Questo è un codice QR LNURL-withdraw per prelevare tutti i fondi da questo portafoglio. Non condividerlo con nessuno. È compatibile con balanceCheck e balanceNotify, di conseguenza il vostro portafoglio può continuare a prelevare continuamente i fondi da qui dopo il primo prelievo",i_understand:"Ho capito",copy_wallet_url:"Copia URL portafoglio",disclaimer_dialog_title:"Importante!",disclaimer_dialog:"La funzionalità di login sarà rilasciata in un futuro aggiornamento; per ora, assicuratevi di salvare tra i preferiti questa pagina per accedere nuovamente in futuro a questo portafoglio! Questo servizio è in fase BETA e non ci assumiamo alcuna responsabilità per la perdita all'accesso dei fondi",no_transactions:"Nessuna transazione effettuata",manage:"Gestisci",exchanges:"Scambi",extensions:"Estensioni",no_extensions:"Non ci sono estensioni installate :(",created:"Creato",search_extensions:"Estensioni di ricerca",extension_sources:"Fonti di estensione",ext_sources_hint:"Repository da cui è possibile scaricare le estensioni",ext_sources_label:"URL di origine (utilizzare solo la fonte ufficiale dell'estensione LNbits e fonti affidabili)",warning:"Attenzione",repository:"Deposito",confirm_continue:"Sei sicuro di voler continuare?",manage_extension_details:"Installa/disinstalla estensione",install:"Installare",uninstall:"Disinstalla",drop_db:"Rimuovi Dati",enable:"Abilita",pay_to_enable:"Paga per abilitare",enable_extension_details:"Attiva l'estensione per l'utente corrente",disable:"Disabilita",delete:"Elimina",installed:"Installato",activated:"Attivato",deactivated:"Disattivato",release_notes:"Note di Rilascio",activate_extension_details:"Rendi l'estensione disponibile/non disponibile per gli utenti",featured:"In primo piano",all:"Tutto",only_admins_can_install:"Solo gli account amministratore possono installare estensioni.",admin_only:"Solo amministratore",new_version:"Nuova Versione",extension_depends_on:"Dipende da:",extension_rating_soon:"Valutazioni in arrivo",extension_installed_version:"Versione installata",extension_uninstall_warning:"Stai per rimuovere l'estensione per tutti gli utenti.",uninstall_confirm:"Sì, Disinstalla",extension_db_drop_info:"Tutti i dati relativi all'estensione saranno cancellati permanentemente. Non c'è modo di annullare questa operazione!",extension_db_drop_warning:"Stai per rimuovere tutti i dati per l'estensione. Digita il nome dell'estensione per continuare:",extension_required_lnbits_version:"Questa versione richiede almeno la versione LNbits",min_version:"Minimo (incluso)",max_version:"Massimo (escluso)",payment_hash:"Hash del pagamento",fee:"Tariffa",amount:"Importo",amount_sats:"Importo (sats)",tag:"Etichetta",unit:"Unità",description:"Descrizione",expiry:"Scadenza",webhook:"Webhook",payment_proof:"Prova di pagamento",update:"Aggiorna",update_available:"Aggiornamento {version} disponibile!",latest_update:"Sei sulla versione più recente {version}.",notifications:"Notifiche",no_notifications:"Nessuna notifica",notifications_disabled:"Le notifiche di stato di LNbits sono disattivate.",enable_notifications:"Attiva le notifiche",enable_notifications_desc:"Se attivato, recupererà gli ultimi aggiornamenti sullo stato di LNbits, come incidenti di sicurezza e aggiornamenti.",enable_watchdog:"Attiva Watchdog",enable_watchdog_desc:"Se abilitato, cambierà automaticamente la tua fonte di finanziamento in VoidWallet se il tuo saldo è inferiore al saldo LNbits. Dovrai abilitarlo manualmente dopo un aggiornamento.",watchdog_interval:"Intervallo Watchdog",watchdog_interval_desc:"Quanto spesso il task in background dovrebbe controllare un segnale di killswitch nel delta del watchdog [node_balance - lnbits_balance] (in minuti).",watchdog_delta:"Guardiano Delta",watchdog_delta_desc:"Limite prima che l'interruttore di sicurezza modifichi la fonte di finanziamento in VoidWallet [lnbits_balance - node_balance > delta]",status:"Stato",notification_source:"Sorgente di notifica",notification_source_label:"URL sorgente (utilizzare solo la fonte ufficiale di stato LNbits e fonti di cui ti puoi fidare)",more:"più",less:"meno",releases:"Pubblicazioni",watchdog:"Cane da guardia",server_logs:"Registri del server",ip_blocker:"Blocco IP",security:"Sicurezza",security_tools:"Strumenti di sicurezza",block_access_hint:"Blocca l'accesso per IP",allow_access_hint:"Consenti l'accesso per IP (sovrascriverà gli IP bloccati)",enter_ip:"Inserisci l'IP e premi invio",rate_limiter:"Limitatore di frequenza",wallet_limiter:"Limitatore del Portafoglio",wallet_limit_max_withdraw_per_day:"Prelievo massimo giornaliero dal portafoglio in sats (0 per disabilitare)",wallet_max_ballance:"Saldo massimo del portafoglio in sats (0 per disabilitare)",wallet_limit_secs_between_trans:"Minuti e secondi tra transazioni per portafoglio (0 per disabilitare)",number_of_requests:"Numero di richieste",time_unit:"Unità di tempo",minute:"minuto",second:"secondo",hour:"ora",disable_server_log:"Disabilita Registro Server",enable_server_log:"Attiva Registro Server",coming_soon:"Caratteristica in arrivo prossimamente",session_has_expired:"La tua sessione è scaduta. Per favore, effettua nuovamente il login.",instant_access_question:"Vuoi accesso immediato?",login_with_user_id:"Accedi con ID utente",or:"oppure",create_new_wallet:"Crea nuovo portafoglio",login_to_account:"Accedi al tuo account",create_account:"Crea un account",account_settings:"Impostazioni dell'account",signin_with_nostr:"Continua con Nostr",signin_with_google:"Accedi con Google",signin_with_github:"Accedi con GitHub",signin_with_keycloak:"Accedi con Keycloak",username_or_email:"Nome utente o Email",password:"Password",password_config:"Configurazione della password",password_repeat:"Ripeti la password",change_password:"Cambia Password",update_credentials:"Aggiorna credenziali",update_pubkey:"Aggiorna chiave pubblica",set_password:"Imposta password",invalid_password:"La password deve contenere almeno 8 caratteri",login:"Accesso",register:"Registrati",username:"Nome utente",pubkey:"Chiave pubblica",user_id:"ID utente",email:"Email",first_name:"Nome",last_name:"Cognome",picture:"Immagine",verify_email:"Verifica email con",account:"Conto",update_account:"Aggiorna Account",invalid_username:"Nome utente non valido",auth_provider:"Provider di Autenticazione",my_account:"Il mio account",back:"Indietro",logout:"Esci",look_and_feel:"Aspetto e Comportamento",toggle_gradient:"Attiva/disattiva gradiente",gradient_background:"Sfondo sfumato",language:"Lingua",color_scheme:"Schema dei colori",admin_settings:"Impostazioni di amministrazione",extension_cost:"Questa versione richiede un pagamento minimo di {cost} satoshi.",extension_paid_sats:"Hai già pagato {paid_sats} sats.",release_details_error:"Impossibile ottenere i dettagli della versione.",pay_from_wallet:"Paga dal Portafoglio",wallet_required:"Portafoglio *",show_qr:"Mostra QR",retry_install:"Riprova Installazione",new_payment:"Effettua Nuovo Pagamento",update_payment:"Aggiorna Pagamento",already_paid_question:"Hai già pagato?",sell:"Vendi",sell_require:"Chiedi il pagamento per abilitare l'estensione",sell_info:"L'estensione {name} richiede un pagamento minimo di {amount} sats per essere abilitata.",hide_empty_wallets:"Nascondi portafogli vuoti",recheck:"Ricontrolla",contributors:"Contributori",license:"Licenza",reset_key:"Reimposta Chiave",reset_password:"Reimposta password",border_choices:"Scelte del bordo",select_all:"Seleziona tutto",nfc_supported:"Supportato NFC",nfc_not_supported:"NFC non supportato",expire_date:"Data di scadenza:",hash:"Hash:",welcome_lnbits:"Benvenuto in LNbits",setup_su_account:"Configura l'account Superuser qui sotto.",create_ticker_converter:"Crea Convertitore di Simboli di Valuta",enable_audit:"Abilita controllo",recommended:"Consigliato",audit_desc:"Registrare le richieste HTTP secondo i filtri specificati",audit_record_req:"Registra il corpo della richiesta",audit_record_warning:"Avvertimento:",audit_record_req_warning_1:"I dati riservati (come le password) verranno registrati.",audit_record_req_warning_2:"il corpo della richiesta può avere grandi dimensioni.",audit_record_use:"Usalo con cautela.",audit_ip:"Registrare l'indirizzo IP",audit_ip_desc:"Registra l'indirizzo IP del cliente",audit_path_params:"Registra i parametri del percorso",audit_query_params:"Registrare i parametri di query",audit_http_methods:"Includi i metodi HTTP",audit_http_methods_hint:"Elenco di metodi HTTP da includere. Liste vuote significano tutti.",audit_http_methods_label:"Metodi HTTP",audit_resp_codes:"Includere codici di risposta HTTP",audit_resp_codes_hint:"Elenco dei codici HTTP da includere (corrispondenza regex). Liste vuote significano tutto. Ad esempio: 4.*, 5.*",audit_resp_codes_label:"Codice di risposta HTTP (regex)",audit_paths:"Includi percorsi",audit_paths_hint:"Elenco dei percorsi da includere (corrispondenza regex). Elenco vuoto significa tutto.",audit_paths_label:"Percorso HTTP (regex)",audit_paths_exclude:"Escludi percorsi",audit_paths_exclude_hint:"Elenco dei percorsi da escludere (corrispondenza regex). Un elenco vuoto significa nessuno.",audit_paths_exclude_label:"Percorso HTTP (regex)",exchange_providers:"Fornitori di scambio",admin_extensions:"Estensioni Admin",admin_extensions_label:"Estensioni amministrative",admin_extensions_hint:"Solo un utente con privilegi di amministratore può utilizzare le estensioni.",user_default_extensions:"Estensioni predefinite dell'utente",user_default_extensions_label:"Estensioni utente",user_default_extensions_hint:"Estensioni che saranno abilitate di default per gli utenti.",miscellanous:"Varie",misc_disable_extensions:"Disabilita estensioni",misc_disable_extensions_label:"Disabilita tutte le estensioni",misc_hide_api:"Nascondi API",misc_hide_api_label:"Nasconde l'api del portafoglio, le estensioni possono scegliere di onorare",wallets_management:"Gestione dei portafogli",funding_source_info:"Informazioni sulla fonte di finanziamento",funding_source:"Fonte di finanziamento: {wallet_class}",node_balance:"Saldo Nodo: {balance} sats",lnbits_balance:"Saldo LNbits: {balance} sats",funding_reserve_percent:"Riserva Percentuale: {percent} %",node_management:"Gestione dei nodi",node_management_not_supported:"La gestione dei nodi non è supportata dalla fonte di finanziamento attiva.",toggle_node_ui:"Interfaccia utente del nodo",toggle_public_node_ui:"Interfaccia Utente Nodo Pubblico",toggle_transactions_node_ui:"Scheda Transazioni (Disabilita su nodi CLN grandi)",invoice_expiry:"Scadenza fattura",invoice_expiry_label:"Scadenza fattura (secondi)",fee_reserve:"Riserva delle commissioni",fee_reserve_msats:"Tariffa di prenotazione in msats",fee_reserve_percent:"Commissione di riserva in percentuale",server_management:"Gestione server",base_url:"URL di base",base_url_label:"URL statica/base per il server",authentication:"Autenticazione",auth_token_expiry_label:"Minuti di scadenza del token",auth_token_expiry_hint:"Tempo in minuti fino alla scadenza del token",auth_allowed_methods_label:"Metodi di autorizzazione consentiti",auth_allowed_methods_hint:"Seleziona i metodi di autorizzazione",auth_nostr_label:"URL richiesta Nostr",auth_nostr_hint:"URL assoluto che i clienti utilizzeranno per accedere.",auth_google_ci_label:"ID client di Google",auth_google_ci_hint:"Assicurati che gli URI di reindirizzamento autorizzati contengano https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"ID client di GitHub",auth_gh_client_id_hint:"Assicurati che l'URL di callback dell'autorizzazione sia impostato su https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Segreto Client GitHub",auth_keycloak_label:"URL di individuazione di Keycloak",auth_keycloak_ci_label:"ID client di Keycloak",auth_keycloak_ci_hint:"Assicurati che l'URL di callback dell'autorizzazione sia impostato su https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Client Secret",currency_settings:"Impostazioni valuta",allowed_currencies:"Valute consentite",allowed_currencies_hint:"Limita il numero di valute fiat disponibili",default_account_currency:"Valuta predefinita del conto",default_account_currency_hint:"Valuta predefinita per la contabilità",service_fee_label:"Tassa di servizio (%)",service_fee_hint:"Tariffa addebitata per transazione (%)",service_fee_max_label:"Commissione di servizio max (sats)",service_fee_max_hint:"Commissione massima da addebitare in (sats)",fee_wallet:"Portafoglio delle commissioni",fee_wallet_label:"Portafoglio delle commissioni (ID portafoglio)",fee_wallet_hint:"ID portafoglio a cui inviare fondi",disable_fee:"Disabilita Commissione",disable_fee_internal:"Disabilita la commissione di servizio per i pagamenti interni",disable_fee_internal_desc:"Disabilita la commissione di servizio per i pagamenti Lightning interni",ui_management:"Gestione dell'interfaccia utente",ui_site_title:"Titolo del sito",ui_site_tagline:"Slogan del sito",ui_elements_enable:"Abilita elementi sulla homepage",ui_elements_disable:"Disabilita elementi sulla homepage",ui_toggle_elements_tip:"Rimuovi elementi della homepage come 'runs on' ecc.",ui_site_description:"Descrizione del sito",ui_site_description_hint:"Usa testo normale, Markdown o HTML grezzo",ui_default_wallet_name:"Nome predefinito del portafoglio",lnbits_wallet:"Portafoglio LNbits",denomination:"Denominazione",denomination_hint:"Il nome per il token FakeWallet",ui_qr_code_logo:"Logo del codice QR",ui_qr_code_logo_hint:"URL all'immagine del logo nel codice QR",ui_custom_badge:"Badge personalizzato",ui_custom_badge_label:"Badge personalizzato 'USARE CON CAUTELA - Il portafoglio LNbits è ancora in BETA'",ui_custom_badge_color_label:"Colore distintivo personalizzato",themes:"Temi",themes_hint:"Scegli i temi disponibili per gli utenti",custom_logo:"Logo personalizzato",custom_logo_hint:"URL all'immagine del logo",ad_space_title:"Titolo Spazio Pubblicitario",ad_space_title_label:"Supportato da",ad_slots:"Spazi pubblicitari",ad_slots_hint:"Percorso dell'URL e dell'immagine in formato CSV, le estensioni possono scegliere di rispettare",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Annunci abilitati",ads_disabled:"Annunci disabilitati",user_management:"Gestione utenti",admin_users:"Utenti amministratori",admin_users_hint:"Utenti con privilegi di amministratore",admin_users_label:"ID utente",allowed_users:"Utenti consentiti",allowed_users_hint:"Solo questi utenti possono usare LNbits",allowed_users_label:"ID utente",allow_creation_user:"Consenti la creazione di nuovi utenti",allow_creation_user_desc:"Consenti la creazione di nuovi utenti nella pagina indice",components:"Componenti",long_running_endpoints:"I primi 5 endpoint a lunga esecuzione",http_request_methods:"Metodi di richiesta HTTP",http_response_codes:"Codici di risposta HTTP",request_details:"Dettagli della richiesta",http_request_details:"Dettagli della richiesta HTTP"},window.localisation.jp={confirm:"はい",server:"サーバー",theme:"テーマ",site_customisation:"サイトカスタマイズ",funding:"資金調達",users:"ユーザー",audit:"監査",apps:"アプリ",channels:"チャンネル",transactions:"トランザクション",dashboard:"ダッシュボード",node:"ノード",export_users:"ユーザーのエクスポート",no_users:"ユーザーが見つかりません",total_capacity:"合計容量",avg_channel_size:"平均チャンネルサイズ",biggest_channel_size:"最大チャネルサイズ",smallest_channel_size:"最小チャンネルサイズ",number_of_channels:"チャンネル数",active_channels:"アクティブチャンネル",connect_peer:"ピアを接続",connect:"接続",open_channel:"オープンチャンネル",open:"開く",close_channel:"チャンネルを閉じる",close:"閉じる",restart:"サーバーを再起動する",save:"保存",save_tooltip:"変更を保存する",credit_debit:"クレジット / デビット",credit_hint:"クレジットカードを使用して資金を追加するには、LNbitsを使用してください。",credit_label:"{denomination} をクレジットに",restart_tooltip:"サーバーを再起動して変更を適用します",add_funds_tooltip:"ウォレットに資金を追加します。",reset_defaults:"リセット",reset_defaults_tooltip:"すべての設定を削除してデフォルトに戻します。",download_backup:"データベースのバックアップをダウンロードする",name_your_wallet:"あなたのウォレットの名前 {name}",paste_invoice_label:"請求書を貼り付けてください",lnbits_description:"簡単にインストールでき、軽量なLNbitsは、あらゆるライトニングネットワークの資金源と、LNbits自身でさえも実行できます!LNbitsを個人で実行することも、他人に対してカストディアンソリューションをで実行できます! LNbitsを自分で実行することも、他の人に優れたソリューションを提供することもできます。各ウォレットには独自のAPIキーがあり、作成できるウォレットの数に制限はありません。資金を分割する機能は、LNbitsを資金管理ツールとして使用したり、開発ツールとして使用したりするための便利なツールです。拡張機能は、LNbitsに追加の機能を追加します。そのため、LNbitsは最先端の技術をネットワークLightningで試すことができます。拡張機能を開発するのは簡単で、無料でオープンソースのプロジェクトであるため、人々が自分で開発し、自分の貢献を送信することを奨励しています。",export_to_phone:"電話にエクスポート",export_to_phone_desc:"ウォレットを電話にエクスポートすると、ウォレットを削除する前にウォレットを復元できます。ウォレットを削除すると、ウォレットの秘密鍵が削除され、ウォレットを復元することはできません。",wallet:"ウォレット:",wallets:"ウォレット",add_wallet:"ウォレットを追加",delete_wallet:"ウォレットを削除",delete_wallet_desc:"ウォレットを削除すると、ウォレットの秘密鍵が削除され、ウォレットを復元することはできません。",rename_wallet:"ウォレットの名前を変更",update_name:"名前を更新",fiat_tracking:"フィアット追跡",currency:"通貨",update_currency:"通貨を更新する",press_to_claim:"クレームするには押してください",donate:"寄付",view_github:"GitHubで表示",voidwallet_active:"Voidwalletアクティブ",use_with_caution:"注意して使用してください - {name} ウォレットはまだベータ版です",service_fee:"取引ごとのサービス手数料: {amount} %",service_fee_max:"取引手数料:{amount}%(最大{max}サトシ)",service_fee_tooltip:"LNbitsサーバー管理者が発生する送金ごとの手数料",toggle_darkmode:"ダークモードを切り替える",payment_reactions:"支払いの反応",view_swagger_docs:"Swaggerドキュメントを表示",api_docs:"APIドキュメント",api_keys_api_docs:"ノードURL、APIキー、APIドキュメント",lnbits_version:"LNbits バージョン",runs_on:"で実行",paste:"貼り付け",paste_from_clipboard:"クリップボードから貼り付け",paste_request:"リクエストを貼り付ける",create_invoice:"請求書を作成する",camera_tooltip:"QRコードを読み取る",export_csv:"CSVでエクスポート",chart_tooltip:"チャートを表示するには、グラフの上にカーソルを合わせます",pending:"保留中",copy_invoice:"請求書をコピー",withdraw_from:"出金",cancel:"キャンセル",scan:"スキャン",read:"読む",pay:"支払う",memo:"メモ",date:"日付",payment_processing:"支払い処理中",not_enough_funds:"資金が不足しています",search_by_tag_memo_amount:"タグ、メモ、金額で検索",invoice_waiting:"請求書を待っています",payment_received:"お支払いありがとうございます",payment_sent:"支払いが完了しました",receive:"受け取る",send:"送信",outgoing_payment_pending:"支払い保留中",drain_funds:"資金を排出する",drain_funds_desc:"ウォレットの残高をすべて他のウォレットに送金します",i_understand:"理解した",copy_wallet_url:"ウォレットURLをコピー",disclaimer_dialog_title:"重要!",disclaimer_dialog:"ウォレットを削除すると、ウォレットの秘密鍵が削除され、ウォレットを復元することはできません。ウォレットを削除する前に、ウォレットをエクスポートしてください。",no_transactions:"トランザクションはありません",manage:"管理",exchanges:"取引所",extensions:"拡張機能",no_extensions:"拡張機能はありません",created:"作成済み",search_extensions:"検索拡張機能",extension_sources:"拡張ソース",ext_sources_hint:"拡張機能をダウンロードできるリポジトリ",ext_sources_label:"ソースURL(公式のLNbits拡張ソースおよび信頼できるソースのみを使用してください)",warning:"警告",repository:"リポジトリ",confirm_continue:"続行してもよろしいですか?",manage_extension_details:"拡張機能のインストール/アンインストール",install:"インストール",uninstall:"アンインストール",drop_db:"データを削除",enable:"有効",pay_to_enable:"有効にするために支払う",enable_extension_details:"現在のユーザーの拡張機能を有効にする",disable:"無効",delete:"削除",installed:"インストール済み",activated:"有効化",deactivated:"無効化",release_notes:"リリースノート",activate_extension_details:"拡張機能をユーザーが利用できるようにする/利用できないようにする",featured:"特集",all:"すべて",only_admins_can_install:"(管理者アカウントのみが拡張機能をインストールできます)",admin_only:"管理者のみ",new_version:"新しいバージョン",extension_depends_on:"依存先:",extension_rating_soon:"評価は近日公開",extension_installed_version:"インストール済みバージョン",extension_uninstall_warning:"すべてのユーザーの拡張機能を削除しようとしています.",uninstall_confirm:"はい、アンインストールします",extension_db_drop_info:"エクステンションのすべてのデータが完全に削除されます。この操作を元に戻す方法はありません!",extension_db_drop_warning:"エクステンションのすべてのデータを削除しようとしています。続行するには、エクステンションの名前を入力してください:",extension_required_lnbits_version:"このリリースには少なくとも LNbits バージョンが必要です",min_version:"最小値(含む)",max_version:"最大(除外)",payment_hash:"支払いハッシュ",fee:"料金",amount:"量",amount_sats:"金額 (サッツ)",tag:"タグ",unit:"単位",description:"説明",expiry:"有効期限",webhook:"ウェブフック",payment_proof:"支払い証明",update:"更新",update_available:"アップデート{version}が利用可能です!",latest_update:"あなたは最新バージョン{version}を使用しています。",notifications:"通知",no_notifications:"通知はありません",notifications_disabled:"LNbitsステータス通知は無効です。",enable_notifications:"通知を有効にする",enable_notifications_desc:"有効にすると、セキュリティインシデントやアップデートのような最新のLNbitsステータス更新を取得します。",enable_watchdog:"ウォッチドッグを有効にする",enable_watchdog_desc:"有効にすると、残高がLNbitsの残高より少ない場合に、資金源を自動的にVoidWalletに変更します。アップデート後は手動で有効にする必要があります。",watchdog_interval:"ウォッチドッグ・インターバル",watchdog_interval_desc:"バックグラウンドタスクがウォッチドッグデルタ[node_balance - lnbits_balance]でキルスイッチシグナルを確認する頻度(分単位)。",watchdog_delta:"ウォッチドッグデルタ",watchdog_delta_desc:"キルスイッチが資金源をVoidWalletに変更する前の限界 [lnbits_balance - node_balance > delta]",status:"ステータス",notification_source:"通知ソース",notification_source_label:"ソースURL(公式のLNbitsステータスソースのみを使用し、信頼できるソースのみを利用してください)",more:"より多くの",less:"少ない",releases:"リリース",watchdog:"ウォッチドッグ",server_logs:"サーバーログ",ip_blocker:"IPブロッカー",security:"セキュリティ",security_tools:"セキュリティツール",block_access_hint:"IPによるアクセスをブロック",allow_access_hint:"IPによるアクセスを許可する(ブロックされたIPを上書きします)",enter_ip:"IPを入力してエンターキーを押してください",rate_limiter:"レートリミッター",wallet_limiter:"ウォレットリミッター",wallet_limit_max_withdraw_per_day:"1日あたりの最大ウォレット出金額をsatsで入力してください(0 で無効)。",wallet_max_ballance:"ウォレットの最大残高(sats)(0は無効)",wallet_limit_secs_between_trans:"トランザクション間の最小秒数(ウォレットごと)(0は無効)",number_of_requests:"リクエストの数",time_unit:"時間単位",minute:"分",second:"秒",hour:"時間",disable_server_log:"サーバーログを無効にする",enable_server_log:"サーバーログを有効にする",coming_soon:"機能は間もなく登場します",session_has_expired:"あなたのセッションは期限切れです。もう一度ログインしてください。",instant_access_question:"即時アクセスをご希望ですか?",login_with_user_id:"ユーザーIDでログイン",or:"または",create_new_wallet:"新しいウォレットを作成",login_to_account:"アカウントにログインしてください",create_account:"アカウントを作成",account_settings:"アカウント設定",signin_with_nostr:"Nostrで続行",signin_with_google:"Googleでサインイン",signin_with_github:"GitHubでサインイン",signin_with_keycloak:"Keycloakでサインイン",username_or_email:"ユーザー名またはメールアドレス",password:"パスワード",password_config:"パスワード設定",password_repeat:"パスワードの再入力",change_password:"パスワードを変更",update_credentials:"資格情報を更新する",update_pubkey:"公開鍵を更新",set_password:"パスワードを設定",invalid_password:"パスワードは少なくとも8文字必要です",login:"ログイン",register:"登録",username:"ユーザー名",pubkey:"公開鍵",user_id:"ユーザーID",email:"メール",first_name:"名",last_name:"姓",picture:"写真",verify_email:"メールアドレスの確認を行ってください",account:"アカウント",update_account:"アカウントを更新",invalid_username:"無効なユーザー名",auth_provider:"認証プロバイダ",my_account:"マイアカウント",back:"戻る",logout:"ログアウト",look_and_feel:"ルック・アンド・フィール",toggle_gradient:"グラデーションを切り替える",gradient_background:"グラデーション背景",language:"言語",color_scheme:"カラースキーム",admin_settings:"管理設定",extension_cost:"このリリースには最低 {cost} サトシの支払いが必要です。",extension_paid_sats:"すでに{paid_sats} satsを支払いました。",release_details_error:"リリースの詳細を取得できません。",pay_from_wallet:"ウォレットから支払う",wallet_required:"ウォレット *",show_qr:"QRを表示",retry_install:"再試行インストール",new_payment:"新しい支払いを作成する",update_payment:"支払いを更新する",already_paid_question:"すでに支払いましたか?",sell:"販売する",sell_require:"拡張を有効にするために支払いを求める",sell_info:"{name}拡張機能を有効にするには、最小{amount}サツの支払いが必要です。",hide_empty_wallets:"空のウォレットを非表示にする",recheck:"再確認",contributors:"貢献者",license:"ライセンス",reset_key:"リセットキー",reset_password:"パスワードをリセットする",border_choices:"境界の選択肢",select_all:"すべて選択",nfc_supported:"NFC対応",nfc_not_supported:"NFCがサポートされていません",expire_date:"有効期限日:",hash:"ハッシュ:",welcome_lnbits:"LNbitsへようこそ",setup_su_account:"スーパーアカウントを以下に設定してください。",create_ticker_converter:"通貨ティッカーコンバーターを作成",enable_audit:"監査を有効にする",recommended:"推奨",audit_desc:"指定されたフィルターに従ってHTTPリクエストを記録する",audit_record_req:"リクエストボディの記録",audit_record_warning:"警告:",audit_record_req_warning_1:"パスワードなどの機密データが記録されます。",audit_record_req_warning_2:"リクエストボディは大きなサイズになる可能性があります。",audit_record_use:"注意して使用してください。",audit_ip:"IPアドレスを記録する",audit_ip_desc:"クライアントのIPアドレスを記録する",audit_path_params:"パスパラメータを記録",audit_query_params:"クエリパラメータを記録する",audit_http_methods:"HTTPメソッドを含める",audit_http_methods_hint:"含めるHTTPメソッドのリスト。空のリストはすべてを意味します。",audit_http_methods_label:"HTTPメソッド",audit_resp_codes:"HTTPレスポンスコードを含める",audit_resp_codes_hint:"含めるHTTPコードの一覧(正規表現で一致)。空のリストはすべてを意味します。例: 4.*, 5.*",audit_resp_codes_label:"HTTPレスポンスコード(正規表現)",audit_paths:"パスを含める",audit_paths_hint:"含めるパスのリスト(正規表現マッチ)。空のリストはすべてを意味します。",audit_paths_label:"HTTP パス (正規表現)",audit_paths_exclude:"パスを除外",audit_paths_exclude_hint:"除外するパスの一覧(正規表現の一致)。空のリストは対象がないことを意味します。",audit_paths_exclude_label:"HTTP パス (正規表現)",exchange_providers:"取引所プロバイダー",admin_extensions:"管理拡張機能",admin_extensions_label:"管理者拡張機能",admin_extensions_hint:"拡張機能は管理者権限を持つユーザーのみが使用できます",user_default_extensions:"ユーザーデフォルト拡張機能",user_default_extensions_label:"ユーザー拡張機能",user_default_extensions_hint:"ユーザーに対してデフォルトで有効化される拡張機能。",miscellanous:"その他",misc_disable_extensions:"拡張機能を無効にする",misc_disable_extensions_label:"すべての拡張機能を無効にする",misc_hide_api:"APIを非表示",misc_hide_api_label:"ウォレットAPIを隠すことができ、拡張機能は尊重することを選ぶことができます。",wallets_management:"ウォレット管理",funding_source_info:"資金源情報",funding_source:"資金源: {wallet_class}",node_balance:"ノード残高: {balance} サッツ",lnbits_balance:"LNbits残高: {balance} sats",funding_reserve_percent:"予約パーセント: {percent} %",node_management:"ノード管理",node_management_not_supported:"アクティブな資金源ではノード管理がサポートされていません",toggle_node_ui:"ノードUI",toggle_public_node_ui:"パブリックノードUI",toggle_transactions_node_ui:"トランザクションタブ(大規模なCLNノードで無効化)",invoice_expiry:"インボイスの有効期限",invoice_expiry_label:"インボイスの有効期限(秒)",fee_reserve:"料金予約",fee_reserve_msats:"ミリサトシでの予約手数料",fee_reserve_percent:"パーセンテージの予約料",server_management:"サーバー管理",base_url:"ベースURL",base_url_label:"サーバーの静的/基本URL",authentication:"認証",auth_token_expiry_label:"トークン有効期限(分)",auth_token_expiry_hint:"トークンが失効するまでの時間(分)",auth_allowed_methods_label:"許可された認証方法",auth_allowed_methods_hint:"認証方法を選択",auth_nostr_label:"Nostr リクエスト URL",auth_nostr_hint:"クライアントがログインするために使用する絶対URL。",auth_google_ci_label:"Google クライアントID",auth_google_ci_hint:"認可されたリダイレクトURIにhttps://{domain}/api/v1/auth/google/tokenが含まれていることを確認してください",auth_google_cs_label:"Google クライアントシークレット",auth_gh_client_id_label:"GitHub クライアントID",auth_gh_client_id_hint:"認証コールバックURLがhttps://{domain}/api/v1/auth/github/tokenに設定されていることを確認してください。",auth_gh_client_secret_label:"GitHub クライアントシークレット",auth_keycloak_label:"キーコーク ディスカバリー URL",auth_keycloak_ci_label:"Keycloak クライアント ID",auth_keycloak_ci_hint:"認証コールバックURLが https://{domain}/api/v1/auth/keycloak/token に設定されていることを確認してください。",auth_keycloak_cs_label:"キークローククライアントシークレット",currency_settings:"通貨設定",allowed_currencies:"許可されている通貨",allowed_currencies_hint:"利用可能な法定通貨の数を制限する",default_account_currency:"デフォルト口座通貨",default_account_currency_hint:"会計のデフォルト通貨",service_fee_label:"サービス料 (%)",service_fee_hint:"1 取引あたりの手数料 (%)",service_fee_max_label:"サービス料最大 (sats)",service_fee_max_hint:"(サット)での最大サービス料金",fee_wallet:"手数料ウォレット",fee_wallet_label:"手数料ウォレット (ウォレットID)",fee_wallet_hint:"送金先のウォレットID",disable_fee:"手数料を無効にする",disable_fee_internal:"内部支払に対するサービス手数料を無効にする",disable_fee_internal_desc:"内部のライトニングペイメントのサービス料金を無効にする",ui_management:"UI管理",ui_site_title:"サイトのタイトル",ui_site_tagline:"サイトのタグライン",ui_elements_enable:"ホームページの要素を有効にする",ui_elements_disable:"ホームページの要素を無効にする",ui_toggle_elements_tip:"「runs on」などのホームページ要素を削除します。",ui_site_description:"サイトの説明",ui_site_description_hint:"プレーンテキスト、Markdown、または生のHTMLを使用してください。",ui_default_wallet_name:"デフォルトウォレット名",lnbits_wallet:"LNbitsウォレット",denomination:"額面",denomination_hint:"FakeWalletトークンの名前",ui_qr_code_logo:"QRコードロゴ",ui_qr_code_logo_hint:"QRコードのロゴ画像のURL",ui_custom_badge:"カスタムバッジ",ui_custom_badge_label:"カスタムバッジ「使用に注意 - LNbitsウォレットはまだベータ版です」",ui_custom_badge_color_label:"カスタムバッジカラー",themes:"テーマ",themes_hint:"ユーザーが利用可能なテーマを選択してください",custom_logo:"カスタムロゴ",custom_logo_hint:"ロゴ画像へのURL",ad_space_title:"広告スペースのタイトル",ad_space_title_label:"サポートされています",ad_slots:"広告スロット",ad_slots_hint:"CSV形式の広告URLと画像ファイルパス、拡張機能は遵守することを選択できます",ad_slots_label:"URL;img_light_url;img_dark_url、URL...",ads_enabled:"広告が有効になっています",ads_disabled:"広告が無効になっています",user_management:"ユーザー管理",admin_users:"管理者ユーザー",admin_users_hint:"管理者権限を持つユーザー",admin_users_label:"ユーザーID",allowed_users:"許可されたユーザー",allowed_users_hint:"これらのユーザーのみがLNbitsを使用できます。",allowed_users_label:"ユーザーID",allow_creation_user:"新しいユーザーの作成を許可",allow_creation_user_desc:"インデックスページで新しいユーザーの作成を許可する",components:"コンポーネント",long_running_endpoints:"トップ5の長時間実行エンドポイント",http_request_methods:"HTTPリクエストメソッド",http_response_codes:"HTTPレスポンスコード",request_details:"リクエストの詳細",http_request_details:"HTTPリクエストの詳細"},window.localisation.cn={confirm:"确定",server:"服务器",theme:"主题",site_customisation:"网站定制",funding:"资金",users:"用户",audit:"审计",apps:"应用程序",channels:"频道",transactions:"交易记录",dashboard:"控制面板",node:"节点",export_users:"导出用户",no_users:"未找到用户",total_capacity:"总容量",avg_channel_size:"平均频道大小",biggest_channel_size:"最大通道大小",smallest_channel_size:"最小频道尺寸",number_of_channels:"频道数量",active_channels:"活跃频道",connect_peer:"连接对等",connect:"连接",open_channel:"打开频道",open:"打开",close_channel:"关闭频道",close:"关闭",restart:"重新启动服务器",save:"保存",save_tooltip:"保存更改",credit_debit:"信用卡 / 借记卡",credit_hint:"按 Enter 键充值账户",credit_label:"{denomination} 充值",credit_ok:"成功记入/扣除虚拟资金 ({amount} sats)。付款取决于资金来源的实际资金。",restart_tooltip:"重新启动服务器以使更改生效",add_funds_tooltip:"为钱包添加资金",reset_defaults:"重置为默认设置",reset_defaults_tooltip:"删除所有设置并重置为默认设置",download_backup:"下载数据库备份",name_your_wallet:"给你的 {name}钱包起个名字",paste_invoice_label:"粘贴发票,付款请求或lnurl*",lnbits_description:"LNbits 设置简单、轻量级,可以在任何闪电网络的资金来源上运行,甚至可以在LNbits自身上运行!您可以为自己运行LNbits,或者轻松为他人提供托管解决方案。每个钱包都有自己的 API 密钥,你可以创建的钱包数量没有限制。能够把资金分开管理使 LNbits 成为一款有用的资金管理和开发工具。扩展程序增加了 LNbits 的额外功能,所以你可以在闪电网络上尝试各种尖端技术。我们已经尽可能简化了开发扩展程序的过程,作为一个免费和开源的项目,我们鼓励人们开发并提交自己的扩展程序。",export_to_phone:"通过二维码导出到手机",export_to_phone_desc:"这个二维码包含您钱包的URL。您可以使用手机扫描的方式打开您的钱包。",wallet:"钱包:",wallets:"钱包",add_wallet:"添加新钱包",delete_wallet:"删除钱包",delete_wallet_desc:"整个钱包将被删除,资金将无法恢复",rename_wallet:"重命名钱包",update_name:"更新名称",fiat_tracking:"菲亚特追踪",currency:"货币",update_currency:"更新货币",press_to_claim:"点击领取比特币",donate:"捐献",view_github:"在GitHub上查看",voidwallet_active:"VoidWallet 已激活!付款功能已禁用。",use_with_caution:"请谨慎使用 - {name}钱包还处于测试版阶段",service_fee:"服务费:{amount}% 每笔交易",service_fee_max:"服务费:{amount}% 每笔交易(最高 {max} sats)",service_fee_tooltip:"LNbits服务器管理员每笔外发交易收取的服务费",toggle_darkmode:"切换暗黑模式",payment_reactions:"支付反应",view_swagger_docs:"查看 LNbits Swagger API 文档",api_docs:"API文档",api_keys_api_docs:"节点URL、API密钥和API文档",lnbits_version:"LNbits版本",runs_on:"可运行在",paste:"粘贴",paste_from_clipboard:"从剪贴板粘贴",paste_request:"粘贴请求",create_invoice:"创建发票",camera_tooltip:"用相机扫描发票/二维码",export_csv:"导出为CSV",chart_tooltip:"显示图表",pending:"待处理",copy_invoice:"复制发票",withdraw_from:"从",cancel:"取消",scan:"扫描",read:"读取",pay:"付款",memo:"备注",date:"日期",payment_processing:"正在处理支付...",not_enough_funds:"资金不足!",search_by_tag_memo_amount:"按标签、备注、金额搜索",invoice_waiting:"待支付的发票",payment_received:"收到付款",payment_sent:"付款已发送",receive:"收款",send:"付款",outgoing_payment_pending:"付款正在等待处理",drain_funds:"清空资金",drain_funds_desc:"这是一个 LNURL-取款的二维码,用于从该钱包中提取全部资金。请不要与他人分享。它与 balanceCheck 和 balanceNotify 兼容,因此在第一次取款后,您的钱包还可能会持续从这里提取资金",i_understand:"我明白",copy_wallet_url:"复制钱包URL",disclaimer_dialog_title:"重要!",disclaimer_dialog:"登录功能将在以后的更新中发布,请将此页面加为书签,以便将来访问您的钱包!此服务处于测试阶段,我们不对资金的丢失承担任何责任。",no_transactions:"尚未进行任何交易",manage:"管理",exchanges:"交易所",extensions:"扩展程序",no_extensions:"你没有安装任何扩展程序 :(",created:"已创建",search_extensions:"搜索扩展程序",extension_sources:"扩展源",ext_sources_hint:"可以下载扩展的存储库",ext_sources_label:"来源网址(仅使用官方LNbits扩展程序来源和您可以信任的来源)",warning:"警告",repository:"代码库",confirm_continue:"你确定要继续吗?",manage_extension_details:"安装/卸载扩展程序",install:"安装",uninstall:"卸载",drop_db:"删除数据",enable:"启用",pay_to_enable:"支付以启用",enable_extension_details:"为当前用户启用扩展程序",disable:"禁用",delete:"删除",installed:"已安装",activated:"已激活",deactivated:"已停用",release_notes:"发布说明",activate_extension_details:"对用户开放或禁用扩展程序",featured:"精选",all:"全部",only_admins_can_install:"(只有管理员账户可以安装扩展)",admin_only:"仅限管理员",new_version:"新版本",extension_depends_on:"依赖于:",extension_rating_soon:"即将推出评分",extension_installed_version:"已安装的版本",extension_uninstall_warning:"您即将对所有用户删除该扩展程序。",uninstall_confirm:"是的,卸载",extension_db_drop_info:"该扩展程序的所有数据将被永久删除。此操作无法撤销!",extension_db_drop_warning:"您即将删除该扩展的所有数据。请继续输入扩展程序名称以确认操作:",extension_required_lnbits_version:"此版本要求最低的 LNbits 版本为",min_version:"最小值(包含)",max_version:"最大值(不含)",payment_hash:"付款哈希",fee:"费",amount:"金额",amount_sats:"金额(聪)",tag:"标签",unit:"单位",description:"详情",expiry:"过期时间",webhook:"Webhook",payment_proof:"付款证明",update:"更新",update_available:"更新{version}可用!",latest_update:"您当前使用的是最新版本{version}。",notifications:"通知",no_notifications:"没有通知",notifications_disabled:"LNbits状态通知已禁用。",enable_notifications:"启用通知",enable_notifications_desc:"如果启用,它将获取最新的LNbits状态更新,如安全事件和更新。",enable_watchdog:"启用看门狗",enable_watchdog_desc:"如果启用,当您的余额低于LNbits余额时,系统将自动将您的资金来源更改为VoidWallet。更新后您将需要手动启用。",watchdog_interval:"看门狗间隔",watchdog_interval_desc:"后台任务应该多久检查一次看门狗增量中的 killswitch 信号 [node_balance - lnbits_balance](以分钟计)。",watchdog_delta:"看门狗德尔塔",watchdog_delta_desc:"在触发紧急停止前切换资金来源至VoidWallet的限制 [lnbits_balance - node_balance > delta]",status:"状态",notification_source:"通知来源",notification_source_label:"来源 URL(仅使用官方LNbits状态源和您信任的源)",more:"更多",less:"少",releases:"版本",watchdog:"监控程序",server_logs:"服务器日志",ip_blocker:"IP 阻止器",security:"安全",security_tools:"安全工具",block_access_hint:"屏蔽IP访问",allow_access_hint:"允许通过IP访问(将覆盖被屏蔽的IP)",enter_ip:"输入IP地址并按回车键",rate_limiter:"速率限制器",wallet_limiter:"钱包限制器",wallet_limit_max_withdraw_per_day:"每日钱包最大提现额度(单位:sats)(设为0则禁用)",wallet_max_ballance:"钱包最大余额(以sats计)(设为0则禁用)",wallet_limit_secs_between_trans:"每个钱包交易间最少秒数(设为0则禁用)",number_of_requests:"请求次数",time_unit:"时间单位",minute:"分钟",second:"秒",hour:"小时",disable_server_log:"禁用服务器日志",enable_server_log:"启用服务器日志",coming_soon:"功能即将推出",session_has_expired:"您的会话已过期。请重新登录。",instant_access_question:"想要即时访问吗?",login_with_user_id:"使用用户ID登录",or:"或",create_new_wallet:"创建新钱包",login_to_account:"登录您的账户",create_account:"创建账户",account_settings:"账户设置",signin_with_nostr:"继续使用 Nostr",signin_with_google:"使用谷歌账号登录",signin_with_github:"使用GitHub登录",signin_with_keycloak:"使用Keycloak登录",username_or_email:"用户名或电子邮箱",password:"密码",password_config:"密码配置",password_repeat:"密码重复",change_password:"修改密码",update_credentials:"更新凭证",update_pubkey:"更新公钥",set_password:"设置密码",invalid_password:"密码至少需要有8个字符",login:"登录",register:"注册",username:"用户名",pubkey:"公钥",user_id:"用户ID",email:"电子邮件",first_name:"名字",last_name:"姓氏",picture:"图片",verify_email:"验证电子邮件与",account:"账户",update_account:"更新帐户",invalid_username:"无效用户名",auth_provider:"认证提供者",my_account:"我的账户",back:"返回",logout:"注销",look_and_feel:"外观和感觉",toggle_gradient:"切换渐变",gradient_background:"渐变背景",language:"语言",color_scheme:"配色方案",admin_settings:"管理员设置",extension_cost:"此版本需要支付最低 {cost} sats。",extension_paid_sats:"您已经支付了{paid_sats} sats。",release_details_error:"无法获取发布详情。",pay_from_wallet:"从钱包支付",wallet_required:"钱包 *",show_qr:"显示QR码",retry_install:"重试安装",new_payment:"创建新支付",update_payment:"更新付款",already_paid_question:"你已经付款了吗?",sell:"出售",sell_require:"请求付款以启用扩展",sell_info:"{name} 扩展需要支付至少 {amount} sat 才能启用。",hide_empty_wallets:"隐藏空钱包",recheck:"重新检查",contributors:"贡献者们",license:"许可证",reset_key:"重置密钥",reset_password:"重置密码",border_choices:"边框选项",select_all:"全选",nfc_supported:"支持NFC",nfc_not_supported:"不支持NFC",expire_date:"有效期:",hash:"哈希:",welcome_lnbits:"欢迎来到LNbits",setup_su_account:"设置超级用户账户如下。",create_ticker_converter:"创建货币代码转换器",enable_audit:"启用审核",recommended:"推荐",audit_desc:"根据指定的过滤器记录HTTP请求",audit_record_req:"记录请求主体",audit_record_warning:"警告:",audit_record_req_warning_1:"机密数据(如密码)将被记录。",audit_record_req_warning_2:"请求主体可能会有较大尺寸。",audit_record_use:"请谨慎使用。",audit_ip:"记录 IP 地址",audit_ip_desc:"记录客户端的IP地址",audit_path_params:"记录路径参数",audit_query_params:"记录查询参数",audit_http_methods:"包括 HTTP 方法",audit_http_methods_hint:"要包含的 HTTP 方法列表。空列表表示全部。",audit_http_methods_label:"HTTP 方法",audit_resp_codes:"包括 HTTP 响应代码",audit_resp_codes_hint:"要包含的 HTTP 代码列表(正则表达式匹配)。空列表表示全部。例如:4.*,5.*",audit_resp_codes_label:"HTTP响应代码(正则表达式)",audit_paths:"包含路径",audit_paths_hint:"要包含的路径列表(正则表达式匹配)。空列表意味着全部。",audit_paths_label:"HTTP 路径(正则表达式)",audit_paths_exclude:"排除路径",audit_paths_exclude_hint:"要排除的路径列表(正则表达式匹配)。空列表表示没有。",audit_paths_exclude_label:"HTTP 路径(正则表达式)",exchange_providers:"兑换提供商",admin_extensions:"管理员扩展",admin_extensions_label:"管理员扩展件",admin_extensions_hint:"只有具有管理员权限的用户才能使用扩展程序",user_default_extensions:"用户默认扩展",user_default_extensions_label:"用户扩展",user_default_extensions_hint:"对用户默认启用的扩展。",miscellanous:"杂项",misc_disable_extensions:"禁用扩展程序",misc_disable_extensions_label:"禁用所有扩展程序",misc_hide_api:"隐藏 API",misc_hide_api_label:"隐藏钱包 api,扩展程序可以选择遵守",wallets_management:"钱包管理",funding_source_info:"资金来源信息",funding_source:"资金来源:{wallet_class}",node_balance:"节点余额:{balance} sats",lnbits_balance:"LNbits 余额:{balance} sats",funding_reserve_percent:"保留百分比: {percent} %",node_management:"节点管理",node_management_not_supported:"活动资金来源不支持节点管理",toggle_node_ui:"节点用户界面",toggle_public_node_ui:"公共节点用户界面",toggle_transactions_node_ui:"交易选项卡(在大型 CLN 节点上禁用)",invoice_expiry:"发票到期",invoice_expiry_label:"发票到期(秒)",fee_reserve:"费用储备",fee_reserve_msats:"以msats计的保留费",fee_reserve_percent:"以百分比计的保留费用",server_management:"服务器管理",base_url:"基本URL",base_url_label:"服务器的静态/基本网址",authentication:"认证",auth_token_expiry_label:"令牌过期分钟数",auth_token_expiry_hint:"令牌过期的剩余时间(分钟)",auth_allowed_methods_label:"允许的授权方法",auth_allowed_methods_hint:"选择授权方法",auth_nostr_label:"Nostr请求URL",auth_nostr_hint:"客户端将用于登录的绝对URL。",auth_google_ci_label:"谷歌客户ID",auth_google_ci_hint:"确保授权重定向URI包含https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google客户端密钥",auth_gh_client_id_label:"GitHub 客户端 ID",auth_gh_client_id_hint:"确保授权回调 URL 设置为 https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub客户端密码",auth_keycloak_label:"Keycloak 发现 URL",auth_keycloak_ci_label:"Keycloak 客户端 ID",auth_keycloak_ci_hint:"确保授权回调URL设置为https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak客户端密钥",currency_settings:"货币设置",allowed_currencies:"允许的货币",allowed_currencies_hint:"限制可用法定货币的数量",default_account_currency:"默认账户货币",default_account_currency_hint:"默认的会计货币",service_fee_label:"服务费 (%)",service_fee_hint:"每笔交易收取的费用 (%)",service_fee_max_label:"服务费最大值(聪)",service_fee_max_hint:"最大服务费以 (sats) 收取",fee_wallet:"费用钱包",fee_wallet_label:"费用钱包(钱包 ID)",fee_wallet_hint:"用于接收资金的钱包 ID",disable_fee:"禁用费用",disable_fee_internal:"禁用内部付款服务费",disable_fee_internal_desc:"禁用内部闪电支付的服务费",ui_management:"用户界面管理",ui_site_title:"网站标题",ui_site_tagline:"网站标语",ui_elements_enable:"在主页上启用元素",ui_elements_disable:"禁用主页上的元素",ui_toggle_elements_tip:"移除主页元素,例如“运行于”等。",ui_site_description:"网站描述",ui_site_description_hint:"使用纯文本、Markdown或原始HTML",ui_default_wallet_name:"默认钱包名称",lnbits_wallet:"LNbits 钱包",denomination:"面额",denomination_hint:"FakeWallet 代币的名称",ui_qr_code_logo:"二维码标志",ui_qr_code_logo_hint:"二维码中标志图像的 URL",ui_custom_badge:"自定义徽章",ui_custom_badge_label:"自定义徽章“慎用 - LNbits 钱包仍在测试阶段”",ui_custom_badge_color_label:"自定义徽章颜色",themes:"主题",themes_hint:"选择可供用户使用的主题",custom_logo:"自定义徽标",custom_logo_hint:"徽标图像的URL",ad_space_title:"广告位标题",ad_space_title_label:"由...支持",ad_slots:"广告位",ad_slots_hint:"广告网址和图像文件路径以CSV格式存储,扩展可以选择遵循。",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"启用广告",ads_disabled:"广告已禁用",user_management:"用户管理",admin_users:"管理员用户",admin_users_hint:"具有管理员权限的用户",admin_users_label:"用户ID",allowed_users:"允许的用户",allowed_users_hint:"仅这些用户可以使用LNbits",allowed_users_label:"用户 ID",allow_creation_user:"允许创建新用户",allow_creation_user_desc:"允许在索引页面上创建新用户",components:"组件",long_running_endpoints:"前五个长时间运行的端点",http_request_methods:"HTTP请求方法",http_response_codes:"HTTP响应代码",request_details:"请求详情",http_request_details:"HTTP请求详细信息"},window.localisation.nl={confirm:"Ja",server:"Server",theme:"Thema",site_customisation:"Site-aanpassing",funding:"Financiering",users:"Gebruikers",audit:"Controle",apps:"Apps",channels:"Kanalen",transactions:"Transacties",dashboard:"Dashboard",node:"Knooppunt",export_users:"Gebruikers exporteren",no_users:"Geen gebruikers gevonden",total_capacity:"Totale capaciteit",avg_channel_size:"Gem. Kanaalgrootte",biggest_channel_size:"Grootste Kanaalgrootte",smallest_channel_size:"Kleinste Kanaalgrootte",number_of_channels:"Aantal kanalen",active_channels:"Actieve Kanalen",connect_peer:"Peer verbinden",connect:"Verbinden",open_channel:"Open Kanaal",open:"Open",close_channel:"Kanaal Sluiten",close:"Sluiten",restart:"Server opnieuw opstarten",save:"Opslaan",save_tooltip:"Sla uw wijzigingen op",credit_debit:"Credit / Debet",credit_hint:"Druk op Enter om de rekening te crediteren",credit_label:"{denomination} te crediteren",credit_ok:"Succesvol crediteren/debiteren van virtuele gelden ({amount} sats). Betalingen zijn afhankelijk van de werkelijke fondsen op de financieringsbron.",restart_tooltip:"Start de server opnieuw op zodat wijzigingen van kracht worden",add_funds_tooltip:"Voeg geld toe aan een portemonnee.",reset_defaults:"Standaardinstellingen herstellen",reset_defaults_tooltip:"Wis alle instellingen en herstel de standaardinstellingen.",download_backup:"Databaseback-up downloaden",name_your_wallet:"Geef je {name} portemonnee een naam",paste_invoice_label:"Plak een factuur, betalingsverzoek of lnurl-code*",lnbits_description:"Gemakkelijk in te stellen en lichtgewicht, LNbits kan op elke lightning-netwerkfinancieringsbron draaien en zelfs LNbits zelf! U kunt LNbits voor uzelf laten draaien of gemakkelijk een bewaardersoplossing voor anderen bieden. Elke portemonnee heeft zijn eigen API-sleutels en er is geen limiet aan het aantal portemonnees dat u kunt maken. Het kunnen partitioneren van fondsen maakt LNbits een nuttige tool voor geldbeheer en als ontwikkelingstool. Extensies voegen extra functionaliteit toe aan LNbits, zodat u kunt experimenteren met een reeks toonaangevende technologieën op het bliksemschichtnetwerk. We hebben het ontwikkelen van extensies zo eenvoudig mogelijk gemaakt en als een gratis en opensource-project moedigen we mensen aan om hun eigen ontwikkelingen in te dienen.",export_to_phone:"Exporteren naar telefoon met QR-code",export_to_phone_desc:"Deze QR-code bevat uw portemonnee-URL met volledige toegang. U kunt het vanaf uw telefoon scannen om uw portemonnee van daaruit te openen.",wallet:"Wallet:",wallets:"Portemonnees",add_wallet:"Een nieuwe portemonnee toevoegen",delete_wallet:"Portemonnee verwijderen",delete_wallet_desc:"Deze hele portemonnee wordt verwijderd, de fondsen worden NIET TERUGGEVONDEN.",rename_wallet:"Portemonnee hernoemen",update_name:"Naam bijwerken",fiat_tracking:"Volgfunctie voor fiat-valuata",currency:"Valuta",update_currency:"Valuta bijwerken",press_to_claim:"Druk om bitcoin te claimen",donate:"Doneren",view_github:"Bekijken op GitHub",voidwallet_active:"VoidWallet is actief! Betalingen uitgeschakeld",use_with_caution:"GEBRUIK MET VOORZICHTIGHEID - {name} portemonnee is nog in BETA",service_fee:"Servicekosten: {amount} % per transactie",service_fee_max:"Servicekosten: {amount} % per transactie (max {max} sats)",service_fee_tooltip:"Transactiekosten in rekening gebracht door de LNbits serverbeheerder per uitgaande transactie",toggle_darkmode:"Donkere modus aan/uit",payment_reactions:"Betalingsreacties",view_swagger_docs:"Bekijk LNbits Swagger API-documentatie",api_docs:"API-documentatie",api_keys_api_docs:"Node URL, API-sleutels en API-documentatie",lnbits_version:"LNbits-versie",runs_on:"Draait op",paste:"Plakken",paste_from_clipboard:"Plakken van klembord",paste_request:"Verzoek plakken",create_invoice:"Factuur aanmaken",camera_tooltip:"Gebruik de camera om een factuur/QR-code te scannen",export_csv:"Exporteer naar CSV",chart_tooltip:"Toon grafiek",pending:"In behandeling",copy_invoice:"Kopieer factuur",withdraw_from:"Opnemen van",cancel:"Annuleren",scan:"Scannen",read:"Lezen",pay:"Betalen",memo:"Memo",date:"Datum",payment_processing:"Verwerking betaling...",not_enough_funds:"Onvoldoende saldo!",search_by_tag_memo_amount:"Zoeken op tag, memo, bedrag",invoice_waiting:"Factuur wachtend op betaling",payment_received:"Betaling ontvangen",payment_sent:"Betaling verzonden",receive:"ontvangen",send:"versturen",outgoing_payment_pending:"Uitgaande betaling in behandeling",drain_funds:"Geld opnemen",drain_funds_desc:"Dit is een LNURL-withdraw QR-code om alles uit deze portemonnee te halen. Deel deze code niet met anderen. Het is compatibel met balanceCheck en balanceNotify zodat jouw portemonnee continu geld kan blijven opnemen vanaf hier na de eerste opname.",i_understand:"Ik begrijp het",copy_wallet_url:"Kopieer portemonnee-URL",disclaimer_dialog_title:"Belangrijk!",disclaimer_dialog:"Inlogfunctionaliteit wordt uitgebracht in een toekomstige update. Zorg er nu voor dat je deze pagina als favoriet markeert om in de toekomst toegang te krijgen tot je portemonnee! Deze service is in BETA en we zijn niet verantwoordelijk voor mensen die de toegang tot hun fondsen verliezen.",no_transactions:"Er zijn nog geen transacties gedaan",manage:"Beheer",exchanges:"Beurzen",extensions:"Extensies",no_extensions:"Je hebt geen extensies geïnstalleerd :(",created:"Aangemaakt",search_extensions:"Zoekextensies",extension_sources:"Extensiebronnen",ext_sources_hint:"Repositories van waar de extensies kunnen worden gedownload",ext_sources_label:"Bron-URL (gebruik alleen de officiële LNbits-extensiebron en bronnen die je kunt vertrouwen)",warning:"Waarschuwing",repository:"Repository",confirm_continue:"Weet je zeker dat je wilt doorgaan?",manage_extension_details:"Installeren/verwijderen van extensie",install:"Installeren",uninstall:"Deïnstalleren",drop_db:"Gegevens verwijderen",enable:"Inschakelen",pay_to_enable:"Betalen om te activeren",enable_extension_details:"Schakel extensie in voor huidige gebruiker",disable:"Uitschakelen",delete:"Verwijderen",installed:"Geïnstalleerd",activated:"Geactiveerd",deactivated:"Gedeactiveerd",release_notes:"Release-opmerkingen",activate_extension_details:"Maak extensie beschikbaar/niet beschikbaar voor gebruikers",featured:"Uitgelicht",all:"Alles",only_admins_can_install:"Alleen beheerdersaccounts kunnen extensies installeren",admin_only:"Alleen beheerder",new_version:"Nieuwe Versie",extension_depends_on:"Afhankelijk van:",extension_rating_soon:"Beoordelingen binnenkort beschikbaar",extension_installed_version:"Geïnstalleerde versie",extension_uninstall_warning:"U staat op het punt de extensie voor alle gebruikers te verwijderen.",uninstall_confirm:"Ja, de-installeren",extension_db_drop_info:"Alle gegevens voor de extensie zullen permanent worden verwijderd. Er is geen manier om deze bewerking ongedaan te maken!",extension_db_drop_warning:"U staat op het punt alle gegevens voor de extensie te verwijderen. Typ de naam van de extensie om door te gaan:",extension_required_lnbits_version:"Deze release vereist ten minste LNbits-versie",min_version:"Minimum (inbegrepen)",max_version:"Maximum (uitgesloten)",payment_hash:"Betalings-hash",fee:"Kosten",amount:"Bedrag",amount_sats:"Bedrag (sats)",tag:"Label",unit:"Eenheid",description:"Beschrijving",expiry:"Vervaldatum",webhook:"Webhook",payment_proof:"Betalingsbewijs",update:"Bijwerken",update_available:"Update {version} beschikbaar!",latest_update:"U bent op de nieuwste versie {version}.",notifications:"Meldingen",no_notifications:"Geen meldingen",notifications_disabled:"LNbits-statusmeldingen zijn uitgeschakeld.",enable_notifications:"Schakel meldingen in",enable_notifications_desc:"Indien ingeschakeld zal het de laatste LNbits Status updates ophalen, zoals veiligheidsincidenten en updates.",enable_watchdog:"Inschakelen Watchdog",enable_watchdog_desc:"Indien ingeschakeld, wordt uw betaalbron automatisch gewijzigd naar VoidWallet als uw saldo lager is dan het saldo van LNbits. U zult dit na een update handmatig moeten inschakelen.",watchdog_interval:"Watchdog-interval",watchdog_interval_desc:"Hoe vaak de achtergrondtaak moet controleren op een killswitch signaal in het watchdog verschil [node_balance - lnbits_balance] (in minuten).",watchdog_delta:"Waakhond Delta",watchdog_delta_desc:"Limiet voordat de killswitch de financieringsbron verandert naar VoidWallet [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Notificatiebron",notification_source_label:"Bron-URL (gebruik alleen de officiële LNbits-statusbron en bronnen die u vertrouwt)",more:"meer",less:"minder",releases:"Uitgaven",watchdog:"Waakhond",server_logs:"Serverlogboeken",ip_blocker:"IP-blokkering",security:"Beveiliging",security_tools:"Beveiligingstools",block_access_hint:"Toegang blokkeren per IP",allow_access_hint:"Toegang verlenen op basis van IP (zal geblokkeerde IP's overschrijven)",enter_ip:"Voer IP in en druk op enter",rate_limiter:"Snelheidsbegrenzer",wallet_limiter:"Portemonnee Limietsteller",wallet_limit_max_withdraw_per_day:"Maximale dagelijkse opname van wallet in sats (0 om uit te schakelen)",wallet_max_ballance:"Maximale portefeuillesaldo in sats (0 om uit te schakelen)",wallet_limit_secs_between_trans:"Min seconden tussen transacties per portemonnee (0 om uit te schakelen)",number_of_requests:"Aantal verzoeken",time_unit:"Tijdeenheid",minute:"minuut",second:"seconde",hour:"uur",disable_server_log:"Serverlog uitschakelen",enable_server_log:"Activeer Serverlog",coming_soon:"Functie binnenkort beschikbaar",session_has_expired:"Uw sessie is verlopen. Log alstublieft opnieuw in.",instant_access_question:"Wil je directe toegang?",login_with_user_id:"Inloggen met gebruikers-ID",or:"of",create_new_wallet:"Nieuwe portemonnee aanmaken",login_to_account:"Log in op je account",create_account:"Account aanmaken",account_settings:"Accountinstellingen",signin_with_nostr:"Doorgaan met Nostr",signin_with_google:"Inloggen met Google",signin_with_github:"Inloggen met GitHub",signin_with_keycloak:"Inloggen met Keycloak",username_or_email:"Gebruikersnaam of e-mail",password:"Wachtwoord",password_config:"Wachtwoordconfiguratie",password_repeat:"Wachtwoord herhalen",change_password:"Wachtwoord wijzigen",update_credentials:"Referenties bijwerken",update_pubkey:"Openbare Sleutel Bijwerken",set_password:"Wachtwoord instellen",invalid_password:"Wachtwoord moet ten minste 8 tekens bevatten",login:"Inloggen",register:"Registreren",username:"Gebruikersnaam",pubkey:"Publieke Sleutel",user_id:"Gebruikers-ID",email:"E-mail",first_name:"Voornaam",last_name:"Achternaam",picture:"Foto",verify_email:"E-mail verifiëren met",account:"Account",update_account:"Account bijwerken",invalid_username:"Ongeldige gebruikersnaam",auth_provider:"Auth Provider",my_account:"Mijn Account",back:"Terug",logout:"Afmelden",look_and_feel:"Uiterlijk en gedrag",toggle_gradient:"Gradiënt Schakelen",gradient_background:"Verloopachtergrond",language:"Taal",color_scheme:"Kleurenschema",admin_settings:"Beheerdersinstellingen",extension_cost:"Deze release vereist een betaling van minimaal {cost} sats.",extension_paid_sats:"U heeft al {paid_sats} sats betaald.",release_details_error:"Kan de gegevens van de release niet ophalen.",pay_from_wallet:"Betalen vanuit Portemonnee",wallet_required:"Wallet *",show_qr:"Toon QR",retry_install:"Opnieuw installeren",new_payment:"Nieuwe betaling maken",update_payment:"Betaling bijwerken",already_paid_question:"Heb je al betaald?",sell:"Verkopen",sell_require:"Vraag betaling om de extensie te activeren.",sell_info:"De {name} extensie vereist een betaling van minimaal {amount} sats om in te schakelen.",hide_empty_wallets:"Verberg lege portemonnees",recheck:"Opnieuw controleren",contributors:"Bijdragers",license:"Licentie",reset_key:"Hersteltoets",reset_password:"Wachtwoord Resetten",border_choices:"Randkeuzes",select_all:"Alles selecteren",nfc_supported:"NFC Ondersteund",nfc_not_supported:"NFC niet ondersteund",expire_date:"Vervaldatum:",hash:"Hash:",welcome_lnbits:"Welkom bij LNbits",setup_su_account:"Stel het Superuser-account hieronder in.",create_ticker_converter:"Maak Valuta Ticker Converter",enable_audit:"Audit inschakelen",recommended:"Aanbevolen",audit_desc:"HTTP-verzoeken vastleggen volgens de opgegeven filters",audit_record_req:"Verzoeklichaam registreren",audit_record_warning:"Waarschuwing:",audit_record_req_warning_1:"vertrouwelijke gegevens (zoals wachtwoorden) worden gelogd.",audit_record_req_warning_2:"de aanvraagbody kan een grote omvang hebben.",audit_record_use:"Gebruik het met voorzichtigheid.",audit_ip:"IP-adres vastleggen",audit_ip_desc:"Leg het IP-adres van de klant vast",audit_path_params:"Parameters van het pad opnemen",audit_query_params:"Queryparameters vastleggen",audit_http_methods:"Inclusief HTTP-methoden",audit_http_methods_hint:"Lijst van HTTP-methoden die moeten worden opgenomen. Lege lijsten betekenen alles.",audit_http_methods_label:"HTTP-methoden",audit_resp_codes:"Inclusief HTTP-responscodes",audit_resp_codes_hint:"Lijst van op te nemen HTTP-codes (regex-overeenkomst). Lege lijst betekent alles. Bijvoorbeeld: 4.*, 5.*",audit_resp_codes_label:"HTTP-responscode (regex)",audit_paths:"Inclusiepad",audit_paths_hint:"Lijst met paden die moeten worden opgenomen (regex match). Lege lijst betekent alles.",audit_paths_label:"HTTP-pad (regex)",audit_paths_exclude:"Paden uitsluiten",audit_paths_exclude_hint:"Lijst met paden die moeten worden uitgesloten (regex-overeenkomst). Een lege lijst betekent geen.",audit_paths_exclude_label:"HTTP-pad (regex)",exchange_providers:"Wisselaanbieders",admin_extensions:"Beheeruitbreidingen",admin_extensions_label:"Beheerdersuitbreidingen",admin_extensions_hint:"Alleen gebruikers met beheerdersrechten kunnen extensies gebruiken.",user_default_extensions:"Standaardextensies voor gebruikers",user_default_extensions_label:"Gebruikersuitbreidingen",user_default_extensions_hint:"Extensies die standaard voor de gebruikers worden ingeschakeld.",miscellanous:"Diversen",misc_disable_extensions:"Extensies uitschakelen",misc_disable_extensions_label:"Alle extensies uitschakelen",misc_hide_api:"API verbergen",misc_hide_api_label:"Verbergt de wallet-API, extensies kunnen ervoor kiezen dit te respecteren",wallets_management:"Beheer van portemonnees",funding_source_info:"Financieringsbroninfo",funding_source:"Financieringsbron: {wallet_class}",node_balance:"Node Balans: {balance} sats",lnbits_balance:"LNbits Saldo: {balance} sats",funding_reserve_percent:"Reservepercentage: {percent} %",node_management:"Nodebeheer",node_management_not_supported:"Nodebeheer wordt niet ondersteund door de actieve financieringsbron",toggle_node_ui:"Node UI",toggle_public_node_ui:"Openbare Node UI",toggle_transactions_node_ui:"Transacties Tabblad (Uitschakelen op grote CLN-nodes)",invoice_expiry:"Factuurvervaldatum",invoice_expiry_label:"Factuurverloop (seconden)",fee_reserve:"Toegangsvergoeding Reserve",fee_reserve_msats:"Reserveringskosten in msats",fee_reserve_percent:"Reserveringskosten in procent",server_management:"Serverbeheer",base_url:"Basis-URL",base_url_label:"Statisch/Basis-URL voor de server",authentication:"Authenticatie",auth_token_expiry_label:"Token vervalt over minuten",auth_token_expiry_hint:"Tijd in minuten totdat de token verloopt",auth_allowed_methods_label:"Toegestane autorisatiemethoden",auth_allowed_methods_hint:"Selecteer autorisatiemethoden",auth_nostr_label:"Nostr Aanvraag-URL",auth_nostr_hint:"Absolute URL die de klanten zullen gebruiken om in te loggen.",auth_google_ci_label:"Google Client-ID",auth_google_ci_hint:"Zorg ervoor dat de geautoriseerde omleidings-URL's https://{domain}/api/v1/auth/google/token bevatten.",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"GitHub client-ID",auth_gh_client_id_hint:"Zorg ervoor dat de autorisatie-callback-URL is ingesteld op https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Clientgeheim",auth_keycloak_label:"Keycloak Ontdekking URL",auth_keycloak_ci_label:"Keycloak-client-ID",auth_keycloak_ci_hint:"Zorg ervoor dat de autorisatie callback-URL is ingesteld op https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Clientgeheim",currency_settings:"Valuta-instellingen",allowed_currencies:"Toegestane valuta's",allowed_currencies_hint:"Beperk het aantal beschikbare fiatvaluta's",default_account_currency:"Standaardrekeningvaluta",default_account_currency_hint:"Standaardvaluta voor boekhouding",service_fee_label:"Servicekosten (%)",service_fee_hint:"Toeslag per transactie (%)",service_fee_max_label:"Servicekosten max (sats)",service_fee_max_hint:"Maximale servicekosten om in rekening te brengen in (sats)",fee_wallet:"Kosten Portemonnee",fee_wallet_label:"Kosten portemonnee (wallet ID)",fee_wallet_hint:"Wallet-ID om geld naar over te maken",disable_fee:"Kosten uitschakelen",disable_fee_internal:"Servicekosten uitschakelen voor interne betalingen",disable_fee_internal_desc:"Dienstenkosten uitschakelen voor interne Lightning-betalingen",ui_management:"UI-beheer",ui_site_title:"Site titel",ui_site_tagline:"Site-slogan",ui_elements_enable:"Elementen op de homepage inschakelen",ui_elements_disable:"Elementen op de homepage uitschakelen",ui_toggle_elements_tip:"Verwijder startpagina-elementen zoals 'werkt op' enz.",ui_site_description:"Sitebeschrijving",ui_site_description_hint:"Gebruik platte tekst, Markdown, of ruwe HTML",ui_default_wallet_name:"Standaard Wallet Naam",lnbits_wallet:"LNbits-portemonnee",denomination:"Denominatie",denomination_hint:"De naam voor de FakeWallet token",ui_qr_code_logo:"QR-code-logo",ui_qr_code_logo_hint:"URL naar logo-afbeelding in QR-code",ui_custom_badge:"Aangepaste badge",ui_custom_badge_label:"Aangepaste Badge 'GEBRUIK MET VOORZICHTIGHEID - LNbits-portemonnee is nog in BÈTA'",ui_custom_badge_color_label:"Aangepaste Badge Kleur",themes:"Thema's",themes_hint:"Kies thema's beschikbaar voor gebruikers",custom_logo:"Aangepast logo",custom_logo_hint:"URL naar logo-afbeelding",ad_space_title:"Advertentieruimte Titel",ad_space_title_label:"Ondersteund door",ad_slots:"Advertentieblokken",ad_slots_hint:"Ad URL en afbeeldingspad in CSV-formaat, extensies kunnen ervoor kiezen te honoreren",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Advertenties ingeschakeld",ads_disabled:"Advertenties uitgeschakeld",user_management:"Gebruikersbeheer",admin_users:"Beheerdersgebruikers",admin_users_hint:"Gebruikers met beheerdersrechten",admin_users_label:"Gebruikers-ID",allowed_users:"Toegestane gebruikers",allowed_users_hint:"Alleen deze gebruikers kunnen LNbits gebruiken",allowed_users_label:"Gebruikers-ID",allow_creation_user:"Sta het aanmaken van nieuwe gebruikers toe",allow_creation_user_desc:"Sta de aanmaak van nieuwe gebruikers op de indexpagina toe",components:"Componenten",long_running_endpoints:"Top 5 langlopende eindpunten",http_request_methods:"HTTP-aanvraagmethoden",http_response_codes:"HTTP-responscodes",request_details:"Aanvraagdetails",http_request_details:"HTTP-verzoekdetails"},window.localisation.pi={confirm:"Aye",server:"Cap`n",theme:"Theme",site_customisation:"Site Customisation",funding:"Funding",users:"Buccaneers",audit:"Arrr-dit",apps:"Arrrrplications",channels:"Channels",transactions:"Pirate Transactions and loot",dashboard:"Arrr-board",node:"Node",export_users:"Export Mateys",no_users:"No swabbies found",total_capacity:"Total Capacity",avg_channel_size:"Avg. Channel Size",biggest_channel_size:"Largest Bilge Size",smallest_channel_size:"Smallest Channel Size",number_of_channels:"Nummer o' Channels",active_channels:"Active Channels",connect_peer:"Connect Peer",connect:"Connect",open_channel:"Open Channel",open:"Open yer hatches",close_channel:"Shut Yer Gob Channel",close:"Batten down the hatches, we be closin",restart:"Arr, restart Cap`n",save:"Bury Treasure",save_tooltip:"Bury yer changes, matey",credit_debit:"Credit / Debit",credit_hint:"Press Enter to credit account and make it richer",credit_label:"{denomination} to credit, arr!",credit_ok:"Success creditin'/debitin' virtual funds ({amount} sats). Payments depend on actual funds on fundin' source.",restart_tooltip:"Restart the Cap`n for changes to take effect, arr!",add_funds_tooltip:"Add doubloons to a chest and make it heavier",reset_defaults:"Reset to Davy Jones Locker",reset_defaults_tooltip:"Scuttle all settings and reset to Davy Jones Locker. Aye, start anew!",download_backup:"Download database booty",name_your_wallet:"Name yer {name} treasure chest",paste_invoice_label:"Paste a booty, payment request or lnurl code, matey!",lnbits_description:"Arr, easy to set up and lightweight, LNbits can run on any Lightning Network funding source and even LNbits itself! Ye can run LNbits for yourself, or easily offer a custodian solution for others. Each chest has its own API keys and there be no limit to the number of chests ye can make. Being able to partition booty makes LNbits a useful tool for money management and as a development tool. Arr, extensions add extra functionality to LNbits so ye can experiment with a range of cutting-edge technologies on the lightning network. We have made developing extensions as easy as possible, and as a free and open-source project, we encourage scallywags to develop and submit their own.",export_to_phone:"Export to Phone with QR Code, me hearties",export_to_phone_desc:"This QR code contains yer chest URL with full access. Ye can scan it from yer phone to open yer chest from there, arr!",wallet:"Booty Chest:",wallets:"Treasure Chests",add_wallet:"Add a new chest and fill it with doubloons!",delete_wallet:"Scuttle the Chest",delete_wallet_desc:"This whole chest will be scuttled, the booty will be UNRECOVERABLE. Aye, be warned!",rename_wallet:"Rename the Chest, me hearty",update_name:"Update name like a captain",fiat_tracking:"Trackin' o' the treasure",currency:"Curr'nsey",update_currency:"Update doubloons",press_to_claim:"Press to claim gold doubloons, matey!",donate:"Donate like a true pirate!",view_github:"View on GitHub and find treasures",voidwallet_active:"VoidWallet be active! Payments disabled",use_with_caution:"USE WITH CAUTION - {name} chest be still in BETA. Aye, be careful!",service_fee:"Service fee: {amount} % per transaction",service_fee_max:"Service fee: {amount} % per transaction (max {max} sats)",service_fee_tooltip:"Service fee charged by the LNbits server admin per goin' transaction",toggle_darkmode:"Toggle Dark Mode, arr!",payment_reactions:"Payment Reactions",view_swagger_docs:"View LNbits Swagger API docs and learn the secrets",api_docs:"API docs for the scallywags",api_keys_api_docs:"Node URL, API keys and API docs",lnbits_version:"LNbits version, arr!",runs_on:"Runs on, matey",paste:"Stow",paste_from_clipboard:"Paste from clipboard",paste_request:"Paste Request and find treasures",create_invoice:"Create Booty Request and get rich, me hearties!",camera_tooltip:"Use spyglass to scan a booty/QR, arr!",export_csv:"Export to CSV and keep track of the booty",chart_tooltip:"Show ye chart, me hearty",pending:"Pendin like a ship at anchor",copy_invoice:"Copy booty request, arrr",withdraw_from:"Withdraw from",cancel:"Abandon ship! We be retreatin",scan:"Avast! Scan me beauty, arrr",read:"Read it, if ye dare",pay:"Pay up or walk the plank, ye scallywag",memo:"Message in a bottle, argh",date:"Date of the map, me matey",payment_processing:"Processing yer payment... don´t make me say it again",not_enough_funds:"Arrr, ye don´t have enough doubloons! Walk the plank!",search_by_tag_memo_amount:"Search by tag, message, or booty amount, savvy",invoice_waiting:"Invoice waiting to be plundered, arrr",payment_received:"Payment Received like a treasure, argh",payment_sent:"Payment Sent, hoist the colors! We´ve got some doubloons!",receive:"booty",send:"hoist",outgoing_payment_pending:"Outgoing payment pending in the port, ye scurvy dog",drain_funds:"Plunder all the doubloons, ye buccaneer",drain_funds_desc:"This be an LNURL-withdraw QR code for slurpin everything from this wallet. Don`t share with anyone. It be compatible with balanceCheck and balanceNotify so yer wallet may keep pullin` the funds continuously from here after the first withdraw.",i_understand:"I understand, yo ho ho and a bottle of rum!",copy_wallet_url:"Copy wallet URL like a map, savvy",disclaimer_dialog_title:"Avast!",disclaimer_dialog:"Login functionality to be released in a future update, for now, make sure ye bookmark this page for future access to your booty! This service be in BETA, and we hold no responsibility for people losing access to doubloons.",no_transactions:"No transactions made yet, me hearties. Belay that!",manage:"Manage, me hearty",exchanges:"Exchanges",extensions:"Yer Extensions, ye scurvy dog",no_extensions:"Ye don't have any extensions installed, ye scallywag :(. Where be yer loot?",created:"Created like a legend, savvy",search_extensions:"Search fer extensions",extension_sources:"Extension Sources",ext_sources_hint:"Repositories from wharrr the extensions can be downloaded",ext_sources_label:"Source URL (only use th' official LNbits extension source, and sources ye can trust)",warning:"Avast",repository:"Repository",confirm_continue:"Be ye sure ye want t' proceed?",manage_extension_details:"Install/uninstall extension",install:"Set sail",uninstall:"Avaast",drop_db:"Scuttle Data",enable:"Enable",pay_to_enable:"Pay To Hoist",enable_extension_details:"Enable extension fer th' current user",disable:"Disablin'",delete:"Blow down",installed:"Installed",activated:"Activated",deactivated:"Deactivated",release_notes:"Release Notes",activate_extension_details:"Make extension available/unavailable fer users",featured:"Featured",all:"Arr",only_admins_can_install:"(Only admin accounts can install extensions)",admin_only:"Cap'n Only",new_version:"New Version",extension_depends_on:"Depends on:",extension_rating_soon:"Ratings a'comin' soon",extension_installed_version:"Installed version",extension_uninstall_warning:"Ye be about t' remove th' extension fer all hands.",uninstall_confirm:"Aye, Uninstall",extension_db_drop_info:"All data fer th' extension will be permanently deleted. There be no way to undo this operation!",extension_db_drop_warning:"Ye be about to scuttle all data fer th' extension. Please scribble th' extension name to continue:",extension_required_lnbits_version:"This release be needin' at least LNbits version",min_version:"Minimum (inclooded)",max_version:"Maximum (excluded)",payment_hash:"Payment Hash like a treasure map, arrr",fee:"Fee like a toll to cross a strait, matey",amount:"Amount of doubloons, arrr",amount_sats:"Amount (sats)",tag:"Tag",unit:"Unit of measurement like a fathom, ye buccaneer",description:"Description like a tale of adventure, arrr",expiry:"Expiry like the food on a ship, ye landlubber",webhook:"Webhook like a fishing line, arrr",payment_proof:"Payment Proof like a seal of authenticity, argh",update:"Updatin'",update_available:"Update {version} available, me matey!",latest_update:"Ye be on th' latest version {version}.",notifications:"Notificashuns",no_notifications:"No noticin's",notifications_disabled:"LNbits status notifications be disabled, arr!",enable_notifications:"Enable Notifications",enable_notifications_desc:"If ye be allowin' it, it'll be fetchin' the latest LNbits Status updates, like security incidents and updates.",enable_watchdog:"Enable Seadog",enable_watchdog_desc:"If enabled, it will swap yer treasure source t' VoidWallet on its own if yer balance be lower than th' LNbits balance. Ye'll need t' enable by hand after an update.",watchdog_interval:"Seadog Interval",watchdog_interval_desc:"How oft th' background task should be checkin' fer a killswitch signal in th' seadog delta [node_balance - lnbits_balance] (in minutes), arr.",watchdog_delta:"Seadog Delta",watchdog_delta_desc:"Limit afore killswitch changes fundin' source to VoidWallet [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Notification Source",notification_source_label:"Source URL (only use th' official LNbits status source, and sources ye can trust)",more:"Arr, 'tis more.",less:"Arr, 'tis more fewer.",releases:"Releases",watchdog:"Seadog",server_logs:"Server Logs",ip_blocker:"IP Blockar",security:"Securrrity",security_tools:"Securrrity tools",block_access_hint:"Block access by IP",allow_access_hint:"Grant permission by IP (will override barred IPs)",enter_ip:"Enter IP and hit enter",rate_limiter:"Rate Limiter",wallet_limiter:"Pouch Limitar",wallet_limit_max_withdraw_per_day:"Max daily wallet withdrawal in sats (0 for no limit, -1 to block withdrawal)",wallet_max_ballance:"Purse max heaviness in sats (0 fer scuttle)",wallet_limit_secs_between_trans:"Min secs 'tween transactions per wallet (0 to disable)",number_of_requests:"Number o' requests",time_unit:"time bein'",minute:"minnit",second:"second",hour:"hour",disable_server_log:"Disabl' {Server} Log",enable_server_log:"Enable Server Log",coming_soon:"Feature comin' soon",session_has_expired:"Yer session has expired. Please login again.",instant_access_question:"Be wantin' quick entry, aye?",login_with_user_id:"Login with user ID",or:"arr",create_new_wallet:"Create New Wallet",login_to_account:"Log in to yer account",create_account:"Create account",account_settings:"Account Settin's",signin_with_nostr:"Continue with Nostr",signin_with_google:"Sign in wit' Google",signin_with_github:"Sign in wit' GitHub",signin_with_keycloak:"Sign in wit' Keycloak",username_or_email:"Usarrrname or Email",password:"Passwarrd",password_config:"Passwarrd Config",password_repeat:"Passwarrd repeat",change_password:"Change Passwarrd",update_credentials:"Hoist New Credentials",update_pubkey:"Swab Public Key",set_password:"Set yer Secret Code",invalid_password:"Passwarrd must be havin' at leest 8 charrracters",login:"Log in",register:"Sign on",username:"Username",pubkey:"Public Key",user_id:"User ID",email:"Email",first_name:"Firrrst Name",last_name:"Surname",picture:"pictur'",verify_email:"Verify email with",account:"Arrrccount",update_account:"Updatin' Arrrccount",invalid_username:"Username be not valid, matey!",auth_provider:"Auth Provider becometh Auth Provider, ye see?",my_account:"Me Arrrccount",back:"Return",logout:"Log out yer session",look_and_feel:"Look and Feel",toggle_gradient:"Toggle Gradient",gradient_background:"Gradient Background",language:"Langwidge",color_scheme:"Colour Scheme",admin_settings:"Admin Settin's",extension_cost:"This release be needin' a payment o' minimum {cost} sats, arr.",extension_paid_sats:"Ye have already paid {paid_sats} sats.",release_details_error:"Cannot get th' release details.",pay_from_wallet:"Pay from ye Wallet",wallet_required:"Doubloon Locker *",show_qr:"Show QR",retry_install:"Try 'nstallin' Again",new_payment:"Make New Payment",update_payment:"Be Updatin' Payment",already_paid_question:"Have ye already paid?",sell:"Sell",sell_require:"Ask fer payment to enable extension",sell_info:"The {name} extension requires a payment of minimum {amount} sats to enable.",hide_empty_wallets:"Stow empty wallets",recheck:"Recheck",contributors:"Contributors",license:"License",reset_key:"Reset Key",reset_password:"Reset Password",border_choices:"Border Choices",select_all:"Select All",nfc_supported:"NFC Supported",nfc_not_supported:"NFC not Supported",expire_date:"Expire Date:",hash:"Mizzenmast:",welcome_lnbits:"Welcome t' LNbits",setup_su_account:"Set up the Superuser account below.",create_ticker_converter:"Create Currency Ticker Converter",enable_audit:"Set Sail Fer Auditin'",recommended:"Recommended",audit_desc:"Record HTTP requests accordin' with the specified filters",audit_record_req:"Record Request Body",audit_record_warning:"Arrrning:",audit_record_req_warning_1:"confidential data (like passwords) will be logged.",audit_record_req_warning_2:"th' request body can have large size.",audit_record_use:"Use it with caution.",audit_ip:"Log IP Address",audit_ip_desc:"Record the IP address o' the client",audit_path_params:"Record Path Parameters",audit_query_params:"Rransack th' Query Parameters",audit_http_methods:"Include HTTP Methods",audit_http_methods_hint:"List o' HTTP methods to be included. Empty lists means all.",audit_http_methods_label:"HTTP Methods",audit_resp_codes:"Include HTTP Response Codes",audit_resp_codes_hint:"List o' HTTP codes t' be included (regex match). Empty lists means all. Eg: 4.*, 5.*",audit_resp_codes_label:"HTTP Response code (regex)",audit_paths:"Include Paths",audit_paths_hint:"List o' paths t' be included (regex match). Empty list means all.",audit_paths_label:"HTTP Path (regex)",audit_paths_exclude:"Exclude Paths",audit_paths_exclude_hint:"List o' paths t' be excluded (regex match). Empty list means none.",audit_paths_exclude_label:"HTTP Path (regex)",exchange_providers:"Trade Buccaneers",admin_extensions:"Admin Extensions",admin_extensions_label:"Admin extensions",admin_extensions_hint:"Extensions only user with admin privileges can use",user_default_extensions:"Crew Mate Default Extensions",user_default_extensions_label:"User extensions",user_default_extensions_hint:"Extensions that will be enabled by default fer the users.",miscellanous:"Miscelaneous",misc_disable_extensions:"Belay Extensions",misc_disable_extensions_label:"Disable all extensions",misc_hide_api:"Stow API",misc_hide_api_label:"Burieds wallet api, extensions be able t' choose t' honor",wallets_management:"Wallets Management",funding_source_info:"Loot Source Info",funding_source:"Loot Source: {wallet_class}",node_balance:"Node Balance: {balance} doubloons",lnbits_balance:"LNbits Balance: {balance} pieces o' eight",funding_reserve_percent:"Reserve Percent: {percent} %",node_management:"Node Management",node_management_not_supported:"Node Management not be supported by active funding source",toggle_node_ui:"Node Main Deck",toggle_public_node_ui:"Public Node UI",toggle_transactions_node_ui:"Transactions Tab (Disable on large CLN nodes)",invoice_expiry:"Invoice Expiry",invoice_expiry_label:"Invoice expiry (seconds)",fee_reserve:"Plunder Reserve",fee_reserve_msats:"Reserve fee in msats",fee_reserve_percent:"Reserve fee in percent",server_management:"Server Management",base_url:"Base URL",base_url_label:"Static/Base url fer the server",authentication:"Authent Mateys!",auth_token_expiry_label:"Token expire minutes",auth_token_expiry_hint:"Time in minutes until th' token expires",auth_allowed_methods_label:"Allowed authorizashun methods",auth_allowed_methods_hint:"Select arrrrthorization methods",auth_nostr_label:"Nostr Request URL",auth_nostr_hint:"Absolute URL that th' clients will use t' login.",auth_google_ci_label:"Google Client ID",auth_google_ci_hint:"Make sure that the authorized redirect URIs contain https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"GitHub Client ID",auth_gh_client_id_hint:"Make sure that the authorization callback URL is set to https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Client Secret",auth_keycloak_label:"Keycloak Discovery URL",auth_keycloak_ci_label:"Keycloak Client ID",auth_keycloak_ci_hint:"Make sure thant th' authorization callback URL be set t' https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Client Secret",currency_settings:"Doubloon Settin's",allowed_currencies:"Allo'ed Doubloons",allowed_currencies_hint:"Limit the number of available fiat doubloons",default_account_currency:"Default Account Currency",default_account_currency_hint:"Default dubloon fer accountin'",service_fee_label:"Service fee (%).",service_fee_hint:"Fee charged per tx (%)",service_fee_max_label:"Service fee max (sats)",service_fee_max_hint:"Max service fee to charge in (sats)",fee_wallet:"Fee Wallet",fee_wallet_label:"Tariff wallet (wallet ID)",fee_wallet_hint:"Wallett ID t' send funds t'",disable_fee:"Disable Fee",disable_fee_internal:"Disable Service Fee for Internal Payments",disable_fee_internal_desc:"Disable Service Fee fer Internal Lightning Payments",ui_management:"UI Management",ui_site_title:"Site Title",ui_site_tagline:"Site Tagline",ui_elements_enable:"Set course for the homepage elements!",ui_elements_disable:"Disarm elements on homepage",ui_toggle_elements_tip:"Be rid of homepage elements like 'runs on' etc",ui_site_description:"Site Description",ui_site_description_hint:"Use plain text, Markdown, or raw HTML",ui_default_wallet_name:"Default Wallet Name",lnbits_wallet:"LNbits wallet",denomination:"Denomination",denomination_hint:"The name fer the FakeWallet doubloon",ui_qr_code_logo:"QR Code Logo",ui_qr_code_logo_hint:"URL t' logo image in QR code",ui_custom_badge:"Custom Badge",ui_custom_badge_label:"Custom Badge 'USE WITH CAUTION - LNbits wallet be still in BETA'",ui_custom_badge_color_label:"Custom Bauble Color",themes:"Themes",themes_hint:"Choose themes available for users",custom_logo:"Custom Logo",custom_logo_hint:"URL to logo image",ad_space_title:"Ad Space Title",ad_space_title_label:"Supported by",ad_slots:"Adversment Sprogs",ad_slots_hint:"Ad url an' image filepaths in CSV format, extensions can choose t' honor",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Ads Enabled",ads_disabled:"Ads Keelhauled",user_management:"User Matey-handlin'",admin_users:"Admin Scurvy Dogs",admin_users_hint:"Scallywags with cap'n privileges",admin_users_label:"User ID",allowed_users:"Allowed Users",allowed_users_hint:"Only these scallywags can use LNbits",allowed_users_label:"User ID",allow_creation_user:"Permit creation of new scallywags",allow_creation_user_desc:"Allow creation o' new users on th' index page",components:"Components",long_running_endpoints:"Top 5 Long Runnin' Endpoints",http_request_methods:"HTTP Request Methods",http_response_codes:"HTTP Response Codes",request_details:"Request Details",http_request_details:"HTTP Request Details"},window.localisation.pl={confirm:"Tak",server:"Serwer",theme:"Motyw",site_customisation:"Dostosowanie witryny",funding:"Finansowanie",users:"Użytkownicy",audit:"Audyt",apps:"Aplikacje",channels:"Kanały",transactions:"Transakcje",dashboard:"Panel kontrolny",node:"Węzeł",export_users:"Eksportuj użytkowników",no_users:"Nie znaleziono użytkowników",total_capacity:"Całkowita Pojemność",avg_channel_size:"Średni rozmiar kanału",biggest_channel_size:"Największy Rozmiar Kanału",smallest_channel_size:"Najmniejszy Rozmiar Kanału",number_of_channels:"Ilość kanałów",active_channels:"Aktywne kanały",connect_peer:"Połącz z węzłem równorzędnym",connect:"Połącz",open_channel:"Otwarty Kanał",open:"Otwórz",close_channel:"Zamknij kanał",close:"Zamknij",restart:"Restart serwera",save:"Zapisz",save_tooltip:"Zapisz zmiany",credit_debit:"Kredyt / Debet",credit_hint:"Naciśnij Enter aby doładować konto",credit_label:"{denomination} doładowanie",credit_ok:"Pomyślne zaksięgowanie/obciążenie wirtualnych środków ({amount} sats). Płatności zależą od rzeczywistych środków na źródle finansowania.",restart_tooltip:"Zrestartuj serwer aby aktywować zmiany",add_funds_tooltip:"Dodaj środki do portfela.",reset_defaults:"Powrót do ustawień domyślnych",reset_defaults_tooltip:"Wymaż wszystkie ustawienia i ustaw domyślne.",download_backup:"Pobierz kopię zapasową bazy danych",name_your_wallet:"Nazwij swój portfel {name}",paste_invoice_label:"Wklej fakturę, żądanie zapłaty lub kod lnurl *",lnbits_description:"Łatwy i lekki w konfiguracji, LNbits może działać w oparciu o dowolne źródło finansowania w sieci lightning czy nawet inną instancję LNbits! Możesz uruchomić instancję LNbits dla siebie lub dla innych. Każdy portfel ma swoje klucze API i nie ma ograniczeń jeśli chodzi o ilość portfeli. LNbits umożliwia dzielenie środków w celu zarządzania nimi, jest również dobrym narzędziem deweloperskim. Rozszerzenia zwiększają funkcjonalność LNbits co umożliwia eksperymentowanie z nowym technologiami w sieci lightning. Tworzenie rozszerzeń jest proste dlatego zachęcamy innych deweloperów do tworzenia dodatkowych funkcjonalności i wysyłanie do nas PR",export_to_phone:"Eksport kodu QR na telefon",export_to_phone_desc:"Ten kod QR zawiera adres URL Twojego portfela z pełnym dostępem do niego. Możesz go zeskanować na swoim telefonie aby otworzyć na nim ten portfel.",wallet:"Portfel:",wallets:"Portfele",add_wallet:"Dodaj portfel",delete_wallet:"Usuń portfel",delete_wallet_desc:"Ten portfel zostanie usunięty, środków na nim zgromadzonych NIE BĘDZIE MOŻNA ODZYSKAĆ.",rename_wallet:"Zmień nazwę portfela",update_name:"Zaktualizuj nazwę",fiat_tracking:"Śledzenie Fiata",currency:"Waluta",update_currency:"Aktualizuj walutę",press_to_claim:"Naciśnij aby odebrać Bitcoiny",donate:"Podaruj",view_github:"Otwórz GitHub",voidwallet_active:"VoidWallet jest aktywny! Płatności są niemożliwe",use_with_caution:"KORZYSTAJ Z ROZWAGĄ - portfel {name} jest w wersji BETA",service_fee:"Opłata serwisowa: {amount} % za transakcję",service_fee_max:"Opłata serwisowa: {amount} % za transakcję (maks {max} sat)",service_fee_tooltip:"Opłata serwisowa pobierana przez administratora serwera LNbits za każdą wychodzącą transakcję",toggle_darkmode:"Tryb nocny",payment_reactions:"Reakcje na płatność",view_swagger_docs:"Dokumentacja Swagger API",api_docs:"Dokumentacja API",api_keys_api_docs:"Adres URL węzła, klucze API i dokumentacja API",lnbits_version:"Wersja LNbits",runs_on:"Działa na",paste:"Wklej",paste_from_clipboard:"Wklej ze schowka",paste_request:"Wklej żądanie",create_invoice:"Utwórz fakturę",camera_tooltip:"Użyj kamery aby zeskanować fakturę lub kod QR",export_csv:"Eksport do CSV",chart_tooltip:"Wykres",pending:"W toku",copy_invoice:"Skopiuj fakturę",withdraw_from:"Wypłać z",cancel:"Anuluj",scan:"Skanuj",read:"Odczytaj",pay:"Zapłać",memo:"Memo",date:"Data",payment_processing:"Przetwarzam płatność...",not_enough_funds:"Brak wystarczających środków!",search_by_tag_memo_amount:"Szukaj po tagu, memo czy wartości",invoice_waiting:"Faktura oczekuje na zapłatę",payment_received:"Otrzymano płatność",payment_sent:"Wysłano płatność",receive:"odbierać",send:"wysłać",outgoing_payment_pending:"Płatność wychodząca w toku",drain_funds:"Opróżnij środki",drain_funds_desc:"To jest kod QR służący do opróżnienia portfela (LNURL-withdraw). Nie udostępniaj go nikomu. Ten kod jest kompatybilny z funkcjami, które umożliwiają wielokrotne żądania aż do zupełnego opróżnienia portfela.",i_understand:"Rozumiem",copy_wallet_url:"Skopiuj URL portfela",disclaimer_dialog_title:"Ważne!",disclaimer_dialog:"Funkcja logowania zostanie uruchomiona w przyszłości. Póki co upewnij się, że zapisałeś adres URL tej strony aby mieć dostęp do tego portfela. Nie udostępniaj adresu tej strony nikomu, kto nie ma mieć do tego portfela dostępu! Ta usługa działa w wersji BETA, nie odpowiadamy za utratę dostępu do środków przez osoby używające LNbits.",no_transactions:"Brak transakcji",manage:"Zarządzaj",exchanges:"Giełdy",extensions:"Rozszerzenia",no_extensions:"Nie masz zainstalowanych żadnych rozszerzeń :(",created:"Utworzono",search_extensions:"Szukaj rozszerzeń",extension_sources:"Źródła rozszerzeń",ext_sources_hint:"Repozytoria, z których można pobrać rozszerzenia",ext_sources_label:"URL źródłowy (używaj tylko oficjalnego źródła rozszerzenia LNbits oraz źródeł, którym możesz zaufać)",warning:"Ostrzeżenie",repository:"Repozytorium",confirm_continue:"Czy na pewno chcesz kontynuować?",manage_extension_details:"Instaluj/odinstaluj rozszerzenie",install:"Zainstaluj",uninstall:"Odinstaluj",drop_db:"Usuń dane",enable:"Włącz",pay_to_enable:"Zapłać, aby włączyć",enable_extension_details:"Włącz rozszerzenie dla aktualnego użytkownika",disable:"Wyłącz",delete:"Usuń",installed:"Zainstalowano",activated:"Aktywowany",deactivated:"Dezaktywowany",release_notes:"Informacje o wydaniu",activate_extension_details:"Udostępnij/nie udostępniaj rozszerzenia użytkownikom",featured:"Polecane",all:"Wszystko",only_admins_can_install:"Tylko konta administratorów mogą instalować rozszerzenia",admin_only:"Tylko dla administratora",new_version:"Nowa wersja",extension_depends_on:"Zależy od:",extension_rating_soon:"Oceny będą dostępne wkrótce",extension_installed_version:"Zainstalowana wersja",extension_uninstall_warning:"Za chwilę usuniesz rozszerzenie dla wszystkich użytkowników.",uninstall_confirm:"Tak, Odinstaluj",extension_db_drop_info:"Wszystkie dane dla rozszerzenia zostaną trwale usunięte. Nie ma sposobu, aby cofnąć tę operację!",extension_db_drop_warning:"Za chwilę usuniesz wszystkie dane dla rozszerzenia. Proszę wpisz nazwę rozszerzenia, aby kontynuować:",extension_required_lnbits_version:"To wymaga przynajmniej wersji LNbits",min_version:"Minimum (włącznie)",max_version:"Maksymalna (wyłączona)",payment_hash:"Hash Płatności",fee:"Opłata",amount:"Wartość",amount_sats:"Kwota (sats)",tag:"Etykieta",unit:"Jednostka",description:"Opis",expiry:"Wygasa",webhook:"Webhook",payment_proof:"Potwierdzenie płatności",update:"Aktualizuj",update_available:"Aktualizacja {version} dostępna!",latest_update:"Korzystasz z najnowszej wersji {version}.",notifications:"Powiadomienia",no_notifications:"Brak powiadomień",notifications_disabled:"Powiadomienia o statusie LNbits są wyłączone.",enable_notifications:"Włącz powiadomienia",enable_notifications_desc:"Jeśli ta opcja zostanie włączona, będzie pobierać najnowsze informacje o statusie LNbits, takie jak incydenty bezpieczeństwa i aktualizacje.",enable_watchdog:"Włącz Watchdog",enable_watchdog_desc:"Jeśli zostanie włączone, automatycznie zmieni źródło finansowania na VoidWallet, jeśli saldo jest niższe niż saldo LNbits. Po aktualizacji trzeba będzie włączyć ręcznie.",watchdog_interval:"Interwał Watchdog",watchdog_interval_desc:"Jak często zadanie w tle powinno sprawdzać sygnał wyłącznika awaryjnego w delcie strażnika [node_balance - lnbits_balance] (w minutach).",watchdog_delta:"Strażnik Delta",watchdog_delta_desc:"Limit przed aktywacją wyłącznika zmienia źródło finansowania na VoidWallet [lnbits_balance - node_balance > delta]",status:"Stan",notification_source:"Źródło powiadomień",notification_source_label:"Adres URL źródła (używaj tylko oficjalnego źródła statusu LNbits oraz źródeł, którym możesz zaufać)",more:"więcej",less:"mniej",releases:"Wydania",watchdog:"Pies gończy",server_logs:"Dzienniki serwera",ip_blocker:"Blokada IP",security:"Bezpieczeństwo",security_tools:"Narzędzia bezpieczeństwa",block_access_hint:"Zablokuj dostęp przez IP",allow_access_hint:"Zezwól na dostęp przez IP (zignoruje zablokowane adresy IP)",enter_ip:"Wpisz adres IP i naciśnij enter",rate_limiter:"Ogranicznik Częstotliwości",wallet_limiter:"Ogranicznik Portfela",wallet_limit_max_withdraw_per_day:"Maksymalna dzienna wypłata z portfela w satoshi (0 aby wyłączyć)",wallet_max_ballance:"Maksymalny stan portfela w satoshi (0 aby wyłączyć)",wallet_limit_secs_between_trans:"Min sekund pomiędzy transakcjami na portfel (0 aby wyłączyć)",number_of_requests:"Liczba żądań",time_unit:"Jednostka czasu",minute:"minuta",second:"sekunda",hour:"godzina",disable_server_log:"Wyłącz log serwera",enable_server_log:"Włącz dziennik serwera",coming_soon:"Funkcja wkrótce będzie dostępna",session_has_expired:"Twoja sesja wygasła. Proszę zaloguj się ponownie.",instant_access_question:"Chcesz mieć natychmiastowy dostęp?",login_with_user_id:"Zaloguj się za pomocą identyfikatora użytkownika",or:"lub",create_new_wallet:"Utwórz nowy portfel",login_to_account:"Zaloguj się do swojego konta",create_account:"Załóż konto",account_settings:"Ustawienia konta",signin_with_nostr:"Kontynuuj z Nostr",signin_with_google:"Zaloguj się przez Google",signin_with_github:"Zaloguj się przez GitHub",signin_with_keycloak:"Zaloguj się przez Keycloak",username_or_email:"Nazwa użytkownika lub Email",password:"Hasło",password_config:"Konfiguracja Hasła",password_repeat:"Powtórz hasło",change_password:"Zmień hasło",update_credentials:"Aktualizuj dane logowania",update_pubkey:"Zaktualizuj klucz publiczny",set_password:"Ustaw hasło",invalid_password:"Hasło musi zawierać co najmniej 8 znaków",login:"Logowanie",register:"Zarejestruj",username:"Nazwa użytkownika",pubkey:"Klucz publiczny",user_id:"Identyfikator użytkownika",email:"Email",first_name:"Imię",last_name:"Nazwisko",picture:"Zdjęcie",verify_email:"Zweryfikuj email za pomocą",account:"Konto",update_account:"Aktualizuj konto",invalid_username:"Nieprawidłowa nazwa użytkownika",auth_provider:"Dostawca uwierzytelniania",my_account:"Moje Konto",back:"Wstecz",logout:"Wyloguj",look_and_feel:"Wygląd i zachowanie",toggle_gradient:"Przełącz gradient",gradient_background:"Tło gradientowe",language:"Język",color_scheme:"Schemat kolorów",admin_settings:"Ustawienia administratora",extension_cost:"To niniejsze wydanie wymaga zapłaty minimalnej {cost} satów.",extension_paid_sats:"Już zapłaciłeś {paid_sats} satów.",release_details_error:"Nie można uzyskać szczegółów wydania.",pay_from_wallet:"Zapłać z portfela",wallet_required:"Portfel *",show_qr:"Pokaż kod QR",retry_install:"Ponów instalację",new_payment:"Dokonaj nowej płatności",update_payment:"Zaktualizuj płatność",already_paid_question:"Czy już zapłaciłeś?",sell:"Sprzedaj",sell_require:"Poproś o płatność, aby włączyć rozszerzenie",sell_info:"Rozszerzenie {name} wymaga płatności w wysokości minimum {amount} sats, aby je włączyć.",hide_empty_wallets:"Ukryj puste portfele",recheck:"Sprawdź ponownie",contributors:"Współpracownicy",license:"Licencja",reset_key:"Resetuj klucz",reset_password:"Zresetuj hasło",border_choices:"Wybory granicy",select_all:"Zaznacz wszystko",nfc_supported:"Obsługa NFC",nfc_not_supported:"NFC nieobsługiwane",expire_date:"Data wygaśnięcia:",hash:"Hash:",welcome_lnbits:"Witamy w LNbits",setup_su_account:"Skonfiguruj konto Superuser poniżej.",create_ticker_converter:"Stwórz Konwerter Kursu Walutowego",enable_audit:"Włącz Audyt",recommended:"Zalecane",audit_desc:"Rejestruj żądania HTTP zgodnie z określonymi filtrami",audit_record_req:"Zarejestruj treść żądania",audit_record_warning:"Ostrzeżenie:",audit_record_req_warning_1:"dane poufne (takie jak hasła) będą rejestrowane.",audit_record_req_warning_2:"treść żądania może mieć duży rozmiar.",audit_record_use:"Używaj tego ostrożnie.",audit_ip:"Zapisz adres IP",audit_ip_desc:"Zarejestruj adres IP klienta",audit_path_params:"Zarejestruj parametry ścieżki",audit_query_params:"Zarejestruj parametry zapytania",audit_http_methods:"Uwzględnij metody HTTP",audit_http_methods_hint:"Lista metod HTTP do uwzględnienia. Pusta lista oznacza wszystkie.",audit_http_methods_label:"Metody HTTP",audit_resp_codes:"Uwzględnij kody odpowiedzi HTTP",audit_resp_codes_hint:"Lista kodów HTTP do uwzględnienia (dopasowanie do wyrażenia regularnego). Puste listy oznaczają wszystkie. Np: 4.*, 5.*",audit_resp_codes_label:"Kod odpowiedzi HTTP (wyrażenie regularne)",audit_paths:"Ścieżki dołączania",audit_paths_hint:"Lista ścieżek do uwzględnienia (dopasowanie regex). Pusta lista oznacza wszystkie.",audit_paths_label:"Ścieżka HTTP (regex)",audit_paths_exclude:"Wyklucz ścieżki",audit_paths_exclude_hint:"Lista ścieżek do wykluczenia (dopasowanie do wyrażenia regularnego). Pusta lista oznacza brak.",audit_paths_exclude_label:"Ścieżka HTTP (wyrażenie regularne)",exchange_providers:"Dostawcy wymiany",admin_extensions:"Rozszerzenia administracyjne",admin_extensions_label:"Rozszerzenia administracyjne",admin_extensions_hint:"Tylko użytkownik rozszerzeń z uprawnieniami administratora może używać",user_default_extensions:"Domyślne Rozszerzenia Użytkownika",user_default_extensions_label:"Rozszerzenia użytkownika",user_default_extensions_hint:"Rozszerzenia, które będą domyślnie włączone dla użytkowników.",miscellanous:"Różne",misc_disable_extensions:"Wyłącz rozszerzenia",misc_disable_extensions_label:"Wyłącz wszystkie rozszerzenia",misc_hide_api:"Ukryj API",misc_hide_api_label:"Ukrywa interfejs API portfela, rozszerzenia mogą zdecydować się na honorowanie",wallets_management:"Zarządzanie portfelami",funding_source_info:"Informacje o źródle finansowania",funding_source:"Źródło finansowania: {wallet_class}",node_balance:"Saldo węzła: {balance} sats",lnbits_balance:"Saldo LNbits: {balance} sats",funding_reserve_percent:"Rezerwa procentowa: {percent} %",node_management:"Zarządzanie węzłami",node_management_not_supported:"Zarządzanie węzłami nie jest obsługiwane przez aktywne źródło finansowania.",toggle_node_ui:"Interfejs użytkownika węzła",toggle_public_node_ui:"Interfejs węzła publicznego",toggle_transactions_node_ui:"Karta transakcji (wyłącz na dużych węzłach CLN)",invoice_expiry:"Wygaśnięcie faktury",invoice_expiry_label:"Termin wygaśnięcia faktury (sekundy)",fee_reserve:"Rezerwa Opłat",fee_reserve_msats:"Opłata rezerwowa w msats",fee_reserve_percent:"Opłata rezerwacyjna w procentach",server_management:"Zarządzanie serwerem",base_url:"Podstawowy adres URL",base_url_label:"Adres URL statyczny/bazowy dla serwera",authentication:"Uwierzytelnianie",auth_token_expiry_label:"Minuty wygaśnięcia tokenu",auth_token_expiry_hint:"Czas w minutach do wygaśnięcia tokenu",auth_allowed_methods_label:"Dopuszczalne metody autoryzacji",auth_allowed_methods_hint:"Wybierz metody autoryzacji",auth_nostr_label:"Żądanie URL Nostr",auth_nostr_hint:"Absolutny URL, którego klienci będą używać do logowania.",auth_google_ci_label:"Identyfikator klienta Google",auth_google_ci_hint:"Upewnij się, że autoryzowane URI przekierowania zawierają https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Hasło tajne klienta Google",auth_gh_client_id_label:"Identyfikator klienta GitHub",auth_gh_client_id_hint:"Upewnij się, że adres URL wywołania zwrotnego autoryzacji jest ustawiony na https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Client Secret",auth_keycloak_label:"Adres URL Discovery Keycloak",auth_keycloak_ci_label:"Identyfikator klienta Keycloak",auth_keycloak_ci_hint:"Upewnij się, że URL zwrotu autoryzacji jest ustawiony na https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Hasło klienta Keycloak",currency_settings:"Ustawienia waluty",allowed_currencies:"Dozwolone waluty",allowed_currencies_hint:"Ogranicz liczbę dostępnych walut fiducjarnych",default_account_currency:"Domyślna waluta konta",default_account_currency_hint:"Domyślna waluta dla księgowości",service_fee_label:"Opłata serwisowa (%)",service_fee_hint:"Opłata pobierana za transakcję (%)",service_fee_max_label:"Opłata za usługę max (sats)",service_fee_max_hint:"Maksymalna opłata serwisowa do pobrania w (sats)",fee_wallet:"Portfel opłat",fee_wallet_label:"Portfel opłat (ID portfela)",fee_wallet_hint:"Identyfikator portfela, do którego wysłać środki",disable_fee:"Wyłącz opłatę",disable_fee_internal:"Wyłącz opłatę za usługę dla płatności wewnętrznych",disable_fee_internal_desc:"Wyłącz opłatę serwisową dla wewnętrznych płatności Lightning",ui_management:"Zarządzanie interfejsem użytkownika",ui_site_title:"Tytuł strony",ui_site_tagline:"Podpis strony",ui_elements_enable:"Włącz elementy na stronie głównej",ui_elements_disable:"Wyłącz elementy na stronie głównej",ui_toggle_elements_tip:"Usuń elementy strony głównej takie jak 'runs on' itp.",ui_site_description:"Opis strony",ui_site_description_hint:"Użyj zwykłego tekstu, Markdown lub surowego HTML",ui_default_wallet_name:"Domyślna nazwa portfela",lnbits_wallet:"Portfel LNbits",denomination:"Nominacja",denomination_hint:"Nazwa dla tokena FakeWallet",ui_qr_code_logo:"Logo kodu QR",ui_qr_code_logo_hint:"Adres URL do obrazu logo w kodzie QR",ui_custom_badge:"Niestandardowa odznaka",ui_custom_badge_label:"Znak niestandardowy 'UŻYWAJ OSTROŻNIE - portfel LNbits wciąż jest w WERSJI BETA'",ui_custom_badge_color_label:"Niestandardowy kolor odznaki",themes:"Motywy",themes_hint:"Wybierz motywy dostępne dla użytkowników",custom_logo:"Logo niestandardowe",custom_logo_hint:"URL do obrazu logo",ad_space_title:"Tytuł reklamy",ad_space_title_label:"Wspierane przez",ad_slots:"Sloty reklamowe",ad_slots_hint:"Adres URL i ścieżki plików obrazów w formacie CSV, rozszerzenia mogą zdecydować się na honorowanie",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Reklamy włączone",ads_disabled:"Reklamy wyłączone",user_management:"Zarządzanie użytkownikami",admin_users:"Użytkownicy administratorzy",admin_users_hint:"Użytkownicy z uprawnieniami administratora",admin_users_label:"Identyfikator użytkownika",allowed_users:"Dozwoleni użytkownicy",allowed_users_hint:"Tylko ci użytkownicy mogą używać LNbits",allowed_users_label:"Identyfikator użytkownika",allow_creation_user:"Zezwól na tworzenie nowych użytkowników",allow_creation_user_desc:"Zezwól na tworzenie nowych użytkowników na stronie głównej indeksu",components:"Komponenty",long_running_endpoints:"5 najdłużej działających punktów końcowych",http_request_methods:"Metody żądań HTTP",http_response_codes:"Kody Odpowiedzi HTTP",request_details:"Szczegóły żądania",http_request_details:"Szczegóły żądania HTTP"},window.localisation.fr={confirm:"Oui",server:"Serveur",theme:"Thème",site_customisation:"Personnalisation du site",funding:"Financement",users:"Utilisateurs",audit:"Audit",apps:"Applications",channels:"Canaux",transactions:"Transactions",dashboard:"Tableau de bord",node:"Noeud",export_users:"Exporter les utilisateurs",no_users:"Aucun utilisateur trouvé",total_capacity:"Capacité totale",avg_channel_size:"Taille moyenne du canal",biggest_channel_size:"Taille de canal maximale",smallest_channel_size:"Taille de canal la plus petite",number_of_channels:"Nombre de canaux",active_channels:"Canaux actifs",connect_peer:"Connecter un pair",connect:"Connecter",open_channel:"Ouvrir le canal",open:"Ouvrir",close_channel:"Fermer le canal",close:"Fermer",restart:"Redémarrer le serveur",save:"Enregistrer",save_tooltip:"Enregistrer vos modifications",credit_debit:"Crédit / Débit",credit_hint:"Appuyez sur Entrée pour créditer le compte",credit_label:"{denomination} à créditer",credit_ok:"Succès du crédit/débit des fonds virtuels ({amount} sats). Les paiements dépendent des fonds réels sur la source de financement.",restart_tooltip:"Redémarrez le serveur pour que les changements prennent effet",add_funds_tooltip:"Ajouter des fonds à un portefeuille.",reset_defaults:"Réinitialiser aux valeurs par défaut",reset_defaults_tooltip:"Supprimer tous les paramètres et les réinitialiser aux valeurs par défaut.",download_backup:"Télécharger la sauvegarde de la base de données",name_your_wallet:"Nommez votre portefeuille {name}",paste_invoice_label:"Coller une facture, une demande de paiement ou un code lnurl *",lnbits_description:"Facile à installer et léger, LNbits peut fonctionner sur n'importe quelle source de financement du réseau Lightning et même LNbits lui-même! Vous pouvez exécuter LNbits pour vous-même ou offrir facilement une solution de gardien pour les autres. Chaque portefeuille a ses propres clés API et il n'y a pas de limite au nombre de portefeuilles que vous pouvez créer. La capacité de partitionner les fonds rend LNbits un outil utile pour la gestion de l'argent et comme outil de développement. Les extensions ajoutent une fonctionnalité supplémentaire à LNbits afin que vous puissiez expérimenter une gamme de technologies de pointe sur le réseau Lightning. Nous avons rendu le développement d'extensions aussi simple que possible et, en tant que projet gratuit et open source, nous encourageons les gens à développer et à soumettre les leurs.",export_to_phone:"Exporter vers le téléphone avec un code QR",export_to_phone_desc:"Ce code QR contient l'URL de votre portefeuille avec un accès complet. Vous pouvez le scanner depuis votre téléphone pour ouvrir votre portefeuille depuis là-bas.",wallet:"Portefeuille :",wallets:"Portefeuilles",add_wallet:"Ajouter un nouveau portefeuille",delete_wallet:"Supprimer le portefeuille",delete_wallet_desc:"Ce portefeuille entier sera supprimé et les fonds seront IRRECUPERABLES.",rename_wallet:"Renommer le portefeuille",update_name:"Mettre à jour le nom",fiat_tracking:"Suivi Fiat",currency:"Devise",update_currency:"Mettre à jour la devise",press_to_claim:"Appuyez pour demander du Bitcoin",donate:"Donner",view_github:"Voir sur GitHub",voidwallet_active:"VoidWallet est actif! Paiements désactivés",use_with_caution:"UTILISER AVEC PRUDENCE - Le portefeuille {name} est toujours en version BETA",service_fee:"Frais de service : {amount} % par transaction",service_fee_max:"Frais de service : {amount} % par transaction (max {max} sats)",service_fee_tooltip:"Frais de service facturés par l'administrateur du serveur LNbits pour chaque transaction sortante",toggle_darkmode:"Basculer le mode sombre",payment_reactions:"Réactions de paiement",view_swagger_docs:"Voir les documentation de l'API Swagger de LNbits",api_docs:"Documentation de l'API",api_keys_api_docs:"URL du nœud, clés API et documentation API",lnbits_version:"Version de LNbits",runs_on:"Fonctionne sur",paste:"Coller",paste_from_clipboard:"Coller depuis le presse-papiers",paste_request:"Coller la requête",create_invoice:"Créer une facture",camera_tooltip:"Utiliser la caméra pour scanner une facture / un code QR",export_csv:"Exporter vers CSV",chart_tooltip:"Afficher le graphique",pending:"En attente",copy_invoice:"Copier la facture",withdraw_from:"Retirer de",cancel:"Annuler",scan:"Scanner",read:"Lire",pay:"Payer",memo:"Mémo",date:"Date",payment_processing:"Traitement du paiement...",not_enough_funds:"Fonds insuffisants !",search_by_tag_memo_amount:"Rechercher par tag, mémo, montant",invoice_waiting:"Facture en attente de paiement",payment_received:"Paiement reçu",payment_sent:"Paiement envoyé",receive:"recevoir",send:"envoyer",outgoing_payment_pending:"Paiement sortant en attente",drain_funds:"Vider les fonds",drain_funds_desc:"Il s'agit d'un code QR LNURL-withdraw pour tout aspirer de ce portefeuille. Ne le partagez avec personne. Il est compatible avec balanceCheck et balanceNotify, de sorte que votre portefeuille peut continuer à retirer les fonds continuellement à partir d'ici après le premier retrait.",i_understand:"J'ai compris",copy_wallet_url:"Copier l'URL du portefeuille",disclaimer_dialog_title:"Important !",disclaimer_dialog:"La fonctionnalité de connexion sera publiée dans une future mise à jour, pour l'instant, assurez-vous de mettre cette page en favori pour accéder à votre portefeuille ultérieurement ! Ce service est en BETA, et nous ne sommes pas responsables des personnes qui perdent l'accès à leurs fonds.",no_transactions:"Aucune transaction effectuée pour le moment",manage:"Gérer",exchanges:"Échanges",extensions:"Extensions",no_extensions:"Vous n'avez installé aucune extension :(",created:"Créé",search_extensions:"Rechercher des extensions",extension_sources:"Sources d'extension",ext_sources_hint:"Dépôts à partir desquels les extensions peuvent être téléchargées",ext_sources_label:"URL source (utilisez uniquement la source officielle de l'extension LNbits et des sources fiables)",warning:"Avertissement",repository:"Référentiel",confirm_continue:"Êtes-vous sûr de vouloir continuer ?",manage_extension_details:"Installer/désinstaller l'extension",install:"Installer",uninstall:"Désinstaller",drop_db:"Supprimer les données",enable:"Activer",pay_to_enable:"Payer pour activer",enable_extension_details:"Activer l'extension pour l'utilisateur actuel",disable:"Désactiver",delete:"Supprimer",installed:"Installé",activated:"Activé",deactivated:"Désactivé",release_notes:"Notes de version",activate_extension_details:"Rendre l'extension disponible/indisponible pour les utilisateurs",featured:"Mis en avant",all:"Tout",only_admins_can_install:"Seuls les comptes administrateurs peuvent installer des extensions",admin_only:"Réservé aux administrateurs",new_version:"Nouvelle version",extension_depends_on:"Dépend de :",extension_rating_soon:"Notes des utilisateurs à venir bientôt",extension_installed_version:"Version installée",extension_uninstall_warning:"Vous êtes sur le point de supprimer l'extension pour tous les utilisateurs.",uninstall_confirm:"Oui, Désinstaller",extension_db_drop_info:"Toutes les données pour l'extension seront supprimées de manière permanente. Il n'est pas possible d'annuler cette opération !",extension_db_drop_warning:"Vous êtes sur le point de supprimer toutes les données de l'extension. Veuillez taper le nom de l'extension pour continuer :",extension_required_lnbits_version:"Cette version nécessite au moins LNbits version",min_version:"Minimum (inclus)",max_version:"Maximum (exclu)",payment_hash:"Hash de paiement",fee:"Frais",amount:"Montant",amount_sats:"Montant (sats)",tag:"Étiqueter",unit:"Unité",description:"Description",expiry:"Expiration",webhook:"Webhook",payment_proof:"Preuve de paiement",update:"Mettre à jour",update_available:"Mise à jour {version} disponible !",latest_update:"Vous êtes sur la dernière version {version}.",notifications:"Notifications",no_notifications:"Aucune notification",notifications_disabled:"Les notifications de statut LNbits sont désactivées.",enable_notifications:"Activer les notifications",enable_notifications_desc:"Si activé, il récupérera les dernières mises à jour du statut LNbits, telles que les incidents de sécurité et les mises à jour.",enable_watchdog:"Activer le Watchdog",enable_watchdog_desc:"Si elle est activée, elle changera automatiquement votre source de financement en VoidWallet si votre solde est inférieur au solde LNbits. Vous devrez activer manuellement après une mise à jour.",watchdog_interval:"Intervalle du gardien",watchdog_interval_desc:"À quelle fréquence la tâche en arrière-plan doit-elle vérifier la présence d'un signal d'arrêt d'urgence dans le delta du gardien [node_balance - lnbits_balance] (en minutes).",watchdog_delta:"Chien de garde Delta",watchdog_delta_desc:"Limite avant que l'interrupteur d'arrêt ne change la source de financement pour VoidWallet [lnbits_balance - node_balance > delta]",status:"Statut",notification_source:"Source de notification",notification_source_label:"URL source (utilisez uniquement la source officielle de statut LNbits et des sources de confiance)",more:"plus",less:"moins",releases:"Versions",watchdog:"Chien de garde",server_logs:"Journaux du serveur",ip_blocker:"Bloqueur d'IP",security:"Sécurité",security_tools:"Outils de sécurité",block_access_hint:"Bloquer l'accès par IP",allow_access_hint:"Autoriser l'accès par IP (cela passera outre les IP bloquées)",enter_ip:"Entrez l'adresse IP et appuyez sur Entrée",rate_limiter:"Limiteur de débit",wallet_limiter:"Limiteur de portefeuille",wallet_limit_max_withdraw_per_day:"Retrait quotidien maximum du portefeuille en sats (0 pour désactiver)",wallet_max_ballance:"Solde maximum du portefeuille en sats (0 pour désactiver)",wallet_limit_secs_between_trans:"Minutes et secondes entre les transactions par portefeuille (0 pour désactiver)",number_of_requests:"Nombre de requêtes",time_unit:"Unité de temps",minute:"minute",second:"seconde",hour:"heure",disable_server_log:"Désactiver le journal du serveur",enable_server_log:"Activer le journal du serveur",coming_soon:"Fonctionnalité à venir bientôt",session_has_expired:"Votre session a expiré. Veuillez vous reconnecter.",instant_access_question:"Voulez-vous un accès instantané ?",login_with_user_id:"Connexion avec l'identifiant utilisateur",or:"ou",create_new_wallet:"Créer un nouveau portefeuille",login_to_account:"Connectez-vous à votre compte",create_account:"Créer un compte",account_settings:"Paramètres du compte",signin_with_nostr:"Continuer avec Nostr",signin_with_google:"Connectez-vous avec Google",signin_with_github:"Connectez-vous avec GitHub",signin_with_keycloak:"Connectez-vous avec Keycloak",username_or_email:"Nom d'utilisateur ou e-mail",password:"Mot de passe",password_config:"Configuration du mot de passe",password_repeat:"Répétition du mot de passe",change_password:"Changer le mot de passe",update_credentials:"Mettre à jour les informations d'identification",update_pubkey:"Mettre à jour la clé publique",set_password:"Définir le mot de passe",invalid_password:"Le mot de passe doit comporter au moins 8 caractères",login:"Connexion",register:"Inscrire",username:"Nom d'utilisateur",pubkey:"Clé publique",user_id:"Identifiant utilisateur",email:"E-mail",first_name:"Prénom",last_name:"Nom de famille",picture:"Image",verify_email:"Vérifiez l'e-mail avec",account:"Compte",update_account:"Mettre à jour le compte",invalid_username:"Nom d'utilisateur invalide",auth_provider:"Fournisseur d'authentification",my_account:"Mon compte",back:"Retour",logout:"Déconnexion",look_and_feel:"Apparence",toggle_gradient:"Basculer le dégradé",gradient_background:"Fond en dégradé",language:"Langue",color_scheme:"Schéma de couleurs",admin_settings:"Paramètres administrateur",extension_cost:"Cette version nécessite un paiement minimum de {cost} sats.",extension_paid_sats:"Vous avez déjà payé {paid_sats} sats.",release_details_error:"Impossible d'obtenir les détails de la version.",pay_from_wallet:"Payer depuis le portefeuille",wallet_required:"Portefeuille *",show_qr:"Afficher le QR",retry_install:"Réessayer l'installation",new_payment:"Effectuer un nouveau paiement",update_payment:"Mettre à jour le paiement",already_paid_question:"Avez-vous déjà payé ?",sell:"Vendre",sell_require:"Demander un paiement pour activer l'extension",sell_info:"L'extension {name} nécessite un paiement minimum de {amount} sats pour être activée.",hide_empty_wallets:"Masquer les portefeuilles vides",recheck:"Revérifier",contributors:"Contributeurs",license:"Licence",reset_key:"Réinitialiser la clé",reset_password:"Réinitialiser le mot de passe",border_choices:"Choix de bordure",select_all:"Sélectionner tout",nfc_supported:"NFC pris en charge",nfc_not_supported:"NFC non pris en charge",expire_date:"Date d'expiration :",hash:"Hash :",welcome_lnbits:"Bienvenue à LNbits",setup_su_account:"Configurez le compte Superuser ci-dessous.",create_ticker_converter:"Créer un convertisseur de code de devise",enable_audit:"Activer l'audit",recommended:"Recommandé",audit_desc:"Enregistrer les requêtes HTTP selon les filtres spécifiés",audit_record_req:"Enregistrer le corps de la demande",audit_record_warning:"Avertissement :",audit_record_req_warning_1:"les données confidentielles (comme les mots de passe) seront enregistrées.",audit_record_req_warning_2:"le corps de la requête peut être de grande taille.",audit_record_use:"Utilisez-le avec précaution.",audit_ip:"Enregistrer l'adresse IP",audit_ip_desc:"Enregistrer l'adresse IP du client",audit_path_params:"Enregistrer les paramètres de chemin",audit_query_params:"Enregistrer les paramètres de la requête",audit_http_methods:"Inclure les méthodes HTTP",audit_http_methods_hint:"Liste des méthodes HTTP à inclure. Listes vides signifie toutes.",audit_http_methods_label:"Méthodes HTTP",audit_resp_codes:"Inclure les codes de réponse HTTP",audit_resp_codes_hint:"Liste des codes HTTP à inclure (correspondance regex). Les listes vides signifient tout. Ex : 4.*, 5.*",audit_resp_codes_label:"Code de réponse HTTP (regex)",audit_paths:"Inclure des chemins",audit_paths_hint:"Liste des chemins à inclure (correspondance regex). Liste vide signifie tout.",audit_paths_label:"Chemin HTTP (regex)",audit_paths_exclude:"Exclure les chemins",audit_paths_exclude_hint:"Liste des chemins à exclure (correspondance regex). Liste vide signifie aucun.",audit_paths_exclude_label:"Chemin HTTP (regex)",exchange_providers:"Fournisseurs d'échange",admin_extensions:"Extensions d'administration",admin_extensions_label:"Extensions d'administration",admin_extensions_hint:"Seuls les utilisateurs avec des privilèges d'administrateur peuvent utiliser les extensions.",user_default_extensions:"Extensions par défaut de l'utilisateur",user_default_extensions_label:"Extensions utilisateur",user_default_extensions_hint:"Extensions qui seront activées par défaut pour les utilisateurs.",miscellanous:"Divers",misc_disable_extensions:"Désactiver les extensions",misc_disable_extensions_label:"Désactiver toutes les extensions",misc_hide_api:"Masquer l'API",misc_hide_api_label:"Masque l'API du portefeuille, les extensions peuvent choisir de respecter",wallets_management:"Gestion des portefeuilles",funding_source_info:"Informations sur la source de financement",funding_source:"Source de financement : {wallet_class}",node_balance:"Solde du nœud : {balance} sats",lnbits_balance:"Solde LNbits : {balance} sats",funding_reserve_percent:"Pourcentage de Réserve : {percent} %",node_management:"Gestion des nœuds",node_management_not_supported:"La gestion des nœuds n'est pas prise en charge par la source de financement active",toggle_node_ui:"Interface utilisateur de nœud",toggle_public_node_ui:"Interface utilisateur du nœud public",toggle_transactions_node_ui:"Onglet des transactions (Désactiver sur les grands nœuds CLN)",invoice_expiry:"Expiration de la facture",invoice_expiry_label:"Expiration de la facture (secondes)",fee_reserve:"Réserve de frais",fee_reserve_msats:"Frais de réservation en msats",fee_reserve_percent:"Frais de réservation en pourcentage",server_management:"Gestion de serveur",base_url:"URL de base",base_url_label:"URL statique/de base pour le serveur",authentication:"Authentification",auth_token_expiry_label:"Durée d'expiration du jeton (en minutes)",auth_token_expiry_hint:"Durée en minutes avant l'expiration du jeton",auth_allowed_methods_label:"Méthodes d'autorisation autorisées",auth_allowed_methods_hint:"Sélectionnez les méthodes d'autorisation",auth_nostr_label:"URL de requête Nostr",auth_nostr_hint:"URL absolue que les clients utiliseront pour se connecter.",auth_google_ci_label:"ID Client Google",auth_google_ci_hint:"Assurez-vous que les URIs de redirection autorisées contiennent https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Secret client Google",auth_gh_client_id_label:"Identifiant client GitHub",auth_gh_client_id_hint:"Assurez-vous que l'URL de rappel d'autorisation est définie sur https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Secret Client GitHub",auth_keycloak_label:"URL de découverte Keycloak",auth_keycloak_ci_label:"ID Client Keycloak",auth_keycloak_ci_hint:"Assurez-vous que l'URL de rappel d'autorisation est définie sur https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Secret client Keycloak",currency_settings:"Paramètres de devise",allowed_currencies:"Devises autorisées",allowed_currencies_hint:"Limiter le nombre de devises fiduciaires disponibles",default_account_currency:"Devise par défaut du compte",default_account_currency_hint:"Devise par défaut pour la comptabilité",service_fee_label:"Frais de service (%)",service_fee_hint:"Frais facturés par tx (%)",service_fee_max_label:"Frais de service max (sats)",service_fee_max_hint:"Frais de service maximum à facturer en (sats)",fee_wallet:"Portefeuille de frais",fee_wallet_label:"Portefeuille de frais (ID de portefeuille)",fee_wallet_hint:"Identifiant de portefeuille pour envoyer des fonds à",disable_fee:"Désactiver les frais",disable_fee_internal:"Désactiver les frais de service pour les paiements internes",disable_fee_internal_desc:"Désactiver les frais de service pour les paiements Lightning internes",ui_management:"Gestion de l'interface utilisateur",ui_site_title:"Titre du site",ui_site_tagline:"Slogan du site",ui_elements_enable:"Activer les éléments sur la page d'accueil",ui_elements_disable:"Désactiver les éléments sur la page d'accueil",ui_toggle_elements_tip:"Supprimer les éléments de la page d'accueil comme 'fonctionne avec', etc.",ui_site_description:"Description du site",ui_site_description_hint:"Utilisez du texte brut, du Markdown ou du HTML brut",ui_default_wallet_name:"Nom par Défaut du Portefeuille",lnbits_wallet:"Portefeuille LNbits",denomination:"Dénomination",denomination_hint:"Le nom du jeton FakeWallet",ui_qr_code_logo:"Logo de code QR",ui_qr_code_logo_hint:"URL de l'image du logo dans le code QR",ui_custom_badge:"Badge personnalisé",ui_custom_badge_label:"Badge personnalisé 'À UTILISER AVEC PRÉCAUTION - Le portefeuille LNbits est encore en BÊTA'",ui_custom_badge_color_label:"Couleur de badge personnalisée",themes:"Thèmes",themes_hint:"Choisissez des thèmes disponibles pour les utilisateurs",custom_logo:"Logo personnalisé",custom_logo_hint:"URL de l'image du logo",ad_space_title:"Titre de l'espace publicitaire",ad_space_title_label:"Soutenu par",ad_slots:"Emplacements publicitaires",ad_slots_hint:"URL de l'annonce et chemins des fichiers image au format CSV, les extensions peuvent choisir de respecter",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Annonces activées",ads_disabled:"Publicités désactivées",user_management:"Gestion des utilisateurs",admin_users:"Utilisateurs administrateurs",admin_users_hint:"Utilisateurs avec des privilèges d'administration",admin_users_label:"Identifiant utilisateur",allowed_users:"Utilisateurs autorisés",allowed_users_hint:"Seuls ces utilisateurs peuvent utiliser LNbits",allowed_users_label:"ID utilisateur",allow_creation_user:"Autoriser la création de nouveaux utilisateurs",allow_creation_user_desc:"Permettre la création de nouveaux utilisateurs sur la page d’index",components:"Composants",long_running_endpoints:"Top 5 points de terminaison longue durée",http_request_methods:"Méthodes de requête HTTP",http_response_codes:"Codes de réponse HTTP",request_details:"Détails de la demande",http_request_details:"Détails de la requête HTTP"},window.localisation.nl={confirm:"Ja",server:"Server",theme:"Thema",site_customisation:"Site-aanpassing",funding:"Financiering",users:"Gebruikers",audit:"Controle",apps:"Apps",channels:"Kanalen",transactions:"Transacties",dashboard:"Dashboard",node:"Knooppunt",export_users:"Gebruikers exporteren",no_users:"Geen gebruikers gevonden",total_capacity:"Totale capaciteit",avg_channel_size:"Gem. Kanaalgrootte",biggest_channel_size:"Grootste Kanaalgrootte",smallest_channel_size:"Kleinste Kanaalgrootte",number_of_channels:"Aantal kanalen",active_channels:"Actieve Kanalen",connect_peer:"Peer verbinden",connect:"Verbinden",open_channel:"Open Kanaal",open:"Open",close_channel:"Kanaal Sluiten",close:"Sluiten",restart:"Server opnieuw opstarten",save:"Opslaan",save_tooltip:"Sla uw wijzigingen op",credit_debit:"Credit / Debet",credit_hint:"Druk op Enter om de rekening te crediteren",credit_label:"{denomination} te crediteren",credit_ok:"Succesvol crediteren/debiteren van virtuele gelden ({amount} sats). Betalingen zijn afhankelijk van de werkelijke fondsen op de financieringsbron.",restart_tooltip:"Start de server opnieuw op zodat wijzigingen van kracht worden",add_funds_tooltip:"Voeg geld toe aan een portemonnee.",reset_defaults:"Standaardinstellingen herstellen",reset_defaults_tooltip:"Wis alle instellingen en herstel de standaardinstellingen.",download_backup:"Databaseback-up downloaden",name_your_wallet:"Geef je {name} portemonnee een naam",paste_invoice_label:"Plak een factuur, betalingsverzoek of lnurl-code*",lnbits_description:"Gemakkelijk in te stellen en lichtgewicht, LNbits kan op elke lightning-netwerkfinancieringsbron draaien en zelfs LNbits zelf! U kunt LNbits voor uzelf laten draaien of gemakkelijk een bewaardersoplossing voor anderen bieden. Elke portemonnee heeft zijn eigen API-sleutels en er is geen limiet aan het aantal portemonnees dat u kunt maken. Het kunnen partitioneren van fondsen maakt LNbits een nuttige tool voor geldbeheer en als ontwikkelingstool. Extensies voegen extra functionaliteit toe aan LNbits, zodat u kunt experimenteren met een reeks toonaangevende technologieën op het bliksemschichtnetwerk. We hebben het ontwikkelen van extensies zo eenvoudig mogelijk gemaakt en als een gratis en opensource-project moedigen we mensen aan om hun eigen ontwikkelingen in te dienen.",export_to_phone:"Exporteren naar telefoon met QR-code",export_to_phone_desc:"Deze QR-code bevat uw portemonnee-URL met volledige toegang. U kunt het vanaf uw telefoon scannen om uw portemonnee van daaruit te openen.",wallet:"Wallet:",wallets:"Portemonnees",add_wallet:"Een nieuwe portemonnee toevoegen",delete_wallet:"Portemonnee verwijderen",delete_wallet_desc:"Deze hele portemonnee wordt verwijderd, de fondsen worden NIET TERUGGEVONDEN.",rename_wallet:"Portemonnee hernoemen",update_name:"Naam bijwerken",fiat_tracking:"Volgfunctie voor fiat-valuata",currency:"Valuta",update_currency:"Valuta bijwerken",press_to_claim:"Druk om bitcoin te claimen",donate:"Doneren",view_github:"Bekijken op GitHub",voidwallet_active:"VoidWallet is actief! Betalingen uitgeschakeld",use_with_caution:"GEBRUIK MET VOORZICHTIGHEID - {name} portemonnee is nog in BETA",service_fee:"Servicekosten: {amount} % per transactie",service_fee_max:"Servicekosten: {amount} % per transactie (max {max} sats)",service_fee_tooltip:"Transactiekosten in rekening gebracht door de LNbits serverbeheerder per uitgaande transactie",toggle_darkmode:"Donkere modus aan/uit",payment_reactions:"Betalingsreacties",view_swagger_docs:"Bekijk LNbits Swagger API-documentatie",api_docs:"API-documentatie",api_keys_api_docs:"Node URL, API-sleutels en API-documentatie",lnbits_version:"LNbits-versie",runs_on:"Draait op",paste:"Plakken",paste_from_clipboard:"Plakken van klembord",paste_request:"Verzoek plakken",create_invoice:"Factuur aanmaken",camera_tooltip:"Gebruik de camera om een factuur/QR-code te scannen",export_csv:"Exporteer naar CSV",chart_tooltip:"Toon grafiek",pending:"In behandeling",copy_invoice:"Kopieer factuur",withdraw_from:"Opnemen van",cancel:"Annuleren",scan:"Scannen",read:"Lezen",pay:"Betalen",memo:"Memo",date:"Datum",payment_processing:"Verwerking betaling...",not_enough_funds:"Onvoldoende saldo!",search_by_tag_memo_amount:"Zoeken op tag, memo, bedrag",invoice_waiting:"Factuur wachtend op betaling",payment_received:"Betaling ontvangen",payment_sent:"Betaling verzonden",receive:"ontvangen",send:"versturen",outgoing_payment_pending:"Uitgaande betaling in behandeling",drain_funds:"Geld opnemen",drain_funds_desc:"Dit is een LNURL-withdraw QR-code om alles uit deze portemonnee te halen. Deel deze code niet met anderen. Het is compatibel met balanceCheck en balanceNotify zodat jouw portemonnee continu geld kan blijven opnemen vanaf hier na de eerste opname.",i_understand:"Ik begrijp het",copy_wallet_url:"Kopieer portemonnee-URL",disclaimer_dialog_title:"Belangrijk!",disclaimer_dialog:"Inlogfunctionaliteit wordt uitgebracht in een toekomstige update. Zorg er nu voor dat je deze pagina als favoriet markeert om in de toekomst toegang te krijgen tot je portemonnee! Deze service is in BETA en we zijn niet verantwoordelijk voor mensen die de toegang tot hun fondsen verliezen.",no_transactions:"Er zijn nog geen transacties gedaan",manage:"Beheer",exchanges:"Beurzen",extensions:"Extensies",no_extensions:"Je hebt geen extensies geïnstalleerd :(",created:"Aangemaakt",search_extensions:"Zoekextensies",extension_sources:"Extensiebronnen",ext_sources_hint:"Repositories van waar de extensies kunnen worden gedownload",ext_sources_label:"Bron-URL (gebruik alleen de officiële LNbits-extensiebron en bronnen die je kunt vertrouwen)",warning:"Waarschuwing",repository:"Repository",confirm_continue:"Weet je zeker dat je wilt doorgaan?",manage_extension_details:"Installeren/verwijderen van extensie",install:"Installeren",uninstall:"Deïnstalleren",drop_db:"Gegevens verwijderen",enable:"Inschakelen",pay_to_enable:"Betalen om te activeren",enable_extension_details:"Schakel extensie in voor huidige gebruiker",disable:"Uitschakelen",delete:"Verwijderen",installed:"Geïnstalleerd",activated:"Geactiveerd",deactivated:"Gedeactiveerd",release_notes:"Release-opmerkingen",activate_extension_details:"Maak extensie beschikbaar/niet beschikbaar voor gebruikers",featured:"Uitgelicht",all:"Alles",only_admins_can_install:"Alleen beheerdersaccounts kunnen extensies installeren",admin_only:"Alleen beheerder",new_version:"Nieuwe Versie",extension_depends_on:"Afhankelijk van:",extension_rating_soon:"Beoordelingen binnenkort beschikbaar",extension_installed_version:"Geïnstalleerde versie",extension_uninstall_warning:"U staat op het punt de extensie voor alle gebruikers te verwijderen.",uninstall_confirm:"Ja, de-installeren",extension_db_drop_info:"Alle gegevens voor de extensie zullen permanent worden verwijderd. Er is geen manier om deze bewerking ongedaan te maken!",extension_db_drop_warning:"U staat op het punt alle gegevens voor de extensie te verwijderen. Typ de naam van de extensie om door te gaan:",extension_required_lnbits_version:"Deze release vereist ten minste LNbits-versie",min_version:"Minimum (inbegrepen)",max_version:"Maximum (uitgesloten)",payment_hash:"Betalings-hash",fee:"Kosten",amount:"Bedrag",amount_sats:"Bedrag (sats)",tag:"Label",unit:"Eenheid",description:"Beschrijving",expiry:"Vervaldatum",webhook:"Webhook",payment_proof:"Betalingsbewijs",update:"Bijwerken",update_available:"Update {version} beschikbaar!",latest_update:"U bent op de nieuwste versie {version}.",notifications:"Meldingen",no_notifications:"Geen meldingen",notifications_disabled:"LNbits-statusmeldingen zijn uitgeschakeld.",enable_notifications:"Schakel meldingen in",enable_notifications_desc:"Indien ingeschakeld zal het de laatste LNbits Status updates ophalen, zoals veiligheidsincidenten en updates.",enable_watchdog:"Inschakelen Watchdog",enable_watchdog_desc:"Indien ingeschakeld, wordt uw betaalbron automatisch gewijzigd naar VoidWallet als uw saldo lager is dan het saldo van LNbits. U zult dit na een update handmatig moeten inschakelen.",watchdog_interval:"Watchdog-interval",watchdog_interval_desc:"Hoe vaak de achtergrondtaak moet controleren op een killswitch signaal in het watchdog verschil [node_balance - lnbits_balance] (in minuten).",watchdog_delta:"Waakhond Delta",watchdog_delta_desc:"Limiet voordat de killswitch de financieringsbron verandert naar VoidWallet [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Notificatiebron",notification_source_label:"Bron-URL (gebruik alleen de officiële LNbits-statusbron en bronnen die u vertrouwt)",more:"meer",less:"minder",releases:"Uitgaven",watchdog:"Waakhond",server_logs:"Serverlogboeken",ip_blocker:"IP-blokkering",security:"Beveiliging",security_tools:"Beveiligingstools",block_access_hint:"Toegang blokkeren per IP",allow_access_hint:"Toegang verlenen op basis van IP (zal geblokkeerde IP's overschrijven)",enter_ip:"Voer IP in en druk op enter",rate_limiter:"Snelheidsbegrenzer",wallet_limiter:"Portemonnee Limietsteller",wallet_limit_max_withdraw_per_day:"Maximale dagelijkse opname van wallet in sats (0 om uit te schakelen)",wallet_max_ballance:"Maximale portefeuillesaldo in sats (0 om uit te schakelen)",wallet_limit_secs_between_trans:"Min seconden tussen transacties per portemonnee (0 om uit te schakelen)",number_of_requests:"Aantal verzoeken",time_unit:"Tijdeenheid",minute:"minuut",second:"seconde",hour:"uur",disable_server_log:"Serverlog uitschakelen",enable_server_log:"Activeer Serverlog",coming_soon:"Functie binnenkort beschikbaar",session_has_expired:"Uw sessie is verlopen. Log alstublieft opnieuw in.",instant_access_question:"Wil je directe toegang?",login_with_user_id:"Inloggen met gebruikers-ID",or:"of",create_new_wallet:"Nieuwe portemonnee aanmaken",login_to_account:"Log in op je account",create_account:"Account aanmaken",account_settings:"Accountinstellingen",signin_with_nostr:"Doorgaan met Nostr",signin_with_google:"Inloggen met Google",signin_with_github:"Inloggen met GitHub",signin_with_keycloak:"Inloggen met Keycloak",username_or_email:"Gebruikersnaam of e-mail",password:"Wachtwoord",password_config:"Wachtwoordconfiguratie",password_repeat:"Wachtwoord herhalen",change_password:"Wachtwoord wijzigen",update_credentials:"Referenties bijwerken",update_pubkey:"Openbare Sleutel Bijwerken",set_password:"Wachtwoord instellen",invalid_password:"Wachtwoord moet ten minste 8 tekens bevatten",login:"Inloggen",register:"Registreren",username:"Gebruikersnaam",pubkey:"Publieke Sleutel",user_id:"Gebruikers-ID",email:"E-mail",first_name:"Voornaam",last_name:"Achternaam",picture:"Foto",verify_email:"E-mail verifiëren met",account:"Account",update_account:"Account bijwerken",invalid_username:"Ongeldige gebruikersnaam",auth_provider:"Auth Provider",my_account:"Mijn Account",back:"Terug",logout:"Afmelden",look_and_feel:"Uiterlijk en gedrag",toggle_gradient:"Gradiënt Schakelen",gradient_background:"Verloopachtergrond",language:"Taal",color_scheme:"Kleurenschema",admin_settings:"Beheerdersinstellingen",extension_cost:"Deze release vereist een betaling van minimaal {cost} sats.",extension_paid_sats:"U heeft al {paid_sats} sats betaald.",release_details_error:"Kan de gegevens van de release niet ophalen.",pay_from_wallet:"Betalen vanuit Portemonnee",wallet_required:"Wallet *",show_qr:"Toon QR",retry_install:"Opnieuw installeren",new_payment:"Nieuwe betaling maken",update_payment:"Betaling bijwerken",already_paid_question:"Heb je al betaald?",sell:"Verkopen",sell_require:"Vraag betaling om de extensie te activeren.",sell_info:"De {name} extensie vereist een betaling van minimaal {amount} sats om in te schakelen.",hide_empty_wallets:"Verberg lege portemonnees",recheck:"Opnieuw controleren",contributors:"Bijdragers",license:"Licentie",reset_key:"Hersteltoets",reset_password:"Wachtwoord Resetten",border_choices:"Randkeuzes",select_all:"Alles selecteren",nfc_supported:"NFC Ondersteund",nfc_not_supported:"NFC niet ondersteund",expire_date:"Vervaldatum:",hash:"Hash:",welcome_lnbits:"Welkom bij LNbits",setup_su_account:"Stel het Superuser-account hieronder in.",create_ticker_converter:"Maak Valuta Ticker Converter",enable_audit:"Audit inschakelen",recommended:"Aanbevolen",audit_desc:"HTTP-verzoeken vastleggen volgens de opgegeven filters",audit_record_req:"Verzoeklichaam registreren",audit_record_warning:"Waarschuwing:",audit_record_req_warning_1:"vertrouwelijke gegevens (zoals wachtwoorden) worden gelogd.",audit_record_req_warning_2:"de aanvraagbody kan een grote omvang hebben.",audit_record_use:"Gebruik het met voorzichtigheid.",audit_ip:"IP-adres vastleggen",audit_ip_desc:"Leg het IP-adres van de klant vast",audit_path_params:"Parameters van het pad opnemen",audit_query_params:"Queryparameters vastleggen",audit_http_methods:"Inclusief HTTP-methoden",audit_http_methods_hint:"Lijst van HTTP-methoden die moeten worden opgenomen. Lege lijsten betekenen alles.",audit_http_methods_label:"HTTP-methoden",audit_resp_codes:"Inclusief HTTP-responscodes",audit_resp_codes_hint:"Lijst van op te nemen HTTP-codes (regex-overeenkomst). Lege lijst betekent alles. Bijvoorbeeld: 4.*, 5.*",audit_resp_codes_label:"HTTP-responscode (regex)",audit_paths:"Inclusiepad",audit_paths_hint:"Lijst met paden die moeten worden opgenomen (regex match). Lege lijst betekent alles.",audit_paths_label:"HTTP-pad (regex)",audit_paths_exclude:"Paden uitsluiten",audit_paths_exclude_hint:"Lijst met paden die moeten worden uitgesloten (regex-overeenkomst). Een lege lijst betekent geen.",audit_paths_exclude_label:"HTTP-pad (regex)",exchange_providers:"Wisselaanbieders",admin_extensions:"Beheeruitbreidingen",admin_extensions_label:"Beheerdersuitbreidingen",admin_extensions_hint:"Alleen gebruikers met beheerdersrechten kunnen extensies gebruiken.",user_default_extensions:"Standaardextensies voor gebruikers",user_default_extensions_label:"Gebruikersuitbreidingen",user_default_extensions_hint:"Extensies die standaard voor de gebruikers worden ingeschakeld.",miscellanous:"Diversen",misc_disable_extensions:"Extensies uitschakelen",misc_disable_extensions_label:"Alle extensies uitschakelen",misc_hide_api:"API verbergen",misc_hide_api_label:"Verbergt de wallet-API, extensies kunnen ervoor kiezen dit te respecteren",wallets_management:"Beheer van portemonnees",funding_source_info:"Financieringsbroninfo",funding_source:"Financieringsbron: {wallet_class}",node_balance:"Node Balans: {balance} sats",lnbits_balance:"LNbits Saldo: {balance} sats",funding_reserve_percent:"Reservepercentage: {percent} %",node_management:"Nodebeheer",node_management_not_supported:"Nodebeheer wordt niet ondersteund door de actieve financieringsbron",toggle_node_ui:"Node UI",toggle_public_node_ui:"Openbare Node UI",toggle_transactions_node_ui:"Transacties Tabblad (Uitschakelen op grote CLN-nodes)",invoice_expiry:"Factuurvervaldatum",invoice_expiry_label:"Factuurverloop (seconden)",fee_reserve:"Toegangsvergoeding Reserve",fee_reserve_msats:"Reserveringskosten in msats",fee_reserve_percent:"Reserveringskosten in procent",server_management:"Serverbeheer",base_url:"Basis-URL",base_url_label:"Statisch/Basis-URL voor de server",authentication:"Authenticatie",auth_token_expiry_label:"Token vervalt over minuten",auth_token_expiry_hint:"Tijd in minuten totdat de token verloopt",auth_allowed_methods_label:"Toegestane autorisatiemethoden",auth_allowed_methods_hint:"Selecteer autorisatiemethoden",auth_nostr_label:"Nostr Aanvraag-URL",auth_nostr_hint:"Absolute URL die de klanten zullen gebruiken om in te loggen.",auth_google_ci_label:"Google Client-ID",auth_google_ci_hint:"Zorg ervoor dat de geautoriseerde omleidings-URL's https://{domain}/api/v1/auth/google/token bevatten.",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"GitHub client-ID",auth_gh_client_id_hint:"Zorg ervoor dat de autorisatie-callback-URL is ingesteld op https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Clientgeheim",auth_keycloak_label:"Keycloak Ontdekking URL",auth_keycloak_ci_label:"Keycloak-client-ID",auth_keycloak_ci_hint:"Zorg ervoor dat de autorisatie callback-URL is ingesteld op https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Clientgeheim",currency_settings:"Valuta-instellingen",allowed_currencies:"Toegestane valuta's",allowed_currencies_hint:"Beperk het aantal beschikbare fiatvaluta's",default_account_currency:"Standaardrekeningvaluta",default_account_currency_hint:"Standaardvaluta voor boekhouding",service_fee_label:"Servicekosten (%)",service_fee_hint:"Toeslag per transactie (%)",service_fee_max_label:"Servicekosten max (sats)",service_fee_max_hint:"Maximale servicekosten om in rekening te brengen in (sats)",fee_wallet:"Kosten Portemonnee",fee_wallet_label:"Kosten portemonnee (wallet ID)",fee_wallet_hint:"Wallet-ID om geld naar over te maken",disable_fee:"Kosten uitschakelen",disable_fee_internal:"Servicekosten uitschakelen voor interne betalingen",disable_fee_internal_desc:"Dienstenkosten uitschakelen voor interne Lightning-betalingen",ui_management:"UI-beheer",ui_site_title:"Site titel",ui_site_tagline:"Site-slogan",ui_elements_enable:"Elementen op de homepage inschakelen",ui_elements_disable:"Elementen op de homepage uitschakelen",ui_toggle_elements_tip:"Verwijder startpagina-elementen zoals 'werkt op' enz.",ui_site_description:"Sitebeschrijving",ui_site_description_hint:"Gebruik platte tekst, Markdown, of ruwe HTML",ui_default_wallet_name:"Standaard Wallet Naam",lnbits_wallet:"LNbits-portemonnee",denomination:"Denominatie",denomination_hint:"De naam voor de FakeWallet token",ui_qr_code_logo:"QR-code-logo",ui_qr_code_logo_hint:"URL naar logo-afbeelding in QR-code",ui_custom_badge:"Aangepaste badge",ui_custom_badge_label:"Aangepaste Badge 'GEBRUIK MET VOORZICHTIGHEID - LNbits-portemonnee is nog in BÈTA'",ui_custom_badge_color_label:"Aangepaste Badge Kleur",themes:"Thema's",themes_hint:"Kies thema's beschikbaar voor gebruikers",custom_logo:"Aangepast logo",custom_logo_hint:"URL naar logo-afbeelding",ad_space_title:"Advertentieruimte Titel",ad_space_title_label:"Ondersteund door",ad_slots:"Advertentieblokken",ad_slots_hint:"Ad URL en afbeeldingspad in CSV-formaat, extensies kunnen ervoor kiezen te honoreren",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Advertenties ingeschakeld",ads_disabled:"Advertenties uitgeschakeld",user_management:"Gebruikersbeheer",admin_users:"Beheerdersgebruikers",admin_users_hint:"Gebruikers met beheerdersrechten",admin_users_label:"Gebruikers-ID",allowed_users:"Toegestane gebruikers",allowed_users_hint:"Alleen deze gebruikers kunnen LNbits gebruiken",allowed_users_label:"Gebruikers-ID",allow_creation_user:"Sta het aanmaken van nieuwe gebruikers toe",allow_creation_user_desc:"Sta de aanmaak van nieuwe gebruikers op de indexpagina toe",components:"Componenten",long_running_endpoints:"Top 5 langlopende eindpunten",http_request_methods:"HTTP-aanvraagmethoden",http_response_codes:"HTTP-responscodes",request_details:"Aanvraagdetails",http_request_details:"HTTP-verzoekdetails"},window.localisation.we={confirm:"Ydw",server:"Gweinydd",theme:"Thema",site_customisation:"Addasu Safle",funding:"Arian fyndio",users:"Defnyddwyr",audit:"Archwilio",apps:"Apiau",channels:"Sianelau",transactions:"Trafodion",dashboard:"Panel Gweinyddol",node:"Nod",export_users:"Allfor Defnyddwyr",no_users:"Heb ganfod defnyddwyr",total_capacity:"Capasiti Cyfanswm",avg_channel_size:"Maint Sianel Cyf.",biggest_channel_size:"Maint Sianel Fwyaf",smallest_channel_size:"Maint Sianel Lleiaf",number_of_channels:"Nifer y Sianeli",active_channels:"Sianeli Gweithredol",connect_peer:"Cysylltu â Chymar",connect:"Cysylltu",open_channel:"Sianel Agored",open:"Agor",close_channel:"Cau Sianel",close:"cau",restart:"Ailgychwyn gweinydd",save:"Save",save_tooltip:"cadw eich newidiadau",credit_debit:"Credyd / Debyd",credit_hint:"Pwyswch Enter i gyfrif credyd",credit_label:"{denomination} i gredyd",credit_ok:"Credydu/dad-debydu llwyddiannus o gronfeydd rhithwir ({amount} sats). Mae taliadau yn dibynnu ar y cronfeydd gwirioneddol sydd ar y ffynhonnell ariannu.",restart_tooltip:"Ailgychwyn y gweinydd er mwyn i newidiadau ddod i rym",add_funds_tooltip:"Ychwanegu arian at waled.",reset_defaults:"Ailosod i`r rhagosodiadau",reset_defaults_tooltip:"Dileu pob gosodiad ac ailosod i`r rhagosodiadau.",download_backup:"Lawrlwytho copi wrth gefn cronfa ddata",name_your_wallet:"Enwch eich waled {name}",paste_invoice_label:"Gludwch anfoneb, cais am daliad neu god lnurl *",lnbits_description:"Yn hawdd iw sefydlu ac yn ysgafn, gall LNbits redeg ar unrhyw ffynhonnell ariannu rhwydwaith mellt a hyd yn oed LNbits ei hun! Gallwch redeg LNbits i chi`ch hun, neu gynnig datrysiad ceidwad i eraill yn hawdd. Mae gan bob waled ei allweddi API ei hun ac nid oes cyfyngiad ar nifer y waledi y gallwch eu gwneud. Mae gallu rhannu cronfeydd yn gwneud LNbits yn arf defnyddiol ar gyfer rheoli arian ac fel offeryn datblygu. Mae estyniadau yn ychwanegu ymarferoldeb ychwanegol at LNbits fel y gallwch arbrofi gydag ystod o dechnolegau blaengar ar y rhwydwaith mellt. Rydym wedi gwneud datblygu estyniadau mor hawdd â phosibl, ac fel prosiect ffynhonnell agored am ddim, rydym yn annog pobl i ddatblygu a chyflwyno eu rhai eu hunain.",export_to_phone:"Allforio i Ffôn gyda chod QR",export_to_phone_desc:"Mae`r cod QR hwn yn cynnwys URL eich waled gyda mynediad llawn. Gallwch ei sganio o`ch ffôn i agor eich waled oddi yno.",wallet:"Waled:",wallets:"Waledi",add_wallet:"Ychwanegu waled newydd",delete_wallet:"Dileu waled",delete_wallet_desc:"Bydd y waled gyfan hon yn cael ei dileu, ni fydd modd adennill yr arian.",rename_wallet:"Ailenwi waled",update_name:"Diweddaru enw",fiat_tracking:"Olrhain Fiat",currency:"Arian Cyfred",update_currency:"Diweddaru arian cyfred",press_to_claim:"Pwyswch i hawlio bitcoin",donate:"Rhoi",view_github:"Gweld ar GitHub",voidwallet_active:" Mae VoidWallet yn weithredol! Taliadau wedi`u hanalluogi",use_with_caution:"DEFNYDDIO GYDA GOFAL - mae waled {name} yn dal yn BETA",service_fee:"Ffi gwasanaeth: {amount} % y trafodiad",service_fee_max:"Ffi gwasanaeth: {amount} % y trafodiad (uchafswm {max} sats)",service_fee_tooltip:"Ffi gwasanaeth a godir gan weinyddwr gweinydd LNbits ym mhob trafodiad sy'n mynd allan",toggle_darkmode:"Toglo Modd Tywyll",payment_reactions:"Adweithiau Talu",view_swagger_docs:"Gweld dogfennau API LNbits Swagger",api_docs:"Dogfennau API",api_keys_api_docs:"URL y nod, allweddi API a dogfennau API",lnbits_version:"Fersiwn LNbits",runs_on:"Yn rhedeg ymlaen",paste:"Gludo",paste_from_clipboard:"Gludo o'r clipfwrdd",paste_request:"Gludo Cais",create_invoice:"Creu Anfoneb",camera_tooltip:"Defnyddio camera i sganio anfoneb/QR",export_csv:"Allforio i CSV",chart_tooltip:"Dangos siart",pending:"yn yr arfaeth",copy_invoice:"Copi anfoneb",withdraw_from:"Tynnu oddi ar",cancel:"Canslo",scan:"Sgan",read:"Darllen",pay:"Talu",memo:"Memo",date:"Dyddiad",payment_processing:"Prosesu taliad...",not_enough_funds:"Dim digon o arian!",search_by_tag_memo_amount:"Chwilio yn ôl tag, memo, swm",invoice_waiting:"Anfoneb yn aros i gael ei thalu",payment_received:"Taliad a Dderbyniwyd",payment_sent:"Taliad a Anfonwyd",receive:"derbyn",send:"anfon",outgoing_payment_pending:"Taliad sy`n aros yn yr arfaeth",drain_funds:"Cronfeydd Draenio",drain_funds_desc:"Cod QR Tynnu`n ôl LNURL yw hwn ar gyfer slurpio popeth o`r waled hon. Peidiwch â rhannu gyda neb. Mae`n gydnaws â balanceCheck a balanceNotify felly efallai y bydd eich waled yn tynnu`r arian yn barhaus o`r fan hon ar ôl y codiad cyntaf.",i_understand:"Rwy`n deall",copy_wallet_url:"Copi URL waled",disclaimer_dialog_title:"Pwysig!",disclaimer_dialog:"Swyddogaeth mewngofnodi i`w ryddhau mewn diweddariad yn y dyfodol, am y tro, gwnewch yn siŵr eich bod yn rhoi nod tudalen ar y dudalen hon ar gyfer mynediad i`ch waled yn y dyfodol! Mae`r gwasanaeth hwn yn BETA, ac nid ydym yn gyfrifol am bobl sy`n colli mynediad at arian.",no_transactions:"Dim trafodion wedi`u gwneud eto",manage:"Rheoli",exchanges:"Cyfnewidfeydd",extensions:"Estyniadau",no_extensions:"Nid oes gennych unrhyw estyniadau wedi'u gosod :(",created:"Crëwyd",search_extensions:"Chwilio estyniadau",extension_sources:"Ffynonellau Estyniad",ext_sources_hint:"Repoau o ble gellir lawrlwytho'r estyniadau",ext_sources_label:"URL Ffynhonnell (defnyddiwch ffynhonnell estyniad swyddogol LNbits yn unig, a ffynonellau y gallwch ymddiried ynddynt)",warning:"Rhybudd",repository:"Ystorfa",confirm_continue:"Ydych chi'n siŵr eich bod chi eisiau parhau?",manage_extension_details:"Gosod/dadosod estyniad",install:"Gosod",uninstall:"Dadgymhwyso",drop_db:"Dileu Data",enable:"Galluogi",pay_to_enable:"Talu I Alluogi",enable_extension_details:"Galluogi estyniad ar gyfer y defnyddiwr presennol",disable:"Analluogi",delete:"Dileu",installed:"Gosodwyd",activated:"Wedi'i actifadu",deactivated:"Anweithredol",release_notes:"Nodiadau Rhyddhau",activate_extension_details:"Gwneud estyniad ar gael/anar gael i ddefnyddwyr",featured:"Nodweddwyd",all:"Pob",only_admins_can_install:"Dim ond cyfrifon gweinyddwr all osod estyniadau",admin_only:"Dim ond Gweinyddwr",new_version:"Fersiwn Newydd",extension_depends_on:"Dibynnu ar:",extension_rating_soon:"Sgôr yn dod yn fuan",extension_installed_version:"Fersiwn wedi'i gosod",extension_uninstall_warning:"Rydych chi ar fin dileu'r estyniad ar gyfer pob defnyddiwr.",uninstall_confirm:"Ie, Dad-osod",extension_db_drop_info:"Bydd yr holl ddata ar gyfer yr estyniad yn cael ei ddileu'n barhaol. Does dim ffordd o dadwneud y weithrediad hwn!",extension_db_drop_warning:"Rydych chi ar fin dileu'r holl ddata ar gyfer yr estyniad. Teipiwch enw'r estyniad i barhau:",extension_required_lnbits_version:"Mae'r rhyddhau hwn yn gofyn o leiaf am fersiwn LNbits",min_version:"Isafswm (cynnwys)",max_version:"Uchafswm (wedi'i eithrio)",payment_hash:"Hais Taliad",fee:"Fee",amount:"swm",amount_sats:"Swm (sats)",tag:"Tag",unit:"Uned",description:"Disgrifiad",expiry:"dod i ben",webhook:"bachyn we",payment_proof:"prawf taliad",update:"Diweddariad",update_available:"Diweddariad {version} ar gael!",latest_update:"Rydych chi ar y fersiwn diweddaraf {version}.",notifications:"Hysbysiadau",no_notifications:"Dim hysbysiadau",notifications_disabled:"Hysbysiadau statws LNbits wedi'u analluogi.",enable_notifications:"Galluogi Hysbysiadau",enable_notifications_desc:"Os bydd wedi'i alluogi bydd yn nôl y diweddariadau Statws LNbits diweddaraf, fel digwyddiadau diogelwch a diweddariadau.",enable_watchdog:"Galluogi Watchdog",enable_watchdog_desc:"Os bydd yn cael ei alluogi bydd yn newid eich ffynhonnell ariannu i VoidWallet yn awtomatig os bydd eich balans yn is na balans LNbits. Bydd angen i chi alluogi â llaw ar ôl diweddariad.",watchdog_interval:"Amserlennu Gwylio",watchdog_interval_desc:"Pa mor aml y dylai'r dasg gefndir wirio am signal torri yn y gwarchodfa delta [node_balance - lnbits_balance] (mewn munudau).",watchdog_delta:"Watchdog Delta",watchdog_delta_desc:"Terfyn cyn i'r switshladd newid ffynhonnell ariannu i VoidWallet [lnbits_balance - node_balance > delta]",status:"Statws",notification_source:"Ffynhonnell Hysbysiad",notification_source_label:"URL Ffynhonnell (defnyddiwch yn unig ffynhonnell statws swyddogol LNbits, a ffynonellau y gallwch ymddiried ynddynt)",more:"mwy",less:"llai",releases:"Rhyddhau",watchdog:"Gwyliwr",server_logs:"Logiau Gweinydd",ip_blocker:"Rheolydd IP",security:"Diogelwch",security_tools:"Offer teclynnau diogelwch",block_access_hint:"Atal mynediad gan IP",allow_access_hint:"Caniatáu mynediad gan IP (bydd yn diystyru IPs sydd wedi'u blocio)",enter_ip:"Rhowch IP a gwasgwch enter",rate_limiter:"Cyfyngydd Cyfradd",wallet_limiter:"Cyfyngwr Waled",wallet_limit_max_withdraw_per_day:"Uchafswm tynnu’n ôl waled dyddiol mewn sats (0 i analluogi)",wallet_max_ballance:"Uchafswm balans y waled mewn sats (0 i analluogi)",wallet_limit_secs_between_trans:"Eiliadau lleiaf rhwng trafodion fesul waled (0 i analluogi)",number_of_requests:"Nifer y ceisiadau",time_unit:"Uned amser",minute:"munud",second:"ail",hour:"awr",disable_server_log:"Analluogi Log Gweinydd",enable_server_log:"Galluogi Log Gweinydd",coming_soon:"Nodwedd yn dod yn fuan",session_has_expired:"Mae eich sesiwn wedi dod i ben. Mewngofnodwch eto.",instant_access_question:"Eisiau mynediad ar unwaith?",login_with_user_id:"Mewngofnodi gyda ID y defnyddiwr",or:"neu",create_new_wallet:"Creu Waled Newydd",login_to_account:"Mewngofnodwch i'ch cyfrif",create_account:"Creu cyfrif",account_settings:"Gosodiadau Cyfrif",signin_with_nostr:"Parhewch gyda Nostr",signin_with_google:"Mewngofnodi gyda Google",signin_with_github:"Mewngofnodi gyda GitHub",signin_with_keycloak:"Mewngofnodi gyda Keycloak",username_or_email:"Defnyddiwr neu E-bost",password:"Cyfrinair",password_config:"Ffurfweddiad Cyfrinair",password_repeat:"Ailadrodd cyfrinair",change_password:"Newid Cyfrinair",update_credentials:"Diweddaru Cyfrifoldebau",update_pubkey:"Diweddaru Allwedd Gyhoeddus",set_password:"Gosod Cyfrinair",invalid_password:"Rhaid i'r cyfrinair gynnwys o leiaf 8 nod.",login:"Mewngofnodi",register:"Cofrestru",username:"Enw defnyddiwr",pubkey:"Allwedd Gyhoeddus",user_id:"ID Defnyddiwr",email:"E-bost",first_name:"Enw Cyntaf",last_name:"Cyfenw",picture:"Llun",verify_email:"Gwirio e-bost gyda",account:"Cyfrif",update_account:"Diweddaru Cyfrif",invalid_username:"Enw Defnyddiwr Annilys",auth_provider:"Darparwr Dilysiad",my_account:"Fy Nghyfrif",back:"Yn ôl",logout:"Allgofnodi",look_and_feel:"Edrych a Theimlo",toggle_gradient:"Toglo Graddiênt",gradient_background:"Cefndir Graddiant",language:"Iaith",color_scheme:"Cynllun Lliw",admin_settings:"Gosodiadau Gweinyddol",extension_cost:"Mae'r rhyddhad hwn yn gofyn am daliad o leiaf {cost} sats.",extension_paid_sats:"Rydych chi eisoes wedi talu {paid_sats} sats.",release_details_error:"Methu cael manylion y rhyddhau.",pay_from_wallet:"Talu o'r Waled",wallet_required:"Waled *",show_qr:"Dangos QR",retry_install:"Ailgeisio Gosod",new_payment:"Gwneud Taliad Newydd",update_payment:"Diweddarwch Dalu",already_paid_question:"Ydych chi eisoes wedi talu?",sell:"Gwerthu",sell_require:"Gofynnwch am daliad i alluogi estyniad",sell_info:"Mae angen taliad o leiaf {amount} sats ar yr estyniad {name} i'w alluogi.",hide_empty_wallets:"Cuddio waledau gwag",recheck:"Ailwirio",contributors:"Cyfranwyr",license:"Trwydded",reset_key:"Ailosod Allwedd",reset_password:"Ailosod Cyfrinair",border_choices:"Dewisiadau Ffin",select_all:"Dewis Pob Un",nfc_supported:"Cefnogir NFC",nfc_not_supported:"NFC heb ei Gefnogi",expire_date:"Dyddiad Dod i Ben:",hash:"Hash:",welcome_lnbits:"Croeso i LNbits",setup_su_account:"Sefydlu'r cyfrif Superuser isod.",create_ticker_converter:"Creu Trosi Ticiwr Arian",enable_audit:"Galluogi Archwilio",recommended:"Argymhellir",audit_desc:"Cofnodi ceisiadau HTTP yn ôl y hidlwyr penodedig",audit_record_req:"Cofnodi Corff y Cais",audit_record_warning:"Rhybudd:",audit_record_req_warning_1:"data cyfrinachol (fel cyfrineiriau) yn cael eu logio.",audit_record_req_warning_2:"mae gan y corff cais faint mawr.",audit_record_use:"Defnyddiwch ef gyda gofal.",audit_ip:"Cofnodi Cyfeiriad IP",audit_ip_desc:"Cofnodwch gyfeiriad IP y cleient",audit_path_params:"Cofnod Paramedrau Llwybr",audit_query_params:"Cofnod Paramedrau Holiannau",audit_http_methods:"Cynnwys Dulliau HTTP",audit_http_methods_hint:"Rhestr o ddulliau HTTP i'w cynnwys. Yn golygu pob un yw rhestrau gwag.",audit_http_methods_label:"Dulliau HTTP",audit_resp_codes:"Cynnwys Codau Ymateb HTTP",audit_resp_codes_hint:"Rhestr o godau HTTP i'w cynnwys (cydweddu regex). Mae rhestrau gwag yn golygu popeth. Ee: 4.*, 5.*",audit_resp_codes_label:"Cod Ymateb HTTP (regex)",audit_paths:"Cynnwys Llwybrau",audit_paths_hint:"Rhestr o lwybrau i'w cynnwys (cydweddiad rhegiwlar). Mae rhestr wag yn golygu pob un.",audit_paths_label:"Llwybr HTTP (regex)",audit_paths_exclude:"Eithrio Llwybrau",audit_paths_exclude_hint:"Rhestr o lwybrau i'w heithrio (cydweddu regex). Mae rhestr wag yn golygu dim.",audit_paths_exclude_label:"Llwybr HTTP (regex)",exchange_providers:"Darparwyr Cyfnewid",admin_extensions:"Estyniadau Gweinyddol",admin_extensions_label:"Estyniadau gweinyddu",admin_extensions_hint:"Dim ond defnyddiwr Estyniadau gyda braint gweinyddwr sy'n gallu defnyddio",user_default_extensions:"Rhyngwyneb Diofyn Defnyddiwr",user_default_extensions_label:"Estyniadau defnyddiwr",user_default_extensions_hint:"Estyniadau a fydd yn cael eu galluogi yn ddiofyn ar gyfer y defnyddwyr.",miscellanous:"Amrywiol",misc_disable_extensions:"Analluogi Estyniadau",misc_disable_extensions_label:"Analluogi'r holl estynniadau",misc_hide_api:"Cuddio API",misc_hide_api_label:"Yn cuddio api waled, gall estyniadau ddewis anrhydeddu",wallets_management:"Rheoli Waledau",funding_source_info:"Gwybodaeth am Ffynhonnell Ariannu",funding_source:"Ffynhonnell Ariannu: {wallet_class}",node_balance:"Cydbwysedd Nôd: {balance} sats",lnbits_balance:"Cydbwysedd LNbits: {balance} sats",funding_reserve_percent:"Cadw Canran: {percent} %",node_management:"Rheoli Nodau",node_management_not_supported:"Nid yw Rheoli Nodau yn cael ei gefnogi gan ffynhonnell ariannu weithredol",toggle_node_ui:"Node UI",toggle_public_node_ui:"UI Nod Cyhoeddus",toggle_transactions_node_ui:"Tab Trafodion (Analluoga ar nodau CLN mawr)",invoice_expiry:"Dyddiad Dod i Ben yr Anfoneb",invoice_expiry_label:"Darfod anfoneb (eiliadau)",fee_reserve:"Cadw Ffi",fee_reserve_msats:"Ffi cadw yn msats",fee_reserve_percent:"Ffioedd cadw mewn canran",server_management:"Rheoli Gweinyddwr",base_url:"Prif URL",base_url_label:"Url statig/sylfaen ar gyfer y gweinydd",authentication:"Dilysiad",auth_token_expiry_label:"Cofnodi munudau dod i ben",auth_token_expiry_hint:"Amser mewn munudau tan fod y tocyn yn dod i ben",auth_allowed_methods_label:"Dulliau awdurdodi a ganiateir",auth_allowed_methods_hint:"Dewiswch ddulliau awdurdodi",auth_nostr_label:"URL Cais Nostr",auth_nostr_hint:"URL absoliwt y bydd y cleientiaid yn ei ddefnyddio i fewngofnodi.",auth_google_ci_label:"ID Cleient Google",auth_google_ci_hint:"Sicrhewch fod yr URIs adnewyddu awdurdodedig yn cynnwys https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Cwsmer Google Dirgel",auth_gh_client_id_label:"ID Cleient GitHub",auth_gh_client_id_hint:"Gwnewch yn siŵr bod y URL galwad yn ôl awdurdodi wedi'i osod i https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Cudd-wybodaeth Cleient GitHub",auth_keycloak_label:"URL Darganfod Keycloak",auth_keycloak_ci_label:"ID Cleient Keycloak",auth_keycloak_ci_hint:"Gwnewch yn siŵr bod URL adalw awdurdodiad wedi'i osod i https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Cyfrinach Cleient Keycloak",currency_settings:"Gosodiadau Arian Cyfred",allowed_currencies:"Ariannau a Ganiateir",allowed_currencies_hint:"Cyfyngu nifer yr arian cyfred fiat sydd ar gael",default_account_currency:"Arian Cyfred Diofyn y Cyfrif",default_account_currency_hint:"Arian cyfred diofyn ar gyfer cyfrifyddu",service_fee_label:"Ffioedd gwasanaeth (%)",service_fee_hint:"Ffi a godir fesul trx (%)",service_fee_max_label:"Ffioedd gwasanaeth uchaf (sats)",service_fee_max_hint:"Uchafswm ffi gwasanaeth i godi mewn (sats)",fee_wallet:"Waled Ffioedd",fee_wallet_label:"Ffi waled (ID waled)",fee_wallet_hint:"ID Cwlt hon i anfon cronfeydd i",disable_fee:"Analluogi Ffi",disable_fee_internal:"Analluogi Ffi Gwasanaeth ar gyfer Taliadau Mewnol",disable_fee_internal_desc:"Analluogi Ffi Gwasanaeth ar gyfer Taliadau Mellt Mewnol",ui_management:"Rheoli UI",ui_site_title:"Teitl y Safle",ui_site_tagline:"Tagline'r Safle",ui_elements_enable:"Galluogi elfennau ar hafan",ui_elements_disable:"Analluoga elfennau ar y dudalen gartref",ui_toggle_elements_tip:"Tynn elfennau tudalen gartref fel 'yn rhedeg ar' ayyb.",ui_site_description:"Disgrifiad Safle",ui_site_description_hint:"Defnyddiwch destun plaen, Markdown, neu HTML crai",ui_default_wallet_name:"Enw Diofyn y Waled",lnbits_wallet:"Cwdyn LNbits",denomination:"Enwad",denomination_hint:"Enw'r token FakeWallet",ui_qr_code_logo:"Logo Cod QR",ui_qr_code_logo_hint:"URL i ddelwedd logo yn y cod QR",ui_custom_badge:"Bathodyn Personol",ui_custom_badge_label:"Bathodyn Custom 'DEFNYDDIO GYDA RHYBUDD - mae waled LNbits dal mewn BETA'",ui_custom_badge_color_label:"Lliw Bathodyn Personol",themes:"Themâu",themes_hint:"Dewiswch themâu sydd ar gael i ddefnyddwyr",custom_logo:"Logo Personol",custom_logo_hint:"URL i ddelwedd logo",ad_space_title:"Teitl Gofod Hysbysebu",ad_space_title_label:"Cefnogir gan",ad_slots:"Slotiau Hysbysebu",ad_slots_hint:"Ychwanegu url a llwybrau ffeil delwedd yn y fformat CSV, gall estyniadau ddewis i barchu",ad_slots_label:"url;url_delwedd_ysgafn;url_delwedd_tywyll, url...",ads_enabled:"Hysbysebion wedi'u Galluogi",ads_disabled:"Hysbysebion Wedi'u Analluogi",user_management:"Rheoli Defnyddwyr",admin_users:"Defnyddwyr Gweinyddol",admin_users_hint:"Defnyddwyr â breintiau gweinyddol",admin_users_label:"ID Defnyddiwr",allowed_users:"Defnyddwyr a Ganiateir",allowed_users_hint:"Dim ond y defnyddwyr hyn all ddefnyddio LNbits",allowed_users_label:"ID defnyddiwr",allow_creation_user:"Caniatáu creu defnyddwyr newydd",allow_creation_user_desc:"Caniatáu creu defnyddwyr newydd ar y dudalen fynegai",components:"Cydrannau",long_running_endpoints:"5 Pwynt Terfyn Hir-rhediad Uchaf",http_request_methods:"Dulliau Cais HTTP",http_response_codes:"Codau Ymateb HTTP",request_details:"Manylion y Cais",http_request_details:"Manylion Cais HTTP"},window.localisation.pt={confirm:"Sim",server:"Servidor",theme:"Tema",site_customisation:"Customização do Site",funding:"Financiamento",users:"Usuários",audit:"Auditoria",apps:"Aplicativos",channels:"Canais",transactions:"Transações",dashboard:"Painel de Controle",node:"Nó",export_users:"Exportar Usuários",no_users:"Nenhum usuário encontrado",total_capacity:"Capacidade Total",avg_channel_size:"Tamanho Médio do Canal",biggest_channel_size:"Maior Tamanho do Canal",smallest_channel_size:"Menor Tamanho de Canal",number_of_channels:"Número de Canais",active_channels:"Canais Ativos",connect_peer:"Conectar Par",connect:"Conectar",open_channel:"Canal Aberto",open:"Abrir",close_channel:"Fechar Canal",close:"Fechar",restart:"Reiniciar servidor",save:"Gravar",save_tooltip:"Gravar as alterações",credit_debit:"Crédito / Débito",credit_hint:"Pressione Enter para creditar a conta",credit_label:"{denomination} para creditar",credit_ok:"Sucesso ao creditar/debitar fundos virtuais ({amount} sats). Os pagamentos dependem dos fundos reais na fonte de financiamento.",restart_tooltip:"Reinicie o servidor para que as alterações tenham efeito",add_funds_tooltip:"Adicionar fundos a uma carteira.",reset_defaults:"Redefinir para padrões",reset_defaults_tooltip:"Apagar todas as configurações e redefinir para os padrões.",download_backup:"Fazer backup da base de dados",name_your_wallet:"Nomeie sua carteira {name}",paste_invoice_label:"Cole uma fatura, pedido de pagamento ou código lnurl *",lnbits_description:"Fácil de configurar e leve, o LNbits pode ser executado em qualquer fonte de financiamento da Lightning Network e até mesmo o LNbits em si! Você pode executar o LNbits para si mesmo ou oferecer facilmente uma solução de custódia para outros. Cada carteira tem suas próprias chaves de API e não há limite para o número de carteiras que você pode criar. Ser capaz de particionar fundos torna o LNbits uma ferramenta útil para gerenciamento de dinheiro e como uma ferramenta de desenvolvimento. As extensões adicionam funcionalidades extras ao LNbits para que você possa experimentar uma série de tecnologias de ponta na rede lightning. Nós tornamos o desenvolvimento de extensões o mais fácil possível e, como um projeto gratuito e de código aberto, incentivamos as pessoas a desenvolver e enviar as suas próprias.",export_to_phone:"Exportar para o telefone com código QR",export_to_phone_desc:"Este código QR contém a URL da sua carteira com acesso total. Você pode escaneá-lo do seu telefone para abrir sua carteira a partir dele.",wallet:"Carteira:",wallets:"Carteiras",add_wallet:"Adicionar nova carteira",delete_wallet:"Excluir carteira",delete_wallet_desc:"Toda a carteira será excluída, os fundos serão IRRECUPERÁVEIS.",rename_wallet:"Renomear carteira",update_name:"Atualizar nome",fiat_tracking:"Rastreamento Fiat",currency:"Moeda",update_currency:"Atualizar moeda",press_to_claim:"Pressione para solicitar bitcoin",donate:"Doar",view_github:"Ver no GitHub",voidwallet_active:"VoidWallet está ativo! Pagamentos desabilitados",use_with_caution:"USE COM CAUTELA - a carteira {name} ainda está em BETA",service_fee:"Taxa de serviço: {amount} % por transação",service_fee_max:"Taxa de serviço: {amount} % por transação (máximo de {max} sats)",service_fee_tooltip:"Taxa de serviço cobrada pelo administrador do servidor LNbits por transação de saída",toggle_darkmode:"Alternar modo escuro",payment_reactions:"Reações de Pagamento",view_swagger_docs:"Ver a documentação da API do LNbits Swagger",api_docs:"Documentação da API",api_keys_api_docs:"URL do Nó, chaves de API e documentação de API",lnbits_version:"Versão do LNbits",runs_on:"Executa em",paste:"Colar",paste_from_clipboard:"Colar da área de transferência",paste_request:"Colar Pedido",create_invoice:"Criar Fatura",camera_tooltip:"Usar a câmara para escanear uma fatura / QR",export_csv:"Exportar para CSV",chart_tooltip:"Mostrar gráfico",pending:"Pendente",copy_invoice:"Copiar fatura",withdraw_from:"Retirar de",cancel:"Cancelar",scan:"Escanear",read:"Ler",pay:"Pagar",memo:"Memo",date:"Data",payment_processing:"Processando pagamento...",not_enough_funds:"Fundos insuficientes!",search_by_tag_memo_amount:"Pesquisar por tag, memo, quantidade",invoice_waiting:"Fatura aguardando pagamento",payment_received:"Pagamento Recebido",payment_sent:"Pagamento Enviado",receive:"receber",send:"enviar",outgoing_payment_pending:"Pagamento de saída pendente",drain_funds:"Esvasiar carteira",drain_funds_desc:"Este é um código QR de saque LNURL para sacar tudo desta carteira. Não o partilhe com ninguém. É compatível com balanceCheck e balanceNotify para que a sua carteira possa continuar levantando os fundos continuamente daqui após o primeiro saque.",i_understand:"Eu entendo",copy_wallet_url:"Copiar URL da carteira",disclaimer_dialog_title:"Importante!",disclaimer_dialog:"Funcionalidade de login a ser lançada numa atualização futura, por enquanto, certifique-se que marca esta página para acesso futuro à sua carteira! Este serviço está em BETA, e não nos responsabilizamos por pessoas que perderem o acesso aos fundos.",no_transactions:"Ainda não foram feitas transações",manage:"Gerir",exchanges:"Trocas",extensions:"Extensões",no_extensions:"Não há nenhuma extensão instalada :(",created:"Criado",search_extensions:"Pesquisar extensões",extension_sources:"Fontes de Extensão",ext_sources_hint:"Repositórios de onde as extensões podem ser baixadas",ext_sources_label:"URL de origem (use apenas a fonte oficial da extensão LNbits e fontes em que você confia)",warning:"Aviso",repository:"Repositório",confirm_continue:"Tem certeza de que deseja continuar?",manage_extension_details:"Instalar/desinstalar extensão",install:"Instalar",uninstall:"Desinstalar",drop_db:"Remover Dados",enable:"Ativar",pay_to_enable:"Pagar para Ativar",enable_extension_details:"Ativar extensão para o usuário atual",disable:"Desativar",delete:"Excluir",installed:"Instalado",activated:"Ativado",deactivated:"Desativado",release_notes:"Notas de Lançamento",activate_extension_details:"Torne a extensão disponível/indisponível para usuários",featured:"Destacado",all:"Todos",only_admins_can_install:"Apenas contas de administrador podem instalar extensões.",admin_only:"Apenas para administradores",new_version:"Nova Versão",extension_depends_on:"Depende de:",extension_rating_soon:"Avaliações em breve",extension_installed_version:"Versão instalada",extension_uninstall_warning:"Você está prestes a remover a extensão para todos os usuários.",uninstall_confirm:"Sim, Desinstalar",extension_db_drop_info:"Todos os dados da extensão serão permanentemente excluídos. Não há como desfazer essa operação!",extension_db_drop_warning:"Você está prestes a remover todos os dados para a extensão. Por favor, digite o nome da extensão para continuar:",extension_required_lnbits_version:"Esta versão requer pelo menos a versão LNbits",min_version:"Mínimo (incluído)",max_version:"Máximo (excluído)",payment_hash:"Hash de pagamento",fee:"Taxa",amount:"Quantidade",amount_sats:"Quantidade (sats)",tag:"Etiqueta",unit:"Unidade",description:"Descrição",expiry:"Validade",webhook:"Webhook",payment_proof:"Comprovativo de pagamento",update:"Atualizar",update_available:"Atualização {version} disponível!",latest_update:"Você está na última versão {version}.",notifications:"Notificações",no_notifications:"Sem notificações",notifications_disabled:"As notificações de status do LNbits estão desativadas.",enable_notifications:"Ativar Notificações",enable_notifications_desc:"Se ativado, ele buscará as últimas atualizações de status do LNbits, como incidentes de segurança e atualizações.",enable_watchdog:"Ativar Watchdog",enable_watchdog_desc:"Se ativado, mudará automaticamente a sua fonte de financiamento para VoidWallet caso o seu saldo seja inferior ao saldo LNbits. Você precisará ativar manualmente após uma atualização.",watchdog_interval:"Intervalo do Watchdog",watchdog_interval_desc:"Com que frequência a tarefa de fundo deve verificar um sinal de desligamento no delta do watchdog [node_balance - lnbits_balance] (em minutos).",watchdog_delta:"Observador Delta",watchdog_delta_desc:"Limite antes que o killswitch altere a fonte de financiamento para VoidWallet [lnbits_balance - node_balance > delta]",status:"Estado",notification_source:"Fonte de Notificação",notification_source_label:"URL de Origem (use apenas a fonte oficial de status do LNbits e fontes em que confia)",more:"mais",less:"menos",releases:"Lançamentos",watchdog:"Cão de guarda",server_logs:"Registros do Servidor",ip_blocker:"Bloqueador de IP",security:"Segurança",security_tools:"Ferramentas de segurança",block_access_hint:"Bloquear acesso por IP",allow_access_hint:"Permitir acesso por IP (substituirá IPs bloqueados)",enter_ip:"Digite o IP e pressione enter.",rate_limiter:"Limitador de Taxa",wallet_limiter:"Limitador de Carteira",wallet_limit_max_withdraw_per_day:"Limite diário máximo de saque da carteira em sats (0 para desativar)",wallet_max_ballance:"Saldo máximo da carteira em sats (0 para desativar)",wallet_limit_secs_between_trans:"Minutos seg. entre transações por carteira (0 para desativar)",number_of_requests:"Número de solicitações",time_unit:"Unidade de tempo",minute:"minuto",second:"segundo",hour:"hora",disable_server_log:"Desativar Log do Servidor",enable_server_log:"Ativar Log do Servidor",coming_soon:"Funcionalidade em breve",session_has_expired:"Sua sessão expirou. Por favor, faça login novamente.",instant_access_question:"Quer acesso imediato?",login_with_user_id:"Entrar com ID do usuário",or:"ou",create_new_wallet:"Criar Nova Carteira",login_to_account:"Faça login na sua conta",create_account:"Criar conta",account_settings:"Configurações da Conta",signin_with_nostr:"Continue com Nostr",signin_with_google:"Entrar com o Google",signin_with_github:"Entrar com o GitHub",signin_with_keycloak:"Entrar com o Keycloak",username_or_email:"Nome de usuário ou Email",password:"Senha",password_config:"Configuração de Senha",password_repeat:"Repetição de senha",change_password:"Alterar Senha",update_credentials:"Atualizar Credenciais",update_pubkey:"Atualizar Chave Pública",set_password:"Definir Senha",invalid_password:"A senha deve ter pelo menos 8 caracteres",login:"Entrar",register:"Registrar",username:"Nome de usuário",pubkey:"Chave Pública",user_id:"ID do Usuário",email:"E-mail",first_name:"Nome próprio",last_name:"Sobrenome",picture:"Foto",verify_email:"Verifique o e-mail com",account:"Conta",update_account:"Atualizar Conta",invalid_username:"Nome de usuário inválido",auth_provider:"Provedor de Autenticação",my_account:"Minha Conta",back:"Voltar",logout:"Sair",look_and_feel:"Aparência e Sensação",toggle_gradient:"Alternar Gradiente",gradient_background:"Fundo Gradiente",language:"Idioma",color_scheme:"Esquema de Cores",admin_settings:"Configurações de Administração",extension_cost:"Este lançamento requer um pagamento mínimo de {cost} sats.",extension_paid_sats:"Você já pagou {paid_sats} sats.",release_details_error:"Não é possível obter os detalhes da versão.",pay_from_wallet:"Pague da Carteira",wallet_required:"Carteira *",show_qr:"Exibir QR",retry_install:"Reinstalar Tente Novamente",new_payment:"Realizar Novo Pagamento",update_payment:"Atualizar Pagamento",already_paid_question:"Já pagou?",sell:"Vender",sell_require:"Peça pagamento para habilitar a extensão",sell_info:"A extensão {name} requer um pagamento mínimo de {amount} sats para habilitar.",hide_empty_wallets:"Ocultar carteiras vazias",recheck:"Rever",contributors:"Colaboradores",license:"Licença",reset_key:"Redefinir Chave",reset_password:"Redefinir Senha",border_choices:"Opções de Borda",select_all:"Selecionar tudo",nfc_supported:"NFC Suportado",nfc_not_supported:"NFC não suportado",expire_date:"Data de Expiração:",hash:"Hash:",welcome_lnbits:"Bem-vindo ao LNbits",setup_su_account:"Configure a conta Superusuário abaixo.",create_ticker_converter:"Criar Conversor de Moeda Ticker",enable_audit:"Ativar Auditoria",recommended:"Recomendado",audit_desc:"Registre solicitações HTTP de acordo com os filtros especificados",audit_record_req:"Registrar Corpo da Solicitação",audit_record_warning:"Aviso:",audit_record_req_warning_1:"dados confidenciais (como senhas) serão registrados.",audit_record_req_warning_2:"o corpo da solicitação pode ter um tamanho grande.",audit_record_use:"Use com cautela.",audit_ip:"Registrar Endereço IP",audit_ip_desc:"Registre o endereço IP do cliente",audit_path_params:"Registrar parâmetros de caminho",audit_query_params:"Registrar Parâmetros de Consulta",audit_http_methods:"Incluir métodos HTTP",audit_http_methods_hint:"Lista de métodos HTTP a serem incluídos. Listas vazias significam todos.",audit_http_methods_label:"Métodos HTTP",audit_resp_codes:"Incluir Códigos de Resposta HTTP",audit_resp_codes_hint:"Lista de códigos HTTP a serem incluídos (correspondência com expressões regulares). Listas vazias significam todos. Ex: 4.*, 5.*",audit_resp_codes_label:"Código de resposta HTTP (regex)",audit_paths:"Incluir Caminhos",audit_paths_hint:"Lista de caminhos a serem incluídos (correspondência regex). Lista vazia significa todos.",audit_paths_label:"Caminho HTTP (regex)",audit_paths_exclude:"Excluir Caminhos",audit_paths_exclude_hint:"Lista de caminhos a serem excluídos (correspondência com regex). Lista vazia significa nenhum.",audit_paths_exclude_label:"Caminho HTTP (regex)",exchange_providers:"Provedores de Câmbio",admin_extensions:"Extensões do Administrador",admin_extensions_label:"Extensões administrativas",admin_extensions_hint:"Somente usuários com privilégios de administrador podem usar extensões.",user_default_extensions:"Extensões Padrão do Usuário",user_default_extensions_label:"Extensões do usuário",user_default_extensions_hint:"Extensões que serão ativadas por padrão para os usuários.",miscellanous:"Diversos",misc_disable_extensions:"Desativar Extensões",misc_disable_extensions_label:"Desativar todas as extensões",misc_hide_api:"Ocultar API",misc_hide_api_label:"Oculta a API da carteira, extensões podem optar por honrar",wallets_management:"Gestão de Carteiras",funding_source_info:"Informações da Fonte de Financiamento",funding_source:"Fonte de Financiamento: {wallet_class}",node_balance:"Saldo do Nó: {balance} sats",lnbits_balance:"Saldo do LNbits: {balance} sats",funding_reserve_percent:"Reserve Percentagem: {percent} %",node_management:"Gerenciamento de Nós",node_management_not_supported:"Gerenciamento de nós não suportado pela fonte de financiamento ativa",toggle_node_ui:"Interface do Usuário de Nó",toggle_public_node_ui:"Interface Pública do Nó",toggle_transactions_node_ui:"Aba de Transações (Desativar em nós grandes do CLN)",invoice_expiry:"Validade da Fatura",invoice_expiry_label:"Expiração da fatura (segundos)",fee_reserve:"Reserva de Taxa",fee_reserve_msats:"Taxa de reserva em msats",fee_reserve_percent:"Taxa de reserva em porcentagem",server_management:"Gerenciamento de Servidor",base_url:"URL base",base_url_label:"URL estático/base para o servidor",authentication:"Autenticação",auth_token_expiry_label:"Minutos de expiração do token",auth_token_expiry_hint:"Tempo em minutos até que o token expire",auth_allowed_methods_label:"Métodos de autorização permitidos",auth_allowed_methods_hint:"Selecione os métodos de autorização",auth_nostr_label:"URL de Solicitação Nostr",auth_nostr_hint:"URL absoluta que os clientes usarão para fazer login.",auth_google_ci_label:"ID do Cliente do Google",auth_google_ci_hint:"Certifique-se de que os URIs de redirecionamento autorizados contenham https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Segredo do Cliente do Google",auth_gh_client_id_label:"ID do Cliente do GitHub",auth_gh_client_id_hint:"Certifique-se de que a URL de retorno de chamada de autorização esteja definida como https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Cliente Secreto do GitHub",auth_keycloak_label:"URL de Descoberta do Keycloak",auth_keycloak_ci_label:"ID do Cliente do Keycloak",auth_keycloak_ci_hint:"Certifique-se de que o URL de retorno de chamada de autorização esteja definido como https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Segredo do Cliente do Keycloak",currency_settings:"Configurações de Moeda",allowed_currencies:"Moedas Permitidas",allowed_currencies_hint:"Limite o número de moedas fiduciárias disponíveis",default_account_currency:"Moeda Padrão da Conta",default_account_currency_hint:"Moeda padrão para contabilidade",service_fee_label:"Taxa de serviço (%)",service_fee_hint:"Taxa cobrada por transação (%)",service_fee_max_label:"Taxa de serviço máx (sats)",service_fee_max_hint:"Taxa máxima de serviço a cobrar em (sats)",fee_wallet:"Carteira de Taxas",fee_wallet_label:"Carteira de taxa (ID da carteira)",fee_wallet_hint:"ID da carteira para enviar fundos para",disable_fee:"Desativar taxa",disable_fee_internal:"Desativar Taxa de Serviço para Pagamentos Internos",disable_fee_internal_desc:"Desativar Taxa de Serviço para Pagamentos Internos Lightning",ui_management:"Gestão de UI",ui_site_title:"Título do Site",ui_site_tagline:"Tagline do site",ui_elements_enable:"Ativar elementos na página inicial",ui_elements_disable:"Desativar elementos na página inicial",ui_toggle_elements_tip:"Remova elementos da homepage como 'executa em' etc.",ui_site_description:"Descrição do Site",ui_site_description_hint:"Use texto simples, Markdown ou HTML bruto",ui_default_wallet_name:"Nome Padrão da Carteira",lnbits_wallet:"Carteira LNbits",denomination:"Denominação",denomination_hint:"O nome para o token FakeWallet",ui_qr_code_logo:"Logo do Código QR",ui_qr_code_logo_hint:"URL para imagem do logotipo no código QR",ui_custom_badge:"Distintivo Personalizado",ui_custom_badge_label:"Emblema Personalizado 'USE COM CAUTELA - A carteira LNbits ainda está em BETA'",ui_custom_badge_color_label:"Cor Personalizada do Distintivo",themes:"Temas",themes_hint:"Escolha os temas disponíveis para os usuários",custom_logo:"Logotipo Personalizado",custom_logo_hint:"URL para imagem do logotipo",ad_space_title:"Título do Espaço Publicitário",ad_space_title_label:"Suportado por",ad_slots:"Espaços Publicitários",ad_slots_hint:"Adicionar URL e caminhos de arquivo de imagem no formato CSV, extensões podem optar por respeitar",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Anúncios Ativados",ads_disabled:"Anúncios Desativados",user_management:"Gestão de Usuários",admin_users:"Usuários Administrativos",admin_users_hint:"Usuários com privilégios de administrador",admin_users_label:"ID do Usuário",allowed_users:"Usuários Permitidos",allowed_users_hint:"Somente estes usuários podem usar LNbits",allowed_users_label:"ID do usuário",allow_creation_user:"Permitir a criação de novos usuários",allow_creation_user_desc:"Permitir a criação de novos usuários na página inicial",components:"Componentes",long_running_endpoints:"Principais 5 Endpoints de Longa Execução",http_request_methods:"Métodos de Requisição HTTP",http_response_codes:"Códigos de Resposta HTTP",request_details:"Detalhes da solicitação",http_request_details:"Detalhes da Solicitação HTTP"},window.localisation.br={confirm:"Sim",server:"Servidor",theme:"Tema",site_customisation:"Customização do Site",funding:"Financiamento",users:"Usuários",audit:"Auditoria",apps:"Aplicativos",channels:"Canais",transactions:"Transações",dashboard:"Painel de Controle",node:"Nó",export_users:"Exportar Usuários",no_users:"Nenhum usuário encontrado",total_capacity:"Capacidade Total",avg_channel_size:"Tamanho médio do canal",biggest_channel_size:"Maior Tamanho de Canal",smallest_channel_size:"Tamanho Mínimo do Canal",number_of_channels:"Número de Canais",active_channels:"Canais Ativos",connect_peer:"Conectar Par",connect:"Conectar",open_channel:"Canal Aberto",open:"Abrir",close_channel:"Fechar Canal",close:"Fechar",restart:"Reiniciar servidor",save:"Salvar",save_tooltip:"Salvar suas alterações",credit_debit:"Crédito / Débito",credit_hint:"Pressione Enter para creditar a conta",credit_label:"{denomination} para creditar",credit_ok:"Sucesso ao creditar/debitar fundos virtuais ({amount} sats). Os pagamentos dependem dos fundos reais na fonte de financiamento.",restart_tooltip:"Reinicie o servidor para que as alterações tenham efeito",add_funds_tooltip:"Adicionar fundos a uma carteira.",reset_defaults:"Redefinir para padrões",reset_defaults_tooltip:"Apagar todas as configurações e redefinir para os padrões.",download_backup:"Fazer backup do banco de dados",name_your_wallet:"Nomeie sua carteira {name}",paste_invoice_label:"Cole uma fatura, pedido de pagamento ou código lnurl *",lnbits_description:"Fácil de configurar e leve, o LNbits pode ser executado em qualquer fonte de financiamento da Lightning Network e até mesmo o LNbits em si! Você pode executar o LNbits para si mesmo ou oferecer facilmente uma solução de custódia para outros. Cada carteira tem suas próprias chaves de API e não há limite para o número de carteiras que você pode criar. Ser capaz de particionar fundos torna o LNbits uma ferramenta útil para gerenciamento de dinheiro e como uma ferramenta de desenvolvimento. As extensões adicionam funcionalidades extras ao LNbits para que você possa experimentar uma série de tecnologias de ponta na rede lightning. Nós tornamos o desenvolvimento de extensões o mais fácil possível e, como um projeto gratuito e de código aberto, incentivamos as pessoas a desenvolver e enviar as suas próprias.",export_to_phone:"Exportar para o telefone com código QR",export_to_phone_desc:"Este código QR contém a URL da sua carteira com acesso total. Você pode escaneá-lo do seu telefone para abrir sua carteira a partir dele.",wallet:"Carteira:",wallets:"Carteiras",add_wallet:"Adicionar nova carteira",delete_wallet:"Excluir carteira",delete_wallet_desc:"Toda a carteira será excluída, os fundos serão IRRECUPERÁVEIS.",rename_wallet:"Renomear carteira",update_name:"Atualizar nome",fiat_tracking:"Rastreamento Fiat",currency:"Moeda",update_currency:"Atualizar moeda",press_to_claim:"Pressione para solicitar bitcoin",donate:"Doar",view_github:"Ver no GitHub",voidwallet_active:"VoidWallet está ativo! Pagamentos desabilitados",use_with_caution:"USE COM CAUTELA - a carteira {name} ainda está em BETA",service_fee:"Taxa de serviço: {amount} % por transação",service_fee_max:"Taxa de serviço: {amount} % por transação (máx {max} sats)",service_fee_tooltip:"Taxa de serviço cobrada pelo administrador do servidor LNbits por transação de saída",toggle_darkmode:"Alternar modo escuro",payment_reactions:"Reações de Pagamento",view_swagger_docs:"Ver a documentação da API do LNbits Swagger",api_docs:"Documentação da API",api_keys_api_docs:"URL do Node, chaves da API e documentação da API",lnbits_version:"Versão do LNbits",runs_on:"Executa em",paste:"Colar",paste_from_clipboard:"Cole do clipboard",paste_request:"Colar Pedido",create_invoice:"Criar Fatura",camera_tooltip:"Usar a câmara para escanear uma fatura / QR",export_csv:"Exportar para CSV",chart_tooltip:"Mostrar gráfico",pending:"Pendente",copy_invoice:"Copiar fatura",withdraw_from:"Sacar de",cancel:"Cancelar",scan:"Escanear",read:"Ler",pay:"Pagar",memo:"Memo",date:"Data",payment_processing:"Processando pagamento...",not_enough_funds:"Fundos insuficientes!",search_by_tag_memo_amount:"Pesquisar por tag, memo, quantidade",invoice_waiting:"Fatura aguardando pagamento",payment_received:"Pagamento Recebido",payment_sent:"Pagamento Enviado",receive:"receber",send:"enviar",outgoing_payment_pending:"Pagamento pendente de saída",drain_funds:"Drenar Fundos",drain_funds_desc:"Este é um código QR de retirada do LNURL para sugar tudo desta carteira. Não compartilhe com ninguém. É compatível com balanceCheck e balanceNotify para que sua carteira possa continuar retirando os fundos continuamente daqui após a primeira retirada.",i_understand:"Eu entendo",copy_wallet_url:"Copiar URL da carteira",disclaimer_dialog_title:"Importante!",disclaimer_dialog:"Funcionalidade de login a ser lançada em uma atualização futura, por enquanto, certifique-se de marcar esta página para acesso futuro à sua carteira! Este serviço está em BETA, e não nos responsabilizamos por pessoas que perderem o acesso aos fundos.",no_transactions:"Ainda não foram feitas transações",manage:"Gerenciar",exchanges:"Bolsas de valores",extensions:"Extensões",no_extensions:"Você não possui nenhuma extensão instalada :(",created:"Criado",search_extensions:"Extensões de pesquisa",extension_sources:"Fontes de Extensão",ext_sources_hint:"Repositórios de onde as extensões podem ser baixadas",ext_sources_label:"URL de origem (use apenas a fonte oficial da extensão LNbits e fontes confiáveis)",warning:"Aviso",repository:"Repositório",confirm_continue:"Você tem certeza de que deseja continuar?",manage_extension_details:"Instalar/desinstalar extensão",install:"Instalar",uninstall:"Desinstalar",drop_db:"Remover Dados",enable:"Ativar",pay_to_enable:"Pague para Habilitar",enable_extension_details:"Ativar extensão para o usuário atual",disable:"Desativar",delete:"Excluir",installed:"Instalado",activated:"Ativado",deactivated:"Desativado",release_notes:"Notas de Lançamento",activate_extension_details:"Tornar a extensão disponível/indisponível para usuários",featured:"Destacado",all:"Tudo",only_admins_can_install:"Apenas contas de administrador podem instalar extensões.",admin_only:"Apenas para Administração",new_version:"Nova Versão",extension_depends_on:"Depende de:",extension_rating_soon:"Avaliações estarão disponíveis em breve",extension_installed_version:"Versão instalada",extension_uninstall_warning:"Você está prestes a remover a extensão para todos os usuários.",uninstall_confirm:"Sim, Desinstalar",extension_db_drop_info:"Todos os dados da extensão serão permanentemente excluídos. Não há como desfazer essa operação!",extension_db_drop_warning:"Você está prestes a remover todos os dados para a extensão. Por favor, digite o nome da extensão para continuar:",extension_required_lnbits_version:"Esta versão requer no mínimo a versão do LNbits",min_version:"Mínimo (incluído)",max_version:"Máximo (excluído)",payment_hash:"Hash de pagamento",fee:"Taxa",amount:"Quantidade",amount_sats:"Quantidade (sats)",tag:"Etiqueta",unit:"Unidade",description:"Descrição",expiry:"Validade",webhook:"Webhook",payment_proof:"Comprovante de pagamento",update:"Atualizar",update_available:"Atualização {version} disponível!",latest_update:"Você está na versão mais recente {version}.",notifications:"Notificações",no_notifications:"Sem notificações",notifications_disabled:"As notificações de status do LNbits estão desativadas.",enable_notifications:"Ativar notificações",enable_notifications_desc:"Se ativado, ele buscará as últimas atualizações de status do LNbits, como incidentes de segurança e atualizações.",enable_watchdog:"Ativar Watchdog",enable_watchdog_desc:"Se ativado, ele mudará automaticamente sua fonte de financiamento para VoidWallet se o seu saldo for inferior ao saldo do LNbits. Você precisará ativar manualmente após uma atualização.",watchdog_interval:"Intervalo do Watchdog",watchdog_interval_desc:"Com que frequência a tarefa de fundo deve verificar um sinal de interrupção no delta do monitor [node_balance - lnbits_balance] (em minutos).",watchdog_delta:"Observador Delta",watchdog_delta_desc:"Limite antes da mudança do mecanismo de segurança alterar a fonte de financiamento para VoidWallet [lnbits_balance - node_balance > delta]",status:"Estado",notification_source:"Fonte de Notificação",notification_source_label:"URL de origem (use apenas a fonte de status oficial do LNbits e fontes de confiança)",more:"mais",less:"menos",releases:"Lançamentos",watchdog:"Cão de guarda",server_logs:"Registros do Servidor",ip_blocker:"Bloqueador de IP",security:"Segurança",security_tools:"Ferramentas de segurança",block_access_hint:"Bloquear acesso por IP",allow_access_hint:"Permitir acesso por IP (substituirá os IPs bloqueados)",enter_ip:"Digite o IP e pressione enter",rate_limiter:"Limitador de Taxa",wallet_limiter:"Limitador de Carteira",wallet_limit_max_withdraw_per_day:"Retirada máxima diária da carteira em sats (0 para desativar)",wallet_max_ballance:"Saldo máximo da carteira em sats (0 para desativar)",wallet_limit_secs_between_trans:"Minutos e segundos entre transações por carteira (0 para desativar)",number_of_requests:"Número de solicitações",time_unit:"Unidade de tempo",minute:"minuto",second:"segundo",hour:"hora",disable_server_log:"Desativar Log do Servidor",enable_server_log:"Ativar Registro do Servidor",coming_soon:"Funcionalidade em breve",session_has_expired:"Sua sessão expirou. Por favor, faça login novamente.",instant_access_question:"Quer acesso imediato?",login_with_user_id:"Faça login com ID do usuário",or:"ou",create_new_wallet:"Criar Nova Carteira",login_to_account:"Faça login na sua conta",create_account:"Criar conta",account_settings:"Configurações da Conta",signin_with_nostr:"Continuar com Nostr",signin_with_google:"Entrar com o Google",signin_with_github:"Entrar com GitHub",signin_with_keycloak:"Entrar com Keycloak",username_or_email:"Nome de usuário ou E-mail",password:"Senha",password_config:"Configuração de Senha",password_repeat:"Repetição de senha",change_password:"Alterar Senha",update_credentials:"Atualizar credenciais",update_pubkey:"Atualizar Chave Pública",set_password:"Definir Senha",invalid_password:"A senha deve ter pelo menos 8 caracteres",login:"Entrar",register:"Registrar",username:"Nome de usuário",pubkey:"Chave Pública",user_id:"ID do Usuário",email:"E-mail",first_name:"Primeiro Nome",last_name:"Sobrenome",picture:"Foto",verify_email:"Verifique o e-mail com",account:"Conta",update_account:"Atualizar Conta",invalid_username:"Nome de usuário inválido",auth_provider:"Provedor de Autenticação",my_account:"Minha Conta",back:"Voltar",logout:"Sair",look_and_feel:"Aparência",toggle_gradient:"Alternar Gradiente",gradient_background:"Fundo em Degradê",language:"Idioma",color_scheme:"Esquema de Cores",admin_settings:"Configurações do Administrador",extension_cost:"Este lançamento requer um pagamento mínimo de {cost} sats.",extension_paid_sats:"Você já pagou {paid_sats} sats.",release_details_error:"Não é possível obter os detalhes da versão.",pay_from_wallet:"Pagar com a Carteira",wallet_required:"Carteira *",show_qr:"Exibir QR",retry_install:"Repetir Instalação",new_payment:"Efetuar Novo Pagamento",update_payment:"Atualizar Pagamento",already_paid_question:"Você já pagou?",sell:"Vender",sell_require:"Peça pagamento para habilitar a extensão",sell_info:"A extensão {name} requer um pagamento mínimo de {amount} sats para habilitar.",hide_empty_wallets:"Ocultar carteiras vazias",recheck:"Verificar novamente",contributors:"Contribuidores",license:"Licença",reset_key:"Redefinir Chave",reset_password:"Redefinir senha",border_choices:"Opções de Borda",select_all:"Selecionar tudo",nfc_supported:"Compatível com NFC",nfc_not_supported:"NFC não suportado",expire_date:"Data de Expiração:",hash:"Hash:",welcome_lnbits:"Bem-vindo ao LNbits",setup_su_account:"Configure a conta Superuser abaixo.",create_ticker_converter:"Criar Conversor de Ticker de Moeda",enable_audit:"Habilitar Auditoria",recommended:"Recomendado",audit_desc:"Gravar solicitações HTTP de acordo com os filtros especificados",audit_record_req:"Gravar Corpo da Requisição",audit_record_warning:"Aviso:",audit_record_req_warning_1:"dados confidenciais (como senhas) serão registrados.",audit_record_req_warning_2:"o corpo da solicitação pode ter um tamanho grande.",audit_record_use:"Use com cuidado.",audit_ip:"Registrar endereço IP",audit_ip_desc:"Registre o endereço IP do cliente",audit_path_params:"Registrar Parâmetros de Caminho",audit_query_params:"Registrar Parâmetros de Consulta",audit_http_methods:"Incluir métodos HTTP",audit_http_methods_hint:"Lista de métodos HTTP a serem incluídos. Listas vazias significam todos.",audit_http_methods_label:"Métodos HTTP",audit_resp_codes:"Incluir Códigos de Resposta HTTP",audit_resp_codes_hint:"Lista de códigos HTTP a serem incluídos (correspondência regex). Listas vazias significam todos. Ex: 4.*, 5.*",audit_resp_codes_label:"Código de resposta HTTP (regex)",audit_paths:"Incluir Caminhos",audit_paths_hint:"Lista de caminhos a serem incluídos (correspondência de regex). Lista vazia significa todos.",audit_paths_label:"Caminho HTTP (regex)",audit_paths_exclude:"Excluir Caminhos",audit_paths_exclude_hint:"Lista de caminhos a serem excluídos (correspondência regex). Lista vazia significa nenhum.",audit_paths_exclude_label:"Caminho HTTP (regex)",exchange_providers:"Provedores de Câmbio",admin_extensions:"Extensões de Administração",admin_extensions_label:"Extensões de administração",admin_extensions_hint:"Somente usuários com privilégios de administrador podem usar extensões.",user_default_extensions:"Extensões Padrão do Usuário",user_default_extensions_label:"Extensões do usuário",user_default_extensions_hint:"Extensões que serão ativadas por padrão para os usuários.",miscellanous:"Diversos",misc_disable_extensions:"Desativar extensões",misc_disable_extensions_label:"Desativar todas as extensões",misc_hide_api:"Ocultar API",misc_hide_api_label:"Oculta a API de carteira, extensões podem optar por honrar",wallets_management:"Gerenciamento de Carteiras",funding_source_info:"Informações da Fonte de Financiamento",funding_source:"Fonte de Financiamento: {wallet_class}",node_balance:"Saldo do Nó: {balance} sats",lnbits_balance:"Saldo do LNbits: {balance} sats",funding_reserve_percent:"Reserve Percentual: {percent} %",node_management:"Gerenciamento de Nós",node_management_not_supported:"Gerenciamento de nó não suportado pela fonte de financiamento ativa",toggle_node_ui:"Interface do Nó",toggle_public_node_ui:"Interface Pública do Nó",toggle_transactions_node_ui:"Guia de Transações (Desativar em nós grandes CLN)",invoice_expiry:"Expiração da Fatura",invoice_expiry_label:"Validade da fatura (segundos)",fee_reserve:"Reserva de Taxa",fee_reserve_msats:"Taxa de reserva em msats",fee_reserve_percent:"Taxa de reserva em porcentagem",server_management:"Gerenciamento de Servidor",base_url:"URL base",base_url_label:"URL estática/base para o servidor",authentication:"Autenticação",auth_token_expiry_label:"Minutos para expiração do token",auth_token_expiry_hint:"Tempo em minutos até o token expirar",auth_allowed_methods_label:"Métodos de autorização permitidos",auth_allowed_methods_hint:"Selecione métodos de autorização",auth_nostr_label:"URL de Solicitação Nostr",auth_nostr_hint:"URL absoluta que os clientes usarão para fazer login.",auth_google_ci_label:"ID do Cliente do Google",auth_google_ci_hint:"Certifique-se de que os URIs de redirecionamento autorizados contenham https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Segredo do Cliente do Google",auth_gh_client_id_label:"ID do Cliente do GitHub",auth_gh_client_id_hint:"Certifique-se de que a URL de callback de autorização esteja definida como https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Segredo do Cliente do GitHub",auth_keycloak_label:"URL de Descoberta do Keycloak",auth_keycloak_ci_label:"ID do Cliente Keycloak",auth_keycloak_ci_hint:"Certifique-se de que a URL de retorno de chamada de autorização esteja definida para https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Segredo do Cliente Keycloak",currency_settings:"Configurações de Moeda",allowed_currencies:"Moedas Permitidas",allowed_currencies_hint:"Limite o número de moedas fiduciárias disponíveis",default_account_currency:"Moeda Padrão da Conta",default_account_currency_hint:"Moeda padrão para contabilidade",service_fee_label:"Taxa de serviço (%)",service_fee_hint:"Taxa cobrada por tx (%)",service_fee_max_label:"Taxa de serviço máx (sats)",service_fee_max_hint:"Taxa máxima de serviço a cobrar em (sats)",fee_wallet:"Carteira de Taxas",fee_wallet_label:"Carteira de tarifas (ID da carteira)",fee_wallet_hint:"ID da carteira para enviar fundos para",disable_fee:"Desativar Taxa",disable_fee_internal:"Desativar taxa de serviço para pagamentos internos",disable_fee_internal_desc:"Desativar Taxa de Serviço para Pagamentos Internos Lightning",ui_management:"Gerenciamento de UI",ui_site_title:"Título do Site",ui_site_tagline:"Tagline do site",ui_elements_enable:"Habilitar elementos na página inicial",ui_elements_disable:"Desativar elementos na página inicial",ui_toggle_elements_tip:"Remover elementos da página inicial, como 'funciona com', etc.",ui_site_description:"Descrição do Site",ui_site_description_hint:"Use texto simples, Markdown ou HTML bruto",ui_default_wallet_name:"Nome Padrão da Carteira",lnbits_wallet:"Carteira LNbits",denomination:"Denominação",denomination_hint:"O nome para o token FakeWallet",ui_qr_code_logo:"Logo do QR Code",ui_qr_code_logo_hint:"URL para imagem de logo no código QR",ui_custom_badge:"Distintivo Personalizado",ui_custom_badge_label:"Distintivo Personalizado 'USE COM CUIDADO - a carteira LNbits ainda está em BETA'",ui_custom_badge_color_label:"Cor Personalizada do Distintivo",themes:"Temas",themes_hint:"Escolha temas disponíveis para usuários",custom_logo:"Logotipo personalizado",custom_logo_hint:"URL para a imagem do logotipo",ad_space_title:"Título do Espaço Publicitário",ad_space_title_label:"Suportado por",ad_slots:"Slots de Anúncio",ad_slots_hint:"Adicionar URL e caminhos de arquivo de imagem no formato CSV, as extensões podem optar por honrar",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Anúncios Ativados",ads_disabled:"Anúncios Desativados",user_management:"Gerenciamento de Usuários",admin_users:"Usuários Administradores",admin_users_hint:"Usuários com privilégios de administrador",admin_users_label:"ID do Usuário",allowed_users:"Usuários Permitidos",allowed_users_hint:"Somente esses usuários podem usar o LNbits",allowed_users_label:"ID do Usuário",allow_creation_user:"Permitir a criação de novos usuários",allow_creation_user_desc:"Permitir a criação de novos usuários na página de índice",components:"Componentes",long_running_endpoints:"Top 5 Endpoints de Longa Execução",http_request_methods:"Métodos de Requisição HTTP",http_response_codes:"Códigos de Resposta HTTP",request_details:"Detalhes do Pedido",http_request_details:"Detalhes da Requisição HTTP"},window.localisation.cs={confirm:"Ano",server:"Server",theme:"Téma",site_customisation:"Přizpůsobení stránek",funding:"Financování",users:"Uživatelé",audit:"Audit",apps:"Aplikace",channels:"Kanály",transactions:"Transakce",dashboard:"Přehled",node:"Uzel",export_users:"Exportovat uživatele",no_users:"Nebyli nalezeni žádní uživatelé",total_capacity:"Celková kapacita",avg_channel_size:"Průmerná velikost kanálu",biggest_channel_size:"Největší velikost kanálu",smallest_channel_size:"Nejmenší velikost kanálu",number_of_channels:"Počet kanálů",active_channels:"Aktivní kanály",connect_peer:"Připojit peer",connect:"Připojit",open_channel:"Otevřít kanál",open:"Otevřít",close_channel:"Zavřít kanál",close:"Zavřít",restart:"Restartovat server",save:"Uložit",save_tooltip:"Uložit změny",credit_debit:"Kreditní / Debetní",credit_hint:"Stiskněte Enter pro připsání na účet",credit_label:"{denomination} k připsání",credit_ok:"Úspěšné připsání/odepsání virtuálních prostředků ({amount} satů). Platby závisí na skutečných prostředcích z financujícího zdroje.",restart_tooltip:"Restartujte server pro aplikaci změn",add_funds_tooltip:"Přidat prostředky do peněženky.",reset_defaults:"Obnovit výchozí",reset_defaults_tooltip:"Smazat všechna nastavení a obnovit výchozí.",download_backup:"Stáhnout zálohu databáze",name_your_wallet:"Pojmenujte svou {name} peněženku",paste_invoice_label:"Vložte fakturu, platební požadavek nebo lnurl kód *",lnbits_description:"Snadno nastavitelný a lehkotonážní, LNbits může běžet na jakémkoliv zdroji financování Lightning Network a dokonce LNbits samotné! LNbits můžete provozovat pro sebe, nebo snadno nabízet správu peněženek pro ostatní. Každá peněženka má své vlastní API klíče a není omezen počet peněženek, které můžete vytvořit. Možnost rozdělení prostředků dělá z LNbits užitečný nástroj pro správu peněz a jako vývojový nástroj. Rozšíření přidávají extra funkčnost k LNbits, takže můžete experimentovat s řadou špičkových technologií na lightning network. Vývoj rozšíření jsme učinili co nejjednodušší a jako svobodný a open-source projekt podporujeme lidi ve vývoji a zasílání vlastních rozšíření.",export_to_phone:"Exportovat do telefonu pomocí QR kódu",export_to_phone_desc:"Tento QR kód obsahuje URL vaší peněženky s plným přístupem. Můžete jej naskenovat z telefonu a otevřít peněženku odtamtud.",wallet:"Peněženka:",wallets:"Peněženky",add_wallet:"Přidat novou peněženku",delete_wallet:"Smazat peněženku",delete_wallet_desc:"Celá peněženka bude smazána, prostředky budou NEOBNOVITELNÉ.",rename_wallet:"Přejmenovat peněženku",update_name:"Aktualizovat název",fiat_tracking:"Sledování fiatu",currency:"Měna",update_currency:"Aktualizovat měnu",press_to_claim:"Stiskněte pro nárokování bitcoinu",donate:"Darovat",view_github:"Zobrazit na GitHubu",voidwallet_active:"VoidWallet je aktivní! Platby zakázány",use_with_caution:"POUŽÍVEJTE S OBEZŘETNOSTÍ - {name} peněženka je stále v BETĚ",service_fee:"Servisný poplatek: {amount} % za transakci",service_fee_max:"Servisný poplatek: {amount} % za transakci (max {max} satoshi)",service_fee_tooltip:"Servisní poplatek účtovaný správcem LNbits serveru za odchozí transakci",toggle_darkmode:"Přepnout tmavý režim",payment_reactions:"Reakce na platby",view_swagger_docs:"Zobrazit LNbits Swagger API dokumentaci",api_docs:"API dokumentace",api_keys_api_docs:"Adresa uzlu, API klíče a API dokumentace",lnbits_version:"Verze LNbits",runs_on:"Běží na",paste:"Vložit",paste_from_clipboard:"Vložit ze schránky",paste_request:"Vložit požadavek",create_invoice:"Vytvořit fakturu",camera_tooltip:"Použijte kameru pro skenování faktury/QR",export_csv:"Exportovat do CSV",chart_tooltip:"Zobrazit graf",pending:"Čeká na vyřízení",copy_invoice:"Kopírovat fakturu",withdraw_from:"Vybrat z",cancel:"Zrušit",scan:"Skenovat",read:"Číst",pay:"Platit",memo:"Poznámka",date:"Datum",payment_processing:"Zpracování platby...",not_enough_funds:"Nedostatek prostředků!",search_by_tag_memo_amount:"Hledat podle tagu, poznámky, částky",invoice_waiting:"Faktura čeká na platbu",payment_received:"Platba přijata",payment_sent:"Platba odeslána",receive:"přijmout",send:"odeslat",outgoing_payment_pending:"Odchozí platba čeká na vyřízení",drain_funds:"Vyčerpat prostředky",drain_funds_desc:"Toto je LNURL-withdraw QR kód pro vyčerpání všeho z této peněženky. Nesdílejte s nikým. Je kompatibilní s balanceCheck a balanceNotify, takže vaše peněženka může kontinuálně čerpat prostředky odsud po prvním výběru.",i_understand:"Rozumím",copy_wallet_url:"Kopírovat URL peněženky",disclaimer_dialog_title:"Důležité!",disclaimer_dialog:"Funkcionalita přihlášení bude vydána v budoucí aktualizaci, zatím si ujistěte, že jste si tuto stránku uložili do záložek pro budoucí přístup k vaší peněžence! Tato služba je v BETA verzi a nepřebíráme žádnou zodpovědnost za ztrátu přístupu k prostředkům.",no_transactions:"Zatím žádné transakce",manage:"Spravovat",exchanges:"Burzy",extensions:"Rozšíření",no_extensions:"Nemáte nainstalováno žádné rozšíření :(",created:"Vytvořeno",search_extensions:"Hledat rozšíření",extension_sources:"Zdroje rozšíření",ext_sources_hint:"Úložiště, odkud lze rozšíření stáhnout.",ext_sources_label:"Zdrojová URL (používejte pouze oficiální zdroj rozšíření LNbits a zdroje, kterým můžete důvěřovat)",warning:"Varování",repository:"Repositář",confirm_continue:"Jste si jistí, že chcete pokračovat?",manage_extension_details:"Instalovat/odinstalovat rozšíření",install:"Instalovat",uninstall:"Odinstalovat",drop_db:"Odstranit data",enable:"Povolit",pay_to_enable:"Zaplatit pro aktivaci",enable_extension_details:"Povolit rozšíření pro aktuálního uživatele",disable:"Zakázat",delete:"Smazat",installed:"Nainstalováno",activated:"Aktivováno",deactivated:"Deaktivováno",release_notes:"Poznámky k vydání",activate_extension_details:"Zpřístupnit/zakázat rozšíření pro uživatele",featured:"Doporučené",all:"Vše",only_admins_can_install:"(Pouze administrátorské účty mohou instalovat rozšíření)",admin_only:"Pouze pro adminy",new_version:"Nová verze",extension_depends_on:"Závisí na:",extension_rating_soon:"Hodnocení brzy dostupné",extension_installed_version:"Nainstalovaná verze",extension_uninstall_warning:"Chystáte se odstranit rozšíření pro všechny uživatele.",uninstall_confirm:"Ano, odinstalovat",extension_db_drop_info:"Všechna data pro rozšíření budou trvale odstraněna. Tuto operaci nelze vrátit zpět!",extension_db_drop_warning:"Chystáte se odstranit všechna data pro rozšíření. Prosím, pokračujte zadáním názvu rozšíření:",extension_required_lnbits_version:"Toto vydání vyžaduje alespoň verzi LNbits",min_version:"Minimum (včetně)",max_version:"Maximální (vyloučeno)",payment_hash:"Hash platby",fee:"Poplatek",amount:"Částka",amount_sats:"Částka (sats)",tag:"Tag",unit:"Jednotka",description:"Popis",expiry:"Expirace",webhook:"Webhook",payment_proof:"Důkaz platby",update:"Aktualizovat",update_available:"Dostupná aktualizace {version}!",latest_update:"Máte nejnovější verzi {version}.",notifications:"Notifikace",no_notifications:"Žádné notifikace",notifications_disabled:"Notifikace stavu LNbits jsou zakázány.",enable_notifications:"Povolit notifikace",enable_notifications_desc:"Pokud je povoleno, bude stahovat nejnovější aktualizace stavu LNbits, jako jsou bezpečnostní incidenty a aktualizace.",watchdog_interval:"Interval Watchdog",watchdog_interval_desc:"Jak často by měl úkol na pozadí kontrolovat signál killswitch v watchdog delta [node_balance - lnbits_balance] (v minutách).",watchdog_delta:"Delta Watchdog",watchdog_delta_desc:"Limit předtím, než killswitch změní zdroj financování na VoidWallet [lnbits_balance - node_balance > delta]",status:"Stav",notification_source:"Zdroj notifikací",notification_source_label:"URL zdroje (používejte pouze oficiální zdroj stavu LNbits a zdroje, kterým můžete věřit)",more:"více",less:"méně",releases:"Vydání",watchdog:"Watchdog",server_logs:"Logy serveru",ip_blocker:"Blokování IP",security:"Bezpečnost",security_tools:"Nástroje bezpečnosti",block_access_hint:"Blokovat přístup podle IP",allow_access_hint:"Povolit přístup podle IP (přepíše blokované IP)",enter_ip:"Zadejte IP a stiskněte enter",rate_limiter:"Omezovač počtu požadavků",wallet_limiter:"Omezení peněženky",wallet_limit_max_withdraw_per_day:"Maximální denní limit pro výběr z peněženky v sats (0 pro deaktivaci)",wallet_max_ballance:"Maximální zůstatek v peněžence v sats (0 pro zakázání)",wallet_limit_secs_between_trans:"Minimální počet sekund mezi transakcemi na peněženku (0 pro vypnutí)",number_of_requests:"Počet požadavků",time_unit:"Časová jednotka",minute:"minuta",second:"sekunda",hour:"hodina",disable_server_log:"Zakázat log serveru",enable_server_log:"Povolit log serveru",coming_soon:"Funkce brzy dostupná",session_has_expired:"Vaše relace vypršela. Prosím, přihlašte se znovu.",instant_access_question:"Chcete okamžitý přístup?",login_with_user_id:"Přihlásit se s uživatelským ID",or:"nebo",create_new_wallet:"Vytvořit novou peněženku",login_to_account:"Přihlaste se ke svému účtu",create_account:"Vytvořit účet",account_settings:"Nastavení účtu",signin_with_nostr:"Pokračovat s Nostr",signin_with_google:"Přihlásit se přes Google",signin_with_github:"Přihlásit se přes GitHub",signin_with_keycloak:"Přihlásit se přes Keycloak",username_or_email:"Uživatelské jméno nebo Email",password:"Heslo",password_config:"Konfigurace hesla",password_repeat:"Opakujte heslo",change_password:"Změnit heslo",update_credentials:"Aktualizovat přihlašovací údaje",update_pubkey:"Aktualizovat veřejný klíč",set_password:"Nastavit heslo",invalid_password:"Heslo musí mít alespoň 8 znaků",login:"Přihlášení",register:"Registrovat",username:"Uživatelské jméno",pubkey:"Veřejný klíč",user_id:"ID uživatele",email:"Email",first_name:"Křestní jméno",last_name:"Příjmení",picture:"Obrázek",verify_email:"Ověřte e-mail s",account:"Účet",update_account:"Aktualizovat účet",invalid_username:"Neplatné uživatelské jméno",auth_provider:"Poskytovatel ověření",my_account:"Můj účet",back:"Zpět",logout:"Odhlásit se",look_and_feel:"Vzhled a chování",toggle_gradient:"Přepnout gradient",gradient_background:"Barevný přechod pozadí",language:"Jazyk",color_scheme:"Barevné schéma",admin_settings:"Nastavení administrátora",extension_cost:"Toto vydání vyžaduje minimální platbu {cost} satoshi.",extension_paid_sats:"Již jste zaplatili {paid_sats} sats.",release_details_error:"Nelze získat podrobnosti o vydání.",pay_from_wallet:"Platit z peněženky",wallet_required:"Peněženka *",show_qr:"Zobrazit QR",retry_install:"Zkusit znovu nainstalovat",new_payment:"Vytvořit novou platbu",update_payment:"Aktualizovat platbu",already_paid_question:"Už jste zaplatili?",sell:"Prodat",sell_require:"Požádejte o platbu, abyste povolili rozšíření",sell_info:"Rozšíření {name} vyžaduje platbu minimálně {amount} sats pro aktivaci.",hide_empty_wallets:"Skrýt prázdné peněženky",recheck:"Znovu zkontrolovat",contributors:"Přispěvatelé",license:"Licence",reset_key:"Obnovit klíč",reset_password:"Obnovit heslo",border_choices:"Možnosti ohraničení",select_all:"Vybrat vše",nfc_supported:"Podpora NFC",nfc_not_supported:"NFC není podporováno",expire_date:"Datum expirace:",hash:"Hash:",welcome_lnbits:"Vítejte v LNbits",setup_su_account:"Nastavte účet Superuser níže.",create_ticker_converter:"Vytvořit převodník měnových tickerů",enable_audit:"Povolit audit",recommended:"Doporučeno",audit_desc:"Zaznamenávejte HTTP požadavky podle zadaných filtrů",audit_record_req:"Záznam Tělo Požadavku",audit_record_warning:"Varování:",audit_record_req_warning_1:"důvěrná data (jako hesla) budou zaznamenána.",audit_record_req_warning_2:"tělo žádosti může mít velkou velikost.",audit_record_use:"Používejte to opatrně.",audit_ip:"Zaznamenat IP adresu",audit_ip_desc:"Zaznamenejte IP adresu klienta",audit_path_params:"Zaznamenat parametry cesty",audit_query_params:"Zaznamenat parametry dotazu",audit_http_methods:"Zahrnout metody HTTP",audit_http_methods_hint:"Seznam metod HTTP, které mají být zahrnuty. Prázdné seznamy znamenají všechny.",audit_http_methods_label:"Metody HTTP",audit_resp_codes:"Zahrnout kódy odpovědí HTTP",audit_resp_codes_hint:"Seznam kódů HTTP, které mají být zahrnuty (regex match). Prázdné seznamy znamenají všechny. Např.: 4.*, 5.*",audit_resp_codes_label:"Kód odpovědi HTTP (regex)",audit_paths:"Zahrnout cesty",audit_paths_hint:"Seznam cest, které mají být zahrnuty (regex shoda). Prázdný seznam znamená vše.",audit_paths_label:"HTTP cesta (regex)",audit_paths_exclude:"Vyloučit cesty",audit_paths_exclude_hint:"Seznam cest, které mají být vyloučeny (regex shoda). Prázdný seznam znamená žádné.",audit_paths_exclude_label:"HTTP cesta (regex)",exchange_providers:"Poskytovatelé směny",admin_extensions:"Rozšíření pro správce",admin_extensions_label:"Administrátorské rozšíření",admin_extensions_hint:"Rozšíření může používat pouze uživatel s administrátorskými oprávněními.",user_default_extensions:"Výchozí rozšíření uživatele",user_default_extensions_label:"Uživatelská rozšíření",user_default_extensions_hint:"Rozšíření, která budou u uživatelů ve výchozím nastavení povolena.",miscellanous:"Různé",misc_disable_extensions:"Zakázat rozšíření",misc_disable_extensions_label:"Zakázat všechna rozšíření",misc_hide_api:"Skrýt API",misc_hide_api_label:"Skrývá API peněženky, rozšíření se mohou rozhodnout ctít",wallets_management:"Správa peněženek",funding_source_info:"Informace o zdroji financování",funding_source:"Zdroj financování: {wallet_class}",node_balance:"Stav uzlu: {balance} sats",lnbits_balance:"Zůstatek LNbits: {balance} sats",funding_reserve_percent:"Rezervovat procento: {percent} %",node_management:"Správa uzlů",node_management_not_supported:"Správa uzlů není podporována aktivním zdrojem financování",toggle_node_ui:"Uživatelské rozhraní uzlu",toggle_public_node_ui:"Veřejné rozhraní uzlu",toggle_transactions_node_ui:"Karta Transakce (Zakázat na velkých uzlech CLN)",invoice_expiry:"Datum vypršení faktury",invoice_expiry_label:"Vypršení faktury (sekundy)",fee_reserve:"Rezerva poplatku",fee_reserve_msats:"Rezervační poplatek v msats",fee_reserve_percent:"Rezervační poplatek v procentech",server_management:"Správa serveru",base_url:"Základní URL",base_url_label:"Statická/Základní URL pro server",authentication:"Ověření",auth_token_expiry_label:"Minuty vypršení platnosti tokenu",auth_token_expiry_hint:"Čas v minutách do vypršení tokenu",auth_allowed_methods_label:"Povolené metody autorizace",auth_allowed_methods_hint:"Vyberte metody autorizace",auth_nostr_label:"URL žádosti Nostr",auth_nostr_hint:"Absolutní URL, které klienti použijí pro přihlášení.",auth_google_ci_label:"ID klienta Google",auth_google_ci_hint:"Ujistěte se, že autorizované přesměrovací URI obsahují https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Heslo klienta Google",auth_gh_client_id_label:"ID klienta GitHub",auth_gh_client_id_hint:"Ujistěte se, že je nastavena zpětná adresa URL pro autorizaci na https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Klientský tajný klíč",auth_keycloak_label:"URL pro zjištění Keycloak",auth_keycloak_ci_label:"ID klienta Keycloak",auth_keycloak_ci_hint:"Ujistěte se, že je autorizace callback URL nastavena na https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Klíč k aplikaci Keycloak tajemství",currency_settings:"Nastavení měny",allowed_currencies:"Povolené měny",allowed_currencies_hint:"Omezte počet dostupných fiat měn",default_account_currency:"Výchozí měna účtu",default_account_currency_hint:"Výchozí měna pro účetnictví",service_fee_label:"Poplatek za službu (%)",service_fee_hint:"Poplatek účtovaný za transakci (%)",service_fee_max_label:"Poplatek za službu max (sats)",service_fee_max_hint:"Maximální poplatek za službu k účtování v (sats)",fee_wallet:"Poplatková peněženka",fee_wallet_label:"Poplatková peněženka (ID peněženky)",fee_wallet_hint:"ID peněženky, na kterou se mají odeslat prostředky",disable_fee:"Zakázat poplatek",disable_fee_internal:"Zakázat poplatek za službu pro interní platby",disable_fee_internal_desc:"Zakázat servisní poplatek za interní lightning platby",ui_management:"Správa uživatelského rozhraní",ui_site_title:"Název stránky",ui_site_tagline:"Stránkový slogan",ui_elements_enable:"Povolit prvky na domovské stránce",ui_elements_disable:"Zakázat prvky na úvodní stránce",ui_toggle_elements_tip:"Odebrat prvky z domovské stránky, jako je 'běží na' atd.",ui_site_description:"Popis webu",ui_site_description_hint:"Použijte prostý text, Markdown nebo surové HTML.",ui_default_wallet_name:"Výchozí název peněženky",lnbits_wallet:"Peněženka LNbits",denomination:"Nominální hodnota",denomination_hint:"Název pro token FakeWallet",ui_qr_code_logo:"Logo QR kódu",ui_qr_code_logo_hint:"URL k obrázku loga v QR kódu",ui_custom_badge:"Vlastní odznak",ui_custom_badge_label:"Vlastní odznak 'POUŽÍVEJTE S OPATRNOSTÍ - Peněženka LNbits je stále v BETA verzi'",ui_custom_badge_color_label:"Barva vlastního odznaku",themes:"Motivy",themes_hint:"Vyberte motivy dostupné pro uživatele",custom_logo:"Vlastní logo",custom_logo_hint:"URL k obrázku loga",ad_space_title:"Název reklamního prostoru",ad_space_title_label:"Podporováno",ad_slots:"Reklamní sloty",ad_slots_hint:"Adresa URL reklamy a cesty k souborům obrázků ve formátu CSV, rozšíření se mohou rozhodnout respektovat",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Reklamy povoleny",ads_disabled:"Reklamy deaktivovány",user_management:"Správa uživatelů",admin_users:"Administrátorští uživatelé",admin_users_hint:"Uživatelé s administrátorskými oprávněními",admin_users_label:"ID uživatele",allowed_users:"Povolení uživatelé",allowed_users_hint:"Pouze tito uživatelé mohou používat LNbits.",allowed_users_label:"Uživatelské ID",allow_creation_user:"Povolit vytvoření nových uživatelů",allow_creation_user_desc:"Povolit vytváření nových uživatelů na úvodní stránce",components:"Soubory",long_running_endpoints:"Top 5 dlouho běžících koncových bodů",http_request_methods:"Metody HTTP požadavků",http_response_codes:"Kódy HTTP odpovědí",request_details:"Podrobnosti žádosti",http_request_details:"Podrobnosti HTTP žádosti"},window.localisation.sk={confirm:"Áno",server:"Server",theme:"Téma",site_customisation:"Prispôsobenie lokality",funding:"Financovanie",users:"Používatelia",audit:"Audit",apps:"Aplikácie",channels:"Kanály",transactions:"Transakcie",dashboard:"Prehľad",node:"Uzol",export_users:"Exportovať používateľov",no_users:"Nenašli sa žiadni používatelia",total_capacity:"Celková kapacita",avg_channel_size:"Priemerná veľkosť kanálu",biggest_channel_size:"Najväčší kanál",smallest_channel_size:"Najmenší kanál",number_of_channels:"Počet kanálov",active_channels:"Aktívne kanály",connect_peer:"Pripojiť peer",connect:"Pripojiť",open_channel:"Otvoriť kanál",open:"Otvoriť",close_channel:"Zatvoriť kanál",close:"Zatvoriť",restart:"Reštartovať server",save:"Uložiť",save_tooltip:"Uložiť vaše zmeny",credit_debit:"Kreditná / Debetná",credit_hint:"Stlačte Enter pre pripísanie na účet",credit_label:"{denomination} na pripísanie",restart_tooltip:"Pre prejavenie zmien reštartujte server",add_funds_tooltip:"Pridať prostriedky do peňaženky.",reset_defaults:"Obnoviť predvolené",reset_defaults_tooltip:"Odstrániť všetky nastavenia a obnoviť predvolené.",download_backup:"Stiahnuť zálohu databázy",name_your_wallet:"Pomenujte vašu {name} peňaženku",paste_invoice_label:"Vložte faktúru, platobnú požiadavku alebo lnurl kód *",lnbits_description:"Ľahko nastaviteľný a ľahkotonážny, LNbits môže bežať na akomkoľvek zdroji financovania Lightning Network a dokonca LNbits samotný! LNbits môžete používať pre seba, alebo ľahko ponúknuť správcovské riešenie pre iných. Každá peňaženka má svoje vlastné API kľúče a nie je limit na počet peňaženiek, ktoré môžete vytvoriť. Schopnosť rozdeľovať finančné prostriedky robí z LNbits užitočný nástroj pre správu peňazí a ako vývojový nástroj. Rozšírenia pridávajú extra funkčnosť do LNbits, takže môžete experimentovať s radou najnovších technológií na lightning sieti. Vývoj rozšírení sme urobili čo najjednoduchší a ako voľný a open-source projekt, podporujeme ľudí vývoj a odovzdávanie vlastných rozšírení.",export_to_phone:"Exportovať do telefónu s QR kódom",export_to_phone_desc:"Tento QR kód obsahuje URL vašej peňaženky s plným prístupom. Môžete ho naskenovať z vášho telefónu a otvoriť vašu peňaženku odtiaľ.",wallet:"Peňaženka:",wallets:"Peňaženky",add_wallet:"Pridať novú peňaženku",delete_wallet:"Zmazať peňaženku",delete_wallet_desc:"Celá peňaženka bude zmazaná, prostriedky budú NEOBNOVITEĽNÉ.",rename_wallet:"Premenovať peňaženku",update_name:"Aktualizovať meno",fiat_tracking:"Sledovanie fiat",currency:"Mena",update_currency:"Aktualizovať menu",press_to_claim:"Stlačte pre nárok na bitcoin",donate:"Prispieť",view_github:"Zobraziť na GitHube",voidwallet_active:"VoidWallet je aktívny! Platby zakázané",use_with_caution:"POUŽÍVAJTE OPATRNE - {name} peňaženka je stále v BETE",service_fee:"Servisný poplatok: {amount} % za transakciu",service_fee_max:"Servisný poplatok: {amount} % za transakciu (max {max} satoshi)",service_fee_tooltip:"Servisný poplatok účtovaný správcom LNbits servera za odchádzajúcu transakciu",toggle_darkmode:"Prepnúť Tmavý režim",payment_reactions:"Reakcie na platbu",view_swagger_docs:"Zobraziť LNbits Swagger API dokumentáciu",api_docs:"API dokumentácia",api_keys_api_docs:"Adresa uzla, API kľúče a API dokumentácia",lnbits_version:"Verzia LNbits",runs_on:"Beží na",paste:"Vložiť",paste_from_clipboard:"Vložiť zo schránky",paste_request:"Vložiť požiadavku",create_invoice:"Vytvoriť faktúru",camera_tooltip:"Použite kameru na naskenovanie faktúry/QR",export_csv:"Exportovať do CSV",chart_tooltip:"Zobraziť graf",pending:"Čakajúce",copy_invoice:"Kopírovať faktúru",withdraw_from:"Vybrať z",cancel:"Zrušiť",scan:"Skenovať",read:"Čítať",pay:"Platiť",memo:"Poznámka",date:"Dátum",payment_processing:"Spracovávanie platby...",not_enough_funds:"Nedostatok prostriedkov!",search_by_tag_memo_amount:"Vyhľadať podľa značky, poznámky, sumy",invoice_waiting:"Faktúra čakajúca na zaplatenie",payment_received:"Platba prijatá",payment_sent:"Platba odoslaná",receive:"prijímať",send:"posielať",outgoing_payment_pending:"Odchádzajúca platba čaká",drain_funds:"Vyprázdniť prostriedky",drain_funds_desc:"Toto je LNURL-withdraw QR kód pre vyprázdnienie všetkého z tejto peňaženky. S nikým ho nezdieľajte. Je kompatibilný s balanceCheck a balanceNotify, takže vaša peňaženka môže naďalej kontinuálne vyťahovať prostriedky odtiaľto po prvom výbere.",i_understand:"Rozumiem",copy_wallet_url:"Kopírovať URL peňaženky",disclaimer_dialog_title:"Dôležité!",disclaimer_dialog:"Funkcionalita prihlásenia bude vydaná v budúcej aktualizácii, zatiaľ si uistite, že ste si túto stránku pridali medzi záložky pre budúci prístup k vašej peňaženke! Táto služba je v BETA verzii a nenesieme zodpovednosť za stratu prístupu k prostriedkom.",no_transactions:"Zatiaľ žiadne transakcie",manage:"Spravovať",exchanges:"Burzy",extensions:"Rozšírenia",no_extensions:"Nemáte nainštalované žiadne rozšírenia :(",created:"Vytvorené",search_extensions:"Hľadať rozšírenia",extension_sources:"Rozšírenie zdrojov",ext_sources_hint:"Úložiská, z ktorých sa môžu stiahnuť rozšírenia.",ext_sources_label:"Zdrojová URL (použite iba oficiálny zdroj rozšírenia LNbits a zdroje, ktorým môžete dôverovať)",warning:"Upozornenie",repository:"Repozitár",confirm_continue:"Ste si istí, že chcete pokračovať?",manage_extension_details:"Inštalovať/odinštalovať rozšírenie",install:"Inštalovať",uninstall:"Odinštalovať",drop_db:"Odstrániť údaje",enable:"Povoliť",pay_to_enable:"Zaplaťte na aktiváciu",enable_extension_details:"Povoliť rozšírenie pre aktuálneho používateľa",disable:"Zakázať",delete:"Odstrániť",installed:"Nainštalované",activated:"Aktivované",deactivated:"Deaktivované",release_notes:"Poznámky k vydaniu",activate_extension_details:"Sprístupniť/neprístupniť rozšírenie pre používateľov",featured:"Odporúčané",all:"Všetky",only_admins_can_install:"(Iba administrátorské účty môžu inštalovať rozšírenia)",admin_only:"Iba pre administrátorov",new_version:"Nová verzia",extension_depends_on:"Závisí na:",extension_rating_soon:"Hodnotenia budú čoskoro dostupné",extension_installed_version:"Nainštalovaná verzia",extension_uninstall_warning:"Chystáte sa odstrániť rozšírenie pre všetkých používateľov.",uninstall_confirm:"Áno, Odinštalovať",extension_db_drop_info:"Všetky údaje pre rozšírenie budú trvalo vymazané. Túto operáciu nie je možné vrátiť!",extension_db_drop_warning:"Chystáte sa odstrániť všetky údaje pre rozšírenie. Pre pokračovanie prosím napíšte názov rozšírenia:",extension_required_lnbits_version:"Toto vydanie vyžaduje aspoň verziu LNbits",min_version:"Minimum (vrátane)",max_version:"Maximálne (vylúčené)",payment_hash:"Hash platby",fee:"Poplatok",amount:"Suma",amount_sats:"Suma (sats)",tag:"Tag",unit:"Jednotka",description:"Popis",expiry:"Expirácia",webhook:"Webhook",payment_proof:"Dôkaz platby",update:"Aktualizovať",update_available:"Dostupná aktualizácia {version}!",latest_update:"Máte najnovšiu verziu {version}.",notifications:"Notifikácie",no_notifications:"Žiadne notifikácie",notifications_disabled:"Notifikácie stavu LNbits sú zakázané.",enable_notifications:"Povoliť Notifikácie",enable_notifications_desc:"Ak povolené, budú sa načítavať najnovšie aktualizácie stavu LNbits, ako sú bezpečnostné incidenty a aktualizácie.",enable_watchdog:"Povoliť Watchdog",enable_watchdog_desc:"Ak povolené, vaš zdroj financovania sa automaticky zmení na VoidWallet, ak je váš zostatok nižší ako zostatok LNbits. Po aktualizácii bude treba povoliť manuálne.",watchdog_interval:"Interval Watchdog",watchdog_interval_desc:"Ako často by malo pozadie kontrolovať signál killswitch v watchdog delta [node_balance - lnbits_balance] (v minútach).",watchdog_delta:"Delta Watchdog",watchdog_delta_desc:"Limit pred zmenou zdroja financovania na VoidWallet [lnbits_balance - node_balance > delta]",status:"Stav",notification_source:"Zdroj notifikácií",notification_source_label:"URL zdroja (používajte len oficiálny LNbits zdroj stavu a zdroje, ktorým môžete dôverovať)",more:"viac",less:"menej",releases:"Vydania",watchdog:"Watchdog",server_logs:"Logy servera",ip_blocker:"Blokovanie IP",security:"Bezpečnosť",security_tools:"Nástroje bezpečnosti",block_access_hint:"Blokovať prístup podľa IP",allow_access_hint:"Povoliť prístup podľa IP (prebije blokované IP)",enter_ip:"Zadajte IP a stlačte enter",rate_limiter:"Obmedzovač počtu požiadaviek",wallet_limiter:"Obmedzovač peňaženky",wallet_limit_max_withdraw_per_day:"Maximálny denný výber z peňaženky v satošiach (0 pre zrušenie)",wallet_max_ballance:"Maximálny zostatok v peňaženke v satošiach (0 pre deaktiváciu)",wallet_limit_secs_between_trans:"Minimálny počet sekúnd medzi transakciami na peňaženku (0 na deaktiváciu)",number_of_requests:"Počet požiadaviek",time_unit:"Časová jednotka",minute:"minúta",second:"sekunda",hour:"hodina",disable_server_log:"Zakázať Log servera",enable_server_log:"Povoliť Log servera",coming_soon:"Funkcia bude čoskoro dostupná",session_has_expired:"Vaša relácia vypršala. Prosím, prihláste sa znova.",instant_access_question:"Chcete okamžitý prístup?",login_with_user_id:"Prihlásiť sa s používateľským ID",or:"alebo",create_new_wallet:"Vytvoriť novú peňaženku",login_to_account:"Prihláste sa do vášho účtu",create_account:"Vytvoriť účet",account_settings:"Nastavenia účtu",signin_with_nostr:"Pokračovať s Nostr",signin_with_google:"Prihlásiť sa pomocou Google",signin_with_github:"Prihlásiť sa pomocou GitHub",signin_with_keycloak:"Prihlásiť sa pomocou Keycloak",username_or_email:"Používateľské meno alebo email",password:"Heslo",password_config:"Konfigurácia hesla",password_repeat:"Opakovanie hesla",change_password:"Zmeniť heslo",update_credentials:"Aktualizovať poverenia",update_pubkey:"Aktualizovať verejný kľúč",set_password:"Nastaviť heslo",invalid_password:"Heslo musí mať aspoň 8 znakov",login:"Prihlásenie",register:"Registrovať",username:"Používateľské meno",pubkey:"Verejný kľúč",user_id:"ID používateľa",email:"Email",first_name:"Meno",last_name:"Priezvisko",picture:"Obrázok",verify_email:"Overiť e-mail s",account:"Účet",update_account:"Aktualizovať účet",invalid_username:"Neplatné užívateľské meno",auth_provider:"Poskytovateľ autentifikácie",my_account:"Môj účet",back:"Späť",logout:"Odhlásiť sa",look_and_feel:"Vzhľad a dojem",toggle_gradient:"Prepnúť prechodový režim",gradient_background:"Gradientné pozadie",language:"Jazyk",color_scheme:"Farebná schéma",admin_settings:"Nastavenia správcu",extension_cost:"Táto verzia vyžaduje minimálnu platbu {cost} satoshi.",extension_paid_sats:"Už ste zaplatili {paid_sats} sats.",release_details_error:"Nepodarilo sa získať podrobnosti o vydaní.",pay_from_wallet:"Zaplatiť z peňaženky",wallet_required:"Peňaženka *",show_qr:"Zobraziť QR",retry_install:"Skúste inštaláciu znova",new_payment:"Vytvoriť novú platbu",update_payment:"Aktualizovať platbu",already_paid_question:"Už ste zaplatili?",sell:"Predať",sell_require:"Požiadajte o platbu na povolenie rozšírenia",sell_info:"Rozšírenie {name} vyžaduje platbu minimálne {amount} sats na aktiváciu.",hide_empty_wallets:"Skryť prázdne peňaženky",recheck:"Prekontrolovať znova",contributors:"Prispievatelia",license:"Licencia",reset_key:"Resetovať kľúč",reset_password:"Obnoviť heslo",border_choices:"Výber obrysov",select_all:"Vybrať všetko",nfc_supported:"Podpora NFC",nfc_not_supported:"NFC nie je podporované",expire_date:"Dátum exspirácie:",hash:"Hash:",welcome_lnbits:"Vitajte v LNbits",setup_su_account:"Nastavte účet Superuser nižšie.",create_ticker_converter:"Vytvoriť prevodník mienových tickerov",enable_audit:"Povoliť audit",recommended:"Odporúčané",audit_desc:"Zaznamenávajte HTTP požiadavky podľa špecifikovaných filtrov.",audit_record_req:"Zaznamenať telo žiadosti",audit_record_warning:"Upozornenie:",audit_record_req_warning_1:"dôverné údaje (ako napríklad heslá) budú zaznamenané.",audit_record_req_warning_2:"telo žiadosti môže mať veľkú veľkosť.",audit_record_use:"Používajte to s opatrnosťou.",audit_ip:"Zaznamenať IP adresu",audit_ip_desc:"Zaznamenajte IP adresu klienta",audit_path_params:"Zaznamenať hodnoty cesty",audit_query_params:"Zaznamenať parametre dopytu",audit_http_methods:"Zahrnúť metódy HTTP",audit_http_methods_hint:"Zoznam zahrnutých metód HTTP. Prázdne zoznamy znamenajú všetky.",audit_http_methods_label:"HTTP metódy",audit_resp_codes:"Zahrnúť kódy odpovede HTTP",audit_resp_codes_hint:"Zoznam kódov HTTP, ktoré sa majú zahrnúť (zhoda s regexom). Prázdny zoznam znamená všetky. Napr: 4.*, 5.*",audit_resp_codes_label:"Kód odpovede HTTP (regex)",audit_paths:"Cesty zahrnúť",audit_paths_hint:"Zoznam ciest, ktoré sa majú zahrnúť (zhoda s regexom). Prázdny zoznam znamená všetky.",audit_paths_label:"HTTP cesta (regex)",audit_paths_exclude:"Vylúčiť cesty",audit_paths_exclude_hint:"Zoznam ciest, ktoré majú byť vylúčené (zhoda s regexom). Prázdny zoznam znamená žiadne.",audit_paths_exclude_label:"Cesta HTTP (regex)",exchange_providers:"Poskytovatelia výmeny",admin_extensions:"Rozšírenia administrátora",admin_extensions_label:"Rozšírenia správcu",admin_extensions_hint:"Rozšírenia môže používať iba používateľ s administrátorskými právami.",user_default_extensions:"Predvolené rozšírenia používateľa",user_default_extensions_label:"Používateľské rozšírenia",user_default_extensions_hint:"Rozšírenia, ktoré budú predvolene povolené pre používateľov.",miscellanous:"Rôzne",misc_disable_extensions:"Zakázať rozšírenia",misc_disable_extensions_label:"Zakázať všetky rozšírenia",misc_hide_api:"Skryť API",misc_hide_api_label:"Skryje API peňaženky, rozšírenia sa môžu rozhodnúť dodržiavať",wallets_management:"Správa peňaženiek",funding_source_info:"Informácie o zdroji financovania",funding_source:"Zdroj financovania: {wallet_class}",node_balance:"Stav uzla: {balance} sats",lnbits_balance:"Zostatok LNbits: {balance} sats",funding_reserve_percent:"Rezervovať percento: {percent} %",node_management:"Správa uzlov",node_management_not_supported:"Správa uzlov nie je podporovaná aktívnym zdrojom financovania",toggle_node_ui:"Používateľské rozhranie uzla",toggle_public_node_ui:"Verejné používateľské rozhranie uzla",toggle_transactions_node_ui:"Karta transakcií (Zakázať na veľkých CLN uzloch)",invoice_expiry:"Platnosť faktúry",invoice_expiry_label:"Doba platnosti faktúry (sekundy)",fee_reserve:"Rezerva poplatkov",fee_reserve_msats:"Rezervačný poplatok v msats",fee_reserve_percent:"Rezervačný poplatok v percentách",server_management:"Správa servera",base_url:"Základná URL adresa",base_url_label:"Statická/Základná URL adresa pre server",authentication:"Autentifikácia",auth_token_expiry_label:"Minúty do vypršania tokenu",auth_token_expiry_hint:"Čas v minútach do vypršania platnosti tokenu",auth_allowed_methods_label:"Povolené metódy autorizácie",auth_allowed_methods_hint:"Vyberte metódy autorizácie",auth_nostr_label:"Adresa URL žiadosti Nostr",auth_nostr_hint:"Absolútna URL adresa, ktorú klienti použijú na prihlásenie.",auth_google_ci_label:"ID klienta Google",auth_google_ci_hint:"Uistite sa, že autorizované presmerovacie URI obsahujú https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"Identifikátor klienta GitHub",auth_gh_client_id_hint:"Uistite sa, že URL adresa pre spätné volanie autorizácie je nastavená na https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Client Secret",auth_keycloak_label:"URL zistenia Keycloak",auth_keycloak_ci_label:"ID klienta Keycloak",auth_keycloak_ci_hint:"Uistite sa, že URL spätného volania autorizácie je nastavená na https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Tajný kľúč klienta Keycloak",currency_settings:"Nastavenia meny",allowed_currencies:"Povolené meny",allowed_currencies_hint:"Obmedzte počet dostupných fiat mien",default_account_currency:"Predvolená mena účtu",default_account_currency_hint:"Predvolená mena pre účtovníctvo",service_fee_label:"Poplatok za službu (%)",service_fee_hint:"Poplatok účtovaný za transakciu (%)",service_fee_max_label:"Poplatok za službu max (sats)",service_fee_max_hint:"Maximálny servisný poplatok na účtovanie v (sats)",fee_wallet:"Peňaženka s poplatkami",fee_wallet_label:"Peňaženka poplatkov (ID peňaženky)",fee_wallet_hint:"ID peňaženky, do ktorej sa majú odoslať prostriedky",disable_fee:"Zakázať poplatok",disable_fee_internal:"Zakázať poplatok za službu pre interné platby",disable_fee_internal_desc:"Zakázať poplatok za službu pre interné platby Lightning",ui_management:"Správa používateľského rozhrania",ui_site_title:"Názov stránky",ui_site_tagline:"Slogan webovej stránky",ui_elements_enable:"Povoliť prvky na domovskej stránke",ui_elements_disable:"Zakázať prvky na domovskej stránke",ui_toggle_elements_tip:"Odstrániť prvky úvodnej stránky, ako napríklad 'používa' atď.",ui_site_description:"Popis lokality",ui_site_description_hint:"Použite obyčajný text, Markdown alebo surové HTML.",ui_default_wallet_name:"Predvolený názov peňaženky",lnbits_wallet:"LNbits peňaženka",denomination:"Nominálna hodnota",denomination_hint:"Názov pre token FakeWallet",ui_qr_code_logo:"Logo QR kódu",ui_qr_code_logo_hint:"URL k obrázku loga v QR kóde",ui_custom_badge:"Vlastná odznak",ui_custom_badge_label:"Vlastný odznak 'POUŽÍVAŤ S OPATRNOSŤOU - LNbits peňaženka je stále v BETA verzii'",ui_custom_badge_color_label:"Vlastná farba odznaku",themes:"Motívy",themes_hint:"Vyberte témy dostupné pre používateľov",custom_logo:"Vlastné logo",custom_logo_hint:"URL k obrázku loga",ad_space_title:"Názov reklamného priestoru",ad_space_title_label:"Podporované spoločnosťou",ad_slots:"Reklamné sloty",ad_slots_hint:"Pridajte URL adresu a cesty k obrazovým súborom vo formáte CSV, rozšírenia sa môžu rozhodnúť dodržať",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Reklamy povolené",ads_disabled:"Reklamy deaktivované",user_management:"Správa používateľov",admin_users:"Administrátorskí používatelia",admin_users_hint:"Používatelia s administrátorskými oprávneniami",admin_users_label:"ID používateľa",allowed_users:"Povolení používatelia",allowed_users_hint:"Iba títo používatelia môžu používať LNbits.",allowed_users_label:"ID používateľa",allow_creation_user:"Povoliť vytváranie nových používateľov",allow_creation_user_desc:"Povoliť vytváranie nových používateľov na indexovej stránke",components:"Súčasti",long_running_endpoints:"Top 5 dlho bežiacich koncových bodov",http_request_methods:"Metódy HTTP žiadostí",http_response_codes:"Kódy odpovedí HTTP",request_details:"Podrobnosti žiadosti",http_request_details:"Podrobnosti požiadavky HTTP"},window.localisation.kr={confirm:"확인",server:"서버",theme:"테마",site_customisation:"사이트 사용자 정의",funding:"자금",users:"사용자",audit:"감사",apps:"앱",channels:"채널",transactions:"거래 내역",dashboard:"현황판",node:"노드",export_users:"사용자 내보내기",no_users:"사용자가 없습니다",total_capacity:"총 용량",avg_channel_size:"평균 채널 용량",biggest_channel_size:"가장 큰 채널 용량",smallest_channel_size:"가장 작은 채널 용량",number_of_channels:"채널 수",active_channels:"활성화된 채널",connect_peer:"피어 연결하기",connect:"연결하기",open_channel:"채널 개설하기",open:"개설",close_channel:"채널 폐쇄하기",close:"폐쇄",restart:"서버 재시작",save:"저장",save_tooltip:"변경 사항 저장",credit_debit:"크레딧 / 직불카드",credit_hint:"계정에 자금을 넣으려면 Enter를 눌러주세요",credit_label:"{denomination} 단위로 충전하기",credit_ok:"가상 자금({amount} sats) 입출금 성공. 지불은 자금 출처의 실제 자금에 따라 달라집니다.",restart_tooltip:"변경 사항을 적용하려면 서버를 재시작해야 합니다.",add_funds_tooltip:"지갑에 자금을 추가합니다.",reset_defaults:"기본 설정으로 돌아가기",reset_defaults_tooltip:"설정했던 내용들을 모두 지우고, 기본 설정으로 돌아갑니다.",download_backup:"데이터베이스 백업 다운로드",name_your_wallet:"사용할 {name}지갑의 이름을 정하세요",paste_invoice_label:"인보이스, 결제 요청, 혹은 lnurl 코드를 붙여넣으세요 *",lnbits_description:"설정이 쉽고 가벼운 LNbits는 어떤 라이트닝 네트워크의 예산 자원 위에서든 돌아갈 수 있습니다, 그리고 다른 LNbits 지갑들입니다. 스스로 사용하기 위해, 또는 다른 사람들에게 수탁형 솔루션을 제공하기 위해 LNbits를 운영할 수 있습니다. 각 지갑들은 자신만의 API key를 가지며, 생성 가능한 지갑의 수에는 제한이 없습니다. 자금을 분할할 수 있는 기능으로 인해, LNbits는 자금 운영 도구로써뿐만 아니라 개발 도구로써도 유용합니다. 확장 기능들은 LNbits에 여러분들이 라이트닝 네트워크의 다양한 최신 기술들을 수행해볼 수 있게 하는 추가 기능을 제공합니다. LNbits 개발진들은 확장 기능들의 개발 또한 가능한 쉽게 만들었으며, 무료 오픈 소스 프로젝트답게 사람들이 자신만의 확장 기능들을 개발하고 제출하기를 응원합니다.",export_to_phone:"QR 코드를 이용해 모바일 기기로 내보내기",export_to_phone_desc:"이 QR 코드는 선택된 지갑의 최대 접근 권한을 가진 전체 URL을 담고 있습니다. 스캔 후, 모바일 기기에서 지갑을 열 수 있습니다.",wallet:"지갑:",wallets:"지갑",add_wallet:"새로운 지갑을 추가합니다",delete_wallet:"지갑을 삭제합니다",delete_wallet_desc:"이 지갑은 삭제될 것이며, 삭제 시 지갑 내 자금은 복구가 불가능합니다.",rename_wallet:"지갑 이름 변경",update_name:"이름 변경하기",fiat_tracking:"법정통화 가격 표시",currency:"통화",update_currency:"통화 수정하기",press_to_claim:"비트코인을 수령하려면 눌러주세요",donate:"기부",view_github:"GitHub 페이지 보기",voidwallet_active:"VoidWallet이 활성화되었습니다! 결제가 불가능합니다.",use_with_caution:"주의하세요 - {name} 지갑은 아직 BETA 단계입니다.",service_fee:"서비스 수수료: 거래액의 {amount} %",service_fee_max:"서비스 수수료: 거래액의 {amount} % (최대 {max} sats)",service_fee_tooltip:"지불 결제 시마다 LNbits 서버 관리자에게 납부되는 서비스 수수료",toggle_darkmode:"다크 모드 전환",payment_reactions:"결제 반응",view_swagger_docs:"LNbits Swagger API 문서를 봅니다",api_docs:"API 문서",api_keys_api_docs:"노드 URL, API 키와 API 문서",lnbits_version:"LNbits 버전",runs_on:"Runs on",paste:"붙여넣기",paste_from_clipboard:"클립보드에서 붙여넣기",paste_request:"지불 요청 붙여넣기",create_invoice:"인보이스 생성하기",camera_tooltip:"카메라를 이용해서 인보이스/QR을 스캔하세요",export_csv:"CSV 형태로 내보내기",chart_tooltip:"그래프로 보여주기",pending:"대기 중",copy_invoice:"인보이스 복사하기",withdraw_from:"출금",cancel:"취소",scan:"스캔",read:"분석하기",pay:"지불하기",memo:"Memo",date:"일시",payment_processing:"결제 처리 중...",not_enough_funds:"자금이 부족합니다!",search_by_tag_memo_amount:"태그, memo, 수량으로 검색하기",invoice_waiting:"결제를 기다리는 인보이스",payment_received:"받은 결제액",payment_sent:"보낸 결제액",receive:"받기",send:"보내기",outgoing_payment_pending:"지불 대기 중",drain_funds:"자금 비우기",drain_funds_desc:"이는 선택된 지갑으로부터 모든 자금을 인출하는 LNURL-withdraw QR 코드입니다. 그 누구와도 공유하지 마세요. balanceCheck 및 balanceNotify 기능과 호환되며, 당신의 지갑은 첫 출금 이후로도 계속 자금을 끌어당기고 있을 수 있습니다.",i_understand:"이해하였습니다",copy_wallet_url:"지갑 URL 복사하기",disclaimer_dialog_title:"중요!",disclaimer_dialog:"로그인 기능은 향후 업데이트를 통해 지원될 계획이지만, 현재로써는 이 페이지에 향후 다시 접속하기 위해 북마크 설정하는 것을 잊지 마세요! 이 서비스는 아직 BETA 과정에 있고, LNbits 개발자들은 자금 손실에 대해 전혀 책임을 지지 않습니다.",no_transactions:"아직 아무런 거래도 이루어지지 않았습니다",manage:"관리",exchanges:"거래소",extensions:"확장 기능",no_extensions:"아직 설치된 확장 기능들이 없네요 :(",created:"생성됨",search_extensions:"확장 기능 검색하기",extension_sources:"확장 소스",ext_sources_hint:"확장 프로그램을 다운로드할 수 있는 저장소",ext_sources_label:"출처 URL (공식 LNbits 확장 소스만 사용하고, 신뢰할 수 있는 출처를 사용하세요)",warning:"주의",repository:"저장소",confirm_continue:"정말로 계속할까요?",manage_extension_details:"확장 기능 설치/삭제하기",install:"설치",uninstall:"삭제",drop_db:"데이터 삭제",enable:"활성화",pay_to_enable:"지불하여 활성화",enable_extension_details:"현재 사용자 계정에 해당 확장 기능을 활성화합니다",disable:"비활성화",delete:"삭제",installed:"설치됨",activated:"작동됨",deactivated:"작동 중지",release_notes:"배포 노트",activate_extension_details:"사용자들의 확장 기능 사용 가능 여부를 결정합니다",featured:"추천",all:"전체",only_admins_can_install:"(관리자 계정만이 확장 기능을 설치할 수 있습니다)",admin_only:"관리자 전용",new_version:"새로운 버전",extension_depends_on:"의존성 존재:",extension_rating_soon:"평점 기능도 곧 구현됩니다",extension_installed_version:"설치된 버전",extension_uninstall_warning:"모든 사용자들로부터 이 확장 기능을 제거한다는 점에 유의하세요.",uninstall_confirm:"네, 삭제합니다",extension_db_drop_info:"해당 확장 기능의 모든 데이터가 영구적으로 삭제됩니다. 작업 수행 후에는 되돌릴 수 없습니다!",extension_db_drop_warning:"해당 확장 기능의 모든 데이터가 영구적으로 삭제될 겁니다. 계속하려면 확장 기능의 이름을 입력해주세요:",extension_required_lnbits_version:"이 배포 버전은 더 높은 버전의 lnbits가 설치되어 있어야 합니다.",min_version:"최소값 (포함됨)",max_version:"최대값 (제외됨)",payment_hash:"결제 해쉬값",fee:"수수료",amount:"액수",amount_sats:"금액 (사토시)",tag:"태그",unit:"단위",description:"상세",expiry:"만료",webhook:"Webhook",payment_proof:"Payment 증거",update:"업데이트",update_available:"{version}으로 업데이트가 가능합니다.",latest_update:"이미 {version} 버전으로 업데이트되었습니다.",notifications:"알림",no_notifications:"알림 없음",notifications_disabled:"LNbits 상태 알림이 비활성화되었습니다.",enable_notifications:"알림 활성화",enable_notifications_desc:"활성화 시, 가장 최신의 보안 사고나 소프트웨어 업데이트 등의 LNbits 상황 업데이트를 불러옵니다.",enable_watchdog:"와치독 활성화",enable_watchdog_desc:"활성화 시, LNbits 잔금보다 당신의 잔금이 지정한 수준보다 더 낮아질 경우 자동으로 자금의 원천을 VoidWallet으로 변경합니다. 업데이트 이후 수동으로 활성화해 주어야 합니다.",watchdog_interval:"와치독 시간 간격",watchdog_interval_desc:"와치독 델타 값을 기반으로 하여 당신의 LNbits 서버에서 나오는 비상 정지 신호를 백그라운드 작업으로 얼마나 자주 확인할 것인지를 결정합니다. (분 단위)",watchdog_delta:"와치독 델타",watchdog_delta_desc:"당신의 자금 원천을 VoidWallet으로 변경하기까지의 기준 값 [LNbits 잔액 - 노드 잔액 > 델타 값]",status:"상황",notification_source:"알림 메세지 출처",notification_source_label:"알림 메세지를 가져올 URL (공식 LNbits 상황판 출처나, 당신이 신뢰할 수 있는 출처만을 사용하세요)",more:"더 알아보기",less:"적게",releases:"배포 버전들",watchdog:"와치독",server_logs:"서버 로그",ip_blocker:"IP 기반 차단기",security:"보안",security_tools:"보안 도구들",block_access_hint:"IP 기준으로 접속 차단하기",allow_access_hint:"IP 기준으로 접속 허용하기 (차단한 IP들을 무시합니다)",enter_ip:"IP 주소를 입력하고 Enter를 눌러주세요",rate_limiter:"횟수로 제한하기",wallet_limiter:"지갑 제한기",wallet_limit_max_withdraw_per_day:"일일 최대 지갑 출금액(sats) (0은 비활성화)",wallet_max_ballance:"지갑 최대 잔액(sats) (0은 비활성화)",wallet_limit_secs_between_trans:"지갑 당 거래 사이 최소 초 (0은 비활성화)",number_of_requests:"요청 횟수",time_unit:"시간 단위",minute:"분",second:"초",hour:"시간",disable_server_log:"서버 로깅 중단하기",enable_server_log:"서버 로깅 활성화하기",coming_soon:"곧 구현될 기능들입니다",session_has_expired:"세션 유효 기간이 만료되었습니다. 다시 로그인해 주세요.",instant_access_question:"즉시 액세스하시겠습니까?",login_with_user_id:"사용자 ID로 로그인",or:"또는",create_new_wallet:"새 지갑 만들기",login_to_account:"계정에 로그인하세요.",create_account:"계정 생성",account_settings:"계정 설정",signin_with_nostr:"Nostr로 계속하기",signin_with_google:"Google으로 로그인",signin_with_github:"GitHub으로 로그인",signin_with_keycloak:"Keycloak으로 로그인",username_or_email:"사용자 이름 또는 이메일",password:"비밀번호",password_config:"비밀번호 설정",password_repeat:"비밀번호 재입력",change_password:"비밀번호 변경",update_credentials:"자격 증명 업데이트",update_pubkey:"공개 키 업데이트",set_password:"비밀번호 설정",invalid_password:"비밀번호는 최소 8자 이상이어야 합니다",login:"로그인",register:"등록",username:"사용자 이름",pubkey:"공개 키",user_id:"사용자 ID",email:"이메일",first_name:"성명",last_name:"성",picture:"사진",verify_email:"이메일을 인증하려면",account:"계정",update_account:"계정 업데이트",invalid_username:"잘못된 사용자 이름",auth_provider:"인증 제공자",my_account:"내 계정",back:"뒤로",logout:"로그아웃",look_and_feel:"외관과 느낌",toggle_gradient:"그라디언트 전환",gradient_background:"그라디언트 배경",language:"언어",color_scheme:"색상 구성",admin_settings:"관리자 설정",extension_cost:"이 버전은 최소 {cost} sats의 지불이 필요합니다.",extension_paid_sats:"당신은 이미 {paid_sats} sats를 지불했습니다.",release_details_error:"릴리스 세부 정보를 가져올 수 없습니다.",pay_from_wallet:"지갑에서 결제하다",wallet_required:"지갑 *",show_qr:"QR 보기",retry_install:"다시 설치하세요",new_payment:"새로운 결제하기",update_payment:"결제 업데이트",already_paid_question:"이미 지불하셨나요?",sell:"판매",sell_require:"확장을 활성화하려면 결제를 요청하십시오.",sell_info:"{name} 확장 기능을 활성화하려면 최소 {amount} 사토시의 결제가 필요합니다.",hide_empty_wallets:"빈 지갑 숨기기",recheck:"재확인",contributors:"기여자",license:"라이선스",reset_key:"재설정 키",reset_password:"비밀번호 재설정",border_choices:"테두리 선택사항",select_all:"모두 선택",nfc_supported:"NFC 지원됨",nfc_not_supported:"NFC 지원되지 않음",expire_date:"만료 날짜:",hash:"해시:",welcome_lnbits:"LNbits에 오신 것을 환영합니다.",setup_su_account:"슈퍼유저 계정을 아래에 설정하십시오.",create_ticker_converter:"통화 티커 변환기 생성",enable_audit:"감사 활성화",recommended:"추천됨",audit_desc:"지정된 필터에 따라 HTTP 요청 기록",audit_record_req:"레코드 요청 본문",audit_record_warning:"경고:",audit_record_req_warning_1:"암호와 같은 기밀 데이터가 기록됩니다.",audit_record_req_warning_2:"요청 본문은 큰 크기를 가질 수 있습니다.",audit_record_use:"주의해서 사용하십시오.",audit_ip:"IP 주소 기록",audit_ip_desc:"클라이언트의 IP 주소를 기록하십시오.",audit_path_params:"경로 매개변수 기록",audit_query_params:"쿼리 매개변수 기록",audit_http_methods:"HTTP 메서드 포함",audit_http_methods_hint:"포함할 HTTP 메서드 목록. 목록이 비어 있으면 모두 포함됩니다.",audit_http_methods_label:"HTTP 방법",audit_resp_codes:"HTTP 응답 코드 포함",audit_resp_codes_hint:"포함할 HTTP 코드 목록(정규 표현식 일치). 빈 목록은 모두를 의미합니다. 예: 4.*, 5.*",audit_resp_codes_label:"HTTP 응답 코드 (정규식)",audit_paths:"포함 경로",audit_paths_hint:"포함할 경로 목록 (정규 표현식 일치). 빈 목록은 모두를 의미합니다.",audit_paths_label:"HTTP 경로 (정규식)",audit_paths_exclude:"제외 경로",audit_paths_exclude_hint:"제외할 경로 목록 (정규 표현식 일치). 빈 목록은 없음을 의미합니다.",audit_paths_exclude_label:"HTTP 경로 (정규식)",exchange_providers:"거래소 공급자",admin_extensions:"관리자 확장 프로그램",admin_extensions_label:"관리자 확장 기능",admin_extensions_hint:"확장 기능은 관리자 권한이 있는 사용자만 사용할 수 있습니다.",user_default_extensions:"사용자 기본 확장자",user_default_extensions_label:"사용자 확장 기능",user_default_extensions_hint:"사용자에게 기본적으로 활성화될 확장 기능.",miscellanous:"기타",misc_disable_extensions:"확장 프로그램 사용 안 함",misc_disable_extensions_label:"모든 확장 프로그램 비활성화",misc_hide_api:"API 숨기기",misc_hide_api_label:"지갑 API 숨기기, 확장 기능은 준수할 수 있음",wallets_management:"지갑 관리",funding_source_info:"자금 출처 정보",funding_source:"자금 출처: {wallet_class}",node_balance:"노드 잔액: {balance} 사토시",lnbits_balance:"LNbits 잔액: {balance} sats",funding_reserve_percent:"예약 비율: {percent} %",node_management:"노드 관리",node_management_not_supported:"활성화된 자금 출처에 의해 노드 관리는 지원되지 않습니다.",toggle_node_ui:"노드 UI",toggle_public_node_ui:"공개 노드 UI",toggle_transactions_node_ui:"트랜잭션 탭 (대형 CLN 노드에서는 비활성화)",invoice_expiry:"송장 만료",invoice_expiry_label:"송장 만료 (초)",fee_reserve:"수수료 예약",fee_reserve_msats:"msats의 예약 수수료",fee_reserve_percent:"예약 수수료(%)",server_management:"서버 관리",base_url:"기본 URL",base_url_label:"서버의 정적/기본 URL",authentication:"인증",auth_token_expiry_label:"토큰 만료 시간(분)",auth_token_expiry_hint:"토큰이 만료되기까지 남은 시간(분)",auth_allowed_methods_label:"허용된 인증 방법",auth_allowed_methods_hint:"인증 방법 선택",auth_nostr_label:"Nostr 요청 URL",auth_nostr_hint:"클라이언트가 로그인하는 데 사용할 절대 URL.",auth_google_ci_label:"Google 클라이언트 ID",auth_google_ci_hint:"허가된 리디렉션 URI에 https://{domain}/api/v1/auth/google/token이 포함되어 있는지 확인하세요.",auth_google_cs_label:"Google 클라이언트 시크릿",auth_gh_client_id_label:"GitHub 클라이언트 ID",auth_gh_client_id_hint:"인가 콜백 URL이 https://{domain}/api/v1/auth/github/token으로 설정되어 있는지 확인하십시오.",auth_gh_client_secret_label:"GitHub 클라이언트 비밀키",auth_keycloak_label:"Keycloak 디스커버리 URL",auth_keycloak_ci_label:"키클록 클라이언트 ID",auth_keycloak_ci_hint:"승인 콜백 URL이 https://{domain}/api/v1/auth/keycloak/token으로 설정되어 있는지 확인하십시오.",auth_keycloak_cs_label:"Keycloak 클라이언트 시크릿",currency_settings:"통화 설정",allowed_currencies:"허용되는 통화",allowed_currencies_hint:"사용 가능한 법정 화폐의 수를 제한하십시오.",default_account_currency:"기본 계좌 통화",default_account_currency_hint:"회계 기본 통화",service_fee_label:"서비스 수수료 (%)",service_fee_hint:"트랜잭션당 수수료 (%)",service_fee_max_label:"서비스 수수료 최대 (sats)",service_fee_max_hint:"(사토시)로 부과할 최대 서비스 요금",fee_wallet:"수수료 지갑",fee_wallet_label:"수수료 지갑 (지갑 ID)",fee_wallet_hint:"자금을 보낼 지갑 ID",disable_fee:"수수료 비활성화",disable_fee_internal:"내부 결제에 대한 서비스 요금 비활성화",disable_fee_internal_desc:"내부 라이트닝 결제에 대한 서비스 요금 비활성화",ui_management:"UI 관리",ui_site_title:"사이트 제목",ui_site_tagline:"사이트 태그라인",ui_elements_enable:"홈페이지의 요소 활성화",ui_elements_disable:"홈페이지의 요소 비활성화",ui_toggle_elements_tip:"'에 의해 구동됨' 등의 홈페이지 요소 제거",ui_site_description:"사이트 설명",ui_site_description_hint:"일반 텍스트, Markdown, 또는 원시 HTML을 사용하십시오.",ui_default_wallet_name:"기본 지갑 이름",lnbits_wallet:"LNbits 지갑",denomination:"액면가",denomination_hint:"FakeWallet 토큰의 이름",ui_qr_code_logo:"QR 코드 로고",ui_qr_code_logo_hint:"QR 코드의 로고 이미지 URL",ui_custom_badge:"맞춤 배지",ui_custom_badge_label:"사용자 지정 배지 '주의하여 사용 - LNbits 지갑은 여전히 BETA 상태입니다'",ui_custom_badge_color_label:"사용자 정의 배지 색상",themes:"테마",themes_hint:"사용자가 사용할 수 있는 테마 선택",custom_logo:"맞춤 로고",custom_logo_hint:"로고 이미지의 URL",ad_space_title:"광고 공간 제목",ad_space_title_label:"지원:",ad_slots:"광고 슬롯",ad_slots_hint:"광고 URL 및 이미지 파일 경로를 CSV 형식으로, 확장자는 준수할 수 있습니다.",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"광고 활성화됨",ads_disabled:"광고 비활성화됨",user_management:"사용자 관리",admin_users:"관리자 사용자",admin_users_hint:"관리자 권한이 있는 사용자",admin_users_label:"사용자 ID",allowed_users:"허용된 사용자",allowed_users_hint:"LNbits는 이 사용자들만 사용할 수 있습니다.",allowed_users_label:"사용자 ID",allow_creation_user:"새 사용자 생성 허용",allow_creation_user_desc:"색인 페이지에서 새 사용자 생성 허용",components:"구성 요소",long_running_endpoints:"최상위 5개의 장시간 실행 엔드포인트",http_request_methods:"HTTP 요청 메서드",http_response_codes:"HTTP 응답 코드",request_details:"요청 세부사항",http_request_details:"HTTP 요청 세부사항"},window.localisation.fi={confirm:"Kyllä",server:"Palvelin",theme:"Teema",site_customisation:"Sivuston kustomointi",funding:"Rahoitus",users:"Käyttäjät",audit:"Seuranta",api_watch:"API-seuranta",apps:"Sovellukset",channels:"Kanavat",transactions:"Tapahtumat",dashboard:"Ohjauspaneeli",node:"Solmu",export_users:"Vie käyttäjät",no_users:"Käyttäjiä ei löytynyt",total_capacity:"Kokonaiskapasiteetti",avg_channel_size:"Keskimääräisen kanavan kapasiteetti",biggest_channel_size:"Suurimman kanavan kapasiteetti",smallest_channel_size:"Pienimmän kanavan kapasiteetti",number_of_channels:"Kanavien lukumäärä",active_channels:"Aktiivisia kanavia",connect_peer:"Yhdistä naapuriin",connect:"Yhdistä",reconnect:"Uudista yhteys",open_channel:"Avaa kanava",open:"Avaa",close_channel:"Sulje kanava",close:"Sulje",restart:"Palvelimen uudelleen käynnistys",image_library:"Kuvakirjasto",save:"Tallenna",save_tooltip:"Tallenna muutokset",credit_debit:"Hyvitä / Veloita",credit_hint:"Hyväksy painamalla Enter (negatiivisetkin arvot ovat sallittuja)",credit_label:"Hyvitä / Veloita tilille {denomination}-varoja",credit_ok:"Virtuaalivarojen ({amount} sat) hyvitys-/veloitustapahtuma onnistui. Maksukyky riippuuu rahoituslähteen todellisista varoista.",restart_tooltip:"Uudelleenkäynnistä palvelu muutosten käyttöönottamiseksi",add_funds_tooltip:"Lisää varoja lompakkoon",reset_defaults:"Palauta oletusasetukset",reset_defaults_tooltip:"Poista kaikki asetusten muutokset ja palauta järjestelmän oletusasetukset.",download_backup:"Lataa tietokannan varmuuskopio",name_your_wallet:"Nimeä lompakkosi {name}",paste_invoice_label:"Liita lasku, maksupyyntö tai LNURL-koodi*",lnbits_description:"Kevyt ja helppokäyttöinen LNbits voi käyttää rahoituslähteinään mitä vain Lightning-palveluita ja jopa LNbits-palvelua! Voit käyttää sitä itsenäisesti ja helposti tarjota erilaisia Lightning-palveluita. Pystyt luomaan sillä salamaverkkolompakoita eikä niiden määrää ole rajoitettu. Jokaiselle lompakolle saat yksilölliset API-avaimet. Varojen osittaminen tekee siitä erittäin kätevän varojen hallinnassa sekä myös ohjelmistokehityksen työkalun. Laajennukset lisäävät LNbits:in toiminnallisuuksia. Näinpä voit helposti testailla useita erilaisia ja viimeisimpiä salamaverkon teknologioita. Laajennuksien kehittämisen olemme pyrkineet tekemään mahdollisimman helpoksi pitämällä LNbits:in ilmaisena OpenSource-projektina. Kannustamme kaikkia kehittämään ja jakelemaan omia laajennuksia!",export_to_phone:"Käytä puhelimessa lukemalla QR-koodi",export_to_phone_desc:"Tämä QR-koodi sisältää URL-osoitteen, jolla saa lompakkoosi täydet valtuudet. Voit lukea sen puhelimellasi ja avata sillä lompakkosi. Voit myös lisätä lompakkosi selaimella käytettäväksi PWA-sovellukseksi puhelimen aloitusruudulle. ",access_wallet_on_mobile:"Mobiili käyttö",wallet:"Lompakko:",wallet_name:"Lompakon nimi",wallets:"Lompakot",add_wallet:"Lisää lompakko",add_new_wallet:"Lisää uusi lompakko",pin_wallet:"Kiinnitä lompakko",delete_wallet:"Poista lompakko",delete_wallet_desc:"Lompakko poistetaan pysyvästi. Siirrä lompakosta varat ennalta muualle, sillä tämä toiminto on PERUUTTAMATON!",rename_wallet:"Nimeä lompakko uudelleen",update_name:"Tallenna",fiat_tracking:"Käytettävä valuutta",fiat_providers:"Valuutan välittäjät",currency:"Valuutta",update_currency:"Tallenna",press_to_claim:"Lunasta varat painamalla tästä",claim_desc:"Näyttää että sinulla on lunastamattomia bitcoin varoja, mutta sinulla ei vielä ole lompakkoa. Lunasta varat allaolevaa nappia painamalla, ja sinulle luodaan lompakko.",donate:"Lahjoita",view_github:"Näytä GitHub:ssa",voidwallet_active:"VoidWallet on aktiivinen. Se ei tue maksutapahtumia!",use_with_caution:"KÄYTÄ VAROEN - BETA-ohjelmisto on käytössä palvelussa: {name}",service_fee_tooltip:"LNbits palvelimen ylläpitäjä veloittaa lähtevästä maksusta palvelumaksun.",toggle_darkmode:"Tumma näkymä",payment_reactions:"Maksureaktiot",view_swagger_docs:"Näytä LNbits Swagger API-dokumentit",api_docs:"API-dokumentaatio",api_keys_api_docs:"Solmun URL, API-avaimet ja -dokumentaatio",lnbits_version:"LNbits versio",runs_on:"Mukana menossa",paste:"Liitä",paste_from_clipboard:"Liitä leikepöydältä",paste_request:"Liitä pyyntö",create_invoice:"Laskuta",camera_tooltip:"Kuvaa lasku tai QR-koodi",export_csv:"Vie CSV-tiedostoon",export_csv_details:"Vie CSV-tiedostoon lisätietoineen",chart_tooltip:"Näytä kaaviokuva",pending:"Odottaa",copy_invoice:"Kopioi lasku",withdraw_from:"Nosta kohteesta",cancel:"Peruuta",scan:"Scannaa",read:"Lue",write:"Kirjoita",pay:"Maksa",memo:"Kuvaus",date:"Päiväys",path:"Path",payment_processing:"Maksua käsitellään...",not_enough_funds:"Varat eivät riitä!",search_by_tag_memo_amount:"Etsi tunnisteella, muistiolla tai määrällä",invoice_waiting:"Lasku odottaa maksua",payment_received:"Maksu vastaanotettu",payment_sent:"Maksu lähetetty",payment_failed:"Maksu epäonnistui",receive:"vastaanota",send:"lähetä",outgoing_payment_pending:"Lähtevä maksu odottaa",drain_funds:"Tyhjennä varat",drain_funds_desc:"Tämä LNURL-withdraw -tyyppinen QR-koodi on tarkoitettu kaikkien varojen imurointiin lompakosta. ÄLÄ JAA SITÄ KENELLEKÄÄN! Se on balanceCheck- ja balanceNotify-toimintojen kanssa yhteensopiva, joten sitä voi käyttää lompakon tyhjentämiseen ensimmäisen käytön jälleen jatkuvasti.",i_understand:"Vakuutan ymmärtäväni",copy_wallet_url:"Kopioi lompakon URL",disclaimer_dialog_title:"Tärkeää!",disclaimer_dialog:"Sinun *PITÄÄ TALLETTAA* kirjautumistietosi turvallisesta ja helposti saataville, jotta pääset jatkossa kirjautumaan lompakkoosi! Löydät kirjautumistiedot Tilin asetukset -sivulta. Kukaan ei ota mitään vastuuta varojen säilymisestä tai niiden käytettävyyden takaamisesta.",no_transactions:"Lompakossa ei ole yhtään tapahtumaa",manage:"Hallinnointi",exchanges:"Vaihtokurssit",extensions:"Laajennukset",no_extensions:"Laajennuksia ei ole asennettu :(",created:"Luotu",search_extensions:"Etsi laajennuksia",search_wallets:"Etsi lompakkoa",extension_sources:"Laajennuslähteet",ext_sources_hint:"Lähteet joista laajennuksia voi ladata",ext_sources_label:"Lähde-URL (käytä vain virallista LNbits tai muuta luotettaa laajennuslähdettä)",warning:"Varoitus",repository:"Laajennuksien lähde",confirm_continue:"Haluatko varmasti jatkaa?",manage_extension_details:"Asenna/Poista laajennus",install:"Asenna",uninstall:"Poista",drop_db:"Poista tiedot",enable:"Ota käyttöön",enabled:"Käytössä",pay_to_enable:"Maksa ottaaksesi käyttöön",enable_extension_details:"Ota laajennus käyttöön tälle käyttäjälle",disable:"Poista käytöstä",delete:"Poista",installed:"Asennettu",activated:"Käytössä",deactivated:"Poissa käytöstä",release_notes:"Julkaisutiedot",activate_extension_details:"Aseta/Poista laajennus käyttäjien saatavilta",featured:"Esittelyssä",all:"Kaikki",only_admins_can_install:"(Vain pääkäyttäjät voivat asentaa laajennuksia)",admin_only:"Pääkäyttäjille",new_version:"Uusi versio",extension_depends_on:"Edellyttää:",extension_rating_soon:"Arvostelut on tulossa pian",extension_installed_version:"Nykyinen versio",extension_uninstall_warning:"Olet poistamassa laajennuksen kaikilta käyttäjiltä.",uninstall_confirm:"Kyllä, poista asennus",extension_db_drop_info:"Kaikki laajennuksen tallettama tieto poistetaan pysyvästi. Poistoa ei voi jälkikäteen peruuttaa!",extension_db_drop_warning:"Olet tuhoamassa laajennuksen tallettamat tiedot. Vahvista poisto kirjoittamalla viivalle seuraavassa näkyvä laajennuksen nimi:",extension_required_lnbits_version:"Tämä laajennus vaatii vähintään LNbits-version",min_version:"Minimi (sisältyy)",max_version:"Enimmäismäärä (ei sisälly)",payment_hash:"Maksun tiiviste",fee:"Kulu",amount:"Määrä",amount_limits:"Määrien rajat",amount_sats:"Määrä (sat)",faucest_wallet:"Faucet Wallet",faucest_wallet_desc_1:"Each time a payment is confirmed by the {provider} provider funds will be subtracted from this wallet.",faucest_wallet_desc_2:"This helps monitor all {provider} payments and their status.",faucest_wallet_desc_3:"This wallet must be topped up with the amount of sats that the admin is willing to offer in exchange for the fiat currency.",faucest_wallet_desc_4:"If this wallet is configured, but is empty, the {provider} payments will not be processed.",faucest_wallet_desc_5:"This wallet can eventually get to a negative balance if parallel fiat payments are made.",faucest_wallet_id:"Faucet Wallet ID (optional)",faucest_wallet_id_hint:"Wallet ID to use for the faucet. It will be used to send the funds to the user.",tag:"Tunniste",unit:"Yksikkö",description:"Kuvaus",expiry:"Vanhenee",webhook:"Webhook",webhook_url:"Webhook URL",webhook_url_hint:"Webhook URL to send the payment details to. It will be called when the payment is completed.",webhook_events_list:"The following events must be supported by the webhook:",webhook_stripe_description:"One the stripe side you must configure a webhook with a URL that points to your LNbits server.",payment_proof:"Maksun varmenne",update:"Päivitä",update_available:"Saatavilla on päivitys {version}-versioon!",update_available:"Rahoituslähteet",latest_update:"Käytössä oleva versio {version}, on viimeisin saatavilla oleva.",notifications:"Tiedotteet",notifications_configure:"Määritä tiedotukset",notifications_nostr_config:"Nostr-määritykset",notifications_enable_nostr:"Kaytä Nostr:ia",notifications_enable_nostr_desc:"Lähetä tietodukset Nostr:in kautta",notifications_nostr_private_key:"Nostr-yksityisavain",notifications_nostr_private_key_desc:"Yksityinen avain (hex tai nsec) Nostr-viestien lähettämisen allekirjoitukseen",notifications_nostr_identifiers:"Nostr-tunnisteet",notifications_nostr_identifiers_desc:"Lista tunnisteista kenelle tiedotukset lähetetään",notifications_telegram_config:"Telegram-määritykset",notifications_enable_telegram:"Käytä Telegram:ia",notifications_enable_telegram_desc:"Lähetä tietodukset Telegram:in kautta",notifications_telegram_access_token:"Access Token",notifications_telegram_access_token_desc:"Telegram botin Access token",notifications_chat_id:"Keskustelun tunnus",notifications_chat_id_desc:"Keskustelun tunnus minne tiedotukset lähetetään",notifications_email_config:"Sähköposti määritykset",notifications_enable_email:"Käytä sähköpostia",notifications_enable_email_desc:"Lähetä tiedotteet sähköpostilla",notifications_send_test_email:"Lähetä testiposti",notifications_send_email:"Lähetä sähköpostiosoitteella",notifications_send_email_desc:"Lähettäjänä näkyvä sähköpostiosoite",notifications_send_email_username:"Käyttäjätunnus",notifications_send_email_username_desc:"Käyttäjätunnus, mikäli tyhjä, käytetään sähköpostiosoitetta",notifications_send_email_password:"Lähtevän sähköpostin salasana",notifications_send_email_password_desc:"Salasana lähettävälle sähköpostille",notifications_send_email_server_port:"Lähtevän sähköpostin SMTP-portti",notifications_send_email_server_port_desc:"SMTP-palvelimen portti",notifications_send_email_server:"Lähtevän sähköpostin SMTP-palvelin",notifications_send_email_server_desc:"SMTP-palvelin jonka kautta sähköpostit lähetetään",notifications_send_to_emails:"Sähköpostien vastaanottaja",notifications_send_to_emails_desc:"Kenelle sähköpostit lähetetään",notification_settings_update:"Asetuksia päivitetty",notification_settings_update_desc:"Tiedota kun palvelimen asetuksia on päivitetty",notification_server_start_stop:"Palvelimen Käynnystys/Sammutus",notification_server_start_stop_desc:"Tiedota kun palvelin on käynnistetty tai sammutettu",notification_watchdog_limit:"Watchdog-raja -tiedote",notification_watchdog_limit_desc:"Tiedota kun watchdog-raja on saavutettu (ei vaikuta rahoituslähteeseen)",notification_server_status:"Palvelimen tila",notification_server_status_desc:"Lähetä säännölliset tiedotteet palvelimen tilasta (anna tiedotusväli tunteina)",notification_incoming_payment:"Saapuvat maksut",notification_incoming_payment_desc:"Tiedota kun lompakon vastaanottaman ja saapuvan maksun määrä ylittää rajan (sat)",notification_outgoing_payment:"Lähtevät maksut",notification_outgoing_payment_desc:"Tiedota kun lompakon lähettävän ja maksettavan maksun määrä ylittää rajan (sat)",notification_credit_debit:"Hyvitys / Veloitus",notification_credit_debit_desc:"Tiedota kun Superuser tekee lompakon hyvitys- tai veloitustapahtumia",notification_balance_delta_changed:"Saldon määrän muutos",notification_balance_delta_changed_desc:"Tiedota kun solmun ja LNbits saldojen eri poikkeaa edes yhden satoshin. Tämä tarkastus tehdään joka minuuttu.",enable_watchdog:"Watchdog-kytkin",enable_watchdog_desc:"Tämän ollessa käytössä, ja solmun varojen laskiessa alle LNbits-varojen määrän, otetaan automaattisesti käyttöön VoidWallet. Päivityksen jälkeen tämä asetus pitää tarkastaa uudelleen.",watchdog_interval:"Watchdog-aikaväli",watchdog_interval_desc:"Tällä määritetään kuinka usein taustatoiminto tarkistaa varojen Delta-muutokset [node_balance - lnbits_balance] killswitch-signaalille. Hakujen väli ilmoitetaan minuutteina.",watchdog_delta:"Watchdog Delta",watchdog_delta_desc:"Mikäli rahoituslähteen saldo laskee alle LNbits kokonaissaldon, muutetaan rahoituslähteeksi heti VoidWallet. Päivittämisen jälkeen asetus pitää päivittää manuaalisestsi.",status:"Tilanne",notification_source:"Tiedotteiden lähde",notification_source_label:"Lähde-URL (käytä ainoastaan LNbits:iä tai muuta luotettavaa lähdettä)",more:"näytä lisää",more_count:"näytä {count} lisää",less:"supista",releases:"Julkaisut",watchdog:"Watchdog",server_logs:"Palvelimen lokit",ip_blocker:"Palvelimen suojaus IP-osoitesuodattimella",security:"Turvallisuus",security_tools:"Turvallisuus työkalut",block_access_hint:"Estä pääsy IP-osoitteen perusteella",allow_access_hint:"Salli pääsy IP-osoitteen perusteella (ohittaa estot)",enter_ip:"Anna IP ja paina +",rate_limiter:"Toiston rajoitin",callback_url_rules:"Callback URL -säännöt",enter_callback_url_rule:"Anna URL-sääntö regex-muodossa ja paina enter",callback_url_rule_hint:"Callback URL:it (kuten LNURL) tarkistetaan kaikkien näiden sääntöjen mukaisesti. Jos sääntöjä ei ole määritetty, kaikki URL:it ovat sallittuja.",wallet_limiter:"Lompakon käyttörajoitin",wallet_config:"Wallet Config",wallet_charts:"Wallet Charts",wallet_limit_max_withdraw_per_day:"Päivittäin nostettavissa sat maksimi (0 poistaa käytöstä)",wallet_max_ballance:"Maksimisaldo (sat) (0 poistaa käytöstä)",wallet_limit_secs_between_trans:"Tapahtumien välinen minimi (sec) (0 poistaa käytöstä)",only_incoming_payments_allowed:"Vain saapuvat maksut sallittuna",disable_outgoing_payments:"Poista lähtevät maksut käytöstä",number_of_requests:"Pyyntöjen lukumäärä",time_unit:"aikayksikkö",minute:"minuutti",settings:"Asetukset",second:"sekunti",hour:"tunti",disable_server_log:"Piilota palvelimen loki",enable_server_log:"Näytä palvelimen loki",coming_soon:"Ominaisuus on tulossa pian",session_has_expired:"Käyttämätön sessio on vanhentunut. Kirjaudu uudelleen.",instant_access_question:"perinteinen kirjautuminen",login_with_user_id:"Kirjaudu käyttäjä-ID:llä",or:"tai",create_new_wallet:"Avaa uusi lompakko",delete_all_wallets:"Poista kaikki lompakot",confirm_delete_all_wallets:"Oletko todellakin varma, että haluat poistaa käyttäjältä KAIKKI lompakot?",login_to_account:"Kirjaudu käyttäjänimellä",create_account:"Luo tili",account_settings:"Tilin asetukset",signin_with_oauth:"Login with",signin_with_oauth_or:"or Login with",signin_with_nostr:"Kirjaudu Nostr:lla",signin_with_google:"Kirjaudu Google-tunnuksella",signin_with_github:"Kirjaudu GitHub-tunnuksella",signin_with_custom_org:"Kirjaudu {custom_org}-palvelulla",username_or_email:"Käyttäjänimi tai sähköposti",password:"Anna uusi salasana",password_config:"Salasanan määritys",password_repeat:"Toista uusi salasana",update_password:"Päivitä salasana",change_password:"Vaihda salasana",update_credentials:"Päivitä käyttöoikeustiedot",update_pubkey:"Päivitä julkinen avain",nostr_pubkey_tooltip:"Syötä tämän käyttäjän julkinen Nostr avain (hex arvona)",set_password:"Aseta salasana",set_password_tooltip:"Aseta käyttäjätunnukselle salasana",invalid_password:"Salasanassa tulee olla vähintään kahdeksan merkkiä",invalid_password_repeat:"Salasanat eivät täsmää",reset_key_generated:"Salasanan vaihtoavain on luotu.",reset_key_copy:"Kopioi vaihto-URL leikepöydälle painamalla OK.",login:"Kirjaudu",register:"Rekisteröidy",username:"Käyttäjänimi",pubkey:"Julkinen avain",user_id:"Käyttäjä tunnus",id:"tunnus",email:"Sähköposti",first_name:"Etunimi",last_name:"Sukunimi",picture:"Kuva",verify_email:"Vahvista sähköposti",account:"Tili",update_account:"Päivitä tiliä",invalid_username:"Virheellinen käyttäjänimi",auth_provider:"Tunnistamisen toimittaja",my_account:"Tilini",existing_account_question:"Onkohan sinulla jo tili?",background_image:"Taustakuva",back:"Takaisin",logout:"Poistu",look_and_feel:"Kieli ja värit",endpoint:"Endpoint",api:"API",api_token:"API Token",api_tokens:"API Tokens",access_control_list:"Access Control List",access_control_list_admin_warning:"This is an admin account. The generated tokens will have admin privileges.",new_api_acl:"New Access Control List",api_token_id:"Token Id",toggle_gradient:"Toggle Gradient",gradient_background:"Gradient Background",language:"Kieli",color_scheme:"Väriteema",visible_wallet_count:"Näytettävien lompakkojen määrä",admin_settings:"Pääkäyttäjän asetukset",extension_cost:"Tämä laajennus edellyttää vähintään {cost} sat maksua.",extension_paid_sats:"Olet jo maksanut {paid_sats} satsia.",release_details_error:"Ei voi hakea julkaisun tietoja.",pay_from_wallet:"Maksa lompakosta",pay_with:"Maksa {provider}:lla",select_payment_provider:"Valitse maksun välittäjä",wallet_required:"Lompakko *",show_qr:"Näytä QR",retry_install:"Yritä asennusta uudelleen",new_payment:"Luo uusi maksu",update_payment:"Päivitä maksu",already_paid_question:"Kenties maksoit jo?",sell:"Myy",sell_require:"Pyydä maksua laajennuksen käytöstä",sell_info:"{name} -laajennuksen aktivointi edellyttää vähintään {amount} sat maksua.",hide_empty_wallets:"Piilota tyhjät lompakot",recheck:"Tarkista uudelleen",check:"Tarkista",check_connection:"Tarkista yhteys",check_webhook:"Tarkista Webhook",contributors:"Avustajat",license:"Lisenssi",reset_key:"Vaihda avain",reset_password:"Vaihda salasana",border_choices:"Reunuksen vaihtoehdot",select_all:"Valitse kaikki",nfc_supported:"NFC on tuettu",nfc_not_supported:"NFC:tä ei tueta",expire_date:"Vanhenemispäivämäärä:",hash:"Tiiviste:",welcome_lnbits:"Tervetuloa LNbits-palveluun",setup_su_account:"Määritä Superuser-tili alta.",create_ticker_converter:"Luo valuuttamuuntimen Ticker",enable_audit:"Ota seuranta käyttöön",recommended:"Suositeltu",audit_desc:"Tallenna HTTP-pyyntöjä seuraavien suodattimien mukaisesti",audit_record_req:"Tallenna pyynnön Body",audit_record_warning:"Varoitus:",audit_record_req_warning_1:"Luottamukselliset tiedot (kuten salasanat) tallennetaan.",audit_record_req_warning_2:"Body-datamäätä voi olla iso.",audit_record_use:"Käytä varoen!",audit_ip:"Tallenna IP-osoite",audit_ip_desc:"Tallenna asiakkaan IP-osoite",audit_path_params:"Tallenna Path-parametrit",audit_query_params:"Tallenna Query-parametrit",audit_http_methods:"Tallenna HTTP-menetelmät",audit_http_methods_hint:"Luettelo mukaan otettavista HTTP-menetelmistä. Tyhjä luettelo tallettaa kaikki.",audit_http_methods_label:"HTTP-metodit",audit_resp_codes:"Tallenna HTTP-vastauskoodit",audit_resp_codes_hint:"HTTP-koodien lista, jotka sisällytetään (regex-match). Tyhjä luettelo tallettaa kaikki. Esim: 4.*, 5.*",audit_resp_codes_label:"HTTP-vastauskoodi (säännöllinen lauseke)",audit_paths:"Sisällytä polut",audit_paths_hint:"Luettelo poluista, jotka sisällytetään (regex-vastaavuus). Tyhjä luettelo tarkoittaa kaikkia.",audit_paths_label:"HTTP-polku (regex)",audit_paths_exclude:"Ohita polut",audit_paths_exclude_hint:"Lista poluista, jotka jätetään pois (regex-vastaavuus). Tyhjällä listalla mitään ei jätetä pois.",audit_paths_exclude_label:"HTTP-polku (regex)",exchange_providers:"Vaihtokurssin tarjoajat",admin_extensions:"Pääkäyttäjän laajennukset",admin_extensions_label:"Pääkäyttäjän laajennukset",admin_extensions_hint:"Laajennuksia voi käyttää vain käyttäjä, jolla on pääkäyttäjäoikeudet",user_default_extensions:"Käyttäjän oletuslaajennukset",user_default_extensions_label:"Käyttäjän laajennukset",user_default_extensions_hint:"Laajennukset, jotka otetaan oletusarvoisesti käyttöön kaikille käyttäjille.",miscellanous:"Sekalaiset",misc_disable_extensions:"Poista laajennukset käytöstä",misc_disable_extensions_label:"Poista kaikki laajennukset käytöstä",misc_hide_api:"Piilota API",misc_hide_api_label:"Piilottaa lompakon rajapinnan, laajennukset voivat valita välittävätkö tästä asetuksesta",wallets_management:"Lompakoiden hallinta",funding_source_info:"Rahoituslähteen tiedot",funding_source:"Rahoituslähde: {wallet_class}",node_balance:"Solmun saldo: {balance} sats",lnbits_balance:"LNbits-saldo: {balance} sat",funding_reserve_percent:"Omavaraisuusaste: {percent} %",node_management:"Solmun hallinta",node_management_not_supported:"Solmun hallinta ei ole mahdollista valitun rahoituslähteen kanssa.",toggle_node_ui:"Solmun käyttöliittymä",toggle_public_node_ui:"Julkinen näkymä solmun tietoihin",toggle_transactions_node_ui:"Tapahtumat-välilehti (Poista käytöstä suurilla CLN-solmuilla)",invoice_expiry:"Laskun vanhenemisaika",invoice_expiry_label:"Laskun vanhentuminen (sekunteina)",fee_reserve:"Kuluvaraus",fee_reserve_percent:"Kuluvaraus prosentteina",fee_reserve_msats:"Kuluvaraus milli-sat",reserve_fee_in_percent:"Kuluvaraus prosentteina",payment_wait_time:"Maksun odotusaika (sekuntia)",payment_wait_time_desc:"Kuinka pitkään maksua odotetaan saapuvaksi, ennen kuin se merkitään Odotetaan-tilaan. Aseta pidemmäksi käytettäessä HODL-laskuja, Boltz-palvelua, tms",server_management:"Palvelimen hallinta",base_url:"Palvelimen URL-osoite",base_url_label:"Palvelun staattinen pohja-URL",authentication:"Käyttäjän todennus",auth_token_expiry_label:"Kirjautumisen vanhentumisaika minuutteina",auth_token_expiry_hint:"Aika minuuteissa, jossa kirjautuminen vanhenee",auth_allowed_methods_label:"Sallitut kirjautumismenetelmät",auth_allowed_methods_hint:"Valitse kirjautumismenetelmät",auth_nostr_label:"Nostr kutsujen URL",auth_nostr_hint:"Asiakkaiden kirjautumiseen käyttämä absoluuttinen URL-osoite.",auth_google_ci_label:"Google-asiakastunnus",auth_google_ci_hint:"Varmista, että valtuutetut uudelleenohjaus-URI:t sisältävät https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google-asiakassalasana",auth_gh_client_id_label:"GitHub-asiakastunnus",auth_gh_client_id_hint:"Varmista, että valtuutuksen paluuosoite-URL on asetettu osoitteeseen https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub-asiakassalaisuusavain",auth_keycloak_label:"Keycloak-discovery-URL",auth_keycloak_ci_label:"Keycloak-asiakastunnus",auth_keycloak_ci_hint:"Varmista, että valtuutuksen palautus-URL on asetettu muotoon https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak-asiakassalasana",auth_keycloak_custom_org_label:"Valinnainen Keycloak-organisaatio",auth_keycloak_custom_icon_label:"Valinnainen Keycloak-kuvake (URL)",currency_settings:"Valuutta-asetukset",allowed_currencies:"Käytettävät valuutat",allowed_currencies_hint:"Valitse käytettävissä olevat fiat-valuutat",default_account_currency:"Tilin oletusvaluutta",default_account_currency_hint:"Kirjanpidon oletusvaluutta",min_incoming_payment_amount:"Pienin vastaanotettava maksun määrä",min_incoming_payment_amount_desc:"Pienin maksun määrä jolle voi luoda laskun",max_incoming_payment_amount:"Saapuvan maksun enimmäismäärä",max_incoming_payment_amount_desc:"Enimmäismäärä jonka voi laskuttaa",max_outgoing_payment_amount:"Lähtevän maksun enimmäismäärä",max_outgoing_payment_amount_desc:"Enimmäismäärä jonka voi maksaa",service_fee:"Palvelumaksut",service_fee_label:"Palvelumaksu (%)",service_fee_hint:"Tapahtumastakohtainen palvelumaksu (%)",service_fee_max:"Palvelumaksun enimmäismäärä",service_fee_max_label:"Palvelumaksu max (sat)",service_fee_max_hint:"Suurin veloitettava palvelumaksu (sat)",fee_wallet:"Palvelumaksujen lompakko",fee_wallet_label:"Palvelumaksujen tilityslompakko (lompakon tunnus)",fee_wallet_hint:"Lompakon tunnus, johon palvelumaksut tilitetään",disable_fee:"Poista maksu käytöstä",disable_fee_internal:"Poista palvelumaksu sisäisiltä maksuilta",disable_fee_internal_desc:"Poista palvelumaksu sisäisiltä salamaksuilta",ui_management:"Käyttöliittymän hallinta",ui_site_title:"Sivuston nimi",ui_changing_remove_lnbits_elements:" (tämän muuttamalla LNbits elementit poistuvat kotisivulla ja alareunasta)",ui_site_tagline:"Sivuston iskulause",ui_elements_enable:"Ota käyttöön elementit etusivulla/alareunassa",ui_elements_disable:"Poista elementit käytöstä etusivulla/alareunassa",ui_toggle_elements_tip:"Poista kotisivuelementit kuten 'toimii' jne.",ui_site_description:"Sivuston kuvaus",ui_site_description_hint:"Käytä tavallista tekstiä, Markdownia tai puhdasta HTML:ää",ui_default_wallet_name:"Oletuslompakon nimi",ui_default_theme:"Oletusteema",lnbits_wallet:"LNbits-lompakko",denomination:"Valuutan nimi",denomination_hint:"FakeWallet-lompakon valuutan nimi",denomination_error:"Valuutta tunnisssa on oltava 3 merkkiä, tai `sat`",ui_qr_code_logo:"QR- ja Favicon-logo",ui_qr_code_logo_hint:"Anna QR-koodissa ja Faviconissa käytettävän logo-kuvan URL",ui_custom_image:"Yksilöity kuva",ui_custom_image_label:"Anna yksilöidyn kuvan URL-osoite",ui_custom_image_hint:"Yksilöity kuva näytetään aloitus- ja kirjautumissivuilla",ui_custom_badge:"Yksilöity tunnus",ui_custom_badge_label:"Yksilöity tunnus 'KÄYTÄ VAROVAISUUTTA - LNbits-lompakko on edelleen BETA-versiossa'",ui_custom_badge_color_label:"Kustomoidun tunnuksen väri",themes:"Teemat",themes_hint:"Valitse käyttäjille saatavilla olevat teemat",custom_logo:"Mukautettu logo",custom_logo_hint:"Logokuvan sisältävä URL-osoite",ad_space_title:"Mainospaikan otsikko",ad_space_title_label:"Palvelua tukevat ",ad_slots:"Mainospaikat",ad_slots_hint:"Mainoslinkit ja kuvatiedostopolut CSV-muodossa, lisäosat voivat valita välittävätkö asetuksesta",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Mainokset käytössä",ads_disabled:"Mainokset poistettu käytöstä",user_management:"Käyttäjänhallinta",admin_users:"Pääkäyttäjät",admin_users_hint:"Käyttäjät, joilla on pääkäyttäjän oikeudet",admin_users_label:"Käyttäjätunnus",allowed_users:"Sallitut käyttäjät",allowed_users_hint:"Vain nämä käyttäjät voivat käyttää LNbitsiä",allowed_users_hint_feature:"Ainoastaan nämä käyttäjät voivat käyttää ominaisuutta {feature}",allowed_users_label:"Käyttäjätunnus",allow_creation_user:"Salli uusien käyttäjien luominen",allow_creation_user_desc:"Etusivulta on mahdollisuus luoda uusia käyttäjiä",new_user_not_allowed:"Tunnusten luonti on estetty.",components:"Komponentit",long_running_endpoints:"Top 5 pisimpään yhteydessä ollutta päätepistettä",http_request_methods:"HTTP-pyynnön menetelmät",http_response_codes:"HTTP-vastaukset koodit",request_details:"Pyynnön tiedot",http_request_details:"HTTP-pyynnön tiedot",payment_details:"Maksun yksityiskohdat",payment_details_desc:"Yksityiskohtaisen maksun sisältö",payments:"Maksut",payment_show_internal:"Näytä sisäiset maksut",payment_chart_flow:"Kuukausittainen maksuvirta",payment_chart_status:"Maksun Tila",payment_chart_tx_per_wallet:"Lompakkokohtaiset tapahtumat (saldo/kappaletta)",payment_details_back:"Takaisin Maksuihin",payment_chart_tags:"Maksut Tag:eittäin",payments_balance_in_out:"Saldo Sisään/Ulos",payments_count_in_out:"Tapahtumia Sisään/Ulos",payments_status_chart:"Tilakaavio",payments_tag_chart:"Tag-kaavio",payments_balance_chart:"Saldo-kaavio",payments_wallets_chart:"Lompakko-kaavio",payments_balance_in_out_chart:"Saldo Sisään/Ulos -kaavio",payments_count_in_out_chart:"Lukumäärä Sisään/Ulos -kaavio",reset_wallet_keys:"Uusi API-avaimet",reset_wallet_keys_desc:"Tämän lompakon API-avaimet uusitaan. Edelliset API-avaimet lakkaavat toimimasta ja uudet luodaan niiden tilalle..",view_list:"Näytä lompakot allekain",view_column:"Näytä lompakot rinnakkain",filter_payments:"Suodata maksuja",filter_date:"Suodata päiväyksellä",websocket_example:"Websocket example",secret_key:"Secret Key",signing_secret:"Signing Secret",signing_secret_hint:"Signing secret for the webhook. Messages will be signed with this secret.",callback_success_url:"Callback Success URL",callback_success_url_hint:"The user will be redirected to this URL after the payment is successful"},window._lnbitsUtils={copyText(e,t,n){Quasar.copyToClipboard(e).then((()=>{Quasar.Notify.create({message:t||"Copied to clipboard!",position:n||"bottom"})}))},confirmDialog:e=>Quasar.Dialog.create({message:e,ok:{flat:!0,color:"orange"},cancel:{flat:!0,color:"grey"}}),async logout(){LNbits.utils.confirmDialog('Do you really want to logout? Please visit "My Account" page to check your credentials!').onOk((async()=>{try{await LNbits.api.logout(),window.location="/"}catch(e){LNbits.utils.notifyApiError(e)}}))},async digestMessage(e){const t=(new TextEncoder).encode(e),n=await crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(n)).map((e=>e.toString(16).padStart(2,"0"))).join("")},formatTimestamp:(e,t=null)=>(t=t||window.dateFormat,Quasar.date.formatDate(new Date(1e3*e),t)),formatDateString(e){this.formatDate(e)},formatDate:(e,t=null)=>(t=t||window.dateFormat,Quasar.date.formatDate(new Date(e),t)),formatTimestampFrom:e=>moment.utc(1e3*e).local().fromNow(),formatDateFrom(e){const t=new Date(e).getTime();return moment.utc(t).local().fromNow()},formatBalance:(e,t="sats")=>"sats"===t?LNbits.utils.formatSat(e)+" sats":LNbits.utils.formatCurrency(e/100,t),formatCurrency:(e,t)=>new Intl.NumberFormat(window.i18n.global.locale,{style:"currency",currency:t||"sat"}).format(e),formatSat:e=>new Intl.NumberFormat(window.i18n.global.locale).format(e),formatMsat(e){return this.formatSat(e/1e3)},notifyApiError(e){if(!e.response)return console.error(e);Quasar.Notify.create({timeout:5e3,type:{400:"warning",401:"warning",500:"negative"}[e.response.status]||"warning",message:e.response.data.message||e.response.data.detail||null,caption:[e.response.status," ",e.response.statusText].join("").toUpperCase()||null,icon:null})},search(e,t,n,a){try{const i=t.toLowerCase().split(a||" ");return e.filter((e=>{let t=0;return _.each(i,(a=>{-1!==e[n].indexOf(a)&&t++})),t===i.length}))}catch(t){return e}},prepareFilterQuery(e,t,n){e.filter=n||e.filter||{},t&&(e.pagination=t.pagination,Object.assign(e.filter,t.filter));const a=e.pagination;e.loading=!0;const i={limit:a.rowsPerPage,offset:(a.page-1)*a.rowsPerPage,sortby:a.sortBy??"",direction:a.descending?"desc":"asc",...e.filter};return e.search&&(i.search=e.search),new URLSearchParams(i)},exportCSV(e,t,n){const a=(e,t)=>{let n=void 0!==t?t(e):e;return n=null==n?"":String(n),n=n.split('"').join('""'),`"${n}"`},i=[e.map((e=>a(e.label)))].concat(t.map((t=>e.map((e=>a("function"==typeof e.field?e.field(t):t[void 0===e.field?e.name:e.field],e.format))).join(",")))).join("\r\n");!0!==Quasar.exportFile(`${n||"table-export"}.csv`,i,"text/csv")&&Quasar.Notify.create({message:"Browser denied file download...",color:"negative",icon:null})},convertMarkdown(e){const t=new showdown.Converter;return t.setFlavor("github"),t.setOption("simpleLineBreaks",!0),t.makeHtml(e)},async decryptLnurlPayAES(e,t){let n=new Uint8Array(t.match(/[\da-f]{2}/gi).map((e=>parseInt(e,16))));return crypto.subtle.importKey("raw",n,{name:"AES-CBC",length:256},!1,["decrypt"]).then((t=>{let n=Uint8Array.from(window.atob(e.iv),(e=>e.charCodeAt(0))),a=Uint8Array.from(window.atob(e.ciphertext),(e=>e.charCodeAt(0)));return crypto.subtle.decrypt({name:"AES-CBC",iv:n},t,a)})).then((e=>new TextDecoder("utf-8").decode(e)))}},window._lnbitsApi={request:(e,t,n,a,i={})=>axios({method:e,url:t,headers:{"X-Api-Key":n},data:a,...i}),getServerHealth(){return this.request("get","/api/v1/health")},async createInvoice(e,t,n,a="sat",i=null,r=null,o=null,s=null){const l={out:!1,amount:t,memo:n,unit:a,lnurl_withdraw:i,fiat_provider:r,payment_hash:s};return o&&(l.extra={internal_memo:String(o)}),this.request("post","/api/v1/payments",e.inkey,l)},payInvoice(e,t,n=null){const a={out:!0,bolt11:t};return n&&(a.extra={internal_memo:String(n)}),this.request("post","/api/v1/payments",e.adminkey,a)},cancelInvoice(e,t){return this.request("post","/api/v1/payments/cancel",e.adminkey,{payment_hash:t})},settleInvoice(e,t){return this.request("post","/api/v1/payments/settle",e.adminkey,{preimage:t})},createAccount(e){return this.request("post","/api/v1/account",null,{name:e})},register:(e,t,n,a)=>axios({method:"POST",url:"/api/v1/auth/register",data:{username:e,email:t,password:n,password_repeat:a}}),reset:(e,t,n)=>axios({method:"PUT",url:"/api/v1/auth/reset",data:{reset_key:e,password:t,password_repeat:n}}),login:(e,t)=>axios({method:"POST",url:"/api/v1/auth",data:{username:e,password:t}}),loginByProvider:(e,t,n)=>axios({method:"POST",url:`/api/v1/auth/${e}`,headers:t,data:n}),loginUsr:e=>axios({method:"POST",url:"/api/v1/auth/usr",data:{usr:e}}),logout:()=>axios({method:"POST",url:"/api/v1/auth/logout"}),getAuthenticatedUser(){return this.request("get","/api/v1/auth")},getWallet(e){return this.request("get","/api/v1/wallet",e.inkey)},createWallet(e,t,n,a={}){return this.request("post","/api/v1/wallet",e.adminkey,{name:t,wallet_type:n,...a}).then((e=>{window.location="/wallet?wal="+e.data.id}))},updateWallet(e,t){return this.request("patch","/api/v1/wallet",t.adminkey,{name:e})},resetWalletKeys(e){return this.request("put",`/api/v1/wallet/reset/${e.id}`).then((e=>e.data))},deleteWallet(e){return this.request("delete",`/api/v1/wallet/${e.id}`).then((e=>{let t=new URL(window.location.href);t.searchParams.delete("wal"),window.location=t}))},getPayments(e,t){return this.request("get","/api/v1/payments/paginated?"+t,e.inkey)},getPayment(e,t){return this.request("get","/api/v1/payments/"+t,e.inkey)},updateBalance(e,t){return this.request("PUT","/users/api/v1/balance",null,{amount:e,id:t})},getCurrencies(){return this.request("GET","/api/v1/currencies").then((e=>["sats",...e.data]))}};const localStore=(e,t)=>{const n=Quasar.LocalStorage.getItem(e);return null!==n&&"null"!==n&&void 0!==n&&"undefined"!==n?n:t};window.g=Vue.reactive({errorCode:null,errorMessage:null,isUserAuthorized:!!Quasar.Cookies.get("is_lnbits_user_authorized"),offline:!navigator.onLine,hasCamera:!1,visibleDrawer:!1,extensions:WINDOW_SETTINGS.EXTENSIONS,user:null,wallet:{},fiatBalance:0,exchangeRate:0,fiatTracking:!1,showScanner:!1,payments:[],walletEventListeners:[],showNewWalletDialog:!1,newWalletType:"lightning",updatePayments:!1,updatePaymentsHash:!1,currencies:WINDOW_SETTINGS.LNBITS_CURRENCIES??[],allowedCurrencies:WINDOW_SETTINGS.LNBITS_ALLOWED_CURRENCIES??[],locale:localStore("lnbits.lang",navigator.languages[1]??"en"),disclaimerShown:localStore("lnbits.disclaimerShown",!1),isFiatPriority:localStore("lnbits.isFiatPriority",!1),mobileSimple:localStore("lnbits.mobileSimple",!0),walletFlip:localStore("lnbits.walletFlip",!1),lastActiveWallet:localStore("lnbits.lastActiveWallet",null),darkChoice:localStore("lnbits.darkMode",!0),themeChoice:localStore("lnbits.theme",WINDOW_SETTINGS.LNBITS_DEFAULT_THEME),borderChoice:localStore("lnbits.border",WINDOW_SETTINGS.LNBITS_DEFAULT_BORDER||"hard-border"),gradientChoice:localStore("lnbits.gradientBg",WINDOW_SETTINGS.LNBITS_DEFAULT_GRADIENT||!1),reactionChoice:localStore("lnbits.reactions",WINDOW_SETTINGS.LNBITS_DEFAULT_REACTION||"confettiBothSides"),bgimageChoice:localStore("lnbits.backgroundImage",WINDOW_SETTINGS.LNBITS_DEFAULT_BGIMAGE||""),ads:WINDOW_SETTINGS.AD_SPACE.split(",").map((e=>e.split(";"))),denomination:WINDOW_SETTINGS.LNBITS_DENOMINATION,isSatsDenomination:"sats"==WINDOW_SETTINGS.LNBITS_DENOMINATION,scanDetectCallback:null}),window.dateFormat="YYYY-MM-DD HH:mm";const websocketPrefix="http:"===window.location.protocol?"ws://":"wss://",websocketUrl=`${websocketPrefix}${window.location.host}/api/v1/ws`,_access_cookies_for_safari_refresh_do_not_delete=document.cookie;function eventReaction(e){if(localUrl="",reaction=localStorage.getItem("lnbits.reactions"),reaction&&"None"!==reaction)try{if(e<0)return;reaction=localStorage.getItem("lnbits.reactions"),reaction&&window[reaction.split("|")[1]]()}catch(e){console.log(e)}}function confettiTop(){document.getElementById("vue").disabled=!0;var e=Date.now()+200,t=[localStorage.getItem("lnbits.primaryColor")||"#FFD700",localStorage.getItem("lnbits.secondaryColor")||"E89400","#ffffff"];!function n(){confetti({particleCount:3,angle:270,spread:1e3,origin:{y:0},colors:t,zIndex:999999}),Date.now(){e.substring(0,n.length)===n&&(t=n)})),null==t)throw"Malformed request: unknown prefix";let n=decodeAmount(e.substring(t.length,e.length));return{prefix:t,amount:n}}function decodeData(e,t){let n=e.substring(0,7),a=bech32ToInt(n),i=e.substring(e.length-104,e.length),r=e.substring(7,e.length-104),o=decodeTags(r),s=bech32ToFiveBitArray(n+r);return s=fiveBitArrayTo8BitArray(s,!0),s=textToHexString(t).concat(byteArrayToHexString(s)),{time_stamp:a,tags:o,signature:decodeSignature(i),signing_data:s}}function decodeSignature(e){let t=fiveBitArrayTo8BitArray(bech32ToFiveBitArray(e)),n=t[t.length-1];return{r:byteArrayToHexString(t.slice(0,32)),s:byteArrayToHexString(t.slice(32,t.length-1)),recovery_flag:n}}function decodeAmount(e){let t=e.charAt(e.length-1),n=e.substring(0,e.length-1);if("0"===n.substring(0,1))throw"Malformed request: amount cannot contain leading zeros";if(n=Number(n),n<0||!Number.isInteger(n))throw"Malformed request: amount must be a positive decimal integer";switch(t){case"":return"Any amount";case"p":return n/10;case"n":return 100*n;case"u":return 1e5*n;case"m":return 1e8*n;default:throw"Malformed request: undefined amount multiplier"}}function decodeTags(e){let t=extractTags(e),n=[];return t.forEach((e=>n.push(decodeTag(e.type,e.length,e.data)))),n}function extractTags(e){let t=[];for(;e.length>0;){let n=e.charAt(0),a=bech32ToInt(e.substring(1,3)),i=e.substring(3,a+3);t.push({type:n,length:a,data:i}),e=e.substring(3+a,e.length)}return t}function decodeTag(e,t,n){switch(e){case"p":if(52!==t)break;return{type:e,length:t,description:"payment_hash",value:byteArrayToHexString(fiveBitArrayTo8BitArray(bech32ToFiveBitArray(n)))};case"d":return{type:e,length:t,description:"description",value:bech32ToUTF8String(n)};case"n":if(53!==t)break;return{type:e,length:t,description:"payee_public_key",value:byteArrayToHexString(fiveBitArrayTo8BitArray(bech32ToFiveBitArray(n)))};case"h":if(52!==t)break;return{type:e,length:t,description:"description_hash",value:n};case"x":return{type:e,length:t,description:"expiry",value:bech32ToInt(n)};case"c":return{type:e,length:t,description:"min_final_cltv_expiry",value:bech32ToInt(n)};case"f":let a=bech32ToFiveBitArray(n.charAt(0))[0];if(a<0||a>18)break;return{type:e,length:t,description:"fallback_address",value:{version:a,fallback_address:n=n.substring(1,n.length)}};case"r":let i=(n=fiveBitArrayTo8BitArray(bech32ToFiveBitArray(n))).slice(0,33),r=n.slice(33,41),o=n.slice(41,45),s=n.slice(45,49),l=n.slice(49,51);return{type:e,length:t,description:"routing_information",value:{public_key:byteArrayToHexString(i),short_channel_id:byteArrayToHexString(r),fee_base_msat:byteArrayToInt(o),fee_proportional_millionths:byteArrayToInt(s),cltv_expiry_delta:byteArrayToInt(l)}}}}function polymod(e){let t=[996825010,642813549,513874426,1027748829,705979059],n=1;return e.forEach((e=>{let a=n>>25;n=(33554431&n)<<5^e;for(let e=0;e<5;e++)n^=1==(a>>e&1)?t[e]:0})),n}function expand(e){let t=[];for(let n=0;n>5);t.push(0);for(let n=0;n{console.log("offline",e),this.g.offline=!0})),addEventListener("online",(e=>{console.log("back online",e),this.g.offline=!1})),null!=navigator.serviceWorker&&navigator.serviceWorker.register("/service-worker.js").then((e=>{console.log("Registered events at scope: ",e.scope)})),navigator.mediaDevices&&navigator.mediaDevices.enumerateDevices&&navigator.mediaDevices.enumerateDevices().then((e=>{window.g.hasCamera=e.some((e=>"videoinput"===e.kind))})),window.LNbits={g:window.g,utils:window._lnbitsUtils,api:window._lnbitsApi,map:{user(e){const t={id:e.id,admin:e.admin,email:e.email,extensions:e.extensions,wallets:e.wallets,fiat_providers:e.fiat_providers||[],super_user:e.super_user,extra:e.extra??{}},n=this.wallet;return t.wallets=t.wallets.map(n).sort(((e,t)=>e.extra.pinned!==t.extra.pinned?e.extra.pinned?-1:1:e.name.localeCompare(t.name))),t.walletOptions=t.wallets.map((e=>({label:[e.name," - ",e.id.substring(0,5),"..."].join(""),value:e.id}))),t.hiddenWalletsCount=Math.max(0,e.wallets.length-e.extra.visible_wallet_count),t.walletInvitesCount=e.extra.wallet_invite_requests?.length||0,t},wallet(e){if(newWallet={id:e.id,name:e.name,walletType:e.wallet_type,sharePermissions:e.share_permissions,sharedWalletId:e.shared_wallet_id,adminkey:e.adminkey,inkey:e.inkey,currency:e.currency,extra:e.extra,canReceivePayments:!0,canSendPayments:!0},newWallet.msat=e.balance_msat,newWallet.sat=Math.floor(e.balance_msat/1e3),newWallet.fsat=new Intl.NumberFormat(window.i18n.global.locale).format(newWallet.sat),"lightning-shared"===newWallet.walletType){const e=newWallet.sharePermissions;newWallet.canReceivePayments=e.includes("receive-payments"),newWallet.canSendPayments=e.includes("send-payments")}return newWallet.url=`/wallet?&wal=${e.id}`,newWallet.storedPaylinks=e.stored_paylinks.links,newWallet}}},window.windowMixin={methods:{handleScan(e){this.g.scanDetectCallback&&(this.g.scanDetectCallback(e),this.g.scanDetectCallback=null)},openScanDialog(e){this.g.showScanner=!0,this.g.scanDetectCallback=e},openNewWalletDialog(e="lightning"){this.g.newWalletType=e,this.g.showNewWalletDialog=!0},onWebsocketMessage(e){const t=JSON.parse(e.data);t.payment?(this.g.user.wallets.forEach((e=>{e.id===t.payment.wallet_id&&(e.sat=t.wallet_balance)})),this.g.wallet.id===t.payment.wallet_id&&(this.g.wallet.sat=t.wallet_balance,this.g.updatePayments=!this.g.updatePayments,this.g.updatePaymentsHash=!this.g.updatePaymentsHash),t.payment.amount>0&&eventReaction(1e3*t.wallet_balance)):console.error("ws message no payment",t)},paymentEvents(){let e;this.g.user.wallets.forEach((t=>{if(!this.g.walletEventListeners.includes(t.id)){this.g.walletEventListeners.push(t.id);const n=new WebSocket(`${websocketUrl}/${t.inkey}`);n.onmessage=this.onWebsocketMessage,n.onopen=()=>console.log("ws connected for wallet",t.id),n.onclose=()=>{console.log("ws closed, reconnecting...",t.id),this.g.walletEventListeners=this.g.walletEventListeners.filter((e=>e!==t.id)),clearTimeout(e),e=setTimeout(this.paymentEvents,5e3)},n.onerror=()=>{console.warn("ws error, reconnecting...",t.id),this.g.walletEventListeners=this.g.walletEventListeners.filter((e=>e!==t.id)),clearTimeout(e),e=setTimeout(this.paymentEvents,5e3)}}}))}},created(){window.user&&!this.g.user&&(this.g.user=window.LNbits.map.user(window.user),this.paymentEvents())}},function(e,t){!function e(t,n,a,i){var r=!!(t.Worker&&t.Blob&&t.Promise&&t.OffscreenCanvas&&t.OffscreenCanvasRenderingContext2D&&t.HTMLCanvasElement&&t.HTMLCanvasElement.prototype.transferControlToOffscreen&&t.URL&&t.URL.createObjectURL);function o(){}function s(e){var a=n.exports.Promise,i=void 0!==a?a:t.Promise;return"function"==typeof i?new i(e):(e(o,o),null)}var l,u,c,d,h,p,f,m,g=(c=Math.floor(1e3/60),d={},h=0,"function"==typeof requestAnimationFrame&&"function"==typeof cancelAnimationFrame?(l=function(e){var t=Math.random();return d[t]=requestAnimationFrame((function n(a){h===a||h+c-1{a=(a<<5)+e,n+=5,n>=8&&(i.push(a>>n-8&255),n-=8)})),t&&n>0&&i.push(a<<8-n&255),i}function bech32ToUTF8String(e){let t=fiveBitArrayTo8BitArray(bech32ToFiveBitArray(e)),n="";for(let e=0;e20&&(t-=20,e/=Math.pow(10,t),e+=new Array(t+1).join("0"));return e} + */function ve(e){return e+.5|0}const be=(e,t,n)=>Math.max(Math.min(e,n),t);function ye(e){return be(ve(2.55*e),0,255)}function we(e){return be(ve(255*e),0,255)}function ke(e){return be(ve(e/2.55)/100,0,1)}function xe(e){return be(ve(100*e),0,100)}const Se={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Ce=[..."0123456789ABCDEF"],Te=e=>Ce[15&e],Ee=e=>Ce[(240&e)>>4]+Ce[15&e],Pe=e=>(240&e)>>4==(15&e);const Ae=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Me(e,t,n){const a=t*Math.min(n,1-n),i=(t,i=(t+e/30)%12)=>n-a*Math.max(Math.min(i-3,9-i,1),-1);return[i(0),i(8),i(4)]}function Le(e,t,n){const a=(a,i=(a+e/60)%6)=>n-n*t*Math.max(Math.min(i,4-i,1),0);return[a(5),a(3),a(1)]}function Re(e,t,n){const a=Me(e,1,.5);let i;for(t+n>1&&(i=1/(t+n),t*=i,n*=i),i=0;i<3;i++)a[i]*=1-t-n,a[i]+=t;return a}function ze(e){const t=e.r/255,n=e.g/255,a=e.b/255,i=Math.max(t,n,a),r=Math.min(t,n,a),o=(i+r)/2;let s,l,u;return i!==r&&(u=i-r,l=o>.5?u/(2-i-r):u/(i+r),s=function(e,t,n,a,i){return e===i?(t-n)/a+(te<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055,$e=e=>e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4);function Ve(e,t,n){if(e){let a=ze(e);a[t]=Math.max(0,Math.min(a[t]+a[t]*n,0===t?360:1)),a=Oe(a),e.r=a[0],e.g=a[1],e.b=a[2]}}function Ue(e,t){return e?Object.assign(t||{},e):e}function He(e){var t={r:0,g:0,b:0,a:255};return Array.isArray(e)?e.length>=3&&(t={r:e[0],g:e[1],b:e[2],a:255},e.length>3&&(t.a=we(e[3]))):(t=Ue(e,{r:0,g:0,b:0,a:1})).a=we(t.a),t}function We(e){return"r"===e.charAt(0)?function(e){const t=Be.exec(e);let n,a,i,r=255;if(t){if(t[7]!==n){const e=+t[7];r=t[8]?ye(e):be(255*e,0,255)}return n=+t[1],a=+t[3],i=+t[5],n=255&(t[2]?ye(n):be(n,0,255)),a=255&(t[4]?ye(a):be(a,0,255)),i=255&(t[6]?ye(i):be(i,0,255)),{r:n,g:a,b:i,a:r}}}(e):function(e){const t=Ae.exec(e);let n,a=255;if(!t)return;t[5]!==n&&(a=t[6]?ye(+t[5]):we(+t[5]));const i=Ie(+t[2]),r=+t[3]/100,o=+t[4]/100;return n="hwb"===t[1]?function(e,t,n){return Ne(Re,e,t,n)}(i,r,o):"hsv"===t[1]?function(e,t,n){return Ne(Le,e,t,n)}(i,r,o):Oe(i,r,o),{r:n[0],g:n[1],b:n[2],a:a}}(e)}class Ge{constructor(e){if(e instanceof Ge)return e;const t=typeof e;let n;var a,i,r;"object"===t?n=He(e):"string"===t&&(r=(a=e).length,"#"===a[0]&&(4===r||5===r?i={r:255&17*Se[a[1]],g:255&17*Se[a[2]],b:255&17*Se[a[3]],a:5===r?17*Se[a[4]]:255}:7!==r&&9!==r||(i={r:Se[a[1]]<<4|Se[a[2]],g:Se[a[3]]<<4|Se[a[4]],b:Se[a[5]]<<4|Se[a[6]],a:9===r?Se[a[7]]<<4|Se[a[8]]:255})),n=i||function(e){je||(je=function(){const e={},t=Object.keys(De),n=Object.keys(qe);let a,i,r,o,s;for(a=0;a>16&255,r>>8&255,255&r]}return e}(),je.transparent=[0,0,0,0]);const t=je[e.toLowerCase()];return t&&{r:t[0],g:t[1],b:t[2],a:4===t.length?t[3]:255}}(e)||We(e)),this._rgb=n,this._valid=!!n}get valid(){return this._valid}get rgb(){var e=Ue(this._rgb);return e&&(e.a=ke(e.a)),e}set rgb(e){this._rgb=He(e)}rgbString(){return this._valid?(e=this._rgb)&&(e.a<255?`rgba(${e.r}, ${e.g}, ${e.b}, ${ke(e.a)})`:`rgb(${e.r}, ${e.g}, ${e.b})`):void 0;var e}hexString(){return this._valid?function(e){var t=(e=>Pe(e.r)&&Pe(e.g)&&Pe(e.b)&&Pe(e.a))(e)?Te:Ee;return e?"#"+t(e.r)+t(e.g)+t(e.b)+((e,t)=>e<255?t(e):"")(e.a,t):void 0}(this._rgb):void 0}hslString(){return this._valid?function(e){if(!e)return;const t=ze(e),n=t[0],a=xe(t[1]),i=xe(t[2]);return e.a<255?`hsla(${n}, ${a}%, ${i}%, ${ke(e.a)})`:`hsl(${n}, ${a}%, ${i}%)`}(this._rgb):void 0}mix(e,t){if(e){const n=this.rgb,a=e.rgb;let i;const r=t===i?.5:t,o=2*r-1,s=n.a-a.a,l=((o*s==-1?o:(o+s)/(1+o*s))+1)/2;i=1-l,n.r=255&l*n.r+i*a.r+.5,n.g=255&l*n.g+i*a.g+.5,n.b=255&l*n.b+i*a.b+.5,n.a=r*n.a+(1-r)*a.a,this.rgb=n}return this}interpolate(e,t){return e&&(this._rgb=function(e,t,n){const a=$e(ke(e.r)),i=$e(ke(e.g)),r=$e(ke(e.b));return{r:we(Fe(a+n*($e(ke(t.r))-a))),g:we(Fe(i+n*($e(ke(t.g))-i))),b:we(Fe(r+n*($e(ke(t.b))-r))),a:e.a+n*(t.a-e.a)}}(this._rgb,e._rgb,t)),this}clone(){return new Ge(this.rgb)}alpha(e){return this._rgb.a=we(e),this}clearer(e){return this._rgb.a*=1-e,this}greyscale(){const e=this._rgb,t=ve(.3*e.r+.59*e.g+.11*e.b);return e.r=e.g=e.b=t,this}opaquer(e){return this._rgb.a*=1+e,this}negate(){const e=this._rgb;return e.r=255-e.r,e.g=255-e.g,e.b=255-e.b,this}lighten(e){return Ve(this._rgb,2,e),this}darken(e){return Ve(this._rgb,2,-e),this}saturate(e){return Ve(this._rgb,1,e),this}desaturate(e){return Ve(this._rgb,1,-e),this}rotate(e){return function(e,t){var n=ze(e);n[0]=Ie(n[0]+t),n=Oe(n),e.r=n[0],e.g=n[1],e.b=n[2]}(this._rgb,e),this}}function Ye(e){if(e&&"object"==typeof e){const t=e.toString();return"[object CanvasPattern]"===t||"[object CanvasGradient]"===t}return!1}function Ke(e){return Ye(e)?e:new Ge(e)}function Qe(e){return Ye(e)?e:new Ge(e).saturate(.5).darken(.1).hexString()}const Ze=["x","y","borderWidth","radius","tension"],Je=["color","borderColor","backgroundColor"],Xe=new Map;function et(e,t,n){return function(e,t){t=t||{};const n=e+JSON.stringify(t);let a=Xe.get(n);return a||(a=new Intl.NumberFormat(e,t),Xe.set(n,a)),a}(t,n).format(e)}const tt={values:e=>i(e)?e:""+e,numeric(e,t,n){if(0===e)return"0";const a=this.chart.options.locale;let i,r=e;if(n.length>1){const t=Math.max(Math.abs(n[0].value),Math.abs(n[n.length-1].value));(t<1e-4||t>1e15)&&(i="scientific"),r=function(e,t){let n=t.length>3?t[2].value-t[1].value:t[1].value-t[0].value;return Math.abs(n)>=1&&e!==Math.floor(e)&&(n=e-Math.floor(e)),n}(e,n)}const o=I(Math.abs(r)),s=isNaN(o)?1:Math.max(Math.min(-1*Math.floor(o),20),0),l={notation:i,minimumFractionDigits:s,maximumFractionDigits:s};return Object.assign(l,this.options.ticks.format),et(e,a,l)},logarithmic(e,t,n){if(0===e)return"0";const a=n[t].significand||e/Math.pow(10,Math.floor(I(e)));return[1,2,3,5,10,15].includes(a)||t>.8*n.length?tt.numeric.call(this,e,t,n):""}};var nt={formatters:tt};const at=Object.create(null),it=Object.create(null);function rt(e,t){if(!t)return e;const n=t.split(".");for(let t=0,a=n.length;te.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(e,t)=>Qe(t.backgroundColor),this.hoverBorderColor=(e,t)=>Qe(t.borderColor),this.hoverColor=(e,t)=>Qe(t.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(e),this.apply(t)}set(e,t){return ot(this,e,t)}get(e){return rt(this,e)}describe(e,t){return ot(it,e,t)}override(e,t){return ot(at,e,t)}route(e,t,n,a){const i=rt(this,e),o=rt(this,n),s="_"+t;Object.defineProperties(i,{[s]:{value:i[t],writable:!0},[t]:{enumerable:!0,get(){const e=this[s],t=o[a];return r(e)?Object.assign({},t,e):l(e,t)},set(e){this[s]=e}}})}apply(e){e.forEach(e=>e(this))}}({_scriptable:e=>!e.startsWith("on"),_indexable:e=>"events"!==e,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[function(e){e.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),e.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:e=>"onProgress"!==e&&"onComplete"!==e&&"fn"!==e}),e.set("animations",{colors:{type:"color",properties:Je},numbers:{type:"number",properties:Ze}}),e.describe("animations",{_fallback:"animation"}),e.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:e=>0|e}}}})},function(e){e.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})},function(e){e.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(e,t)=>t.lineWidth,tickColor:(e,t)=>t.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:nt.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),e.route("scale.ticks","color","","color"),e.route("scale.grid","color","","borderColor"),e.route("scale.border","color","","borderColor"),e.route("scale.title","color","","color"),e.describe("scale",{_fallback:!1,_scriptable:e=>!e.startsWith("before")&&!e.startsWith("after")&&"callback"!==e&&"parser"!==e,_indexable:e=>"borderDash"!==e&&"tickBorderDash"!==e&&"dash"!==e}),e.describe("scales",{_fallback:"scale"}),e.describe("scale.ticks",{_scriptable:e=>"backdropPadding"!==e&&"callback"!==e,_indexable:e=>"backdropPadding"!==e})}]);function lt(){return"undefined"!=typeof window&&"undefined"!=typeof document}function ut(e){let t=e.parentNode;return t&&"[object ShadowRoot]"===t.toString()&&(t=t.host),t}function ct(e,t,n){let a;return"string"==typeof e?(a=parseInt(e,10),-1!==e.indexOf("%")&&(a=a/100*t.parentNode[n])):a=e,a}const dt=e=>e.ownerDocument.defaultView.getComputedStyle(e,null);function ht(e,t){return dt(e).getPropertyValue(t)}const pt=["top","right","bottom","left"];function ft(e,t,n){const a={};n=n?"-"+n:"";for(let i=0;i<4;i++){const r=pt[i];a[r]=parseFloat(e[t+"-"+r+n])||0}return a.width=a.left+a.right,a.height=a.top+a.bottom,a}function mt(e,t){if("native"in e)return e;const{canvas:n,currentDevicePixelRatio:a}=t,i=dt(n),r="border-box"===i.boxSizing,o=ft(i,"padding"),s=ft(i,"border","width"),{x:l,y:u,box:c}=function(e,t){const n=e.touches,a=n&&n.length?n[0]:e,{offsetX:i,offsetY:r}=a;let o,s,l=!1;if(((e,t,n)=>(e>0||t>0)&&(!n||!n.shadowRoot))(i,r,e.target))o=i,s=r;else{const e=t.getBoundingClientRect();o=a.clientX-e.left,s=a.clientY-e.top,l=!0}return{x:o,y:s,box:l}}(e,n),d=o.left+(c&&s.left),h=o.top+(c&&s.top);let{width:p,height:f}=t;return r&&(p-=o.width+s.width,f-=o.height+s.height),{x:Math.round((l-d)/p*n.width/a),y:Math.round((u-h)/f*n.height/a)}}const gt=e=>Math.round(10*e)/10;function _t(e,t,n,a){const i=dt(e),r=ft(i,"margin"),o=ct(i.maxWidth,e,"clientWidth")||L,s=ct(i.maxHeight,e,"clientHeight")||L,l=function(e,t,n){let a,i;if(void 0===t||void 0===n){const r=e&&ut(e);if(r){const e=r.getBoundingClientRect(),o=dt(r),s=ft(o,"border","width"),l=ft(o,"padding");t=e.width-l.width-s.width,n=e.height-l.height-s.height,a=ct(o.maxWidth,r,"clientWidth"),i=ct(o.maxHeight,r,"clientHeight")}else t=e.clientWidth,n=e.clientHeight}return{width:t,height:n,maxWidth:a||L,maxHeight:i||L}}(e,t,n);let{width:u,height:c}=l;if("content-box"===i.boxSizing){const e=ft(i,"border","width"),t=ft(i,"padding");u-=t.width+e.width,c-=t.height+e.height}return u=Math.max(0,u-r.width),c=Math.max(0,a?u/a:c-r.height),u=gt(Math.min(u,o,l.maxWidth)),c=gt(Math.min(c,s,l.maxHeight)),u&&!c&&(c=gt(u/2)),(void 0!==t||void 0!==n)&&a&&l.height&&c>l.height&&(c=l.height,u=gt(Math.floor(c*a))),{width:u,height:c}}function vt(e,t,n){const a=t||1,i=gt(e.height*a),r=gt(e.width*a);e.height=gt(e.height),e.width=gt(e.width);const o=e.canvas;return o.style&&(n||!o.style.height&&!o.style.width)&&(o.style.height=`${e.height}px`,o.style.width=`${e.width}px`),(e.currentDevicePixelRatio!==a||o.height!==i||o.width!==r)&&(e.currentDevicePixelRatio=a,o.height=i,o.width=r,e.ctx.setTransform(a,0,0,a,0,0),!0)}const bt=function(){let e=!1;try{const t={get passive(){return e=!0,!1}};lt()&&(window.addEventListener("test",null,t),window.removeEventListener("test",null,t))}catch(e){}return e}();function yt(e,t){const n=ht(e,t),a=n&&n.match(/^(\d+)(\.\d+)?px$/);return a?+a[1]:void 0}function wt(e){return!e||a(e.size)||a(e.family)?null:(e.style?e.style+" ":"")+(e.weight?e.weight+" ":"")+e.size+"px "+e.family}function kt(e,t,n,a,i){let r=t[i];return r||(r=t[i]=e.measureText(i).width,n.push(i)),r>a&&(a=r),a}function xt(e,t,n,a){let r=(a=a||{}).data=a.data||{},o=a.garbageCollect=a.garbageCollect||[];a.font!==t&&(r=a.data={},o=a.garbageCollect=[],a.font=t),e.save(),e.font=t;let s=0;const l=n.length;let u,c,d,h,p;for(u=0;un.length){for(u=0;u0&&e.stroke()}}function Pt(e,t,n){return n=n||.5,!t||e&&e.x>t.left-n&&e.xt.top-n&&e.y0&&""!==s.strokeColor;let c,d;for(e.save(),e.font=o.string,function(e,t){t.translation&&e.translate(t.translation[0],t.translation[1]),a(t.rotation)||e.rotate(t.rotation),t.color&&(e.fillStyle=t.color),t.textAlign&&(e.textAlign=t.textAlign),t.textBaseline&&(e.textBaseline=t.textBaseline)}(e,s),c=0;ce[0]){const r=n||e;void 0===a&&(a=Yt("_fallback",e));const o={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:e,_rootScopes:r,_fallback:a,_getTarget:i,override:n=>qt([n,...e],t,r,a)};return new Proxy(o,{deleteProperty:(t,n)=>(delete t[n],delete t._keys,delete e[0][n],!0),get:(n,a)=>$t(n,a,()=>function(e,t,n,a){let i;for(const r of t)if(i=Yt(Bt(r,e),n),void 0!==i)return Ft(e,i)?Wt(n,a,e,i):i}(a,t,e,n)),getOwnPropertyDescriptor:(e,t)=>Reflect.getOwnPropertyDescriptor(e._scopes[0],t),getPrototypeOf:()=>Reflect.getPrototypeOf(e[0]),has:(e,t)=>Kt(e).includes(t),ownKeys:e=>Kt(e),set(e,t,n){const a=e._storage||(e._storage=i());return e[t]=a[t]=n,delete e._keys,!0}})}function Dt(e,t,n,a){const o={_cacheable:!1,_proxy:e,_context:t,_subProxy:n,_stack:new Set,_descriptors:jt(e,a),setContext:t=>Dt(e,t,n,a),override:i=>Dt(e.override(i),t,n,a)};return new Proxy(o,{deleteProperty:(t,n)=>(delete t[n],delete e[n],!0),get:(e,t,n)=>$t(e,t,()=>function(e,t,n){const{_proxy:a,_context:o,_subProxy:s,_descriptors:l}=e;let u=a[t];return C(u)&&l.isScriptable(t)&&(u=function(e,t,n,a){const{_proxy:i,_context:r,_subProxy:o,_stack:s}=n;if(s.has(e))throw new Error("Recursion detected: "+Array.from(s).join("->")+"->"+e);s.add(e);let l=t(r,o||a);return s.delete(e),Ft(e,l)&&(l=Wt(i._scopes,i,e,l)),l}(t,u,e,n)),i(u)&&u.length&&(u=function(e,t,n,a){const{_proxy:i,_context:o,_subProxy:s,_descriptors:l}=n;if(void 0!==o.index&&a(e))return t[o.index%t.length];if(r(t[0])){const n=t,a=i._scopes.filter(e=>e!==n);t=[];for(const r of n){const n=Wt(a,i,e,r);t.push(Dt(n,o,s&&s[e],l))}}return t}(t,u,e,l.isIndexable)),Ft(t,u)&&(u=Dt(u,o,s&&s[t],l)),u}(e,t,n)),getOwnPropertyDescriptor:(t,n)=>t._descriptors.allKeys?Reflect.has(e,n)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(e,n),getPrototypeOf:()=>Reflect.getPrototypeOf(e),has:(t,n)=>Reflect.has(e,n),ownKeys:()=>Reflect.ownKeys(e),set:(t,n,a)=>(e[n]=a,delete t[n],!0)})}function jt(e,t={scriptable:!0,indexable:!0}){const{_scriptable:n=t.scriptable,_indexable:a=t.indexable,_allKeys:i=t.allKeys}=e;return{allKeys:i,scriptable:n,indexable:a,isScriptable:C(n)?n:()=>n,isIndexable:C(a)?a:()=>a}}const Bt=(e,t)=>e?e+x(t):t,Ft=(e,t)=>r(t)&&"adapters"!==e&&(null===Object.getPrototypeOf(t)||t.constructor===Object);function $t(e,t,n){if(Object.prototype.hasOwnProperty.call(e,t)||"constructor"===t)return e[t];const a=n();return e[t]=a,a}function Vt(e,t,n){return C(e)?e(t,n):e}const Ut=(e,t)=>!0===e?t:"string"==typeof e?k(t,e):void 0;function Ht(e,t,n,a,i){for(const r of t){const t=Ut(n,r);if(t){e.add(t);const r=Vt(t._fallback,n,i);if(void 0!==r&&r!==n&&r!==a)return r}else if(!1===t&&void 0!==a&&n!==a)return null}return!1}function Wt(e,t,n,a){const o=t._rootScopes,s=Vt(t._fallback,n,a),l=[...e,...o],u=new Set;u.add(a);let c=Gt(u,l,n,s||n,a);return null!==c&&(void 0===s||s===n||(c=Gt(u,l,s,c,a),null!==c))&&qt(Array.from(u),[""],o,s,()=>function(e,t,n){const a=e._getTarget();t in a||(a[t]={});const o=a[t];return i(o)&&r(n)?n:o||{}}(t,n,a))}function Gt(e,t,n,a,i){for(;n;)n=Ht(e,t,n,a,i);return n}function Yt(e,t){for(const n of t){if(!n)continue;const t=n[e];if(void 0!==t)return t}}function Kt(e){let t=e._keys;return t||(t=e._keys=function(e){const t=new Set;for(const n of e)for(const e of Object.keys(n).filter(e=>!e.startsWith("_")))t.add(e);return Array.from(t)}(e._scopes)),t}function Qt(e,t,n,a){const{iScale:i}=e,{key:r="r"}=this._parsing,o=new Array(a);let s,l,u,c;for(s=0,l=a;st"x"===e?"y":"x";function en(e,t,n,a){const i=e.skip?t:e,r=t,o=n.skip?t:n,s=Y(r,i),l=Y(o,r);let u=s/(s+l),c=l/(s+l);u=isNaN(u)?0:u,c=isNaN(c)?0:c;const d=a*u,h=a*c;return{previous:{x:r.x-d*(o.x-i.x),y:r.y-d*(o.y-i.y)},next:{x:r.x+h*(o.x-i.x),y:r.y+h*(o.y-i.y)}}}function tn(e,t="x"){const n=Xt(t),a=e.length,i=Array(a).fill(0),r=Array(a);let o,s,l,u=Jt(e,0);for(o=0;o!e.skip)),"monotone"===t.cubicInterpolationMode)tn(e,i);else{let n=a?e[e.length-1]:e[0];for(r=0,o=e.length;r0===e||1===e,on=(e,t,n)=>-Math.pow(2,10*(e-=1))*Math.sin((e-t)*A/n),sn=(e,t,n)=>Math.pow(2,-10*e)*Math.sin((e-t)*A/n)+1,ln={linear:e=>e,easeInQuad:e=>e*e,easeOutQuad:e=>-e*(e-2),easeInOutQuad:e=>(e/=.5)<1?.5*e*e:-.5*(--e*(e-2)-1),easeInCubic:e=>e*e*e,easeOutCubic:e=>(e-=1)*e*e+1,easeInOutCubic:e=>(e/=.5)<1?.5*e*e*e:.5*((e-=2)*e*e+2),easeInQuart:e=>e*e*e*e,easeOutQuart:e=>-((e-=1)*e*e*e-1),easeInOutQuart:e=>(e/=.5)<1?.5*e*e*e*e:-.5*((e-=2)*e*e*e-2),easeInQuint:e=>e*e*e*e*e,easeOutQuint:e=>(e-=1)*e*e*e*e+1,easeInOutQuint:e=>(e/=.5)<1?.5*e*e*e*e*e:.5*((e-=2)*e*e*e*e+2),easeInSine:e=>1-Math.cos(e*z),easeOutSine:e=>Math.sin(e*z),easeInOutSine:e=>-.5*(Math.cos(P*e)-1),easeInExpo:e=>0===e?0:Math.pow(2,10*(e-1)),easeOutExpo:e=>1===e?1:1-Math.pow(2,-10*e),easeInOutExpo:e=>rn(e)?e:e<.5?.5*Math.pow(2,10*(2*e-1)):.5*(2-Math.pow(2,-10*(2*e-1))),easeInCirc:e=>e>=1?e:-(Math.sqrt(1-e*e)-1),easeOutCirc:e=>Math.sqrt(1-(e-=1)*e),easeInOutCirc:e=>(e/=.5)<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(e-=2)*e)+1),easeInElastic:e=>rn(e)?e:on(e,.075,.3),easeOutElastic:e=>rn(e)?e:sn(e,.075,.3),easeInOutElastic(e){const t=.1125;return rn(e)?e:e<.5?.5*on(2*e,t,.45):.5+.5*sn(2*e-1,t,.45)},easeInBack(e){const t=1.70158;return e*e*((t+1)*e-t)},easeOutBack(e){const t=1.70158;return(e-=1)*e*((t+1)*e+t)+1},easeInOutBack(e){let t=1.70158;return(e/=.5)<1?e*e*((1+(t*=1.525))*e-t)*.5:.5*((e-=2)*e*((1+(t*=1.525))*e+t)+2)},easeInBounce:e=>1-ln.easeOutBounce(1-e),easeOutBounce(e){const t=7.5625,n=2.75;return e<1/n?t*e*e:e<2/n?t*(e-=1.5/n)*e+.75:e<2.5/n?t*(e-=2.25/n)*e+.9375:t*(e-=2.625/n)*e+.984375},easeInOutBounce:e=>e<.5?.5*ln.easeInBounce(2*e):.5*ln.easeOutBounce(2*e-1)+.5};function un(e,t,n,a){return{x:e.x+n*(t.x-e.x),y:e.y+n*(t.y-e.y)}}function cn(e,t,n,a){return{x:e.x+n*(t.x-e.x),y:"middle"===a?n<.5?e.y:t.y:"after"===a?n<1?e.y:t.y:n>0?t.y:e.y}}function dn(e,t,n,a){const i={x:e.cp2x,y:e.cp2y},r={x:t.cp1x,y:t.cp1y},o=un(e,i,n),s=un(i,r,n),l=un(r,t,n),u=un(o,s,n),c=un(s,l,n);return un(u,c,n)}const hn=/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/,pn=/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/;function fn(e,t){const n=(""+e).match(hn);if(!n||"normal"===n[1])return 1.2*t;switch(e=+n[2],n[3]){case"px":return e;case"%":e/=100}return t*e}const mn=e=>+e||0;function gn(e,t){const n={},a=r(t),i=a?Object.keys(t):t,o=r(e)?a?n=>l(e[n],e[t[n]]):t=>e[t]:()=>e;for(const e of i)n[e]=mn(o(e));return n}function _n(e){return gn(e,{top:"y",right:"x",bottom:"y",left:"x"})}function vn(e){return gn(e,["topLeft","topRight","bottomLeft","bottomRight"])}function bn(e){const t=_n(e);return t.width=t.left+t.right,t.height=t.top+t.bottom,t}function yn(e,t){e=e||{},t=t||st.font;let n=l(e.size,t.size);"string"==typeof n&&(n=parseInt(n,10));let a=l(e.style,t.style);a&&!(""+a).match(pn)&&(console.warn('Invalid font style specified: "'+a+'"'),a=void 0);const i={family:l(e.family,t.family),lineHeight:fn(l(e.lineHeight,t.lineHeight),n),size:n,style:a,weight:l(e.weight,t.weight),string:""};return i.string=wt(i),i}function wn(e,t,n,a){let r,o,s,l=!0;for(r=0,o=e.length;rn&&0===e?0:e+t;return{min:o(a,-Math.abs(r)),max:o(i,r)}}function xn(e,t){return Object.assign(Object.create(e),t)}function Sn(e,t,n){return e?function(e,t){return{x:n=>e+e+t-n,setWidth(e){t=e},textAlign:e=>"center"===e?e:"right"===e?"left":"right",xPlus:(e,t)=>e-t,leftForLtr:(e,t)=>e-t}}(t,n):{x:e=>e,setWidth(e){},textAlign:e=>e,xPlus:(e,t)=>e+t,leftForLtr:(e,t)=>e}}function Cn(e,t){let n,a;"ltr"!==t&&"rtl"!==t||(n=e.canvas.style,a=[n.getPropertyValue("direction"),n.getPropertyPriority("direction")],n.setProperty("direction",t,"important"),e.prevTextDirection=a)}function Tn(e,t){void 0!==t&&(delete e.prevTextDirection,e.canvas.style.setProperty("direction",t[0],t[1]))}function En(e){return"angle"===e?{between:Z,compare:K,normalize:Q}:{between:ee,compare:(e,t)=>e-t,normalize:e=>e}}function Pn({start:e,end:t,count:n,loop:a,style:i}){return{start:e%n,end:t%n,loop:a&&(t-e+1)%n==0,style:i}}function An(e,t,n){if(!n)return[e];const{property:a,start:i,end:r}=n,o=t.length,{compare:s,between:l,normalize:u}=En(a),{start:c,end:d,loop:h,style:p}=function(e,t,n){const{property:a,start:i,end:r}=n,{between:o,normalize:s}=En(a),l=t.length;let u,c,{start:d,end:h,loop:p}=e;if(p){for(d+=l,h+=l,u=0,c=l;uv||l(i,_,m)&&0!==s(i,_),w=()=>!v||0===s(r,m)||l(r,_,m);for(let e=c,n=c;e<=d;++e)g=t[e%o],g.skip||(m=u(g[a]),m!==_&&(v=l(m,i,r),null===b&&y()&&(b=0===s(m,i)?e:n),null!==b&&w()&&(f.push(Pn({start:b,end:e,loop:h,count:o,style:p})),b=null),n=e,_=m));return null!==b&&f.push(Pn({start:b,end:d,loop:h,count:o,style:p})),f}function Mn(e,t){const n=[],a=e.segments;for(let i=0;ii&&e[r%t].skip;)r--;return r%=t,{start:i,end:r}}(n,i,r,a);return Rn(e,!0===a?[{start:o,end:s,loop:r}]:function(e,t,n,a){const i=e.length,r=[];let o,s=t,l=e[t];for(o=t+1;o<=n;++o){const n=e[o%i];n.skip||n.stop?l.skip||(a=!1,r.push({start:t%i,end:(o-1)%i,loop:a}),t=s=n.stop?o:null):(s=o,l.skip&&(t=o)),l=n}return null!==s&&r.push({start:t%i,end:s%i,loop:a}),r}(n,o,s!a(e[t.axis]));i.lo-=Math.max(0,o);const s=n.slice(i.hi).findIndex(e=>!a(e[t.axis]));i.hi+=Math.max(0,s)}return i}if(r._sharedOptions){const e=o[0],a="function"==typeof e.getRange&&e.getRange(t);if(a){const e=s(o,t,n-a),i=s(o,t,n+a);return{lo:e.lo,hi:i.hi}}}}return{lo:0,hi:o.length-1}}function jn(e,t,n,a,i){const r=e.getSortedVisibleDatasetMetas(),o=n[t];for(let e=0,n=r.length;e{e[o]&&e[o](t[n],i)&&(r.push({element:e,datasetIndex:a,index:l}),s=s||e.inRange(t.x,t.y,i))}),a&&!s?[]:r}var Vn={evaluateInteractionItems:jn,modes:{index(e,t,n,a){const i=mt(t,e),r=n.axis||"x",o=n.includeInvisible||!1,s=n.intersect?Bn(e,i,r,a,o):Fn(e,i,r,!1,a,o),l=[];return s.length?(e.getSortedVisibleDatasetMetas().forEach(e=>{const t=s[0].index,n=e.data[t];n&&!n.skip&&l.push({element:n,datasetIndex:e.index,index:t})}),l):[]},dataset(e,t,n,a){const i=mt(t,e),r=n.axis||"xy",o=n.includeInvisible||!1;let s=n.intersect?Bn(e,i,r,a,o):Fn(e,i,r,!1,a,o);if(s.length>0){const t=s[0].datasetIndex,n=e.getDatasetMeta(t).data;s=[];for(let e=0;eBn(e,mt(t,e),n.axis||"xy",a,n.includeInvisible||!1),nearest(e,t,n,a){const i=mt(t,e),r=n.axis||"xy",o=n.includeInvisible||!1;return Fn(e,i,r,n.intersect,a,o)},x:(e,t,n,a)=>$n(e,mt(t,e),"x",n.intersect,a),y:(e,t,n,a)=>$n(e,mt(t,e),"y",n.intersect,a)}};const Un=["left","top","right","bottom"];function Hn(e,t){return e.filter(e=>e.pos===t)}function Wn(e,t){return e.filter(e=>-1===Un.indexOf(e.pos)&&e.box.axis===t)}function Gn(e,t){return e.sort((e,n)=>{const a=t?n:e,i=t?e:n;return a.weight===i.weight?a.index-i.index:a.weight-i.weight})}function Yn(e,t,n,a){return Math.max(e[n],t[n])+Math.max(e[a],t[a])}function Kn(e,t){e.top=Math.max(e.top,t.top),e.left=Math.max(e.left,t.left),e.bottom=Math.max(e.bottom,t.bottom),e.right=Math.max(e.right,t.right)}function Qn(e,t,n,a){const{pos:i,box:o}=n,s=e.maxPadding;if(!r(i)){n.size&&(e[i]-=n.size);const t=a[n.stack]||{size:0,count:1};t.size=Math.max(t.size,n.horizontal?o.height:o.width),n.size=t.size/t.count,e[i]+=n.size}o.getPadding&&Kn(s,o.getPadding());const l=Math.max(0,t.outerWidth-Yn(s,e,"left","right")),u=Math.max(0,t.outerHeight-Yn(s,e,"top","bottom")),c=l!==e.w,d=u!==e.h;return e.w=l,e.h=u,n.horizontal?{same:c,other:d}:{same:d,other:c}}function Zn(e,t){const n=t.maxPadding;return function(e){const a={left:0,top:0,right:0,bottom:0};return e.forEach(e=>{a[e]=Math.max(t[e],n[e])}),a}(e?["left","right"]:["top","bottom"])}function Jn(e,t,n,a){const i=[];let r,o,s,l,u,c;for(r=0,o=e.length,u=0;re.box.fullSize),!0),a=Gn(Hn(t,"left"),!0),i=Gn(Hn(t,"right")),r=Gn(Hn(t,"top"),!0),o=Gn(Hn(t,"bottom")),s=Wn(t,"x"),l=Wn(t,"y");return{fullSize:n,leftAndTop:a.concat(r),rightAndBottom:i.concat(l).concat(o).concat(s),chartArea:Hn(t,"chartArea"),vertical:a.concat(i).concat(l),horizontal:r.concat(o).concat(s)}}(e.boxes),l=s.vertical,u=s.horizontal;h(e.boxes,e=>{"function"==typeof e.beforeLayout&&e.beforeLayout()});const c=l.reduce((e,t)=>t.box.options&&!1===t.box.options.display?e:e+1,0)||1,d=Object.freeze({outerWidth:t,outerHeight:n,padding:i,availableWidth:r,availableHeight:o,vBoxMaxWidth:r/2/c,hBoxMaxHeight:o/2}),p=Object.assign({},i);Kn(p,bn(a));const f=Object.assign({maxPadding:p,w:r,h:o,x:i.left,y:i.top},i),m=function(e,t){const n=function(e){const t={};for(const n of e){const{stack:e,pos:a,stackWeight:i}=n;if(!e||!Un.includes(a))continue;const r=t[e]||(t[e]={count:0,placed:0,weight:0,size:0});r.count++,r.weight+=i}return t}(e),{vBoxMaxWidth:a,hBoxMaxHeight:i}=t;let r,o,s;for(r=0,o=e.length;r{const n=t.box;Object.assign(n,e.chartArea),n.update(f.w,f.h,{left:0,top:0,right:0,bottom:0})})}};class na{acquireContext(e,t){}releaseContext(e){return!1}addEventListener(e,t,n){}removeEventListener(e,t,n){}getDevicePixelRatio(){return 1}getMaximumSize(e,t,n,a){return t=Math.max(0,t||e.width),n=n||e.height,{width:t,height:Math.max(0,a?Math.floor(t/a):n)}}isAttached(e){return!0}updateConfig(e){}}class aa extends na{acquireContext(e){return e&&e.getContext&&e.getContext("2d")||null}updateConfig(e){e.options.animation=!1}}const ia="$chartjs",ra={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},oa=e=>null===e||""===e,sa=!!bt&&{passive:!0};function la(e,t,n){e&&e.canvas&&e.canvas.removeEventListener(t,n,sa)}function ua(e,t){for(const n of e)if(n===t||n.contains(t))return!0}function ca(e,t,n){const a=e.canvas,i=new MutationObserver(e=>{let t=!1;for(const n of e)t=t||ua(n.addedNodes,a),t=t&&!ua(n.removedNodes,a);t&&n()});return i.observe(document,{childList:!0,subtree:!0}),i}function da(e,t,n){const a=e.canvas,i=new MutationObserver(e=>{let t=!1;for(const n of e)t=t||ua(n.removedNodes,a),t=t&&!ua(n.addedNodes,a);t&&n()});return i.observe(document,{childList:!0,subtree:!0}),i}const ha=new Map;let pa=0;function fa(){const e=window.devicePixelRatio;e!==pa&&(pa=e,ha.forEach((t,n)=>{n.currentDevicePixelRatio!==e&&t()}))}function ma(e,t,n){const a=e.canvas,i=a&&ut(a);if(!i)return;const r=ce((e,t)=>{const a=i.clientWidth;n(e,t),a{const t=e[0],n=t.contentRect.width,a=t.contentRect.height;0===n&&0===a||r(n,a)});return o.observe(i),function(e,t){ha.size||window.addEventListener("resize",fa),ha.set(e,t)}(e,r),o}function ga(e,t,n){n&&n.disconnect(),"resize"===t&&function(e){ha.delete(e),ha.size||window.removeEventListener("resize",fa)}(e)}function _a(e,t,n){const a=e.canvas,i=ce(t=>{null!==e.ctx&&n(function(e,t){const n=ra[e.type]||e.type,{x:a,y:i}=mt(e,t);return{type:n,chart:t,native:e,x:void 0!==a?a:null,y:void 0!==i?i:null}}(t,e))},e);return function(e,t,n){e&&e.addEventListener(t,n,sa)}(a,t,i),i}class va extends na{acquireContext(e,t){const n=e&&e.getContext&&e.getContext("2d");return n&&n.canvas===e?(function(e,t){const n=e.style,a=e.getAttribute("height"),i=e.getAttribute("width");if(e[ia]={initial:{height:a,width:i,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",n.boxSizing=n.boxSizing||"border-box",oa(i)){const t=yt(e,"width");void 0!==t&&(e.width=t)}if(oa(a))if(""===e.style.height)e.height=e.width/(t||2);else{const t=yt(e,"height");void 0!==t&&(e.height=t)}}(e,t),n):null}releaseContext(e){const t=e.canvas;if(!t[ia])return!1;const n=t[ia].initial;["height","width"].forEach(e=>{const i=n[e];a(i)?t.removeAttribute(e):t.setAttribute(e,i)});const i=n.style||{};return Object.keys(i).forEach(e=>{t.style[e]=i[e]}),t.width=t.width,delete t[ia],!0}addEventListener(e,t,n){this.removeEventListener(e,t);const a=e.$proxies||(e.$proxies={}),i={attach:ca,detach:da,resize:ma}[t]||_a;a[t]=i(e,t,n)}removeEventListener(e,t){const n=e.$proxies||(e.$proxies={}),a=n[t];a&&(({attach:ga,detach:ga,resize:ga}[t]||la)(e,t,a),n[t]=void 0)}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(e,t,n,a){return _t(e,t,n,a)}isAttached(e){const t=e&&ut(e);return!(!t||!t.isConnected)}}function ba(e){return!lt()||"undefined"!=typeof OffscreenCanvas&&e instanceof OffscreenCanvas?aa:va}var ya=Object.freeze({__proto__:null,BasePlatform:na,BasicPlatform:aa,DomPlatform:va,_detectPlatform:ba});const wa="transparent",ka={boolean:(e,t,n)=>n>.5?t:e,color(e,t,n){const a=Ke(e||wa),i=a.valid&&Ke(t||wa);return i&&i.valid?i.mix(a,n).hexString():t},number:(e,t,n)=>e+(t-e)*n};class xa{constructor(e,t,n,a){const i=t[n];a=wn([e.to,a,i,e.from]);const r=wn([e.from,i,a]);this._active=!0,this._fn=e.fn||ka[e.type||typeof r],this._easing=ln[e.easing]||ln.linear,this._start=Math.floor(Date.now()+(e.delay||0)),this._duration=this._total=Math.floor(e.duration),this._loop=!!e.loop,this._target=t,this._prop=n,this._from=r,this._to=a,this._promises=void 0}active(){return this._active}update(e,t,n){if(this._active){this._notify(!1);const a=this._target[this._prop],i=n-this._start,r=this._duration-i;this._start=n,this._duration=Math.floor(Math.max(r,e.duration)),this._total+=i,this._loop=!!e.loop,this._to=wn([e.to,t,a,e.from]),this._from=wn([e.from,a,t])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(e){const t=e-this._start,n=this._duration,a=this._prop,i=this._from,r=this._loop,o=this._to;let s;if(this._active=i!==o&&(r||t1?2-s:s,s=this._easing(Math.min(1,Math.max(0,s))),this._target[a]=this._fn(i,o,s))}wait(){const e=this._promises||(this._promises=[]);return new Promise((t,n)=>{e.push({res:t,rej:n})})}_notify(e){const t=e?"res":"rej",n=this._promises||[];for(let e=0;e{const o=e[a];if(!r(o))return;const s={};for(const e of t)s[e]=o[e];(i(o.properties)&&o.properties||[a]).forEach(e=>{e!==a&&n.has(e)||n.set(e,s)})})}_animateOptions(e,t){const n=t.options,a=function(e,t){if(!t)return;let n=e.options;if(n)return n.$shared&&(e.options=n=Object.assign({},n,{$shared:!1,$animations:{}})),n;e.options=t}(e,n);if(!a)return[];const i=this._createAnimations(a,n);return n.$shared&&function(e,t){const n=[],a=Object.keys(t);for(let t=0;t{e.options=n},()=>{}),i}_createAnimations(e,t){const n=this._properties,a=[],i=e.$animations||(e.$animations={}),r=Object.keys(t),o=Date.now();let s;for(s=r.length-1;s>=0;--s){const l=r[s];if("$"===l.charAt(0))continue;if("options"===l){a.push(...this._animateOptions(e,t));continue}const u=t[l];let c=i[l];const d=n.get(l);if(c){if(d&&c.active()){c.update(d,u,o);continue}c.cancel()}d&&d.duration?(i[l]=c=new xa(d,e,l,u),a.push(c)):e[l]=u}return a}update(e,t){if(0===this._properties.size)return void Object.assign(e,t);const n=this._createAnimations(e,t);return n.length?(_e.add(this._chart,n),!0):void 0}}function Ca(e,t){const n=e&&e.options||{},a=n.reverse,i=void 0===n.min?t:0,r=void 0===n.max?t:0;return{start:a?r:i,end:a?i:r}}function Ta(e,t){const n=[],a=e._getSortedDatasetMetas(t);let i,r;for(i=0,r=a.length;i0||!n&&t<0)return i.index}return null}function La(e,t){const{chart:n,_cachedMeta:a}=e,i=n._stacks||(n._stacks={}),{iScale:r,vScale:o,index:s}=a,l=r.axis,u=o.axis,c=function(e,t,n){return`${e.id}.${t.id}.${n.stack||n.type}`}(r,o,a),d=t.length;let h;for(let e=0;en[e].axis===t).shift()}function za(e,t){const n=e.controller.index,a=e.vScale&&e.vScale.axis;if(a){t=t||e._parsed;for(const e of t){const t=e._stacks;if(!t||void 0===t[a]||void 0===t[a][n])return;delete t[a][n],void 0!==t[a]._visualValues&&void 0!==t[a]._visualValues[n]&&delete t[a]._visualValues[n]}}}const Na=e=>"reset"===e||"none"===e,Oa=(e,t)=>t?e:Object.assign({},e);class Ia{static defaults={};static datasetElementType=null;static dataElementType=null;constructor(e,t){this.chart=e,this._ctx=e.ctx,this.index=t,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const e=this._cachedMeta;this.configure(),this.linkScales(),e._stacked=Pa(e.vScale,e),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(e){this.index!==e&&za(this._cachedMeta),this.index=e}linkScales(){const e=this.chart,t=this._cachedMeta,n=this.getDataset(),a=(e,t,n,a)=>"x"===e?t:"r"===e?a:n,i=t.xAxisID=l(n.xAxisID,Ra(e,"x")),r=t.yAxisID=l(n.yAxisID,Ra(e,"y")),o=t.rAxisID=l(n.rAxisID,Ra(e,"r")),s=t.indexAxis,u=t.iAxisID=a(s,i,r,o),c=t.vAxisID=a(s,r,i,o);t.xScale=this.getScaleForId(i),t.yScale=this.getScaleForId(r),t.rScale=this.getScaleForId(o),t.iScale=this.getScaleForId(u),t.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(e){return this.chart.scales[e]}_getOtherScale(e){const t=this._cachedMeta;return e===t.iScale?t.vScale:t.iScale}reset(){this._update("reset")}_destroy(){const e=this._cachedMeta;this._data&&se(this._data,this),e._stacked&&za(e)}_dataCheck(){const e=this.getDataset(),t=e.data||(e.data=[]),n=this._data;if(r(t)){const e=this._cachedMeta;this._data=function(e,t){const{iScale:n,vScale:a}=t,i="x"===n.axis?"x":"y",r="x"===a.axis?"x":"y",o=Object.keys(e),s=new Array(o.length);let l,u,c;for(l=0,u=o.length;l0&&n._parsed[e-1];if(!1===this._parsing)n._parsed=a,n._sorted=!0,d=a;else{d=i(a[e])?this.parseArrayData(n,a,e,t):r(a[e])?this.parseObjectData(n,a,e,t):this.parsePrimitiveData(n,a,e,t);const o=()=>null===c[l]||p&&c[l]e&&!t.hidden&&t._stacked&&{keys:Ta(n,!0),values:null})(t,n,this.chart),u={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:d}=function(e){const{min:t,max:n,minDefined:a,maxDefined:i}=e.getUserBounds();return{min:a?t:Number.NEGATIVE_INFINITY,max:i?n:Number.POSITIVE_INFINITY}}(s);let h,p;function f(){p=a[h];const t=p[s.axis];return!o(p[e.axis])||c>t||d=0;--h)if(!f()){this.updateRangeFromParsed(u,e,p,l);break}return u}getAllParsedValues(e){const t=this._cachedMeta._parsed,n=[];let a,i,r;for(a=0,i=t.length;a=0&&ethis.getContext(n,a,t),c);return p.$shared&&(p.$shared=s,i[r]=Object.freeze(Oa(p,s))),p}_resolveAnimations(e,t,n){const a=this.chart,i=this._cachedDataOpts,r=`animation-${t}`,o=i[r];if(o)return o;let s;if(!1!==a.options.animation){const a=this.chart.config,i=a.datasetAnimationScopeKeys(this._type,t),r=a.getOptionScopes(this.getDataset(),i);s=a.createResolver(r,this.getContext(e,n,t))}const l=new Sa(a,s&&s.animations);return s&&s._cacheable&&(i[r]=Object.freeze(l)),l}getSharedOptions(e){if(e.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},e))}includeOptions(e,t){return!t||Na(e)||this.chart._animationsDisabled}_getSharedOptions(e,t){const n=this.resolveDataElementOptions(e,t),a=this._sharedOptions,i=this.getSharedOptions(n),r=this.includeOptions(t,i)||i!==a;return this.updateSharedOptions(i,t,n),{sharedOptions:i,includeOptions:r}}updateElement(e,t,n,a){Na(a)?Object.assign(e,n):this._resolveAnimations(t,a).update(e,n)}updateSharedOptions(e,t,n){e&&!Na(t)&&this._resolveAnimations(void 0,t).update(e,n)}_setStyle(e,t,n,a){e.active=a;const i=this.getStyle(t,a);this._resolveAnimations(t,n,a).update(e,{options:!a&&this.getSharedOptions(i)||i})}removeHoverStyle(e,t,n){this._setStyle(e,n,"active",!1)}setHoverStyle(e,t,n){this._setStyle(e,n,"active",!0)}_removeDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!1)}_setDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!0)}_resyncElements(e){const t=this._data,n=this._cachedMeta.data;for(const[e,t,n]of this._syncList)this[e](t,n);this._syncList=[];const a=n.length,i=t.length,r=Math.min(i,a);r&&this.parse(0,r),i>a?this._insertElements(a,i-a,e):i{for(e.length+=t,o=e.length-1;o>=r;o--)e[o]=e[o-t]};for(s(i),o=e;o{a[e]=n[e]&&n[e].active()?n[e]._to:this[e]}),a}}function Da(e,t){const n=e.options.ticks,i=function(e){const t=e.options.offset,n=e._tickSize(),a=e._length/n+(t?0:1),i=e._maxLength/n;return Math.floor(Math.min(a,i))}(e),r=Math.min(n.maxTicksLimit||i,i),o=n.major.enabled?function(e){const t=[];let n,a;for(n=0,a=e.length;nr)return function(e,t,n,a){let i,r=0,o=n[0];for(a=Math.ceil(a),i=0;ii)return t}return Math.max(i,1)}(o,t,r);if(s>0){let e,n;const i=s>1?Math.round((u-l)/(s-1)):null;for(ja(t,c,d,a(i)?0:l-i,l),e=0,n=s-1;e"top"===t||"left"===t?e[t]+n:e[t]-n,Fa=(e,t)=>Math.min(t||e,e);function $a(e,t){const n=[],a=e.length/t,i=e.length;let r=0;for(;ro+s)))return u}function Ua(e){return e.drawTicks?e.tickLength:0}function Ha(e,t){if(!e.display)return 0;const n=yn(e.font,t),a=bn(e.padding);return(i(e.text)?e.text.length:1)*n.lineHeight+a.height}function Wa(e,t,n){let a=he(e);return(n&&"right"!==t||!n&&"right"===t)&&(a=(e=>"left"===e?"right":"right"===e?"left":e)(a)),a}class Ga extends qa{constructor(e){super(),this.id=e.id,this.type=e.type,this.options=void 0,this.ctx=e.ctx,this.chart=e.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(e){this.options=e.setContext(this.getContext()),this.axis=e.axis,this._userMin=this.parse(e.min),this._userMax=this.parse(e.max),this._suggestedMin=this.parse(e.suggestedMin),this._suggestedMax=this.parse(e.suggestedMax)}parse(e,t){return e}getUserBounds(){let{_userMin:e,_userMax:t,_suggestedMin:n,_suggestedMax:a}=this;return e=s(e,Number.POSITIVE_INFINITY),t=s(t,Number.NEGATIVE_INFINITY),n=s(n,Number.POSITIVE_INFINITY),a=s(a,Number.NEGATIVE_INFINITY),{min:s(e,n),max:s(t,a),minDefined:o(e),maxDefined:o(t)}}getMinMax(e){let t,{min:n,max:a,minDefined:i,maxDefined:r}=this.getUserBounds();if(i&&r)return{min:n,max:a};const o=this.getMatchingVisibleMetas();for(let s=0,l=o.length;sa?a:n,a=i&&n>a?n:a,{min:s(n,s(a,n)),max:s(a,s(n,a))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const e=this.chart.data;return this.options.labels||(this.isHorizontal()?e.xLabels:e.yLabels)||e.labels||[]}getLabelItems(e=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(e))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){d(this.options.beforeUpdate,[this])}update(e,t,n){const{beginAtZero:a,grace:i,ticks:r}=this.options,o=r.sampleSize;this.beforeUpdate(),this.maxWidth=e,this.maxHeight=t,this._margins=n=Object.assign({left:0,right:0,top:0,bottom:0},n),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+n.left+n.right:this.height+n.top+n.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=kn(this,i,a),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const s=o=i||n<=1||!this.isHorizontal())return void(this.labelRotation=a);const u=this._getLabelSizes(),c=u.widest.width,d=u.highest.height,h=J(this.chart.width-c,0,this.maxWidth);r=e.offset?this.maxWidth/n:h/(n-1),c+6>r&&(r=h/(n-(e.offset?.5:1)),o=this.maxHeight-Ua(e.grid)-t.padding-Ha(e.title,this.chart.options.font),s=Math.sqrt(c*c+d*d),l=H(Math.min(Math.asin(J((u.highest.height+6)/r,-1,1)),Math.asin(J(o/s,-1,1))-Math.asin(J(d/s,-1,1)))),l=Math.max(a,Math.min(i,l))),this.labelRotation=l}afterCalculateLabelRotation(){d(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){d(this.options.beforeFit,[this])}fit(){const e={width:0,height:0},{chart:t,options:{ticks:n,title:a,grid:i}}=this,r=this._isVisible(),o=this.isHorizontal();if(r){const r=Ha(a,t.options.font);if(o?(e.width=this.maxWidth,e.height=Ua(i)+r):(e.height=this.maxHeight,e.width=Ua(i)+r),n.display&&this.ticks.length){const{first:t,last:a,widest:i,highest:r}=this._getLabelSizes(),s=2*n.padding,l=U(this.labelRotation),u=Math.cos(l),c=Math.sin(l);if(o){const t=n.mirror?0:c*i.width+u*r.height;e.height=Math.min(this.maxHeight,e.height+t+s)}else{const t=n.mirror?0:u*i.width+c*r.height;e.width=Math.min(this.maxWidth,e.width+t+s)}this._calculatePadding(t,a,c,u)}}this._handleMargins(),o?(this.width=this._length=t.width-this._margins.left-this._margins.right,this.height=e.height):(this.width=e.width,this.height=this._length=t.height-this._margins.top-this._margins.bottom)}_calculatePadding(e,t,n,a){const{ticks:{align:i,padding:r},position:o}=this.options,s=0!==this.labelRotation,l="top"!==o&&"x"===this.axis;if(this.isHorizontal()){const o=this.getPixelForTick(0)-this.left,u=this.right-this.getPixelForTick(this.ticks.length-1);let c=0,d=0;s?l?(c=a*e.width,d=n*t.height):(c=n*e.height,d=a*t.width):"start"===i?d=t.width:"end"===i?c=e.width:"inner"!==i&&(c=e.width/2,d=t.width/2),this.paddingLeft=Math.max((c-o+r)*this.width/(this.width-o),0),this.paddingRight=Math.max((d-u+r)*this.width/(this.width-u),0)}else{let n=t.height/2,a=e.height/2;"start"===i?(n=0,a=e.height):"end"===i&&(n=t.height,a=0),this.paddingTop=n+r,this.paddingBottom=a+r}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){d(this.options.afterFit,[this])}isHorizontal(){const{axis:e,position:t}=this.options;return"top"===t||"bottom"===t||"x"===e}isFullSize(){return this.options.fullSize}_convertTicksToLabels(e){let t,n;for(this.beforeTickToLabelConversion(),this.generateTickLabels(e),t=0,n=e.length;t{const n=e.gc,a=n.length/2;let i;if(a>t){for(i=0;i({width:s[e]||0,height:l[e]||0});return{first:T(0),last:T(t-1),widest:T(S),highest:T(C),widths:s,heights:l}}getLabelForValue(e){return e}getPixelForValue(e,t){return NaN}getValueForPixel(e){}getPixelForTick(e){const t=this.ticks;return e<0||e>t.length-1?null:this.getPixelForValue(t[e].value)}getPixelForDecimal(e){this._reversePixels&&(e=1-e);const t=this._startPixel+e*this._length;return X(this._alignToPixels?St(this.chart,t,0):t)}getDecimalForPixel(e){const t=(e-this._startPixel)/this._length;return this._reversePixels?1-t:t}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:e,max:t}=this;return e<0&&t<0?t:e>0&&t>0?e:0}getContext(e){const t=this.ticks||[];if(e>=0&&eo*a?o/n:s/a:s*a0}_computeGridLineItems(e){const t=this.axis,n=this.chart,a=this.options,{grid:i,position:o,border:s}=a,u=i.offset,c=this.isHorizontal(),d=this.ticks.length+(u?1:0),h=Ua(i),p=[],f=s.setContext(this.getContext()),m=f.display?f.width:0,g=m/2,_=function(e){return St(n,e,m)};let v,b,y,w,k,x,S,C,T,E,P,A;if("top"===o)v=_(this.bottom),x=this.bottom-h,C=v-g,E=_(e.top)+g,A=e.bottom;else if("bottom"===o)v=_(this.top),E=e.top,A=_(e.bottom)-g,x=v+g,C=this.top+h;else if("left"===o)v=_(this.right),k=this.right-h,S=v-g,T=_(e.left)+g,P=e.right;else if("right"===o)v=_(this.left),T=e.left,P=_(e.right)-g,k=v+g,S=this.left+h;else if("x"===t){if("center"===o)v=_((e.top+e.bottom)/2+.5);else if(r(o)){const e=Object.keys(o)[0],t=o[e];v=_(this.chart.scales[e].getPixelForValue(t))}E=e.top,A=e.bottom,x=v+g,C=x+h}else if("y"===t){if("center"===o)v=_((e.left+e.right)/2);else if(r(o)){const e=Object.keys(o)[0],t=o[e];v=_(this.chart.scales[e].getPixelForValue(t))}k=v-g,S=k-h,T=e.left,P=e.right}const M=l(a.ticks.maxTicksLimit,d),L=Math.max(1,Math.ceil(d/M));for(b=0;b0&&(r-=a/2)}d={left:r,top:i,width:a+t.width,height:n+t.height,color:e.backdropColor}}_.push({label:w,font:T,textOffset:A,options:{rotation:g,color:n,strokeColor:r,strokeWidth:u,textAlign:p,textBaseline:M,translation:[k,x],backdrop:d}})}return _}_getXAxisLabelAlignment(){const{position:e,ticks:t}=this.options;if(-U(this.labelRotation))return"top"===e?"left":"right";let n="center";return"start"===t.align?n="left":"end"===t.align?n="right":"inner"===t.align&&(n="inner"),n}_getYAxisLabelAlignment(e){const{position:t,ticks:{crossAlign:n,mirror:a,padding:i}}=this.options,r=e+i,o=this._getLabelSizes().widest.width;let s,l;return"left"===t?a?(l=this.right+i,"near"===n?s="left":"center"===n?(s="center",l+=o/2):(s="right",l+=o)):(l=this.right-r,"near"===n?s="right":"center"===n?(s="center",l-=o/2):(s="left",l=this.left)):"right"===t?a?(l=this.left+i,"near"===n?s="right":"center"===n?(s="center",l-=o/2):(s="left",l-=o)):(l=this.left+r,"near"===n?s="left":"center"===n?(s="center",l+=o/2):(s="right",l=this.right)):s="right",{textAlign:s,x:l}}_computeLabelArea(){if(this.options.ticks.mirror)return;const e=this.chart,t=this.options.position;return"left"===t||"right"===t?{top:0,left:this.left,bottom:e.height,right:this.right}:"top"===t||"bottom"===t?{top:this.top,left:0,bottom:this.bottom,right:e.width}:void 0}drawBackground(){const{ctx:e,options:{backgroundColor:t},left:n,top:a,width:i,height:r}=this;t&&(e.save(),e.fillStyle=t,e.fillRect(n,a,i,r),e.restore())}getLineWidthForValue(e){const t=this.options.grid;if(!this._isVisible()||!t.display)return 0;const n=this.ticks.findIndex(t=>t.value===e);return n>=0?t.setContext(this.getContext(n)).lineWidth:0}drawGrid(e){const t=this.options.grid,n=this.ctx,a=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(e));let i,r;const o=(e,t,a)=>{a.width&&a.color&&(n.save(),n.lineWidth=a.width,n.strokeStyle=a.color,n.setLineDash(a.borderDash||[]),n.lineDashOffset=a.borderDashOffset,n.beginPath(),n.moveTo(e.x,e.y),n.lineTo(t.x,t.y),n.stroke(),n.restore())};if(t.display)for(i=0,r=a.length;i{this.drawBackground(),this.drawGrid(e),this.drawTitle()}},{z:a,draw:()=>{this.drawBorder()}},{z:t,draw:e=>{this.drawLabels(e)}}]:[{z:t,draw:e=>{this.draw(e)}}]}getMatchingVisibleMetas(e){const t=this.chart.getSortedVisibleDatasetMetas(),n=this.axis+"AxisID",a=[];let i,r;for(i=0,r=t.length;i{const a=n.split("."),i=a.pop(),r=[e].concat(a).join("."),o=t[n].split("."),s=o.pop(),l=o.join(".");st.route(r,i,l,s)})}(t,e.defaultRoutes),e.descriptors&&st.describe(t,e.descriptors)}(e,r,n),this.override&&st.override(e.id,e.overrides)),r}get(e){return this.items[e]}unregister(e){const t=this.items,n=e.id,a=this.scope;n in t&&delete t[n],a&&n in st[a]&&(delete st[a][n],this.override&&delete at[n])}}var Ka=new class{constructor(){this.controllers=new Ya(Ia,"datasets",!0),this.elements=new Ya(qa,"elements"),this.plugins=new Ya(Object,"plugins"),this.scales=new Ya(Ga,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...e){this._each("register",e)}remove(...e){this._each("unregister",e)}addControllers(...e){this._each("register",e,this.controllers)}addElements(...e){this._each("register",e,this.elements)}addPlugins(...e){this._each("register",e,this.plugins)}addScales(...e){this._each("register",e,this.scales)}getController(e){return this._get(e,this.controllers,"controller")}getElement(e){return this._get(e,this.elements,"element")}getPlugin(e){return this._get(e,this.plugins,"plugin")}getScale(e){return this._get(e,this.scales,"scale")}removeControllers(...e){this._each("unregister",e,this.controllers)}removeElements(...e){this._each("unregister",e,this.elements)}removePlugins(...e){this._each("unregister",e,this.plugins)}removeScales(...e){this._each("unregister",e,this.scales)}_each(e,t,n){[...t].forEach(t=>{const a=n||this._getRegistryForType(t);n||a.isForType(t)||a===this.plugins&&t.id?this._exec(e,a,t):h(t,t=>{const a=n||this._getRegistryForType(t);this._exec(e,a,t)})})}_exec(e,t,n){const a=x(e);d(n["before"+a],[],n),t[e](n),d(n["after"+a],[],n)}_getRegistryForType(e){for(let t=0;te.filter(e=>!t.some(t=>e.plugin.id===t.plugin.id));this._notify(a(t,n),e,"stop"),this._notify(a(n,t),e,"start")}}function Za(e,t){return t||!1!==e?!0===e?{}:e:null}function Ja(e,{plugin:t,local:n},a,i){const r=e.pluginScopeKeys(t),o=e.getOptionScopes(a,r);return n&&t.defaults&&o.push(t.defaults),e.createResolver(o,i,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function Xa(e,t){const n=st.datasets[e]||{};return((t.datasets||{})[e]||{}).indexAxis||t.indexAxis||n.indexAxis||"x"}function ei(e){if("x"===e||"y"===e||"r"===e)return e}function ti(e,...t){if(ei(e))return e;for(const a of t){const t=a.axis||("top"===(n=a.position)||"bottom"===n?"x":"left"===n||"right"===n?"y":void 0)||e.length>1&&ei(e[0].toLowerCase());if(t)return t}var n;throw new Error(`Cannot determine type of '${e}' axis. Please provide 'axis' or 'position' option.`)}function ni(e,t,n){if(n[t+"AxisID"]===e)return{axis:t}}function ai(e){const t=e.options||(e.options={});t.plugins=l(t.plugins,{}),t.scales=function(e,t){const n=at[e.type]||{scales:{}},a=t.scales||{},i=Xa(e.type,t),o=Object.create(null);return Object.keys(a).forEach(t=>{const s=a[t];if(!r(s))return console.error(`Invalid scale configuration for scale: ${t}`);if(s._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${t}`);const l=ti(t,s,function(e,t){if(t.data&&t.data.datasets){const n=t.data.datasets.filter(t=>t.xAxisID===e||t.yAxisID===e);if(n.length)return ni(e,"x",n[0])||ni(e,"y",n[0])}return{}}(t,e),st.scales[s.type]),u=function(e,t){return e===t?"_index_":"_value_"}(l,i),c=n.scales||{};o[t]=v(Object.create(null),[{axis:l},s,c[l],c[u]])}),e.data.datasets.forEach(n=>{const i=n.type||e.type,r=n.indexAxis||Xa(i,t),s=(at[i]||{}).scales||{};Object.keys(s).forEach(e=>{const t=function(e,t){let n=e;return"_index_"===e?n=t:"_value_"===e&&(n="x"===t?"y":"x"),n}(e,r),i=n[t+"AxisID"]||t;o[i]=o[i]||Object.create(null),v(o[i],[{axis:t},a[i],s[e]])})}),Object.keys(o).forEach(e=>{const t=o[e];v(t,[st.scales[t.type],st.scale])}),o}(e,t)}function ii(e){return(e=e||{}).datasets=e.datasets||[],e.labels=e.labels||[],e}const ri=new Map,oi=new Set;function si(e,t){let n=ri.get(e);return n||(n=t(),ri.set(e,n),oi.add(n)),n}const li=(e,t,n)=>{const a=k(t,n);void 0!==a&&e.add(a)};class ui{constructor(e){this._config=function(e){return(e=e||{}).data=ii(e.data),ai(e),e}(e),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(e){this._config.type=e}get data(){return this._config.data}set data(e){this._config.data=ii(e)}get options(){return this._config.options}set options(e){this._config.options=e}get plugins(){return this._config.plugins}update(){const e=this._config;this.clearCache(),ai(e)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(e){return si(e,()=>[[`datasets.${e}`,""]])}datasetAnimationScopeKeys(e,t){return si(`${e}.transition.${t}`,()=>[[`datasets.${e}.transitions.${t}`,`transitions.${t}`],[`datasets.${e}`,""]])}datasetElementScopeKeys(e,t){return si(`${e}-${t}`,()=>[[`datasets.${e}.elements.${t}`,`datasets.${e}`,`elements.${t}`,""]])}pluginScopeKeys(e){const t=e.id;return si(`${this.type}-plugin-${t}`,()=>[[`plugins.${t}`,...e.additionalOptionScopes||[]]])}_cachedScopes(e,t){const n=this._scopeCache;let a=n.get(e);return a&&!t||(a=new Map,n.set(e,a)),a}getOptionScopes(e,t,n){const{options:a,type:i}=this,r=this._cachedScopes(e,n),o=r.get(t);if(o)return o;const s=new Set;t.forEach(t=>{e&&(s.add(e),t.forEach(t=>li(s,e,t))),t.forEach(e=>li(s,a,e)),t.forEach(e=>li(s,at[i]||{},e)),t.forEach(e=>li(s,st,e)),t.forEach(e=>li(s,it,e))});const l=Array.from(s);return 0===l.length&&l.push(Object.create(null)),oi.has(t)&&r.set(t,l),l}chartOptionScopes(){const{options:e,type:t}=this;return[e,at[t]||{},st.datasets[t]||{},{type:t},st,it]}resolveNamedOptions(e,t,n,a=[""]){const r={$shared:!0},{resolver:o,subPrefixes:s}=ci(this._resolverCache,e,a);let l=o;(function(e,t){const{isScriptable:n,isIndexable:a}=jt(e);for(const r of t){const t=n(r),o=a(r),s=(o||t)&&e[r];if(t&&(C(s)||di(s))||o&&i(s))return!0}return!1})(o,t)&&(r.$shared=!1,l=Dt(o,n=C(n)?n():n,this.createResolver(e,n,s)));for(const e of t)r[e]=l[e];return r}createResolver(e,t,n=[""],a){const{resolver:i}=ci(this._resolverCache,e,n);return r(t)?Dt(i,t,void 0,a):i}}function ci(e,t,n){let a=e.get(t);a||(a=new Map,e.set(t,a));const i=n.join();let r=a.get(i);return r||(r={resolver:qt(t,n),subPrefixes:n.filter(e=>!e.toLowerCase().includes("hover"))},a.set(i,r)),r}const di=e=>r(e)&&Object.getOwnPropertyNames(e).some(t=>C(e[t])),hi=["top","bottom","left","right","chartArea"];function pi(e,t){return"top"===e||"bottom"===e||-1===hi.indexOf(e)&&"x"===t}function fi(e,t){return function(n,a){return n[e]===a[e]?n[t]-a[t]:n[e]-a[e]}}function mi(e){const t=e.chart,n=t.options.animation;t.notifyPlugins("afterRender"),d(n&&n.onComplete,[e],t)}function gi(e){const t=e.chart,n=t.options.animation;d(n&&n.onProgress,[e],t)}function _i(e){return lt()&&"string"==typeof e?e=document.getElementById(e):e&&e.length&&(e=e[0]),e&&e.canvas&&(e=e.canvas),e}const vi={},bi=e=>{const t=_i(e);return Object.values(vi).filter(e=>e.canvas===t).pop()};function yi(e,t,n){const a=Object.keys(e);for(const i of a){const a=+i;if(a>=t){const r=e[i];delete e[i],(n>0||a>t)&&(e[a+n]=r)}}}class wi{static defaults=st;static instances=vi;static overrides=at;static registry=Ka;static version="4.5.1";static getChart=bi;static register(...e){Ka.add(...e),ki()}static unregister(...e){Ka.remove(...e),ki()}constructor(e,t){const a=this.config=new ui(t),i=_i(e),r=bi(i);if(r)throw new Error("Canvas is already in use. Chart with ID '"+r.id+"' must be destroyed before the canvas with ID '"+r.canvas.id+"' can be reused.");const o=a.createResolver(a.chartOptionScopes(),this.getContext());this.platform=new(a.platform||ba(i)),this.platform.updateConfig(a);const s=this.platform.acquireContext(i,o.aspectRatio),l=s&&s.canvas,u=l&&l.height,c=l&&l.width;this.id=n(),this.ctx=s,this.canvas=l,this.width=c,this.height=u,this._options=o,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new Qa,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=de(e=>this.update(e),o.resizeDelay||0),this._dataChanges=[],vi[this.id]=this,s&&l?(_e.listen(this,"complete",mi),_e.listen(this,"progress",gi),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:e,maintainAspectRatio:t},width:n,height:i,_aspectRatio:r}=this;return a(e)?t&&r?r:i?n/i:null:e}get data(){return this.config.data}set data(e){this.config.data=e}get options(){return this._options}set options(e){this.config.options=e}get registry(){return Ka}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():vt(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Ct(this.canvas,this.ctx),this}stop(){return _e.stop(this),this}resize(e,t){_e.running(this)?this._resizeBeforeDraw={width:e,height:t}:this._resize(e,t)}_resize(e,t){const n=this.options,a=this.canvas,i=n.maintainAspectRatio&&this.aspectRatio,r=this.platform.getMaximumSize(a,e,t,i),o=n.devicePixelRatio||this.platform.getDevicePixelRatio(),s=this.width?"resize":"attach";this.width=r.width,this.height=r.height,this._aspectRatio=this.aspectRatio,vt(this,o,!0)&&(this.notifyPlugins("resize",{size:r}),d(n.onResize,[this,r],this),this.attached&&this._doResize(s)&&this.render())}ensureScalesHaveIDs(){h(this.options.scales||{},(e,t)=>{e.id=t})}buildOrUpdateScales(){const e=this.options,t=e.scales,n=this.scales,a=Object.keys(n).reduce((e,t)=>(e[t]=!1,e),{});let i=[];t&&(i=i.concat(Object.keys(t).map(e=>{const n=t[e],a=ti(e,n),i="r"===a,r="x"===a;return{options:n,dposition:i?"chartArea":r?"bottom":"left",dtype:i?"radialLinear":r?"category":"linear"}}))),h(i,t=>{const i=t.options,r=i.id,o=ti(r,i),s=l(i.type,t.dtype);void 0!==i.position&&pi(i.position,o)===pi(t.dposition)||(i.position=t.dposition),a[r]=!0;let u=null;r in n&&n[r].type===s?u=n[r]:(u=new(Ka.getScale(s))({id:r,type:s,ctx:this.ctx,chart:this}),n[u.id]=u),u.init(i,e)}),h(a,(e,t)=>{e||delete n[t]}),h(n,e=>{ta.configure(this,e,e.options),ta.addBox(this,e)})}_updateMetasets(){const e=this._metasets,t=this.data.datasets.length,n=e.length;if(e.sort((e,t)=>e.index-t.index),n>t){for(let e=t;et.length&&delete this._stacks,e.forEach((e,n)=>{0===t.filter(t=>t===e._dataset).length&&this._destroyDatasetMeta(n)})}buildOrUpdateControllers(){const e=[],t=this.data.datasets;let n,a;for(this._removeUnreferencedMetasets(),n=0,a=t.length;n{this.getDatasetMeta(t).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(e){const t=this.config;t.update();const n=this._options=t.createResolver(t.chartOptionScopes(),this.getContext()),a=this._animationsDisabled=!n.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:e,cancelable:!0}))return;const i=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let r=0;for(let e=0,t=this.data.datasets.length;e{e.reset()}),this._updateDatasets(e),this.notifyPlugins("afterUpdate",{mode:e}),this._layers.sort(fi("z","_idx"));const{_active:o,_lastEvent:s}=this;s?this._eventHandler(s,!0):o.length&&this._updateHoverStyles(o,o,!0),this.render()}_updateScales(){h(this.scales,e=>{ta.removeBox(this,e)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const e=this.options,t=new Set(Object.keys(this._listeners)),n=new Set(e.events);T(t,n)&&!!this._responsiveListeners===e.responsive||(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:e}=this,t=this._getUniformDataChanges()||[];for(const{method:n,start:a,count:i}of t)yi(e,a,"_removeElements"===n?-i:i)}_getUniformDataChanges(){const e=this._dataChanges;if(!e||!e.length)return;this._dataChanges=[];const t=this.data.datasets.length,n=t=>new Set(e.filter(e=>e[0]===t).map((e,t)=>t+","+e.splice(1).join(","))),a=n(0);for(let e=1;ee.split(",")).map(e=>({method:e[1],start:+e[2],count:+e[3]}))}_updateLayout(e){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;ta.update(this,this.width,this.height,e);const t=this.chartArea,n=t.width<=0||t.height<=0;this._layers=[],h(this.boxes,e=>{n&&"chartArea"===e.position||(e.configure&&e.configure(),this._layers.push(...e._layers()))},this),this._layers.forEach((e,t)=>{e._idx=t}),this.notifyPlugins("afterLayout")}_updateDatasets(e){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:e,cancelable:!0})){for(let e=0,t=this.data.datasets.length;e=0;--t)this._drawDataset(e[t]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(e){const t=this.ctx,n={meta:e,index:e.index,cancelable:!0},a=In(this,e);!1!==this.notifyPlugins("beforeDatasetDraw",n)&&(a&&At(t,a),e.controller.draw(),a&&Mt(t),n.cancelable=!1,this.notifyPlugins("afterDatasetDraw",n))}isPointInArea(e){return Pt(e,this.chartArea,this._minPadding)}getElementsAtEventForMode(e,t,n,a){const i=Vn.modes[t];return"function"==typeof i?i(this,e,n,a):[]}getDatasetMeta(e){const t=this.data.datasets[e],n=this._metasets;let a=n.filter(e=>e&&e._dataset===t).pop();return a||(a={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:t&&t.order||0,index:e,_dataset:t,_parsed:[],_sorted:!1},n.push(a)),a}getContext(){return this.$context||(this.$context=xn(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(e){const t=this.data.datasets[e];if(!t)return!1;const n=this.getDatasetMeta(e);return"boolean"==typeof n.hidden?!n.hidden:!t.hidden}setDatasetVisibility(e,t){this.getDatasetMeta(e).hidden=!t}toggleDataVisibility(e){this._hiddenIndices[e]=!this._hiddenIndices[e]}getDataVisibility(e){return!this._hiddenIndices[e]}_updateVisibility(e,t,n){const a=n?"show":"hide",i=this.getDatasetMeta(e),r=i.controller._resolveAnimations(void 0,a);S(t)?(i.data[t].hidden=!n,this.update()):(this.setDatasetVisibility(e,n),r.update(i,{visible:n}),this.update(t=>t.datasetIndex===e?a:void 0))}hide(e,t){this._updateVisibility(e,t,!1)}show(e,t){this._updateVisibility(e,t,!0)}_destroyDatasetMeta(e){const t=this._metasets[e];t&&t.controller&&t.controller._destroy(),delete this._metasets[e]}_stop(){let e,t;for(this.stop(),_e.remove(this),e=0,t=this.data.datasets.length;e{t.addEventListener(this,n,a),e[n]=a},a=(e,t,n)=>{e.offsetX=t,e.offsetY=n,this._eventHandler(e)};h(this.options.events,e=>n(e,a))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const e=this._responsiveListeners,t=this.platform,n=(n,a)=>{t.addEventListener(this,n,a),e[n]=a},a=(n,a)=>{e[n]&&(t.removeEventListener(this,n,a),delete e[n])},i=(e,t)=>{this.canvas&&this.resize(e,t)};let r;const o=()=>{a("attach",o),this.attached=!0,this.resize(),n("resize",i),n("detach",r)};r=()=>{this.attached=!1,a("resize",i),this._stop(),this._resize(0,0),n("attach",o)},t.isAttached(this.canvas)?o():r()}unbindEvents(){h(this._listeners,(e,t)=>{this.platform.removeEventListener(this,t,e)}),this._listeners={},h(this._responsiveListeners,(e,t)=>{this.platform.removeEventListener(this,t,e)}),this._responsiveListeners=void 0}updateHoverStyle(e,t,n){const a=n?"set":"remove";let i,r,o,s;for("dataset"===t&&(i=this.getDatasetMeta(e[0].datasetIndex),i.controller["_"+a+"DatasetHoverStyle"]()),o=0,s=e.length;o{const n=this.getDatasetMeta(e);if(!n)throw new Error("No dataset found at index "+e);return{datasetIndex:e,element:n.data[t],index:t}});!p(n,t)&&(this._active=n,this._lastEvent=null,this._updateHoverStyles(n,t))}notifyPlugins(e,t,n){return this._plugins.notify(this,e,t,n)}isPluginEnabled(e){return 1===this._plugins._cache.filter(t=>t.plugin.id===e).length}_updateHoverStyles(e,t,n){const a=this.options.hover,i=(e,t)=>e.filter(e=>!t.some(t=>e.datasetIndex===t.datasetIndex&&e.index===t.index)),r=i(t,e),o=n?e:i(e,t);r.length&&this.updateHoverStyle(r,a.mode,!1),o.length&&a.mode&&this.updateHoverStyle(o,a.mode,!0)}_eventHandler(e,t){const n={event:e,replay:t,cancelable:!0,inChartArea:this.isPointInArea(e)},a=t=>(t.options.events||this.options.events).includes(e.native.type);if(!1===this.notifyPlugins("beforeEvent",n,a))return;const i=this._handleEvent(e,t,n.inChartArea);return n.cancelable=!1,this.notifyPlugins("afterEvent",n,a),(i||n.changed)&&this.render(),this}_handleEvent(e,t,n){const{_active:a=[],options:i}=this,r=t,o=this._getActiveElements(e,a,n,r),s=E(e),l=function(e,t,n,a){return n&&"mouseout"!==e.type?a?t:e:null}(e,this._lastEvent,n,s);n&&(this._lastEvent=null,d(i.onHover,[e,o,this],this),s&&d(i.onClick,[e,o,this],this));const u=!p(o,a);return(u||t)&&(this._active=o,this._updateHoverStyles(o,a,t)),this._lastEvent=l,u}_getActiveElements(e,t,n,a){if("mouseout"===e.type)return[];if(!n)return t;const i=this.options.hover;return this.getElementsAtEventForMode(e,i.mode,i,a)}}function ki(){return h(wi.instances,e=>e._plugins.invalidate())}function xi(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class Si{static override(e){Object.assign(Si.prototype,e)}options;constructor(e){this.options=e||{}}init(){}formats(){return xi()}parse(){return xi()}format(){return xi()}add(){return xi()}diff(){return xi()}startOf(){return xi()}endOf(){return xi()}}var Ci={_date:Si};function Ti(e){const t=e.iScale,n=function(e,t){if(!e._cache.$bar){const n=e.getMatchingVisibleMetas(t);let a=[];for(let t=0,i=n.length;te-t))}return e._cache.$bar}(t,e.type);let a,i,r,o,s=t._length;const l=()=>{32767!==r&&-32768!==r&&(S(o)&&(s=Math.min(s,Math.abs(r-o)||s)),o=r)};for(a=0,i=n.length;aMath.abs(s)&&(l=s,u=o),t[n.axis]=u,t._custom={barStart:l,barEnd:u,start:i,end:r,min:o,max:s}}(e,t,n,a):t[n.axis]=n.parse(e,a),t}function Pi(e,t,n,a){const i=e.iScale,r=e.vScale,o=i.getLabels(),s=i===r,l=[];let u,c,d,h;for(u=n,c=n+a;ue.x,n="left",a="right"):(t=e.base"spacing"!==e,_indexable:e=>"spacing"!==e&&!e.startsWith("borderDash")&&!e.startsWith("hoverBorderDash")};static overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(e){const t=e.data,{labels:{pointStyle:n,textAlign:a,color:i,useBorderRadius:r,borderRadius:o}}=e.legend.options;return t.labels.length&&t.datasets.length?t.labels.map((t,s)=>{const l=e.getDatasetMeta(0).controller.getStyle(s);return{text:t,fillStyle:l.backgroundColor,fontColor:i,hidden:!e.getDataVisibility(s),lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:l.borderWidth,strokeStyle:l.borderColor,textAlign:a,pointStyle:n,borderRadius:r&&(o||l.borderRadius),index:s}}):[]}},onClick(e,t,n){n.chart.toggleDataVisibility(t.index),n.chart.update()}}}};constructor(e,t){super(e,t),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(e,t){const n=this.getDataset().data,a=this._cachedMeta;if(!1===this._parsing)a._parsed=n;else{let i,o,s=e=>+n[e];if(r(n[e])){const{key:e="value"}=this._parsing;s=t=>+k(n[t],e)}for(i=e,o=e+t;iZ(e,s,l,!0)?1:Math.max(t,t*n,a,a*n),f=(e,t,a)=>Z(e,s,l,!0)?-1:Math.min(t,t*n,a,a*n),m=p(0,u,d),g=p(z,c,h),_=f(P,u,d),v=f(P+z,c,h);a=(m-_)/2,i=(g-v)/2,r=-(m+_)/2,o=-(g+v)/2}return{ratioX:a,ratioY:i,offsetX:r,offsetY:o}}(h,d,s),_=(n.width-r)/p,v=(n.height-r)/f,b=Math.max(Math.min(_,v)/2,0),y=c(this.options.radius,b),w=(y-Math.max(y*s,0))/this._getVisibleDatasetWeightTotal();this.offsetX=m*y,this.offsetY=g*y,a.total=this.calculateTotal(),this.outerRadius=y-w*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-w*l,0),this.updateElements(i,0,i.length,e)}_circumference(e,t){const n=this.options,a=this._cachedMeta,i=this._getCircumference();return t&&n.animation.animateRotate||!this.chart.getDataVisibility(e)||null===a._parsed[e]||a.data[e].hidden?0:this.calculateCircumference(a._parsed[e]*i/A)}updateElements(e,t,n,a){const i="reset"===a,r=this.chart,o=r.chartArea,s=r.options.animation,l=(o.left+o.right)/2,u=(o.top+o.bottom)/2,c=i&&s.animateScale,d=c?0:this.innerRadius,h=c?0:this.outerRadius,{sharedOptions:p,includeOptions:f}=this._getSharedOptions(t,a);let m,g=this._getRotation();for(m=0;m0&&!isNaN(e)?A*(Math.abs(e)/t):0}getLabelAndValue(e){const t=this._cachedMeta,n=this.chart,a=n.data.labels||[],i=et(t._parsed[e],n.options.locale);return{label:a[e]||"",value:i}}getMaxBorderWidth(e){let t=0;const n=this.chart;let a,i,r,o,s;if(!e)for(a=0,i=n.data.datasets.length;a{const r=e.getDatasetMeta(0).controller.getStyle(i);return{text:t,fillStyle:r.backgroundColor,strokeStyle:r.borderColor,fontColor:a,lineWidth:r.borderWidth,pointStyle:n,hidden:!e.getDataVisibility(i),index:i}})}return[]}},onClick(e,t,n){n.chart.toggleDataVisibility(t.index),n.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};constructor(e,t){super(e,t),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(e){const t=this._cachedMeta,n=this.chart,a=n.data.labels||[],i=et(t._parsed[e].r,n.options.locale);return{label:a[e]||"",value:i}}parseObjectData(e,t,n,a){return Qt.bind(this)(e,t,n,a)}update(e){const t=this._cachedMeta.data;this._updateRadius(),this.updateElements(t,0,t.length,e)}getMinMax(){const e=this._cachedMeta,t={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return e.data.forEach((e,n)=>{const a=this.getParsed(n).r;!isNaN(a)&&this.chart.getDataVisibility(n)&&(at.max&&(t.max=a))}),t}_updateRadius(){const e=this.chart,t=e.chartArea,n=e.options,a=Math.min(t.right-t.left,t.bottom-t.top),i=Math.max(a/2,0),r=(i-Math.max(n.cutoutPercentage?i/100*n.cutoutPercentage:1,0))/e.getVisibleDatasetCount();this.outerRadius=i-r*this.index,this.innerRadius=this.outerRadius-r}updateElements(e,t,n,a){const i="reset"===a,r=this.chart,o=r.options.animation,s=this._cachedMeta.rScale,l=s.xCenter,u=s.yCenter,c=s.getIndexAngle(0)-.5*P;let d,h=c;const p=360/this.countVisibleElements();for(d=0;d{!isNaN(this.getParsed(n).r)&&this.chart.getDataVisibility(n)&&t++}),t}_computeAngle(e,t,n){return this.chart.getDataVisibility(e)?U(this.resolveDataElementOptions(e,t).angle||n):0}}var Ii=Object.freeze({__proto__:null,BarController:class extends Ia{static id="bar";static defaults={datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}};static overrides={scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}};parsePrimitiveData(e,t,n,a){return Pi(e,t,n,a)}parseArrayData(e,t,n,a){return Pi(e,t,n,a)}parseObjectData(e,t,n,a){const{iScale:i,vScale:r}=e,{xAxisKey:o="x",yAxisKey:s="y"}=this._parsing,l="x"===i.axis?o:s,u="x"===r.axis?o:s,c=[];let d,h,p,f;for(d=n,h=n+a;de.controller.options.grouped),r=n.options.stacked,o=[],s=this._cachedMeta.controller.getParsed(t),l=s&&s[n.axis],u=e=>{const t=e._parsed.find(e=>e[n.axis]===l),i=t&&t[e.vScale.axis];if(a(i)||isNaN(i))return!0};for(const n of i)if((void 0===t||!u(n))&&((!1===r||-1===o.indexOf(n.stack)||void 0===r&&void 0===n.stack)&&o.push(n.stack),n.index===e))break;return o.length||o.push(void 0),o}_getStackCount(e){return this._getStacks(void 0,e).length}_getAxisCount(){return this._getAxis().length}getFirstScaleIdForIndexAxis(){const e=this.chart.scales,t=this.chart.options.indexAxis;return Object.keys(e).filter(n=>e[n].axis===t).shift()}_getAxis(){const e={},t=this.getFirstScaleIdForIndexAxis();for(const n of this.chart.data.datasets)e[l("x"===this.chart.options.indexAxis?n.xAxisID:n.yAxisID,t)]=!0;return Object.keys(e)}_getStackIndex(e,t,n){const a=this._getStacks(e,n),i=void 0!==t?a.indexOf(t):-1;return-1===i?a.length-1:i}_getRuler(){const e=this.options,t=this._cachedMeta,n=t.iScale,a=[];let i,r;for(i=0,r=t.data.length;i=n?1:-1)}(h,t,s)*o,p===s&&(_-=h/2);const e=t.getPixelForDecimal(0),a=t.getPixelForDecimal(1),r=Math.min(e,a),u=Math.max(e,a);_=Math.max(Math.min(_,u),r),d=_+h,n&&!c&&(l._stacks[t.axis]._visualValues[i]=t.getValueForPixel(d)-t.getValueForPixel(_))}if(_===t.getPixelForValue(s)){const e=q(h)*t.getLineWidthForValue(s)/2;_+=e,h-=e}return{size:h,base:_,head:d,center:d+h/2}}_calculateBarIndexPixels(e,t){const n=t.scale,i=this.options,r=i.skipNull,o=l(i.maxBarThickness,1/0);let s,u;const c=this._getAxisCount();if(t.grouped){const n=r?this._getStackCount(e):t.stackCount,d="flex"===i.barThickness?function(e,t,n,a){const i=t.pixels,r=i[e];let o=e>0?i[e-1]:null,s=e=0;--n)t=Math.max(t,e[n].size(this.resolveDataElementOptions(n))/2);return t>0&&t}getLabelAndValue(e){const t=this._cachedMeta,n=this.chart.data.labels||[],{xScale:a,yScale:i}=t,r=this.getParsed(e),o=a.getLabelForValue(r.x),s=i.getLabelForValue(r.y),l=r._custom;return{label:n[e]||"",value:"("+o+", "+s+(l?", "+l:"")+")"}}update(e){const t=this._cachedMeta.data;this.updateElements(t,0,t.length,e)}updateElements(e,t,n,a){const i="reset"===a,{iScale:r,vScale:o}=this._cachedMeta,{sharedOptions:s,includeOptions:l}=this._getSharedOptions(t,a),u=r.axis,c=o.axis;for(let d=t;d0&&this.getParsed(t-1);for(let n=0;n=v){b.skip=!0;continue}const w=this.getParsed(n),k=a(w[p]),x=b[h]=o.getPixelForValue(w[h],n),S=b[p]=r||k?s.getBasePixel():s.getPixelForValue(l?this.applyStack(s,w,l):w[p],n);b.skip=isNaN(x)||isNaN(S)||k,b.stop=n>0&&Math.abs(w[h]-y[h])>g,m&&(b.parsed=w,b.raw=u.data[n]),d&&(b.options=c||this.resolveDataElementOptions(n,f.active?"active":i)),_||this.updateElement(f,n,b,i),y=w}}getMaxOverflow(){const e=this._cachedMeta,t=e.dataset,n=t.options&&t.options.borderWidth||0,a=e.data||[];if(!a.length)return n;const i=a[0].size(this.resolveDataElementOptions(0)),r=a[a.length-1].size(this.resolveDataElementOptions(a.length-1));return Math.max(n,i,r)/2}draw(){const e=this._cachedMeta;e.dataset.updateControlPoints(this.chart.chartArea,e.iScale.axis),super.draw()}},PieController:class extends Ni{static id="pie";static defaults={cutout:0,rotation:0,circumference:360,radius:"100%"}},PolarAreaController:Oi,RadarController:class extends Ia{static id="radar";static defaults={datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}};static overrides={aspectRatio:1,scales:{r:{type:"radialLinear"}}};getLabelAndValue(e){const t=this._cachedMeta.vScale,n=this.getParsed(e);return{label:t.getLabels()[e],value:""+t.getLabelForValue(n[t.axis])}}parseObjectData(e,t,n,a){return Qt.bind(this)(e,t,n,a)}update(e){const t=this._cachedMeta,n=t.dataset,a=t.data||[],i=t.iScale.getLabels();if(n.points=a,"resize"!==e){const t=this.resolveDatasetElementOptions(e);this.options.showLine||(t.borderWidth=0);const r={_loop:!0,_fullLoop:i.length===a.length,options:t};this.updateElement(n,void 0,r,e)}this.updateElements(a,0,a.length,e)}updateElements(e,t,n,a){const i=this._cachedMeta.rScale,r="reset"===a;for(let o=t;o0&&this.getParsed(t-1);for(let c=t;c0&&Math.abs(n[p]-b[p])>_,g&&(m.parsed=n,m.raw=u.data[c]),h&&(m.options=d||this.resolveDataElementOptions(c,t.active?"active":i)),v||this.updateElement(t,c,m,i),b=n}this.updateSharedOptions(d,i,c)}getMaxOverflow(){const e=this._cachedMeta,t=e.data||[];if(!this.options.showLine){let e=0;for(let n=t.length-1;n>=0;--n)e=Math.max(e,t[n].size(this.resolveDataElementOptions(n))/2);return e>0&&e}const n=e.dataset,a=n.options&&n.options.borderWidth||0;if(!t.length)return a;const i=t[0].size(this.resolveDataElementOptions(0)),r=t[t.length-1].size(this.resolveDataElementOptions(t.length-1));return Math.max(a,i,r)/2}}});function qi(e,t,n,a){return{x:n+e*Math.cos(t),y:a+e*Math.sin(t)}}function Di(e,t,n,a,i,r){const{x:o,y:s,startAngle:l,pixelMargin:u,innerRadius:c}=t,d=Math.max(t.outerRadius+a+n-u,0),h=c>0?c+a+n+u:0;let p=0;const f=i-l;if(a){const e=((c>0?c-a:0)+(d>0?d-a:0))/2;p=(f-(0!==e?f*e/(e+a):f))/2}const m=(f-Math.max(.001,f*d-n/P)/d)/2,g=l+m+p,_=i-m-p,{outerStart:v,outerEnd:b,innerStart:y,innerEnd:w}=function(e,t,n,a){const i=gn(e.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]),r=(n-t)/2,o=Math.min(r,a*t/2),s=e=>{const t=(n-Math.min(r,e))*a/2;return J(e,0,Math.min(r,t))};return{outerStart:s(i.outerStart),outerEnd:s(i.outerEnd),innerStart:J(i.innerStart,0,o),innerEnd:J(i.innerEnd,0,o)}}(t,h,d,_-g),k=d-v,x=d-b,S=g+v/k,C=_-b/x,T=h+y,E=h+w,A=g+y/T,M=_-w/E;if(e.beginPath(),r){const t=(S+C)/2;if(e.arc(o,s,d,S,t),e.arc(o,s,d,t,C),b>0){const t=qi(x,C,o,s);e.arc(t.x,t.y,b,C,_+z)}const n=qi(E,_,o,s);if(e.lineTo(n.x,n.y),w>0){const t=qi(E,M,o,s);e.arc(t.x,t.y,w,_+z,M+Math.PI)}const a=(_-w/h+(g+y/h))/2;if(e.arc(o,s,h,_-w/h,a,!0),e.arc(o,s,h,a,g+y/h,!0),y>0){const t=qi(T,A,o,s);e.arc(t.x,t.y,y,A+Math.PI,g-z)}const i=qi(k,g,o,s);if(e.lineTo(i.x,i.y),v>0){const t=qi(k,S,o,s);e.arc(t.x,t.y,v,g-z,S)}}else{e.moveTo(o,s);const t=Math.cos(S)*d+o,n=Math.sin(S)*d+s;e.lineTo(t,n);const a=Math.cos(C)*d+o,i=Math.sin(C)*d+s;e.lineTo(a,i)}e.closePath()}function ji(e,t,n=t){e.lineCap=l(n.borderCapStyle,t.borderCapStyle),e.setLineDash(l(n.borderDash,t.borderDash)),e.lineDashOffset=l(n.borderDashOffset,t.borderDashOffset),e.lineJoin=l(n.borderJoinStyle,t.borderJoinStyle),e.lineWidth=l(n.borderWidth,t.borderWidth),e.strokeStyle=l(n.borderColor,t.borderColor)}function Bi(e,t,n){e.lineTo(n.x,n.y)}function Fi(e,t,n={}){const a=e.length,{start:i=0,end:r=a-1}=n,{start:o,end:s}=t,l=Math.max(i,o),u=Math.min(r,s),c=is&&r>s;return{count:a,start:l,loop:t.loop,ilen:u(o+(u?s-e:e))%r,b=()=>{p!==f&&(e.lineTo(g,f),e.lineTo(g,p),e.lineTo(g,m))};for(l&&(d=i[v(0)],e.moveTo(d.x,d.y)),c=0;c<=s;++c){if(d=i[v(c)],d.skip)continue;const t=d.x,n=d.y,a=0|t;a===h?(nf&&(f=n),g=(_*g+t)/++_):(b(),e.lineTo(t,n),h=a,_=0,p=f=n),m=n}b()}function Ui(e){const t=e.options,n=t.borderDash&&t.borderDash.length;return e._decimated||e._loop||t.tension||"monotone"===t.cubicInterpolationMode||t.stepped||n?$i:Vi}const Hi="function"==typeof Path2D;class Wi extends qa{static id="line";static defaults={borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};static descriptors={_scriptable:!0,_indexable:e=>"borderDash"!==e&&"fill"!==e};constructor(e){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,e&&Object.assign(this,e)}updateControlPoints(e,t){const n=this.options;if((n.tension||"monotone"===n.cubicInterpolationMode)&&!n.stepped&&!this._pointsUpdated){const a=n.spanGaps?this._loop:this._fullLoop;an(this._points,n,e,a,t),this._pointsUpdated=!0}}set points(e){this._points=e,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=Ln(this,this.options.segment))}first(){const e=this.segments,t=this.points;return e.length&&t[e[0].start]}last(){const e=this.segments,t=this.points,n=e.length;return n&&t[e[n-1].end]}interpolate(e,t){const n=this.options,a=e[t],i=this.points,r=Mn(this,{property:t,start:a,end:a});if(!r.length)return;const o=[],s=function(e){return e.stepped?cn:e.tension||"monotone"===e.cubicInterpolationMode?dn:un}(n);let l,u;for(l=0,u=r.length;l"borderDash"!==e};circumference;endAngle;fullCircles;innerRadius;outerRadius;pixelMargin;startAngle;constructor(e){super(),this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,e&&Object.assign(this,e)}inRange(e,t,n){const a=this.getProps(["x","y"],n),{angle:i,distance:r}=G(a,{x:e,y:t}),{startAngle:o,endAngle:s,innerRadius:u,outerRadius:c,circumference:d}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],n),h=(this.options.spacing+this.options.borderWidth)/2,p=l(d,s-o),f=Z(i,o,s)&&o!==s,m=p>=A||f,g=ee(r,u+h,c+h);return m&&g}getCenterPoint(e){const{x:t,y:n,startAngle:a,endAngle:i,innerRadius:r,outerRadius:o}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],e),{offset:s,spacing:l}=this.options,u=(a+i)/2,c=(r+o+l+s)/2;return{x:t+Math.cos(u)*c,y:n+Math.sin(u)*c}}tooltipPosition(e){return this.getCenterPoint(e)}draw(e){const{options:t,circumference:n}=this,a=(t.offset||0)/4,i=(t.spacing||0)/2,r=t.circular;if(this.pixelMargin="inner"===t.borderAlign?.33:0,this.fullCircles=n>A?Math.floor(n/A):0,0===n||this.innerRadius<0||this.outerRadius<0)return;e.save();const o=(this.startAngle+this.endAngle)/2;e.translate(Math.cos(o)*a,Math.sin(o)*a);const s=a*(1-Math.sin(Math.min(P,n||0)));e.fillStyle=t.backgroundColor,e.strokeStyle=t.borderColor,function(e,t,n,a,i){const{fullCircles:r,startAngle:o,circumference:s}=t;let l=t.endAngle;if(r){Di(e,t,n,a,l,i);for(let t=0;ti?(u=i/l,e.arc(r,o,l,n+u,a-u,!0)):e.arc(r,o,i,n+z,a-z),e.closePath(),e.clip()}(e,t,m),l.selfJoin&&m-o>=P&&0===p&&"miter"!==c&&function(e,t,n){const{startAngle:a,x:i,y:r,outerRadius:o,innerRadius:s,options:l}=t,{borderWidth:u,borderJoinStyle:c}=l,d=Math.min(u/o,Q(a-n));if(e.beginPath(),e.arc(i,r,o-u/2,a+d/2,n-d/2),s>0){const t=Math.min(u/s,Q(a-n));e.arc(i,r,s+u/2,n-t/2,a+t/2,!0)}else{const t=Math.min(u/2,o*Q(a-n));if("round"===c)e.arc(i,r,t,n-P/2,a+P/2,!0);else if("bevel"===c){const o=2*t*t,s=-o*Math.cos(n+P/2)+i,l=-o*Math.sin(n+P/2)+r,u=o*Math.cos(a+P/2)+i,c=o*Math.sin(a+P/2)+r;e.lineTo(s,l),e.lineTo(u,c)}}e.closePath(),e.moveTo(0,0),e.rect(0,0,e.canvas.width,e.canvas.height),e.clip("evenodd")}(e,t,m),r||(Di(e,t,n,a,m,i),e.stroke())}(e,this,s,i,r),e.restore()}},BarElement:class extends qa{static id="bar";static defaults={borderSkipped:"start",borderWidth:0,borderRadius:0,inflateAmount:"auto",pointStyle:void 0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};constructor(e){super(),this.options=void 0,this.horizontal=void 0,this.base=void 0,this.width=void 0,this.height=void 0,this.inflateAmount=void 0,e&&Object.assign(this,e)}draw(e){const{inflateAmount:t,options:{borderColor:n,backgroundColor:a}}=this,{inner:i,outer:r}=Qi(this),o=(s=r.radius).topLeft||s.topRight||s.bottomLeft||s.bottomRight?It:Ji;var s;e.save(),r.w===i.w&&r.h===i.h||(e.beginPath(),o(e,Xi(r,t,i)),e.clip(),o(e,Xi(i,-t,r)),e.fillStyle=n,e.fill("evenodd")),e.beginPath(),o(e,Xi(i,t)),e.fillStyle=a,e.fill(),e.restore()}inRange(e,t,n){return Zi(this,e,t,n)}inXRange(e,t){return Zi(this,e,null,t)}inYRange(e,t){return Zi(this,null,e,t)}getCenterPoint(e){const{x:t,y:n,base:a,horizontal:i}=this.getProps(["x","y","base","horizontal"],e);return{x:i?(t+a)/2:t,y:i?n:(n+a)/2}}getRange(e){return"x"===e?this.width/2:this.height/2}},LineElement:Wi,PointElement:class extends qa{static id="point";parsed;skip;stop;static defaults={borderWidth:1,hitRadius:1,hoverBorderWidth:1,hoverRadius:4,pointStyle:"circle",radius:3,rotation:0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};constructor(e){super(),this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,e&&Object.assign(this,e)}inRange(e,t,n){const a=this.options,{x:i,y:r}=this.getProps(["x","y"],n);return Math.pow(e-i,2)+Math.pow(t-r,2)=0&&ea=t?a:e,o=e=>i=n?i:e;if(e){const e=q(a),t=q(i);e<0&&t<0?o(0):e>0&&t>0&&r(0)}if(a===i){let t=0===i?1:Math.abs(.05*i);o(i+t),e||r(a-t)}this.min=a,this.max=i}getTickLimit(){const e=this.options.ticks;let t,{maxTicksLimit:n,stepSize:a}=e;return a?(t=Math.ceil(this.max/a)-Math.floor(this.min/a)+1,t>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${a} would result generating up to ${t} ticks. Limiting to 1000.`),t=1e3)):(t=this.computeTickLimit(),n=n||11),n&&(t=Math.min(n,t)),t}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const e=this.options,t=e.ticks;let n=this.getTickLimit();n=Math.max(2,n);const i=function(e,t){const n=[],{bounds:i,step:r,min:o,max:s,precision:l,count:u,maxTicks:c,maxDigits:d,includeBounds:h}=e,p=r||1,f=c-1,{min:m,max:g}=t,_=!a(o),v=!a(s),b=!a(u),y=(g-m)/(d+1);let w,k,x,S,C=j((g-m)/f/p)*p;if(C<1e-14&&!_&&!v)return[{value:m},{value:g}];S=Math.ceil(g/C)-Math.floor(m/C),S>f&&(C=j(S*C/f/p)*p),a(l)||(w=Math.pow(10,l),C=Math.ceil(C*w)/w),"ticks"===i?(k=Math.floor(m/C)*C,x=Math.ceil(g/C)*C):(k=m,x=g),_&&v&&r&&$((s-o)/r,C/1e3)?(S=Math.round(Math.min((s-o)/C,c)),C=(s-o)/S,k=o,x=s):b?(k=_?o:k,x=v?s:x,S=u-1,C=(x-k)/S):(S=(x-k)/C,S=D(S,Math.round(S),C/1e3)?Math.round(S):Math.ceil(S));const T=Math.max(W(C),W(k));w=Math.pow(10,a(l)?T:l),k=Math.round(k*w)/w,x=Math.round(x*w)/w;let E=0;for(_&&(h&&k!==o?(n.push({value:o}),ks)break;n.push({value:e})}return v&&h&&x!==s?n.length&&D(n[n.length-1].value,s,nr(s,y,e))?n[n.length-1].value=s:n.push({value:s}):v&&x!==s||n.push({value:x}),n}({maxTicks:n,bounds:e.bounds,min:e.min,max:e.max,precision:t.precision,step:t.stepSize,count:t.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:t.minRotation||0,includeBounds:!1!==t.includeBounds},this._range||this);return"ticks"===e.bounds&&V(i,this,"value"),e.reverse?(i.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),i}configure(){const e=this.ticks;let t=this.min,n=this.max;if(super.configure(),this.options.offset&&e.length){const a=(n-t)/Math.max(e.length-1,1)/2;t-=a,n+=a}this._startValue=t,this._endValue=n,this._valueRange=n-t}getLabelForValue(e){return et(e,this.chart.options.locale,this.options.ticks.format)}}class ir extends ar{static id="linear";static defaults={ticks:{callback:nt.formatters.numeric}};determineDataLimits(){const{min:e,max:t}=this.getMinMax(!0);this.min=o(e)?e:0,this.max=o(t)?t:1,this.handleTickRangeOptions()}computeTickLimit(){const e=this.isHorizontal(),t=e?this.width:this.height,n=U(this.options.ticks.minRotation),a=(e?Math.sin(n):Math.cos(n))||.001,i=this._resolveTickFontOptions(0);return Math.ceil(t/Math.min(40,i.lineHeight/a))}getPixelForValue(e){return null===e?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getValueForPixel(e){return this._startValue+this.getDecimalForPixel(e)*this._valueRange}}const rr=e=>Math.floor(I(e)),or=(e,t)=>Math.pow(10,rr(e)+t);function sr(e){return 1===e/Math.pow(10,rr(e))}function lr(e,t,n){const a=Math.pow(10,n),i=Math.floor(e/a);return Math.ceil(t/a)-i}class ur extends Ga{static id="logarithmic";static defaults={ticks:{callback:nt.formatters.logarithmic,major:{enabled:!0}}};constructor(e){super(e),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(e,t){const n=ar.prototype.parse.apply(this,[e,t]);if(0!==n)return o(n)&&n>0?n:null;this._zero=!0}determineDataLimits(){const{min:e,max:t}=this.getMinMax(!0);this.min=o(e)?Math.max(0,e):null,this.max=o(t)?Math.max(0,t):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!o(this._userMin)&&(this.min=e===or(this.min,0)?or(this.min,-1):or(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:e,maxDefined:t}=this.getUserBounds();let n=this.min,a=this.max;const i=t=>n=e?n:t,r=e=>a=t?a:e;n===a&&(n<=0?(i(1),r(10)):(i(or(n,-1)),r(or(a,1)))),n<=0&&i(or(a,-1)),a<=0&&r(or(n,1)),this.min=n,this.max=a}buildTicks(){const e=this.options,t=function(e,{min:t,max:n}){t=s(e.min,t);const a=[],i=rr(t);let r=function(e,t){let n=rr(t-e);for(;lr(e,t,n)>10;)n++;for(;lr(e,t,n)<10;)n--;return Math.min(n,rr(e))}(t,n),o=r<0?Math.pow(10,Math.abs(r)):1;const l=Math.pow(10,r),u=i>r?Math.pow(10,i):0,c=Math.round((t-u)*o)/o,d=Math.floor((t-u)/l/10)*l*10;let h=Math.floor((c-d)/Math.pow(10,r)),p=s(e.min,Math.round((u+d+h*Math.pow(10,r))*o)/o);for(;p=10?h=h<15?15:20:h++,h>=20&&(r++,h=2,o=r>=0?1:o),p=Math.round((u+d+h*Math.pow(10,r))*o)/o;const f=s(e.max,p);return a.push({value:f,major:sr(f),significand:h}),a}({min:this._userMin,max:this._userMax},this);return"ticks"===e.bounds&&V(t,this,"value"),e.reverse?(t.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),t}getLabelForValue(e){return void 0===e?"0":et(e,this.chart.options.locale,this.options.ticks.format)}configure(){const e=this.min;super.configure(),this._startValue=I(e),this._valueRange=I(this.max)-I(e)}getPixelForValue(e){return void 0!==e&&0!==e||(e=this.min),null===e||isNaN(e)?NaN:this.getPixelForDecimal(e===this.min?0:(I(e)-this._startValue)/this._valueRange)}getValueForPixel(e){const t=this.getDecimalForPixel(e);return Math.pow(10,this._startValue+t*this._valueRange)}}function cr(e){const t=e.ticks;if(t.display&&e.display){const e=bn(t.backdropPadding);return l(t.font&&t.font.size,st.font.size)+e.height}return 0}function dr(e,t,n,a,i){return e===a||e===i?{start:t-n/2,end:t+n/2}:ei?{start:t-n,end:t}:{start:t,end:t+n}}function hr(e,t,n,a,i){const r=Math.abs(Math.sin(n)),o=Math.abs(Math.cos(n));let s=0,l=0;a.startt.r&&(s=(a.end-t.r)/r,e.r=Math.max(e.r,t.r+s)),i.startt.b&&(l=(i.end-t.b)/o,e.b=Math.max(e.b,t.b+l))}function pr(e,t,n){const a=e.drawingArea,{extra:i,additionalAngle:r,padding:o,size:s}=n,l=e.getPointPosition(t,a+i+o,r),u=Math.round(H(Q(l.angle+z))),c=function(e,t,n){return 90===n||270===n?e-=t/2:(n>270||n<90)&&(e-=t),e}(l.y,s.h,u),d=function(e){return 0===e||180===e?"center":e<180?"left":"right"}(u),h=function(e,t,n){return"right"===n?e-=t:"center"===n&&(e-=t/2),e}(l.x,s.w,d);return{visible:!0,x:l.x,y:c,textAlign:d,left:h,top:c,right:h+s.w,bottom:c+s.h}}function fr(e,t){if(!t)return!0;const{left:n,top:a,right:i,bottom:r}=e;return!(Pt({x:n,y:a},t)||Pt({x:n,y:r},t)||Pt({x:i,y:a},t)||Pt({x:i,y:r},t))}function mr(e,t,n){const{left:i,top:r,right:o,bottom:s}=n,{backdropColor:l}=t;if(!a(l)){const n=vn(t.borderRadius),a=bn(t.backdropPadding);e.fillStyle=l;const u=i-a.left,c=r-a.top,d=o-i+a.width,h=s-r+a.height;Object.values(n).some(e=>0!==e)?(e.beginPath(),It(e,{x:u,y:c,w:d,h:h,radius:n}),e.fill()):e.fillRect(u,c,d,h)}}function gr(e,t,n,a){const{ctx:i}=e;if(n)i.arc(e.xCenter,e.yCenter,t,0,A);else{let n=e.getPointPosition(0,t);i.moveTo(n.x,n.y);for(let r=1;re,padding:5,centerPointLabels:!1}};static defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"};static descriptors={angleLines:{_fallback:"grid"}};constructor(e){super(e),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const e=this._padding=bn(cr(this.options)/2),t=this.width=this.maxWidth-e.width,n=this.height=this.maxHeight-e.height;this.xCenter=Math.floor(this.left+t/2+e.left),this.yCenter=Math.floor(this.top+n/2+e.top),this.drawingArea=Math.floor(Math.min(t,n)/2)}determineDataLimits(){const{min:e,max:t}=this.getMinMax(!1);this.min=o(e)&&!isNaN(e)?e:0,this.max=o(t)&&!isNaN(t)?t:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/cr(this.options))}generateTickLabels(e){ar.prototype.generateTickLabels.call(this,e),this._pointLabels=this.getLabels().map((e,t)=>{const n=d(this.options.pointLabels.callback,[e,t],this);return n||0===n?n:""}).filter((e,t)=>this.chart.getDataVisibility(t))}fit(){const e=this.options;e.display&&e.pointLabels.display?function(e){const t={l:e.left+e._padding.left,r:e.right-e._padding.right,t:e.top+e._padding.top,b:e.bottom-e._padding.bottom},n=Object.assign({},t),a=[],r=[],o=e._pointLabels.length,s=e.options.pointLabels,l=s.centerPointLabels?P/o:0;for(let h=0;h=0&&e=0;i--){const t=e._pointLabelItems[i];if(!t.visible)continue;const r=a.setContext(e.getPointLabelContext(i));mr(n,r,t);const o=yn(r.font),{x:s,y:l,textAlign:u}=t;Ot(n,e._pointLabels[i],s,l+o.lineHeight/2,o,{color:r.color,textAlign:u,textBaseline:"middle"})}}(this,r),a.display&&this.ticks.forEach((e,t)=>{if(0!==t||0===t&&this.min<0){s=this.getDistanceFromCenterForValue(e.value);const n=this.getContext(t),o=a.setContext(n),l=i.setContext(n);!function(e,t,n,a,i){const r=e.ctx,o=t.circular,{color:s,lineWidth:l}=t;!o&&!a||!s||!l||n<0||(r.save(),r.strokeStyle=s,r.lineWidth=l,r.setLineDash(i.dash||[]),r.lineDashOffset=i.dashOffset,r.beginPath(),gr(e,n,o,a),r.closePath(),r.stroke(),r.restore())}(this,o,s,r,l)}}),n.display){for(e.save(),o=r-1;o>=0;o--){const a=n.setContext(this.getPointLabelContext(o)),{color:i,lineWidth:r}=a;r&&i&&(e.lineWidth=r,e.strokeStyle=i,e.setLineDash(a.borderDash),e.lineDashOffset=a.borderDashOffset,s=this.getDistanceFromCenterForValue(t.reverse?this.min:this.max),l=this.getPointPosition(o,s),e.beginPath(),e.moveTo(this.xCenter,this.yCenter),e.lineTo(l.x,l.y),e.stroke())}e.restore()}}drawBorder(){}drawLabels(){const e=this.ctx,t=this.options,n=t.ticks;if(!n.display)return;const a=this.getIndexAngle(0);let i,r;e.save(),e.translate(this.xCenter,this.yCenter),e.rotate(a),e.textAlign="center",e.textBaseline="middle",this.ticks.forEach((a,o)=>{if(0===o&&this.min>=0&&!t.reverse)return;const s=n.setContext(this.getContext(o)),l=yn(s.font);if(i=this.getDistanceFromCenterForValue(this.ticks[o].value),s.showLabelBackdrop){e.font=l.string,r=e.measureText(a.label).width,e.fillStyle=s.backdropColor;const t=bn(s.backdropPadding);e.fillRect(-r/2-t.left,-i-l.size/2-t.top,r+t.width,l.size+t.height)}Ot(e,a.label,0,-i,l,{color:s.color,strokeColor:s.textStrokeColor,strokeWidth:s.textStrokeWidth})}),e.restore()}drawTitle(){}}const vr={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},br=Object.keys(vr);function yr(e,t){return e-t}function wr(e,t){if(a(t))return null;const n=e._adapter,{parser:i,round:r,isoWeekday:s}=e._parseOpts;let l=t;return"function"==typeof i&&(l=i(l)),o(l)||(l="string"==typeof i?n.parse(l,i):n.parse(l)),null===l?null:(r&&(l="week"!==r||!F(s)&&!0!==s?n.startOf(l,r):n.startOf(l,"isoWeek",s)),+l)}function kr(e,t,n,a){const i=br.length;for(let r=br.indexOf(e);r=t?n[a]:n[i]]=!0}}else e[t]=!0}function Sr(e,t,n){const a=[],i={},r=t.length;let o,s;for(o=0;o=0&&(t[l].major=!0);return t}(e,a,i,n):a}class Cr extends Ga{static id="time";static defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}};constructor(e){super(e),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(e,t={}){const n=e.time||(e.time={}),a=this._adapter=new Ci._date(e.adapters.date);a.init(t),v(n.displayFormats,a.formats()),this._parseOpts={parser:n.parser,round:n.round,isoWeekday:n.isoWeekday},super.init(e),this._normalized=t.normalized}parse(e,t){return void 0===e?null:wr(this,e)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const e=this.options,t=this._adapter,n=e.time.unit||"day";let{min:a,max:i,minDefined:r,maxDefined:s}=this.getUserBounds();function l(e){r||isNaN(e.min)||(a=Math.min(a,e.min)),s||isNaN(e.max)||(i=Math.max(i,e.max))}r&&s||(l(this._getLabelBounds()),"ticks"===e.bounds&&"labels"===e.ticks.source||l(this.getMinMax(!1))),a=o(a)&&!isNaN(a)?a:+t.startOf(Date.now(),n),i=o(i)&&!isNaN(i)?i:+t.endOf(Date.now(),n)+1,this.min=Math.min(a,i-1),this.max=Math.max(a+1,i)}_getLabelBounds(){const e=this.getLabelTimestamps();let t=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;return e.length&&(t=e[0],n=e[e.length-1]),{min:t,max:n}}buildTicks(){const e=this.options,t=e.time,n=e.ticks,a="labels"===n.source?this.getLabelTimestamps():this._generate();"ticks"===e.bounds&&a.length&&(this.min=this._userMin||a[0],this.max=this._userMax||a[a.length-1]);const i=this.min,r=ie(a,i,this.max);return this._unit=t.unit||(n.autoSkip?kr(t.minUnit,this.min,this.max,this._getLabelCapacity(i)):function(e,t,n,a,i){for(let r=br.length-1;r>=br.indexOf(n);r--){const n=br[r];if(vr[n].common&&e._adapter.diff(i,a,n)>=t-1)return n}return br[n?br.indexOf(n):0]}(this,r.length,t.minUnit,this.min,this.max)),this._majorUnit=n.major.enabled&&"year"!==this._unit?function(e){for(let t=br.indexOf(e)+1,n=br.length;t+e.value))}initOffsets(e=[]){let t,n,a=0,i=0;this.options.offset&&e.length&&(t=this.getDecimalForValue(e[0]),a=1===e.length?1-t:(this.getDecimalForValue(e[1])-t)/2,n=this.getDecimalForValue(e[e.length-1]),i=1===e.length?n:(n-this.getDecimalForValue(e[e.length-2]))/2);const r=e.length<3?.5:.25;a=J(a,0,r),i=J(i,0,r),this._offsets={start:a,end:i,factor:1/(a+1+i)}}_generate(){const e=this._adapter,t=this.min,n=this.max,a=this.options,i=a.time,r=i.unit||kr(i.minUnit,t,n,this._getLabelCapacity(t)),o=l(a.ticks.stepSize,1),s="week"===r&&i.isoWeekday,u=F(s)||!0===s,c={};let d,h,p=t;if(u&&(p=+e.startOf(p,"isoWeek",s)),p=+e.startOf(p,u?"day":r),e.diff(n,t,r)>1e5*o)throw new Error(t+" and "+n+" are too far apart with stepSize of "+o+" "+r);const f="data"===a.ticks.source&&this.getDataTimestamps();for(d=p,h=0;d+e)}getLabelForValue(e){const t=this._adapter,n=this.options.time;return n.tooltipFormat?t.format(e,n.tooltipFormat):t.format(e,n.displayFormats.datetime)}format(e,t){const n=this.options.time.displayFormats,a=this._unit,i=t||n[a];return this._adapter.format(e,i)}_tickFormatFunction(e,t,n,a){const i=this.options,r=i.ticks.callback;if(r)return d(r,[e,t,n],this);const o=i.time.displayFormats,s=this._unit,l=this._majorUnit,u=s&&o[s],c=l&&o[l],h=n[t],p=l&&c&&h&&h.major;return this._adapter.format(e,a||(p?c:u))}generateTickLabels(e){let t,n,a;for(t=0,n=e.length;t0?o:1}getDataTimestamps(){let e,t,n=this._cache.data||[];if(n.length)return n;const a=this.getMatchingVisibleMetas();if(this._normalized&&a.length)return this._cache.data=a[0].controller.getAllParsedValues(this);for(e=0,t=a.length;e=e[s].pos&&t<=e[l].pos&&({lo:s,hi:l}=ne(e,"pos",t)),({pos:a,time:r}=e[s]),({pos:i,time:o}=e[l])):(t>=e[s].time&&t<=e[l].time&&({lo:s,hi:l}=ne(e,"time",t)),({time:a,pos:r}=e[s]),({time:i,pos:o}=e[l]));const u=i-a;return u?r+(o-r)*(t-a)/u:r}var Er=Object.freeze({__proto__:null,CategoryScale:class extends Ga{static id="category";static defaults={ticks:{callback:tr}};constructor(e){super(e),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(e){const t=this._addedLabels;if(t.length){const e=this.getLabels();for(const{index:n,label:a}of t)e[n]===a&&e.splice(n,1);this._addedLabels=[]}super.init(e)}parse(e,t){if(a(e))return null;const n=this.getLabels();return((e,t)=>null===e?null:J(Math.round(e),0,t))(t=isFinite(t)&&n[t]===e?t:function(e,t,n,a){const i=e.indexOf(t);return-1===i?((e,t,n,a)=>("string"==typeof t?(n=e.push(t)-1,a.unshift({index:n,label:t})):isNaN(t)&&(n=null),n))(e,t,n,a):i!==e.lastIndexOf(t)?n:i}(n,e,l(t,e),this._addedLabels),n.length-1)}determineDataLimits(){const{minDefined:e,maxDefined:t}=this.getUserBounds();let{min:n,max:a}=this.getMinMax(!0);"ticks"===this.options.bounds&&(e||(n=0),t||(a=this.getLabels().length-1)),this.min=n,this.max=a}buildTicks(){const e=this.min,t=this.max,n=this.options.offset,a=[];let i=this.getLabels();i=0===e&&t===i.length-1?i:i.slice(e,t+1),this._valueRange=Math.max(i.length-(n?0:1),1),this._startValue=this.min-(n?.5:0);for(let n=e;n<=t;n++)a.push({value:n});return a}getLabelForValue(e){return tr.call(this,e)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(e){return"number"!=typeof e&&(e=this.parse(e)),null===e?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getPixelForTick(e){const t=this.ticks;return e<0||e>t.length-1?null:this.getPixelForValue(t[e].value)}getValueForPixel(e){return Math.round(this._startValue+this.getDecimalForPixel(e)*this._valueRange)}getBasePixel(){return this.bottom}},LinearScale:ir,LogarithmicScale:ur,RadialLinearScale:_r,TimeScale:Cr,TimeSeriesScale:class extends Cr{static id="timeseries";static defaults=Cr.defaults;constructor(e){super(e),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const e=this._getTimestampsForTable(),t=this._table=this.buildLookupTable(e);this._minPos=Tr(t,this.min),this._tableRange=Tr(t,this.max)-this._minPos,super.initOffsets(e)}buildLookupTable(e){const{min:t,max:n}=this,a=[],i=[];let r,o,s,l,u;for(r=0,o=e.length;r=t&&l<=n&&a.push(l);if(a.length<2)return[{time:t,pos:0},{time:n,pos:1}];for(r=0,o=a.length;re-t)}_getTimestampsForTable(){let e=this._cache.all||[];if(e.length)return e;const t=this.getDataTimestamps(),n=this.getLabelTimestamps();return e=t.length&&n.length?this.normalize(t.concat(n)):t.length?t:n,e=this._cache.all=e,e}getDecimalForValue(e){return(Tr(this._table,e)-this._minPos)/this._tableRange}getValueForPixel(e){const t=this._offsets,n=this.getDecimalForPixel(e)/t.factor-t.end;return Tr(this._table,n*this._tableRange+this._minPos,!0)}}});const Pr=["rgb(54, 162, 235)","rgb(255, 99, 132)","rgb(255, 159, 64)","rgb(255, 205, 86)","rgb(75, 192, 192)","rgb(153, 102, 255)","rgb(201, 203, 207)"],Ar=Pr.map(e=>e.replace("rgb(","rgba(").replace(")",", 0.5)"));function Mr(e){return Pr[e%Pr.length]}function Lr(e){return Ar[e%Ar.length]}function Rr(e){let t;for(t in e)if(e[t].borderColor||e[t].backgroundColor)return!0;return!1}var zr={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(e,t,n){if(!n.enabled)return;const{data:{datasets:a},options:i}=e.config,{elements:r}=i,o=Rr(a)||(s=i)&&(s.borderColor||s.backgroundColor)||r&&Rr(r)||"rgba(0,0,0,0.1)"!==st.borderColor||"rgba(0,0,0,0.1)"!==st.backgroundColor;var s;if(!n.forceOverride&&o)return;const l=function(e){let t=0;return(n,a)=>{const i=e.getDatasetMeta(a).controller;i instanceof Ni?t=function(e,t){return e.backgroundColor=e.data.map(()=>Mr(t++)),t}(n,t):i instanceof Oi?t=function(e,t){return e.backgroundColor=e.data.map(()=>Lr(t++)),t}(n,t):i&&(t=function(e,t){return e.borderColor=Mr(t),e.backgroundColor=Lr(t),++t}(n,t))}}(e);a.forEach(l)}};function Nr(e){if(e._decimated){const t=e._data;delete e._decimated,delete e._data,Object.defineProperty(e,"data",{configurable:!0,enumerable:!0,writable:!0,value:t})}}function Or(e){e.data.datasets.forEach(e=>{Nr(e)})}var Ir={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(e,t,n)=>{if(!n.enabled)return void Or(e);const i=e.width;e.data.datasets.forEach((t,r)=>{const{_data:o,indexAxis:s}=t,l=e.getDatasetMeta(r),u=o||t.data;if("y"===wn([s,e.options.indexAxis]))return;if(!l.controller.supportsDecimation)return;const c=e.scales[l.xAxisID];if("linear"!==c.type&&"time"!==c.type)return;if(e.options.parsing)return;let d,{start:h,count:p}=function(e,t){const n=t.length;let a,i=0;const{iScale:r}=e,{min:o,max:s,minDefined:l,maxDefined:u}=r.getUserBounds();return l&&(i=J(ne(t,r.axis,o).lo,0,n-1)),a=u?J(ne(t,r.axis,s).hi+1,i,n)-i:n-i,{start:i,count:a}}(l,u);if(p<=(n.threshold||4*i))Nr(t);else{switch(a(o)&&(t._data=u,delete t.data,Object.defineProperty(t,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(e){this._data=e}})),n.algorithm){case"lttb":d=function(e,t,n,a,i){const r=i.samples||a;if(r>=n)return e.slice(t,t+n);const o=[],s=(n-2)/(r-2);let l=0;const u=t+n-1;let c,d,h,p,f,m=t;for(o[l++]=e[m],c=0;ch&&(h=p,d=e[a],f=a);o[l++]=d,m=f}return o[l++]=e[u],o}(u,h,p,i,n);break;case"min-max":d=function(e,t,n,i){let r,o,s,l,u,c,d,h,p,f,m=0,g=0;const _=[],v=t+n-1,b=e[t].x,y=e[v].x-b;for(r=t;rf&&(f=l,d=r),m=(g*m+o.x)/++g;else{const n=r-1;if(!a(c)&&!a(d)){const t=Math.min(c,d),a=Math.max(c,d);t!==h&&t!==n&&_.push({...e[t],x:m}),a!==h&&a!==n&&_.push({...e[a],x:m})}r>0&&n!==h&&_.push(e[n]),_.push(o),u=t,g=0,p=f=l,c=d=h=r}}return _}(u,h,p,i);break;default:throw new Error(`Unsupported decimation algorithm '${n.algorithm}'`)}t._decimated=d}})},destroy(e){Or(e)}};function qr(e,t,n,a){if(a)return;let i=t[e],r=n[e];return"angle"===e&&(i=Q(i),r=Q(r)),{property:e,start:i,end:r}}function Dr(e,t,n){for(;t>e;t--){const e=n[t];if(!isNaN(e.x)&&!isNaN(e.y))break}return t}function jr(e,t,n,a){return e&&t?a(e[n],t[n]):e?e[n]:t?t[n]:0}function Br(e,t){let n=[],a=!1;return i(e)?(a=!0,n=e):n=function(e,t){const{x:n=null,y:a=null}=e||{},i=t.points,r=[];return t.segments.forEach(({start:e,end:t})=>{t=Dr(e,t,i);const o=i[e],s=i[t];null!==a?(r.push({x:o.x,y:a}),r.push({x:s.x,y:a})):null!==n&&(r.push({x:n,y:o.y}),r.push({x:n,y:s.y}))}),r}(e,t),n.length?new Wi({points:n,options:{tension:0},_loop:a,_fullLoop:a}):null}function Fr(e){return e&&!1!==e.fill}function $r(e,t,n){let a=e[t].fill;const i=[t];let r;if(!n)return a;for(;!1!==a&&-1===i.indexOf(a);){if(!o(a))return a;if(r=e[a],!r)return!1;if(r.visible)return a;i.push(a),a=r.fill}return!1}function Vr(e,t,n){const a=function(e){const t=e.options,n=t.fill;let a=l(n&&n.target,n);return void 0===a&&(a=!!t.backgroundColor),!1!==a&&null!==a&&(!0===a?"origin":a)}(e);if(r(a))return!isNaN(a.value)&&a;let i=parseFloat(a);return o(i)&&Math.floor(i)===i?function(e,t,n,a){return"-"!==e&&"+"!==e||(n=t+n),!(n===t||n<0||n>=a)&&n}(a[0],t,i,n):["origin","start","end","stack","shape"].indexOf(a)>=0&&a}function Ur(e,t,n){const a=[];for(let i=0;i=0;--t){const n=i[t].$filler;n&&(n.line.updateControlPoints(r,n.axis),a&&n.fill&&Yr(e.ctx,n,r))}},beforeDatasetsDraw(e,t,n){if("beforeDatasetsDraw"!==n.drawTime)return;const a=e.getSortedVisibleDatasetMetas();for(let t=a.length-1;t>=0;--t){const n=a[t].$filler;Fr(n)&&Yr(e.ctx,n,e.chartArea)}},beforeDatasetDraw(e,t,n){const a=t.meta.$filler;Fr(a)&&"beforeDatasetDraw"===n.drawTime&&Yr(e.ctx,a,e.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const to=(e,t)=>{let{boxHeight:n=t,boxWidth:a=t}=e;return e.usePointStyle&&(n=Math.min(n,t),a=e.pointStyleWidth||Math.min(a,t)),{boxWidth:a,boxHeight:n,itemHeight:Math.max(t,n)}};class no extends qa{constructor(e){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=e.chart,this.options=e.options,this.ctx=e.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(e,t,n){this.maxWidth=e,this.maxHeight=t,this._margins=n,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const e=this.options.labels||{};let t=d(e.generateLabels,[this.chart],this)||[];e.filter&&(t=t.filter(t=>e.filter(t,this.chart.data))),e.sort&&(t=t.sort((t,n)=>e.sort(t,n,this.chart.data))),this.options.reverse&&t.reverse(),this.legendItems=t}fit(){const{options:e,ctx:t}=this;if(!e.display)return void(this.width=this.height=0);const n=e.labels,a=yn(n.font),i=a.size,r=this._computeTitleHeight(),{boxWidth:o,itemHeight:s}=to(n,i);let l,u;t.font=a.string,this.isHorizontal()?(l=this.maxWidth,u=this._fitRows(r,i,o,s)+10):(u=this.maxHeight,l=this._fitCols(r,a,o,s)+10),this.width=Math.min(l,e.maxWidth||this.maxWidth),this.height=Math.min(u,e.maxHeight||this.maxHeight)}_fitRows(e,t,n,a){const{ctx:i,maxWidth:r,options:{labels:{padding:o}}}=this,s=this.legendHitBoxes=[],l=this.lineWidths=[0],u=a+o;let c=e;i.textAlign="left",i.textBaseline="middle";let d=-1,h=-u;return this.legendItems.forEach((e,p)=>{const f=n+t/2+i.measureText(e.text).width;(0===p||l[l.length-1]+f+2*o>r)&&(c+=u,l[l.length-(p>0?0:1)]=0,h+=u,d++),s[p]={left:0,top:h,row:d,width:f,height:a},l[l.length-1]+=f+o}),c}_fitCols(e,t,n,a){const{ctx:i,maxHeight:r,options:{labels:{padding:o}}}=this,s=this.legendHitBoxes=[],l=this.columnSizes=[],u=r-e;let c=o,d=0,h=0,p=0,f=0;return this.legendItems.forEach((e,r)=>{const{itemWidth:m,itemHeight:g}=function(e,t,n,a,i){const r=function(e,t,n,a){let i=e.text;return i&&"string"!=typeof i&&(i=i.reduce((e,t)=>e.length>t.length?e:t)),t+n.size/2+a.measureText(i).width}(a,e,t,n),o=function(e,t,n){let a=e;return"string"!=typeof t.text&&(a=ao(t,n)),a}(i,a,t.lineHeight);return{itemWidth:r,itemHeight:o}}(n,t,i,e,a);r>0&&h+g+2*o>u&&(c+=d+o,l.push({width:d,height:h}),p+=d+o,f++,d=h=0),s[r]={left:p,top:h,col:f,width:m,height:g},d=Math.max(d,m),h+=g+o}),c+=d,l.push({width:d,height:h}),c}adjustHitBoxes(){if(!this.options.display)return;const e=this._computeTitleHeight(),{legendHitBoxes:t,options:{align:n,labels:{padding:a},rtl:i}}=this,r=Sn(i,this.left,this.width);if(this.isHorizontal()){let i=0,o=pe(n,this.left+a,this.right-this.lineWidths[i]);for(const s of t)i!==s.row&&(i=s.row,o=pe(n,this.left+a,this.right-this.lineWidths[i])),s.top+=this.top+e+a,s.left=r.leftForLtr(r.x(o),s.width),o+=s.width+a}else{let i=0,o=pe(n,this.top+e+a,this.bottom-this.columnSizes[i].height);for(const s of t)s.col!==i&&(i=s.col,o=pe(n,this.top+e+a,this.bottom-this.columnSizes[i].height)),s.top=o,s.left+=this.left+a,s.left=r.leftForLtr(r.x(s.left),s.width),o+=s.height+a}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const e=this.ctx;At(e,this),this._draw(),Mt(e)}}_draw(){const{options:e,columnSizes:t,lineWidths:n,ctx:a}=this,{align:i,labels:r}=e,o=st.color,s=Sn(e.rtl,this.left,this.width),u=yn(r.font),{padding:c}=r,d=u.size,h=d/2;let p;this.drawTitle(),a.textAlign=s.textAlign("left"),a.textBaseline="middle",a.lineWidth=.5,a.font=u.string;const{boxWidth:f,boxHeight:m,itemHeight:g}=to(r,d),_=this.isHorizontal(),v=this._computeTitleHeight();p=_?{x:pe(i,this.left+c,this.right-n[0]),y:this.top+c+v,line:0}:{x:this.left+c,y:pe(i,this.top+v+c,this.bottom-t[0].height),line:0},Cn(this.ctx,e.textDirection);const b=g+c;this.legendItems.forEach((y,w)=>{a.strokeStyle=y.fontColor,a.fillStyle=y.fontColor;const k=a.measureText(y.text).width,x=s.textAlign(y.textAlign||(y.textAlign=r.textAlign)),S=f+h+k;let C=p.x,T=p.y;if(s.setWidth(this.width),_?w>0&&C+S+c>this.right&&(T=p.y+=b,p.line++,C=p.x=pe(i,this.left+c,this.right-n[p.line])):w>0&&T+b>this.bottom&&(C=p.x=C+t[p.line].width+c,p.line++,T=p.y=pe(i,this.top+v+c,this.bottom-t[p.line].height)),function(e,t,n){if(isNaN(f)||f<=0||isNaN(m)||m<0)return;a.save();const i=l(n.lineWidth,1);if(a.fillStyle=l(n.fillStyle,o),a.lineCap=l(n.lineCap,"butt"),a.lineDashOffset=l(n.lineDashOffset,0),a.lineJoin=l(n.lineJoin,"miter"),a.lineWidth=i,a.strokeStyle=l(n.strokeStyle,o),a.setLineDash(l(n.lineDash,[])),r.usePointStyle){const o={radius:m*Math.SQRT2/2,pointStyle:n.pointStyle,rotation:n.rotation,borderWidth:i},l=s.xPlus(e,f/2);Et(a,o,l,t+h,r.pointStyleWidth&&f)}else{const r=t+Math.max((d-m)/2,0),o=s.leftForLtr(e,f),l=vn(n.borderRadius);a.beginPath(),Object.values(l).some(e=>0!==e)?It(a,{x:o,y:r,w:f,h:m,radius:l}):a.rect(o,r,f,m),a.fill(),0!==i&&a.stroke()}a.restore()}(s.x(C),T,y),C=fe(x,C+f+h,_?C+S:this.right,e.rtl),function(e,t,n){Ot(a,n.text,e,t+g/2,u,{strikethrough:n.hidden,textAlign:s.textAlign(n.textAlign)})}(s.x(C),T,y),_)p.x+=S+c;else if("string"!=typeof y.text){const e=u.lineHeight;p.y+=ao(y,e)+c}else p.y+=b}),Tn(this.ctx,e.textDirection)}drawTitle(){const e=this.options,t=e.title,n=yn(t.font),a=bn(t.padding);if(!t.display)return;const i=Sn(e.rtl,this.left,this.width),r=this.ctx,o=t.position,s=n.size/2,l=a.top+s;let u,c=this.left,d=this.width;if(this.isHorizontal())d=Math.max(...this.lineWidths),u=this.top+l,c=pe(e.align,c,this.right-d);else{const t=this.columnSizes.reduce((e,t)=>Math.max(e,t.height),0);u=l+pe(e.align,this.top,this.bottom-t-e.labels.padding-this._computeTitleHeight())}const h=pe(o,c,c+d);r.textAlign=i.textAlign(he(o)),r.textBaseline="middle",r.strokeStyle=t.color,r.fillStyle=t.color,r.font=n.string,Ot(r,t.text,h,u,n)}_computeTitleHeight(){const e=this.options.title,t=yn(e.font),n=bn(e.padding);return e.display?t.lineHeight+n.height:0}_getLegendItemAt(e,t){let n,a,i;if(ee(e,this.left,this.right)&&ee(t,this.top,this.bottom))for(i=this.legendHitBoxes,n=0;ne.chart.options.color,boxWidth:40,padding:10,generateLabels(e){const t=e.data.datasets,{labels:{usePointStyle:n,pointStyle:a,textAlign:i,color:r,useBorderRadius:o,borderRadius:s}}=e.legend.options;return e._getSortedDatasetMetas().map(e=>{const l=e.controller.getStyle(n?0:void 0),u=bn(l.borderWidth);return{text:t[e.index].label,fillStyle:l.backgroundColor,fontColor:r,hidden:!e.visible,lineCap:l.borderCapStyle,lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:(u.width+u.height)/4,strokeStyle:l.borderColor,pointStyle:a||l.pointStyle,rotation:l.rotation,textAlign:i||l.textAlign,borderRadius:o&&(s||l.borderRadius),datasetIndex:e.index}},this)}},title:{color:e=>e.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:e=>!e.startsWith("on"),labels:{_scriptable:e=>!["generateLabels","filter","sort"].includes(e)}}};class ro extends qa{constructor(e){super(),this.chart=e.chart,this.options=e.options,this.ctx=e.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(e,t){const n=this.options;if(this.left=0,this.top=0,!n.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=e,this.height=this.bottom=t;const a=i(n.text)?n.text.length:1;this._padding=bn(n.padding);const r=a*yn(n.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=r:this.width=r}isHorizontal(){const e=this.options.position;return"top"===e||"bottom"===e}_drawArgs(e){const{top:t,left:n,bottom:a,right:i,options:r}=this,o=r.align;let s,l,u,c=0;return this.isHorizontal()?(l=pe(o,n,i),u=t+e,s=i-n):("left"===r.position?(l=n+e,u=pe(o,a,t),c=-.5*P):(l=i-e,u=pe(o,t,a),c=.5*P),s=a-t),{titleX:l,titleY:u,maxWidth:s,rotation:c}}draw(){const e=this.ctx,t=this.options;if(!t.display)return;const n=yn(t.font),a=n.lineHeight/2+this._padding.top,{titleX:i,titleY:r,maxWidth:o,rotation:s}=this._drawArgs(a);Ot(e,t.text,0,0,n,{color:t.color,maxWidth:o,rotation:s,textAlign:he(t.align),textBaseline:"middle",translation:[i,r]})}}var oo={id:"title",_element:ro,start(e,t,n){!function(e,t){const n=new ro({ctx:e.ctx,options:t,chart:e});ta.configure(e,n,t),ta.addBox(e,n),e.titleBlock=n}(e,n)},stop(e){const t=e.titleBlock;ta.removeBox(e,t),delete e.titleBlock},beforeUpdate(e,t,n){const a=e.titleBlock;ta.configure(e,a,n),a.options=n},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const so=new WeakMap;var lo={id:"subtitle",start(e,t,n){const a=new ro({ctx:e.ctx,options:n,chart:e});ta.configure(e,a,n),ta.addBox(e,a),so.set(e,a)},stop(e){ta.removeBox(e,so.get(e)),so.delete(e)},beforeUpdate(e,t,n){const a=so.get(e);ta.configure(e,a,n),a.options=n},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const uo={average(e){if(!e.length)return!1;let t,n,a=new Set,i=0,r=0;for(t=0,n=e.length;te+t)/a.size,y:i/r}},nearest(e,t){if(!e.length)return!1;let n,a,i,r=t.x,o=t.y,s=Number.POSITIVE_INFINITY;for(n=0,a=e.length;n-1?e.split("\n"):e}function po(e,t){const{element:n,datasetIndex:a,index:i}=t,r=e.getDatasetMeta(a).controller,{label:o,value:s}=r.getLabelAndValue(i);return{chart:e,label:o,parsed:r.getParsed(i),raw:e.data.datasets[a].data[i],formattedValue:s,dataset:r.getDataset(),dataIndex:i,datasetIndex:a,element:n}}function fo(e,t){const n=e.chart.ctx,{body:a,footer:i,title:r}=e,{boxWidth:o,boxHeight:s}=t,l=yn(t.bodyFont),u=yn(t.titleFont),c=yn(t.footerFont),d=r.length,p=i.length,f=a.length,m=bn(t.padding);let g=m.height,_=0,v=a.reduce((e,t)=>e+t.before.length+t.lines.length+t.after.length,0);v+=e.beforeBody.length+e.afterBody.length,d&&(g+=d*u.lineHeight+(d-1)*t.titleSpacing+t.titleMarginBottom),v&&(g+=f*(t.displayColors?Math.max(s,l.lineHeight):l.lineHeight)+(v-f)*l.lineHeight+(v-1)*t.bodySpacing),p&&(g+=t.footerMarginTop+p*c.lineHeight+(p-1)*t.footerSpacing);let b=0;const y=function(e){_=Math.max(_,n.measureText(e).width+b)};return n.save(),n.font=u.string,h(e.title,y),n.font=l.string,h(e.beforeBody.concat(e.afterBody),y),b=t.displayColors?o+2+t.boxPadding:0,h(a,e=>{h(e.before,y),h(e.lines,y),h(e.after,y)}),b=0,n.font=c.string,h(e.footer,y),n.restore(),_+=m.width,{width:_,height:g}}function mo(e,t,n,a){const{x:i,width:r}=n,{width:o,chartArea:{left:s,right:l}}=e;let u="center";return"center"===a?u=i<=(s+l)/2?"left":"right":i<=r/2?u="left":i>=o-r/2&&(u="right"),function(e,t,n,a){const{x:i,width:r}=a,o=n.caretSize+n.caretPadding;return"left"===e&&i+r+o>t.width||"right"===e&&i-r-o<0||void 0}(u,e,t,n)&&(u="center"),u}function go(e,t,n){const a=n.yAlign||t.yAlign||function(e,t){const{y:n,height:a}=t;return ne.height-a/2?"bottom":"center"}(e,n);return{xAlign:n.xAlign||t.xAlign||mo(e,t,n,a),yAlign:a}}function _o(e,t,n,a){const{caretSize:i,caretPadding:r,cornerRadius:o}=e,{xAlign:s,yAlign:l}=n,u=i+r,{topLeft:c,topRight:d,bottomLeft:h,bottomRight:p}=vn(o);let f=function(e,t){let{x:n,width:a}=e;return"right"===t?n-=a:"center"===t&&(n-=a/2),n}(t,s);const m=function(e,t,n){let{y:a,height:i}=e;return"top"===t?a+=n:a-="bottom"===t?i+n:i/2,a}(t,l,u);return"center"===l?"left"===s?f+=u:"right"===s&&(f-=u):"left"===s?f-=Math.max(c,h)+i:"right"===s&&(f+=Math.max(d,p)+i),{x:J(f,0,a.width-t.width),y:J(m,0,a.height-t.height)}}function vo(e,t,n){const a=bn(n.padding);return"center"===t?e.x+e.width/2:"right"===t?e.x+e.width-a.right:e.x+a.left}function bo(e){return co([],ho(e))}function yo(e,t){const n=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return n?e.override(n):e}const wo={beforeTitle:t,title(e){if(e.length>0){const t=e[0],n=t.chart.data.labels,a=n?n.length:0;if(this&&this.options&&"dataset"===this.options.mode)return t.dataset.label||"";if(t.label)return t.label;if(a>0&&t.dataIndex{const t={before:[],lines:[],after:[]},i=yo(n,e);co(t.before,ho(ko(i,"beforeLabel",this,e))),co(t.lines,ko(i,"label",this,e)),co(t.after,ho(ko(i,"afterLabel",this,e))),a.push(t)}),a}getAfterBody(e,t){return bo(ko(t.callbacks,"afterBody",this,e))}getFooter(e,t){const{callbacks:n}=t,a=ko(n,"beforeFooter",this,e),i=ko(n,"footer",this,e),r=ko(n,"afterFooter",this,e);let o=[];return o=co(o,ho(a)),o=co(o,ho(i)),o=co(o,ho(r)),o}_createItems(e){const t=this._active,n=this.chart.data,a=[],i=[],r=[];let o,s,l=[];for(o=0,s=t.length;oe.filter(t,a,i,n))),e.itemSort&&(l=l.sort((t,a)=>e.itemSort(t,a,n))),h(l,t=>{const n=yo(e.callbacks,t);a.push(ko(n,"labelColor",this,t)),i.push(ko(n,"labelPointStyle",this,t)),r.push(ko(n,"labelTextColor",this,t))}),this.labelColors=a,this.labelPointStyles=i,this.labelTextColors=r,this.dataPoints=l,l}update(e,t){const n=this.options.setContext(this.getContext()),a=this._active;let i,r=[];if(a.length){const e=uo[n.position].call(this,a,this._eventPosition);r=this._createItems(n),this.title=this.getTitle(r,n),this.beforeBody=this.getBeforeBody(r,n),this.body=this.getBody(r,n),this.afterBody=this.getAfterBody(r,n),this.footer=this.getFooter(r,n);const t=this._size=fo(this,n),o=Object.assign({},e,t),s=go(this.chart,n,o),l=_o(n,o,s,this.chart);this.xAlign=s.xAlign,this.yAlign=s.yAlign,i={opacity:1,x:l.x,y:l.y,width:t.width,height:t.height,caretX:e.x,caretY:e.y}}else 0!==this.opacity&&(i={opacity:0});this._tooltipItems=r,this.$context=void 0,i&&this._resolveAnimations().update(this,i),e&&n.external&&n.external.call(this,{chart:this.chart,tooltip:this,replay:t})}drawCaret(e,t,n,a){const i=this.getCaretPosition(e,n,a);t.lineTo(i.x1,i.y1),t.lineTo(i.x2,i.y2),t.lineTo(i.x3,i.y3)}getCaretPosition(e,t,n){const{xAlign:a,yAlign:i}=this,{caretSize:r,cornerRadius:o}=n,{topLeft:s,topRight:l,bottomLeft:u,bottomRight:c}=vn(o),{x:d,y:h}=e,{width:p,height:f}=t;let m,g,_,v,b,y;return"center"===i?(b=h+f/2,"left"===a?(m=d,g=m-r,v=b+r,y=b-r):(m=d+p,g=m+r,v=b-r,y=b+r),_=m):(g="left"===a?d+Math.max(s,u)+r:"right"===a?d+p-Math.max(l,c)-r:this.caretX,"top"===i?(v=h,b=v-r,m=g-r,_=g+r):(v=h+f,b=v+r,m=g+r,_=g-r),y=v),{x1:m,x2:g,x3:_,y1:v,y2:b,y3:y}}drawTitle(e,t,n){const a=this.title,i=a.length;let r,o,s;if(i){const l=Sn(n.rtl,this.x,this.width);for(e.x=vo(this,n.titleAlign,n),t.textAlign=l.textAlign(n.titleAlign),t.textBaseline="middle",r=yn(n.titleFont),o=n.titleSpacing,t.fillStyle=n.titleColor,t.font=r.string,s=0;s0!==e)?(e.beginPath(),e.fillStyle=i.multiKeyBackground,It(e,{x:t,y:f,w:u,h:l,radius:s}),e.fill(),e.stroke(),e.fillStyle=o.backgroundColor,e.beginPath(),It(e,{x:n,y:f+1,w:u-2,h:l-2,radius:s}),e.fill()):(e.fillStyle=i.multiKeyBackground,e.fillRect(t,f,u,l),e.strokeRect(t,f,u,l),e.fillStyle=o.backgroundColor,e.fillRect(n,f+1,u-2,l-2))}e.fillStyle=this.labelTextColors[n]}drawBody(e,t,n){const{body:a}=this,{bodySpacing:i,bodyAlign:r,displayColors:o,boxHeight:s,boxWidth:l,boxPadding:u}=n,c=yn(n.bodyFont);let d=c.lineHeight,p=0;const f=Sn(n.rtl,this.x,this.width),m=function(n){t.fillText(n,f.x(e.x+p),e.y+d/2),e.y+=d+i},g=f.textAlign(r);let _,v,b,y,w,k,x;for(t.textAlign=r,t.textBaseline="middle",t.font=c.string,e.x=vo(this,g,n),t.fillStyle=n.bodyColor,h(this.beforeBody,m),p=o&&"right"!==g?"center"===r?l/2+u:l+2+u:0,y=0,k=a.length;y0&&t.stroke()}_updateAnimationTarget(e){const t=this.chart,n=this.$animations,a=n&&n.x,i=n&&n.y;if(a||i){const n=uo[e.position].call(this,this._active,this._eventPosition);if(!n)return;const r=this._size=fo(this,e),o=Object.assign({},n,this._size),s=go(t,e,o),l=_o(e,o,s,t);a._to===l.x&&i._to===l.y||(this.xAlign=s.xAlign,this.yAlign=s.yAlign,this.width=r.width,this.height=r.height,this.caretX=n.x,this.caretY=n.y,this._resolveAnimations().update(this,l))}}_willRender(){return!!this.opacity}draw(e){const t=this.options.setContext(this.getContext());let n=this.opacity;if(!n)return;this._updateAnimationTarget(t);const a={width:this.width,height:this.height},i={x:this.x,y:this.y};n=Math.abs(n)<.001?0:n;const r=bn(t.padding),o=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;t.enabled&&o&&(e.save(),e.globalAlpha=n,this.drawBackground(i,e,a,t),Cn(e,t.textDirection),i.y+=r.top,this.drawTitle(i,e,t),this.drawBody(i,e,t),this.drawFooter(i,e,t),Tn(e,t.textDirection),e.restore())}getActiveElements(){return this._active||[]}setActiveElements(e,t){const n=this._active,a=e.map(({datasetIndex:e,index:t})=>{const n=this.chart.getDatasetMeta(e);if(!n)throw new Error("Cannot find a dataset at index "+e);return{datasetIndex:e,element:n.data[t],index:t}}),i=!p(n,a),r=this._positionChanged(a,t);(i||r)&&(this._active=a,this._eventPosition=t,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(e,t,n=!0){if(t&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const a=this.options,i=this._active||[],r=this._getActiveElements(e,i,t,n),o=this._positionChanged(r,e),s=t||!p(r,i)||o;return s&&(this._active=r,(a.enabled||a.external)&&(this._eventPosition={x:e.x,y:e.y},this.update(!0,t))),s}_getActiveElements(e,t,n,a){const i=this.options;if("mouseout"===e.type)return[];if(!a)return t.filter(e=>this.chart.data.datasets[e.datasetIndex]&&void 0!==this.chart.getDatasetMeta(e.datasetIndex).controller.getParsed(e.index));const r=this.chart.getElementsAtEventForMode(e,i.mode,i,n);return i.reverse&&r.reverse(),r}_positionChanged(e,t){const{caretX:n,caretY:a,options:i}=this,r=uo[i.position].call(this,e,t);return!1!==r&&(n!==r.x||a!==r.y)}}var So={id:"tooltip",_element:xo,positioners:uo,afterInit(e,t,n){n&&(e.tooltip=new xo({chart:e,options:n}))},beforeUpdate(e,t,n){e.tooltip&&e.tooltip.initialize(n)},reset(e,t,n){e.tooltip&&e.tooltip.initialize(n)},afterDraw(e){const t=e.tooltip;if(t&&t._willRender()){const n={tooltip:t};if(!1===e.notifyPlugins("beforeTooltipDraw",{...n,cancelable:!0}))return;t.draw(e.ctx),e.notifyPlugins("afterTooltipDraw",n)}},afterEvent(e,t){if(e.tooltip){const n=t.replay;e.tooltip.handleEvent(t.event,n,t.inChartArea)&&(t.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(e,t)=>t.bodyFont.size,boxWidth:(e,t)=>t.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:wo},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:e=>"filter"!==e&&"itemSort"!==e&&"external"!==e,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};return wi.register(Ii,Er,er,e),wi.helpers={...qn},wi._adapters=Ci,wi.Animation=xa,wi.Animations=Sa,wi.animator=_e,wi.controllers=Ka.controllers.items,wi.DatasetController=Ia,wi.Element=qa,wi.elements=er,wi.Interaction=Vn,wi.layouts=ta,wi.platforms=ya,wi.Scale=Ga,wi.Ticks=nt,Object.assign(wi,Ii,Er,er,e,ya),wi.Chart=wi,"undefined"!=typeof window&&(window.Chart=wi),wi}),/*! showdown v 2.1.0 - 21-04-2022 */ +function(){function e(e){"use strict";var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic 'section-' prefix",type:"string"},rawPrefixHeaderId:{defaultValue:!1,describe:'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)',type:"boolean"},ghCompatibleHeaderId:{defaultValue:!1,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},rawHeaderId:{defaultValue:!1,describe:"Remove only spaces, ' and \" from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids",type:"boolean"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:!1,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:!1,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,describe:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:!1,describe:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:!1,describe:"Parses simple line breaks as
(GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:!1,describe:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:!1,describe:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",describe:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:!0,describe:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:!1,describe:"Open all links in new windows",type:"boolean"},backslashEscapesHTMLTags:{defaultValue:!1,describe:"Support for HTML Tag escaping. ex:
foo
",type:"boolean"},emoji:{defaultValue:!1,describe:"Enable emoji support. Ex: `this is a :smile: emoji`",type:"boolean"},underline:{defaultValue:!1,describe:"Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `` and ``",type:"boolean"},ellipsis:{defaultValue:!0,describe:"Replaces three dots with the ellipsis unicode character",type:"boolean"},completeHTMLDocument:{defaultValue:!1,describe:"Outputs a complete html document, including ``, `` and `` tags",type:"boolean"},metadata:{defaultValue:!1,describe:"Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).",type:"boolean"},splitAdjacentBlockquotes:{defaultValue:!1,describe:"Split adjacent blockquote blocks",type:"boolean"}};if(!1===e)return JSON.parse(JSON.stringify(t));var n={};for(var a in t)t.hasOwnProperty(a)&&(n[a]=t[a].defaultValue);return n}var t={},n={},a={},i=e(!0),r="vanilla",o={github:{omitExtraWLInCodeBlocks:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,disableForced4SpacesIndentedSublists:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghCompatibleHeaderId:!0,ghMentions:!0,backslashEscapesHTMLTags:!0,emoji:!0,splitAdjacentBlockquotes:!0},original:{noHeaderId:!0,ghCodeBlocks:!1},ghost:{omitExtraWLInCodeBlocks:!0,parseImgDimensions:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,smoothLivePreview:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghMentions:!1,encodeEmails:!0},vanilla:e(!0),allOn:function(){"use strict";var t=e(!0),n={};for(var a in t)t.hasOwnProperty(a)&&(n[a]=!0);return n}()};function s(e,n){"use strict";var a=n?"Error in "+n+" extension->":"Error in unnamed extension",i={valid:!0,error:""};t.helper.isArray(e)||(e=[e]);for(var r=0;r").replace(/&/g,"&")};var u=function(e,t,n,a){"use strict";var i,r,o,s,l,u=a||"",c=u.indexOf("g")>-1,d=new RegExp(t+"|"+n,"g"+u.replace(/g/g,"")),h=new RegExp(t,u.replace(/g/g,"")),p=[];do{for(i=0;o=d.exec(e);)if(h.test(o[0]))i++||(s=(r=d.lastIndex)-o[0].length);else if(i&&! --i){l=o.index+o[0].length;var f={left:{start:s,end:r},match:{start:r,end:o.index},right:{start:o.index,end:l},wholeMatch:{start:s,end:l}};if(p.push(f),!c)return p}}while(i&&(d.lastIndex=r));return p};t.helper.matchRecursiveRegExp=function(e,t,n,a){"use strict";for(var i=u(e,t,n,a),r=[],o=0;o0){var d=[];0!==s[0].wholeMatch.start&&d.push(e.slice(0,s[0].wholeMatch.start));for(var h=0;h=0?i+(a||0):i},t.helper.splitAtIndex=function(e,n){"use strict";if(!t.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";return[e.substring(0,n),e.substring(n)]},t.helper.encodeEmailAddress=function(e){"use strict";var t=[function(e){return"&#"+e.charCodeAt(0)+";"},function(e){return"&#x"+e.charCodeAt(0).toString(16)+";"},function(e){return e}];return e=e.replace(/./g,function(e){if("@"===e)e=t[Math.floor(2*Math.random())](e);else{var n=Math.random();e=n>.9?t[2](e):n>.45?t[1](e):t[0](e)}return e})},t.helper.padEnd=function(e,t,n){"use strict";return t|=0,n=String(n||" "),e.length>t?String(e):((t-=e.length)>n.length&&(n+=n.repeat(t/n.length)),String(e)+n.slice(0,t))},"undefined"==typeof console&&(console={warn:function(e){"use strict";alert(e)},log:function(e){"use strict";alert(e)},error:function(e){"use strict";throw e}}),t.helper.regexes={asteriskDashAndColon:/([*_:~])/g},t.helper.emojis={"+1":"👍","-1":"👎",100:"💯",1234:"🔢","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉","8ball":"🎱",a:"🅰️",ab:"🆎",abc:"🔤",abcd:"🔡",accept:"🉑",aerial_tramway:"🚡",airplane:"✈️",alarm_clock:"⏰",alembic:"⚗️",alien:"👽",ambulance:"🚑",amphora:"🏺",anchor:"⚓️",angel:"👼",anger:"💢",angry:"😠",anguished:"😧",ant:"🐜",apple:"🍎",aquarius:"♒️",aries:"♈️",arrow_backward:"◀️",arrow_double_down:"⏬",arrow_double_up:"⏫",arrow_down:"⬇️",arrow_down_small:"🔽",arrow_forward:"▶️",arrow_heading_down:"⤵️",arrow_heading_up:"⤴️",arrow_left:"⬅️",arrow_lower_left:"↙️",arrow_lower_right:"↘️",arrow_right:"➡️",arrow_right_hook:"↪️",arrow_up:"⬆️",arrow_up_down:"↕️",arrow_up_small:"🔼",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",art:"🎨",articulated_lorry:"🚛",artificial_satellite:"🛰",astonished:"😲",athletic_shoe:"👟",atm:"🏧",atom_symbol:"⚛️",avocado:"🥑",b:"🅱️",baby:"👶",baby_bottle:"🍼",baby_chick:"🐤",baby_symbol:"🚼",back:"🔙",bacon:"🥓",badminton:"🏸",baggage_claim:"🛄",baguette_bread:"🥖",balance_scale:"⚖️",balloon:"🎈",ballot_box:"🗳",ballot_box_with_check:"☑️",bamboo:"🎍",banana:"🍌",bangbang:"‼️",bank:"🏦",bar_chart:"📊",barber:"💈",baseball:"⚾️",basketball:"🏀",basketball_man:"⛹️",basketball_woman:"⛹️‍♀️",bat:"🦇",bath:"🛀",bathtub:"🛁",battery:"🔋",beach_umbrella:"🏖",bear:"🐻",bed:"🛏",bee:"🐝",beer:"🍺",beers:"🍻",beetle:"🐞",beginner:"🔰",bell:"🔔",bellhop_bell:"🛎",bento:"🍱",biking_man:"🚴",bike:"🚲",biking_woman:"🚴‍♀️",bikini:"👙",biohazard:"☣️",bird:"🐦",birthday:"🎂",black_circle:"⚫️",black_flag:"🏴",black_heart:"🖤",black_joker:"🃏",black_large_square:"⬛️",black_medium_small_square:"◾️",black_medium_square:"◼️",black_nib:"✒️",black_small_square:"▪️",black_square_button:"🔲",blonde_man:"👱",blonde_woman:"👱‍♀️",blossom:"🌼",blowfish:"🐡",blue_book:"📘",blue_car:"🚙",blue_heart:"💙",blush:"😊",boar:"🐗",boat:"⛵️",bomb:"💣",book:"📖",bookmark:"🔖",bookmark_tabs:"📑",books:"📚",boom:"💥",boot:"👢",bouquet:"💐",bowing_man:"🙇",bow_and_arrow:"🏹",bowing_woman:"🙇‍♀️",bowling:"🎳",boxing_glove:"🥊",boy:"👦",bread:"🍞",bride_with_veil:"👰",bridge_at_night:"🌉",briefcase:"💼",broken_heart:"💔",bug:"🐛",building_construction:"🏗",bulb:"💡",bullettrain_front:"🚅",bullettrain_side:"🚄",burrito:"🌯",bus:"🚌",business_suit_levitating:"🕴",busstop:"🚏",bust_in_silhouette:"👤",busts_in_silhouette:"👥",butterfly:"🦋",cactus:"🌵",cake:"🍰",calendar:"📆",call_me_hand:"🤙",calling:"📲",camel:"🐫",camera:"📷",camera_flash:"📸",camping:"🏕",cancer:"♋️",candle:"🕯",candy:"🍬",canoe:"🛶",capital_abcd:"🔠",capricorn:"♑️",car:"🚗",card_file_box:"🗃",card_index:"📇",card_index_dividers:"🗂",carousel_horse:"🎠",carrot:"🥕",cat:"🐱",cat2:"🐈",cd:"💿",chains:"⛓",champagne:"🍾",chart:"💹",chart_with_downwards_trend:"📉",chart_with_upwards_trend:"📈",checkered_flag:"🏁",cheese:"🧀",cherries:"🍒",cherry_blossom:"🌸",chestnut:"🌰",chicken:"🐔",children_crossing:"🚸",chipmunk:"🐿",chocolate_bar:"🍫",christmas_tree:"🎄",church:"⛪️",cinema:"🎦",circus_tent:"🎪",city_sunrise:"🌇",city_sunset:"🌆",cityscape:"🏙",cl:"🆑",clamp:"🗜",clap:"👏",clapper:"🎬",classical_building:"🏛",clinking_glasses:"🥂",clipboard:"📋",clock1:"🕐",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",clock12:"🕛",clock1230:"🕧",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",closed_book:"📕",closed_lock_with_key:"🔐",closed_umbrella:"🌂",cloud:"☁️",cloud_with_lightning:"🌩",cloud_with_lightning_and_rain:"⛈",cloud_with_rain:"🌧",cloud_with_snow:"🌨",clown_face:"🤡",clubs:"♣️",cocktail:"🍸",coffee:"☕️",coffin:"⚰️",cold_sweat:"😰",comet:"☄️",computer:"💻",computer_mouse:"🖱",confetti_ball:"🎊",confounded:"😖",confused:"😕",congratulations:"㊗️",construction:"🚧",construction_worker_man:"👷",construction_worker_woman:"👷‍♀️",control_knobs:"🎛",convenience_store:"🏪",cookie:"🍪",cool:"🆒",policeman:"👮",copyright:"©️",corn:"🌽",couch_and_lamp:"🛋",couple:"👫",couple_with_heart_woman_man:"💑",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_man_woman:"💏",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",cow:"🐮",cow2:"🐄",cowboy_hat_face:"🤠",crab:"🦀",crayon:"🖍",credit_card:"💳",crescent_moon:"🌙",cricket:"🏏",crocodile:"🐊",croissant:"🥐",crossed_fingers:"🤞",crossed_flags:"🎌",crossed_swords:"⚔️",crown:"👑",cry:"😢",crying_cat_face:"😿",crystal_ball:"🔮",cucumber:"🥒",cupid:"💘",curly_loop:"➰",currency_exchange:"💱",curry:"🍛",custard:"🍮",customs:"🛃",cyclone:"🌀",dagger:"🗡",dancer:"💃",dancing_women:"👯",dancing_men:"👯‍♂️",dango:"🍡",dark_sunglasses:"🕶",dart:"🎯",dash:"💨",date:"📅",deciduous_tree:"🌳",deer:"🦌",department_store:"🏬",derelict_house:"🏚",desert:"🏜",desert_island:"🏝",desktop_computer:"🖥",male_detective:"🕵️",diamond_shape_with_a_dot_inside:"💠",diamonds:"♦️",disappointed:"😞",disappointed_relieved:"😥",dizzy:"💫",dizzy_face:"😵",do_not_litter:"🚯",dog:"🐶",dog2:"🐕",dollar:"💵",dolls:"🎎",dolphin:"🐬",door:"🚪",doughnut:"🍩",dove:"🕊",dragon:"🐉",dragon_face:"🐲",dress:"👗",dromedary_camel:"🐪",drooling_face:"🤤",droplet:"💧",drum:"🥁",duck:"🦆",dvd:"📀","e-mail":"📧",eagle:"🦅",ear:"👂",ear_of_rice:"🌾",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",egg:"🥚",eggplant:"🍆",eight_pointed_black_star:"✴️",eight_spoked_asterisk:"✳️",electric_plug:"🔌",elephant:"🐘",email:"✉️",end:"🔚",envelope_with_arrow:"📩",euro:"💶",european_castle:"🏰",european_post_office:"🏤",evergreen_tree:"🌲",exclamation:"❗️",expressionless:"😑",eye:"👁",eye_speech_bubble:"👁‍🗨",eyeglasses:"👓",eyes:"👀",face_with_head_bandage:"🤕",face_with_thermometer:"🤒",fist_oncoming:"👊",factory:"🏭",fallen_leaf:"🍂",family_man_woman_boy:"👪",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",fast_forward:"⏩",fax:"📠",fearful:"😨",feet:"🐾",female_detective:"🕵️‍♀️",ferris_wheel:"🎡",ferry:"⛴",field_hockey:"🏑",file_cabinet:"🗄",file_folder:"📁",film_projector:"📽",film_strip:"🎞",fire:"🔥",fire_engine:"🚒",fireworks:"🎆",first_quarter_moon:"🌓",first_quarter_moon_with_face:"🌛",fish:"🐟",fish_cake:"🍥",fishing_pole_and_fish:"🎣",fist_raised:"✊",fist_left:"🤛",fist_right:"🤜",flags:"🎏",flashlight:"🔦",fleur_de_lis:"⚜️",flight_arrival:"🛬",flight_departure:"🛫",floppy_disk:"💾",flower_playing_cards:"🎴",flushed:"😳",fog:"🌫",foggy:"🌁",football:"🏈",footprints:"👣",fork_and_knife:"🍴",fountain:"⛲️",fountain_pen:"🖋",four_leaf_clover:"🍀",fox_face:"🦊",framed_picture:"🖼",free:"🆓",fried_egg:"🍳",fried_shrimp:"🍤",fries:"🍟",frog:"🐸",frowning:"😦",frowning_face:"☹️",frowning_man:"🙍‍♂️",frowning_woman:"🙍",middle_finger:"🖕",fuelpump:"⛽️",full_moon:"🌕",full_moon_with_face:"🌝",funeral_urn:"⚱️",game_die:"🎲",gear:"⚙️",gem:"💎",gemini:"♊️",ghost:"👻",gift:"🎁",gift_heart:"💝",girl:"👧",globe_with_meridians:"🌐",goal_net:"🥅",goat:"🐐",golf:"⛳️",golfing_man:"🏌️",golfing_woman:"🏌️‍♀️",gorilla:"🦍",grapes:"🍇",green_apple:"🍏",green_book:"📗",green_heart:"💚",green_salad:"🥗",grey_exclamation:"❕",grey_question:"❔",grimacing:"😬",grin:"😁",grinning:"😀",guardsman:"💂",guardswoman:"💂‍♀️",guitar:"🎸",gun:"🔫",haircut_woman:"💇",haircut_man:"💇‍♂️",hamburger:"🍔",hammer:"🔨",hammer_and_pick:"⚒",hammer_and_wrench:"🛠",hamster:"🐹",hand:"✋",handbag:"👜",handshake:"🤝",hankey:"💩",hatched_chick:"🐥",hatching_chick:"🐣",headphones:"🎧",hear_no_evil:"🙉",heart:"❤️",heart_decoration:"💟",heart_eyes:"😍",heart_eyes_cat:"😻",heartbeat:"💓",heartpulse:"💗",hearts:"♥️",heavy_check_mark:"✔️",heavy_division_sign:"➗",heavy_dollar_sign:"💲",heavy_heart_exclamation:"❣️",heavy_minus_sign:"➖",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",helicopter:"🚁",herb:"🌿",hibiscus:"🌺",high_brightness:"🔆",high_heel:"👠",hocho:"🔪",hole:"🕳",honey_pot:"🍯",horse:"🐴",horse_racing:"🏇",hospital:"🏥",hot_pepper:"🌶",hotdog:"🌭",hotel:"🏨",hotsprings:"♨️",hourglass:"⌛️",hourglass_flowing_sand:"⏳",house:"🏠",house_with_garden:"🏡",houses:"🏘",hugs:"🤗",hushed:"😯",ice_cream:"🍨",ice_hockey:"🏒",ice_skate:"⛸",icecream:"🍦",id:"🆔",ideograph_advantage:"🉐",imp:"👿",inbox_tray:"📥",incoming_envelope:"📨",tipping_hand_woman:"💁",information_source:"ℹ️",innocent:"😇",interrobang:"⁉️",iphone:"📱",izakaya_lantern:"🏮",jack_o_lantern:"🎃",japan:"🗾",japanese_castle:"🏯",japanese_goblin:"👺",japanese_ogre:"👹",jeans:"👖",joy:"😂",joy_cat:"😹",joystick:"🕹",kaaba:"🕋",key:"🔑",keyboard:"⌨️",keycap_ten:"🔟",kick_scooter:"🛴",kimono:"👘",kiss:"💋",kissing:"😗",kissing_cat:"😽",kissing_closed_eyes:"😚",kissing_heart:"😘",kissing_smiling_eyes:"😙",kiwi_fruit:"🥝",koala:"🐨",koko:"🈁",label:"🏷",large_blue_circle:"🔵",large_blue_diamond:"🔷",large_orange_diamond:"🔶",last_quarter_moon:"🌗",last_quarter_moon_with_face:"🌜",latin_cross:"✝️",laughing:"😆",leaves:"🍃",ledger:"📒",left_luggage:"🛅",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",lemon:"🍋",leo:"♌️",leopard:"🐆",level_slider:"🎚",libra:"♎️",light_rail:"🚈",link:"🔗",lion:"🦁",lips:"👄",lipstick:"💄",lizard:"🦎",lock:"🔒",lock_with_ink_pen:"🔏",lollipop:"🍭",loop:"➿",loud_sound:"🔊",loudspeaker:"📢",love_hotel:"🏩",love_letter:"💌",low_brightness:"🔅",lying_face:"🤥",m:"Ⓜ️",mag:"🔍",mag_right:"🔎",mahjong:"🀄️",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",man:"👨",man_artist:"👨‍🎨",man_astronaut:"👨‍🚀",man_cartwheeling:"🤸‍♂️",man_cook:"👨‍🍳",man_dancing:"🕺",man_facepalming:"🤦‍♂️",man_factory_worker:"👨‍🏭",man_farmer:"👨‍🌾",man_firefighter:"👨‍🚒",man_health_worker:"👨‍⚕️",man_in_tuxedo:"🤵",man_judge:"👨‍⚖️",man_juggling:"🤹‍♂️",man_mechanic:"👨‍🔧",man_office_worker:"👨‍💼",man_pilot:"👨‍✈️",man_playing_handball:"🤾‍♂️",man_playing_water_polo:"🤽‍♂️",man_scientist:"👨‍🔬",man_shrugging:"🤷‍♂️",man_singer:"👨‍🎤",man_student:"👨‍🎓",man_teacher:"👨‍🏫",man_technologist:"👨‍💻",man_with_gua_pi_mao:"👲",man_with_turban:"👳",tangerine:"🍊",mans_shoe:"👞",mantelpiece_clock:"🕰",maple_leaf:"🍁",martial_arts_uniform:"🥋",mask:"😷",massage_woman:"💆",massage_man:"💆‍♂️",meat_on_bone:"🍖",medal_military:"🎖",medal_sports:"🏅",mega:"📣",melon:"🍈",memo:"📝",men_wrestling:"🤼‍♂️",menorah:"🕎",mens:"🚹",metal:"🤘",metro:"🚇",microphone:"🎤",microscope:"🔬",milk_glass:"🥛",milky_way:"🌌",minibus:"🚐",minidisc:"💽",mobile_phone_off:"📴",money_mouth_face:"🤑",money_with_wings:"💸",moneybag:"💰",monkey:"🐒",monkey_face:"🐵",monorail:"🚝",moon:"🌔",mortar_board:"🎓",mosque:"🕌",motor_boat:"🛥",motor_scooter:"🛵",motorcycle:"🏍",motorway:"🛣",mount_fuji:"🗻",mountain:"⛰",mountain_biking_man:"🚵",mountain_biking_woman:"🚵‍♀️",mountain_cableway:"🚠",mountain_railway:"🚞",mountain_snow:"🏔",mouse:"🐭",mouse2:"🐁",movie_camera:"🎥",moyai:"🗿",mrs_claus:"🤶",muscle:"💪",mushroom:"🍄",musical_keyboard:"🎹",musical_note:"🎵",musical_score:"🎼",mute:"🔇",nail_care:"💅",name_badge:"📛",national_park:"🏞",nauseated_face:"🤢",necktie:"👔",negative_squared_cross_mark:"❎",nerd_face:"🤓",neutral_face:"😐",new:"🆕",new_moon:"🌑",new_moon_with_face:"🌚",newspaper:"📰",newspaper_roll:"🗞",next_track_button:"⏭",ng:"🆖",no_good_man:"🙅‍♂️",no_good_woman:"🙅",night_with_stars:"🌃",no_bell:"🔕",no_bicycles:"🚳",no_entry:"⛔️",no_entry_sign:"🚫",no_mobile_phones:"📵",no_mouth:"😶",no_pedestrians:"🚷",no_smoking:"🚭","non-potable_water":"🚱",nose:"👃",notebook:"📓",notebook_with_decorative_cover:"📔",notes:"🎶",nut_and_bolt:"🔩",o:"⭕️",o2:"🅾️",ocean:"🌊",octopus:"🐙",oden:"🍢",office:"🏢",oil_drum:"🛢",ok:"🆗",ok_hand:"👌",ok_man:"🙆‍♂️",ok_woman:"🙆",old_key:"🗝",older_man:"👴",older_woman:"👵",om:"🕉",on:"🔛",oncoming_automobile:"🚘",oncoming_bus:"🚍",oncoming_police_car:"🚔",oncoming_taxi:"🚖",open_file_folder:"📂",open_hands:"👐",open_mouth:"😮",open_umbrella:"☂️",ophiuchus:"⛎",orange_book:"📙",orthodox_cross:"☦️",outbox_tray:"📤",owl:"🦉",ox:"🐂",package:"📦",page_facing_up:"📄",page_with_curl:"📃",pager:"📟",paintbrush:"🖌",palm_tree:"🌴",pancakes:"🥞",panda_face:"🐼",paperclip:"📎",paperclips:"🖇",parasol_on_ground:"⛱",parking:"🅿️",part_alternation_mark:"〽️",partly_sunny:"⛅️",passenger_ship:"🛳",passport_control:"🛂",pause_button:"⏸",peace_symbol:"☮️",peach:"🍑",peanuts:"🥜",pear:"🍐",pen:"🖊",pencil2:"✏️",penguin:"🐧",pensive:"😔",performing_arts:"🎭",persevere:"😣",person_fencing:"🤺",pouting_woman:"🙎",phone:"☎️",pick:"⛏",pig:"🐷",pig2:"🐖",pig_nose:"🐽",pill:"💊",pineapple:"🍍",ping_pong:"🏓",pisces:"♓️",pizza:"🍕",place_of_worship:"🛐",plate_with_cutlery:"🍽",play_or_pause_button:"⏯",point_down:"👇",point_left:"👈",point_right:"👉",point_up:"☝️",point_up_2:"👆",police_car:"🚓",policewoman:"👮‍♀️",poodle:"🐩",popcorn:"🍿",post_office:"🏣",postal_horn:"📯",postbox:"📮",potable_water:"🚰",potato:"🥔",pouch:"👝",poultry_leg:"🍗",pound:"💷",rage:"😡",pouting_cat:"😾",pouting_man:"🙎‍♂️",pray:"🙏",prayer_beads:"📿",pregnant_woman:"🤰",previous_track_button:"⏮",prince:"🤴",princess:"👸",printer:"🖨",purple_heart:"💜",purse:"👛",pushpin:"📌",put_litter_in_its_place:"🚮",question:"❓",rabbit:"🐰",rabbit2:"🐇",racehorse:"🐎",racing_car:"🏎",radio:"📻",radio_button:"🔘",radioactive:"☢️",railway_car:"🚃",railway_track:"🛤",rainbow:"🌈",rainbow_flag:"🏳️‍🌈",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐",raised_hands:"🙌",raising_hand_woman:"🙋",raising_hand_man:"🙋‍♂️",ram:"🐏",ramen:"🍜",rat:"🐀",record_button:"⏺",recycle:"♻️",red_circle:"🔴",registered:"®️",relaxed:"☺️",relieved:"😌",reminder_ribbon:"🎗",repeat:"🔁",repeat_one:"🔂",rescue_worker_helmet:"⛑",restroom:"🚻",revolving_hearts:"💞",rewind:"⏪",rhinoceros:"🦏",ribbon:"🎀",rice:"🍚",rice_ball:"🍙",rice_cracker:"🍘",rice_scene:"🎑",right_anger_bubble:"🗯",ring:"💍",robot:"🤖",rocket:"🚀",rofl:"🤣",roll_eyes:"🙄",roller_coaster:"🎢",rooster:"🐓",rose:"🌹",rosette:"🏵",rotating_light:"🚨",round_pushpin:"📍",rowing_man:"🚣",rowing_woman:"🚣‍♀️",rugby_football:"🏉",running_man:"🏃",running_shirt_with_sash:"🎽",running_woman:"🏃‍♀️",sa:"🈂️",sagittarius:"♐️",sake:"🍶",sandal:"👡",santa:"🎅",satellite:"📡",saxophone:"🎷",school:"🏫",school_satchel:"🎒",scissors:"✂️",scorpion:"🦂",scorpius:"♏️",scream:"😱",scream_cat:"🙀",scroll:"📜",seat:"💺",secret:"㊙️",see_no_evil:"🙈",seedling:"🌱",selfie:"🤳",shallow_pan_of_food:"🥘",shamrock:"☘️",shark:"🦈",shaved_ice:"🍧",sheep:"🐑",shell:"🐚",shield:"🛡",shinto_shrine:"⛩",ship:"🚢",shirt:"👕",shopping:"🛍",shopping_cart:"🛒",shower:"🚿",shrimp:"🦐",signal_strength:"📶",six_pointed_star:"🔯",ski:"🎿",skier:"⛷",skull:"💀",skull_and_crossbones:"☠️",sleeping:"😴",sleeping_bed:"🛌",sleepy:"😪",slightly_frowning_face:"🙁",slightly_smiling_face:"🙂",slot_machine:"🎰",small_airplane:"🛩",small_blue_diamond:"🔹",small_orange_diamond:"🔸",small_red_triangle:"🔺",small_red_triangle_down:"🔻",smile:"😄",smile_cat:"😸",smiley:"😃",smiley_cat:"😺",smiling_imp:"😈",smirk:"😏",smirk_cat:"😼",smoking:"🚬",snail:"🐌",snake:"🐍",sneezing_face:"🤧",snowboarder:"🏂",snowflake:"❄️",snowman:"⛄️",snowman_with_snow:"☃️",sob:"😭",soccer:"⚽️",soon:"🔜",sos:"🆘",sound:"🔉",space_invader:"👾",spades:"♠️",spaghetti:"🍝",sparkle:"❇️",sparkler:"🎇",sparkles:"✨",sparkling_heart:"💖",speak_no_evil:"🙊",speaker:"🔈",speaking_head:"🗣",speech_balloon:"💬",speedboat:"🚤",spider:"🕷",spider_web:"🕸",spiral_calendar:"🗓",spiral_notepad:"🗒",spoon:"🥄",squid:"🦑",stadium:"🏟",star:"⭐️",star2:"🌟",star_and_crescent:"☪️",star_of_david:"✡️",stars:"🌠",station:"🚉",statue_of_liberty:"🗽",steam_locomotive:"🚂",stew:"🍲",stop_button:"⏹",stop_sign:"🛑",stopwatch:"⏱",straight_ruler:"📏",strawberry:"🍓",stuck_out_tongue:"😛",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue_winking_eye:"😜",studio_microphone:"🎙",stuffed_flatbread:"🥙",sun_behind_large_cloud:"🌥",sun_behind_rain_cloud:"🌦",sun_behind_small_cloud:"🌤",sun_with_face:"🌞",sunflower:"🌻",sunglasses:"😎",sunny:"☀️",sunrise:"🌅",sunrise_over_mountains:"🌄",surfing_man:"🏄",surfing_woman:"🏄‍♀️",sushi:"🍣",suspension_railway:"🚟",sweat:"😓",sweat_drops:"💦",sweat_smile:"😅",sweet_potato:"🍠",swimming_man:"🏊",swimming_woman:"🏊‍♀️",symbols:"🔣",synagogue:"🕍",syringe:"💉",taco:"🌮",tada:"🎉",tanabata_tree:"🎋",taurus:"♉️",taxi:"🚕",tea:"🍵",telephone_receiver:"📞",telescope:"🔭",tennis:"🎾",tent:"⛺️",thermometer:"🌡",thinking:"🤔",thought_balloon:"💭",ticket:"🎫",tickets:"🎟",tiger:"🐯",tiger2:"🐅",timer_clock:"⏲",tipping_hand_man:"💁‍♂️",tired_face:"😫",tm:"™️",toilet:"🚽",tokyo_tower:"🗼",tomato:"🍅",tongue:"👅",top:"🔝",tophat:"🎩",tornado:"🌪",trackball:"🖲",tractor:"🚜",traffic_light:"🚥",train:"🚋",train2:"🚆",tram:"🚊",triangular_flag_on_post:"🚩",triangular_ruler:"📐",trident:"🔱",triumph:"😤",trolleybus:"🚎",trophy:"🏆",tropical_drink:"🍹",tropical_fish:"🐠",truck:"🚚",trumpet:"🎺",tulip:"🌷",tumbler_glass:"🥃",turkey:"🦃",turtle:"🐢",tv:"📺",twisted_rightwards_arrows:"🔀",two_hearts:"💕",two_men_holding_hands:"👬",two_women_holding_hands:"👭",u5272:"🈹",u5408:"🈴",u55b6:"🈺",u6307:"🈯️",u6708:"🈷️",u6709:"🈶",u6e80:"🈵",u7121:"🈚️",u7533:"🈸",u7981:"🈲",u7a7a:"🈳",umbrella:"☔️",unamused:"😒",underage:"🔞",unicorn:"🦄",unlock:"🔓",up:"🆙",upside_down_face:"🙃",v:"✌️",vertical_traffic_light:"🚦",vhs:"📼",vibration_mode:"📳",video_camera:"📹",video_game:"🎮",violin:"🎻",virgo:"♍️",volcano:"🌋",volleyball:"🏐",vs:"🆚",vulcan_salute:"🖖",walking_man:"🚶",walking_woman:"🚶‍♀️",waning_crescent_moon:"🌘",waning_gibbous_moon:"🌖",warning:"⚠️",wastebasket:"🗑",watch:"⌚️",water_buffalo:"🐃",watermelon:"🍉",wave:"👋",wavy_dash:"〰️",waxing_crescent_moon:"🌒",wc:"🚾",weary:"😩",wedding:"💒",weight_lifting_man:"🏋️",weight_lifting_woman:"🏋️‍♀️",whale:"🐳",whale2:"🐋",wheel_of_dharma:"☸️",wheelchair:"♿️",white_check_mark:"✅",white_circle:"⚪️",white_flag:"🏳️",white_flower:"💮",white_large_square:"⬜️",white_medium_small_square:"◽️",white_medium_square:"◻️",white_small_square:"▫️",white_square_button:"🔳",wilted_flower:"🥀",wind_chime:"🎐",wind_face:"🌬",wine_glass:"🍷",wink:"😉",wolf:"🐺",woman:"👩",woman_artist:"👩‍🎨",woman_astronaut:"👩‍🚀",woman_cartwheeling:"🤸‍♀️",woman_cook:"👩‍🍳",woman_facepalming:"🤦‍♀️",woman_factory_worker:"👩‍🏭",woman_farmer:"👩‍🌾",woman_firefighter:"👩‍🚒",woman_health_worker:"👩‍⚕️",woman_judge:"👩‍⚖️",woman_juggling:"🤹‍♀️",woman_mechanic:"👩‍🔧",woman_office_worker:"👩‍💼",woman_pilot:"👩‍✈️",woman_playing_handball:"🤾‍♀️",woman_playing_water_polo:"🤽‍♀️",woman_scientist:"👩‍🔬",woman_shrugging:"🤷‍♀️",woman_singer:"👩‍🎤",woman_student:"👩‍🎓",woman_teacher:"👩‍🏫",woman_technologist:"👩‍💻",woman_with_turban:"👳‍♀️",womans_clothes:"👚",womans_hat:"👒",women_wrestling:"🤼‍♀️",womens:"🚺",world_map:"🗺",worried:"😟",wrench:"🔧",writing_hand:"✍️",x:"❌",yellow_heart:"💛",yen:"💴",yin_yang:"☯️",yum:"😋",zap:"⚡️",zipper_mouth_face:"🤐",zzz:"💤",octocat:':octocat:',showdown:"S"},t.Converter=function(e){"use strict";var n={},l=[],u=[],c={},d=r,h={parsed:{},raw:"",format:""};function p(e,n){if(n=n||null,t.helper.isString(e)){if(n=e=t.helper.stdExtName(e),t.extensions[e])return console.warn("DEPRECATION WARNING: "+e+" is an old extension that uses a deprecated loading method.Please inform the developer that the extension should be updated!"),void function(e,n){"function"==typeof e&&(e=e(new t.Converter));t.helper.isArray(e)||(e=[e]);var a=s(e,n);if(!a.valid)throw Error(a.error);for(var i=0;i[ \t]+¨NBSP;<"),!n){if(!window||!window.document)throw new Error("HTMLParser is undefined. If in a webworker or nodejs environment, you need to provide a WHATWG DOM and HTML such as JSDOM");n=window.document}var a=n.createElement("div");a.innerHTML=e;var i={preList:function(e){for(var n=e.querySelectorAll("pre"),a=[],i=0;i'}else a.push(n[i].innerHTML),n[i].innerHTML="",n[i].setAttribute("prenum",i.toString());return a}(a)};!function e(t){for(var n=0;n? ?(['"].*['"])?\)$/m)>-1)o="";else if(!o){if(r||(r=i.toLowerCase().replace(/ ?\n/g," ")),o="#"+r,t.helper.isUndefined(a.gUrls[r]))return e;o=a.gUrls[r],t.helper.isUndefined(a.gTitles[r])||(u=a.gTitles[r])}var c='
"};return e=(e=(e=(e=(e=a.converter._dispatch("anchors.before",e,n,a)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,i)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]??(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i)).replace(/\[([^\[\]]+)]()()()()()/g,i),n.ghMentions&&(e=e.replace(/(^|\s)(\\)?(@([a-z\d]+(?:[a-z\d.-]+?[a-z\d]+)*))/gim,function(e,a,i,r,o){if("\\"===i)return a+r;if(!t.helper.isString(n.ghMentionsLink))throw new Error("ghMentionsLink option must be a string");var s=n.ghMentionsLink.replace(/\{u}/g,o),l="";return n.openLinksInNewWindow&&(l=' rel="noopener noreferrer" target="¨E95Eblank"'),a+'"+r+""})),e=a.converter._dispatch("anchors.after",e,n,a)});var c=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+?\.[^'">\s]+?)()(\1)?(?=\s|$)(?!["<>])/gi,d=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]])?(\1)?(?=\s|$)(?!["<>])/gi,h=/()<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>()/gi,p=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,f=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,m=function(e){"use strict";return function(n,a,i,r,o,s,l){var u=i=i.replace(t.helper.regexes.asteriskDashAndColon,t.helper.escapeCharactersCallback),c="",d="",h=a||"",p=l||"";return/^www\./i.test(i)&&(i=i.replace(/^www\./i,"http://www.")),e.excludeTrailingPunctuationFromURLs&&s&&(c=s),e.openLinksInNewWindow&&(d=' rel="noopener noreferrer" target="¨E95Eblank"'),h+'"+u+""+c+p}},g=function(e,n){"use strict";return function(a,i,r){var o="mailto:";return i=i||"",r=t.subParser("unescapeSpecialChars")(r,e,n),e.encodeEmails?(o=t.helper.encodeEmailAddress(o+r),r=t.helper.encodeEmailAddress(r)):o+=r,i+''+r+""}};t.subParser("autoLinks",function(e,t,n){"use strict";return e=(e=(e=n.converter._dispatch("autoLinks.before",e,t,n)).replace(h,m(t))).replace(f,g(t,n)),e=n.converter._dispatch("autoLinks.after",e,t,n)}),t.subParser("simplifiedAutoLinks",function(e,t,n){"use strict";return t.simplifiedAutoLink?(e=n.converter._dispatch("simplifiedAutoLinks.before",e,t,n),e=(e=t.excludeTrailingPunctuationFromURLs?e.replace(d,m(t)):e.replace(c,m(t))).replace(p,g(t,n)),e=n.converter._dispatch("simplifiedAutoLinks.after",e,t,n)):e}),t.subParser("blockGamut",function(e,n,a){"use strict";return e=a.converter._dispatch("blockGamut.before",e,n,a),e=t.subParser("blockQuotes")(e,n,a),e=t.subParser("headers")(e,n,a),e=t.subParser("horizontalRule")(e,n,a),e=t.subParser("lists")(e,n,a),e=t.subParser("codeBlocks")(e,n,a),e=t.subParser("tables")(e,n,a),e=t.subParser("hashHTMLBlocks")(e,n,a),e=t.subParser("paragraphs")(e,n,a),e=a.converter._dispatch("blockGamut.after",e,n,a)}),t.subParser("blockQuotes",function(e,n,a){"use strict";e=a.converter._dispatch("blockQuotes.before",e,n,a),e+="\n\n";var i=/(^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+/gm;return n.splitAdjacentBlockquotes&&(i=/^ {0,3}>[\s\S]*?(?:\n\n)/gm),e=e.replace(i,function(e){return e=(e=(e=e.replace(/^[ \t]*>[ \t]?/gm,"")).replace(/¨0/g,"")).replace(/^[ \t]+$/gm,""),e=t.subParser("githubCodeBlocks")(e,n,a),e=(e=(e=t.subParser("blockGamut")(e,n,a)).replace(/(^|\n)/g,"$1 ")).replace(/(\s*
[^\r]+?<\/pre>)/gm,function(e,t){var n=t;return n=(n=n.replace(/^  /gm,"¨0")).replace(/¨0/g,"")}),t.subParser("hashBlock")("
\n"+e+"\n
",n,a)}),e=a.converter._dispatch("blockQuotes.after",e,n,a)}),t.subParser("codeBlocks",function(e,n,a){"use strict";e=a.converter._dispatch("codeBlocks.before",e,n,a);return e=(e=(e+="¨0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g,function(e,i,r){var o=i,s=r,l="\n";return o=t.subParser("outdent")(o,n,a),o=t.subParser("encodeCode")(o,n,a),o=(o=(o=t.subParser("detab")(o,n,a)).replace(/^\n+/g,"")).replace(/\n+$/g,""),n.omitExtraWLInCodeBlocks&&(l=""),o="
"+o+l+"
",t.subParser("hashBlock")(o,n,a)+s})).replace(/¨0/,""),e=a.converter._dispatch("codeBlocks.after",e,n,a)}),t.subParser("codeSpans",function(e,n,a){"use strict";return void 0===(e=a.converter._dispatch("codeSpans.before",e,n,a))&&(e=""),e=e.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,function(e,i,r,o){var s=o;return s=(s=s.replace(/^([ \t]*)/g,"")).replace(/[ \t]*$/g,""),s=i+""+(s=t.subParser("encodeCode")(s,n,a))+"",s=t.subParser("hashHTMLSpans")(s,n,a)}),e=a.converter._dispatch("codeSpans.after",e,n,a)}),t.subParser("completeHTMLDocument",function(e,t,n){"use strict";if(!t.completeHTMLDocument)return e;e=n.converter._dispatch("completeHTMLDocument.before",e,t,n);var a="html",i="\n",r="",o='\n',s="",l="";for(var u in void 0!==n.metadata.parsed.doctype&&(i="\n","html"!==(a=n.metadata.parsed.doctype.toString().toLowerCase())&&"html5"!==a||(o='')),n.metadata.parsed)if(n.metadata.parsed.hasOwnProperty(u))switch(u.toLowerCase()){case"doctype":break;case"title":r=""+n.metadata.parsed.title+"\n";break;case"charset":o="html"===a||"html5"===a?'\n':'\n';break;case"language":case"lang":s=' lang="'+n.metadata.parsed[u]+'"',l+='\n';break;default:l+='\n'}return e=i+"\n\n"+r+o+l+"\n\n"+e.trim()+"\n\n",e=n.converter._dispatch("completeHTMLDocument.after",e,t,n)}),t.subParser("detab",function(e,t,n){"use strict";return e=(e=(e=(e=(e=(e=n.converter._dispatch("detab.before",e,t,n)).replace(/\t(?=\t)/g," ")).replace(/\t/g,"¨A¨B")).replace(/¨B(.+?)¨A/g,function(e,t){for(var n=t,a=4-n.length%4,i=0;i/g,">"),e=n.converter._dispatch("encodeAmpsAndAngles.after",e,t,n)}),t.subParser("encodeBackslashEscapes",function(e,n,a){"use strict";return e=(e=(e=a.converter._dispatch("encodeBackslashEscapes.before",e,n,a)).replace(/\\(\\)/g,t.helper.escapeCharactersCallback)).replace(/\\([`*_{}\[\]()>#+.!~=|:-])/g,t.helper.escapeCharactersCallback),e=a.converter._dispatch("encodeBackslashEscapes.after",e,n,a)}),t.subParser("encodeCode",function(e,n,a){"use strict";return e=(e=a.converter._dispatch("encodeCode.before",e,n,a)).replace(/&/g,"&").replace(//g,">").replace(/([*_{}\[\]\\=~-])/g,t.helper.escapeCharactersCallback),e=a.converter._dispatch("encodeCode.after",e,n,a)}),t.subParser("escapeSpecialCharsWithinTagAttributes",function(e,n,a){"use strict";return e=(e=(e=a.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",e,n,a)).replace(/<\/?[a-z\d_:-]+(?:[\s]+[\s\S]+?)?>/gi,function(e){return e.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,t.helper.escapeCharactersCallback)})).replace(/-]|-[^>])(?:[^-]|-[^-])*)--)>/gi,function(e){return e.replace(/([\\`*_~=|])/g,t.helper.escapeCharactersCallback)}),e=a.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",e,n,a)}),t.subParser("githubCodeBlocks",function(e,n,a){"use strict";return n.ghCodeBlocks?(e=a.converter._dispatch("githubCodeBlocks.before",e,n,a),e=(e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*)\n([\s\S]*?)\n(?: {0,3})\1/g,function(e,i,r,o){var s=n.omitExtraWLInCodeBlocks?"":"\n";return o=t.subParser("encodeCode")(o,n,a),o="
"+(o=(o=(o=t.subParser("detab")(o,n,a)).replace(/^\n+/g,"")).replace(/\n+$/g,""))+s+"
",o=t.subParser("hashBlock")(o,n,a),"\n\n¨G"+(a.ghCodeBlocks.push({text:e,codeblock:o})-1)+"G\n\n"})).replace(/¨0/,""),a.converter._dispatch("githubCodeBlocks.after",e,n,a)):e}),t.subParser("hashBlock",function(e,t,n){"use strict";return e=(e=n.converter._dispatch("hashBlock.before",e,t,n)).replace(/(^\n+|\n+$)/g,""),e="\n\n¨K"+(n.gHtmlBlocks.push(e)-1)+"K\n\n",e=n.converter._dispatch("hashBlock.after",e,t,n)}),t.subParser("hashCodeTags",function(e,n,a){"use strict";e=a.converter._dispatch("hashCodeTags.before",e,n,a);return e=t.helper.replaceRecursiveRegExp(e,function(e,i,r,o){var s=r+t.subParser("encodeCode")(i,n,a)+o;return"¨C"+(a.gHtmlSpans.push(s)-1)+"C"},"]*>","","gim"),e=a.converter._dispatch("hashCodeTags.after",e,n,a)}),t.subParser("hashElement",function(e,t,n){"use strict";return function(e,t){var a=t;return a=(a=(a=a.replace(/\n\n/g,"\n")).replace(/^\n/,"")).replace(/\n+$/g,""),a="\n\n¨K"+(n.gHtmlBlocks.push(a)-1)+"K\n\n"}}),t.subParser("hashHTMLBlocks",function(e,n,a){"use strict";e=a.converter._dispatch("hashHTMLBlocks.before",e,n,a);var i=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],r=function(e,t,n,i){var r=e;return-1!==n.search(/\bmarkdown\b/)&&(r=n+a.converter.makeHtml(t)+i),"\n\n¨K"+(a.gHtmlBlocks.push(r)-1)+"K\n\n"};n.backslashEscapesHTMLTags&&(e=e.replace(/\\<(\/?[^>]+?)>/g,function(e,t){return"<"+t+">"}));for(var o=0;o]*>)","im"),u="<"+i[o]+"\\b[^>]*>",c="";-1!==(s=t.helper.regexIndexOf(e,l));){var d=t.helper.splitAtIndex(e,s),h=t.helper.replaceRecursiveRegExp(d[1],r,u,c,"im");if(h===d[1])break;e=d[0].concat(h)}return e=e.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,t.subParser("hashElement")(e,n,a)),e=(e=t.helper.replaceRecursiveRegExp(e,function(e){return"\n\n¨K"+(a.gHtmlBlocks.push(e)-1)+"K\n\n"},"^ {0,3}\x3c!--","--\x3e","gm")).replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,t.subParser("hashElement")(e,n,a)),e=a.converter._dispatch("hashHTMLBlocks.after",e,n,a)}),t.subParser("hashHTMLSpans",function(e,t,n){"use strict";function a(e){return"¨C"+(n.gHtmlSpans.push(e)-1)+"C"}return e=(e=(e=(e=(e=n.converter._dispatch("hashHTMLSpans.before",e,t,n)).replace(/<[^>]+?\/>/gi,function(e){return a(e)})).replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,function(e){return a(e)})).replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,function(e){return a(e)})).replace(/<[^>]+?>/gi,function(e){return a(e)}),e=n.converter._dispatch("hashHTMLSpans.after",e,t,n)}),t.subParser("unhashHTMLSpans",function(e,t,n){"use strict";e=n.converter._dispatch("unhashHTMLSpans.before",e,t,n);for(var a=0;a]*>\\s*]*>","^ {0,3}\\s*
","gim"),e=a.converter._dispatch("hashPreCodeTags.after",e,n,a)}),t.subParser("headers",function(e,n,a){"use strict";e=a.converter._dispatch("headers.before",e,n,a);var i=isNaN(parseInt(n.headerLevelStart))?1:parseInt(n.headerLevelStart),r=n.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,o=n.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;e=(e=e.replace(r,function(e,r){var o=t.subParser("spanGamut")(r,n,a),s=n.noHeaderId?"":' id="'+l(r)+'"',u=""+o+"";return t.subParser("hashBlock")(u,n,a)})).replace(o,function(e,r){var o=t.subParser("spanGamut")(r,n,a),s=n.noHeaderId?"":' id="'+l(r)+'"',u=i+1,c=""+o+"";return t.subParser("hashBlock")(c,n,a)});var s=n.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm;function l(e){var i,r;if(n.customizedHeaderId){var o=e.match(/\{([^{]+?)}\s*$/);o&&o[1]&&(e=o[1])}return i=e,r=t.helper.isString(n.prefixHeaderId)?n.prefixHeaderId:!0===n.prefixHeaderId?"section-":"",n.rawPrefixHeaderId||(i=r+i),i=n.ghCompatibleHeaderId?i.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase():n.rawHeaderId?i.replace(/ /g,"-").replace(/&/g,"&").replace(/¨T/g,"¨").replace(/¨D/g,"$").replace(/["']/g,"-").toLowerCase():i.replace(/[^\w]/g,"").toLowerCase(),n.rawPrefixHeaderId&&(i=r+i),a.hashLinkCounts[i]?i=i+"-"+a.hashLinkCounts[i]++:a.hashLinkCounts[i]=1,i}return e=e.replace(s,function(e,r,o){var s=o;n.customizedHeaderId&&(s=o.replace(/\s?\{([^{]+?)}\s*$/,""));var u=t.subParser("spanGamut")(s,n,a),c=n.noHeaderId?"":' id="'+l(o)+'"',d=i-1+r.length,h=""+u+"";return t.subParser("hashBlock")(h,n,a)}),e=a.converter._dispatch("headers.after",e,n,a)}),t.subParser("horizontalRule",function(e,n,a){"use strict";e=a.converter._dispatch("horizontalRule.before",e,n,a);var i=t.subParser("hashBlock")("
",n,a);return e=(e=(e=e.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,i)).replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,i)).replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,i),e=a.converter._dispatch("horizontalRule.after",e,n,a)}),t.subParser("images",function(e,n,a){"use strict";function i(e,n,i,r,o,s,l,u){var c=a.gUrls,d=a.gTitles,h=a.gDimensions;if(i=i.toLowerCase(),u||(u=""),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)r="";else if(""===r||null===r){if(""!==i&&null!==i||(i=n.toLowerCase().replace(/ ?\n/g," ")),r="#"+i,t.helper.isUndefined(c[i]))return e;r=c[i],t.helper.isUndefined(d[i])||(u=d[i]),t.helper.isUndefined(h[i])||(o=h[i].width,s=h[i].height)}n=n.replace(/"/g,""").replace(t.helper.regexes.asteriskDashAndColon,t.helper.escapeCharactersCallback);var p=''+n+'"}return e=(e=(e=(e=(e=(e=a.converter._dispatch("images.before",e,n,a)).replace(/!\[([^\]]*?)] ?(?:\n *)?\[([\s\S]*?)]()()()()()/g,i)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,function(e,t,n,a,r,o,s,l){return i(e,t,n,a=a.replace(/\s/g,""),r,o,s,l)})).replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,i)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,i)).replace(/!\[([^\[\]]+)]()()()()()/g,i),e=a.converter._dispatch("images.after",e,n,a)}),t.subParser("italicsAndBold",function(e,t,n){"use strict";function a(e,t,n){return t+e+n}return e=n.converter._dispatch("italicsAndBold.before",e,t,n),e=t.literalMidWordUnderscores?(e=(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,function(e,t){return a(t,"","")})).replace(/\b__(\S[\s\S]*?)__\b/g,function(e,t){return a(t,"","")})).replace(/\b_(\S[\s\S]*?)_\b/g,function(e,t){return a(t,"","")}):(e=(e=e.replace(/___(\S[\s\S]*?)___/g,function(e,t){return/\S$/.test(t)?a(t,"",""):e})).replace(/__(\S[\s\S]*?)__/g,function(e,t){return/\S$/.test(t)?a(t,"",""):e})).replace(/_([^\s_][\s\S]*?)_/g,function(e,t){return/\S$/.test(t)?a(t,"",""):e}),e=t.literalMidWordAsterisks?(e=(e=e.replace(/([^*]|^)\B\*\*\*(\S[\s\S]*?)\*\*\*\B(?!\*)/g,function(e,t,n){return a(n,t+"","")})).replace(/([^*]|^)\B\*\*(\S[\s\S]*?)\*\*\B(?!\*)/g,function(e,t,n){return a(n,t+"","")})).replace(/([^*]|^)\B\*(\S[\s\S]*?)\*\B(?!\*)/g,function(e,t,n){return a(n,t+"","")}):(e=(e=e.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,function(e,t){return/\S$/.test(t)?a(t,"",""):e})).replace(/\*\*(\S[\s\S]*?)\*\*/g,function(e,t){return/\S$/.test(t)?a(t,"",""):e})).replace(/\*([^\s*][\s\S]*?)\*/g,function(e,t){return/\S$/.test(t)?a(t,"",""):e}),e=n.converter._dispatch("italicsAndBold.after",e,t,n)}),t.subParser("lists",function(e,n,a){"use strict";function i(e,i){a.gListLevel++,e=e.replace(/\n{2,}$/,"\n");var r=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,o=/\n[ \t]*\n(?!¨0)/.test(e+="¨0");return n.disableForced4SpacesIndentedSublists&&(r=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm),e=(e=e.replace(r,function(e,i,r,s,l,u,c){c=c&&""!==c.trim();var d=t.subParser("outdent")(l,n,a),h="";return u&&n.tasklists&&(h=' class="task-list-item" style="list-style-type: none;"',d=d.replace(/^[ \t]*\[(x|X| )?]/m,function(){var e='-1?(d=t.subParser("githubCodeBlocks")(d,n,a),d=t.subParser("blockGamut")(d,n,a)):(d=(d=t.subParser("lists")(d,n,a)).replace(/\n$/,""),d=(d=t.subParser("hashHTMLBlocks")(d,n,a)).replace(/\n\n+/g,"\n\n"),d=o?t.subParser("paragraphs")(d,n,a):t.subParser("spanGamut")(d,n,a)),d=""+(d=d.replace("¨A",""))+"\n"})).replace(/¨0/g,""),a.gListLevel--,i&&(e=e.replace(/\s+$/,"")),e}function r(e,t){if("ol"===t){var n=e.match(/^ *(\d+)\./);if(n&&"1"!==n[1])return' start="'+n[1]+'"'}return""}function o(e,t,a){var o=n.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,s=n.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,l="ul"===t?o:s,u="";if(-1!==e.search(l))!function n(c){var d=c.search(l),h=r(e,t);-1!==d?(u+="\n\n<"+t+h+">\n"+i(c.slice(0,d),!!a)+"\n",l="ul"===(t="ul"===t?"ol":"ul")?o:s,n(c.slice(d))):u+="\n\n<"+t+h+">\n"+i(c,!!a)+"\n"}(e);else{var c=r(e,t);u="\n\n<"+t+c+">\n"+i(e,!!a)+"\n"}return u}return e=a.converter._dispatch("lists.before",e,n,a),e+="¨0",e=(e=a.gListLevel?e.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,function(e,t,n){return o(t,n.search(/[*+-]/g)>-1?"ul":"ol",!0)}):e.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,function(e,t,n,a){return o(n,a.search(/[*+-]/g)>-1?"ul":"ol",!1)})).replace(/¨0/,""),e=a.converter._dispatch("lists.after",e,n,a)}),t.subParser("metadata",function(e,t,n){"use strict";if(!t.metadata)return e;function a(e){n.metadata.raw=e,(e=(e=e.replace(/&/g,"&").replace(/"/g,""")).replace(/\n {4}/g," ")).replace(/^([\S ]+): +([\s\S]+?)$/gm,function(e,t,a){return n.metadata.parsed[t]=a,""})}return e=(e=(e=(e=n.converter._dispatch("metadata.before",e,t,n)).replace(/^\s*«««+(\S*?)\n([\s\S]+?)\n»»»+\n/,function(e,t,n){return a(n),"¨M"})).replace(/^\s*---+(\S*?)\n([\s\S]+?)\n---+\n/,function(e,t,i){return t&&(n.metadata.format=t),a(i),"¨M"})).replace(/¨M/g,""),e=n.converter._dispatch("metadata.after",e,t,n)}),t.subParser("outdent",function(e,t,n){"use strict";return e=(e=(e=n.converter._dispatch("outdent.before",e,t,n)).replace(/^(\t|[ ]{1,4})/gm,"¨0")).replace(/¨0/g,""),e=n.converter._dispatch("outdent.after",e,t,n)}),t.subParser("paragraphs",function(e,n,a){"use strict";for(var i=(e=(e=(e=a.converter._dispatch("paragraphs.before",e,n,a)).replace(/^\n+/g,"")).replace(/\n+$/g,"")).split(/\n{2,}/g),r=[],o=i.length,s=0;s=0?r.push(l):l.search(/\S/)>=0&&(l=(l=t.subParser("spanGamut")(l,n,a)).replace(/^([ \t]*)/g,"

"),l+="

",r.push(l))}for(o=r.length,s=0;s]*>\s*]*>/.test(c)&&(d=!0)}r[s]=c}return e=(e=(e=r.join("\n")).replace(/^\n+/g,"")).replace(/\n+$/g,""),a.converter._dispatch("paragraphs.after",e,n,a)}),t.subParser("runExtension",function(e,t,n,a){"use strict";if(e.filter)t=e.filter(t,a.converter,n);else if(e.regex){var i=e.regex;i instanceof RegExp||(i=new RegExp(i,"g")),t=t.replace(i,e.replace)}return t}),t.subParser("spanGamut",function(e,n,a){"use strict";return e=a.converter._dispatch("spanGamut.before",e,n,a),e=t.subParser("codeSpans")(e,n,a),e=t.subParser("escapeSpecialCharsWithinTagAttributes")(e,n,a),e=t.subParser("encodeBackslashEscapes")(e,n,a),e=t.subParser("images")(e,n,a),e=t.subParser("anchors")(e,n,a),e=t.subParser("autoLinks")(e,n,a),e=t.subParser("simplifiedAutoLinks")(e,n,a),e=t.subParser("emoji")(e,n,a),e=t.subParser("underline")(e,n,a),e=t.subParser("italicsAndBold")(e,n,a),e=t.subParser("strikethrough")(e,n,a),e=t.subParser("ellipsis")(e,n,a),e=t.subParser("hashHTMLSpans")(e,n,a),e=t.subParser("encodeAmpsAndAngles")(e,n,a),n.simpleLineBreaks?/\n\n¨K/.test(e)||(e=e.replace(/\n+/g,"
\n")):e=e.replace(/ +\n/g,"
\n"),e=a.converter._dispatch("spanGamut.after",e,n,a)}),t.subParser("strikethrough",function(e,n,a){"use strict";return n.strikethrough&&(e=(e=a.converter._dispatch("strikethrough.before",e,n,a)).replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,function(e,i){return function(e){return n.simplifiedAutoLink&&(e=t.subParser("simplifiedAutoLinks")(e,n,a)),""+e+""}(i)}),e=a.converter._dispatch("strikethrough.after",e,n,a)),e}),t.subParser("stripLinkDefinitions",function(e,n,a){"use strict";var i=function(i,r,o,s,l,u,c){return r=r.toLowerCase(),e.toLowerCase().split(r).length-1<2?i:(o.match(/^data:.+?\/.+?;base64,/)?a.gUrls[r]=o.replace(/\s/g,""):a.gUrls[r]=t.subParser("encodeAmpsAndAngles")(o,n,a),u?u+c:(c&&(a.gTitles[r]=c.replace(/"|'/g,""")),n.parseImgDimensions&&s&&l&&(a.gDimensions[r]={width:s,height:l}),""))};return e=(e=(e=(e+="¨0").replace(/^ {0,3}\[([^\]]+)]:[ \t]*\n?[ \t]*?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n\n|(?=¨0)|(?=\n\[))/gm,i)).replace(/^ {0,3}\[([^\]]+)]:[ \t]*\n?[ \t]*\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm,i)).replace(/¨0/,"")}),t.subParser("tables",function(e,n,a){"use strict";if(!n.tables)return e;function i(e){return/^:[ \t]*--*$/.test(e)?' style="text-align:left;"':/^--*[ \t]*:[ \t]*$/.test(e)?' style="text-align:right;"':/^:[ \t]*--*[ \t]*:$/.test(e)?' style="text-align:center;"':""}function r(e,i){var r="";return e=e.trim(),(n.tablesHeaderId||n.tableHeaderId)&&(r=' id="'+e.replace(/ /g,"_").toLowerCase()+'"'),""+(e=t.subParser("spanGamut")(e,n,a))+"\n"}function o(e,i){return""+t.subParser("spanGamut")(e,n,a)+"\n"}function s(e){var s,l=e.split("\n");for(s=0;s\n\n\n",i=0;i\n";for(var r=0;r\n"}return n+"\n\n"}(h,f)}return e=(e=(e=(e=a.converter._dispatch("tables.before",e,n,a)).replace(/\\(\|)/g,t.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,s)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,s),e=a.converter._dispatch("tables.after",e,n,a)}),t.subParser("underline",function(e,n,a){"use strict";return n.underline?(e=a.converter._dispatch("underline.before",e,n,a),e=(e=n.literalMidWordUnderscores?(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,function(e,t){return""+t+""})).replace(/\b__(\S[\s\S]*?)__\b/g,function(e,t){return""+t+""}):(e=e.replace(/___(\S[\s\S]*?)___/g,function(e,t){return/\S$/.test(t)?""+t+"":e})).replace(/__(\S[\s\S]*?)__/g,function(e,t){return/\S$/.test(t)?""+t+"":e})).replace(/(_)/g,t.helper.escapeCharactersCallback),e=a.converter._dispatch("underline.after",e,n,a)):e}),t.subParser("unescapeSpecialChars",function(e,t,n){"use strict";return e=(e=n.converter._dispatch("unescapeSpecialChars.before",e,t,n)).replace(/¨E(\d+)E/g,function(e,t){var n=parseInt(t);return String.fromCharCode(n)}),e=n.converter._dispatch("unescapeSpecialChars.after",e,t,n)}),t.subParser("makeMarkdown.blockquote",function(e,n){"use strict";var a="";if(e.hasChildNodes())for(var i=e.childNodes,r=i.length,o=0;o ")}),t.subParser("makeMarkdown.codeBlock",function(e,t){"use strict";var n=e.getAttribute("language"),a=e.getAttribute("precodenum");return"```"+n+"\n"+t.preList[a]+"\n```"}),t.subParser("makeMarkdown.codeSpan",function(e){"use strict";return"`"+e.innerHTML+"`"}),t.subParser("makeMarkdown.emphasis",function(e,n){"use strict";var a="";if(e.hasChildNodes()){a+="*";for(var i=e.childNodes,r=i.length,o=0;o",e.hasAttribute("width")&&e.hasAttribute("height")&&(t+=" ="+e.getAttribute("width")+"x"+e.getAttribute("height")),e.hasAttribute("title")&&(t+=' "'+e.getAttribute("title")+'"'),t+=")"),t}),t.subParser("makeMarkdown.links",function(e,n){"use strict";var a="";if(e.hasChildNodes()&&e.hasAttribute("href")){var i=e.childNodes,r=i.length;a="[";for(var o=0;o",e.hasAttribute("title")&&(a+=' "'+e.getAttribute("title")+'"'),a+=")"}return a}),t.subParser("makeMarkdown.list",function(e,n,a){"use strict";var i="";if(!e.hasChildNodes())return"";for(var r=e.childNodes,o=r.length,s=e.getAttribute("start")||1,l=0;l"+t.preList[n]+""}),t.subParser("makeMarkdown.strikethrough",function(e,n){"use strict";var a="";if(e.hasChildNodes()){a+="~~";for(var i=e.childNodes,r=i.length,o=0;otr>th"),l=e.querySelectorAll("tbody>tr");for(a=0;af&&(f=m)}for(a=0;a/g,"\\$1>")).replace(/^#/gm,"\\#")).replace(/^(\s*)([-=]{3,})(\s*)$/,"$1\\$2$3")).replace(/^( {0,3}\d+)\./gm,"$1\\.")).replace(/^( {0,3})([+-])/gm,"$1\\$2")).replace(/]([\s]*)\(/g,"\\]$1\\(")).replace(/^ {0,3}\[([\S \t]*?)]:/gm,"\\[$1]:")});"function"==typeof define&&define.amd?define(function(){"use strict";return t}):"undefined"!=typeof module&&module.exports?module.exports=t:this.showdown=t}.call(this);var NostrTools=(()=>{var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,i=(t,n)=>{for(var a in n)e(t,a,{get:n[a],enumerable:!0})},r={};function o(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function s(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function l(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}i(r,{Relay:()=>Ba,SimplePool:()=>$a,finalizeEvent:()=>Ft,fj:()=>Sa,generateSecretKey:()=>jt,getEventHash:()=>qt,getFilterLimit:()=>xa,getPublicKey:()=>Bt,kinds:()=>Vt,matchFilter:()=>ya,matchFilters:()=>wa,mergeFilters:()=>ka,nip04:()=>Ni,nip05:()=>Hr,nip10:()=>Xr,nip11:()=>to,nip13:()=>io,nip17:()=>lo,nip18:()=>ls,nip19:()=>Va,nip21:()=>hs,nip25:()=>gs,nip27:()=>bs,nip28:()=>Ss,nip30:()=>Ms,nip39:()=>Is,nip42:()=>La,nip44:()=>co,nip47:()=>js,nip54:()=>$s,nip57:()=>Hs,nip59:()=>uo,nip77:()=>Js,nip98:()=>pl,parseReferences:()=>zi,serializeEvent:()=>It,sortEvents:()=>ft,utils:()=>Et,validateEvent:()=>pt,verifiedSymbol:()=>dt,verifyEvent:()=>$t});var u="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0,c=e=>e instanceof Uint8Array,d=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),h=(e,t)=>e<<32-t|e>>>t;if(!(68===new Uint8Array(new Uint32Array([287454020]).buffer)[0]))throw new Error("Non little-endian hardware is not supported");function p(e){if("string"==typeof e&&(e=function(e){if("string"!=typeof e)throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array((new TextEncoder).encode(e))}(e)),!c(e))throw new Error("expected Uint8Array, got "+typeof e);return e}var f=class{clone(){return this._cloneInto()}};function m(e){const t=t=>e().update(p(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function g(e=32){if(u&&"function"==typeof u.getRandomValues)return u.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}var _=class extends f{constructor(e,t,n,a){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=d(this.buffer)}update(e){l(this);const{view:t,buffer:n,blockLen:a}=this,i=(e=p(e)).length;for(let r=0;ra-r&&(this.process(n,0),r=0);for(let e=r;e>i&r),s=Number(n&r),l=a?4:0,u=a?0:4;e.setUint32(t+l,o,a),e.setUint32(t+u,s,a)}(n,a-8,BigInt(8*this.length),i),this.process(n,0);const o=d(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=u/4,h=this.get();if(c>h.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;ee&t^~e&n,b=(e,t,n)=>e&t^e&n^t&n,y=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),w=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),k=new Uint32Array(64),x=class extends _{constructor(){super(64,32,8,!1),this.A=0|w[0],this.B=0|w[1],this.C=0|w[2],this.D=0|w[3],this.E=0|w[4],this.F=0|w[5],this.G=0|w[6],this.H=0|w[7]}get(){const{A:e,B:t,C:n,D:a,E:i,F:r,G:o,H:s}=this;return[e,t,n,a,i,r,o,s]}set(e,t,n,a,i,r,o,s){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|a,this.E=0|i,this.F=0|r,this.G=0|o,this.H=0|s}process(e,t){for(let n=0;n<16;n++,t+=4)k[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=k[e-15],n=k[e-2],a=h(t,7)^h(t,18)^t>>>3,i=h(n,17)^h(n,19)^n>>>10;k[e]=i+k[e-7]+a+k[e-16]|0}let{A:n,B:a,C:i,D:r,E:o,F:s,G:l,H:u}=this;for(let e=0;e<64;e++){const t=u+(h(o,6)^h(o,11)^h(o,25))+v(o,s,l)+y[e]+k[e]|0,c=(h(n,2)^h(n,13)^h(n,22))+b(n,a,i)|0;u=l,l=s,s=o,o=r+t|0,r=i,i=a,a=n,n=t+c|0}n=n+this.A|0,a=a+this.B|0,i=i+this.C|0,r=r+this.D|0,o=o+this.E|0,s=s+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(n,a,i,r,o,s,l,u)}roundClean(){k.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},S=m(()=>new x),C={};i(C,{bitGet:()=>H,bitLen:()=>U,bitMask:()=>G,bitSet:()=>W,bytesToHex:()=>L,bytesToNumberBE:()=>O,bytesToNumberLE:()=>I,concatBytes:()=>F,createHmacDrbg:()=>Q,ensureBytes:()=>B,equalBytes:()=>$,hexToBytes:()=>N,hexToNumber:()=>z,numberToBytesBE:()=>q,numberToBytesLE:()=>D,numberToHexUnpadded:()=>R,numberToVarBytesBE:()=>j,utf8ToBytes:()=>V,validateObject:()=>J});var T=BigInt(0),E=BigInt(1),P=BigInt(2),A=e=>e instanceof Uint8Array,M=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function L(e){if(!A(e))throw new Error("Uint8Array expected");let t="";for(let n=0;ne+t.length,0));let n=0;return e.forEach(e=>{if(!A(e))throw new Error("Uint8Array expected");t.set(e,n),n+=e.length}),t}function $(e,t){if(e.length!==t.length)return!1;for(let n=0;nT;e>>=E,t+=1);return t}function H(e,t){return e>>BigInt(t)&E}var W=(e,t,n)=>e|(n?E:T)<(P<new Uint8Array(e),K=e=>Uint8Array.from(e);function Q(e,t,n){if("number"!=typeof e||e<2)throw new Error("hashLen must be a number");if("number"!=typeof t||t<2)throw new Error("qByteLen must be a number");if("function"!=typeof n)throw new Error("hmacFn must be a function");let a=Y(e),i=Y(e),r=0;const o=()=>{a.fill(1),i.fill(0),r=0},s=(...e)=>n(i,a,...e),l=(e=Y())=>{i=s(K([0]),e),a=s(),0!==e.length&&(i=s(K([1]),e),a=s())},u=()=>{if(r++>=1e3)throw new Error("drbg: tried 1000 values");let e=0;const n=[];for(;e{let n;for(o(),l(e);!(n=t(u()));)l();return o(),n}}var Z={bigint:e=>"bigint"==typeof e,function:e=>"function"==typeof e,boolean:e=>"boolean"==typeof e,string:e=>"string"==typeof e,stringOrUint8Array:e=>"string"==typeof e||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>"function"==typeof e&&Number.isSafeInteger(e.outputLen)};function J(e,t,n={}){const a=(t,n,a)=>{const i=Z[n];if("function"!=typeof i)throw new Error(`Invalid validator "${n}", expected function`);const r=e[t];if(!(a&&void 0===r||i(r,e)))throw new Error(`Invalid param ${String(t)}=${r} (${typeof r}), expected ${n}`)};for(const[e,n]of Object.entries(t))a(e,n,!1);for(const[e,t]of Object.entries(n))a(e,t,!0);return e}var X=BigInt(0),ee=BigInt(1),te=BigInt(2),ne=BigInt(3),ae=BigInt(4),ie=BigInt(5),re=BigInt(8);BigInt(9),BigInt(16);function oe(e,t){const n=e%t;return n>=X?n:t+n}function se(e,t,n){if(n<=X||t 0");if(n===ee)return X;let a=ee;for(;t>X;)t&ee&&(a=a*e%n),e=e*e%n,t>>=ee;return a}function le(e,t,n){let a=e;for(;t-- >X;)a*=a,a%=n;return a}function ue(e,t){if(e===X||t<=X)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let n=oe(e,t),a=t,i=X,r=ee,o=ee,s=X;for(;n!==X;){const e=a/n,t=a%n,l=i-o*e,u=r-s*e;a=n,n=t,i=o,r=s,o=l,s=u}if(a!==ee)throw new Error("invert: does not exist");return oe(i,t)}function ce(e){if(e%ae===ne){const t=(e+ee)/ae;return function(e,n){const a=e.pow(n,t);if(!e.eql(e.sqr(a),n))throw new Error("Cannot find square root");return a}}if(e%re===ie){const t=(e-ie)/re;return function(e,n){const a=e.mul(n,te),i=e.pow(a,t),r=e.mul(n,i),o=e.mul(e.mul(r,te),i),s=e.mul(r,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),n))throw new Error("Cannot find square root");return s}}return function(e){const t=(e-ee)/te;let n,a,i;for(n=e-ee,a=0;n%te===X;n/=te,a++);for(i=te;i(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"})),J(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...he(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var{bytesToNumberBE:ve,hexToBytes:be}=C,ye={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(e){const{Err:t}=ye;if(e.length<2||2!==e[0])throw new t("Invalid signature integer tag");const n=e[1],a=e.subarray(2,n+2);if(!n||a.length!==n)throw new t("Invalid signature integer: wrong length");if(128&a[0])throw new t("Invalid signature integer: negative");if(0===a[0]&&!(128&a[1]))throw new t("Invalid signature integer: unnecessary leading zero");return{d:ve(a),l:e.subarray(n+2)}},toSig(e){const{Err:t}=ye,n="string"==typeof e?be(e):e;if(!(n instanceof Uint8Array))throw new Error("ui8a expected");let a=n.length;if(a<2||48!=n[0])throw new t("Invalid signature tag");if(n[1]!==a-2)throw new t("Invalid signature: incorrect length");const{d:i,l:r}=ye._parseInt(n.subarray(2)),{d:o,l:s}=ye._parseInt(r);if(s.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s:o}},hexFromSig(e){const t=e=>8&Number.parseInt(e[0],16)?"00"+e:e,n=e=>{const t=e.toString(16);return 1&t.length?`0${t}`:t},a=t(n(e.s)),i=t(n(e.r)),r=a.length/2,o=i.length/2,s=n(r),l=n(o);return`30${n(o+r+4)}02${l}${i}02${s}${a}`}},we=BigInt(0),ke=BigInt(1),xe=(BigInt(2),BigInt(3));BigInt(4);function Se(e){const t=function(e){const t=_e(e);J(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:n,Fp:a,a:i}=t;if(n){if(!a.eql(i,a.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if("object"!=typeof n||"bigint"!=typeof n.beta||"function"!=typeof n.splitScalar)throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}(e),{Fp:n}=t,a=t.toBytes||((e,t,a)=>{const i=t.toAffine();return F(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),i=t.fromBytes||(e=>{const t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function r(e){const{a:a,b:i}=t,r=n.sqr(e),o=n.mul(r,e);return n.add(n.add(o,n.mul(e,a)),i)}if(!n.eql(n.sqr(t.Gy),r(t.Gx)))throw new Error("bad generator point: equation left != right");function o(e){return"bigint"==typeof e&&wen.eql(e,n.ZERO);return i(t)&&i(a)?d.ZERO:new d(t,a,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){const t=n.invertBatch(e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(d.fromAffine)}static fromHex(e){const t=d.fromAffine(i(B("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return d.BASE.multiply(l(e))}_setWindowSize(e){this._WINDOW_SIZE=e,u.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!n.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:e,y:a}=this.toAffine();if(!n.isValid(e)||!n.isValid(a))throw new Error("bad point: x or y not FE");const i=n.sqr(a),o=r(e);if(!n.eql(i,o))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw new Error("Field doesn't support isOdd")}equals(e){c(e);const{px:t,py:a,pz:i}=this,{px:r,py:o,pz:s}=e,l=n.eql(n.mul(t,s),n.mul(r,i)),u=n.eql(n.mul(a,s),n.mul(o,i));return l&&u}negate(){return new d(this.px,n.neg(this.py),this.pz)}double(){const{a:e,b:a}=t,i=n.mul(a,xe),{px:r,py:o,pz:s}=this;let l=n.ZERO,u=n.ZERO,c=n.ZERO,h=n.mul(r,r),p=n.mul(o,o),f=n.mul(s,s),m=n.mul(r,o);return m=n.add(m,m),c=n.mul(r,s),c=n.add(c,c),l=n.mul(e,c),u=n.mul(i,f),u=n.add(l,u),l=n.sub(p,u),u=n.add(p,u),u=n.mul(l,u),l=n.mul(m,l),c=n.mul(i,c),f=n.mul(e,f),m=n.sub(h,f),m=n.mul(e,m),m=n.add(m,c),c=n.add(h,h),h=n.add(c,h),h=n.add(h,f),h=n.mul(h,m),u=n.add(u,h),f=n.mul(o,s),f=n.add(f,f),h=n.mul(f,m),l=n.sub(l,h),c=n.mul(f,p),c=n.add(c,c),c=n.add(c,c),new d(l,u,c)}add(e){c(e);const{px:a,py:i,pz:r}=this,{px:o,py:s,pz:l}=e;let u=n.ZERO,h=n.ZERO,p=n.ZERO;const f=t.a,m=n.mul(t.b,xe);let g=n.mul(a,o),_=n.mul(i,s),v=n.mul(r,l),b=n.add(a,i),y=n.add(o,s);b=n.mul(b,y),y=n.add(g,_),b=n.sub(b,y),y=n.add(a,r);let w=n.add(o,l);return y=n.mul(y,w),w=n.add(g,v),y=n.sub(y,w),w=n.add(i,r),u=n.add(s,l),w=n.mul(w,u),u=n.add(_,v),w=n.sub(w,u),p=n.mul(f,y),u=n.mul(m,v),p=n.add(u,p),u=n.sub(_,p),p=n.add(_,p),h=n.mul(u,p),_=n.add(g,g),_=n.add(_,g),v=n.mul(f,v),y=n.mul(m,y),_=n.add(_,v),v=n.sub(g,v),v=n.mul(f,v),y=n.add(y,v),g=n.mul(_,y),h=n.add(h,g),g=n.mul(w,y),u=n.mul(b,u),u=n.sub(u,g),g=n.mul(b,_),p=n.mul(w,p),p=n.add(p,g),new d(u,h,p)}subtract(e){return this.add(e.negate())}is0(){return this.equals(d.ZERO)}wNAF(e){return p.wNAFCached(this,u,e,e=>{const t=n.invertBatch(e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(d.fromAffine)})}multiplyUnsafe(e){const a=d.ZERO;if(e===we)return a;if(s(e),e===ke)return this;const{endo:i}=t;if(!i)return p.unsafeLadder(this,e);let{k1neg:r,k1:o,k2neg:l,k2:u}=i.splitScalar(e),c=a,h=a,f=this;for(;o>we||u>we;)o&ke&&(c=c.add(f)),u&ke&&(h=h.add(f)),f=f.double(),o>>=ke,u>>=ke;return r&&(c=c.negate()),l&&(h=h.negate()),h=new d(n.mul(h.px,i.beta),h.py,h.pz),c.add(h)}multiply(e){s(e);let a,i,r=e;const{endo:o}=t;if(o){const{k1neg:e,k1:t,k2neg:s,k2:l}=o.splitScalar(r);let{p:u,f:c}=this.wNAF(t),{p:h,f:f}=this.wNAF(l);u=p.constTimeNegate(e,u),h=p.constTimeNegate(s,h),h=new d(n.mul(h.px,o.beta),h.py,h.pz),a=u.add(h),i=c.add(f)}else{const{p:e,f:t}=this.wNAF(r);a=e,i=t}return d.normalizeZ([a,i])[0]}multiplyAndAddUnsafe(e,t,n){const a=d.BASE,i=(e,t)=>t!==we&&t!==ke&&e.equals(a)?e.multiply(t):e.multiplyUnsafe(t),r=i(this,t).add(i(e,n));return r.is0()?void 0:r}toAffine(e){const{px:t,py:a,pz:i}=this,r=this.is0();null==e&&(e=r?n.ONE:n.inv(i));const o=n.mul(t,e),s=n.mul(a,e),l=n.mul(i,e);if(r)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw new Error("invZ was invalid");return{x:o,y:s}}isTorsionFree(){const{h:e,isTorsionFree:n}=t;if(e===ke)return!0;if(n)return n(d,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:e,clearCofactor:n}=t;return e===ke?this:n?n(d,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return this.assertValidity(),a(d,this,e)}toHex(e=!0){return L(this.toRawBytes(e))}}d.BASE=new d(t.Gx,t.Gy,n.ONE),d.ZERO=new d(n.ZERO,n.ONE,n.ZERO);const h=t.nBitLength,p=function(e,t){const n=(e,t)=>{const n=t.negate();return e?n:t},a=e=>({windows:Math.ceil(t/e)+1,windowSize:2**(e-1)});return{constTimeNegate:n,unsafeLadder(t,n){let a=e.ZERO,i=t;for(;n>me;)n&ge&&(a=a.add(i)),i=i.double(),n>>=ge;return a},precomputeWindow(e,t){const{windows:n,windowSize:i}=a(t),r=[];let o=e,s=o;for(let e=0;e>=h,a>s&&(a-=d,r+=ge);const o=t,p=t+Math.abs(a)-1,f=e%2!=0,m=a<0;0===a?u=u.add(n(f,i[o])):l=l.add(n(m,i[p]))}return{p:l,f:u}},wNAFCached(e,t,n,a){const i=e._WINDOW_SIZE||1;let r=t.get(e);return r||(r=this.precomputeWindow(e,i),1!==i&&t.set(e,a(r))),this.wNAF(i,r,n)}}}(d,t.endo?Math.ceil(h/2):h);return{CURVE:t,ProjectivePoint:d,normPrivateKeyToScalar:l,weierstrassEquation:r,isWithinCurveOrder:o}}function Ce(e){const t=function(e){const t=_e(e);return J(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}(e),{Fp:n,n:a}=t,i=n.BYTES+1,r=2*n.BYTES+1;function o(e){return oe(e,a)}function s(e){return ue(e,a)}const{ProjectivePoint:l,normPrivateKeyToScalar:u,weierstrassEquation:c,isWithinCurveOrder:d}=Se({...t,toBytes(e,t,a){const i=t.toAffine(),r=n.toBytes(i.x),o=F;return a?o(Uint8Array.from([t.hasEvenY()?2:3]),r):o(Uint8Array.from([4]),r,n.toBytes(i.y))},fromBytes(e){const t=e.length,a=e[0],o=e.subarray(1);if(t!==i||2!==a&&3!==a){if(t===r&&4===a){return{x:n.fromBytes(o.subarray(0,n.BYTES)),y:n.fromBytes(o.subarray(n.BYTES,2*n.BYTES))}}throw new Error(`Point of length ${t} was invalid. Expected ${i} compressed bytes or ${r} uncompressed bytes`)}{const e=O(o);if(!(we<(s=e)&&sL(q(e,t.nByteLength));function p(e){return e>a>>ke}const f=(e,t,n)=>O(e.slice(t,n));class m{constructor(e,t,n){this.r=e,this.s=t,this.recovery=n,this.assertValidity()}static fromCompact(e){const n=t.nByteLength;return e=B("compactSignature",e,2*n),new m(f(e,0,n),f(e,n,2*n))}static fromDER(e){const{r:t,s:n}=ye.toSig(B("DER",e));return new m(t,n)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(e){return new m(this.r,this.s,e)}recoverPublicKey(e){const{r:a,s:i,recovery:r}=this,u=b(B("msgHash",e));if(null==r||![0,1,2,3].includes(r))throw new Error("recovery id invalid");const c=2===r||3===r?a+t.n:a;if(c>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const d=1&r?"03":"02",p=l.fromHex(d+h(c)),f=s(c),m=o(-u*f),g=o(i*f),_=l.BASE.multiplyAndAddUnsafe(p,m,g);if(!_)throw new Error("point at infinify");return _.assertValidity(),_}hasHighS(){return p(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,o(-this.s),this.recovery):this}toDERRawBytes(){return N(this.toDERHex())}toDERHex(){return ye.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return N(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}const g={isValidPrivateKey(e){try{return u(e),!0}catch(e){return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{const e=fe(t.n);return function(e,t,n=!1){const a=e.length,i=pe(t),r=fe(t);if(a<16||a1024)throw new Error(`expected ${r}-1024 bytes of input, got ${a}`);const o=oe(n?O(e):I(e),t-ee)+ee;return n?D(o,i):q(o,i)}(t.randomBytes(e),t.n)},precompute:(e=8,t=l.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)};function _(e){const t=e instanceof Uint8Array,n="string"==typeof e,a=(t||n)&&e.length;return t?a===i||a===r:n?a===2*i||a===2*r:e instanceof l}const v=t.bits2int||function(e){const n=O(e),a=8*e.length-t.nBitLength;return a>0?n>>BigInt(a):n},b=t.bits2int_modN||function(e){return o(v(e))},y=G(t.nBitLength);function w(e){if("bigint"!=typeof e)throw new Error("bigint expected");if(!(we<=e&&ee in i))throw new Error("sign() legacy options not supported");const{hash:r,randomBytes:c}=t;let{lowS:h,prehash:f,extraEntropy:g}=i;null==h&&(h=!0),e=B("msgHash",e),f&&(e=B("prehashed msgHash",r(e)));const _=b(e),y=u(a),k=[w(y),w(_)];if(null!=g){const e=!0===g?c(n.BYTES):g;k.push(B("extraEntropy",e))}const S=F(...k),C=_;return{seed:S,k2sig:function(e){const t=v(e);if(!d(t))return;const n=s(t),a=l.BASE.multiply(t).toAffine(),i=o(a.x);if(i===we)return;const r=o(n*o(C+i*y));if(r===we)return;let u=(a.x===i?0:2)|Number(a.y&ke),c=r;return h&&p(r)&&(c=function(e){return p(e)?o(-e):e}(r),u^=1),new m(i,c,u)}}}const x={lowS:t.lowS,prehash:!1},S={lowS:t.lowS,prehash:!1};return l.BASE._setWindowSize(8),{CURVE:t,getPublicKey:function(e,t=!0){return l.fromPrivateKey(e).toRawBytes(t)},getSharedSecret:function(e,t,n=!0){if(_(e))throw new Error("first arg must be private key");if(!_(t))throw new Error("second arg must be public key");return l.fromHex(t).multiply(u(e)).toRawBytes(n)},sign:function(e,n,a=x){const{seed:i,k2sig:r}=k(e,n,a),o=t;return Q(o.hash.outputLen,o.nByteLength,o.hmac)(i,r)},verify:function(e,n,a,i=S){const r=e;if(n=B("msgHash",n),a=B("publicKey",a),"strict"in i)throw new Error("options.strict was renamed to lowS");const{lowS:u,prehash:c}=i;let d,h;try{if("string"==typeof r||r instanceof Uint8Array)try{d=m.fromDER(r)}catch(e){if(!(e instanceof ye.Err))throw e;d=m.fromCompact(r)}else{if("object"!=typeof r||"bigint"!=typeof r.r||"bigint"!=typeof r.s)throw new Error("PARSE");{const{r:e,s:t}=r;d=new m(e,t)}}h=l.fromHex(a)}catch(e){if("PARSE"===e.message)throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(u&&d.hasHighS())return!1;c&&(n=t.hash(n));const{r:p,s:f}=d,g=b(n),_=s(f),v=o(g*_),y=o(p*_),w=l.BASE.multiplyAndAddUnsafe(h,v,y)?.toAffine();return!!w&&o(w.x)===p},ProjectivePoint:l,Signature:m,utils:g}}var Te=class extends f{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,function(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");o(e.outputLen),o(e.blockLen)}(e);const n=p(t);if(this.iHash=e.create(),"function"!=typeof this.iHash.update)throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const a=this.blockLen,i=new Uint8Array(a);i.set(n.length>a?e.create().update(n).digest():n);for(let e=0;enew Te(e,t).update(n).digest();function Pe(e){return{hash:e,hmac:(t,...n)=>Ee(e,t,function(...e){const t=new Uint8Array(e.reduce((e,t)=>e+t.length,0));let n=0;return e.forEach(e=>{if(!c(e))throw new Error("Uint8Array expected");t.set(e,n),n+=e.length}),t}(...n)),randomBytes:g}}Ee.create=(e,t)=>new Te(e,t);var Ae=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Me=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Le=BigInt(1),Re=BigInt(2),ze=(e,t)=>(e+t/Re)/t;function Ne(e){const t=Ae,n=BigInt(3),a=BigInt(6),i=BigInt(11),r=BigInt(22),o=BigInt(23),s=BigInt(44),l=BigInt(88),u=e*e*e%t,c=u*u*e%t,d=le(c,n,t)*c%t,h=le(d,n,t)*c%t,p=le(h,Re,t)*u%t,f=le(p,i,t)*p%t,m=le(f,r,t)*f%t,g=le(m,s,t)*m%t,_=le(g,l,t)*g%t,v=le(_,s,t)*m%t,b=le(v,n,t)*c%t,y=le(b,o,t)*f%t,w=le(y,a,t)*u%t,k=le(w,Re,t);if(!Oe.eql(Oe.sqr(k),e))throw new Error("Cannot find square root");return k}var Oe=function(e,t,n=!1,a={}){if(e<=X)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:i,nByteLength:r}=he(e,t);if(r>2048)throw new Error("Field lengths over 2048 bytes are not supported");const o=ce(e),s=Object.freeze({ORDER:e,BITS:i,BYTES:r,MASK:G(i),ZERO:X,ONE:ee,create:t=>oe(t,e),isValid:t=>{if("bigint"!=typeof t)throw new Error("Invalid field element: expected bigint, got "+typeof t);return X<=t&&te===X,isOdd:e=>(e&ee)===ee,neg:t=>oe(-t,e),eql:(e,t)=>e===t,sqr:t=>oe(t*t,e),add:(t,n)=>oe(t+n,e),sub:(t,n)=>oe(t-n,e),mul:(t,n)=>oe(t*n,e),pow:(e,t)=>function(e,t,n){if(n 0");if(n===X)return e.ONE;if(n===ee)return t;let a=e.ONE,i=t;for(;n>X;)n&ee&&(a=e.mul(a,i)),i=e.sqr(i),n>>=ee;return a}(s,e,t),div:(t,n)=>oe(t*ue(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>ue(t,e),sqrt:a.sqrt||(e=>o(s,e)),invertBatch:e=>function(e,t){const n=new Array(t.length),a=t.reduce((t,a,i)=>e.is0(a)?t:(n[i]=t,e.mul(t,a)),e.ONE),i=e.inv(a);return t.reduceRight((t,a,i)=>e.is0(a)?t:(n[i]=e.mul(t,n[i]),e.mul(t,a)),i),n}(s,e),cmov:(e,t,n)=>n?t:e,toBytes:e=>n?D(e,r):q(e,r),fromBytes:e=>{if(e.length!==r)throw new Error(`Fp.fromBytes: expected ${r}, got ${e.length}`);return n?I(e):O(e)}});return Object.freeze(s)}(Ae,void 0,void 0,{sqrt:Ne}),Ie=function(e,t){const n=t=>Ce({...e,...Pe(t)});return Object.freeze({...n(t),create:n})}({a:BigInt(0),b:BigInt(7),Fp:Oe,n:Me,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=Me,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),a=-Le*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),r=n,o=BigInt("0x100000000000000000000000000000000"),s=ze(r*e,t),l=ze(-a*e,t);let u=oe(e-s*n-l*i,t),c=oe(-s*a-l*r,t);const d=u>o,h=c>o;if(d&&(u=t-u),h&&(c=t-c),u>o||c>o)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:d,k1:u,k2neg:h,k2:c}}}},S),qe=BigInt(0),De=e=>"bigint"==typeof e&&qee.charCodeAt(0)));n=F(t,t),je[e]=n}return S(F(n,...t))}var Fe=e=>e.toRawBytes(!0).slice(1),$e=e=>q(e,32),Ve=e=>oe(e,Ae),Ue=e=>oe(e,Me),He=Ie.ProjectivePoint;function We(e){let t=Ie.utils.normPrivateKeyToScalar(e),n=He.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:Ue(-t),bytes:Fe(n)}}function Ge(e){if(!De(e))throw new Error("bad x: need 0 < x < p");const t=Ve(e*e);let n=Ne(Ve(t*e+BigInt(7)));n%Re!==qe&&(n=Ve(-n));const a=new He(e,n,Le);return a.assertValidity(),a}function Ye(...e){return Ue(O(Be("BIP0340/challenge",...e)))}function Ke(e){return We(e).bytes}function Qe(e,t,n=g(32)){const a=B("message",e),{bytes:i,scalar:r}=We(t),o=B("auxRand",n,32),s=$e(r^O(Be("BIP0340/aux",o))),l=Be("BIP0340/nonce",s,i,a),u=Ue(O(l));if(u===qe)throw new Error("sign failed: k is zero");const{bytes:c,scalar:d}=We(u),h=Ye(c,i,a),p=new Uint8Array(64);if(p.set(c,0),p.set($e(Ue(d+h*r)),32),!Ze(p,a,i))throw new Error("sign: Invalid signature produced");return p}function Ze(e,t,n){const a=B("signature",e,64),i=B("message",t),r=B("publicKey",n,32);try{const e=Ge(O(r)),t=O(a.subarray(0,32));if(!De(t))return!1;const n=O(a.subarray(32,64));if(!("bigint"==typeof(u=n)&&qe({getPublicKey:Ke,sign:Qe,verify:Ze,utils:{randomPrivateKey:Ie.utils.randomPrivateKey,lift_x:Ge,pointToBytes:Fe,numberToBytesBE:q,bytesToNumberBE:O,taggedHash:Be,mod:oe}}))(),Xe="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0,et=e=>e instanceof Uint8Array,tt=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),nt=(e,t)=>e<<32-t|e>>>t;if(!(68===new Uint8Array(new Uint32Array([287454020]).buffer)[0]))throw new Error("Non little-endian hardware is not supported");var at=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function it(e){if(!et(e))throw new Error("Uint8Array expected");let t="";for(let n=0;ne+t.length,0));let n=0;return e.forEach(e=>{if(!et(e))throw new Error("Uint8Array expected");t.set(e,n),n+=e.length}),t}var lt=class{clone(){return this._cloneInto()}};function ut(e){const t=t=>e().update(ot(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function ct(e=32){if(Xe&&"function"==typeof Xe.getRandomValues)return Xe.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}var dt=Symbol("verified"),ht=e=>e instanceof Object;function pt(e){if(!ht(e))return!1;if("number"!=typeof e.kind)return!1;if("string"!=typeof e.content)return!1;if("number"!=typeof e.created_at)return!1;if("string"!=typeof e.pubkey)return!1;if(!e.pubkey.match(/^[a-f0-9]{64}$/))return!1;if(!Array.isArray(e.tags))return!1;for(let t=0;te.created_at!==t.created_at?t.created_at-e.created_at:e.id.localeCompare(t.id))}function mt(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function gt(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}var _t={number:mt,bool:function(e){if("boolean"!=typeof e)throw new Error(`Expected boolean, not ${e}`)},bytes:gt,hash:function(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");mt(e.outputLen),mt(e.blockLen)},exists:function(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")},output:function(e,t){gt(e);const n=t.outputLen;if(e.lengtha-r&&(this.process(n,0),r=0);for(let e=r;e>i&r),s=Number(n&r),l=a?4:0,u=a?0:4;e.setUint32(t+l,o,a),e.setUint32(t+u,s,a)}(n,a-8,BigInt(8*this.length),i),this.process(n,0);const o=tt(e),s=this.outputLen;if(s%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const l=s/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;ee&t^~e&n,yt=(e,t,n)=>e&t^e&n^t&n,wt=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),kt=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),xt=new Uint32Array(64),St=class extends vt{constructor(){super(64,32,8,!1),this.A=0|kt[0],this.B=0|kt[1],this.C=0|kt[2],this.D=0|kt[3],this.E=0|kt[4],this.F=0|kt[5],this.G=0|kt[6],this.H=0|kt[7]}get(){const{A:e,B:t,C:n,D:a,E:i,F:r,G:o,H:s}=this;return[e,t,n,a,i,r,o,s]}set(e,t,n,a,i,r,o,s){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|a,this.E=0|i,this.F=0|r,this.G=0|o,this.H=0|s}process(e,t){for(let n=0;n<16;n++,t+=4)xt[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=xt[e-15],n=xt[e-2],a=nt(t,7)^nt(t,18)^t>>>3,i=nt(n,17)^nt(n,19)^n>>>10;xt[e]=i+xt[e-7]+a+xt[e-16]|0}let{A:n,B:a,C:i,D:r,E:o,F:s,G:l,H:u}=this;for(let e=0;e<64;e++){const t=u+(nt(o,6)^nt(o,11)^nt(o,25))+bt(o,s,l)+wt[e]+xt[e]|0,c=(nt(n,2)^nt(n,13)^nt(n,22))+yt(n,a,i)|0;u=l,l=s,s=o,o=r+t|0,r=i,i=a,a=n,n=t+c|0}n=n+this.A|0,a=a+this.B|0,i=i+this.C|0,r=r+this.D|0,o=o+this.E|0,s=s+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(n,a,i,r,o,s,l,u)}roundClean(){xt.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},Ct=class extends St{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}},Tt=ut(()=>new St),Et=(ut(()=>new Ct),{});i(Et,{Queue:()=>Ot,QueueNode:()=>Nt,binarySearch:()=>zt,bytesToHex:()=>it,hexToBytes:()=>rt,insertEventIntoAscendingList:()=>Rt,insertEventIntoDescendingList:()=>Lt,normalizeURL:()=>Mt,utf8Decoder:()=>Pt,utf8Encoder:()=>At});var Pt=new TextDecoder("utf-8"),At=new TextEncoder;function Mt(e){try{-1===e.indexOf("://")&&(e="wss://"+e);let t=new URL(e);return"http:"===t.protocol?t.protocol="ws:":"https:"===t.protocol&&(t.protocol="wss:"),t.pathname=t.pathname.replace(/\/+/g,"/"),t.pathname.endsWith("/")&&(t.pathname=t.pathname.slice(0,-1)),("80"===t.port&&"ws:"===t.protocol||"443"===t.port&&"wss:"===t.protocol)&&(t.port=""),t.searchParams.sort(),t.hash="",t.toString()}catch(t){throw new Error(`Invalid URL: ${e}`)}}function Lt(e,t){const[n,a]=zt(e,e=>t.id===e.id?0:t.created_at===e.created_at?-1:e.created_at-t.created_at);return a||e.splice(n,0,t),e}function Rt(e,t){const[n,a]=zt(e,e=>t.id===e.id?0:t.created_at===e.created_at?-1:t.created_at-e.created_at);return a||e.splice(n,0,t),e}function zt(e,t){let n=0,a=e.length-1;for(;n<=a;){const i=Math.floor((n+a)/2),r=t(e[i]);if(0===r)return[i,!0];r<0?a=i-1:n=i+1}return[n,!1]}var Nt=class{value;next=null;prev=null;constructor(e){this.value=e}},Ot=class{first;last;constructor(){this.first=null,this.last=null}enqueue(e){const t=new Nt(e);return this.last?this.last===this.first?(this.last=t,this.last.prev=this.first,this.first.next=t):(t.prev=this.last,this.last.next=t,this.last=t):(this.first=t,this.last=t),!0}dequeue(){if(!this.first)return null;if(this.first===this.last){const e=this.first;return this.first=null,this.last=null,e.value}const e=this.first;return this.first=e.next,this.first&&(this.first.prev=null),e.value}};function It(e){if(!pt(e))throw new Error("can't serialize event with wrong or missing properties");return JSON.stringify([0,e.pubkey,e.created_at,e.kind,e.tags,e.content])}function qt(e){return it(Tt(At.encode(It(e))))}var Dt=new class{generateSecretKey(){return Je.utils.randomPrivateKey()}getPublicKey(e){return it(Je.getPublicKey(e))}finalizeEvent(e,t){const n=e;return n.pubkey=it(Je.getPublicKey(t)),n.id=qt(n),n.sig=it(Je.sign(qt(n),t)),n[dt]=!0,n}verifyEvent(e){if("boolean"==typeof e[dt])return e[dt];const t=qt(e);if(t!==e.id)return e[dt]=!1,!1;try{const n=Je.verify(e.sig,t,e.pubkey);return e[dt]=n,n}catch(t){return e[dt]=!1,!1}}},jt=Dt.generateSecretKey,Bt=Dt.getPublicKey,Ft=Dt.finalizeEvent,$t=Dt.verifyEvent,Vt={};function Ut(e){return e<1e4&&0!==e&&3!==e}function Ht(e){return 0===e||3===e||1e4<=e&&e<2e4}function Wt(e){return 2e4<=e&&e<3e4}function Gt(e){return 3e4<=e&&e<4e4}function Yt(e){return Ut(e)?"regular":Ht(e)?"replaceable":Wt(e)?"ephemeral":Gt(e)?"parameterized":"unknown"}function Kt(e,t){const n=t instanceof Array?t:[t];return pt(e)&&n.includes(e.kind)||!1}i(Vt,{Application:()=>la,BadgeAward:()=>rn,BadgeDefinition:()=>ta,BlockedRelaysList:()=>In,BookmarkList:()=>zn,Bookmarksets:()=>Jn,Calendar:()=>ma,CalendarEventRSVP:()=>ga,ChannelCreation:()=>un,ChannelHideMessage:()=>hn,ChannelMessage:()=>dn,ChannelMetadata:()=>cn,ChannelMuteUser:()=>pn,ClassifiedListing:()=>da,ClientAuth:()=>Un,CommunitiesList:()=>Nn,CommunityDefinition:()=>ba,CommunityPostApproval:()=>kn,Contacts:()=>Xt,CreateOrUpdateProduct:()=>ia,CreateOrUpdateStall:()=>aa,Curationsets:()=>Xn,Date:()=>pa,DirectMessageRelaysList:()=>Bn,DraftClassifiedListing:()=>ha,DraftLong:()=>oa,Emojisets:()=>sa,EncryptedDirectMessage:()=>en,EventDeletion:()=>tn,FileMetadata:()=>gn,FileServerPreference:()=>Fn,Followsets:()=>Kn,GenericRepost:()=>ln,Genericlists:()=>Qn,GiftWrap:()=>mn,HTTPAuth:()=>Yn,Handlerinformation:()=>va,Handlerrecommendation:()=>_a,Highlights:()=>An,InterestsList:()=>Dn,Interestsets:()=>na,JobFeedback:()=>Cn,JobRequest:()=>xn,JobResult:()=>Sn,Label:()=>wn,LightningPubRPC:()=>Vn,LiveChatMessage:()=>_n,LiveEvent:()=>ua,LongFormArticle:()=>ra,Metadata:()=>Qt,Mutelist:()=>Mn,NWCWalletInfo:()=>$n,NWCWalletRequest:()=>Hn,NWCWalletResponse:()=>Wn,NostrConnect:()=>Gn,OpenTimestamps:()=>fn,Pinlist:()=>Ln,PrivateDirectMessage:()=>sn,ProblemTracker:()=>vn,ProfileBadges:()=>ea,PublicChatsList:()=>On,Reaction:()=>an,RecommendRelay:()=>Jt,RelayList:()=>Rn,Relaysets:()=>Zn,Report:()=>bn,Reporting:()=>yn,Repost:()=>nn,Seal:()=>on,SearchRelaysList:()=>qn,ShortTextNote:()=>Zt,Time:()=>fa,UserEmojiList:()=>jn,UserStatuses:()=>ca,Zap:()=>Pn,ZapGoal:()=>Tn,ZapRequest:()=>En,classifyKind:()=>Yt,isAddressableKind:()=>Gt,isEphemeralKind:()=>Wt,isKind:()=>Kt,isRegularKind:()=>Ut,isReplaceableKind:()=>Ht});var Qt=0,Zt=1,Jt=2,Xt=3,en=4,tn=5,nn=6,an=7,rn=8,on=13,sn=14,ln=16,un=40,cn=41,dn=42,hn=43,pn=44,fn=1040,mn=1059,gn=1063,_n=1311,vn=1971,bn=1984,yn=1984,wn=1985,kn=4550,xn=5999,Sn=6999,Cn=7e3,Tn=9041,En=9734,Pn=9735,An=9802,Mn=1e4,Ln=10001,Rn=10002,zn=10003,Nn=10004,On=10005,In=10006,qn=10007,Dn=10015,jn=10030,Bn=10050,Fn=10096,$n=13194,Vn=21e3,Un=22242,Hn=23194,Wn=23195,Gn=24133,Yn=27235,Kn=3e4,Qn=30001,Zn=30002,Jn=30003,Xn=30004,ea=30008,ta=30009,na=30015,aa=30017,ia=30018,ra=30023,oa=30024,sa=30030,la=30078,ua=30311,ca=30315,da=30402,ha=30403,pa=31922,fa=31923,ma=31924,ga=31925,_a=31989,va=31990,ba=34550;function ya(e,t){if(e.ids&&-1===e.ids.indexOf(t.id))return!1;if(e.kinds&&-1===e.kinds.indexOf(t.kind))return!1;if(e.authors&&-1===e.authors.indexOf(t.pubkey))return!1;for(let n in e)if("#"===n[0]){let a=e[`#${n.slice(1)}`];if(a&&!t.tags.find(([e,t])=>e===n.slice(1)&&-1!==a.indexOf(t)))return!1}return!(e.since&&t.created_ate.until)}function wa(e,t){for(let n=0;n{if("kinds"===e||"ids"===e||"authors"===e||"#"===e[0]){t[e]=t[e]||[];for(let a=0;at.limit)&&(t.limit=a.limit),a.until&&(!t.until||a.until>t.until)&&(t.until=a.until),a.since&&(!t.since||a.sinceHt(e))?e.authors.length*e.kinds.length:1/0,e.authors?.length&&e.kinds?.every(e=>Gt(e))&&e["#d"]?.length?e.authors.length*e.kinds.length*e["#d"].length:1/0)}var Sa={};function Ca(e,t){let n=t.length+3,a=e.indexOf(`"${t}":`)+n,i=e.slice(a).indexOf('"')+a+1;return e.slice(i,i+64)}function Ta(e,t){let n=t.length,a=e.indexOf(`"${t}":`)+n+3,i=e.slice(a),r=Math.min(i.indexOf(","),i.indexOf("}"));return parseInt(i.slice(0,r),10)}function Ea(e){let t=e.slice(0,22).indexOf('"EVENT"');if(-1===t)return null;let n=e.slice(t+7+1).indexOf('"');if(-1===n)return null;let a=t+7+1+n,i=e.slice(a+1,80).indexOf('"');if(-1===i)return null;let r=a+1+i;return e.slice(a+1,r)}function Pa(e,t){return t===Ca(e,"id")}function Aa(e,t){return t===Ca(e,"pubkey")}function Ma(e,t){return t===Ta(e,"kind")}i(Sa,{getHex64:()=>Ca,getInt:()=>Ta,getSubscriptionId:()=>Ea,matchEventId:()=>Pa,matchEventKind:()=>Ma,matchEventPubkey:()=>Aa});var La={};function Ra(e,t){return{kind:Un,created_at:Math.floor(Date.now()/1e3),tags:[["relay",e],["challenge",t]],content:""}}async function za(){return new Promise((e,t)=>{try{if("undefined"!=typeof MessageChannel){const t=new MessageChannel,n=()=>{t.port1.removeEventListener("message",n),e()};t.port1.addEventListener("message",n),t.port2.postMessage(0),t.port1.start()}else"undefined"!=typeof setImmediate?setImmediate(e):"undefined"!=typeof setTimeout?setTimeout(e,0):e()}catch(e){console.error("during yield: ",e),t(e)}})}i(La,{makeAuthEvent:()=>Ra});var Na,Oa=e=>(e[dt]=!0,!0),Ia=class extends Error{constructor(e,t){super(`Tried to send message '${e} on a closed connection to ${t}.`),this.name="SendingOnClosedConnection"}},qa=class{url;_connected=!1;onclose=null;onnotice=e=>console.debug(`NOTICE from ${this.url}: ${e}`);baseEoseTimeout=4400;connectionTimeout=4400;publishTimeout=4400;pingFrequency=2e4;pingTimeout=2e4;resubscribeBackoff=[1e4,1e4,1e4,2e4,2e4,3e4,6e4];openSubs=new Map;enablePing;enableReconnect;connectionTimeoutHandle;reconnectTimeoutHandle;pingTimeoutHandle;reconnectAttempts=0;closedIntentionally=!1;connectionPromise;openCountRequests=new Map;openEventPublishes=new Map;ws;incomingMessageQueue=new Ot;queueRunning=!1;challenge;authPromise;serial=0;verifyEvent;_WebSocket;constructor(e,t){this.url=Mt(e),this.verifyEvent=t.verifyEvent,this._WebSocket=t.websocketImplementation||WebSocket,this.enablePing=t.enablePing,this.enableReconnect=t.enableReconnect||!1}static async connect(e,t){const n=new qa(e,t);return await n.connect(),n}closeAllSubscriptions(e){for(let[t,n]of this.openSubs)n.close(e);this.openSubs.clear();for(let[t,n]of this.openEventPublishes)n.reject(new Error(e));this.openEventPublishes.clear();for(let[t,n]of this.openCountRequests)n.reject(new Error(e));this.openCountRequests.clear()}get connected(){return this._connected}async reconnect(){const e=this.resubscribeBackoff[Math.min(this.reconnectAttempts,this.resubscribeBackoff.length-1)];this.reconnectAttempts++,this.reconnectTimeoutHandle=setTimeout(async()=>{try{await this.connect()}catch(e){}},e)}handleHardClose(e){this.pingTimeoutHandle&&(clearTimeout(this.pingTimeoutHandle),this.pingTimeoutHandle=void 0),this._connected=!1,this.connectionPromise=void 0;const t=this.closedIntentionally;this.closedIntentionally=!1,this.onclose?.(),this.enableReconnect&&!t?this.reconnect():this.closeAllSubscriptions(e)}async connect(){return this.connectionPromise||(this.challenge=void 0,this.authPromise=void 0,this.connectionPromise=new Promise((e,t)=>{this.connectionTimeoutHandle=setTimeout(()=>{t("connection timed out"),this.connectionPromise=void 0,this.onclose?.(),this.closeAllSubscriptions("relay connection timed out")},this.connectionTimeout);try{this.ws=new this._WebSocket(this.url)}catch(e){return clearTimeout(this.connectionTimeoutHandle),void t(e)}this.ws.onopen=()=>{this.reconnectTimeoutHandle&&(clearTimeout(this.reconnectTimeoutHandle),this.reconnectTimeoutHandle=void 0),clearTimeout(this.connectionTimeoutHandle),this._connected=!0,this.reconnectAttempts=0;for(const e of this.openSubs.values())e.eosed=!1,"function"==typeof this.enableReconnect&&(e.filters=this.enableReconnect(e.filters)),e.fire();this.enablePing&&this.pingpong(),e()},this.ws.onerror=e=>{clearTimeout(this.connectionTimeoutHandle),t(e.message||"websocket error"),this.handleHardClose("relay connection errored")},this.ws.onclose=e=>{clearTimeout(this.connectionTimeoutHandle),t(e.message||"websocket closed"),this.handleHardClose("relay connection closed")},this.ws.onmessage=this._onmessage.bind(this)})),this.connectionPromise}waitForPingPong(){return new Promise(e=>{this.ws.once("pong",()=>e(!0)),this.ws.ping()})}async waitForDummyReq(){return new Promise((e,t)=>{const n=this.subscribe([{ids:["a".repeat(64)]}],{oneose:()=>{n.close(),e(!0)},eoseTimeout:this.pingTimeout+1e3})})}async pingpong(){if(1===this.ws?.readyState){await Promise.any([this.ws&&this.ws.ping&&this.ws.once?this.waitForPingPong():this.waitForDummyReq(),new Promise(e=>setTimeout(()=>e(!1),this.pingTimeout))])?this.pingTimeoutHandle=setTimeout(()=>this.pingpong(),this.pingFrequency):this.ws?.readyState===this._WebSocket.OPEN&&this.ws?.close()}}async runQueue(){for(this.queueRunning=!0;!1!==this.handleNext();)await za();this.queueRunning=!1}handleNext(){const e=this.incomingMessageQueue.dequeue();if(!e)return!1;const t=Ea(e);if(t){const n=this.openSubs.get(t);if(!n)return;const a=Ca(e,"id"),i=n.alreadyHaveEvent?.(a);if(n.receivedEvent?.(this,a),i)return}try{let t=JSON.parse(e);switch(t[0]){case"EVENT":{const e=this.openSubs.get(t[1]),n=t[2];return void(this.verifyEvent(n)&&wa(e.filters,n)&&e.onevent(n))}case"COUNT":{const e=t[1],n=t[2],a=this.openCountRequests.get(e);return void(a&&(a.resolve(n.count),this.openCountRequests.delete(e)))}case"EOSE":{const e=this.openSubs.get(t[1]);if(!e)return;return void e.receivedEose()}case"OK":{const e=t[1],n=t[2],a=t[3],i=this.openEventPublishes.get(e);return void(i&&(clearTimeout(i.timeout),n?i.resolve(a):i.reject(new Error(a)),this.openEventPublishes.delete(e)))}case"CLOSED":{const e=t[1],n=this.openSubs.get(e);if(!n)return;return n.closed=!0,void n.close(t[2])}case"NOTICE":return void this.onnotice(t[1]);case"AUTH":return void(this.challenge=t[1]);default:{const e=this.openSubs.get(t[1]);return void e?.oncustom?.(t)}}}catch(e){return}}async send(e){if(!this.connectionPromise)throw new Ia(e,this.url);this.connectionPromise.then(()=>{this.ws?.send(e)})}async auth(e){const t=this.challenge;if(!t)throw new Error("can't perform auth, no challenge was received");return this.authPromise||(this.authPromise=new Promise(async(n,a)=>{try{let i=await e(Ra(this.url,t)),r=setTimeout(()=>{let e=this.openEventPublishes.get(i.id);e&&(e.reject(new Error("auth timed out")),this.openEventPublishes.delete(i.id))},this.publishTimeout);this.openEventPublishes.set(i.id,{resolve:n,reject:a,timeout:r}),this.send('["AUTH",'+JSON.stringify(i)+"]")}catch(e){console.warn("subscribe auth function failed:",e)}})),this.authPromise}async publish(e){const t=new Promise((t,n)=>{const a=setTimeout(()=>{const t=this.openEventPublishes.get(e.id);t&&(t.reject(new Error("publish timed out")),this.openEventPublishes.delete(e.id))},this.publishTimeout);this.openEventPublishes.set(e.id,{resolve:t,reject:n,timeout:a})});return this.send('["EVENT",'+JSON.stringify(e)+"]"),t}async count(e,t){this.serial++;const n=t?.id||"count:"+this.serial,a=new Promise((e,t)=>{this.openCountRequests.set(n,{resolve:e,reject:t})});return this.send('["COUNT","'+n+'",'+JSON.stringify(e).substring(1)),a}subscribe(e,t){const n=this.prepareSubscription(e,t);return n.fire(),n}prepareSubscription(e,t){this.serial++;const n=t.id||(t.label?t.label+":":"sub:")+this.serial,a=new Da(this,n,e,t);return this.openSubs.set(n,a),a}close(){this.closedIntentionally=!0,this.reconnectTimeoutHandle&&(clearTimeout(this.reconnectTimeoutHandle),this.reconnectTimeoutHandle=void 0),this.pingTimeoutHandle&&(clearTimeout(this.pingTimeoutHandle),this.pingTimeoutHandle=void 0),this.closeAllSubscriptions("relay connection closed by us"),this._connected=!1,this.onclose?.(),this.ws?.readyState===this._WebSocket.OPEN&&this.ws?.close()}_onmessage(e){this.incomingMessageQueue.enqueue(e.data),this.queueRunning||this.runQueue()}},Da=class{relay;id;closed=!1;eosed=!1;filters;alreadyHaveEvent;receivedEvent;onevent;oneose;onclose;oncustom;eoseTimeout;eoseTimeoutHandle;constructor(e,t,n,a){if(0===n.length)throw new Error("subscription can't be created with zero filters");this.relay=e,this.filters=n,this.id=t,this.alreadyHaveEvent=a.alreadyHaveEvent,this.receivedEvent=a.receivedEvent,this.eoseTimeout=a.eoseTimeout||e.baseEoseTimeout,this.oneose=a.oneose,this.onclose=a.onclose,this.onevent=a.onevent||(e=>{console.warn(`onevent() callback not defined for subscription '${this.id}' in relay ${this.relay.url}. event received:`,e)})}fire(){this.relay.send('["REQ","'+this.id+'",'+JSON.stringify(this.filters).substring(1)),this.eoseTimeoutHandle=setTimeout(this.receivedEose.bind(this),this.eoseTimeout)}receivedEose(){this.eosed||(clearTimeout(this.eoseTimeoutHandle),this.eosed=!0,this.oneose?.())}close(e="closed by caller"){if(!this.closed&&this.relay.connected){try{this.relay.send('["CLOSE",'+JSON.stringify(this.id)+"]")}catch(e){if(!(e instanceof Ia))throw e}this.closed=!0}this.relay.openSubs.delete(this.id),this.onclose?.(e)}};try{Na=WebSocket}catch{}var ja,Ba=class extends qa{constructor(e,t){super(e,{verifyEvent:$t,websocketImplementation:Na,...t})}static async connect(e,t){const n=new Ba(e,t);return await n.connect(),n}},Fa=class{relays=new Map;seenOn=new Map;trackRelays=!1;verifyEvent;enablePing;enableReconnect;trustedRelayURLs=new Set;_WebSocket;constructor(e){this.verifyEvent=e.verifyEvent,this._WebSocket=e.websocketImplementation,this.enablePing=e.enablePing,this.enableReconnect=e.enableReconnect}async ensureRelay(e,t){e=Mt(e);let n=this.relays.get(e);return n||(n=new qa(e,{verifyEvent:this.trustedRelayURLs.has(e)?Oa:this.verifyEvent,websocketImplementation:this._WebSocket,enablePing:this.enablePing,enableReconnect:this.enableReconnect}),n.onclose=()=>{n&&!n.enableReconnect&&this.relays.delete(e)},t?.connectionTimeout&&(n.connectionTimeout=t.connectionTimeout),this.relays.set(e,n)),await n.connect(),n}close(e){e.map(Mt).forEach(e=>{this.relays.get(e)?.close(),this.relays.delete(e)})}subscribe(e,t,n){n.onauth=n.onauth||n.doauth;const a=[];for(let n=0;ne.url===i)||a.push({url:i,filter:t})}return this.subscribeMap(a,n)}subscribeMany(e,t,n){n.onauth=n.onauth||n.doauth;const a=[],i=[];for(let n=0;n({url:e,filters:t}));this.trackRelays&&(t.receivedEvent=(e,t)=>{let n=this.seenOn.get(t);n||(n=new Set,this.seenOn.set(t,n)),n.add(e)});const i=new Set,r=[],o=[];let s=e=>{o[e]||(o[e]=!0,o.filter(e=>e).length===a.length&&(t.oneose?.(),s=()=>{}))};const l=[];let u=(e,n)=>{l[e]||(s(e),l[e]=n,l.filter(e=>e).length===a.length&&(t.onclose?.(l),u=()=>{}))};const c=e=>{if(t.alreadyHaveEvent?.(e))return!0;const n=i.has(e);return i.add(e),n},d=Promise.all(a.map(async({url:e,filters:n},a)=>{let i;try{i=await this.ensureRelay(e,{connectionTimeout:t.maxWait?Math.max(.8*t.maxWait,t.maxWait-1e3):void 0})}catch(e){return void u(a,e?.message||String(e))}let o=i.subscribe(n,{...t,oneose:()=>s(a),onclose:e=>{e.startsWith("auth-required: ")&&t.onauth?i.auth(t.onauth).then(()=>{i.subscribe(n,{...t,oneose:()=>s(a),onclose:e=>{u(a,e)},alreadyHaveEvent:c,eoseTimeout:t.maxWait})}).catch(e=>{u(a,`auth was required and attempted, but failed with: ${e}`)}):u(a,e)},alreadyHaveEvent:c,eoseTimeout:t.maxWait});r.push(o)}));return{async close(e){await d,r.forEach(t=>{t.close(e)})}}}subscribeEose(e,t,n){n.onauth=n.onauth||n.doauth;const a=this.subscribe(e,t,{...n,oneose(){a.close("closed automatically on eose")}});return a}subscribeManyEose(e,t,n){n.onauth=n.onauth||n.doauth;const a=this.subscribeMany(e,t,{...n,oneose(){a.close("closed automatically on eose")}});return a}async querySync(e,t,n){return new Promise(async a=>{const i=[];this.subscribeEose(e,t,{...n,onevent(e){i.push(e)},onclose(e){a(i)}})})}async get(e,t,n){t.limit=1;const a=await this.querySync(e,t,n);return a.sort((e,t)=>t.created_at-e.created_at),a[0]||null}publish(e,t,n){return e.map(Mt).map(async(e,a,i)=>{if(i.indexOf(e)!==a)return Promise.reject("duplicate url");let r=await this.ensureRelay(e);return r.publish(t).catch(async e=>{if(e instanceof Error&&e.message.startsWith("auth-required: ")&&n?.onauth)return await r.auth(n.onauth),r.publish(t);throw e}).then(e=>{if(this.trackRelays){let e=this.seenOn.get(t.id);e||(e=new Set,this.seenOn.set(t.id,e)),e.add(r)}return e})})}listConnectionStatus(){const e=new Map;return this.relays.forEach((t,n)=>e.set(n,t.connected)),e}destroy(){this.relays.forEach(e=>e.close()),this.relays=new Map}};try{ja=WebSocket}catch{}var $a=class extends Fa{constructor(e){super({verifyEvent:$t,websocketImplementation:ja,...e})}},Va={};function Ua(e){if(!Number.isSafeInteger(e))throw new Error(`Wrong integer: ${e}`)}function Ha(...e){const t=(e,t)=>n=>e(t(n));return{encode:Array.from(e).reverse().reduce((e,n)=>e?t(e,n.encode):n.encode,void 0),decode:e.reduce((e,n)=>e?t(e,n.decode):n.decode,void 0)}}function Wa(e){return{encode:t=>{if(!Array.isArray(t)||t.length&&"number"!=typeof t[0])throw new Error("alphabet.encode input should be an array of numbers");return t.map(t=>{if(Ua(t),t<0||t>=e.length)throw new Error(`Digit index outside alphabet: ${t} (alphabet: ${e.length})`);return e[t]})},decode:t=>{if(!Array.isArray(t)||t.length&&"string"!=typeof t[0])throw new Error("alphabet.decode input should be array of strings");return t.map(t=>{if("string"!=typeof t)throw new Error(`alphabet.decode: not string element=${t}`);const n=e.indexOf(t);if(-1===n)throw new Error(`Unknown letter: "${t}". Allowed: ${e}`);return n})}}}function Ga(e=""){if("string"!=typeof e)throw new Error("join separator should be string");return{encode:t=>{if(!Array.isArray(t)||t.length&&"string"!=typeof t[0])throw new Error("join.encode input should be array of strings");for(let e of t)if("string"!=typeof e)throw new Error(`join.encode: non-string input=${e}`);return t.join(e)},decode:t=>{if("string"!=typeof t)throw new Error("join.decode input should be string");return t.split(e)}}}function Ya(e,t="="){if(Ua(e),"string"!=typeof t)throw new Error("padding chr should be string");return{encode(n){if(!Array.isArray(n)||n.length&&"string"!=typeof n[0])throw new Error("padding.encode input should be array of strings");for(let e of n)if("string"!=typeof e)throw new Error(`padding.encode: non-string input=${e}`);for(;n.length*e%8;)n.push(t);return n},decode(n){if(!Array.isArray(n)||n.length&&"string"!=typeof n[0])throw new Error("padding.encode input should be array of strings");for(let e of n)if("string"!=typeof e)throw new Error(`padding.decode: non-string input=${e}`);let a=n.length;if(a*e%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;a>0&&n[a-1]===t;a--)if(!((a-1)*e%8))throw new Error("Invalid padding: string has too much padding");return n.slice(0,a)}}}function Ka(e){if("function"!=typeof e)throw new Error("normalize fn should be function");return{encode:e=>e,decode:t=>e(t)}}function Qa(e,t,n){if(t<2)throw new Error(`convertRadix: wrong from=${t}, base cannot be less than 2`);if(n<2)throw new Error(`convertRadix: wrong to=${n}, base cannot be less than 2`);if(!Array.isArray(e))throw new Error("convertRadix: data should be array");if(!e.length)return[];let a=0;const i=[],r=Array.from(e);for(r.forEach(e=>{if(Ua(e),e<0||e>=t)throw new Error(`Wrong integer: ${e}`)});;){let e=0,o=!0;for(let i=a;ibi,Bech32MaxSize:()=>vi,NostrTypeGuard:()=>_i,decode:()=>wi,decodeNostrURI:()=>yi,encodeBytes:()=>Ei,naddrEncode:()=>Mi,neventEncode:()=>Ai,noteEncode:()=>Ci,nprofileEncode:()=>Pi,npubEncode:()=>Si,nsecEncode:()=>xi});var Za=(e,t)=>t?Za(t,e%t):e,Ja=(e,t)=>e+(t-Za(e,t));function Xa(e,t,n,a){if(!Array.isArray(e))throw new Error("convertRadix2: data should be array");if(t<=0||t>32)throw new Error(`convertRadix2: wrong from=${t}`);if(n<=0||n>32)throw new Error(`convertRadix2: wrong to=${n}`);if(Ja(t,n)>32)throw new Error(`convertRadix2: carry overflow from=${t} to=${n} carryBits=${Ja(t,n)}`);let i=0,r=0;const o=2**n-1,s=[];for(const a of e){if(Ua(a),a>=2**t)throw new Error(`convertRadix2: invalid data word=${a} from=${t}`);if(i=i<32)throw new Error(`convertRadix2: carry overflow pos=${r} from=${t}`);for(r+=t;r>=n;r-=n)s.push((i>>r-n&o)>>>0);i&=2**r-1}if(i=i<=t)throw new Error("Excess padding");if(!a&&i)throw new Error(`Non-zero padding: ${i}`);return a&&r>0&&s.push(i>>>0),s}function ei(e,t=!1){if(Ua(e),e<=0||e>32)throw new Error("radix2: bits should be in (0..32]");if(Ja(8,e)>32||Ja(e,8)>32)throw new Error("radix2: carry overflow");return{encode:n=>{if(!(n instanceof Uint8Array))throw new Error("radix2.encode input should be Uint8Array");return Xa(Array.from(n),8,e,!t)},decode:n=>{if(!Array.isArray(n)||n.length&&"number"!=typeof n[0])throw new Error("radix2.decode input should be array of strings");return Uint8Array.from(Xa(n,e,8,t))}}}function ti(e){if("function"!=typeof e)throw new Error("unsafeWrapper fn should be function");return function(...t){try{return e.apply(null,t)}catch(e){}}}var ni=Ha(ei(4),Wa("0123456789ABCDEF"),Ga("")),ai=Ha(ei(5),Wa("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),Ya(5),Ga("")),ii=(Ha(ei(5),Wa("0123456789ABCDEFGHIJKLMNOPQRSTUV"),Ya(5),Ga("")),Ha(ei(5),Wa("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),Ga(""),Ka(e=>e.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))),Ha(ei(6),Wa("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),Ya(6),Ga(""))),ri=Ha(ei(6),Wa("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),Ya(6),Ga("")),oi=e=>{return Ha((Ua(t=58),{encode:e=>{if(!(e instanceof Uint8Array))throw new Error("radix.encode input should be Uint8Array");return Qa(Array.from(e),256,t)},decode:e=>{if(!Array.isArray(e)||e.length&&"number"!=typeof e[0])throw new Error("radix.decode input should be array of strings");return Uint8Array.from(Qa(e,t,256))}}),Wa(e),Ga(""));var t},si=oi("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),li=(oi("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"),oi("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"),[0,2,3,5,6,7,9,10,11]),ui={encode(e){let t="";for(let n=0;n>25;let n=(33554431&e)<<5;for(let e=0;e>e&1)&&(n^=di[e]);return n}function pi(e,t,n=1){const a=e.length;let i=1;for(let t=0;t126)throw new Error(`Invalid prefix (${e})`);i=hi(i)^n>>5}i=hi(i);for(let t=0;tn)throw new TypeError(`Wrong string length: ${e.length} (${e}). Expected (8..${n})`);const a=e.toLowerCase();if(e!==a&&e!==e.toUpperCase())throw new Error("String must be lowercase or uppercase");const i=(e=a).lastIndexOf("1");if(0===i||-1===i)throw new Error('Letter "1" must be present between prefix and data only');const r=e.slice(0,i),o=e.slice(i+1);if(o.length<6)throw new Error("Data must be at least 6 characters long");const s=ci.decode(o).slice(0,-6),l=pi(r,s,t);if(!o.endsWith(l))throw new Error(`Invalid checksum in ${e}: expected "${l}"`);return{prefix:r,words:s}}return{encode:function(e,n,a=90){if("string"!=typeof e)throw new Error("bech32.encode prefix should be string, not "+typeof e);if(!Array.isArray(n)||n.length&&"number"!=typeof n[0])throw new Error("bech32.encode words should be array of numbers, not "+typeof n);const i=e.length+7+n.length;if(!1!==a&&i>a)throw new TypeError(`Length ${i} exceeds limit ${a}`);return`${e=e.toLowerCase()}1${ci.encode(n)}${pi(e,n,t)}`},decode:o,decodeToBytes:function(e){const{prefix:t,words:n}=o(e,!1);return{prefix:t,words:n,bytes:a(n)}},decodeUnsafe:ti(o),fromWords:a,fromWordsUnsafe:r,toWords:i}}var mi=fi("bech32"),gi=(fi("bech32m"),{utf8:{encode:e=>(new TextDecoder).decode(e),decode:e=>(new TextEncoder).encode(e)},hex:Ha(ei(4),Wa("0123456789abcdef"),Ga(""),Ka(e=>{if("string"!=typeof e||e.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof e} with length ${e.length}`);return e.toLowerCase()})),base16:ni,base32:ai,base64:ii,base64url:ri,base58:si,base58xmr:ui}),_i=(Object.keys(gi).join(", "),{isNProfile:e=>/^nprofile1[a-z\d]+$/.test(e||""),isNEvent:e=>/^nevent1[a-z\d]+$/.test(e||""),isNAddr:e=>/^naddr1[a-z\d]+$/.test(e||""),isNSec:e=>/^nsec1[a-z\d]{58}$/.test(e||""),isNPub:e=>/^npub1[a-z\d]{58}$/.test(e||""),isNote:e=>/^note1[a-z\d]+$/.test(e||""),isNcryptsec:e=>/^ncryptsec1[a-z\d]+$/.test(e||"")}),vi=5e3,bi=/[\x21-\x7E]{1,83}1[023456789acdefghjklmnpqrstuvwxyz]{6,}/;function yi(e){try{return e.startsWith("nostr:")&&(e=e.substring(6)),wi(e)}catch(e){return{type:"invalid",data:null}}}function wi(e){let{prefix:t,words:n}=mi.decode(e,vi),a=new Uint8Array(mi.fromWords(n));switch(t){case"nprofile":{let e=ki(a);if(!e[0]?.[0])throw new Error("missing TLV 0 for nprofile");if(32!==e[0][0].length)throw new Error("TLV 0 should be 32 bytes");return{type:"nprofile",data:{pubkey:it(e[0][0]),relays:e[1]?e[1].map(e=>Pt.decode(e)):[]}}}case"nevent":{let e=ki(a);if(!e[0]?.[0])throw new Error("missing TLV 0 for nevent");if(32!==e[0][0].length)throw new Error("TLV 0 should be 32 bytes");if(e[2]&&32!==e[2][0].length)throw new Error("TLV 2 should be 32 bytes");if(e[3]&&4!==e[3][0].length)throw new Error("TLV 3 should be 4 bytes");return{type:"nevent",data:{id:it(e[0][0]),relays:e[1]?e[1].map(e=>Pt.decode(e)):[],author:e[2]?.[0]?it(e[2][0]):void 0,kind:e[3]?.[0]?parseInt(it(e[3][0]),16):void 0}}}case"naddr":{let e=ki(a);if(!e[0]?.[0])throw new Error("missing TLV 0 for naddr");if(!e[2]?.[0])throw new Error("missing TLV 2 for naddr");if(32!==e[2][0].length)throw new Error("TLV 2 should be 32 bytes");if(!e[3]?.[0])throw new Error("missing TLV 3 for naddr");if(4!==e[3][0].length)throw new Error("TLV 3 should be 4 bytes");return{type:"naddr",data:{identifier:Pt.decode(e[0][0]),pubkey:it(e[2][0]),kind:parseInt(it(e[3][0]),16),relays:e[1]?e[1].map(e=>Pt.decode(e)):[]}}}case"nsec":return{type:t,data:a};case"npub":case"note":return{type:t,data:it(a)};default:throw new Error(`unknown prefix ${t}`)}}function ki(e){let t={},n=e;for(;n.length>0;){let e=n[0],a=n[1],i=n.slice(2,2+a);if(n=n.slice(2+a),i.lengthAt.encode(e))}))}function Ai(e){let t;return void 0!==e.kind&&(t=function(e){const t=new Uint8Array(4);return t[0]=e>>24&255,t[1]=e>>16&255,t[2]=e>>8&255,t[3]=255&e,t}(e.kind)),Ti("nevent",Li({0:[rt(e.id)],1:(e.relays||[]).map(e=>At.encode(e)),2:e.author?[rt(e.author)]:[],3:t?[new Uint8Array(t)]:[]}))}function Mi(e){let t=new ArrayBuffer(4);return new DataView(t).setUint32(0,e.kind,!1),Ti("naddr",Li({0:[At.encode(e.identifier)],1:(e.relays||[]).map(e=>At.encode(e)),2:[rt(e.pubkey)],3:[new Uint8Array(t)]}))}function Li(e){let t=[];return Object.entries(e).reverse().forEach(([e,n])=>{n.forEach(n=>{let a=new Uint8Array(n.length+2);a.set([parseInt(e)],0),a.set([n.length],1),a.set(n,2),t.push(a)})}),st(...t)}var Ri=/\bnostr:((note|npub|naddr|nevent|nprofile)1\w+)\b|#\[(\d+)\]/g;function zi(e){let t=[];for(let n of e.content.matchAll(Ri))if(n[2])try{let{type:e,data:a}=wi(n[1]);switch(e){case"npub":t.push({text:n[0],profile:{pubkey:a,relays:[]}});break;case"nprofile":t.push({text:n[0],profile:a});break;case"note":t.push({text:n[0],event:{id:a,relays:[]}});break;case"nevent":t.push({text:n[0],event:a});break;case"naddr":t.push({text:n[0],address:a})}}catch(e){}else if(n[3]){let a=parseInt(n[3],10),i=e.tags[a];if(!i)continue;switch(i[0]){case"p":t.push({text:n[0],profile:{pubkey:i[1],relays:i[2]?[i[2]]:[]}});break;case"e":t.push({text:n[0],event:{id:i[1],relays:i[2]?[i[2]]:[]}});break;case"a":try{let[e,a,r]=i[1].split(":");t.push({text:n[0],address:{identifier:r,pubkey:a,kind:parseInt(e,10),relays:i[2]?[i[2]]:[]}})}catch(e){}}}return t}var Ni={};function Oi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function Ii(e){if("boolean"!=typeof e)throw new Error(`boolean expected, not ${e}`)}function qi(e){return e instanceof Uint8Array||null!=e&&"object"==typeof e&&"Uint8Array"===e.constructor.name}function Di(e,...t){if(!qi(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function ji(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Bi(e,t){Di(e);const n=t.outputLen;if(e.lengthVr,encrypt:()=>$r});var Fi=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),$i=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),Vi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);if(!(68===new Uint8Array(new Uint32Array([287454020]).buffer)[0]))throw new Error("Non little-endian hardware is not supported");var Ui=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Hi(e){Di(e);let t="";for(let n=0;n=Wi&&e<=Gi?e-Wi:e>=Yi&&e<=Ki?e-(Yi-10):e>=Qi&&e<=Zi?e-(Qi-10):void 0}function Xi(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const a=new Uint8Array(n);for(let t=0,i=0;t(Object.assign(t,e),t);function ir(e,t,n,a){if("function"==typeof e.setBigUint64)return e.setBigUint64(t,n,a);const i=BigInt(32),r=BigInt(4294967295),o=Number(n>>i&r),s=Number(n&r),l=a?4:0,u=a?0:4;e.setUint32(t+l,o,a),e.setUint32(t+u,s,a)}var rr=16,or=new Uint8Array(16),sr=$i(or),lr=(e,t,n,a)=>({s3:n<<31|a>>>1,s2:t<<31|n>>>1,s1:e<<31|t>>>1,s0:e>>>1^225<<24&-(1&(1&a))}),ur=e=>(e>>>0&255)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255;var cr=class{constructor(e,t){this.blockLen=rr,this.outputLen=rr,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,Di(e=tr(e),16);const n=Vi(e);let a=n.getUint32(0,!1),i=n.getUint32(4,!1),r=n.getUint32(8,!1),o=n.getUint32(12,!1);const s=[];for(let e=0;e<128;e++)s.push({s0:ur(a),s1:ur(i),s2:ur(r),s3:ur(o)}),({s0:a,s1:i,s2:r,s3:o}=lr(a,i,r,o));const l=(u=t||1024)>65536?8:u>1024?4:2;var u;if(![1,2,4,8].includes(l))throw new Error(`ghash: wrong window size=${l}, should be 2, 4 or 8`);this.W=l;const c=128/l,d=this.windowSize=2**l,h=[];for(let e=0;e>>l-o-1&1))continue;const{s0:u,s1:c,s2:d,s3:h}=s[l*e+o];n^=u,a^=c,i^=d,r^=h}h.push({s0:n,s1:a,s2:i,s3:r})}this.t=h}_updateBlock(e,t,n,a){e^=this.s0,t^=this.s1,n^=this.s2,a^=this.s3;const{W:i,t:r,windowSize:o}=this;let s=0,l=0,u=0,c=0;const d=(1<>>8*e&255;for(let e=8/i-1;e>=0;e--){const n=t>>>i*e&d,{s0:a,s1:p,s2:f,s3:m}=r[h*o+n];s^=a,l^=p,u^=f,c^=m,h+=1}}this.s0=s,this.s1=l,this.s2=u,this.s3=c}update(e){e=tr(e),ji(this);const t=$i(e),n=Math.floor(e.length/rr),a=e.length%rr;for(let e=0;e>>1|n,n=(1&a)<<7}return e[0]^=225&-t,e}((e=tr(e)).slice());super(n,t),n.fill(0)}update(e){e=tr(e),ji(this);const t=$i(e),n=e.length%rr,a=Math.floor(e.length/rr);for(let e=0;ee(n,t.length).update(tr(t)).digest(),n=e(new Uint8Array(16),0);return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=(t,n)=>e(t,n),t}var pr=hr((e,t)=>new cr(e,t)),fr=hr((e,t)=>new dr(e,t)),mr=16,gr=new Uint8Array(mr);function _r(e){return e<<1^283&-(e>>7)}function vr(e,t){let n=0;for(;t>0;t>>=1)n^=e&-(1&t),e=_r(e);return n}var br=(()=>{let e=new Uint8Array(256);for(let t=0,n=1;t<256;t++,n^=_r(n))e[t]=n;const t=new Uint8Array(256);t[0]=99;for(let n=0;n<255;n++){let a=e[255-n];a|=a<<8,t[e[n]]=255&(a^a>>4^a>>5^a>>6^a>>7^99)}return t})(),yr=br.map((e,t)=>br.indexOf(t)),wr=e=>e<<24|e>>>8,kr=e=>e<<8|e>>>24;function xr(e,t){if(256!==e.length)throw new Error("Wrong sbox length");const n=new Uint32Array(256).map((n,a)=>t(e[a])),a=n.map(kr),i=a.map(kr),r=i.map(kr),o=new Uint32Array(65536),s=new Uint32Array(65536),l=new Uint16Array(65536);for(let t=0;t<256;t++)for(let u=0;u<256;u++){const c=256*t+u;o[c]=n[t]^a[u],s[c]=i[t]^r[u],l[c]=e[t]<<8|e[u]}return{sbox:e,sbox2:l,T0:n,T1:a,T2:i,T3:r,T01:o,T23:s}}var Sr=xr(br,e=>vr(e,3)<<24|e<<16|e<<8|vr(e,2)),Cr=xr(yr,e=>vr(e,11)<<24|vr(e,13)<<16|vr(e,9)<<8|vr(e,14)),Tr=(()=>{const e=new Uint8Array(16);for(let t=0,n=1;t<16;t++,n=_r(n))e[t]=n;return e})();function Er(e){Di(e);const t=e.length;if(![16,24,32].includes(t))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${t}`);const{sbox2:n}=Sr,a=$i(e),i=a.length,r=e=>Mr(n,e,e,e,e),o=new Uint32Array(t+28);o.set(a);for(let e=i;e6&&e%i===4&&(t=r(t)),o[e]=o[e-i]^t}return o}function Pr(e){const t=Er(e),n=t.slice(),a=t.length,{sbox2:i}=Sr,{T0:r,T1:o,T2:s,T3:l}=Cr;for(let e=0;e>>8&255]^s[a>>>16&255]^l[a>>>24]}return n}function Ar(e,t,n,a,i,r){return e[n<<8&65280|a>>>8&255]^t[i>>>8&65280|r>>>24&255]}function Mr(e,t,n,a,i){return e[255&t|65280&n]|e[a>>>16&255|i>>>16&65280]<<16}function Lr(e,t,n,a,i){const{sbox2:r,T01:o,T23:s}=Sr;let l=0;t^=e[l++],n^=e[l++],a^=e[l++],i^=e[l++];const u=e.length/4-2;for(let r=0;r>>0,s.setUint32(c,h,t),({s0:p,s1:f,s2:m,s3:g}=Lr(e,o[0],o[1],o[2],o[3]));const _=mr*Math.floor(l.length/4);if(_=0;e--)n=n+(255&r[e])|0,r[e]=255&n,n>>>=8;({s0:s,s1:l,s2:u,s3:c}=Lr(e,o[0],o[1],o[2],o[3]))}const p=mr*Math.floor(d.length/4);if(pn(e,t),decrypt:(e,t)=>n(e,t)}});function Or(e){if(Di(e),e.length%mr!==0)throw new Error("aes/(cbc-ecb).decrypt ciphertext should consist of blocks with size 16")}function Ir(e,t,n){let a=e.length;const i=a%mr;if(!t&&0!==i)throw new Error("aec/(cbc-ecb): unpadded plaintext with disabled padding");const r=$i(e);if(t){let e=mr-i;e||(e=mr),a+=e}const o=zr(a,n);return{b:r,o:$i(o),out:o}}function qr(e,t){if(!t)return e;const n=e.length;if(!n)throw new Error("aes/pcks5: empty ciphertext not allowed");const a=e[n-1];if(a<=0||a>16)throw new Error(`aes/pcks5: wrong padding byte: ${a}`);const i=e.subarray(0,-a);for(let t=0;t{Di(t);const{b:i,o:r,out:o}=Ir(t,n,a),s=Er(e);let l=0;for(;l+4<=i.length;){const{s0:e,s1:t,s2:n,s3:a}=Lr(s,i[l+0],i[l+1],i[l+2],i[l+3]);r[l++]=e,r[l++]=t,r[l++]=n,r[l++]=a}if(n){const e=Dr(t.subarray(4*l)),{s0:n,s1:a,s2:i,s3:o}=Lr(s,e[0],e[1],e[2],e[3]);r[l++]=n,r[l++]=a,r[l++]=i,r[l++]=o}return s.fill(0),o},decrypt:(t,a)=>{Or(t);const i=Pr(e),r=zr(t.length,a),o=$i(t),s=$i(r);for(let e=0;e+4<=o.length;){const{s0:t,s1:n,s2:a,s3:r}=Rr(i,o[e+0],o[e+1],o[e+2],o[e+3]);s[e++]=t,s[e++]=n,s[e++]=a,s[e++]=r}return i.fill(0),qr(r,n)}}});var jr=ar({blockSize:16,nonceLength:16},function(e,t,n={}){Di(e),Di(t,16);const a=!n.disablePadding;return{encrypt:(n,i)=>{const r=Er(e),{b:o,o:s,out:l}=Ir(n,a,i),u=$i(t);let c=u[0],d=u[1],h=u[2],p=u[3],f=0;for(;f+4<=o.length;)c^=o[f+0],d^=o[f+1],h^=o[f+2],p^=o[f+3],({s0:c,s1:d,s2:h,s3:p}=Lr(r,c,d,h,p)),s[f++]=c,s[f++]=d,s[f++]=h,s[f++]=p;if(a){const e=Dr(n.subarray(4*f));c^=e[0],d^=e[1],h^=e[2],p^=e[3],({s0:c,s1:d,s2:h,s3:p}=Lr(r,c,d,h,p)),s[f++]=c,s[f++]=d,s[f++]=h,s[f++]=p}return r.fill(0),l},decrypt:(n,i)=>{Or(n);const r=Pr(e),o=$i(t),s=zr(n.length,i),l=$i(n),u=$i(s);let c=o[0],d=o[1],h=o[2],p=o[3];for(let e=0;e+4<=l.length;){const t=c,n=d,a=h,i=p;c=l[e+0],d=l[e+1],h=l[e+2],p=l[e+3];const{s0:o,s1:s,s2:f,s3:m}=Rr(r,c,d,h,p);u[e++]=o^t,u[e++]=s^n,u[e++]=f^a,u[e++]=m^i}return r.fill(0),qr(s,a)}}});function Br(e,t,n,a,i){const r=e.create(n,a.length+(i?.length||0));i&&r.update(i),r.update(a);const o=new Uint8Array(16),s=Vi(o);return i&&ir(s,0,BigInt(8*i.length),t),ir(s,8,BigInt(8*a.length),t),r.update(o),r.digest()}ar({blockSize:16,nonceLength:12,tagLength:16},function(e,t,n){if(Di(t),0===t.length)throw new Error("aes/gcm: empty nonce");const a=16;function i(e,t,a){const i=Br(pr,!1,e,a,n);for(let e=0;e{Di(e);const{xk:t,authKey:n,counter:o,tagMask:s}=r(),l=new Uint8Array(e.length+a);Nr(t,!1,o,e,l);const u=i(n,s,l.subarray(0,l.length-a));return l.set(u,e.length),t.fill(0),l},decrypt:e=>{if(Di(e),e.lengtha=>{if(!Number.isSafeInteger(a)||t>a||a>n)throw new Error(`${e}: invalid value=${a}, must be [${t}..${n}]`)};ar({blockSize:16,nonceLength:12,tagLength:16},function(e,t,n){const a=Fr("AAD",0,2**36),i=Fr("plaintext",0,2**36),r=Fr("nonce",12,12),o=Fr("ciphertext",16,2**36+16);function s(){const n=e.length;if(16!==n&&24!==n&&32!==n)throw new Error(`key length must be 16, 24 or 32 bytes, got: ${n} bytes`);const a=Er(e),i=new Uint8Array(n),r=new Uint8Array(16),o=$i(t);let s=0,l=o[0],u=o[1],c=o[2],d=0;for(const e of[r,i].map($i)){const t=$i(e);for(let e=0;e{Di(e),i(e.length);const{encKey:t,authKey:n}=s(),a=l(t,n,e),r=new Uint8Array(e.length+16);return r.set(a,e.length),r.set(u(t,a,e)),t.fill(0),n.fill(0),r},decrypt:e=>{Di(e),o(e.length);const t=e.subarray(-16),{encKey:n,authKey:a}=s(),i=u(n,t,e.subarray(0,-16)),r=l(n,a,i);if(n.fill(0),a.fill(0),!nr(t,r))throw new Error("invalid polyval tag");return i}}});function $r(e,t,n){const a=e instanceof Uint8Array?it(e):e,i=Ur(Ie.getSharedSecret(a,"02"+t));let r=Uint8Array.from(ct(16)),o=At.encode(n),s=jr(i,r).encrypt(o);return`${ii.encode(new Uint8Array(s))}?iv=${ii.encode(new Uint8Array(r.buffer))}`}function Vr(e,t,n){const a=e instanceof Uint8Array?it(e):e;let[i,r]=n.split("?iv="),o=Ur(Ie.getSharedSecret(a,"02"+t)),s=ii.decode(r),l=ii.decode(i),u=jr(o,s).decrypt(l);return Pt.decode(u)}function Ur(e){return e.slice(1,33)}var Hr={};i(Hr,{NIP05_REGEX:()=>Gr,isNip05:()=>Yr,isValid:()=>Jr,queryProfile:()=>Zr,searchDomain:()=>Qr,useFetchImplementation:()=>Kr});var Wr,Gr=/^(?:([\w.+-]+)@)?([\w_-]+(\.[\w_-]+)+)$/,Yr=e=>Gr.test(e||"");try{Wr=fetch}catch(e){}function Kr(e){Wr=e}async function Qr(e,t=""){try{const n=`https://${e}/.well-known/nostr.json?name=${t}`,a=await Wr(n,{redirect:"manual"});if(200!==a.status)throw Error("Wrong response code");return(await a.json()).names}catch(e){return{}}}async function Zr(e){const t=e.match(Gr);if(!t)return null;const[,n="_",a]=t;try{const e=`https://${a}/.well-known/nostr.json?name=${n}`,t=await Wr(e,{redirect:"manual"});if(200!==t.status)throw Error("Wrong response code");const i=await t.json(),r=i.names[n];return r?{pubkey:r,relays:i.relays?.[r]}:null}catch(e){return null}}async function Jr(e,t){const n=await Zr(t);return!!n&&n.pubkey===e}var Xr={};function eo(e){const t={reply:void 0,root:void 0,mentions:[],profiles:[],quotes:[]};let n,a;for(let i=e.tags.length-1;i>=0;i--){const r=e.tags[i];if("e"===r[0]&&r[1]){const[e,i,o,s,l]=r,u={id:i,relays:o?[o]:[],author:l};if("root"===s){t.root=u;continue}if("reply"===s){t.reply=u;continue}if("mention"===s){t.mentions.push(u);continue}n?a=u:n=u,t.mentions.push(u);continue}if("q"===r[0]&&r[1]){const[e,n,a]=r;t.quotes.push({id:n,relays:a?[a]:[]})}"p"===r[0]&&r[1]&&t.profiles.push({pubkey:r[1],relays:r[2]?[r[2]]:[]})}return t.root||(t.root=a||n||t.reply),t.reply||(t.reply=n||t.root),[t.reply,t.root].forEach(e=>{if(!e)return;let n=t.mentions.indexOf(e);if(-1!==n&&t.mentions.splice(n,1),e.author){let n=t.profiles.find(t=>t.pubkey===e.author);n&&n.relays&&(e.relays||(e.relays=[]),n.relays.forEach(t=>{-1===e.relays?.indexOf(t)&&e.relays.push(t)}),n.relays=e.relays)}}),t.mentions.forEach(e=>{if(e.author){let n=t.profiles.find(t=>t.pubkey===e.author);n&&n.relays&&(e.relays||(e.relays=[]),n.relays.forEach(t=>{-1===e.relays.indexOf(t)&&e.relays.push(t)}),n.relays=e.relays)}}),t}i(Xr,{parse:()=>eo});var to={};i(to,{fetchRelayInformation:()=>ao,useFetchImplementation:()=>no});try{fetch}catch{}function no(e){0}async function ao(e){return await(await fetch(e.replace("ws://","http://").replace("wss://","https://"),{headers:{Accept:"application/nostr+json"}})).json()}var io={};function ro(e){let t=0;for(let n=0;n<64;n+=8){const a=parseInt(e.substring(n,n+8),16);if(0!==a){t+=Math.clz32(a);break}t+=32}return t}function oo(e,t){let n=0;const a=e,i=["nonce",n.toString(),t.toString()];for(a.tags.push(i);;){const e=Math.floor((new Date).getTime()/1e3);if(e!==a.created_at&&(n=0,a.created_at=e),i[1]=(++n).toString(),a.id=so(a),ro(a.id)>=t)break}return a}function so(e){return it(Tt(At.encode(JSON.stringify([0,e.pubkey,e.created_at,e.kind,e.tags,e.content]))))}i(io,{fastEventHash:()=>so,getPow:()=>ro,minePow:()=>oo});var lo={};i(lo,{unwrapEvent:()=>os,unwrapManyEvents:()=>ss,wrapEvent:()=>is,wrapManyEvents:()=>rs});var uo={};i(uo,{createRumor:()=>Zo,createSeal:()=>Jo,createWrap:()=>Xo,unwrapEvent:()=>ns,unwrapManyEvents:()=>as,wrapEvent:()=>es,wrapManyEvents:()=>ts});var co={};i(co,{decrypt:()=>Uo,encrypt:()=>Vo,getConversationKey:()=>Do,v2:()=>Ho});var ho=(e,t)=>255&e[t++]|(255&e[t++])<<8,po=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,Di(e=tr(e),32);const t=ho(e,0),n=ho(e,2),a=ho(e,4),i=ho(e,6),r=ho(e,8),o=ho(e,10),s=ho(e,12),l=ho(e,14);this.r[0]=8191&t,this.r[1]=8191&(t>>>13|n<<3),this.r[2]=7939&(n>>>10|a<<6),this.r[3]=8191&(a>>>7|i<<9),this.r[4]=255&(i>>>4|r<<12),this.r[5]=r>>>1&8190,this.r[6]=8191&(r>>>14|o<<2),this.r[7]=8065&(o>>>11|s<<5),this.r[8]=8191&(s>>>8|l<<8),this.r[9]=l>>>5&127;for(let t=0;t<8;t++)this.pad[t]=ho(e,16+2*t)}process(e,t,n=!1){const a=n?0:2048,{h:i,r:r}=this,o=r[0],s=r[1],l=r[2],u=r[3],c=r[4],d=r[5],h=r[6],p=r[7],f=r[8],m=r[9],g=ho(e,t+0),_=ho(e,t+2),v=ho(e,t+4),b=ho(e,t+6),y=ho(e,t+8),w=ho(e,t+10),k=ho(e,t+12),x=ho(e,t+14);let S=i[0]+(8191&g),C=i[1]+(8191&(g>>>13|_<<3)),T=i[2]+(8191&(_>>>10|v<<6)),E=i[3]+(8191&(v>>>7|b<<9)),P=i[4]+(8191&(b>>>4|y<<12)),A=i[5]+(y>>>1&8191),M=i[6]+(8191&(y>>>14|w<<2)),L=i[7]+(8191&(w>>>11|k<<5)),R=i[8]+(8191&(k>>>8|x<<8)),z=i[9]+(x>>>5|a),N=0,O=N+S*o+C*(5*m)+T*(5*f)+E*(5*p)+P*(5*h);N=O>>>13,O&=8191,O+=A*(5*d)+M*(5*c)+L*(5*u)+R*(5*l)+z*(5*s),N+=O>>>13,O&=8191;let I=N+S*s+C*o+T*(5*m)+E*(5*f)+P*(5*p);N=I>>>13,I&=8191,I+=A*(5*h)+M*(5*d)+L*(5*c)+R*(5*u)+z*(5*l),N+=I>>>13,I&=8191;let q=N+S*l+C*s+T*o+E*(5*m)+P*(5*f);N=q>>>13,q&=8191,q+=A*(5*p)+M*(5*h)+L*(5*d)+R*(5*c)+z*(5*u),N+=q>>>13,q&=8191;let D=N+S*u+C*l+T*s+E*o+P*(5*m);N=D>>>13,D&=8191,D+=A*(5*f)+M*(5*p)+L*(5*h)+R*(5*d)+z*(5*c),N+=D>>>13,D&=8191;let j=N+S*c+C*u+T*l+E*s+P*o;N=j>>>13,j&=8191,j+=A*(5*m)+M*(5*f)+L*(5*p)+R*(5*h)+z*(5*d),N+=j>>>13,j&=8191;let B=N+S*d+C*c+T*u+E*l+P*s;N=B>>>13,B&=8191,B+=A*o+M*(5*m)+L*(5*f)+R*(5*p)+z*(5*h),N+=B>>>13,B&=8191;let F=N+S*h+C*d+T*c+E*u+P*l;N=F>>>13,F&=8191,F+=A*s+M*o+L*(5*m)+R*(5*f)+z*(5*p),N+=F>>>13,F&=8191;let $=N+S*p+C*h+T*d+E*c+P*u;N=$>>>13,$&=8191,$+=A*l+M*s+L*o+R*(5*m)+z*(5*f),N+=$>>>13,$&=8191;let V=N+S*f+C*p+T*h+E*d+P*c;N=V>>>13,V&=8191,V+=A*u+M*l+L*s+R*o+z*(5*m),N+=V>>>13,V&=8191;let U=N+S*m+C*f+T*p+E*h+P*d;N=U>>>13,U&=8191,U+=A*c+M*u+L*l+R*s+z*o,N+=U>>>13,U&=8191,N=(N<<2)+N|0,N=N+O|0,O=8191&N,N>>>=13,I+=N,i[0]=O,i[1]=I,i[2]=q,i[3]=D,i[4]=j,i[5]=B,i[6]=F,i[7]=$,i[8]=V,i[9]=U}finalize(){const{h:e,pad:t}=this,n=new Uint16Array(10);let a=e[1]>>>13;e[1]&=8191;for(let t=2;t<10;t++)e[t]+=a,a=e[t]>>>13,e[t]&=8191;e[0]+=5*a,a=e[0]>>>13,e[0]&=8191,e[1]+=a,a=e[1]>>>13,e[1]&=8191,e[2]+=a,n[0]=e[0]+5,a=n[0]>>>13,n[0]&=8191;for(let t=1;t<10;t++)n[t]=e[t]+a,a=n[t]>>>13,n[t]&=8191;n[9]-=8192;let i=(1^a)-1;for(let e=0;e<10;e++)n[e]&=i;i=~i;for(let t=0;t<10;t++)e[t]=e[t]&i|n[t];e[0]=65535&(e[0]|e[1]<<13),e[1]=65535&(e[1]>>>3|e[2]<<10),e[2]=65535&(e[2]>>>6|e[3]<<7),e[3]=65535&(e[3]>>>9|e[4]<<4),e[4]=65535&(e[4]>>>12|e[5]<<1|e[6]<<14),e[5]=65535&(e[6]>>>2|e[7]<<11),e[6]=65535&(e[7]>>>5|e[8]<<8),e[7]=65535&(e[8]>>>8|e[9]<<5);let r=e[0]+t[0];e[0]=65535&r;for(let n=1;n<8;n++)r=(e[n]+t[n]|0)+(r>>>16)|0,e[n]=65535&r}update(e){ji(this);const{buffer:t,blockLen:n}=this,a=(e=tr(e)).length;for(let i=0;i>>0,e[i++]=n[t]>>>8;return e}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}};var fo=function(e){const t=(t,n)=>e(n).update(tr(t)).digest(),n=e(new Uint8Array(32));return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}(e=>new po(e)),mo=er("expand 16-byte k"),go=er("expand 32-byte k"),_o=$i(mo),vo=$i(go);function bo(e,t){return e<>>32-t}function yo(e){return e.byteOffset%4==0}var wo=2**32-1,ko=new Uint32Array;function xo(e,t){const{allowShortKeys:n,extendNonceFn:a,counterLength:i,counterRight:r,rounds:o}=function(e,t){if(null==t||"object"!=typeof t)throw new Error("options must be defined");return Object.assign(e,t)}({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if("function"!=typeof e)throw new Error("core must be a function");return Oi(i),Oi(o),Ii(r),Ii(n),(t,s,l,u,c=0)=>{Di(t),Di(s),Di(l);const d=l.length;if(u||(u=new Uint8Array(d)),Di(u),Oi(c),c<0||c>=wo)throw new Error("arx: counter overflow");if(u.length=wo)throw new Error("arx: counter overflow");const m=Math.min(64,l-f);if(d&&64===m){const e=f/4;if(f%4!=0)throw new Error("arx: invalid block position");for(let t,n=0;n<16;n++)t=e+n,p[t]=h[t]^c[n];f+=64;continue}for(let e,t=0;t0;)h.pop().fill(0);return u}}function So(e,t,n,a,i,r=20){let o=e[0],s=e[1],l=e[2],u=e[3],c=t[0],d=t[1],h=t[2],p=t[3],f=t[4],m=t[5],g=t[6],_=t[7],v=i,b=n[0],y=n[1],w=n[2],k=o,x=s,S=l,C=u,T=c,E=d,P=h,A=p,M=f,L=m,R=g,z=_,N=v,O=b,I=y,q=w;for(let e=0;e{e.update(t);const n=t.length%16;n&&e.update(Eo.subarray(n))},Ao=new Uint8Array(32);function Mo(e,t,n,a,i){const r=e(t,n,Ao),o=fo.create(r);i&&Po(o,i),Po(o,a);const s=new Uint8Array(16),l=Vi(s);ir(l,0,BigInt(i?i.length:0),!0),ir(l,8,BigInt(a.length),!0),o.update(s);const u=o.digest();return r.fill(0),u}var Lo=e=>(t,n,a)=>{const i=16;return Di(t,32),Di(n),{encrypt:(r,o)=>{const s=r.length,l=s+i;o?Di(o,l):o=new Uint8Array(l),e(t,n,r,o,1);const u=Mo(e,t,n,o.subarray(0,-16),a);return o.set(u,s),o},decrypt:(r,o)=>{const s=r.length,l=s-i;if(sa?e.create().update(n).digest():n);for(let e=0;enew Ro(e,t).update(n).digest();zo.create=(e,t)=>new Ro(e,t);var No=new Uint8Array([0]),Oo=new Uint8Array;var Io=1,qo=65535;function Do(e,t){const n=Ie.getSharedSecret(e,"02"+t).subarray(1,33);return a=Tt,i=n,r="nip44-v2",_t.hash(a),void 0===r&&(r=new Uint8Array(a.outputLen)),zo(a,ot(r),ot(i));var a,i,r}function jo(e,t){const n=function(e,t,n,a=32){if(_t.hash(e),_t.number(a),a>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");const i=Math.ceil(a/e.outputLen);void 0===n&&(n=Oo);const r=new Uint8Array(i*e.outputLen),o=zo.create(e,t),s=o._cloneInto(),l=new Uint8Array(o.outputLen);for(let t=0;tqo)throw new Error("invalid plaintext size: must be between 1 and 65535 bytes");const t=new Uint8Array(2);return new DataView(t.buffer).setUint16(0,e,!1),t}(n),t,new Uint8Array(Bo(n)-n))}function $o(e,t,n){if(32!==n.length)throw new Error("AAD associated data must be 32 bytes");const a=st(n,t);return zo(Tt,e,a)}function Vo(e,t,n=ct(32)){const{chacha_key:a,chacha_nonce:i,hmac_key:r}=jo(t,n),o=Fo(e),s=Co(a,i,o),l=$o(r,s,n);return ii.encode(st(new Uint8Array([2]),n,s,l))}function Uo(e,t){const{nonce:n,ciphertext:a,mac:i}=function(e){if("string"!=typeof e)throw new Error("payload must be a valid string");const t=e.length;if(t<132||t>87472)throw new Error("invalid payload length: "+t);if("#"===e[0])throw new Error("unknown encryption version");let n;try{n=ii.decode(e)}catch(e){throw new Error("invalid base64: "+e.message)}const a=n.length;if(a<99||a>65603)throw new Error("invalid data length: "+a);const i=n[0];if(2!==i)throw new Error("unknown encryption version "+i);return{nonce:n.subarray(1,33),ciphertext:n.subarray(33,-32),mac:n.subarray(-32)}}(e),{chacha_key:r,chacha_nonce:o,hmac_key:s}=jo(t,n);if(!nr($o(s,a,n),i))throw new Error("invalid MAC");return function(e){const t=new DataView(e.buffer).getUint16(0),n=e.subarray(2,2+t);if(tqo||n.length!==t||e.length!==2+Bo(t))throw new Error("invalid padding");return Pt.decode(n)}(Co(r,o,a))}var Ho={utils:{getConversationKey:Do,calcPaddedLen:Bo},encrypt:Vo,decrypt:Uo},Wo=()=>Math.round(Date.now()/1e3),Go=()=>Math.round(Wo()-172800*Math.random()),Yo=(e,t)=>Do(e,t),Ko=(e,t,n)=>Vo(JSON.stringify(e),Yo(t,n)),Qo=(e,t)=>JSON.parse(Uo(e.content,Yo(t,e.pubkey)));function Zo(e,t){const n={created_at:Wo(),content:"",tags:[],...e,pubkey:Bt(t)};return n.id=qt(n),n}function Jo(e,t,n){return Ft({kind:on,content:Ko(e,t,n),created_at:Go(),tags:[]},t)}function Xo(e,t){const n=jt();return Ft({kind:mn,content:Ko(e,n,t),created_at:Go(),tags:[["p",t]]},n)}function es(e,t,n){return Xo(Jo(Zo(e,t),t,n),n)}function ts(e,t,n){if(!n||0===n.length)throw new Error("At least one recipient is required.");const a=Bt(t),i=[es(e,t,a)];return n.forEach(n=>{i.push(es(e,t,n))}),i}function ns(e,t){const n=Qo(e,t);return Qo(n,t)}function as(e,t){let n=[];return e.forEach(e=>{n.push(ns(e,t))}),n.sort((e,t)=>e.created_at-t.created_at),n}function is(e,t,n,a,i){const r=function(e,t,n,a){const i={created_at:Math.ceil(Date.now()/1e3),kind:sn,tags:[],content:t};return(Array.isArray(e)?e:[e]).forEach(({publicKey:e,relayUrl:t})=>{i.tags.push(t?["p",e,t]:["p",e])}),a&&i.tags.push(["e",a.eventId,a.relayUrl||"","reply"]),n&&i.tags.push(["subject",n]),i}(t,n,a,i);return es(r,e,t.publicKey)}function rs(e,t,n,a,i){if(!t||0===t.length)throw new Error("At least one recipient is required.");return[{publicKey:Bt(e)},...t].map(t=>is(e,t,n,a,i))}var os=ns,ss=as,ls={};function us(e,t,n,a){let i;const r=[...e.tags??[],["e",t.id,n],["p",t.pubkey]];return t.kind===Zt?i=nn:(i=ln,r.push(["k",String(t.kind)])),Ft({kind:i,tags:r,content:""===e.content||t.tags?.find(e=>"-"===e[0])?"":JSON.stringify(t),created_at:e.created_at},a)}function cs(e){if(![nn,ln].includes(e.kind))return;let t,n;for(let a=e.tags.length-1;a>=0&&(void 0===t||void 0===n);a--){const i=e.tags[a];i.length>=2&&("e"===i[0]&&void 0===t?t=i:"p"===i[0]&&void 0===n&&(n=i))}return void 0!==t?{id:t[1],relays:[t[2],n?.[2]].filter(e=>"string"==typeof e),author:n?.[1]}:void 0}function ds(e,{skipVerification:t}={}){const n=cs(e);if(void 0===n||""===e.content)return;let a;try{a=JSON.parse(e.content)}catch(e){return}return a.id===n.id&&(t||$t(a))?a:void 0}i(ls,{finishRepostEvent:()=>us,getRepostedEvent:()=>ds,getRepostedEventPointer:()=>cs});var hs={};i(hs,{NOSTR_URI_REGEX:()=>ps,parse:()=>ms,test:()=>fs});var ps=new RegExp(`nostr:(${bi.source})`);function fs(e){return"string"==typeof e&&new RegExp(`^${ps.source}$`).test(e)}function ms(e){const t=e.match(new RegExp(`^${ps.source}$`));if(!t)throw new Error(`Invalid Nostr URI: ${e}`);return{uri:t[0],value:t[1],decoded:wi(t[1])}}var gs={};function _s(e,t,n){const a=t.tags.filter(e=>e.length>=2&&("e"===e[0]||"p"===e[0]));return Ft({...e,kind:an,tags:[...e.tags??[],...a,["e",t.id],["p",t.pubkey]],content:e.content??"+"},n)}function vs(e){if(e.kind!==an)return;let t,n;for(let a=e.tags.length-1;a>=0&&(void 0===t||void 0===n);a--){const i=e.tags[a];i.length>=2&&("e"===i[0]&&void 0===t?t=i:"p"===i[0]&&void 0===n&&(n=i))}return void 0!==t&&void 0!==n?{id:t[1],relays:[t[2],n[2]].filter(e=>void 0!==e),author:n[1]}:void 0}i(gs,{finishReactionEvent:()=>_s,getReactedEventPointer:()=>vs});var bs={};i(bs,{parse:()=>xs});var ys=/\W/m,ws=/\W |\W$|$|,| /m,ks=42;function*xs(e){let t=[];if("string"!=typeof e){for(let n=0;n=3&&t.push({type:"emoji",shortcode:a[1],url:a[2]})}e=e.content}const n=e.length;let a=0,i=0;e:for(;i=0&&oCs,channelHideMessageEvent:()=>Ps,channelMessageEvent:()=>Es,channelMetadataEvent:()=>Ts,channelMuteUserEvent:()=>As});var Cs=(e,t)=>{let n;if("object"==typeof e.content)n=JSON.stringify(e.content);else{if("string"!=typeof e.content)return;n=e.content}return Ft({kind:un,tags:[...e.tags??[]],content:n,created_at:e.created_at},t)},Ts=(e,t)=>{let n;if("object"==typeof e.content)n=JSON.stringify(e.content);else{if("string"!=typeof e.content)return;n=e.content}return Ft({kind:cn,tags:[["e",e.channel_create_event_id],...e.tags??[]],content:n,created_at:e.created_at},t)},Es=(e,t)=>{const n=[["e",e.channel_create_event_id,e.relay_url,"root"]];return e.reply_to_channel_message_event_id&&n.push(["e",e.reply_to_channel_message_event_id,e.relay_url,"reply"]),Ft({kind:dn,tags:[...n,...e.tags??[]],content:e.content,created_at:e.created_at},t)},Ps=(e,t)=>{let n;if("object"==typeof e.content)n=JSON.stringify(e.content);else{if("string"!=typeof e.content)return;n=e.content}return Ft({kind:hn,tags:[["e",e.channel_message_event_id],...e.tags??[]],content:n,created_at:e.created_at},t)},As=(e,t)=>{let n;if("object"==typeof e.content)n=JSON.stringify(e.content);else{if("string"!=typeof e.content)return;n=e.content}return Ft({kind:pn,tags:[["p",e.pubkey_to_mute],...e.tags??[]],content:n,created_at:e.created_at},t)},Ms={};i(Ms,{EMOJI_SHORTCODE_REGEX:()=>Ls,matchAll:()=>zs,regex:()=>Rs,replaceAll:()=>Ns});var Ls=/:(\w+):/,Rs=()=>new RegExp(`\\B${Ls.source}\\B`,"g");function*zs(e){const t=e.matchAll(Rs());for(const e of t)try{const[t,n]=e;yield{shortcode:t,name:n,start:e.index,end:e.index+t.length}}catch(e){}}function Ns(e,t){return e.replaceAll(Rs(),(e,n)=>t({shortcode:e,name:n}))}var Os,Is={};i(Is,{useFetchImplementation:()=>qs,validateGithub:()=>Ds});try{Os=fetch}catch{}function qs(e){Os=e}async function Ds(e,t,n){try{return await(await Os(`https://gist.github.com/${t}/${n}/raw`)).text()===`Verifying that I control the following Nostr public key: ${e}`}catch(e){return!1}}var js={};function Bs(e){const{host:t,pathname:n,searchParams:a}=new URL(e),i=n||t,r=a.get("relay"),o=a.get("secret");if(!i||!r||!o)throw new Error("invalid connection string");return{pubkey:i,relay:r,secret:o}}async function Fs(e,t,n){const a={method:"pay_invoice",params:{invoice:n}},i=$r(t,e,JSON.stringify(a)),r={kind:Hn,created_at:Math.round(Date.now()/1e3),content:i,tags:[["p",e]]};return Ft(r,t)}i(js,{makeNwcRequestEvent:()=>Fs,parseConnectionString:()=>Bs});var $s={};function Vs(e){return e=(e=e.trim().toLowerCase()).normalize("NFKC"),Array.from(e).map(e=>/\p{Letter}/u.test(e)||/\p{Number}/u.test(e)?e:"-").join("")}i($s,{normalizeIdentifier:()=>Vs});var Us,Hs={};i(Hs,{getSatoshisAmountFromBolt11:()=>Zs,getZapEndpoint:()=>Gs,makeZapReceipt:()=>Qs,makeZapRequest:()=>Ys,useFetchImplementation:()=>Ws,validateZapRequest:()=>Ks});try{Us=fetch}catch{}function Ws(e){Us=e}async function Gs(e){try{let t="",{lud06:n,lud16:a}=JSON.parse(e.content);if(a){let[e,n]=a.split("@");t=new URL(`/.well-known/lnurlp/${e}`,`https://${n}`).toString()}else{if(!n)return null;{let{words:e}=mi.decode(n,1e3),a=mi.fromWords(e);t=Pt.decode(a)}}let i=await Us(t),r=await i.json();if(r.allowsNostr&&r.nostrPubkey)return r.callback}catch(e){}return null}function Ys(e){let t={kind:9734,created_at:Math.round(Date.now()/1e3),content:e.comment||"",tags:[["p","pubkey"in e?e.pubkey:e.event.pubkey],["amount",e.amount.toString()],["relays",...e.relays]]};if("event"in e){if(t.tags.push(["e",e.event.id]),Ht(e.event.kind)){const n=["a",`${e.event.kind}:${e.event.pubkey}:`];t.tags.push(n)}else if(Gt(e.event.kind)){let n=e.event.tags.find(([e,t])=>"d"===e&&t);if(!n)throw new Error("d tag not found or is empty");const a=["a",`${e.event.kind}:${e.event.pubkey}:${n[1]}`];t.tags.push(a)}t.tags.push(["k",e.event.kind.toString()])}return t}function Ks(e){let t;try{t=JSON.parse(e)}catch(e){return"Invalid zap request JSON."}if(!pt(t))return"Zap request is not a valid Nostr event.";if(!$t(t))return"Invalid signature on zap request.";let n=t.tags.find(([e,t])=>"p"===e&&t);if(!n)return"Zap request doesn't have a 'p' tag.";if(!n[1].match(/^[a-f0-9]{64}$/))return"Zap request 'p' tag is not valid hex.";let a=t.tags.find(([e,t])=>"e"===e&&t);return a&&!a[1].match(/^[a-f0-9]{64}$/)?"Zap request 'e' tag is not valid hex.":t.tags.find(([e,t])=>"relays"===e&&t)?null:"Zap request doesn't have a 'relays' tag."}function Qs({zapRequest:e,preimage:t,bolt11:n,paidAt:a}){let i=JSON.parse(e),r=i.tags.filter(([e])=>"e"===e||"p"===e||"a"===e),o={kind:9735,created_at:Math.round(a.getTime()/1e3),content:"",tags:[...r,["P",i.pubkey],["bolt11",n],["description",e]]};return t&&o.tags.push(["preimage",t]),o}function Zs(e){if(e.length<50)return 0;const t=(e=e.substring(0,50)).lastIndexOf("1");if(-1===t)return 0;const n=e.substring(0,t);if(!n.startsWith("lnbc"))return 0;const a=n.substring(4);if(a.length<1)return 0;const i=a[a.length-1],r=i.charCodeAt(0)-"0".charCodeAt(0),o=r>=0&&r<=9;let s=a.length-1;if(o&&s++,s<1)return 0;const l=parseInt(a.substring(0,s));switch(i){case"m":return 1e5*l;case"u":return 100*l;case"n":return l/10;case"p":return l/1e4;default:return 1e8*l}}var Js={};i(Js,{Negentropy:()=>ul,NegentropyStorageVector:()=>ll,NegentropySync:()=>hl});var Xs=32,el=0,tl=1,nl=2,al=class{_raw;length;constructor(e){"number"==typeof e?(this._raw=new Uint8Array(e),this.length=0):e instanceof Uint8Array?(this._raw=new Uint8Array(e),this.length=e.length):(this._raw=new Uint8Array(512),this.length=0)}unwrap(){return this._raw.subarray(0,this.length)}get capacity(){return this._raw.byteLength}extend(e){if(e instanceof al&&(e=e.unwrap()),"number"!=typeof e.length)throw Error("bad length");const t=e.length+this.length;if(this.capacity>>=7;t.reverse();for(let e=0;e4294967295&&(n=1),a.setUint32(r,4294967295&o,!0),t=n,n=0}}negate(){let e=new DataView(this.buf.buffer);for(let t=0;t<8;t++){let n=4*t;e.setUint32(n,~e.getUint32(n,!0))}let t=new Uint8Array(Xs);t[0]=1,this.add(t)}getFingerprint(e){let t=new al;return t.extend(this.buf),t.extend(rl(e)),Tt(t.unwrap()).subarray(0,16)}},ll=class{items;sealed;constructor(){this.items=[],this.sealed=!1}insert(e,t){if(this.sealed)throw Error("already sealed");const n=Xi(t);if(n.byteLength!==Xs)throw Error("bad id size for added item");this.items.push({timestamp:e,id:n})}seal(){if(this.sealed)throw Error("already sealed");this.sealed=!0,this.items.sort(dl);for(let e=1;e=this.items.length)throw Error("out of range");return this.items[e]}iterate(e,t,n){this._checkSealed(),this._checkBounds(e,t);for(let a=e;adl(e,n)<0)}fingerprint(e,t){let n=new sl;return n.setToZero(),this.iterate(e,t,e=>(n.add(e.id),!0)),n.getFingerprint(t-e)}_checkSealed(){if(!this.sealed)throw Error("not sealed")}_checkBounds(e,t){if(e>t||t>this.items.length)throw Error("bad range")}_binarySearch(e,t,n,a){let i=n-t;for(;i>0;){let n=t,r=Math.floor(i/2);n+=r,a(e[n])?(t=++n,i-=r+1):i=r}return t}},ul=class{storage;frameSizeLimit;lastTimestampIn;lastTimestampOut;constructor(e,t=6e4){if(t<4096)throw Error("frameSizeLimit too small");this.storage=e,this.frameSizeLimit=t,this.lastTimestampIn=0,this.lastTimestampOut=0}_bound(e,t){return{timestamp:e,id:t||new Uint8Array(0)}}initiate(){let e=new al;return e.extend(new Uint8Array([97])),this.splitRange(0,this.storage.size(),this._bound(Number.MAX_VALUE),e),Hi(e.unwrap())}reconcile(e,t,n){const a=new al(Xi(e));this.lastTimestampIn=this.lastTimestampOut=0;let i=new al;i.extend(new Uint8Array([97]));let r=ol(a,1)[0];if(r<96||r>111)throw Error("invalid negentropy protocol version byte");if(97!==r)throw Error("unsupported negentropy protocol version requested: "+(r-96));let o=this.storage.size(),s=this._bound(0),l=0,u=!1;for(;0!==a.length;){let e=new al,r=()=>{u&&(u=!1,e.extend(this.encodeBound(s)),e.extend(rl(el)))},c=this.decodeBound(a),d=il(a),h=l,p=this.storage.findLowerBound(l,o,c);if(d===el)u=!0;else if(d===tl){0!==cl(ol(a,16),this.storage.fingerprint(h,p))?(r(),this.splitRange(h,p,c,e)):u=!0}else{if(d!==nl)throw Error("unexpected mode");{let e=il(a),i={};for(let t=0;t{let n=e.id;const a=Hi(n);return i[a]?delete i[Hi(n)]:t?.(a),!0}),n)for(let e of Object.values(i))n(Hi(e))}}if(this.exceededFrameSizeLimit(i.length+e.length)){let e=this.storage.fingerprint(p,o);i.extend(this.encodeBound(this._bound(Number.MAX_VALUE))),i.extend(rl(tl)),i.extend(e);break}i.extend(e),l=p,s=c}return 1===i.length?null:Hi(i.unwrap())}splitRange(e,t,n,a){let i=t-e;if(i<32)a.extend(this.encodeBound(n)),a.extend(rl(nl)),a.extend(rl(i)),this.storage.iterate(e,t,e=>(a.extend(e.id),!0));else{let r=Math.floor(i/16),o=i%16,s=e;for(let e=0;e<16;e++){let i,l=r+(e(a===s-1?e=n:t=n,!0)),i=this.getMinimalBound(e,t)}a.extend(this.encodeBound(i)),a.extend(rl(tl)),a.extend(u)}}}exceededFrameSizeLimit(e){return e>this.frameSizeLimit-200}decodeTimestampIn(e){let t=il(e);return t=0===t?Number.MAX_VALUE:t-1,this.lastTimestampIn===Number.MAX_VALUE||t===Number.MAX_VALUE?(this.lastTimestampIn=Number.MAX_VALUE,Number.MAX_VALUE):(t+=this.lastTimestampIn,this.lastTimestampIn=t,t)}decodeBound(e){let t=this.decodeTimestampIn(e),n=il(e);if(n>Xs)throw Error("bound key too long");return{timestamp:t,id:ol(e,n)}}encodeTimestampOut(e){if(e===Number.MAX_VALUE)return this.lastTimestampOut=Number.MAX_VALUE,rl(0);let t=e;return e-=this.lastTimestampOut,this.lastTimestampOut=t,rl(e+1)}encodeBound(e){let t=new al;return t.extend(this.encodeTimestampOut(e.timestamp)),t.extend(rl(e.id.length)),t.extend(e.id),t}getMinimalBound(e,t){if(t.timestamp!==e.timestamp)return this._bound(t.timestamp);{let n=0,a=t.id,i=e.id;for(let e=0;et[n])return 1}return e.byteLength>t.byteLength?1:e.byteLength{switch(e[0]){case"NEG-MSG":e.length<3&&console.warn(`got invalid NEG-MSG from ${this.relay.url}: ${e}`);try{const t=this.neg.reconcile(e[2],this.onhave,this.onneed);t?this.relay.send(`["NEG-MSG", "${this.subscription.id}", "${t}"]`):(this.close(),a.onclose?.())}catch(e){console.error("negentropy reconcile error:",e),a?.onclose?.(`reconcile error: ${e}`)}break;case"NEG-CLOSE":{const t=e[2];console.warn("negentropy error:",t),a.onclose?.(t);break}case"NEG-ERR":a.onclose?.()}}}async start(){const e=this.neg.initiate();this.relay.send(`["NEG-OPEN","${this.subscription.id}",${JSON.stringify(this.filter)},"${e}"]`)}close(){this.relay.send(`["NEG-CLOSE","${this.subscription.id}"]`),this.subscription.close()}},pl={};i(pl,{getToken:()=>gl,hashPayload:()=>xl,unpackEventFromToken:()=>vl,validateEvent:()=>Cl,validateEventKind:()=>yl,validateEventMethodTag:()=>kl,validateEventPayloadTag:()=>Sl,validateEventTimestamp:()=>bl,validateEventUrlTag:()=>wl,validateToken:()=>_l});var fl,ml="Nostr ";async function gl(e,t,n,a=!1,i){const r={kind:Yn,tags:[["u",e],["method",t]],created_at:Math.round((new Date).getTime()/1e3),content:""};i&&r.tags.push(["payload",xl(i)]);const o=await n(r);return(a?ml:"")+ii.encode(At.encode(JSON.stringify(o)))}async function _l(e,t,n){const a=await vl(e).catch(e=>{throw e});return await Cl(a,t,n).catch(e=>{throw e})}async function vl(e){if(!e)throw new Error("Missing token");e=e.replace(ml,"");const t=Pt.decode(ii.decode(e));if(!t||0===t.length||!t.startsWith("{"))throw new Error("Invalid token");return JSON.parse(t)}function bl(e){return!!e.created_at&&Math.round((new Date).getTime()/1e3)-e.created_at<60}function yl(e){return e.kind===Yn}function wl(e,t){const n=e.tags.find(e=>"u"===e[0]);return!!n&&(n.length>0&&n[1]===t)}function kl(e,t){const n=e.tags.find(e=>"method"===e[0]);return!!n&&(n.length>0&&n[1].toLowerCase()===t.toLowerCase())}function xl(e){return it(Tt(At.encode(JSON.stringify(e))))}function Sl(e,t){const n=e.tags.find(e=>"payload"===e[0]);if(!n)return!1;const a=xl(t);return n.length>0&&n[1]===a}async function Cl(e,t,n,a){if(!$t(e))throw new Error("Invalid nostr event, signature invalid");if(!yl(e))throw new Error("Invalid nostr event, kind invalid");if(!bl(e))throw new Error("Invalid nostr event, created_at timestamp invalid");if(!wl(e,t))throw new Error("Invalid nostr event, url tag invalid");if(!kl(e,n))throw new Error("Invalid nostr event, method tag invalid");if(Boolean(a)&&"object"==typeof a&&Object.keys(a).length>0&&!Sl(e,a))throw new Error("Invalid nostr event, payload tag does not match request body hash");return!0}return fl=r,((i,r,o,s)=>{if(r&&"object"==typeof r||"function"==typeof r)for(let l of n(r))a.call(i,l)||l===o||e(i,l,{get:()=>r[l],enumerable:!(s=t(r,l))||s.enumerable});return i})(e({},"__esModule",{value:!0}),fl)})();window.localisation={},window.localisation.de={confirm:"Ja",server:"Server",theme:"Theme",site_customisation:"Website-Anpassung",funding:"Funding",users:"Benutzer",audit:"Prüfung",apps:"Apps",channels:"Kanäle",transactions:"Transaktionen",dashboard:"Armaturenbrett",node:"Knoten",export_users:"Benutzer exportieren",no_users:"Keine Benutzer gefunden",total_capacity:"Gesamtkapazität",avg_channel_size:"Durchschn. Kanalgröße",biggest_channel_size:"Größte Kanalgröße",smallest_channel_size:"Kleinste Kanalgröße",number_of_channels:"Anzahl der Kanäle",active_channels:"Aktive Kanäle",connect_peer:"Peer verbinden",connect:"Verbinden",open_channel:"Offener Kanal",open:"Öffnen",close_channel:"Kanal schließen",close:"Schließen",restart:"Server neu starten",save:"Speichern",save_tooltip:"Änderungen speichern",credit_debit:"Kredit / Debit",credit_hint:"Klicke Enter, um das Konto zu belasten",credit_label:"{denomination} zu belasten",credit_ok:"Erfolgreiches Gutschreiben/Abziehen von virtuellen Geldern ({amount} Sats). Zahlungen hängen von den tatsächlichen Mitteln der Finanzierungsquelle ab.",restart_tooltip:"Starte den Server neu, um die Änderungen zu übernehmen",add_funds_tooltip:"Füge Geld zu einer Wallet hinzu.",reset_defaults:"Zurücksetzen",reset_defaults_tooltip:"Alle Einstellungen auf die Standardeinstellungen zurücksetzen.",download_backup:"Datenbank-Backup herunterladen",name_your_wallet:"Vergib deiner {name} Wallet einen Namen",paste_invoice_label:"Füge eine Rechnung, Zahlungsanforderung oder LNURL ein *",lnbits_description:"Einfach zu installieren und kompakt, LNbits kann auf jeder Funding-Quelle im Lightning Netzwerk aufsetzen und sogar LNbits selbst! Du kannst LNbits für dich selbst betreiben oder anderen die Verwaltung durch dich anbieten. Jede Wallet hat ihre eigenen API-Schlüssel und die Anzahl der Wallets ist unbegrenzt. Die Möglichkeit, Gelder auf verschiedene Accounts mit unterschiedlicher Logik aufteilen zu können macht LNbits zu einem nützlichen Werkzeug für deine Buchhaltung - aber auch als Entwicklungswerkzeug. Erweiterungen bereichern LNbits Accounts um zusätzliche Funktionalität, so dass du mit einer Reihe von neuartigen Technologien auf dem Lightning-Netzwerk experimentieren kannst. Wir haben es so einfach wie möglich gemacht, Erweiterungen zu entwickeln, und als freies und Open-Source-Projekt möchten wir Menschen ermutigen, sich selbst hieran zu versuchen und gemeinsam mit uns neue Funktionalitäten zu entwickeln.",export_to_phone:"Auf dem Telefon öffnen",export_to_phone_desc:"Dieser QR-Code beinhaltet vollständige Rechte auf deine Wallet. Du kannst den QR-Code mit Deinem Telefon scannen, um deine Wallet dort zu öffnen.",wallet:"Brieftasche:",wallets:"Wallets",add_wallet:"Wallet hinzufügen",delete_wallet:"Wallet löschen",delete_wallet_desc:"Die Wallet wird gelöscht, die hierin beinhalteten Daten hierin oder innerhalb einer Erweiterung sind UNWIEDERBRINGLICH.",rename_wallet:"Wallet umbenennen",update_name:"Namen aktualisieren",fiat_tracking:"Fiat-Tracking",currency:"Währung",update_currency:"Währung aktualisieren",press_to_claim:"Klicken, um Bitcoin einzufordern.",donate:"Spenden",view_github:"Auf GitHub anzeigen",voidwallet_active:"VoidWallet ist aktiv! Zahlungen deaktiviert",use_with_caution:"BITTE MIT VORSICHT BENUTZEN - {name} Wallet ist noch BETA",service_fee:"Dienstleistungsgebühr: {amount} % pro Transaktion",service_fee_max:"Servicegebühr: {amount} % pro Transaktion (max {max} Sats)",service_fee_tooltip:"Bearbeitungsgebühr, die vom LNbits Server-Administrator pro ausgehender Transaktion berechnet wird",toggle_darkmode:"Auf Dark Mode umschalten",payment_reactions:"Zahlungsreaktionen",view_swagger_docs:"LNbits Swagger API-Dokumentation",api_docs:"API-Dokumentation",api_keys_api_docs:"Knoten-URL, API-Schlüssel und API-Dokumentation",lnbits_version:"LNbits-Version",runs_on:"Läuft auf",paste:"Einfügen",paste_from_clipboard:"Einfügen aus der Zwischenablage",paste_request:"Anfrage einfügen",create_invoice:"Rechnung erstellen",camera_tooltip:"Verwende die Kamera, um eine Rechnung oder einen QR-Code zu scannen",export_csv:"Exportieren als CSV",chart_tooltip:"Diagramm anzeigen",pending:"Ausstehend",copy_invoice:"Rechnung kopieren",withdraw_from:"Abheben von",cancel:"Stornieren",scan:"Scannen",read:"Lesen",pay:"Zahlen",memo:"Memo",date:"Datum",payment_processing:"Zahlung wird verarbeitet ...",not_enough_funds:"Geldmittel sind erschöpft!",search_by_tag_memo_amount:"Suche nach Tag, Memo, Betrag",invoice_waiting:"Rechnung wartend auf Zahlung",payment_received:"Zahlung erhalten",payment_sent:"Zahlung gesendet",receive:"erhalten",send:"schicken",outgoing_payment_pending:"Ausgehende Zahlung wartend",drain_funds:"Sats abziehen",drain_funds_desc:"LNURL-withdraw QR-Code, der das Abziehen aller Geldmittel aus dieser Wallet erlaubt. Teile ihn mit niemandem! Kompatibel mit balanceCheck und balanceNotify, so dass dein Wallet die Sats nach dem ersten Abzug kontinuierlich von hier abziehen kann.",i_understand:"Ich verstehe",copy_wallet_url:"Wallet-URL kopieren",disclaimer_dialog_title:"Wichtig!",disclaimer_dialog:"Login-Funktionalität wird in einem zukünftigen Update veröffentlicht. Bis dahin ist die Speicherung der Wallet-URL als Lesezeichen absolut notwendig, um Zugriff auf die Wallet zu erhalten! Dieser Service ist in BETA und wir übernehmen keine Verantwortung für Verluste durch verlorene Zugriffe.",no_transactions:"Keine Transaktionen",manage:"Verwalten",exchanges:"Börsenplätze",extensions:"Erweiterungen",no_extensions:"Du hast noch keine Erweiterungen installiert :(",created:"Erstellt",search_extensions:"Sucherweiterungen",extension_sources:"Erweiterungsquellen",ext_sources_hint:"Repositorys, von denen die Erweiterungen heruntergeladen werden können.",ext_sources_label:"Quell-URL (verwenden Sie nur die offizielle LNbits-Erweiterungsquelle und vertrauenswürdige Quellen)",warning:"Warnung",repository:"Repository",confirm_continue:"Bist du sicher, dass du fortfahren möchtest?",manage_extension_details:"Erweiterung installieren/deinstallieren",install:"Installieren",uninstall:"Deinstallieren",drop_db:"Daten löschen",enable:"Aktivieren",pay_to_enable:"Zahlen Sie zum Aktivieren",enable_extension_details:"Erweiterung für aktuellen Benutzer aktivieren",disable:"Deaktivieren",delete:"Löschen",installed:"Installiert",activated:"Aktiviert",deactivated:"Deaktiviert",release_notes:"Versionshinweise",activate_extension_details:"Erweiterung für Benutzer verfügbar/nicht verfügbar machen",featured:"Vorgestellt",all:"Alle",only_admins_can_install:"(Nur Administratorkonten können Erweiterungen installieren)",admin_only:"Nur für Admins",new_version:"Neue Version",extension_depends_on:"Hängt ab von:",extension_rating_soon:"Bewertungen sind bald verfügbar",extension_installed_version:"Installierte Version",extension_uninstall_warning:"Sie sind dabei, die Erweiterung für alle Benutzer zu entfernen.",uninstall_confirm:"Ja, deinstallieren",extension_db_drop_info:"Alle Daten für die Erweiterung werden dauerhaft gelöscht. Es gibt keine Möglichkeit, diesen Vorgang rückgängig zu machen!",extension_db_drop_warning:"Sie sind dabei, alle Daten für die Erweiterung zu entfernen. Bitte geben Sie den Namen der Erweiterung ein, um fortzufahren:",extension_required_lnbits_version:"Diese Version erfordert mindestens die LNbits-Version",min_version:"Mindestwert (inklusive)",max_version:"Maximalwert (ausgeschlossen)",payment_hash:"Zahlungs-Hash",fee:"Gebühr",amount:"Menge",amount_sats:"Betrag (sats)",tag:"Tag",unit:"Einheit",description:"Beschreibung",expiry:"Ablauf",webhook:"Webhook",payment_proof:"Beleg",update:"Aktualisieren",update_available:"Aktualisierung {version} verfügbar!",latest_update:"Sie sind auf der neuesten Version {version}.",notifications:"Benachrichtigungen",no_notifications:"Keine Benachrichtigungen",notifications_disabled:"LNbits Statusbenachrichtigungen sind deaktiviert.",enable_notifications:"Aktiviere Benachrichtigungen",enable_notifications_desc:"Wenn aktiviert, werden die neuesten LNbits-Statusaktualisierungen, wie Sicherheitsvorfälle und Updates, abgerufen.",enable_watchdog:"Aktiviere Watchdog",enable_watchdog_desc:"Wenn aktiviert, wird Ihre Zahlungsquelle automatisch auf VoidWallet umgestellt, wenn Ihr Guthaben niedriger als das LNbits-Guthaben ist. Nach einem Update müssen Sie dies manuell aktivieren.",watchdog_interval:"Überwachungszeitintervall",watchdog_interval_desc:"Wie oft die Hintergrundaufgabe nach einem Abschaltsignal im Wachhund-Delta [node_balance - lnbits_balance] suchen soll (in Minuten).",watchdog_delta:"Watchdog Delta",watchdog_delta_desc:"Limit, bevor der Notausschalter die Finanzierungsquelle auf VoidWallet ändert [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Benachrichtigungsquelle",notification_source_label:"Quell-URL (verwenden Sie nur die offizielle LNbits-Statusquelle und Quellen, denen Sie vertrauen können)",more:"mehr",less:"weniger",releases:"Veröffentlichungen",watchdog:"Wachhund",server_logs:"Serverprotokolle",ip_blocker:"IP-Sperre",security:"Sicherheit",security_tools:"Sicherheitstools",block_access_hint:"Zugriff per IP sperren",allow_access_hint:"Zugriff durch IP erlauben (überschreibt blockierte IPs)",enter_ip:"Geben Sie die IP ein und drücken Sie die Eingabetaste",rate_limiter:"Ratenbegrenzer",wallet_limiter:"Geldbeutel-Limiter",wallet_limit_max_withdraw_per_day:"Maximales tägliches Wallet-Auszahlungslimit in Sats (0 zum Deaktivieren)",wallet_max_ballance:"Maximales Guthaben der Wallet in Sats (0 zum Deaktivieren)",wallet_limit_secs_between_trans:"Mindestsekunden zwischen Transaktionen pro Wallet (0 zum Deaktivieren)",number_of_requests:"Anzahl der Anfragen",time_unit:"Zeiteinheit",minute:"Minute",second:"Sekunde",hour:"Stunde",disable_server_log:"Server-Log deaktivieren",enable_server_log:"Serverprotokollierung aktivieren",coming_soon:"Funktion demnächst verfügbar",session_has_expired:"Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an.",instant_access_question:"Möchten Sie sofortigen Zugang?",login_with_user_id:"Mit Benutzer-ID anmelden",or:"oder",create_new_wallet:"Neue Geldbörse erstellen",login_to_account:"Melden Sie sich bei Ihrem Konto an",create_account:"Konto erstellen",account_settings:"Kontoeinstellungen",signin_with_nostr:"Mit Nostr fortfahren",signin_with_google:"Mit Google anmelden",signin_with_github:"Anmelden mit GitHub",signin_with_keycloak:"Mit Keycloak anmelden",username_or_email:"Benutzername oder E-Mail",password:"Passwort",password_config:"Passwortkonfiguration",password_repeat:"Passwortwiederholung",change_password:"Passwort ändern",update_credentials:"Anmeldeinformationen aktualisieren",update_pubkey:"Öffentlichen Schlüssel aktualisieren",set_password:"Passwort festlegen",invalid_password:"Das Passwort muss mindestens 8 Zeichen haben.",login:"Anmelden",register:"Registrieren",username:"Benutzername",pubkey:"Öffentlicher Schlüssel",user_id:"Benutzer-ID",email:"E-Mail",first_name:"Vorname",last_name:"Nachname",picture:"Bild",verify_email:"E-Mail verifizieren mit",account:"Konto",update_account:"Konto aktualisieren",invalid_username:"Ungültiger Benutzername",auth_provider:"Anbieter für Authentifizierung",my_account:"Mein Konto",back:"Zurück",logout:"Abmelden",look_and_feel:"Aussehen und Verhalten",toggle_gradient:"Verlauf umschalten",gradient_background:"Verlaufs-Hintergrund",language:"Sprache",color_scheme:"Farbschema",admin_settings:"Admin-Einstellungen",extension_cost:"Diese Version erfordert eine Zahlung von mindestens {cost} Sats.",extension_paid_sats:"Sie haben bereits {paid_sats} Sats bezahlt.",release_details_error:"Kann die Details zur Veröffentlichung nicht abrufen.",pay_from_wallet:"Zahlen aus dem Geldbeutel",wallet_required:"Wallet *",show_qr:"QR anzeigen",retry_install:"Installieren erneut versuchen",new_payment:"Neue Zahlung vornehmen",update_payment:"Zahlung aktualisieren",already_paid_question:"Haben Sie schon bezahlt?",sell:"Verkaufen",sell_require:"Zahlung anfordern, um die Erweiterung zu aktivieren",sell_info:"Die {name}-Erweiterung erfordert eine Zahlung von mindestens {amount} Satoshis, um aktiviert zu werden.",hide_empty_wallets:"Leere Geldbörsen verbergen",recheck:"Erneut überprüfen",contributors:"Mitwirkende",license:"Lizenz",reset_key:"Zurücksetzen-Schlüssel",reset_password:"Passwort zurücksetzen",border_choices:"Randoptionen",select_all:"Alles auswählen",nfc_supported:"NFC unterstützt",nfc_not_supported:"NFC wird nicht unterstützt",expire_date:"Ablaufdatum:",hash:"Hash:",welcome_lnbits:"Willkommen bei LNbits",setup_su_account:"Richten Sie das Superuser-Konto unten ein.",create_ticker_converter:"Währungsticker-Konverter erstellen",enable_audit:"Audit aktivieren",recommended:"Empfohlen",audit_desc:"HTTP-Anfragen entsprechend den angegebenen Filtern aufzeichnen",audit_record_req:"Anfragekörper aufzeichnen",audit_record_warning:"Warnung:",audit_record_req_warning_1:"Vertrauliche Daten (wie Passwörter) werden protokolliert.",audit_record_req_warning_2:"Der Anfragetext kann groß sein.",audit_record_use:"Verwenden Sie es mit Vorsicht.",audit_ip:"IP-Adresse aufzeichnen",audit_ip_desc:"Speichern Sie die IP-Adresse des Clients",audit_path_params:"Pfadparameter aufzeichnen",audit_query_params:"Abfrageparameter aufzeichnen",audit_http_methods:"HTTP-Methoden einschließen",audit_http_methods_hint:"Liste der HTTP-Methoden, die einbezogen werden sollen. Leere Listen bedeuten alle.",audit_http_methods_label:"HTTP-Methoden",audit_resp_codes:"HTTP-Antwortcodes einbeziehen",audit_resp_codes_hint:"Liste der einzuschließenden HTTP-Codes (regex-Match). Leere Liste bedeutet alle. Z.B.: 4.*, 5.*",audit_resp_codes_label:"HTTP-Antwortcode (Regex)",audit_paths:"Einfügepfade",audit_paths_hint:"Liste der aufzunehmenden Pfade (Regex-Übereinstimmung). Leere Liste bedeutet alle.",audit_paths_label:"HTTP-Pfad (Regex)",audit_paths_exclude:"Pfade ausschließen",audit_paths_exclude_hint:"Liste der auszuschließenden Pfade (regex-Match). Leere Liste bedeutet keine.",audit_paths_exclude_label:"HTTP-Pfad (Regex)",exchange_providers:"Austauschdienste",admin_extensions:"Admin-Erweiterungen",admin_extensions_label:"Admin-Erweiterungen",admin_extensions_hint:"Nur Benutzer mit Admin-Rechten können Erweiterungen verwenden.",user_default_extensions:"Standarderweiterungen des Benutzers",user_default_extensions_label:"Benutzererweiterungen",user_default_extensions_hint:"Erweiterungen, die standardmäßig für die Benutzer aktiviert werden.",miscellanous:"Verschiedenes",misc_disable_extensions:"Erweiterungen deaktivieren",misc_disable_extensions_label:"Alle Erweiterungen deaktivieren",misc_hide_api:"API ausblenden",misc_hide_api_label:"Verbirgt Wallet-API, Erweiterungen können es ehren",wallets_management:"Verwaltung von Geldbörsen",funding_source_info:"Finanzierungsquelleninformationen",funding_source:"Finanzierungsquelle: {wallet_class}",node_balance:"Kontostand: {balance} Sats",lnbits_balance:"LNbits-Guthaben: {balance} Sats",funding_reserve_percent:"Reservieren Prozent: {percent} %",node_management:"Knotenverwaltung",node_management_not_supported:"Knotenverwaltung wird von der aktiven Finanzierungsquelle nicht unterstützt",toggle_node_ui:"Node-Benutzeroberfläche",toggle_public_node_ui:"Öffentliche Knoten-Benutzeroberfläche",toggle_transactions_node_ui:"Transaktionen-Tab (Bei großen CLN-Knoten deaktivieren)",invoice_expiry:"Rechnungsablauf",invoice_expiry_label:"Rechnungsablauf (Sekunden)",fee_reserve:"Gebührenreserve",fee_reserve_msats:"Reservierungsgebühr in msats",fee_reserve_percent:"Reservierungsgebühr in Prozent",server_management:"Serververwaltung",base_url:"Basis-URL",base_url_label:"Statische/Basis-URL für den Server",authentication:"Authentifizierung",auth_token_expiry_label:"Token-Ablaufminuten",auth_token_expiry_hint:"Zeit in Minuten bis der Token abläuft",auth_allowed_methods_label:"Erlaubte Autorisierungsmethoden",auth_allowed_methods_hint:"Wählen Sie Autorisierungsmethoden aus",auth_nostr_label:"Nostr-Anforderungs-URL",auth_nostr_hint:"Absolute URL, die die Clients für die Anmeldung verwenden.",auth_google_ci_label:"Google-Client-ID",auth_google_ci_hint:"Stellen Sie sicher, dass die autorisierten Umleitungs-URIs https://{domain}/api/v1/auth/google/token enthalten",auth_google_cs_label:"Google-Client-Geheimnis",auth_gh_client_id_label:"GitHub-Client-ID",auth_gh_client_id_hint:"Stellen Sie sicher, dass die URL für den Autorisierungsrückruf auf https://{domain}/api/v1/auth/github/token gesetzt ist.",auth_gh_client_secret_label:"GitHub-Client-Geheimnis",auth_keycloak_label:"Keycloak Discovery-URL",auth_keycloak_ci_label:"Keycloak-Client-ID",auth_keycloak_ci_hint:"Stellen Sie sicher, dass die Autorisierungs-Callback-URL auf https://{domain}/api/v1/auth/keycloak/token eingestellt ist.",auth_keycloak_cs_label:"Keycloak-Client-Geheimnis",currency_settings:"Währungseinstellungen",allowed_currencies:"Erlaubte Währungen",allowed_currencies_hint:"Begrenzen Sie die Anzahl der verfügbaren Fiat-Währungen",default_account_currency:"Standardkontowährung",default_account_currency_hint:"Standardwährung für Buchhaltung",service_fee_label:"Servicegebühr (%)",service_fee_hint:"Gebühr pro Transaktion (%)",service_fee_max_label:"Servicegebühr max. (sats)",service_fee_max_hint:"Maximale Servicegebühr in (sats) berechnen.",fee_wallet:"Gebühren-Wallet",fee_wallet_label:"Gebühren-Wallet (Wallet-ID)",fee_wallet_hint:"Wallet-ID, an die Gelder gesendet werden sollen",disable_fee:"Gebühr deaktivieren",disable_fee_internal:"Dienstleistungsgebühr für interne Zahlungen deaktivieren",disable_fee_internal_desc:"Dienstleistungsgebühr für interne Lightning-Zahlungen deaktivieren",ui_management:"UI-Verwaltung",ui_site_title:"Seitentitel",ui_site_tagline:"Seitenslogan",ui_elements_enable:"Elemente auf der Startseite aktivieren",ui_elements_disable:"Elemente auf der Startseite deaktivieren",ui_toggle_elements_tip:"Entfernen Sie Homepage-Elemente wie 'läuft auf' usw.",ui_site_description:"Seitenbeschreibung",ui_site_description_hint:"Verwenden Sie einfachen Text, Markdown oder rohes HTML",ui_default_wallet_name:"Standard-Walletname",lnbits_wallet:"LNbits-Wallet",denomination:"Nomination",denomination_hint:"Der Name für das FakeWallet-Token",ui_qr_code_logo:"QR-Code-Logo",ui_qr_code_logo_hint:"URL zum Logo-Bild im QR-Code",ui_custom_badge:"Benutzerdefiniertes Abzeichen",ui_custom_badge_label:"Benutzerdefiniertes Abzeichen 'MIT VORSICHT VERWENDEN - LNbits-Wallet ist noch in der BETA-Phase'",ui_custom_badge_color_label:"Benutzerdefinierte Abzeichenfarbe",themes:"Themen",themes_hint:"Wählen Sie Themen, die für Benutzer verfügbar sind",custom_logo:"Benutzerdefiniertes Logo",custom_logo_hint:"URL zum Logobild",ad_space_title:"Anzeigentitel",ad_space_title_label:"Unterstützt von",ad_slots:"Werbeplätze",ad_slots_hint:"URL-Adressen und Bilddateipfade im CSV-Format, Erweiterungen können darauf achten",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Anzeigen aktiviert",ads_disabled:"Anzeigen deaktiviert",user_management:"Benutzerverwaltung",admin_users:"Admin-Benutzer",admin_users_hint:"Benutzer mit Administratorrechten",admin_users_label:"Benutzer-ID",allowed_users:"Zugelassene Benutzer",allowed_users_hint:"Nur diese Benutzer können LNbits verwenden.",allowed_users_label:"Benutzer-ID",allow_creation_user:"Erlauben Sie die Erstellung neuer Benutzer",allow_creation_user_desc:"Erlauben Sie das Erstellen neuer Benutzer auf der Indexseite",components:"Komponenten",long_running_endpoints:"Top 5 lang laufende Endpunkte",http_request_methods:"HTTP-Anfragemethoden",http_response_codes:"HTTP-Antwortcodes",request_details:"Anfragedetails",http_request_details:"HTTP-Anfragedetails"},window.localisation.en={confirm:"Yes",server:"Server",theme:"Theme",site_customisation:"Site Customisation",funding:"Funding",users:"Users",audit:"Audit",api_watch:"Api Watch",apps:"Apps",channels:"Channels",transactions:"Transactions",dashboard:"Dashboard",node:"Node",export_users:"Export Users",no_users:"No users found",total_capacity:"Total Capacity",avg_channel_size:"Avg. Channel Size",biggest_channel_size:"Biggest Channel Size",smallest_channel_size:"Smallest Channel Size",number_of_channels:"Number of Channels",active_channels:"Active Channels",connect_peer:"Connect Peer",connect:"Connect",reconnect:"Reconnect",open_channel:"Open Channel",open:"Open",clear:"Clear",close_channel:"Close Channel",close:"Close",restart:"Restart server",image_library:"Image Library",save:"Save",save_tooltip:"Save your changes",must_save:"You have unsaved changes",credit_debit:"Credit / Debit",credit_hint:"Press Enter to credit/debit wallet (negative values allowed)",credit_label:"{denomination} to credit/debit",credit_ok:"Success crediting/debiting virtual funds ({amount} sats). Payments depend on actual funds on funding source.",restart_tooltip:"Restart the server for changes to take effect",add_funds_tooltip:"Add funds to a wallet.",reset_defaults:"Reset to defaults",reset_defaults_tooltip:"Delete all settings and reset to defaults.",download_backup:"Download database backup",name_your_wallet:"Name your {name} wallet",paste_invoice_label:"Paste an invoice, payment request or lnurl code *",lnbits_description:"Easy to set up and lightweight, LNbits can run on any Lightning Network funding source and even LNbits itself! You can run LNbits for yourself, or easily offer a custodian solution for others. Each wallet has its own API keys and there is no limit to the number of wallets you can make. Being able to partition funds makes LNbits a useful tool for money management and as a development tool. Extensions add extra functionality to LNbits so you can experiment with a range of cutting-edge technologies on the lightning network. We have made developing extensions as easy as possible, and as a free and open-source project, we encourage people to develop and submit their own.",export_to_phone:"Export to Phone with QR Code",export_to_phone_desc:"This QR code contains your wallet URL with full access. You can scan it from your phone to open your wallet from there.",access_wallet_on_mobile:"Mobile Access",stored_paylinks:"Stored LNURL pay links",wallet:"Wallet: ",wallet_name:"Wallet name",wallet_type:"Wallet type",shared_wallet:"Shared Wallet",share_wallet:"Share Wallet",update_permissions:"Update Permissions",shared_wallet_id:"Shared Wallet ID",shared_wallet_desc:"You have been invited to have access to someone else's wallet.",wallets:"Wallets",exclude_wallets:"Exclude Wallets",add_wallet:"Add wallet",reject_wallet:"Reject wallet",add_new_wallet:"Add a new wallet",pin_wallet:"Pin wallet",delete_wallet:"Delete wallet",delete_wallet_desc:"This whole wallet will be deleted, the funds will be UNRECOVERABLE.",rename_wallet:"Rename wallet",update_name:"Update name",fiat_tracking:"Fiat tracking",fiat_providers:"Fiat providers",currency:"Currency",update_currency:"Update currency",press_to_claim:"Press to claim bitcoin",claim_desc:"It seems you have a claimable amount of bitcoin but you don’t have a wallet yet. Press the button below to claim it. This will create a new wallet for you.",donate:"Donate",view_github:"View on GitHub",voidwallet_active:"VoidWallet is active! Payments disabled",voidwallet_active_user:"Funding source unavailable. Please contact your admin to configure.",voidwallet_active_admin:"Funding source unavailable. Click here to configure.",service_fee_badge:"Service fee: {amount} % per transaction",service_fee_max_badge:"Service fee: {amount} % per transaction (max {max} {denom})",service_fee_tooltip:"Service fee charged by the LNbits server admin per outgoing transaction",toggle_darkmode:"Toggle Dark Mode",payment_reactions:"Payment Reactions",view_swagger_docs:"View LNbits Swagger API docs",api_docs:"API docs",api_keys_api_docs:"Node URL, API keys and API docs",lnbits_version:"LNbits version",runs_on:"Runs on",paste:"Paste",paste_from_clipboard:"Paste from clipboard",paste_request:"Paste Request",create_invoice:"Create Invoice",camera_tooltip:"Use camera to scan an invoice/QR",export_csv:"Export to CSV",export_csv_details:"Export to CSV with details",chart_tooltip:"Show chart",pending:"Pending",copy_invoice:"Copy invoice",withdraw_from:"Withdraw from",cancel:"Cancel",scan:"Scan",read:"Read",write:"Write",pay:"Pay",memo:"Memo",date:"Date",path:"Path",internal_memo:"Internal memo (optional)",internal_memo_hint_receive:"This memo is not shown to the payer but it's stored in the invoice for your reference.",internal_memo_hint_pay:"This memo is not shown to the payee but it's stored in the payment for your reference.",payment_processing:"Processing payment...",payment_processing:"Processing payment...",payment_successful:"Payment successful!",payment_pending:"Payment pending...",payment_check:"Check payment",not_enough_funds:"Not enough funds!",search_by_tag_memo_amount:"Search by tag, memo, amount",search:"Search",invoice_waiting:"Invoice waiting to be paid",payment_received:"Payment Received",payment_sent:"Payment Sent",payment_failed:"Payment Failed",receive:"receive",send:"send",outgoing_payment_pending:"Outgoing payment pending",drain_funds:"Drain Funds",drain_funds_desc:"This is an LNURL-withdraw QR code for slurping everything from this wallet. Do not share with anyone. It is compatible with balanceCheck and balanceNotify so your wallet may keep pulling the funds continuously from here after the first withdraw.",i_understand:"I understand",copy_wallet_url:"Copy wallet URL",disclaimer_dialog_title:"Important!",disclaimer_dialog:"You *must* save your login credentials to be able to access your wallet again. If you lose them, you will lose access to your wallet and funds.\n\nFind your login credentials on your account settings page.\n\nLNbits holds no responsibility for loss of access to funds.",no_transactions:"No transactions made yet",manage:"Manage",exchanges:"Exchanges",extensions:"Extensions",no_extensions:"You don't have any extensions installed :(",created:"Created",created_at:"Created At",updated_at:"Updated At",search_extensions:"Search extensions",search_wallets:"Search wallets",extension_sources:"Extension Sources",ext_sources_hint:"Repositories from where the extensions can be downloaded",ext_sources_label:"Source URL (only use the official LNbits extension source, and sources you can trust)",warning:"Warning",repository:"Repository",confirm_continue:"Are you sure you want to continue?",manage_extension_details:"Install/uninstall extension",upload:"Upload",install:"Install",uninstall:"Uninstall",drop_db:"Remove Data",enable:"Enable",enabled:"Enabled",pay_to_enable:"Pay To Enable",enable_extension_details:"Enable extension for current user",disable:"Disable",delete:"Delete",installed:"Installed",activated:"Activated",deactivated:"Deactivated",release_notes:"Release Notes",activate_extension_details:"Make extension available/unavailable for users",featured:"Featured",all:"All",only_admins_can_install:"(Only admin accounts can install extensions)",only_admins_can_create_extensions:"Only admin accounts can create extensions",admin_only:"Admin Only",new_version:"New Version",extension_has_free_release:"Has free releases",extension_has_paid_release:"Has paid releases",extension_depends_on:"Depends on:",extension_rating_soon:"Ratings coming soon",extension_installed_version:"Installed version",extension_uninstall_warning:"You are about to remove the extension for all users.",uninstall_confirm:"Yes, Uninstall",extension_db_drop_info:"All data for the extension will be permanently deleted. There is no way to undo this operation!",extension_db_drop_warning:"You are about to remove all data for the extension. Please type the extension name to continue:",extension_required_lnbits_version:"This release requires LNbits version",min_version:"Minimum (included)",max_version:"Maximum (excluded)",preimage:"Preimage",preimage_hint:"Preimage to settle the hold invoice",hold_invoice:"Hold Invoice",hold_invoice_description:"This invoice is on hold and requires a preimage to settle.",payment_hash:"Payment Hash",invoice_cancelled:"Invoice Cancelled",invoice_settled:"Invoice Settled",hold_invoice_payment_hash:"Payment hash for hold invoice (optional)",settle_invoice:"Settle Invoice",cancel_invoice:"Cancel Invoice",fee:"Fee",amount:"Amount",amount_limits:"Amount Limits",amount_sats:"Amount (sats)",faucest_wallet:"Faucet Wallet",faucest_wallet_desc_1:"Each time a payment is confirmed by the {provider} provider funds will be subtracted from this wallet.",faucest_wallet_desc_2:"This helps monitor all {provider} payments and their status.",faucest_wallet_desc_3:"This wallet must be topped up with the amount of sats that the admin is willing to offer in exchange for the fiat currency.",faucest_wallet_desc_4:"If this wallet is configured, but is empty, the {provider} payments will not be processed.",faucest_wallet_desc_5:"This wallet can eventually get to a negative balance if parallel fiat payments are made.",faucest_wallet_id:"Faucet Wallet ID (optional)",faucest_wallet_id_hint:"Wallet ID to use for the faucet. It will be used to send the funds to the user.",tag:"Tag",unit:"Unit",description:"Description",expiry:"Expiry",webhook:"Webhook",webhook_url:"Webhook URL",webhook_url_hint:"Webhook URL to send the payment details to. It will be called when the payment is completed.",webhook_events_list:"The following events must be supported by the webhook:",webhook_stripe_description:"One the stripe side you must configure a webhook with a URL that points to your LNbits server.",payment_proof:"Payment Proof",update:"Update",update_available:"Update {version} available!",funding_sources:"Funding Sources",latest_update:"You are on the latest version {version}.",notifications:"Notifications",notifications_configure:"Configure Notifications",notifications_nostr_config:"Nostr Configuration",notifications_enable_nostr:"Enable Nostr",notifications_enable_nostr_desc:"Send notfications over Nostr",notifications_nostr_private_key:"Nostr Private Key",notifications_nostr_private_key_desc:"Private key (hex or nsec) to sign the messages sent to Nostr",notifications_nostr_identifier:"Nostr Identifier",notifications_nostr_identifier_desc:"Nip5 identifier to send notifications to",notifications_nostr_identifiers:"Nostr Identifiers",notifications_nostr_identifiers_desc:"List of identifiers to send notifications to",notifications_telegram_config:"Telegram Configuration",notifications_enable_telegram:"Enable Telegram",notifications_enable_telegram_desc:"Send notfications over Telegram",notifications_telegram_access_token:"Access Token",notifications_telegram_access_token_desc:"Access token for the bot",notifications_chat_id:"Telegram Chat ID",notifications_chat_id_desc:"Telegram Chat ID to send the notifications to",notifications_excluded_wallets_desc:"Do not send notifications for these wallets",notifications_email_config:"Email Configuration",notifications_enable_email:"Enable Email",notifications_enable_email_desc:"Send notifications over email",notifications_send_test_email:"Send test email",notifications_send_email:"Send email",notifications_send_email_desc:"Email you will send from",notifications_send_email_username:"Username",notifications_send_email_username_desc:"Username, will use the email if not set",notifications_send_email_password:"Send email password",notifications_send_email_password_desc:"Password for the email you will send from",notifications_send_email_server_port:"Send email SMTP port",notifications_send_email_server_port_desc:"Port for the SMTP server",notifications_send_email_server:"Send email SMTP server",notifications_send_email_server_desc:"SMTP server for the email you will send from",notifications_send_to_emails:"Emails to send to",notifications_send_to_emails_desc:"Emails notifications will be sent to",notification_settings_update:"Settings updated",notification_settings_update_desc:"Notify when server settings have been updated",notification_server_start_stop:"Server Start/Stop",notification_server_start_stop_desc:"Notify when the server has been started/stopped",notification_watchdog_limit:"Watchdog Limit Notification",notification_watchdog_limit_desc:"Notify when the watchdog limit has been reached (does not affect the funding source)",notification_server_status:"Server Status",notification_server_status_desc:"Send regular notifications about the server status (interval value in hours)",notification_incoming_payment:"Incoming Payments",notification_incoming_payment_desc:"Notify when a wallet has received a payment above the specified amount (sats)",notification_outgoing_payment:"Outgoing Payments",notification_outgoing_payment_desc:"Notify when a wallet has sent a payment above the specified amount (sats)",notification_credit_debit:"Credit / Debit",notification_credit_debit_desc:"Notify when a wallet has been credited/debited by the superuser",notification_balance_delta_changed:"Balance Delta Changed",notification_balance_delta_changed_desc:"Notify when the difference between the node balance and the LNbits balance has changed by more than the specified amount (in sats). Set to 0 to disable. This runs every minute.",enable_watchdog:"Enable Watchdog Switch",enable_watchdog_desc:"If enabled it will change your funding source to VoidWallet automatically if your balance is lower than the LNbits balance. You will need to enable manually after an update.",watchdog_interval:"Watchdog Interval",watchdog_interval_desc:"How often the background task should check for a killswitch signal in the watchdog delta [node_balance - lnbits_balance] (in minutes).",watchdog_delta:"Watchdog Delta",watchdog_delta_desc:"Limit before killswitch changes funding source to VoidWallet [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Notification Source",notification_source_label:"Source URL (only use the official LNbits status source, and sources you can trust)",more:"more",more_count:"{count} more",less:"less",releases:"Releases",watchdog:"Watchdog",server_logs:"Server Logs",ip_blocker:"IP Blocker",security:"Security",security_tools:"Security tools",block_access_hint:"Block access by IP",allow_access_hint:"Allow access by IP (will override blocked IPs)",enter_ip:"Enter IP and hit enter",rate_limiter:"Rate Limiter",callback_url_rules:"Callback URL Rules",enter_callback_url_rule:"Enter URL rule as regex and hit enter",callback_url_rule_hint:"Callback URLs (like LNURL one) will be validated against these rules. At leat one rule must match. No rule means all URLs are allowed.",wallet_limiter:"Wallet Limiter",wallet_config:"Wallet Config",wallet_charts:"Wallet Charts",wallet_limit_max_withdraw_per_day:"Max daily wallet withdrawal in sats (0 for no limit, -1 to block withdrawal)",wallet_max_ballance:"Wallet max balance in sats (0 to disable)",wallet_limit_secs_between_trans:"Min secs between transactions per wallet (0 to disable)",only_incoming_payments_allowed:"Only incoming payments allowed",disable_outgoing_payments:"Disable outgoing payments",number_of_requests:"Number of requests",time_unit:"Time unit",minute:"minute",settings:"Settings",second:"second",hour:"hour",disable_server_log:"Disable Server Log",enable_server_log:"Enable Server Log",coming_soon:"Feature coming soon",session_has_expired:"Your session has expired. Please login again.",instant_access_question:"or instant access",login_with_user_id:"Login with user ID",or:"or",create_new_wallet:"Create New Wallet",delete_all_wallets:"Delete All Wallets",confirm_delete_all_wallets:"Are you sure you want to delete ALL wallets for this user?",login_to_account:"Login to your account",create_account:"Create account",account_settings:"Account Settings",signin_with_oauth:"Login with",signin_with_oauth_or:"or Login with",signin_with_nostr:"Continue with Nostr",signin_with_google:"Sign in with Google",signin_with_github:"Sign in with GitHub",signin_with_custom_org:"Sign in with {custom_org}",username_or_email:"Username or Email",password:"Password",password_config:"Password Config",password_repeat:"Password repeat",update_password:"Update Password",change_password:"Change Password",update_credentials:"Update Credentials",update_pubkey:"Update Public Key",nostr_pubkey_tooltip:"Enter this user's Nostr public key (hex value)",set_password:"Set Password",set_password_tooltip:"Set a password for this user",invalid_password:"Password must have at least 8 characters",invalid_password_repeat:"Passwords do not match",reset_key_generated:"A reset key has been generated.",reset_key_copy:"Click OK to copy the reset URL to your clipboard.",login:"Login",register:"Register",username:"Username",pubkey:"Public Key",user_id:"User ID",id:"ID",email:"Email",first_name:"First Name",last_name:"Last Name",picture:"Picture",user_picture_desc:"URL to an image to use as profile picture. You can upload it as an asset.",verify_email:"Verify email with",account:"Account",update_account:"Update Account",invalid_username:"Invalid Username",auth_provider:"Auth Provider",external_id:"External ID",my_account:"My Account",existing_account_question:"Already have an account?",background_image:"Background Image",back:"Back",logout:"Logout",look_and_feel:"Look and Feel",endpoint:"Endpoint",api:"API",api_token:"API Token",api_tokens:"API Tokens",access_control_list:"Access Control List",access_control_list_admin_warning:"This is an admin account. The generated tokens will have admin privileges.",new_api_acl:"New Access Control List",api_token_id:"Token Id",toggle_gradient:"Toggle Gradient",gradient_background:"Gradient Background",language:"Language",assets:"Assets",max_asset_size_mb:"Max Asset Size (MB)",max_asset_size_mb_desc:"The maximum allowed size for asset uploads in megabytes (can use decimal values).",assets_allowed_mime_types:"Allowed MIME Types",assets_allowed_mime_types_desc:"The MIME types that are allowed for asset uploads. No value means all uploads are allowed.",thumbnail_width:"Thumbnail Width",thumbnail_width_desc:"Width of the generated thumbnail in pixels.",thumbnail_height:"Thumbnail Height",thumbnail_height_desc:"Height of the generated thumbnail in pixels.",thumbnail_format:"Thumbnail Format",thumbnail_format_desc:"Image format of the generated thumbnail (PNG, JPEG, etc.).",max_assets_per_user:"Max Assets Per User",max_assets_per_user_desc:"The maximum number of assets a user can upload. Zero means upload forbidden.",assets_no_limit_users:"Users Without Asset Limits",assets_no_limit_users_desc:"These users can upload an unlimited number of assets (user id based).",color_scheme:"Color Scheme",visible_wallet_count:"Visible Wallet Count",admin_settings:"Admin Settings",extension_cost:"This release requires a payment of minimum {cost} sats.",extension_paid_sats:"You have already paid {paid_sats} sats.",create_extension:"Create Extension",release_details_error:"Cannot get the release details.",pay_from_wallet:"Pay from Wallet",pay_with:"Pay with {provider}",select_payment_provider:"Select payment provider",wallet_required:"Wallet *",show_qr:"Show QR",retry_install:"Retry Install",new_payment:"Make New Payment",update_payment:"Update Payment",already_paid_question:"Have you already paid?",sell:"Sell",sell_require:"Ask payment to enable extension",sell_info:"The {name} extension requires a payment of minimum {amount} sats to enable.",hide_empty_wallets:"Hide empty wallets",recheck:"Recheck",check:"Check",check_connection:"Check Connection",check_webhook:"Check Webhook",contributors:"Contributors",license:"License",reset_key:"Reset Key",reset_password:"Reset Password",border_choices:"Border Choices",select_all:"Select All",nfc_supported:"NFC Supported",nfc_not_supported:"NFC not Supported",expire_date:"Expire Date: ",hash:"Hash: ",welcome_lnbits:"Welcome to LNbits",setup_su_account:"Set up the Superuser account below.",create_ticker_converter:"Create Currency Ticker Converter",enable_audit:"Enable Audit",recommended:"Recommended",audit_desc:"Record HTTP requests according with the specified filters",audit_record_req:"Record Request Body",audit_record_warning:"Warning: ",audit_record_req_warning_1:"confidential data (like passwords) will be logged.",audit_record_req_warning_2:"the request body can have large size.",audit_record_use:"Use it with caution.",audit_ip:"Record IP Address",audit_ip_desc:"Record the IP address of the client",audit_path_params:"Record Path Parameters",audit_query_params:"Record Query Parameters",audit_http_methods:"Include HTTP Methods",audit_http_methods_hint:"List of HTTP methods to be included. Empty lists means all.",audit_http_methods_label:"HTTP Methods",audit_resp_codes:"Include HTTP Response Codes",audit_resp_codes_hint:"List of HTTP codes to be included (regex match). Empty lists means all. Eg: 4.*, 5.*",audit_resp_codes_label:"HTTP Response code (regex)",audit_paths:"Include Paths",audit_paths_hint:"List of paths to be included (regex match). Empty list means all.",audit_paths_label:"HTTP Path (regex)",audit_paths_exclude:"Exclude Paths",audit_paths_exclude_hint:"List of paths to be excluded (regex match). Empty list means none.",audit_paths_exclude_label:"HTTP Path (regex)",exchange_providers:"Exchange Providers",admin_extensions:"Admin Extensions",admin_extensions_label:"Admin extensions",admin_extensions_hint:"Extensions only user with admin privileges can use",user_default_extensions:"User Default Extensions",user_default_extensions_label:"User extensions",user_default_extensions_hint:"Extensions that will be enabled by default for the users.",extension_builder:"Extension Builder",extension_builder_manifest_url:"Extension Builder Manifest URL",extension_builder_manifest_url_hint:"URL to a JSON manifest file with extension builder details",miscellanous:"Miscellanous",misc_disable_extensions:"Disable Extensions",misc_disable_extensions_label:"Disable all extensions",misc_disable_extensions_builder:"Enable Extensions Builder",misc_disable_extensions_builder_label:"Enable Extensions Builder for non admin users.",misc_hide_api:"Hide API",misc_hide_api_label:"Hides wallet api, extensions can choose to honor",wallets_management:"Wallets Management",funding_source_info:"Funding Source Info",funding_source:"Funding Source: {wallet_class}",node_balance:"Node Balance: {balance} sats",lnbits_balance:"LNbits Balance: {balance} sats",funding_reserve_percent:"Reserve Percent: {percent} %",node_management:"Node Management",node_management_not_supported:"Node Management not supported by active funding source",toggle_node_ui:"Node UI",toggle_public_node_ui:"Public Node UI",toggle_transactions_node_ui:"Transactions Tab (Disable on large CLN nodes)",invoice_expiry:"Invoice Expiry",invoice_expiry_label:"Invoice expiry (seconds)",fee_reserve:"Fee Reserve",fee_reserve_percent:"Fee Reserve Percent",fee_reserve_msats:"Reserve fee in msats",reserve_fee_in_percent:"Reserve fee in percent",payment_wait_time:"Payment Wait Time (sec)",payment_wait_time_desc:"Wait time before marking an outgoing payment as pending. Default: 5s; raise for slow-settling invoices.",payment_wait_time_tooltip:"Controls how long LNbits waits for an outgoing payment attempt to confirm before marking it as pending. Higher values help when paying slow-settling invoices (e.g., HODL invoices, Boltz). The payment will be rechecked later and updated automatically or manually.",server_management:"Server Management",base_url:"Base URL",base_url_label:"Static/Base url for the server",authentication:"Authentication",auth_token_expiry_label:"Token expire minutes",auth_token_expiry_hint:"Time in minutes until the token expires",auth_allowed_methods_label:"Allowed authorization methods",auth_allowed_methods_hint:"Select authorization methods",auth_nostr_label:"Nostr Request URL",auth_nostr_hint:"Absolute URL that the clients will use to login.",auth_google_ci_label:"Google Client ID",auth_google_ci_hint:"Make sure that the authorized redirect URIs contain https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"GitHub Client ID",auth_gh_client_id_hint:"Make sure that the authorization callback URL is set to https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Client Secret",auth_keycloak_label:"Keycloak Discovery URL",auth_keycloak_ci_label:"Keycloak Client ID",auth_keycloak_ci_hint:"Make sure thant the authorization callback URL is set to https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Client Secret",auth_keycloak_custom_org_label:"Keycloak Custom Organization",auth_keycloak_custom_icon_label:"Keycloak Custom Icon (URL)",currency_settings:"Currency Settings",allowed_currencies:"Allowed Currencies",allowed_currencies_hint:"Limit the number of available fiat currencies",default_account_currency:"Default Account Currency",default_account_currency_hint:"Default currency for accounting",min_incoming_payment_amount:"Min Incoming Payment Amount",min_incoming_payment_amount_desc:"Minimum amount allowed for generating an invoice",max_incoming_payment_amount:"Max Incoming Payment Amount",max_incoming_payment_amount_desc:"Maximum amount allowed for generating an invoice",max_outgoing_payment_amount:"Max Outgoing Payment Amount",max_outgoing_payment_amount_desc:"Maximum amount allowed for making a payment",service_fee:"Service Fee",service_fee_label:"Service fee (%)",service_fee_hint:"Fee charged per tx (%)",service_fee_max:"Service Fee Max",service_fee_max_label:"Service fee max (sats)",service_fee_max_hint:"Max service fee to charge in (sats)",fee_wallet:"Fee Wallet",fee_wallet_label:"Fee wallet (wallet ID)",fee_wallet_hint:"Wallet ID to send funds to",disable_fee:"Disable Fee",disable_fee_internal:"Disable Service Fee for Internal Payments",disable_fee_internal_desc:"Disable Service Fee for Internal Lightning Payments",ui_management:"UI Management",ui_site_title:"Site Title",ui_changing_remove_lnbits_elements:" (changing will remove LNbits elements on the homepage and footer)",ui_site_tagline:"Site Tagline",ui_elements_enable:"Enable elements on homepage/footer",ui_elements_disable:"Disable elements on homepage/footer",ui_toggle_elements_tip:"Remove homepage elements like 'runs on' etc",ui_site_description:"Site Description",ui_site_description_hint:"Use plain text, Markdown, or raw HTML",ui_default_wallet_name:"Default Wallet Name",ui_default_theme:"Default Theme",lnbits_wallet:"LNbits wallet",denomination:"Denomination",denomination_hint:"The name for the FakeWallet token",denomination_error:"Denomination must be 3 characters, or `sats`",ui_qr_code_logo:"QR Code/Favicon Logo",ui_qr_code_logo_hint:"QR code and favicon logo url",ui_custom_image:"Custom Image",ui_custom_image_label:"URL to custom image",ui_custom_image_hint:"Image showed at homepage/login",ui_custom_badge:"Custom Badge",ui_custom_badge_label:"Custom Badge 'USE WITH CAUTION'",ui_custom_badge_color_label:"Custom Badge Color",themes:"Themes",themes_hint:"Choose themes available for users",custom_logo:"Custom Logo",custom_logo_hint:"URL to logo image",ad_space_title:"Ad Space Title",ad_space_title_label:"Supported by",ad_slots:"Advertisement Slots",ad_slots_hint:"Ad url and image filepaths in CSV format, extensions can choose to honor",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Ads Enabled",ads_disabled:"Ads Disabled",user_management:"User Management",admin_users:"Admin Users",admin_users_hint:"Users with admin privileges",admin_users_label:"User ID",allowed_users:"Allowed Users",allowed_users_hint:"Only these users can use LNbits",allowed_users_hint_feature:"Only these users can use {feature}",allowed_users_label:"User ID",allow_creation_user:"Allow creation of new users",allow_creation_user_desc:"Allow creation of new users on the index page",new_user_not_allowed:"Registration is disabled.",components:"Components",long_running_endpoints:"Top 5 Long Running Endpoints",http_request_methods:"HTTP Request Methods",http_response_codes:"HTTP Response Codes",request_details:"Request Details",http_request_details:"HTTP Request Details",payment_details:"Payment Details",payment_details_desc:"Detailed information about the payment",payments:"Payments",payment_show_internal:"Show Internal Payments",payment_chart_flow:"Monthly Payment Flow",payment_chart_status:"Payment Status",payment_chart_tx_per_wallet:"Transactions per Wallet (balance/count)",payment_details_back:"Back to Payments",payment_chart_tags:"Payments by Tags",payments_balance_in_out:"Balance In/Out",payments_count_in_out:"Count In/Out",payments_status_chart:"Status Chart",payments_tag_chart:"Tag Chart",payments_balance_chart:"Balance Chart",payments_wallets_chart:"Wallets Chart",payments_balance_in_out_chart:"Balance In/Out Chart",payments_count_in_out_chart:"Count In/Out Chart",reset_wallet_keys:"Reset Keys",reset_wallet_keys_desc:"Reset the API keys for this wallet. This will invalidate the current keys and generate new ones.",view_list:"View wallets as list",view_column:"View wallets as rows",filter_payments:"Filter payments",filter_labels:"Filter labels",filter_date:"Filter by date",websocket_example:"Websocket example",secret_key:"Secret Key",signing_secret:"Signing Secret",signing_secret_hint:"Signing secret for the webhook. Messages will be signed with this secret.",callback_success_url:"Callback Success URL",callback_success_url_hint:"The user will be redirected to this URL after the payment is successful",connected:"Connected",not_connected:"Not Connected",free:"Free",paid:"Paid",funding_source_retries:"Max Retries",funding_source_retries_desc:"Maximum number of retries for funding sources, before it falls back to VoidWallet.",add_label:"Add Label",label:"Label",labels:"Labels",label_filter:"Label Filter",no_labels_defined:"No labels defined yet",manage_labels:"Manage Labels",update_label:"Update Label",delete_label:"Delete Label",add_remove_labels:"Add or Remove Labels",payment_labels_updated:"Payment labels updated",color:"Color",sort:"Sort",sort_by:"Sort by"},window.localisation.es={confirm:"Sí",server:"Servidor",theme:"Tema",site_customisation:"Personalización del sitio",funding:"Financiación",users:"Usuarios",audit:"Auditoría",apps:"Aplicaciones",channels:"Canales",transactions:"Transacciones",dashboard:"Tablero de instrumentos",node:"Nodo",export_users:"Exportar Usuarios",no_users:"No se encontraron usuarios",total_capacity:"Capacidad Total",avg_channel_size:"Tamaño Medio del Canal",biggest_channel_size:"Tamaño del Canal Más Grande",smallest_channel_size:"Tamaño de canal más pequeño",number_of_channels:"Número de canales",active_channels:"Canales activos",connect_peer:"Conectar Par",connect:"Conectar",open_channel:"Canal Abierto",open:"Abrir",close_channel:"Cerrar canal",close:"Cerrar",restart:"Reiniciar el servidor",save:"Guardar",save_tooltip:"Guardar cambios",credit_debit:"Crédito / Débito",credit_hint:"Presione Enter para cargar la cuenta",credit_label:"Cargar {denomination}",credit_ok:"Éxito al acreditar/debitar fondos virtuales ({amount} sats). Los pagos dependen de los fondos reales en la fuente de financiación.",restart_tooltip:"Reinicie el servidor para aplicar los cambios",add_funds_tooltip:"Agregue fondos a una billetera.",reset_defaults:"Restablecer",reset_defaults_tooltip:"Borrar todas las configuraciones y restablecer a los valores predeterminados.",download_backup:"Descargar copia de seguridad de la base de datos",name_your_wallet:"Nombre de su billetera {name}",paste_invoice_label:"Pegue la factura aquí",lnbits_description:"Fácil de instalar y liviano, LNbits puede ejecutarse en cualquier fuente de financiación de la red Lightning y hasta LNbits mismo! Puede ejecutar LNbits para usted mismo o ofrecer una solución competente a otros. Cada billetera tiene su propia clave API y no hay límite para la cantidad de billeteras que puede crear. La capacidad de particionar fondos hace de LNbits una herramienta útil para la administración de fondos y como herramienta de desarrollo. Las extensiones agregan funcionalidad adicional a LNbits, por lo que puede experimentar con una variedad de tecnologías de vanguardia en la red Lightning. Lo hemos hecho lo más simple posible para desarrollar extensiones y, como un proyecto gratuito y de código abierto, animamos a las personas a que se desarrollen a sí mismas y envíen sus propios contribuciones.",export_to_phone:"Exportar a teléfono con código QR",export_to_phone_desc:"Este código QR contiene su URL de billetera con acceso completo. Puede escanearlo desde su teléfono para abrir su billetera allí.",wallet:"Billetera:",wallets:"Billeteras",add_wallet:"Agregar nueva billetera",delete_wallet:"Eliminar billetera",delete_wallet_desc:"Esta billetera completa se eliminará, los fondos son IRREVERSIBLES.",rename_wallet:"Cambiar el nombre de la billetera",update_name:"Actualizar nombre",fiat_tracking:"Seguimiento Fiat",currency:"Moneda",update_currency:"Actualizar moneda",press_to_claim:"Presione para reclamar Bitcoin",donate:"Donar",view_github:"Ver en GitHub",voidwallet_active:"¡VoidWallet está activo! Pagos desactivados",use_with_caution:"USAR CON CUIDADO - {name} Wallet aún está en BETA",service_fee:"Tarifa de servicio: {amount} % por transacción",service_fee_max:"Tarifa de servicio: {amount} % por transacción (máx {max} sats)",service_fee_tooltip:"Comisión de servicio cobrada por el administrador del servidor LNbits por cada transacción saliente",toggle_darkmode:"Cambiar modo oscuro",payment_reactions:"Reacciones de Pago",view_swagger_docs:"Ver documentación de API de LNbits Swagger",api_docs:"Documentación de API",api_keys_api_docs:"URL del nodo, claves de API y documentación de API",lnbits_version:"Versión de LNbits",runs_on:"Corre en",paste:"Pegar",paste_from_clipboard:"Pegar desde el portapapeles",paste_request:"Pegar solicitud",create_invoice:"Crear factura",camera_tooltip:"Utilice la cámara para escanear una factura / código QR",export_csv:"Exportar a CSV",chart_tooltip:"Mostrar gráfico",pending:"Pendiente",copy_invoice:"Copiar factura",withdraw_from:"Retirar de",cancel:"Cancelar",scan:"Escanear",read:"Leer",pay:"Pagar",memo:"Memo",date:"Fecha",payment_processing:"Procesando pago ...",not_enough_funds:"¡No hay suficientes fondos!",search_by_tag_memo_amount:"Buscar por etiqueta, memo, cantidad",invoice_waiting:"Factura esperando pago",payment_received:"Pago recibido",payment_sent:"Pago enviado",receive:"recibir",send:"enviar",outgoing_payment_pending:"Pago saliente pendiente",drain_funds:"Drenar fondos",drain_funds_desc:"Este es un código QR LNURL-withdraw para drenar todos los fondos de esta billetera. No lo comparta con nadie. Es compatible con balanceCheck y balanceNotify, por lo que su billetera puede continuar drenando los fondos de aquí después del primer drenaje.",i_understand:"Lo entiendo",copy_wallet_url:"Copiar URL de billetera",disclaimer_dialog_title:"¡Importante!",disclaimer_dialog:"La funcionalidad de inicio de sesión se lanzará en una actualización futura, por ahora, asegúrese de guardar esta página como marcador para acceder a su billetera en el futuro. Este servicio está en BETA y no asumimos ninguna responsabilidad por personas que pierdan el acceso a sus fondos.",no_transactions:"No hay transacciones todavía",manage:"Administrar",exchanges:"Intercambios",extensions:"Extensiones",no_extensions:"No tienes extensiones instaladas :(",created:"Creado",search_extensions:"Extensiones de búsqueda",extension_sources:"Fuentes de extensión",ext_sources_hint:"Repositorios desde donde se pueden descargar las extensiones",ext_sources_label:"URL de origen (utilice solo la fuente oficial de la extensión LNbits y fuentes en las que pueda confiar)",warning:"Advertencia",repository:"Repositorio",confirm_continue:"¿Está seguro de que desea continuar?",manage_extension_details:"Instalar/desinstalar extensión",install:"Instalar",uninstall:"Desinstalar",drop_db:"Eliminar datos",enable:"Habilitar",pay_to_enable:"Pagar para habilitar",enable_extension_details:"Habilitar extensión para el usuario actual",disable:"Deshabilitar",delete:"Eliminar",installed:"Instalado",activated:"Activado",deactivated:"Desactivado",release_notes:"Notas de la versión",activate_extension_details:"Hacer que la extensión esté disponible/no disponible para los usuarios",featured:"Destacado",all:"Todos",only_admins_can_install:"(Solo las cuentas de administrador pueden instalar extensiones)",admin_only:"Solo administradores",new_version:"Nueva Versión",extension_depends_on:"Depende de:",extension_rating_soon:"Calificaciones próximamente",extension_installed_version:"Versión instalada",extension_uninstall_warning:"Está a punto de eliminar la extensión para todos los usuarios.",uninstall_confirm:"Sí, desinstalar",extension_db_drop_info:"Todos los datos para la extensión se eliminarán permanentemente. ¡No hay manera de deshacer esta operación!",extension_db_drop_warning:"Está a punto de eliminar todos los datos para la extensión. Por favor, escriba el nombre de la extensión para continuar:",extension_required_lnbits_version:"Esta versión requiere al menos una versión de LNbits",min_version:"Mínimo (incluido)",max_version:"Máximo (excluido)",payment_hash:"Hash de pago",fee:"Cuota",amount:"Cantidad",amount_sats:"Cantidad (sats)",tag:"Etiqueta",unit:"Unidad",description:"Descripción",expiry:"Expiración",webhook:"Webhook",payment_proof:"Prueba de pago",update:"Actualizar",update_available:"¡Actualización {version} disponible!",latest_update:"Usted está en la última versión {version}.",notifications:"Notificaciones",no_notifications:"No hay notificaciones",notifications_disabled:"Las notificaciones de estado de LNbits están desactivadas.",enable_notifications:"Activar notificaciones",enable_notifications_desc:"Si está activado, buscará las últimas actualizaciones del estado de LNbits, como incidentes de seguridad y actualizaciones.",enable_watchdog_desc:"Si está activado, cambiará automáticamente su fuente de financiamiento a VoidWallet si su saldo es inferior al saldo de LNbits. Tendrá que activarlo manualmente después de una actualización.",watchdog_interval:"Intervalo de vigilancia",watchdog_interval_desc:"Con qué frecuencia la tarea de fondo debe verificar la señal de killswitch en el delta del watchdog [node_balance - lnbits_balance] (en minutos).",watchdog_delta:"Vigilante Delta",watchdog_delta_desc:"Límite antes de que el interruptor de apagado cambie la fuente de financiamiento a VoidWallet [lnbits_balance - node_balance > delta]",status:"Estado",notification_source:"Fuente de notificación",notification_source_label:"URL de origen (solo use la fuente oficial de estado de LNbits y fuentes en las que confíe)",more:"más",less:"menos",releases:"Lanzamientos",watchdog:"Perro guardián",server_logs:"Registros del Servidor",ip_blocker:"Bloqueador de IP",security:"Seguridad",security_tools:"Herramientas de seguridad",block_access_hint:"Bloquear acceso por IP",allow_access_hint:"Permitir acceso por IP (anulará las IPs bloqueadas)",enter_ip:"Ingrese la IP y presione enter",rate_limiter:"Limitador de tasa",wallet_limiter:"Limitador de Cartera",wallet_limit_max_withdraw_per_day:"Límite diario de retiro de la cartera en sats (0 para deshabilitar)",wallet_max_ballance:"Saldo máximo de la billetera en sats (0 para desactivar)",wallet_limit_secs_between_trans:"Mín. segs entre transacciones por cartera (0 para desactivar)",number_of_requests:"Número de solicitudes",time_unit:"Unidad de tiempo",minute:"minuto",second:"segundo",hour:"hora",disable_server_log:"Desactivar registro del servidor",enable_server_log:"Activar registro del servidor",coming_soon:"Función próximamente disponible",session_has_expired:"Tu sesión ha expirado. Por favor, inicia sesión de nuevo.",instant_access_question:"¿Quieres acceso instantáneo?",login_with_user_id:"Iniciar sesión con ID de usuario",or:"o",create_new_wallet:"Crear Nueva Cartera",login_to_account:"Inicie sesión en su cuenta",create_account:"Crear cuenta",account_settings:"Configuración de la cuenta",signin_with_nostr:"Continuar con Nostr",signin_with_google:"Inicia sesión con Google",signin_with_github:"Inicia sesión con GitHub",signin_with_keycloak:"Iniciar sesión con Keycloak",username_or_email:"Nombre de usuario o correo electrónico",password:"Contraseña",password_config:"Configuración de Contraseña",password_repeat:"Repetición de contraseña",change_password:"Cambiar contraseña",update_credentials:"Actualizar credenciales",update_pubkey:"Actualizar clave pública",set_password:"Establecer contraseña",invalid_password:"La contraseña debe tener al menos 8 caracteres.",login:"Iniciar sesión",register:"Registrarse",username:"Nombre de usuario",pubkey:"Clave pública",user_id:"Identificación de usuario",email:"Correo electrónico",first_name:"Nombre de pila",last_name:"Apellido",picture:"Imagen",verify_email:"Verifique el correo electrónico con",account:"Cuenta",update_account:"Actualizar cuenta",invalid_username:"Nombre de usuario inválido",auth_provider:"Proveedor de Autenticación",my_account:"Mi cuenta",back:"Atrás",logout:"Cerrar sesión",look_and_feel:"Apariencia",toggle_gradient:"Alternar degradado",gradient_background:"Fondo de gradiente",language:"Idioma",color_scheme:"Esquema de colores",admin_settings:"Configuración del administrador",extension_cost:"Esta versión requiere un pago mínimo de {cost} sats.",extension_paid_sats:"Ya has pagado {paid_sats} sats.",release_details_error:"No se pueden obtener los detalles de la versión.",pay_from_wallet:"Pagar desde la billetera",wallet_required:"Billetera *",show_qr:"Mostrar QR",retry_install:"Reintentar Instalación",new_payment:"Realizar nuevo pago",update_payment:"Actualizar Pago",already_paid_question:"¿Ya has pagado?",sell:"Vender",sell_require:"Solicitar pago para habilitar la extensión",sell_info:"La extensión {name} requiere un pago mínimo de {amount} sats para habilitar.",hide_empty_wallets:"Ocultar billeteras vacías",recheck:"Revisar de nuevo",contributors:"Colaboradores",license:"Licencia",reset_key:"Restablecer clave",reset_password:"Restablecer contraseña",border_choices:"Opciones de Borde",select_all:"Seleccionar todo",nfc_supported:"Compatible con NFC",nfc_not_supported:"NFC no compatible",expire_date:"Fecha de vencimiento:",hash:"Hash:",welcome_lnbits:"Bienvenido a LNbits",setup_su_account:"Configura la cuenta de Superusuario a continuación.",create_ticker_converter:"Crear Convertidor de Ticker de Moneda",enable_audit:"Habilitar auditoría",recommended:"Recomendado",audit_desc:"Registrar solicitudes HTTP de acuerdo con los filtros especificados",audit_record_req:"Registrar cuerpo de solicitud",audit_record_warning:"Advertencia:",audit_record_req_warning_1:"los datos confidenciales (como las contraseñas) serán registrados.",audit_record_req_warning_2:"el cuerpo de la solicitud puede tener un tamaño grande.",audit_record_use:"Úsalo con precaución.",audit_ip:"Registrar Dirección IP",audit_ip_desc:"Registra la dirección IP del cliente",audit_path_params:"Registrar parámetros de ruta",audit_query_params:"Registrar parámetros de consulta",audit_http_methods:"Incluye métodos HTTP",audit_http_methods_hint:"Lista de métodos HTTP a incluir. Las listas vacías significan todos.",audit_http_methods_label:"Métodos HTTP",audit_resp_codes:"Incluir Códigos de Respuesta HTTP",audit_resp_codes_hint:"Lista de códigos HTTP a incluir (coincidencia regex). Listas vacías significan todos. Ej: 4.*, 5.*",audit_resp_codes_label:"Código de respuesta HTTP (regex)",audit_paths:"Incluir rutas",audit_paths_hint:"Lista de rutas a incluir (coincidencia de expresión regular). Lista vacía significa todas.",audit_paths_label:"Ruta HTTP (regex)",audit_paths_exclude:"Excluir rutas",audit_paths_exclude_hint:"Lista de rutas a excluir (coincidencia de expresiones regulares). Lista vacía significa ninguna.",audit_paths_exclude_label:"Ruta HTTP (regex)",exchange_providers:"Proveedores de intercambio",admin_extensions:"Extensiones de Administración",admin_extensions_label:"Extensiones de administración",admin_extensions_hint:"Solo los usuarios con privilegios de administrador pueden usar extensiones.",user_default_extensions:"Extensiones predeterminadas del usuario",user_default_extensions_label:"Extensiones de usuario",user_default_extensions_hint:"Extensiones que estarán habilitadas de forma predeterminada para los usuarios.",miscellanous:"Misceláneo",misc_disable_extensions:"Desactivar extensiones",misc_disable_extensions_label:"Desactivar todas las extensiones",misc_hide_api:"Ocultar API",misc_hide_api_label:"Oculta la API de la billetera, las extensiones pueden optar por respetar",wallets_management:"Gestión de Carteras",funding_source_info:"Información sobre la Fuente de Financiamiento",funding_source:"Fuente de financiamiento: {wallet_class}",node_balance:"Balance de Nodo: {balance} sats",lnbits_balance:"Saldo de LNbits: {balance} sats",funding_reserve_percent:"Reserve Porcentaje: {percent} %",node_management:"Gestión de nodos",node_management_not_supported:"La gestión de nodos no es compatible con la fuente de financiación activa",toggle_node_ui:"Interfaz de usuario de nodo",toggle_public_node_ui:"Interfaz Pública de Nodo",toggle_transactions_node_ui:"Pestaña de transacciones (desactivar en nodos CLN grandes)",invoice_expiry:"Vencimiento de la Factura",invoice_expiry_label:"Expiración de la factura (segundos)",fee_reserve:"Reserva de tarifa",fee_reserve_msats:"Cuota de reserva en msats",fee_reserve_percent:"Tasa de reserva en porcentaje",server_management:"Gestión del Servidor",base_url:"URL base",base_url_label:"URL base estática para el servidor",authentication:"Autenticación",auth_token_expiry_label:"Minutos de vencimiento del token",auth_token_expiry_hint:"Tiempo en minutos hasta que el token expire",auth_allowed_methods_label:"Métodos de autorización permitidos",auth_allowed_methods_hint:"Seleccione métodos de autorización",auth_nostr_label:"URL de solicitud Nostr",auth_nostr_hint:"URL absoluto que los clientes utilizarán para iniciar sesión.",auth_google_ci_label:"ID de cliente de Google",auth_google_ci_hint:"Asegúrate de que los URIs de redirección autorizados contengan https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Secreto del Cliente de Google",auth_gh_client_id_label:"ID de cliente de GitHub",auth_gh_client_id_hint:"Asegúrate de que la URL de devolución de llamada de autorización esté configurada en https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Secreto del cliente de GitHub",auth_keycloak_label:"URL de descubrimiento de Keycloak",auth_keycloak_ci_label:"ID de cliente de Keycloak",auth_keycloak_ci_hint:"Asegúrate de que la URL de devolución de llamada de autorización esté configurada en https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Secreto del Cliente de Keycloak",currency_settings:"Configuración de moneda",allowed_currencies:"Monedas permitidas",allowed_currencies_hint:"Limite el número de monedas fiduciarias disponibles",default_account_currency:"Moneda predeterminada de la cuenta",default_account_currency_hint:"Moneda predeterminada para contabilidad",service_fee_label:"Tarifa de servicio (%)",service_fee_hint:"Tarifa cobrada por tx (%)",service_fee_max_label:"Tarifa de servicio máx (sats)",service_fee_max_hint:"Tarifa máxima por servicio a cobrar en (sats)",fee_wallet:"Billetera de Tarifas",fee_wallet_label:"Billetera de tarifas (ID de billetera)",fee_wallet_hint:"ID de la billetera a la que enviar fondos",disable_fee:"Desactivar tarifa",disable_fee_internal:"Desactivar tarifa de servicio para pagos internos",disable_fee_internal_desc:"Desactivar tarifa de servicio para pagos internos Lightning",ui_management:"Gestión de la interfaz de usuario",ui_site_title:"Título del Sitio",ui_site_tagline:"Lema del sitio",ui_elements_enable:"Habilitar elementos en la página de inicio",ui_elements_disable:"Desactivar elementos en la página de inicio",ui_toggle_elements_tip:"Eliminar elementos de la página de inicio como 'funciona en', etc.",ui_site_description:"Descripción del sitio",ui_site_description_hint:"Usa texto sin formato, Markdown o HTML sin procesar",ui_default_wallet_name:"Nombre predeterminado de la billetera",lnbits_wallet:"Cartera LNbits",denomination:"Denominación",denomination_hint:"El nombre para el token FakeWallet",ui_qr_code_logo:"Logo de código QR",ui_qr_code_logo_hint:"URL a la imagen del logo en el código QR",ui_custom_badge:"Insignia personalizada",ui_custom_badge_label:"Insignia personalizada 'USAR CON PRECAUCIÓN - La billetera LNbits aún está en BETA'",ui_custom_badge_color_label:"Color personalizado de insignia",themes:"Temas",themes_hint:"Elige los temas disponibles para los usuarios",custom_logo:"Logotipo personalizado",custom_logo_hint:"URL a la imagen del logo",ad_space_title:"Título del Espacio Publicitario",ad_space_title_label:"Respaldado por",ad_slots:"Espacios publicitarios",ad_slots_hint:"URL de anuncio y rutas de archivo de imagen en formato CSV, las extensiones pueden optar por respetar",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Anuncios habilitados",ads_disabled:"Anuncios desactivados",user_management:"Gestión de Usuarios",admin_users:"Usuarios Administradores",admin_users_hint:"Usuarios con privilegios de administrador",admin_users_label:"ID de usuario",allowed_users:"Usuarios Permitidos",allowed_users_hint:"Solo estos usuarios pueden usar LNbits",allowed_users_label:"ID de usuario",allow_creation_user:"Permitir la creación de nuevos usuarios",allow_creation_user_desc:"Permitir la creación de nuevos usuarios en la página de índice",components:"Componentes",long_running_endpoints:"Principales 5 puntos de conexión de larga duración",http_request_methods:"Métodos de solicitud HTTP",http_response_codes:"Códigos de Respuesta HTTP",request_details:"Detalles de la solicitud",http_request_details:"Detalles de la Solicitud HTTP"},window.localisation.fr={confirm:"Oui",server:"Serveur",theme:"Thème",site_customisation:"Personnalisation du site",funding:"Financement",users:"Utilisateurs",audit:"Audit",apps:"Applications",channels:"Canaux",transactions:"Transactions",dashboard:"Tableau de bord",node:"Noeud",export_users:"Exporter les utilisateurs",no_users:"Aucun utilisateur trouvé",total_capacity:"Capacité totale",avg_channel_size:"Taille moyenne du canal",biggest_channel_size:"Taille de canal maximale",smallest_channel_size:"Taille de canal la plus petite",number_of_channels:"Nombre de canaux",active_channels:"Canaux actifs",connect_peer:"Connecter un pair",connect:"Connecter",open_channel:"Ouvrir le canal",open:"Ouvrir",close_channel:"Fermer le canal",close:"Fermer",restart:"Redémarrer le serveur",save:"Enregistrer",save_tooltip:"Enregistrer vos modifications",credit_debit:"Crédit / Débit",credit_hint:"Appuyez sur Entrée pour créditer le compte",credit_label:"{denomination} à créditer",credit_ok:"Succès du crédit/débit des fonds virtuels ({amount} sats). Les paiements dépendent des fonds réels sur la source de financement.",restart_tooltip:"Redémarrez le serveur pour que les changements prennent effet",add_funds_tooltip:"Ajouter des fonds à un portefeuille.",reset_defaults:"Réinitialiser aux valeurs par défaut",reset_defaults_tooltip:"Supprimer tous les paramètres et les réinitialiser aux valeurs par défaut.",download_backup:"Télécharger la sauvegarde de la base de données",name_your_wallet:"Nommez votre portefeuille {name}",paste_invoice_label:"Coller une facture, une demande de paiement ou un code lnurl *",lnbits_description:"Facile à installer et léger, LNbits peut fonctionner sur n'importe quelle source de financement du réseau Lightning et même LNbits lui-même! Vous pouvez exécuter LNbits pour vous-même ou offrir facilement une solution de gardien pour les autres. Chaque portefeuille a ses propres clés API et il n'y a pas de limite au nombre de portefeuilles que vous pouvez créer. La capacité de partitionner les fonds rend LNbits un outil utile pour la gestion de l'argent et comme outil de développement. Les extensions ajoutent une fonctionnalité supplémentaire à LNbits afin que vous puissiez expérimenter une gamme de technologies de pointe sur le réseau Lightning. Nous avons rendu le développement d'extensions aussi simple que possible et, en tant que projet gratuit et open source, nous encourageons les gens à développer et à soumettre les leurs.",export_to_phone:"Exporter vers le téléphone avec un code QR",export_to_phone_desc:"Ce code QR contient l'URL de votre portefeuille avec un accès complet. Vous pouvez le scanner depuis votre téléphone pour ouvrir votre portefeuille depuis là-bas.",wallet:"Portefeuille :",wallets:"Portefeuilles",add_wallet:"Ajouter un nouveau portefeuille",delete_wallet:"Supprimer le portefeuille",delete_wallet_desc:"Ce portefeuille entier sera supprimé et les fonds seront IRRECUPERABLES.",rename_wallet:"Renommer le portefeuille",update_name:"Mettre à jour le nom",fiat_tracking:"Suivi Fiat",currency:"Devise",update_currency:"Mettre à jour la devise",press_to_claim:"Appuyez pour demander du Bitcoin",donate:"Donner",view_github:"Voir sur GitHub",voidwallet_active:"VoidWallet est actif! Paiements désactivés",use_with_caution:"UTILISER AVEC PRUDENCE - Le portefeuille {name} est toujours en version BETA",service_fee:"Frais de service : {amount} % par transaction",service_fee_max:"Frais de service : {amount} % par transaction (max {max} sats)",service_fee_tooltip:"Frais de service facturés par l'administrateur du serveur LNbits pour chaque transaction sortante",toggle_darkmode:"Basculer le mode sombre",payment_reactions:"Réactions de paiement",view_swagger_docs:"Voir les documentation de l'API Swagger de LNbits",api_docs:"Documentation de l'API",api_keys_api_docs:"URL du nœud, clés API et documentation API",lnbits_version:"Version de LNbits",runs_on:"Fonctionne sur",paste:"Coller",paste_from_clipboard:"Coller depuis le presse-papiers",paste_request:"Coller la requête",create_invoice:"Créer une facture",camera_tooltip:"Utiliser la caméra pour scanner une facture / un code QR",export_csv:"Exporter vers CSV",chart_tooltip:"Afficher le graphique",pending:"En attente",copy_invoice:"Copier la facture",withdraw_from:"Retirer de",cancel:"Annuler",scan:"Scanner",read:"Lire",pay:"Payer",memo:"Mémo",date:"Date",payment_processing:"Traitement du paiement...",not_enough_funds:"Fonds insuffisants !",search_by_tag_memo_amount:"Rechercher par tag, mémo, montant",invoice_waiting:"Facture en attente de paiement",payment_received:"Paiement reçu",payment_sent:"Paiement envoyé",receive:"recevoir",send:"envoyer",outgoing_payment_pending:"Paiement sortant en attente",drain_funds:"Vider les fonds",drain_funds_desc:"Il s'agit d'un code QR LNURL-withdraw pour tout aspirer de ce portefeuille. Ne le partagez avec personne. Il est compatible avec balanceCheck et balanceNotify, de sorte que votre portefeuille peut continuer à retirer les fonds continuellement à partir d'ici après le premier retrait.",i_understand:"J'ai compris",copy_wallet_url:"Copier l'URL du portefeuille",disclaimer_dialog_title:"Important !",disclaimer_dialog:"La fonctionnalité de connexion sera publiée dans une future mise à jour, pour l'instant, assurez-vous de mettre cette page en favori pour accéder à votre portefeuille ultérieurement ! Ce service est en BETA, et nous ne sommes pas responsables des personnes qui perdent l'accès à leurs fonds.",no_transactions:"Aucune transaction effectuée pour le moment",manage:"Gérer",exchanges:"Échanges",extensions:"Extensions",no_extensions:"Vous n'avez installé aucune extension :(",created:"Créé",search_extensions:"Rechercher des extensions",extension_sources:"Sources d'extension",ext_sources_hint:"Dépôts à partir desquels les extensions peuvent être téléchargées",ext_sources_label:"URL source (utilisez uniquement la source officielle de l'extension LNbits et des sources fiables)",warning:"Avertissement",repository:"Référentiel",confirm_continue:"Êtes-vous sûr de vouloir continuer ?",manage_extension_details:"Installer/désinstaller l'extension",install:"Installer",uninstall:"Désinstaller",drop_db:"Supprimer les données",enable:"Activer",pay_to_enable:"Payer pour activer",enable_extension_details:"Activer l'extension pour l'utilisateur actuel",disable:"Désactiver",delete:"Supprimer",installed:"Installé",activated:"Activé",deactivated:"Désactivé",release_notes:"Notes de version",activate_extension_details:"Rendre l'extension disponible/indisponible pour les utilisateurs",featured:"Mis en avant",all:"Tout",only_admins_can_install:"Seuls les comptes administrateurs peuvent installer des extensions",admin_only:"Réservé aux administrateurs",new_version:"Nouvelle version",extension_depends_on:"Dépend de :",extension_rating_soon:"Notes des utilisateurs à venir bientôt",extension_installed_version:"Version installée",extension_uninstall_warning:"Vous êtes sur le point de supprimer l'extension pour tous les utilisateurs.",uninstall_confirm:"Oui, Désinstaller",extension_db_drop_info:"Toutes les données pour l'extension seront supprimées de manière permanente. Il n'est pas possible d'annuler cette opération !",extension_db_drop_warning:"Vous êtes sur le point de supprimer toutes les données de l'extension. Veuillez taper le nom de l'extension pour continuer :",extension_required_lnbits_version:"Cette version nécessite au moins LNbits version",min_version:"Minimum (inclus)",max_version:"Maximum (exclu)",payment_hash:"Hash de paiement",fee:"Frais",amount:"Montant",amount_sats:"Montant (sats)",tag:"Étiqueter",unit:"Unité",description:"Description",expiry:"Expiration",webhook:"Webhook",payment_proof:"Preuve de paiement",update:"Mettre à jour",update_available:"Mise à jour {version} disponible !",latest_update:"Vous êtes sur la dernière version {version}.",notifications:"Notifications",no_notifications:"Aucune notification",notifications_disabled:"Les notifications de statut LNbits sont désactivées.",enable_notifications:"Activer les notifications",enable_notifications_desc:"Si activé, il récupérera les dernières mises à jour du statut LNbits, telles que les incidents de sécurité et les mises à jour.",enable_watchdog:"Activer le Watchdog",enable_watchdog_desc:"Si elle est activée, elle changera automatiquement votre source de financement en VoidWallet si votre solde est inférieur au solde LNbits. Vous devrez activer manuellement après une mise à jour.",watchdog_interval:"Intervalle du gardien",watchdog_interval_desc:"À quelle fréquence la tâche en arrière-plan doit-elle vérifier la présence d'un signal d'arrêt d'urgence dans le delta du gardien [node_balance - lnbits_balance] (en minutes).",watchdog_delta:"Chien de garde Delta",watchdog_delta_desc:"Limite avant que l'interrupteur d'arrêt ne change la source de financement pour VoidWallet [lnbits_balance - node_balance > delta]",status:"Statut",notification_source:"Source de notification",notification_source_label:"URL source (utilisez uniquement la source officielle de statut LNbits et des sources de confiance)",more:"plus",less:"moins",releases:"Versions",watchdog:"Chien de garde",server_logs:"Journaux du serveur",ip_blocker:"Bloqueur d'IP",security:"Sécurité",security_tools:"Outils de sécurité",block_access_hint:"Bloquer l'accès par IP",allow_access_hint:"Autoriser l'accès par IP (cela passera outre les IP bloquées)",enter_ip:"Entrez l'adresse IP et appuyez sur Entrée",rate_limiter:"Limiteur de débit",wallet_limiter:"Limiteur de portefeuille",wallet_limit_max_withdraw_per_day:"Retrait quotidien maximum du portefeuille en sats (0 pour désactiver)",wallet_max_ballance:"Solde maximum du portefeuille en sats (0 pour désactiver)",wallet_limit_secs_between_trans:"Minutes et secondes entre les transactions par portefeuille (0 pour désactiver)",number_of_requests:"Nombre de requêtes",time_unit:"Unité de temps",minute:"minute",second:"seconde",hour:"heure",disable_server_log:"Désactiver le journal du serveur",enable_server_log:"Activer le journal du serveur",coming_soon:"Fonctionnalité à venir bientôt",session_has_expired:"Votre session a expiré. Veuillez vous reconnecter.",instant_access_question:"Voulez-vous un accès instantané ?",login_with_user_id:"Connexion avec l'identifiant utilisateur",or:"ou",create_new_wallet:"Créer un nouveau portefeuille",login_to_account:"Connectez-vous à votre compte",create_account:"Créer un compte",account_settings:"Paramètres du compte",signin_with_nostr:"Continuer avec Nostr",signin_with_google:"Connectez-vous avec Google",signin_with_github:"Connectez-vous avec GitHub",signin_with_keycloak:"Connectez-vous avec Keycloak",username_or_email:"Nom d'utilisateur ou e-mail",password:"Mot de passe",password_config:"Configuration du mot de passe",password_repeat:"Répétition du mot de passe",change_password:"Changer le mot de passe",update_credentials:"Mettre à jour les informations d'identification",update_pubkey:"Mettre à jour la clé publique",set_password:"Définir le mot de passe",invalid_password:"Le mot de passe doit comporter au moins 8 caractères",login:"Connexion",register:"Inscrire",username:"Nom d'utilisateur",pubkey:"Clé publique",user_id:"Identifiant utilisateur",email:"E-mail",first_name:"Prénom",last_name:"Nom de famille",picture:"Image",verify_email:"Vérifiez l'e-mail avec",account:"Compte",update_account:"Mettre à jour le compte",invalid_username:"Nom d'utilisateur invalide",auth_provider:"Fournisseur d'authentification",my_account:"Mon compte",back:"Retour",logout:"Déconnexion",look_and_feel:"Apparence",toggle_gradient:"Basculer le dégradé",gradient_background:"Fond en dégradé",language:"Langue",color_scheme:"Schéma de couleurs",admin_settings:"Paramètres administrateur",extension_cost:"Cette version nécessite un paiement minimum de {cost} sats.",extension_paid_sats:"Vous avez déjà payé {paid_sats} sats.",release_details_error:"Impossible d'obtenir les détails de la version.",pay_from_wallet:"Payer depuis le portefeuille",wallet_required:"Portefeuille *",show_qr:"Afficher le QR",retry_install:"Réessayer l'installation",new_payment:"Effectuer un nouveau paiement",update_payment:"Mettre à jour le paiement",already_paid_question:"Avez-vous déjà payé ?",sell:"Vendre",sell_require:"Demander un paiement pour activer l'extension",sell_info:"L'extension {name} nécessite un paiement minimum de {amount} sats pour être activée.",hide_empty_wallets:"Masquer les portefeuilles vides",recheck:"Revérifier",contributors:"Contributeurs",license:"Licence",reset_key:"Réinitialiser la clé",reset_password:"Réinitialiser le mot de passe",border_choices:"Choix de bordure",select_all:"Sélectionner tout",nfc_supported:"NFC pris en charge",nfc_not_supported:"NFC non pris en charge",expire_date:"Date d'expiration :",hash:"Hash :",welcome_lnbits:"Bienvenue à LNbits",setup_su_account:"Configurez le compte Superuser ci-dessous.",create_ticker_converter:"Créer un convertisseur de code de devise",enable_audit:"Activer l'audit",recommended:"Recommandé",audit_desc:"Enregistrer les requêtes HTTP selon les filtres spécifiés",audit_record_req:"Enregistrer le corps de la demande",audit_record_warning:"Avertissement :",audit_record_req_warning_1:"les données confidentielles (comme les mots de passe) seront enregistrées.",audit_record_req_warning_2:"le corps de la requête peut être de grande taille.",audit_record_use:"Utilisez-le avec précaution.",audit_ip:"Enregistrer l'adresse IP",audit_ip_desc:"Enregistrer l'adresse IP du client",audit_path_params:"Enregistrer les paramètres de chemin",audit_query_params:"Enregistrer les paramètres de la requête",audit_http_methods:"Inclure les méthodes HTTP",audit_http_methods_hint:"Liste des méthodes HTTP à inclure. Listes vides signifie toutes.",audit_http_methods_label:"Méthodes HTTP",audit_resp_codes:"Inclure les codes de réponse HTTP",audit_resp_codes_hint:"Liste des codes HTTP à inclure (correspondance regex). Les listes vides signifient tout. Ex : 4.*, 5.*",audit_resp_codes_label:"Code de réponse HTTP (regex)",audit_paths:"Inclure des chemins",audit_paths_hint:"Liste des chemins à inclure (correspondance regex). Liste vide signifie tout.",audit_paths_label:"Chemin HTTP (regex)",audit_paths_exclude:"Exclure les chemins",audit_paths_exclude_hint:"Liste des chemins à exclure (correspondance regex). Liste vide signifie aucun.",audit_paths_exclude_label:"Chemin HTTP (regex)",exchange_providers:"Fournisseurs d'échange",admin_extensions:"Extensions d'administration",admin_extensions_label:"Extensions d'administration",admin_extensions_hint:"Seuls les utilisateurs avec des privilèges d'administrateur peuvent utiliser les extensions.",user_default_extensions:"Extensions par défaut de l'utilisateur",user_default_extensions_label:"Extensions utilisateur",user_default_extensions_hint:"Extensions qui seront activées par défaut pour les utilisateurs.",miscellanous:"Divers",misc_disable_extensions:"Désactiver les extensions",misc_disable_extensions_label:"Désactiver toutes les extensions",misc_hide_api:"Masquer l'API",misc_hide_api_label:"Masque l'API du portefeuille, les extensions peuvent choisir de respecter",wallets_management:"Gestion des portefeuilles",funding_source_info:"Informations sur la source de financement",funding_source:"Source de financement : {wallet_class}",node_balance:"Solde du nœud : {balance} sats",lnbits_balance:"Solde LNbits : {balance} sats",funding_reserve_percent:"Pourcentage de Réserve : {percent} %",node_management:"Gestion des nœuds",node_management_not_supported:"La gestion des nœuds n'est pas prise en charge par la source de financement active",toggle_node_ui:"Interface utilisateur de nœud",toggle_public_node_ui:"Interface utilisateur du nœud public",toggle_transactions_node_ui:"Onglet des transactions (Désactiver sur les grands nœuds CLN)",invoice_expiry:"Expiration de la facture",invoice_expiry_label:"Expiration de la facture (secondes)",fee_reserve:"Réserve de frais",fee_reserve_msats:"Frais de réservation en msats",fee_reserve_percent:"Frais de réservation en pourcentage",server_management:"Gestion de serveur",base_url:"URL de base",base_url_label:"URL statique/de base pour le serveur",authentication:"Authentification",auth_token_expiry_label:"Durée d'expiration du jeton (en minutes)",auth_token_expiry_hint:"Durée en minutes avant l'expiration du jeton",auth_allowed_methods_label:"Méthodes d'autorisation autorisées",auth_allowed_methods_hint:"Sélectionnez les méthodes d'autorisation",auth_nostr_label:"URL de requête Nostr",auth_nostr_hint:"URL absolue que les clients utiliseront pour se connecter.",auth_google_ci_label:"ID Client Google",auth_google_ci_hint:"Assurez-vous que les URIs de redirection autorisées contiennent https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Secret client Google",auth_gh_client_id_label:"Identifiant client GitHub",auth_gh_client_id_hint:"Assurez-vous que l'URL de rappel d'autorisation est définie sur https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Secret Client GitHub",auth_keycloak_label:"URL de découverte Keycloak",auth_keycloak_ci_label:"ID Client Keycloak",auth_keycloak_ci_hint:"Assurez-vous que l'URL de rappel d'autorisation est définie sur https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Secret client Keycloak",currency_settings:"Paramètres de devise",allowed_currencies:"Devises autorisées",allowed_currencies_hint:"Limiter le nombre de devises fiduciaires disponibles",default_account_currency:"Devise par défaut du compte",default_account_currency_hint:"Devise par défaut pour la comptabilité",service_fee_label:"Frais de service (%)",service_fee_hint:"Frais facturés par tx (%)",service_fee_max_label:"Frais de service max (sats)",service_fee_max_hint:"Frais de service maximum à facturer en (sats)",fee_wallet:"Portefeuille de frais",fee_wallet_label:"Portefeuille de frais (ID de portefeuille)",fee_wallet_hint:"Identifiant de portefeuille pour envoyer des fonds à",disable_fee:"Désactiver les frais",disable_fee_internal:"Désactiver les frais de service pour les paiements internes",disable_fee_internal_desc:"Désactiver les frais de service pour les paiements Lightning internes",ui_management:"Gestion de l'interface utilisateur",ui_site_title:"Titre du site",ui_site_tagline:"Slogan du site",ui_elements_enable:"Activer les éléments sur la page d'accueil",ui_elements_disable:"Désactiver les éléments sur la page d'accueil",ui_toggle_elements_tip:"Supprimer les éléments de la page d'accueil comme 'fonctionne avec', etc.",ui_site_description:"Description du site",ui_site_description_hint:"Utilisez du texte brut, du Markdown ou du HTML brut",ui_default_wallet_name:"Nom par Défaut du Portefeuille",lnbits_wallet:"Portefeuille LNbits",denomination:"Dénomination",denomination_hint:"Le nom du jeton FakeWallet",ui_qr_code_logo:"Logo de code QR",ui_qr_code_logo_hint:"URL de l'image du logo dans le code QR",ui_custom_badge:"Badge personnalisé",ui_custom_badge_label:"Badge personnalisé 'À UTILISER AVEC PRÉCAUTION - Le portefeuille LNbits est encore en BÊTA'",ui_custom_badge_color_label:"Couleur de badge personnalisée",themes:"Thèmes",themes_hint:"Choisissez des thèmes disponibles pour les utilisateurs",custom_logo:"Logo personnalisé",custom_logo_hint:"URL de l'image du logo",ad_space_title:"Titre de l'espace publicitaire",ad_space_title_label:"Soutenu par",ad_slots:"Emplacements publicitaires",ad_slots_hint:"URL de l'annonce et chemins des fichiers image au format CSV, les extensions peuvent choisir de respecter",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Annonces activées",ads_disabled:"Publicités désactivées",user_management:"Gestion des utilisateurs",admin_users:"Utilisateurs administrateurs",admin_users_hint:"Utilisateurs avec des privilèges d'administration",admin_users_label:"Identifiant utilisateur",allowed_users:"Utilisateurs autorisés",allowed_users_hint:"Seuls ces utilisateurs peuvent utiliser LNbits",allowed_users_label:"ID utilisateur",allow_creation_user:"Autoriser la création de nouveaux utilisateurs",allow_creation_user_desc:"Permettre la création de nouveaux utilisateurs sur la page d’index",components:"Composants",long_running_endpoints:"Top 5 points de terminaison longue durée",http_request_methods:"Méthodes de requête HTTP",http_response_codes:"Codes de réponse HTTP",request_details:"Détails de la demande",http_request_details:"Détails de la requête HTTP"},window.localisation.it={confirm:"Sì",server:"Server",theme:"Tema",site_customisation:"Personalizzazione del sito",funding:"Funding",users:"Utenti",audit:"Verifica",apps:"Applicazioni",channels:"Canali",transactions:"Transazioni",dashboard:"Pannello di controllo",node:"Interruttore",export_users:"Esporta utenti",no_users:"Nessun utente trovato",total_capacity:"Capacità Totale",avg_channel_size:"Dimensione media del canale",biggest_channel_size:"Dimensione del canale più grande",smallest_channel_size:"Dimensione Più Piccola del Canale",number_of_channels:"Numero di Canali",active_channels:"Canali Attivi",connect_peer:"Connetti Peer",connect:"Connetti",open_channel:"Canale aperto",open:"Apri",close_channel:"Chiudi Canale",close:"Chiudi",restart:"Riavvia il server",save:"Salva",save_tooltip:"Salva le modifiche",credit_debit:"Credito / Debito",credit_hint:"Premere Invio per accreditare i fondi",credit_label:"{denomination} da accreditare",credit_ok:"Credito/addebito riuscito di fondi virtuali ({amount} sats). I pagamenti dipendono dai fondi effettivi sulla fonte di finanziamento.",restart_tooltip:"Riavvia il server affinché le modifiche abbiano effetto",add_funds_tooltip:"Aggiungere fondi a un portafoglio",reset_defaults:"Ripristina le impostazioni predefinite",reset_defaults_tooltip:"Cancella tutte le impostazioni e ripristina i valori predefiniti",download_backup:"Scarica il backup del database",name_your_wallet:"Dai un nome al tuo portafoglio {name}",paste_invoice_label:"Incolla una fattura, una richiesta di pagamento o un codice lnurl *",lnbits_description:"Leggero e facile da configurare, LNbits può funzionare su qualsiasi fonte di finanziamento Lightning Network e persino LNbits stesso! Potete gestire LNbits per conto vostro o offrire facilmente una soluzione di custodia per altri. Ogni portafoglio ha le proprie chiavi API e non c'è limite al numero di portafogli che si possono creare. La possibilità di suddividere i fondi rende LNbits uno strumento utile per la gestione del denaro e come strumento di sviluppo. Le estensioni aggiungono ulteriori funzionalità a LNbits, consentendo di sperimentare una serie di tecnologie all'avanguardia sulla rete Lightning. Abbiamo reso lo sviluppo delle estensioni il più semplice possibile e, in quanto progetto libero e open-source, incoraggiamo le persone a sviluppare e inviare le proprie",export_to_phone:"Esportazione su telefono con codice QR",export_to_phone_desc:"Questo codice QR contiene l'URL del portafoglio con accesso da amministratore. È possibile scansionarlo dal telefono per aprire il portafoglio da lì.",wallet:"Portafoglio:",wallets:"Portafogli",add_wallet:"Aggiungi un nuovo portafoglio",delete_wallet:"Elimina il portafoglio",delete_wallet_desc:"L'intero portafoglio sarà cancellato, i fondi saranno irrecuperabili",rename_wallet:"Rinomina il portafoglio",update_name:"Aggiorna il nome",fiat_tracking:"Tracciamento Fiat",currency:"Valuta",update_currency:"Aggiorna valuta",press_to_claim:"Premi per richiedere bitcoin",donate:"Donazioni",view_github:"Visualizza su GitHub",voidwallet_active:"VoidWallet è attivo! Pagamenti disabilitati",use_with_caution:"USARE CON CAUTELA - {name} portafoglio è ancora in BETA",service_fee:"Commissione di servizio: {amount} % per transazione",service_fee_max:"Commissione di servizio: {amount} % per transazione (max {max} sats)",service_fee_tooltip:"Commissione di servizio addebitata dall'amministratore del server LNbits per ogni transazione in uscita",toggle_darkmode:"Attiva la modalità notturna",payment_reactions:"Reazioni al Pagamento",view_swagger_docs:"Visualizza i documentazione dell'API Swagger di LNbits",api_docs:"Documentazione dell'API",api_keys_api_docs:"URL del nodo, chiavi API e documentazione API",lnbits_version:"Versione di LNbits",runs_on:"Esegue su",paste:"Incolla",paste_from_clipboard:"Incolla dagli appunti",paste_request:"Richiesta di pagamento",create_invoice:"Crea fattura",camera_tooltip:"Usa la fotocamera per scansionare la fattura/QR",export_csv:"Esporta CSV",chart_tooltip:"Mostra grafico",pending:"In attesa",copy_invoice:"Copia fattura",withdraw_from:"Prelevare da",cancel:"Annulla",scan:"Scansiona",read:"Leggi",pay:"Paga",memo:"Memo",date:"Dati",payment_processing:"Elaborazione pagamento...",not_enough_funds:"Non ci sono abbastanza fondi!",search_by_tag_memo_amount:"Cerca per tag, memo, importo...",invoice_waiting:"Fattura in attesa di pagamento",payment_received:"Pagamento ricevuto",payment_sent:"Pagamento inviato",receive:"ricevere",send:"inviare",outgoing_payment_pending:"Pagamento in uscita in attesa",drain_funds:"Fondi di drenaggio",drain_funds_desc:"Questo è un codice QR LNURL-withdraw per prelevare tutti i fondi da questo portafoglio. Non condividerlo con nessuno. È compatibile con balanceCheck e balanceNotify, di conseguenza il vostro portafoglio può continuare a prelevare continuamente i fondi da qui dopo il primo prelievo",i_understand:"Ho capito",copy_wallet_url:"Copia URL portafoglio",disclaimer_dialog_title:"Importante!",disclaimer_dialog:"La funzionalità di login sarà rilasciata in un futuro aggiornamento; per ora, assicuratevi di salvare tra i preferiti questa pagina per accedere nuovamente in futuro a questo portafoglio! Questo servizio è in fase BETA e non ci assumiamo alcuna responsabilità per la perdita all'accesso dei fondi",no_transactions:"Nessuna transazione effettuata",manage:"Gestisci",exchanges:"Scambi",extensions:"Estensioni",no_extensions:"Non ci sono estensioni installate :(",created:"Creato",search_extensions:"Estensioni di ricerca",extension_sources:"Fonti di estensione",ext_sources_hint:"Repository da cui è possibile scaricare le estensioni",ext_sources_label:"URL di origine (utilizzare solo la fonte ufficiale dell'estensione LNbits e fonti affidabili)",warning:"Attenzione",repository:"Deposito",confirm_continue:"Sei sicuro di voler continuare?",manage_extension_details:"Installa/disinstalla estensione",install:"Installare",uninstall:"Disinstalla",drop_db:"Rimuovi Dati",enable:"Abilita",pay_to_enable:"Paga per abilitare",enable_extension_details:"Attiva l'estensione per l'utente corrente",disable:"Disabilita",delete:"Elimina",installed:"Installato",activated:"Attivato",deactivated:"Disattivato",release_notes:"Note di Rilascio",activate_extension_details:"Rendi l'estensione disponibile/non disponibile per gli utenti",featured:"In primo piano",all:"Tutto",only_admins_can_install:"Solo gli account amministratore possono installare estensioni.",admin_only:"Solo amministratore",new_version:"Nuova Versione",extension_depends_on:"Dipende da:",extension_rating_soon:"Valutazioni in arrivo",extension_installed_version:"Versione installata",extension_uninstall_warning:"Stai per rimuovere l'estensione per tutti gli utenti.",uninstall_confirm:"Sì, Disinstalla",extension_db_drop_info:"Tutti i dati relativi all'estensione saranno cancellati permanentemente. Non c'è modo di annullare questa operazione!",extension_db_drop_warning:"Stai per rimuovere tutti i dati per l'estensione. Digita il nome dell'estensione per continuare:",extension_required_lnbits_version:"Questa versione richiede almeno la versione LNbits",min_version:"Minimo (incluso)",max_version:"Massimo (escluso)",payment_hash:"Hash del pagamento",fee:"Tariffa",amount:"Importo",amount_sats:"Importo (sats)",tag:"Etichetta",unit:"Unità",description:"Descrizione",expiry:"Scadenza",webhook:"Webhook",payment_proof:"Prova di pagamento",update:"Aggiorna",update_available:"Aggiornamento {version} disponibile!",latest_update:"Sei sulla versione più recente {version}.",notifications:"Notifiche",no_notifications:"Nessuna notifica",notifications_disabled:"Le notifiche di stato di LNbits sono disattivate.",enable_notifications:"Attiva le notifiche",enable_notifications_desc:"Se attivato, recupererà gli ultimi aggiornamenti sullo stato di LNbits, come incidenti di sicurezza e aggiornamenti.",enable_watchdog:"Attiva Watchdog",enable_watchdog_desc:"Se abilitato, cambierà automaticamente la tua fonte di finanziamento in VoidWallet se il tuo saldo è inferiore al saldo LNbits. Dovrai abilitarlo manualmente dopo un aggiornamento.",watchdog_interval:"Intervallo Watchdog",watchdog_interval_desc:"Quanto spesso il task in background dovrebbe controllare un segnale di killswitch nel delta del watchdog [node_balance - lnbits_balance] (in minuti).",watchdog_delta:"Guardiano Delta",watchdog_delta_desc:"Limite prima che l'interruttore di sicurezza modifichi la fonte di finanziamento in VoidWallet [lnbits_balance - node_balance > delta]",status:"Stato",notification_source:"Sorgente di notifica",notification_source_label:"URL sorgente (utilizzare solo la fonte ufficiale di stato LNbits e fonti di cui ti puoi fidare)",more:"più",less:"meno",releases:"Pubblicazioni",watchdog:"Cane da guardia",server_logs:"Registri del server",ip_blocker:"Blocco IP",security:"Sicurezza",security_tools:"Strumenti di sicurezza",block_access_hint:"Blocca l'accesso per IP",allow_access_hint:"Consenti l'accesso per IP (sovrascriverà gli IP bloccati)",enter_ip:"Inserisci l'IP e premi invio",rate_limiter:"Limitatore di frequenza",wallet_limiter:"Limitatore del Portafoglio",wallet_limit_max_withdraw_per_day:"Prelievo massimo giornaliero dal portafoglio in sats (0 per disabilitare)",wallet_max_ballance:"Saldo massimo del portafoglio in sats (0 per disabilitare)",wallet_limit_secs_between_trans:"Minuti e secondi tra transazioni per portafoglio (0 per disabilitare)",number_of_requests:"Numero di richieste",time_unit:"Unità di tempo",minute:"minuto",second:"secondo",hour:"ora",disable_server_log:"Disabilita Registro Server",enable_server_log:"Attiva Registro Server",coming_soon:"Caratteristica in arrivo prossimamente",session_has_expired:"La tua sessione è scaduta. Per favore, effettua nuovamente il login.",instant_access_question:"Vuoi accesso immediato?",login_with_user_id:"Accedi con ID utente",or:"oppure",create_new_wallet:"Crea nuovo portafoglio",login_to_account:"Accedi al tuo account",create_account:"Crea un account",account_settings:"Impostazioni dell'account",signin_with_nostr:"Continua con Nostr",signin_with_google:"Accedi con Google",signin_with_github:"Accedi con GitHub",signin_with_keycloak:"Accedi con Keycloak",username_or_email:"Nome utente o Email",password:"Password",password_config:"Configurazione della password",password_repeat:"Ripeti la password",change_password:"Cambia Password",update_credentials:"Aggiorna credenziali",update_pubkey:"Aggiorna chiave pubblica",set_password:"Imposta password",invalid_password:"La password deve contenere almeno 8 caratteri",login:"Accesso",register:"Registrati",username:"Nome utente",pubkey:"Chiave pubblica",user_id:"ID utente",email:"Email",first_name:"Nome",last_name:"Cognome",picture:"Immagine",verify_email:"Verifica email con",account:"Conto",update_account:"Aggiorna Account",invalid_username:"Nome utente non valido",auth_provider:"Provider di Autenticazione",my_account:"Il mio account",back:"Indietro",logout:"Esci",look_and_feel:"Aspetto e Comportamento",toggle_gradient:"Attiva/disattiva gradiente",gradient_background:"Sfondo sfumato",language:"Lingua",color_scheme:"Schema dei colori",admin_settings:"Impostazioni di amministrazione",extension_cost:"Questa versione richiede un pagamento minimo di {cost} satoshi.",extension_paid_sats:"Hai già pagato {paid_sats} sats.",release_details_error:"Impossibile ottenere i dettagli della versione.",pay_from_wallet:"Paga dal Portafoglio",wallet_required:"Portafoglio *",show_qr:"Mostra QR",retry_install:"Riprova Installazione",new_payment:"Effettua Nuovo Pagamento",update_payment:"Aggiorna Pagamento",already_paid_question:"Hai già pagato?",sell:"Vendi",sell_require:"Chiedi il pagamento per abilitare l'estensione",sell_info:"L'estensione {name} richiede un pagamento minimo di {amount} sats per essere abilitata.",hide_empty_wallets:"Nascondi portafogli vuoti",recheck:"Ricontrolla",contributors:"Contributori",license:"Licenza",reset_key:"Reimposta Chiave",reset_password:"Reimposta password",border_choices:"Scelte del bordo",select_all:"Seleziona tutto",nfc_supported:"Supportato NFC",nfc_not_supported:"NFC non supportato",expire_date:"Data di scadenza:",hash:"Hash:",welcome_lnbits:"Benvenuto in LNbits",setup_su_account:"Configura l'account Superuser qui sotto.",create_ticker_converter:"Crea Convertitore di Simboli di Valuta",enable_audit:"Abilita controllo",recommended:"Consigliato",audit_desc:"Registrare le richieste HTTP secondo i filtri specificati",audit_record_req:"Registra il corpo della richiesta",audit_record_warning:"Avvertimento:",audit_record_req_warning_1:"I dati riservati (come le password) verranno registrati.",audit_record_req_warning_2:"il corpo della richiesta può avere grandi dimensioni.",audit_record_use:"Usalo con cautela.",audit_ip:"Registrare l'indirizzo IP",audit_ip_desc:"Registra l'indirizzo IP del cliente",audit_path_params:"Registra i parametri del percorso",audit_query_params:"Registrare i parametri di query",audit_http_methods:"Includi i metodi HTTP",audit_http_methods_hint:"Elenco di metodi HTTP da includere. Liste vuote significano tutti.",audit_http_methods_label:"Metodi HTTP",audit_resp_codes:"Includere codici di risposta HTTP",audit_resp_codes_hint:"Elenco dei codici HTTP da includere (corrispondenza regex). Liste vuote significano tutto. Ad esempio: 4.*, 5.*",audit_resp_codes_label:"Codice di risposta HTTP (regex)",audit_paths:"Includi percorsi",audit_paths_hint:"Elenco dei percorsi da includere (corrispondenza regex). Elenco vuoto significa tutto.",audit_paths_label:"Percorso HTTP (regex)",audit_paths_exclude:"Escludi percorsi",audit_paths_exclude_hint:"Elenco dei percorsi da escludere (corrispondenza regex). Un elenco vuoto significa nessuno.",audit_paths_exclude_label:"Percorso HTTP (regex)",exchange_providers:"Fornitori di scambio",admin_extensions:"Estensioni Admin",admin_extensions_label:"Estensioni amministrative",admin_extensions_hint:"Solo un utente con privilegi di amministratore può utilizzare le estensioni.",user_default_extensions:"Estensioni predefinite dell'utente",user_default_extensions_label:"Estensioni utente",user_default_extensions_hint:"Estensioni che saranno abilitate di default per gli utenti.",miscellanous:"Varie",misc_disable_extensions:"Disabilita estensioni",misc_disable_extensions_label:"Disabilita tutte le estensioni",misc_hide_api:"Nascondi API",misc_hide_api_label:"Nasconde l'api del portafoglio, le estensioni possono scegliere di onorare",wallets_management:"Gestione dei portafogli",funding_source_info:"Informazioni sulla fonte di finanziamento",funding_source:"Fonte di finanziamento: {wallet_class}",node_balance:"Saldo Nodo: {balance} sats",lnbits_balance:"Saldo LNbits: {balance} sats",funding_reserve_percent:"Riserva Percentuale: {percent} %",node_management:"Gestione dei nodi",node_management_not_supported:"La gestione dei nodi non è supportata dalla fonte di finanziamento attiva.",toggle_node_ui:"Interfaccia utente del nodo",toggle_public_node_ui:"Interfaccia Utente Nodo Pubblico",toggle_transactions_node_ui:"Scheda Transazioni (Disabilita su nodi CLN grandi)",invoice_expiry:"Scadenza fattura",invoice_expiry_label:"Scadenza fattura (secondi)",fee_reserve:"Riserva delle commissioni",fee_reserve_msats:"Tariffa di prenotazione in msats",fee_reserve_percent:"Commissione di riserva in percentuale",server_management:"Gestione server",base_url:"URL di base",base_url_label:"URL statica/base per il server",authentication:"Autenticazione",auth_token_expiry_label:"Minuti di scadenza del token",auth_token_expiry_hint:"Tempo in minuti fino alla scadenza del token",auth_allowed_methods_label:"Metodi di autorizzazione consentiti",auth_allowed_methods_hint:"Seleziona i metodi di autorizzazione",auth_nostr_label:"URL richiesta Nostr",auth_nostr_hint:"URL assoluto che i clienti utilizzeranno per accedere.",auth_google_ci_label:"ID client di Google",auth_google_ci_hint:"Assicurati che gli URI di reindirizzamento autorizzati contengano https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"ID client di GitHub",auth_gh_client_id_hint:"Assicurati che l'URL di callback dell'autorizzazione sia impostato su https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Segreto Client GitHub",auth_keycloak_label:"URL di individuazione di Keycloak",auth_keycloak_ci_label:"ID client di Keycloak",auth_keycloak_ci_hint:"Assicurati che l'URL di callback dell'autorizzazione sia impostato su https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Client Secret",currency_settings:"Impostazioni valuta",allowed_currencies:"Valute consentite",allowed_currencies_hint:"Limita il numero di valute fiat disponibili",default_account_currency:"Valuta predefinita del conto",default_account_currency_hint:"Valuta predefinita per la contabilità",service_fee_label:"Tassa di servizio (%)",service_fee_hint:"Tariffa addebitata per transazione (%)",service_fee_max_label:"Commissione di servizio max (sats)",service_fee_max_hint:"Commissione massima da addebitare in (sats)",fee_wallet:"Portafoglio delle commissioni",fee_wallet_label:"Portafoglio delle commissioni (ID portafoglio)",fee_wallet_hint:"ID portafoglio a cui inviare fondi",disable_fee:"Disabilita Commissione",disable_fee_internal:"Disabilita la commissione di servizio per i pagamenti interni",disable_fee_internal_desc:"Disabilita la commissione di servizio per i pagamenti Lightning interni",ui_management:"Gestione dell'interfaccia utente",ui_site_title:"Titolo del sito",ui_site_tagline:"Slogan del sito",ui_elements_enable:"Abilita elementi sulla homepage",ui_elements_disable:"Disabilita elementi sulla homepage",ui_toggle_elements_tip:"Rimuovi elementi della homepage come 'runs on' ecc.",ui_site_description:"Descrizione del sito",ui_site_description_hint:"Usa testo normale, Markdown o HTML grezzo",ui_default_wallet_name:"Nome predefinito del portafoglio",lnbits_wallet:"Portafoglio LNbits",denomination:"Denominazione",denomination_hint:"Il nome per il token FakeWallet",ui_qr_code_logo:"Logo del codice QR",ui_qr_code_logo_hint:"URL all'immagine del logo nel codice QR",ui_custom_badge:"Badge personalizzato",ui_custom_badge_label:"Badge personalizzato 'USARE CON CAUTELA - Il portafoglio LNbits è ancora in BETA'",ui_custom_badge_color_label:"Colore distintivo personalizzato",themes:"Temi",themes_hint:"Scegli i temi disponibili per gli utenti",custom_logo:"Logo personalizzato",custom_logo_hint:"URL all'immagine del logo",ad_space_title:"Titolo Spazio Pubblicitario",ad_space_title_label:"Supportato da",ad_slots:"Spazi pubblicitari",ad_slots_hint:"Percorso dell'URL e dell'immagine in formato CSV, le estensioni possono scegliere di rispettare",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Annunci abilitati",ads_disabled:"Annunci disabilitati",user_management:"Gestione utenti",admin_users:"Utenti amministratori",admin_users_hint:"Utenti con privilegi di amministratore",admin_users_label:"ID utente",allowed_users:"Utenti consentiti",allowed_users_hint:"Solo questi utenti possono usare LNbits",allowed_users_label:"ID utente",allow_creation_user:"Consenti la creazione di nuovi utenti",allow_creation_user_desc:"Consenti la creazione di nuovi utenti nella pagina indice",components:"Componenti",long_running_endpoints:"I primi 5 endpoint a lunga esecuzione",http_request_methods:"Metodi di richiesta HTTP",http_response_codes:"Codici di risposta HTTP",request_details:"Dettagli della richiesta",http_request_details:"Dettagli della richiesta HTTP"},window.localisation.jp={confirm:"はい",server:"サーバー",theme:"テーマ",site_customisation:"サイトカスタマイズ",funding:"資金調達",users:"ユーザー",audit:"監査",apps:"アプリ",channels:"チャンネル",transactions:"トランザクション",dashboard:"ダッシュボード",node:"ノード",export_users:"ユーザーのエクスポート",no_users:"ユーザーが見つかりません",total_capacity:"合計容量",avg_channel_size:"平均チャンネルサイズ",biggest_channel_size:"最大チャネルサイズ",smallest_channel_size:"最小チャンネルサイズ",number_of_channels:"チャンネル数",active_channels:"アクティブチャンネル",connect_peer:"ピアを接続",connect:"接続",open_channel:"オープンチャンネル",open:"開く",close_channel:"チャンネルを閉じる",close:"閉じる",restart:"サーバーを再起動する",save:"保存",save_tooltip:"変更を保存する",credit_debit:"クレジット / デビット",credit_hint:"クレジットカードを使用して資金を追加するには、LNbitsを使用してください。",credit_label:"{denomination} をクレジットに",restart_tooltip:"サーバーを再起動して変更を適用します",add_funds_tooltip:"ウォレットに資金を追加します。",reset_defaults:"リセット",reset_defaults_tooltip:"すべての設定を削除してデフォルトに戻します。",download_backup:"データベースのバックアップをダウンロードする",name_your_wallet:"あなたのウォレットの名前 {name}",paste_invoice_label:"請求書を貼り付けてください",lnbits_description:"簡単にインストールでき、軽量なLNbitsは、あらゆるライトニングネットワークの資金源と、LNbits自身でさえも実行できます!LNbitsを個人で実行することも、他人に対してカストディアンソリューションをで実行できます! LNbitsを自分で実行することも、他の人に優れたソリューションを提供することもできます。各ウォレットには独自のAPIキーがあり、作成できるウォレットの数に制限はありません。資金を分割する機能は、LNbitsを資金管理ツールとして使用したり、開発ツールとして使用したりするための便利なツールです。拡張機能は、LNbitsに追加の機能を追加します。そのため、LNbitsは最先端の技術をネットワークLightningで試すことができます。拡張機能を開発するのは簡単で、無料でオープンソースのプロジェクトであるため、人々が自分で開発し、自分の貢献を送信することを奨励しています。",export_to_phone:"電話にエクスポート",export_to_phone_desc:"ウォレットを電話にエクスポートすると、ウォレットを削除する前にウォレットを復元できます。ウォレットを削除すると、ウォレットの秘密鍵が削除され、ウォレットを復元することはできません。",wallet:"ウォレット:",wallets:"ウォレット",add_wallet:"ウォレットを追加",delete_wallet:"ウォレットを削除",delete_wallet_desc:"ウォレットを削除すると、ウォレットの秘密鍵が削除され、ウォレットを復元することはできません。",rename_wallet:"ウォレットの名前を変更",update_name:"名前を更新",fiat_tracking:"フィアット追跡",currency:"通貨",update_currency:"通貨を更新する",press_to_claim:"クレームするには押してください",donate:"寄付",view_github:"GitHubで表示",voidwallet_active:"Voidwalletアクティブ",use_with_caution:"注意して使用してください - {name} ウォレットはまだベータ版です",service_fee:"取引ごとのサービス手数料: {amount} %",service_fee_max:"取引手数料:{amount}%(最大{max}サトシ)",service_fee_tooltip:"LNbitsサーバー管理者が発生する送金ごとの手数料",toggle_darkmode:"ダークモードを切り替える",payment_reactions:"支払いの反応",view_swagger_docs:"Swaggerドキュメントを表示",api_docs:"APIドキュメント",api_keys_api_docs:"ノードURL、APIキー、APIドキュメント",lnbits_version:"LNbits バージョン",runs_on:"で実行",paste:"貼り付け",paste_from_clipboard:"クリップボードから貼り付け",paste_request:"リクエストを貼り付ける",create_invoice:"請求書を作成する",camera_tooltip:"QRコードを読み取る",export_csv:"CSVでエクスポート",chart_tooltip:"チャートを表示するには、グラフの上にカーソルを合わせます",pending:"保留中",copy_invoice:"請求書をコピー",withdraw_from:"出金",cancel:"キャンセル",scan:"スキャン",read:"読む",pay:"支払う",memo:"メモ",date:"日付",payment_processing:"支払い処理中",not_enough_funds:"資金が不足しています",search_by_tag_memo_amount:"タグ、メモ、金額で検索",invoice_waiting:"請求書を待っています",payment_received:"お支払いありがとうございます",payment_sent:"支払いが完了しました",receive:"受け取る",send:"送信",outgoing_payment_pending:"支払い保留中",drain_funds:"資金を排出する",drain_funds_desc:"ウォレットの残高をすべて他のウォレットに送金します",i_understand:"理解した",copy_wallet_url:"ウォレットURLをコピー",disclaimer_dialog_title:"重要!",disclaimer_dialog:"ウォレットを削除すると、ウォレットの秘密鍵が削除され、ウォレットを復元することはできません。ウォレットを削除する前に、ウォレットをエクスポートしてください。",no_transactions:"トランザクションはありません",manage:"管理",exchanges:"取引所",extensions:"拡張機能",no_extensions:"拡張機能はありません",created:"作成済み",search_extensions:"検索拡張機能",extension_sources:"拡張ソース",ext_sources_hint:"拡張機能をダウンロードできるリポジトリ",ext_sources_label:"ソースURL(公式のLNbits拡張ソースおよび信頼できるソースのみを使用してください)",warning:"警告",repository:"リポジトリ",confirm_continue:"続行してもよろしいですか?",manage_extension_details:"拡張機能のインストール/アンインストール",install:"インストール",uninstall:"アンインストール",drop_db:"データを削除",enable:"有効",pay_to_enable:"有効にするために支払う",enable_extension_details:"現在のユーザーの拡張機能を有効にする",disable:"無効",delete:"削除",installed:"インストール済み",activated:"有効化",deactivated:"無効化",release_notes:"リリースノート",activate_extension_details:"拡張機能をユーザーが利用できるようにする/利用できないようにする",featured:"特集",all:"すべて",only_admins_can_install:"(管理者アカウントのみが拡張機能をインストールできます)",admin_only:"管理者のみ",new_version:"新しいバージョン",extension_depends_on:"依存先:",extension_rating_soon:"評価は近日公開",extension_installed_version:"インストール済みバージョン",extension_uninstall_warning:"すべてのユーザーの拡張機能を削除しようとしています.",uninstall_confirm:"はい、アンインストールします",extension_db_drop_info:"エクステンションのすべてのデータが完全に削除されます。この操作を元に戻す方法はありません!",extension_db_drop_warning:"エクステンションのすべてのデータを削除しようとしています。続行するには、エクステンションの名前を入力してください:",extension_required_lnbits_version:"このリリースには少なくとも LNbits バージョンが必要です",min_version:"最小値(含む)",max_version:"最大(除外)",payment_hash:"支払いハッシュ",fee:"料金",amount:"量",amount_sats:"金額 (サッツ)",tag:"タグ",unit:"単位",description:"説明",expiry:"有効期限",webhook:"ウェブフック",payment_proof:"支払い証明",update:"更新",update_available:"アップデート{version}が利用可能です!",latest_update:"あなたは最新バージョン{version}を使用しています。",notifications:"通知",no_notifications:"通知はありません",notifications_disabled:"LNbitsステータス通知は無効です。",enable_notifications:"通知を有効にする",enable_notifications_desc:"有効にすると、セキュリティインシデントやアップデートのような最新のLNbitsステータス更新を取得します。",enable_watchdog:"ウォッチドッグを有効にする",enable_watchdog_desc:"有効にすると、残高がLNbitsの残高より少ない場合に、資金源を自動的にVoidWalletに変更します。アップデート後は手動で有効にする必要があります。",watchdog_interval:"ウォッチドッグ・インターバル",watchdog_interval_desc:"バックグラウンドタスクがウォッチドッグデルタ[node_balance - lnbits_balance]でキルスイッチシグナルを確認する頻度(分単位)。",watchdog_delta:"ウォッチドッグデルタ",watchdog_delta_desc:"キルスイッチが資金源をVoidWalletに変更する前の限界 [lnbits_balance - node_balance > delta]",status:"ステータス",notification_source:"通知ソース",notification_source_label:"ソースURL(公式のLNbitsステータスソースのみを使用し、信頼できるソースのみを利用してください)",more:"より多くの",less:"少ない",releases:"リリース",watchdog:"ウォッチドッグ",server_logs:"サーバーログ",ip_blocker:"IPブロッカー",security:"セキュリティ",security_tools:"セキュリティツール",block_access_hint:"IPによるアクセスをブロック",allow_access_hint:"IPによるアクセスを許可する(ブロックされたIPを上書きします)",enter_ip:"IPを入力してエンターキーを押してください",rate_limiter:"レートリミッター",wallet_limiter:"ウォレットリミッター",wallet_limit_max_withdraw_per_day:"1日あたりの最大ウォレット出金額をsatsで入力してください(0 で無効)。",wallet_max_ballance:"ウォレットの最大残高(sats)(0は無効)",wallet_limit_secs_between_trans:"トランザクション間の最小秒数(ウォレットごと)(0は無効)",number_of_requests:"リクエストの数",time_unit:"時間単位",minute:"分",second:"秒",hour:"時間",disable_server_log:"サーバーログを無効にする",enable_server_log:"サーバーログを有効にする",coming_soon:"機能は間もなく登場します",session_has_expired:"あなたのセッションは期限切れです。もう一度ログインしてください。",instant_access_question:"即時アクセスをご希望ですか?",login_with_user_id:"ユーザーIDでログイン",or:"または",create_new_wallet:"新しいウォレットを作成",login_to_account:"アカウントにログインしてください",create_account:"アカウントを作成",account_settings:"アカウント設定",signin_with_nostr:"Nostrで続行",signin_with_google:"Googleでサインイン",signin_with_github:"GitHubでサインイン",signin_with_keycloak:"Keycloakでサインイン",username_or_email:"ユーザー名またはメールアドレス",password:"パスワード",password_config:"パスワード設定",password_repeat:"パスワードの再入力",change_password:"パスワードを変更",update_credentials:"資格情報を更新する",update_pubkey:"公開鍵を更新",set_password:"パスワードを設定",invalid_password:"パスワードは少なくとも8文字必要です",login:"ログイン",register:"登録",username:"ユーザー名",pubkey:"公開鍵",user_id:"ユーザーID",email:"メール",first_name:"名",last_name:"姓",picture:"写真",verify_email:"メールアドレスの確認を行ってください",account:"アカウント",update_account:"アカウントを更新",invalid_username:"無効なユーザー名",auth_provider:"認証プロバイダ",my_account:"マイアカウント",back:"戻る",logout:"ログアウト",look_and_feel:"ルック・アンド・フィール",toggle_gradient:"グラデーションを切り替える",gradient_background:"グラデーション背景",language:"言語",color_scheme:"カラースキーム",admin_settings:"管理設定",extension_cost:"このリリースには最低 {cost} サトシの支払いが必要です。",extension_paid_sats:"すでに{paid_sats} satsを支払いました。",release_details_error:"リリースの詳細を取得できません。",pay_from_wallet:"ウォレットから支払う",wallet_required:"ウォレット *",show_qr:"QRを表示",retry_install:"再試行インストール",new_payment:"新しい支払いを作成する",update_payment:"支払いを更新する",already_paid_question:"すでに支払いましたか?",sell:"販売する",sell_require:"拡張を有効にするために支払いを求める",sell_info:"{name}拡張機能を有効にするには、最小{amount}サツの支払いが必要です。",hide_empty_wallets:"空のウォレットを非表示にする",recheck:"再確認",contributors:"貢献者",license:"ライセンス",reset_key:"リセットキー",reset_password:"パスワードをリセットする",border_choices:"境界の選択肢",select_all:"すべて選択",nfc_supported:"NFC対応",nfc_not_supported:"NFCがサポートされていません",expire_date:"有効期限日:",hash:"ハッシュ:",welcome_lnbits:"LNbitsへようこそ",setup_su_account:"スーパーアカウントを以下に設定してください。",create_ticker_converter:"通貨ティッカーコンバーターを作成",enable_audit:"監査を有効にする",recommended:"推奨",audit_desc:"指定されたフィルターに従ってHTTPリクエストを記録する",audit_record_req:"リクエストボディの記録",audit_record_warning:"警告:",audit_record_req_warning_1:"パスワードなどの機密データが記録されます。",audit_record_req_warning_2:"リクエストボディは大きなサイズになる可能性があります。",audit_record_use:"注意して使用してください。",audit_ip:"IPアドレスを記録する",audit_ip_desc:"クライアントのIPアドレスを記録する",audit_path_params:"パスパラメータを記録",audit_query_params:"クエリパラメータを記録する",audit_http_methods:"HTTPメソッドを含める",audit_http_methods_hint:"含めるHTTPメソッドのリスト。空のリストはすべてを意味します。",audit_http_methods_label:"HTTPメソッド",audit_resp_codes:"HTTPレスポンスコードを含める",audit_resp_codes_hint:"含めるHTTPコードの一覧(正規表現で一致)。空のリストはすべてを意味します。例: 4.*, 5.*",audit_resp_codes_label:"HTTPレスポンスコード(正規表現)",audit_paths:"パスを含める",audit_paths_hint:"含めるパスのリスト(正規表現マッチ)。空のリストはすべてを意味します。",audit_paths_label:"HTTP パス (正規表現)",audit_paths_exclude:"パスを除外",audit_paths_exclude_hint:"除外するパスの一覧(正規表現の一致)。空のリストは対象がないことを意味します。",audit_paths_exclude_label:"HTTP パス (正規表現)",exchange_providers:"取引所プロバイダー",admin_extensions:"管理拡張機能",admin_extensions_label:"管理者拡張機能",admin_extensions_hint:"拡張機能は管理者権限を持つユーザーのみが使用できます",user_default_extensions:"ユーザーデフォルト拡張機能",user_default_extensions_label:"ユーザー拡張機能",user_default_extensions_hint:"ユーザーに対してデフォルトで有効化される拡張機能。",miscellanous:"その他",misc_disable_extensions:"拡張機能を無効にする",misc_disable_extensions_label:"すべての拡張機能を無効にする",misc_hide_api:"APIを非表示",misc_hide_api_label:"ウォレットAPIを隠すことができ、拡張機能は尊重することを選ぶことができます。",wallets_management:"ウォレット管理",funding_source_info:"資金源情報",funding_source:"資金源: {wallet_class}",node_balance:"ノード残高: {balance} サッツ",lnbits_balance:"LNbits残高: {balance} sats",funding_reserve_percent:"予約パーセント: {percent} %",node_management:"ノード管理",node_management_not_supported:"アクティブな資金源ではノード管理がサポートされていません",toggle_node_ui:"ノードUI",toggle_public_node_ui:"パブリックノードUI",toggle_transactions_node_ui:"トランザクションタブ(大規模なCLNノードで無効化)",invoice_expiry:"インボイスの有効期限",invoice_expiry_label:"インボイスの有効期限(秒)",fee_reserve:"料金予約",fee_reserve_msats:"ミリサトシでの予約手数料",fee_reserve_percent:"パーセンテージの予約料",server_management:"サーバー管理",base_url:"ベースURL",base_url_label:"サーバーの静的/基本URL",authentication:"認証",auth_token_expiry_label:"トークン有効期限(分)",auth_token_expiry_hint:"トークンが失効するまでの時間(分)",auth_allowed_methods_label:"許可された認証方法",auth_allowed_methods_hint:"認証方法を選択",auth_nostr_label:"Nostr リクエスト URL",auth_nostr_hint:"クライアントがログインするために使用する絶対URL。",auth_google_ci_label:"Google クライアントID",auth_google_ci_hint:"認可されたリダイレクトURIにhttps://{domain}/api/v1/auth/google/tokenが含まれていることを確認してください",auth_google_cs_label:"Google クライアントシークレット",auth_gh_client_id_label:"GitHub クライアントID",auth_gh_client_id_hint:"認証コールバックURLがhttps://{domain}/api/v1/auth/github/tokenに設定されていることを確認してください。",auth_gh_client_secret_label:"GitHub クライアントシークレット",auth_keycloak_label:"キーコーク ディスカバリー URL",auth_keycloak_ci_label:"Keycloak クライアント ID",auth_keycloak_ci_hint:"認証コールバックURLが https://{domain}/api/v1/auth/keycloak/token に設定されていることを確認してください。",auth_keycloak_cs_label:"キークローククライアントシークレット",currency_settings:"通貨設定",allowed_currencies:"許可されている通貨",allowed_currencies_hint:"利用可能な法定通貨の数を制限する",default_account_currency:"デフォルト口座通貨",default_account_currency_hint:"会計のデフォルト通貨",service_fee_label:"サービス料 (%)",service_fee_hint:"1 取引あたりの手数料 (%)",service_fee_max_label:"サービス料最大 (sats)",service_fee_max_hint:"(サット)での最大サービス料金",fee_wallet:"手数料ウォレット",fee_wallet_label:"手数料ウォレット (ウォレットID)",fee_wallet_hint:"送金先のウォレットID",disable_fee:"手数料を無効にする",disable_fee_internal:"内部支払に対するサービス手数料を無効にする",disable_fee_internal_desc:"内部のライトニングペイメントのサービス料金を無効にする",ui_management:"UI管理",ui_site_title:"サイトのタイトル",ui_site_tagline:"サイトのタグライン",ui_elements_enable:"ホームページの要素を有効にする",ui_elements_disable:"ホームページの要素を無効にする",ui_toggle_elements_tip:"「runs on」などのホームページ要素を削除します。",ui_site_description:"サイトの説明",ui_site_description_hint:"プレーンテキスト、Markdown、または生のHTMLを使用してください。",ui_default_wallet_name:"デフォルトウォレット名",lnbits_wallet:"LNbitsウォレット",denomination:"額面",denomination_hint:"FakeWalletトークンの名前",ui_qr_code_logo:"QRコードロゴ",ui_qr_code_logo_hint:"QRコードのロゴ画像のURL",ui_custom_badge:"カスタムバッジ",ui_custom_badge_label:"カスタムバッジ「使用に注意 - LNbitsウォレットはまだベータ版です」",ui_custom_badge_color_label:"カスタムバッジカラー",themes:"テーマ",themes_hint:"ユーザーが利用可能なテーマを選択してください",custom_logo:"カスタムロゴ",custom_logo_hint:"ロゴ画像へのURL",ad_space_title:"広告スペースのタイトル",ad_space_title_label:"サポートされています",ad_slots:"広告スロット",ad_slots_hint:"CSV形式の広告URLと画像ファイルパス、拡張機能は遵守することを選択できます",ad_slots_label:"URL;img_light_url;img_dark_url、URL...",ads_enabled:"広告が有効になっています",ads_disabled:"広告が無効になっています",user_management:"ユーザー管理",admin_users:"管理者ユーザー",admin_users_hint:"管理者権限を持つユーザー",admin_users_label:"ユーザーID",allowed_users:"許可されたユーザー",allowed_users_hint:"これらのユーザーのみがLNbitsを使用できます。",allowed_users_label:"ユーザーID",allow_creation_user:"新しいユーザーの作成を許可",allow_creation_user_desc:"インデックスページで新しいユーザーの作成を許可する",components:"コンポーネント",long_running_endpoints:"トップ5の長時間実行エンドポイント",http_request_methods:"HTTPリクエストメソッド",http_response_codes:"HTTPレスポンスコード",request_details:"リクエストの詳細",http_request_details:"HTTPリクエストの詳細"},window.localisation.cn={confirm:"确定",server:"服务器",theme:"主题",site_customisation:"网站定制",funding:"资金",users:"用户",audit:"审计",apps:"应用程序",channels:"频道",transactions:"交易记录",dashboard:"控制面板",node:"节点",export_users:"导出用户",no_users:"未找到用户",total_capacity:"总容量",avg_channel_size:"平均频道大小",biggest_channel_size:"最大通道大小",smallest_channel_size:"最小频道尺寸",number_of_channels:"频道数量",active_channels:"活跃频道",connect_peer:"连接对等",connect:"连接",open_channel:"打开频道",open:"打开",close_channel:"关闭频道",close:"关闭",restart:"重新启动服务器",save:"保存",save_tooltip:"保存更改",credit_debit:"信用卡 / 借记卡",credit_hint:"按 Enter 键充值账户",credit_label:"{denomination} 充值",credit_ok:"成功记入/扣除虚拟资金 ({amount} sats)。付款取决于资金来源的实际资金。",restart_tooltip:"重新启动服务器以使更改生效",add_funds_tooltip:"为钱包添加资金",reset_defaults:"重置为默认设置",reset_defaults_tooltip:"删除所有设置并重置为默认设置",download_backup:"下载数据库备份",name_your_wallet:"给你的 {name}钱包起个名字",paste_invoice_label:"粘贴发票,付款请求或lnurl*",lnbits_description:"LNbits 设置简单、轻量级,可以在任何闪电网络的资金来源上运行,甚至可以在LNbits自身上运行!您可以为自己运行LNbits,或者轻松为他人提供托管解决方案。每个钱包都有自己的 API 密钥,你可以创建的钱包数量没有限制。能够把资金分开管理使 LNbits 成为一款有用的资金管理和开发工具。扩展程序增加了 LNbits 的额外功能,所以你可以在闪电网络上尝试各种尖端技术。我们已经尽可能简化了开发扩展程序的过程,作为一个免费和开源的项目,我们鼓励人们开发并提交自己的扩展程序。",export_to_phone:"通过二维码导出到手机",export_to_phone_desc:"这个二维码包含您钱包的URL。您可以使用手机扫描的方式打开您的钱包。",wallet:"钱包:",wallets:"钱包",add_wallet:"添加新钱包",delete_wallet:"删除钱包",delete_wallet_desc:"整个钱包将被删除,资金将无法恢复",rename_wallet:"重命名钱包",update_name:"更新名称",fiat_tracking:"菲亚特追踪",currency:"货币",update_currency:"更新货币",press_to_claim:"点击领取比特币",donate:"捐献",view_github:"在GitHub上查看",voidwallet_active:"VoidWallet 已激活!付款功能已禁用。",use_with_caution:"请谨慎使用 - {name}钱包还处于测试版阶段",service_fee:"服务费:{amount}% 每笔交易",service_fee_max:"服务费:{amount}% 每笔交易(最高 {max} sats)",service_fee_tooltip:"LNbits服务器管理员每笔外发交易收取的服务费",toggle_darkmode:"切换暗黑模式",payment_reactions:"支付反应",view_swagger_docs:"查看 LNbits Swagger API 文档",api_docs:"API文档",api_keys_api_docs:"节点URL、API密钥和API文档",lnbits_version:"LNbits版本",runs_on:"可运行在",paste:"粘贴",paste_from_clipboard:"从剪贴板粘贴",paste_request:"粘贴请求",create_invoice:"创建发票",camera_tooltip:"用相机扫描发票/二维码",export_csv:"导出为CSV",chart_tooltip:"显示图表",pending:"待处理",copy_invoice:"复制发票",withdraw_from:"从",cancel:"取消",scan:"扫描",read:"读取",pay:"付款",memo:"备注",date:"日期",payment_processing:"正在处理支付...",not_enough_funds:"资金不足!",search_by_tag_memo_amount:"按标签、备注、金额搜索",invoice_waiting:"待支付的发票",payment_received:"收到付款",payment_sent:"付款已发送",receive:"收款",send:"付款",outgoing_payment_pending:"付款正在等待处理",drain_funds:"清空资金",drain_funds_desc:"这是一个 LNURL-取款的二维码,用于从该钱包中提取全部资金。请不要与他人分享。它与 balanceCheck 和 balanceNotify 兼容,因此在第一次取款后,您的钱包还可能会持续从这里提取资金",i_understand:"我明白",copy_wallet_url:"复制钱包URL",disclaimer_dialog_title:"重要!",disclaimer_dialog:"登录功能将在以后的更新中发布,请将此页面加为书签,以便将来访问您的钱包!此服务处于测试阶段,我们不对资金的丢失承担任何责任。",no_transactions:"尚未进行任何交易",manage:"管理",exchanges:"交易所",extensions:"扩展程序",no_extensions:"你没有安装任何扩展程序 :(",created:"已创建",search_extensions:"搜索扩展程序",extension_sources:"扩展源",ext_sources_hint:"可以下载扩展的存储库",ext_sources_label:"来源网址(仅使用官方LNbits扩展程序来源和您可以信任的来源)",warning:"警告",repository:"代码库",confirm_continue:"你确定要继续吗?",manage_extension_details:"安装/卸载扩展程序",install:"安装",uninstall:"卸载",drop_db:"删除数据",enable:"启用",pay_to_enable:"支付以启用",enable_extension_details:"为当前用户启用扩展程序",disable:"禁用",delete:"删除",installed:"已安装",activated:"已激活",deactivated:"已停用",release_notes:"发布说明",activate_extension_details:"对用户开放或禁用扩展程序",featured:"精选",all:"全部",only_admins_can_install:"(只有管理员账户可以安装扩展)",admin_only:"仅限管理员",new_version:"新版本",extension_depends_on:"依赖于:",extension_rating_soon:"即将推出评分",extension_installed_version:"已安装的版本",extension_uninstall_warning:"您即将对所有用户删除该扩展程序。",uninstall_confirm:"是的,卸载",extension_db_drop_info:"该扩展程序的所有数据将被永久删除。此操作无法撤销!",extension_db_drop_warning:"您即将删除该扩展的所有数据。请继续输入扩展程序名称以确认操作:",extension_required_lnbits_version:"此版本要求最低的 LNbits 版本为",min_version:"最小值(包含)",max_version:"最大值(不含)",payment_hash:"付款哈希",fee:"费",amount:"金额",amount_sats:"金额(聪)",tag:"标签",unit:"单位",description:"详情",expiry:"过期时间",webhook:"Webhook",payment_proof:"付款证明",update:"更新",update_available:"更新{version}可用!",latest_update:"您当前使用的是最新版本{version}。",notifications:"通知",no_notifications:"没有通知",notifications_disabled:"LNbits状态通知已禁用。",enable_notifications:"启用通知",enable_notifications_desc:"如果启用,它将获取最新的LNbits状态更新,如安全事件和更新。",enable_watchdog:"启用看门狗",enable_watchdog_desc:"如果启用,当您的余额低于LNbits余额时,系统将自动将您的资金来源更改为VoidWallet。更新后您将需要手动启用。",watchdog_interval:"看门狗间隔",watchdog_interval_desc:"后台任务应该多久检查一次看门狗增量中的 killswitch 信号 [node_balance - lnbits_balance](以分钟计)。",watchdog_delta:"看门狗德尔塔",watchdog_delta_desc:"在触发紧急停止前切换资金来源至VoidWallet的限制 [lnbits_balance - node_balance > delta]",status:"状态",notification_source:"通知来源",notification_source_label:"来源 URL(仅使用官方LNbits状态源和您信任的源)",more:"更多",less:"少",releases:"版本",watchdog:"监控程序",server_logs:"服务器日志",ip_blocker:"IP 阻止器",security:"安全",security_tools:"安全工具",block_access_hint:"屏蔽IP访问",allow_access_hint:"允许通过IP访问(将覆盖被屏蔽的IP)",enter_ip:"输入IP地址并按回车键",rate_limiter:"速率限制器",wallet_limiter:"钱包限制器",wallet_limit_max_withdraw_per_day:"每日钱包最大提现额度(单位:sats)(设为0则禁用)",wallet_max_ballance:"钱包最大余额(以sats计)(设为0则禁用)",wallet_limit_secs_between_trans:"每个钱包交易间最少秒数(设为0则禁用)",number_of_requests:"请求次数",time_unit:"时间单位",minute:"分钟",second:"秒",hour:"小时",disable_server_log:"禁用服务器日志",enable_server_log:"启用服务器日志",coming_soon:"功能即将推出",session_has_expired:"您的会话已过期。请重新登录。",instant_access_question:"想要即时访问吗?",login_with_user_id:"使用用户ID登录",or:"或",create_new_wallet:"创建新钱包",login_to_account:"登录您的账户",create_account:"创建账户",account_settings:"账户设置",signin_with_nostr:"继续使用 Nostr",signin_with_google:"使用谷歌账号登录",signin_with_github:"使用GitHub登录",signin_with_keycloak:"使用Keycloak登录",username_or_email:"用户名或电子邮箱",password:"密码",password_config:"密码配置",password_repeat:"密码重复",change_password:"修改密码",update_credentials:"更新凭证",update_pubkey:"更新公钥",set_password:"设置密码",invalid_password:"密码至少需要有8个字符",login:"登录",register:"注册",username:"用户名",pubkey:"公钥",user_id:"用户ID",email:"电子邮件",first_name:"名字",last_name:"姓氏",picture:"图片",verify_email:"验证电子邮件与",account:"账户",update_account:"更新帐户",invalid_username:"无效用户名",auth_provider:"认证提供者",my_account:"我的账户",back:"返回",logout:"注销",look_and_feel:"外观和感觉",toggle_gradient:"切换渐变",gradient_background:"渐变背景",language:"语言",color_scheme:"配色方案",admin_settings:"管理员设置",extension_cost:"此版本需要支付最低 {cost} sats。",extension_paid_sats:"您已经支付了{paid_sats} sats。",release_details_error:"无法获取发布详情。",pay_from_wallet:"从钱包支付",wallet_required:"钱包 *",show_qr:"显示QR码",retry_install:"重试安装",new_payment:"创建新支付",update_payment:"更新付款",already_paid_question:"你已经付款了吗?",sell:"出售",sell_require:"请求付款以启用扩展",sell_info:"{name} 扩展需要支付至少 {amount} sat 才能启用。",hide_empty_wallets:"隐藏空钱包",recheck:"重新检查",contributors:"贡献者们",license:"许可证",reset_key:"重置密钥",reset_password:"重置密码",border_choices:"边框选项",select_all:"全选",nfc_supported:"支持NFC",nfc_not_supported:"不支持NFC",expire_date:"有效期:",hash:"哈希:",welcome_lnbits:"欢迎来到LNbits",setup_su_account:"设置超级用户账户如下。",create_ticker_converter:"创建货币代码转换器",enable_audit:"启用审核",recommended:"推荐",audit_desc:"根据指定的过滤器记录HTTP请求",audit_record_req:"记录请求主体",audit_record_warning:"警告:",audit_record_req_warning_1:"机密数据(如密码)将被记录。",audit_record_req_warning_2:"请求主体可能会有较大尺寸。",audit_record_use:"请谨慎使用。",audit_ip:"记录 IP 地址",audit_ip_desc:"记录客户端的IP地址",audit_path_params:"记录路径参数",audit_query_params:"记录查询参数",audit_http_methods:"包括 HTTP 方法",audit_http_methods_hint:"要包含的 HTTP 方法列表。空列表表示全部。",audit_http_methods_label:"HTTP 方法",audit_resp_codes:"包括 HTTP 响应代码",audit_resp_codes_hint:"要包含的 HTTP 代码列表(正则表达式匹配)。空列表表示全部。例如:4.*,5.*",audit_resp_codes_label:"HTTP响应代码(正则表达式)",audit_paths:"包含路径",audit_paths_hint:"要包含的路径列表(正则表达式匹配)。空列表意味着全部。",audit_paths_label:"HTTP 路径(正则表达式)",audit_paths_exclude:"排除路径",audit_paths_exclude_hint:"要排除的路径列表(正则表达式匹配)。空列表表示没有。",audit_paths_exclude_label:"HTTP 路径(正则表达式)",exchange_providers:"兑换提供商",admin_extensions:"管理员扩展",admin_extensions_label:"管理员扩展件",admin_extensions_hint:"只有具有管理员权限的用户才能使用扩展程序",user_default_extensions:"用户默认扩展",user_default_extensions_label:"用户扩展",user_default_extensions_hint:"对用户默认启用的扩展。",miscellanous:"杂项",misc_disable_extensions:"禁用扩展程序",misc_disable_extensions_label:"禁用所有扩展程序",misc_hide_api:"隐藏 API",misc_hide_api_label:"隐藏钱包 api,扩展程序可以选择遵守",wallets_management:"钱包管理",funding_source_info:"资金来源信息",funding_source:"资金来源:{wallet_class}",node_balance:"节点余额:{balance} sats",lnbits_balance:"LNbits 余额:{balance} sats",funding_reserve_percent:"保留百分比: {percent} %",node_management:"节点管理",node_management_not_supported:"活动资金来源不支持节点管理",toggle_node_ui:"节点用户界面",toggle_public_node_ui:"公共节点用户界面",toggle_transactions_node_ui:"交易选项卡(在大型 CLN 节点上禁用)",invoice_expiry:"发票到期",invoice_expiry_label:"发票到期(秒)",fee_reserve:"费用储备",fee_reserve_msats:"以msats计的保留费",fee_reserve_percent:"以百分比计的保留费用",server_management:"服务器管理",base_url:"基本URL",base_url_label:"服务器的静态/基本网址",authentication:"认证",auth_token_expiry_label:"令牌过期分钟数",auth_token_expiry_hint:"令牌过期的剩余时间(分钟)",auth_allowed_methods_label:"允许的授权方法",auth_allowed_methods_hint:"选择授权方法",auth_nostr_label:"Nostr请求URL",auth_nostr_hint:"客户端将用于登录的绝对URL。",auth_google_ci_label:"谷歌客户ID",auth_google_ci_hint:"确保授权重定向URI包含https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google客户端密钥",auth_gh_client_id_label:"GitHub 客户端 ID",auth_gh_client_id_hint:"确保授权回调 URL 设置为 https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub客户端密码",auth_keycloak_label:"Keycloak 发现 URL",auth_keycloak_ci_label:"Keycloak 客户端 ID",auth_keycloak_ci_hint:"确保授权回调URL设置为https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak客户端密钥",currency_settings:"货币设置",allowed_currencies:"允许的货币",allowed_currencies_hint:"限制可用法定货币的数量",default_account_currency:"默认账户货币",default_account_currency_hint:"默认的会计货币",service_fee_label:"服务费 (%)",service_fee_hint:"每笔交易收取的费用 (%)",service_fee_max_label:"服务费最大值(聪)",service_fee_max_hint:"最大服务费以 (sats) 收取",fee_wallet:"费用钱包",fee_wallet_label:"费用钱包(钱包 ID)",fee_wallet_hint:"用于接收资金的钱包 ID",disable_fee:"禁用费用",disable_fee_internal:"禁用内部付款服务费",disable_fee_internal_desc:"禁用内部闪电支付的服务费",ui_management:"用户界面管理",ui_site_title:"网站标题",ui_site_tagline:"网站标语",ui_elements_enable:"在主页上启用元素",ui_elements_disable:"禁用主页上的元素",ui_toggle_elements_tip:"移除主页元素,例如“运行于”等。",ui_site_description:"网站描述",ui_site_description_hint:"使用纯文本、Markdown或原始HTML",ui_default_wallet_name:"默认钱包名称",lnbits_wallet:"LNbits 钱包",denomination:"面额",denomination_hint:"FakeWallet 代币的名称",ui_qr_code_logo:"二维码标志",ui_qr_code_logo_hint:"二维码中标志图像的 URL",ui_custom_badge:"自定义徽章",ui_custom_badge_label:"自定义徽章“慎用 - LNbits 钱包仍在测试阶段”",ui_custom_badge_color_label:"自定义徽章颜色",themes:"主题",themes_hint:"选择可供用户使用的主题",custom_logo:"自定义徽标",custom_logo_hint:"徽标图像的URL",ad_space_title:"广告位标题",ad_space_title_label:"由...支持",ad_slots:"广告位",ad_slots_hint:"广告网址和图像文件路径以CSV格式存储,扩展可以选择遵循。",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"启用广告",ads_disabled:"广告已禁用",user_management:"用户管理",admin_users:"管理员用户",admin_users_hint:"具有管理员权限的用户",admin_users_label:"用户ID",allowed_users:"允许的用户",allowed_users_hint:"仅这些用户可以使用LNbits",allowed_users_label:"用户 ID",allow_creation_user:"允许创建新用户",allow_creation_user_desc:"允许在索引页面上创建新用户",components:"组件",long_running_endpoints:"前五个长时间运行的端点",http_request_methods:"HTTP请求方法",http_response_codes:"HTTP响应代码",request_details:"请求详情",http_request_details:"HTTP请求详细信息"},window.localisation.nl={confirm:"Ja",server:"Server",theme:"Thema",site_customisation:"Site-aanpassing",funding:"Financiering",users:"Gebruikers",audit:"Controle",apps:"Apps",channels:"Kanalen",transactions:"Transacties",dashboard:"Dashboard",node:"Knooppunt",export_users:"Gebruikers exporteren",no_users:"Geen gebruikers gevonden",total_capacity:"Totale capaciteit",avg_channel_size:"Gem. Kanaalgrootte",biggest_channel_size:"Grootste Kanaalgrootte",smallest_channel_size:"Kleinste Kanaalgrootte",number_of_channels:"Aantal kanalen",active_channels:"Actieve Kanalen",connect_peer:"Peer verbinden",connect:"Verbinden",open_channel:"Open Kanaal",open:"Open",close_channel:"Kanaal Sluiten",close:"Sluiten",restart:"Server opnieuw opstarten",save:"Opslaan",save_tooltip:"Sla uw wijzigingen op",credit_debit:"Credit / Debet",credit_hint:"Druk op Enter om de rekening te crediteren",credit_label:"{denomination} te crediteren",credit_ok:"Succesvol crediteren/debiteren van virtuele gelden ({amount} sats). Betalingen zijn afhankelijk van de werkelijke fondsen op de financieringsbron.",restart_tooltip:"Start de server opnieuw op zodat wijzigingen van kracht worden",add_funds_tooltip:"Voeg geld toe aan een portemonnee.",reset_defaults:"Standaardinstellingen herstellen",reset_defaults_tooltip:"Wis alle instellingen en herstel de standaardinstellingen.",download_backup:"Databaseback-up downloaden",name_your_wallet:"Geef je {name} portemonnee een naam",paste_invoice_label:"Plak een factuur, betalingsverzoek of lnurl-code*",lnbits_description:"Gemakkelijk in te stellen en lichtgewicht, LNbits kan op elke lightning-netwerkfinancieringsbron draaien en zelfs LNbits zelf! U kunt LNbits voor uzelf laten draaien of gemakkelijk een bewaardersoplossing voor anderen bieden. Elke portemonnee heeft zijn eigen API-sleutels en er is geen limiet aan het aantal portemonnees dat u kunt maken. Het kunnen partitioneren van fondsen maakt LNbits een nuttige tool voor geldbeheer en als ontwikkelingstool. Extensies voegen extra functionaliteit toe aan LNbits, zodat u kunt experimenteren met een reeks toonaangevende technologieën op het bliksemschichtnetwerk. We hebben het ontwikkelen van extensies zo eenvoudig mogelijk gemaakt en als een gratis en opensource-project moedigen we mensen aan om hun eigen ontwikkelingen in te dienen.",export_to_phone:"Exporteren naar telefoon met QR-code",export_to_phone_desc:"Deze QR-code bevat uw portemonnee-URL met volledige toegang. U kunt het vanaf uw telefoon scannen om uw portemonnee van daaruit te openen.",wallet:"Wallet:",wallets:"Portemonnees",add_wallet:"Een nieuwe portemonnee toevoegen",delete_wallet:"Portemonnee verwijderen",delete_wallet_desc:"Deze hele portemonnee wordt verwijderd, de fondsen worden NIET TERUGGEVONDEN.",rename_wallet:"Portemonnee hernoemen",update_name:"Naam bijwerken",fiat_tracking:"Volgfunctie voor fiat-valuata",currency:"Valuta",update_currency:"Valuta bijwerken",press_to_claim:"Druk om bitcoin te claimen",donate:"Doneren",view_github:"Bekijken op GitHub",voidwallet_active:"VoidWallet is actief! Betalingen uitgeschakeld",use_with_caution:"GEBRUIK MET VOORZICHTIGHEID - {name} portemonnee is nog in BETA",service_fee:"Servicekosten: {amount} % per transactie",service_fee_max:"Servicekosten: {amount} % per transactie (max {max} sats)",service_fee_tooltip:"Transactiekosten in rekening gebracht door de LNbits serverbeheerder per uitgaande transactie",toggle_darkmode:"Donkere modus aan/uit",payment_reactions:"Betalingsreacties",view_swagger_docs:"Bekijk LNbits Swagger API-documentatie",api_docs:"API-documentatie",api_keys_api_docs:"Node URL, API-sleutels en API-documentatie",lnbits_version:"LNbits-versie",runs_on:"Draait op",paste:"Plakken",paste_from_clipboard:"Plakken van klembord",paste_request:"Verzoek plakken",create_invoice:"Factuur aanmaken",camera_tooltip:"Gebruik de camera om een factuur/QR-code te scannen",export_csv:"Exporteer naar CSV",chart_tooltip:"Toon grafiek",pending:"In behandeling",copy_invoice:"Kopieer factuur",withdraw_from:"Opnemen van",cancel:"Annuleren",scan:"Scannen",read:"Lezen",pay:"Betalen",memo:"Memo",date:"Datum",payment_processing:"Verwerking betaling...",not_enough_funds:"Onvoldoende saldo!",search_by_tag_memo_amount:"Zoeken op tag, memo, bedrag",invoice_waiting:"Factuur wachtend op betaling",payment_received:"Betaling ontvangen",payment_sent:"Betaling verzonden",receive:"ontvangen",send:"versturen",outgoing_payment_pending:"Uitgaande betaling in behandeling",drain_funds:"Geld opnemen",drain_funds_desc:"Dit is een LNURL-withdraw QR-code om alles uit deze portemonnee te halen. Deel deze code niet met anderen. Het is compatibel met balanceCheck en balanceNotify zodat jouw portemonnee continu geld kan blijven opnemen vanaf hier na de eerste opname.",i_understand:"Ik begrijp het",copy_wallet_url:"Kopieer portemonnee-URL",disclaimer_dialog_title:"Belangrijk!",disclaimer_dialog:"Inlogfunctionaliteit wordt uitgebracht in een toekomstige update. Zorg er nu voor dat je deze pagina als favoriet markeert om in de toekomst toegang te krijgen tot je portemonnee! Deze service is in BETA en we zijn niet verantwoordelijk voor mensen die de toegang tot hun fondsen verliezen.",no_transactions:"Er zijn nog geen transacties gedaan",manage:"Beheer",exchanges:"Beurzen",extensions:"Extensies",no_extensions:"Je hebt geen extensies geïnstalleerd :(",created:"Aangemaakt",search_extensions:"Zoekextensies",extension_sources:"Extensiebronnen",ext_sources_hint:"Repositories van waar de extensies kunnen worden gedownload",ext_sources_label:"Bron-URL (gebruik alleen de officiële LNbits-extensiebron en bronnen die je kunt vertrouwen)",warning:"Waarschuwing",repository:"Repository",confirm_continue:"Weet je zeker dat je wilt doorgaan?",manage_extension_details:"Installeren/verwijderen van extensie",install:"Installeren",uninstall:"Deïnstalleren",drop_db:"Gegevens verwijderen",enable:"Inschakelen",pay_to_enable:"Betalen om te activeren",enable_extension_details:"Schakel extensie in voor huidige gebruiker",disable:"Uitschakelen",delete:"Verwijderen",installed:"Geïnstalleerd",activated:"Geactiveerd",deactivated:"Gedeactiveerd",release_notes:"Release-opmerkingen",activate_extension_details:"Maak extensie beschikbaar/niet beschikbaar voor gebruikers",featured:"Uitgelicht",all:"Alles",only_admins_can_install:"Alleen beheerdersaccounts kunnen extensies installeren",admin_only:"Alleen beheerder",new_version:"Nieuwe Versie",extension_depends_on:"Afhankelijk van:",extension_rating_soon:"Beoordelingen binnenkort beschikbaar",extension_installed_version:"Geïnstalleerde versie",extension_uninstall_warning:"U staat op het punt de extensie voor alle gebruikers te verwijderen.",uninstall_confirm:"Ja, de-installeren",extension_db_drop_info:"Alle gegevens voor de extensie zullen permanent worden verwijderd. Er is geen manier om deze bewerking ongedaan te maken!",extension_db_drop_warning:"U staat op het punt alle gegevens voor de extensie te verwijderen. Typ de naam van de extensie om door te gaan:",extension_required_lnbits_version:"Deze release vereist ten minste LNbits-versie",min_version:"Minimum (inbegrepen)",max_version:"Maximum (uitgesloten)",payment_hash:"Betalings-hash",fee:"Kosten",amount:"Bedrag",amount_sats:"Bedrag (sats)",tag:"Label",unit:"Eenheid",description:"Beschrijving",expiry:"Vervaldatum",webhook:"Webhook",payment_proof:"Betalingsbewijs",update:"Bijwerken",update_available:"Update {version} beschikbaar!",latest_update:"U bent op de nieuwste versie {version}.",notifications:"Meldingen",no_notifications:"Geen meldingen",notifications_disabled:"LNbits-statusmeldingen zijn uitgeschakeld.",enable_notifications:"Schakel meldingen in",enable_notifications_desc:"Indien ingeschakeld zal het de laatste LNbits Status updates ophalen, zoals veiligheidsincidenten en updates.",enable_watchdog:"Inschakelen Watchdog",enable_watchdog_desc:"Indien ingeschakeld, wordt uw betaalbron automatisch gewijzigd naar VoidWallet als uw saldo lager is dan het saldo van LNbits. U zult dit na een update handmatig moeten inschakelen.",watchdog_interval:"Watchdog-interval",watchdog_interval_desc:"Hoe vaak de achtergrondtaak moet controleren op een killswitch signaal in het watchdog verschil [node_balance - lnbits_balance] (in minuten).",watchdog_delta:"Waakhond Delta",watchdog_delta_desc:"Limiet voordat de killswitch de financieringsbron verandert naar VoidWallet [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Notificatiebron",notification_source_label:"Bron-URL (gebruik alleen de officiële LNbits-statusbron en bronnen die u vertrouwt)",more:"meer",less:"minder",releases:"Uitgaven",watchdog:"Waakhond",server_logs:"Serverlogboeken",ip_blocker:"IP-blokkering",security:"Beveiliging",security_tools:"Beveiligingstools",block_access_hint:"Toegang blokkeren per IP",allow_access_hint:"Toegang verlenen op basis van IP (zal geblokkeerde IP's overschrijven)",enter_ip:"Voer IP in en druk op enter",rate_limiter:"Snelheidsbegrenzer",wallet_limiter:"Portemonnee Limietsteller",wallet_limit_max_withdraw_per_day:"Maximale dagelijkse opname van wallet in sats (0 om uit te schakelen)",wallet_max_ballance:"Maximale portefeuillesaldo in sats (0 om uit te schakelen)",wallet_limit_secs_between_trans:"Min seconden tussen transacties per portemonnee (0 om uit te schakelen)",number_of_requests:"Aantal verzoeken",time_unit:"Tijdeenheid",minute:"minuut",second:"seconde",hour:"uur",disable_server_log:"Serverlog uitschakelen",enable_server_log:"Activeer Serverlog",coming_soon:"Functie binnenkort beschikbaar",session_has_expired:"Uw sessie is verlopen. Log alstublieft opnieuw in.",instant_access_question:"Wil je directe toegang?",login_with_user_id:"Inloggen met gebruikers-ID",or:"of",create_new_wallet:"Nieuwe portemonnee aanmaken",login_to_account:"Log in op je account",create_account:"Account aanmaken",account_settings:"Accountinstellingen",signin_with_nostr:"Doorgaan met Nostr",signin_with_google:"Inloggen met Google",signin_with_github:"Inloggen met GitHub",signin_with_keycloak:"Inloggen met Keycloak",username_or_email:"Gebruikersnaam of e-mail",password:"Wachtwoord",password_config:"Wachtwoordconfiguratie",password_repeat:"Wachtwoord herhalen",change_password:"Wachtwoord wijzigen",update_credentials:"Referenties bijwerken",update_pubkey:"Openbare Sleutel Bijwerken",set_password:"Wachtwoord instellen",invalid_password:"Wachtwoord moet ten minste 8 tekens bevatten",login:"Inloggen",register:"Registreren",username:"Gebruikersnaam",pubkey:"Publieke Sleutel",user_id:"Gebruikers-ID",email:"E-mail",first_name:"Voornaam",last_name:"Achternaam",picture:"Foto",verify_email:"E-mail verifiëren met",account:"Account",update_account:"Account bijwerken",invalid_username:"Ongeldige gebruikersnaam",auth_provider:"Auth Provider",my_account:"Mijn Account",back:"Terug",logout:"Afmelden",look_and_feel:"Uiterlijk en gedrag",toggle_gradient:"Gradiënt Schakelen",gradient_background:"Verloopachtergrond",language:"Taal",color_scheme:"Kleurenschema",admin_settings:"Beheerdersinstellingen",extension_cost:"Deze release vereist een betaling van minimaal {cost} sats.",extension_paid_sats:"U heeft al {paid_sats} sats betaald.",release_details_error:"Kan de gegevens van de release niet ophalen.",pay_from_wallet:"Betalen vanuit Portemonnee",wallet_required:"Wallet *",show_qr:"Toon QR",retry_install:"Opnieuw installeren",new_payment:"Nieuwe betaling maken",update_payment:"Betaling bijwerken",already_paid_question:"Heb je al betaald?",sell:"Verkopen",sell_require:"Vraag betaling om de extensie te activeren.",sell_info:"De {name} extensie vereist een betaling van minimaal {amount} sats om in te schakelen.",hide_empty_wallets:"Verberg lege portemonnees",recheck:"Opnieuw controleren",contributors:"Bijdragers",license:"Licentie",reset_key:"Hersteltoets",reset_password:"Wachtwoord Resetten",border_choices:"Randkeuzes",select_all:"Alles selecteren",nfc_supported:"NFC Ondersteund",nfc_not_supported:"NFC niet ondersteund",expire_date:"Vervaldatum:",hash:"Hash:",welcome_lnbits:"Welkom bij LNbits",setup_su_account:"Stel het Superuser-account hieronder in.",create_ticker_converter:"Maak Valuta Ticker Converter",enable_audit:"Audit inschakelen",recommended:"Aanbevolen",audit_desc:"HTTP-verzoeken vastleggen volgens de opgegeven filters",audit_record_req:"Verzoeklichaam registreren",audit_record_warning:"Waarschuwing:",audit_record_req_warning_1:"vertrouwelijke gegevens (zoals wachtwoorden) worden gelogd.",audit_record_req_warning_2:"de aanvraagbody kan een grote omvang hebben.",audit_record_use:"Gebruik het met voorzichtigheid.",audit_ip:"IP-adres vastleggen",audit_ip_desc:"Leg het IP-adres van de klant vast",audit_path_params:"Parameters van het pad opnemen",audit_query_params:"Queryparameters vastleggen",audit_http_methods:"Inclusief HTTP-methoden",audit_http_methods_hint:"Lijst van HTTP-methoden die moeten worden opgenomen. Lege lijsten betekenen alles.",audit_http_methods_label:"HTTP-methoden",audit_resp_codes:"Inclusief HTTP-responscodes",audit_resp_codes_hint:"Lijst van op te nemen HTTP-codes (regex-overeenkomst). Lege lijst betekent alles. Bijvoorbeeld: 4.*, 5.*",audit_resp_codes_label:"HTTP-responscode (regex)",audit_paths:"Inclusiepad",audit_paths_hint:"Lijst met paden die moeten worden opgenomen (regex match). Lege lijst betekent alles.",audit_paths_label:"HTTP-pad (regex)",audit_paths_exclude:"Paden uitsluiten",audit_paths_exclude_hint:"Lijst met paden die moeten worden uitgesloten (regex-overeenkomst). Een lege lijst betekent geen.",audit_paths_exclude_label:"HTTP-pad (regex)",exchange_providers:"Wisselaanbieders",admin_extensions:"Beheeruitbreidingen",admin_extensions_label:"Beheerdersuitbreidingen",admin_extensions_hint:"Alleen gebruikers met beheerdersrechten kunnen extensies gebruiken.",user_default_extensions:"Standaardextensies voor gebruikers",user_default_extensions_label:"Gebruikersuitbreidingen",user_default_extensions_hint:"Extensies die standaard voor de gebruikers worden ingeschakeld.",miscellanous:"Diversen",misc_disable_extensions:"Extensies uitschakelen",misc_disable_extensions_label:"Alle extensies uitschakelen",misc_hide_api:"API verbergen",misc_hide_api_label:"Verbergt de wallet-API, extensies kunnen ervoor kiezen dit te respecteren",wallets_management:"Beheer van portemonnees",funding_source_info:"Financieringsbroninfo",funding_source:"Financieringsbron: {wallet_class}",node_balance:"Node Balans: {balance} sats",lnbits_balance:"LNbits Saldo: {balance} sats",funding_reserve_percent:"Reservepercentage: {percent} %",node_management:"Nodebeheer",node_management_not_supported:"Nodebeheer wordt niet ondersteund door de actieve financieringsbron",toggle_node_ui:"Node UI",toggle_public_node_ui:"Openbare Node UI",toggle_transactions_node_ui:"Transacties Tabblad (Uitschakelen op grote CLN-nodes)",invoice_expiry:"Factuurvervaldatum",invoice_expiry_label:"Factuurverloop (seconden)",fee_reserve:"Toegangsvergoeding Reserve",fee_reserve_msats:"Reserveringskosten in msats",fee_reserve_percent:"Reserveringskosten in procent",server_management:"Serverbeheer",base_url:"Basis-URL",base_url_label:"Statisch/Basis-URL voor de server",authentication:"Authenticatie",auth_token_expiry_label:"Token vervalt over minuten",auth_token_expiry_hint:"Tijd in minuten totdat de token verloopt",auth_allowed_methods_label:"Toegestane autorisatiemethoden",auth_allowed_methods_hint:"Selecteer autorisatiemethoden",auth_nostr_label:"Nostr Aanvraag-URL",auth_nostr_hint:"Absolute URL die de klanten zullen gebruiken om in te loggen.",auth_google_ci_label:"Google Client-ID",auth_google_ci_hint:"Zorg ervoor dat de geautoriseerde omleidings-URL's https://{domain}/api/v1/auth/google/token bevatten.",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"GitHub client-ID",auth_gh_client_id_hint:"Zorg ervoor dat de autorisatie-callback-URL is ingesteld op https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Clientgeheim",auth_keycloak_label:"Keycloak Ontdekking URL",auth_keycloak_ci_label:"Keycloak-client-ID",auth_keycloak_ci_hint:"Zorg ervoor dat de autorisatie callback-URL is ingesteld op https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Clientgeheim",currency_settings:"Valuta-instellingen",allowed_currencies:"Toegestane valuta's",allowed_currencies_hint:"Beperk het aantal beschikbare fiatvaluta's",default_account_currency:"Standaardrekeningvaluta",default_account_currency_hint:"Standaardvaluta voor boekhouding",service_fee_label:"Servicekosten (%)",service_fee_hint:"Toeslag per transactie (%)",service_fee_max_label:"Servicekosten max (sats)",service_fee_max_hint:"Maximale servicekosten om in rekening te brengen in (sats)",fee_wallet:"Kosten Portemonnee",fee_wallet_label:"Kosten portemonnee (wallet ID)",fee_wallet_hint:"Wallet-ID om geld naar over te maken",disable_fee:"Kosten uitschakelen",disable_fee_internal:"Servicekosten uitschakelen voor interne betalingen",disable_fee_internal_desc:"Dienstenkosten uitschakelen voor interne Lightning-betalingen",ui_management:"UI-beheer",ui_site_title:"Site titel",ui_site_tagline:"Site-slogan",ui_elements_enable:"Elementen op de homepage inschakelen",ui_elements_disable:"Elementen op de homepage uitschakelen",ui_toggle_elements_tip:"Verwijder startpagina-elementen zoals 'werkt op' enz.",ui_site_description:"Sitebeschrijving",ui_site_description_hint:"Gebruik platte tekst, Markdown, of ruwe HTML",ui_default_wallet_name:"Standaard Wallet Naam",lnbits_wallet:"LNbits-portemonnee",denomination:"Denominatie",denomination_hint:"De naam voor de FakeWallet token",ui_qr_code_logo:"QR-code-logo",ui_qr_code_logo_hint:"URL naar logo-afbeelding in QR-code",ui_custom_badge:"Aangepaste badge",ui_custom_badge_label:"Aangepaste Badge 'GEBRUIK MET VOORZICHTIGHEID - LNbits-portemonnee is nog in BÈTA'",ui_custom_badge_color_label:"Aangepaste Badge Kleur",themes:"Thema's",themes_hint:"Kies thema's beschikbaar voor gebruikers",custom_logo:"Aangepast logo",custom_logo_hint:"URL naar logo-afbeelding",ad_space_title:"Advertentieruimte Titel",ad_space_title_label:"Ondersteund door",ad_slots:"Advertentieblokken",ad_slots_hint:"Ad URL en afbeeldingspad in CSV-formaat, extensies kunnen ervoor kiezen te honoreren",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Advertenties ingeschakeld",ads_disabled:"Advertenties uitgeschakeld",user_management:"Gebruikersbeheer",admin_users:"Beheerdersgebruikers",admin_users_hint:"Gebruikers met beheerdersrechten",admin_users_label:"Gebruikers-ID",allowed_users:"Toegestane gebruikers",allowed_users_hint:"Alleen deze gebruikers kunnen LNbits gebruiken",allowed_users_label:"Gebruikers-ID",allow_creation_user:"Sta het aanmaken van nieuwe gebruikers toe",allow_creation_user_desc:"Sta de aanmaak van nieuwe gebruikers op de indexpagina toe",components:"Componenten",long_running_endpoints:"Top 5 langlopende eindpunten",http_request_methods:"HTTP-aanvraagmethoden",http_response_codes:"HTTP-responscodes",request_details:"Aanvraagdetails",http_request_details:"HTTP-verzoekdetails"},window.localisation.pi={confirm:"Aye",server:"Cap`n",theme:"Theme",site_customisation:"Site Customisation",funding:"Funding",users:"Buccaneers",audit:"Arrr-dit",apps:"Arrrrplications",channels:"Channels",transactions:"Pirate Transactions and loot",dashboard:"Arrr-board",node:"Node",export_users:"Export Mateys",no_users:"No swabbies found",total_capacity:"Total Capacity",avg_channel_size:"Avg. Channel Size",biggest_channel_size:"Largest Bilge Size",smallest_channel_size:"Smallest Channel Size",number_of_channels:"Nummer o' Channels",active_channels:"Active Channels",connect_peer:"Connect Peer",connect:"Connect",open_channel:"Open Channel",open:"Open yer hatches",close_channel:"Shut Yer Gob Channel",close:"Batten down the hatches, we be closin",restart:"Arr, restart Cap`n",save:"Bury Treasure",save_tooltip:"Bury yer changes, matey",credit_debit:"Credit / Debit",credit_hint:"Press Enter to credit account and make it richer",credit_label:"{denomination} to credit, arr!",credit_ok:"Success creditin'/debitin' virtual funds ({amount} sats). Payments depend on actual funds on fundin' source.",restart_tooltip:"Restart the Cap`n for changes to take effect, arr!",add_funds_tooltip:"Add doubloons to a chest and make it heavier",reset_defaults:"Reset to Davy Jones Locker",reset_defaults_tooltip:"Scuttle all settings and reset to Davy Jones Locker. Aye, start anew!",download_backup:"Download database booty",name_your_wallet:"Name yer {name} treasure chest",paste_invoice_label:"Paste a booty, payment request or lnurl code, matey!",lnbits_description:"Arr, easy to set up and lightweight, LNbits can run on any Lightning Network funding source and even LNbits itself! Ye can run LNbits for yourself, or easily offer a custodian solution for others. Each chest has its own API keys and there be no limit to the number of chests ye can make. Being able to partition booty makes LNbits a useful tool for money management and as a development tool. Arr, extensions add extra functionality to LNbits so ye can experiment with a range of cutting-edge technologies on the lightning network. We have made developing extensions as easy as possible, and as a free and open-source project, we encourage scallywags to develop and submit their own.",export_to_phone:"Export to Phone with QR Code, me hearties",export_to_phone_desc:"This QR code contains yer chest URL with full access. Ye can scan it from yer phone to open yer chest from there, arr!",wallet:"Booty Chest:",wallets:"Treasure Chests",add_wallet:"Add a new chest and fill it with doubloons!",delete_wallet:"Scuttle the Chest",delete_wallet_desc:"This whole chest will be scuttled, the booty will be UNRECOVERABLE. Aye, be warned!",rename_wallet:"Rename the Chest, me hearty",update_name:"Update name like a captain",fiat_tracking:"Trackin' o' the treasure",currency:"Curr'nsey",update_currency:"Update doubloons",press_to_claim:"Press to claim gold doubloons, matey!",donate:"Donate like a true pirate!",view_github:"View on GitHub and find treasures",voidwallet_active:"VoidWallet be active! Payments disabled",use_with_caution:"USE WITH CAUTION - {name} chest be still in BETA. Aye, be careful!",service_fee:"Service fee: {amount} % per transaction",service_fee_max:"Service fee: {amount} % per transaction (max {max} sats)",service_fee_tooltip:"Service fee charged by the LNbits server admin per goin' transaction",toggle_darkmode:"Toggle Dark Mode, arr!",payment_reactions:"Payment Reactions",view_swagger_docs:"View LNbits Swagger API docs and learn the secrets",api_docs:"API docs for the scallywags",api_keys_api_docs:"Node URL, API keys and API docs",lnbits_version:"LNbits version, arr!",runs_on:"Runs on, matey",paste:"Stow",paste_from_clipboard:"Paste from clipboard",paste_request:"Paste Request and find treasures",create_invoice:"Create Booty Request and get rich, me hearties!",camera_tooltip:"Use spyglass to scan a booty/QR, arr!",export_csv:"Export to CSV and keep track of the booty",chart_tooltip:"Show ye chart, me hearty",pending:"Pendin like a ship at anchor",copy_invoice:"Copy booty request, arrr",withdraw_from:"Withdraw from",cancel:"Abandon ship! We be retreatin",scan:"Avast! Scan me beauty, arrr",read:"Read it, if ye dare",pay:"Pay up or walk the plank, ye scallywag",memo:"Message in a bottle, argh",date:"Date of the map, me matey",payment_processing:"Processing yer payment... don´t make me say it again",not_enough_funds:"Arrr, ye don´t have enough doubloons! Walk the plank!",search_by_tag_memo_amount:"Search by tag, message, or booty amount, savvy",invoice_waiting:"Invoice waiting to be plundered, arrr",payment_received:"Payment Received like a treasure, argh",payment_sent:"Payment Sent, hoist the colors! We´ve got some doubloons!",receive:"booty",send:"hoist",outgoing_payment_pending:"Outgoing payment pending in the port, ye scurvy dog",drain_funds:"Plunder all the doubloons, ye buccaneer",drain_funds_desc:"This be an LNURL-withdraw QR code for slurpin everything from this wallet. Don`t share with anyone. It be compatible with balanceCheck and balanceNotify so yer wallet may keep pullin` the funds continuously from here after the first withdraw.",i_understand:"I understand, yo ho ho and a bottle of rum!",copy_wallet_url:"Copy wallet URL like a map, savvy",disclaimer_dialog_title:"Avast!",disclaimer_dialog:"Login functionality to be released in a future update, for now, make sure ye bookmark this page for future access to your booty! This service be in BETA, and we hold no responsibility for people losing access to doubloons.",no_transactions:"No transactions made yet, me hearties. Belay that!",manage:"Manage, me hearty",exchanges:"Exchanges",extensions:"Yer Extensions, ye scurvy dog",no_extensions:"Ye don't have any extensions installed, ye scallywag :(. Where be yer loot?",created:"Created like a legend, savvy",search_extensions:"Search fer extensions",extension_sources:"Extension Sources",ext_sources_hint:"Repositories from wharrr the extensions can be downloaded",ext_sources_label:"Source URL (only use th' official LNbits extension source, and sources ye can trust)",warning:"Avast",repository:"Repository",confirm_continue:"Be ye sure ye want t' proceed?",manage_extension_details:"Install/uninstall extension",install:"Set sail",uninstall:"Avaast",drop_db:"Scuttle Data",enable:"Enable",pay_to_enable:"Pay To Hoist",enable_extension_details:"Enable extension fer th' current user",disable:"Disablin'",delete:"Blow down",installed:"Installed",activated:"Activated",deactivated:"Deactivated",release_notes:"Release Notes",activate_extension_details:"Make extension available/unavailable fer users",featured:"Featured",all:"Arr",only_admins_can_install:"(Only admin accounts can install extensions)",admin_only:"Cap'n Only",new_version:"New Version",extension_depends_on:"Depends on:",extension_rating_soon:"Ratings a'comin' soon",extension_installed_version:"Installed version",extension_uninstall_warning:"Ye be about t' remove th' extension fer all hands.",uninstall_confirm:"Aye, Uninstall",extension_db_drop_info:"All data fer th' extension will be permanently deleted. There be no way to undo this operation!",extension_db_drop_warning:"Ye be about to scuttle all data fer th' extension. Please scribble th' extension name to continue:",extension_required_lnbits_version:"This release be needin' at least LNbits version",min_version:"Minimum (inclooded)",max_version:"Maximum (excluded)",payment_hash:"Payment Hash like a treasure map, arrr",fee:"Fee like a toll to cross a strait, matey",amount:"Amount of doubloons, arrr",amount_sats:"Amount (sats)",tag:"Tag",unit:"Unit of measurement like a fathom, ye buccaneer",description:"Description like a tale of adventure, arrr",expiry:"Expiry like the food on a ship, ye landlubber",webhook:"Webhook like a fishing line, arrr",payment_proof:"Payment Proof like a seal of authenticity, argh",update:"Updatin'",update_available:"Update {version} available, me matey!",latest_update:"Ye be on th' latest version {version}.",notifications:"Notificashuns",no_notifications:"No noticin's",notifications_disabled:"LNbits status notifications be disabled, arr!",enable_notifications:"Enable Notifications",enable_notifications_desc:"If ye be allowin' it, it'll be fetchin' the latest LNbits Status updates, like security incidents and updates.",enable_watchdog:"Enable Seadog",enable_watchdog_desc:"If enabled, it will swap yer treasure source t' VoidWallet on its own if yer balance be lower than th' LNbits balance. Ye'll need t' enable by hand after an update.",watchdog_interval:"Seadog Interval",watchdog_interval_desc:"How oft th' background task should be checkin' fer a killswitch signal in th' seadog delta [node_balance - lnbits_balance] (in minutes), arr.",watchdog_delta:"Seadog Delta",watchdog_delta_desc:"Limit afore killswitch changes fundin' source to VoidWallet [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Notification Source",notification_source_label:"Source URL (only use th' official LNbits status source, and sources ye can trust)",more:"Arr, 'tis more.",less:"Arr, 'tis more fewer.",releases:"Releases",watchdog:"Seadog",server_logs:"Server Logs",ip_blocker:"IP Blockar",security:"Securrrity",security_tools:"Securrrity tools",block_access_hint:"Block access by IP",allow_access_hint:"Grant permission by IP (will override barred IPs)",enter_ip:"Enter IP and hit enter",rate_limiter:"Rate Limiter",wallet_limiter:"Pouch Limitar",wallet_limit_max_withdraw_per_day:"Max daily wallet withdrawal in sats (0 for no limit, -1 to block withdrawal)",wallet_max_ballance:"Purse max heaviness in sats (0 fer scuttle)",wallet_limit_secs_between_trans:"Min secs 'tween transactions per wallet (0 to disable)",number_of_requests:"Number o' requests",time_unit:"time bein'",minute:"minnit",second:"second",hour:"hour",disable_server_log:"Disabl' {Server} Log",enable_server_log:"Enable Server Log",coming_soon:"Feature comin' soon",session_has_expired:"Yer session has expired. Please login again.",instant_access_question:"Be wantin' quick entry, aye?",login_with_user_id:"Login with user ID",or:"arr",create_new_wallet:"Create New Wallet",login_to_account:"Log in to yer account",create_account:"Create account",account_settings:"Account Settin's",signin_with_nostr:"Continue with Nostr",signin_with_google:"Sign in wit' Google",signin_with_github:"Sign in wit' GitHub",signin_with_keycloak:"Sign in wit' Keycloak",username_or_email:"Usarrrname or Email",password:"Passwarrd",password_config:"Passwarrd Config",password_repeat:"Passwarrd repeat",change_password:"Change Passwarrd",update_credentials:"Hoist New Credentials",update_pubkey:"Swab Public Key",set_password:"Set yer Secret Code",invalid_password:"Passwarrd must be havin' at leest 8 charrracters",login:"Log in",register:"Sign on",username:"Username",pubkey:"Public Key",user_id:"User ID",email:"Email",first_name:"Firrrst Name",last_name:"Surname",picture:"pictur'",verify_email:"Verify email with",account:"Arrrccount",update_account:"Updatin' Arrrccount",invalid_username:"Username be not valid, matey!",auth_provider:"Auth Provider becometh Auth Provider, ye see?",my_account:"Me Arrrccount",back:"Return",logout:"Log out yer session",look_and_feel:"Look and Feel",toggle_gradient:"Toggle Gradient",gradient_background:"Gradient Background",language:"Langwidge",color_scheme:"Colour Scheme",admin_settings:"Admin Settin's",extension_cost:"This release be needin' a payment o' minimum {cost} sats, arr.",extension_paid_sats:"Ye have already paid {paid_sats} sats.",release_details_error:"Cannot get th' release details.",pay_from_wallet:"Pay from ye Wallet",wallet_required:"Doubloon Locker *",show_qr:"Show QR",retry_install:"Try 'nstallin' Again",new_payment:"Make New Payment",update_payment:"Be Updatin' Payment",already_paid_question:"Have ye already paid?",sell:"Sell",sell_require:"Ask fer payment to enable extension",sell_info:"The {name} extension requires a payment of minimum {amount} sats to enable.",hide_empty_wallets:"Stow empty wallets",recheck:"Recheck",contributors:"Contributors",license:"License",reset_key:"Reset Key",reset_password:"Reset Password",border_choices:"Border Choices",select_all:"Select All",nfc_supported:"NFC Supported",nfc_not_supported:"NFC not Supported",expire_date:"Expire Date:",hash:"Mizzenmast:",welcome_lnbits:"Welcome t' LNbits",setup_su_account:"Set up the Superuser account below.",create_ticker_converter:"Create Currency Ticker Converter",enable_audit:"Set Sail Fer Auditin'",recommended:"Recommended",audit_desc:"Record HTTP requests accordin' with the specified filters",audit_record_req:"Record Request Body",audit_record_warning:"Arrrning:",audit_record_req_warning_1:"confidential data (like passwords) will be logged.",audit_record_req_warning_2:"th' request body can have large size.",audit_record_use:"Use it with caution.",audit_ip:"Log IP Address",audit_ip_desc:"Record the IP address o' the client",audit_path_params:"Record Path Parameters",audit_query_params:"Rransack th' Query Parameters",audit_http_methods:"Include HTTP Methods",audit_http_methods_hint:"List o' HTTP methods to be included. Empty lists means all.",audit_http_methods_label:"HTTP Methods",audit_resp_codes:"Include HTTP Response Codes",audit_resp_codes_hint:"List o' HTTP codes t' be included (regex match). Empty lists means all. Eg: 4.*, 5.*",audit_resp_codes_label:"HTTP Response code (regex)",audit_paths:"Include Paths",audit_paths_hint:"List o' paths t' be included (regex match). Empty list means all.",audit_paths_label:"HTTP Path (regex)",audit_paths_exclude:"Exclude Paths",audit_paths_exclude_hint:"List o' paths t' be excluded (regex match). Empty list means none.",audit_paths_exclude_label:"HTTP Path (regex)",exchange_providers:"Trade Buccaneers",admin_extensions:"Admin Extensions",admin_extensions_label:"Admin extensions",admin_extensions_hint:"Extensions only user with admin privileges can use",user_default_extensions:"Crew Mate Default Extensions",user_default_extensions_label:"User extensions",user_default_extensions_hint:"Extensions that will be enabled by default fer the users.",miscellanous:"Miscelaneous",misc_disable_extensions:"Belay Extensions",misc_disable_extensions_label:"Disable all extensions",misc_hide_api:"Stow API",misc_hide_api_label:"Burieds wallet api, extensions be able t' choose t' honor",wallets_management:"Wallets Management",funding_source_info:"Loot Source Info",funding_source:"Loot Source: {wallet_class}",node_balance:"Node Balance: {balance} doubloons",lnbits_balance:"LNbits Balance: {balance} pieces o' eight",funding_reserve_percent:"Reserve Percent: {percent} %",node_management:"Node Management",node_management_not_supported:"Node Management not be supported by active funding source",toggle_node_ui:"Node Main Deck",toggle_public_node_ui:"Public Node UI",toggle_transactions_node_ui:"Transactions Tab (Disable on large CLN nodes)",invoice_expiry:"Invoice Expiry",invoice_expiry_label:"Invoice expiry (seconds)",fee_reserve:"Plunder Reserve",fee_reserve_msats:"Reserve fee in msats",fee_reserve_percent:"Reserve fee in percent",server_management:"Server Management",base_url:"Base URL",base_url_label:"Static/Base url fer the server",authentication:"Authent Mateys!",auth_token_expiry_label:"Token expire minutes",auth_token_expiry_hint:"Time in minutes until th' token expires",auth_allowed_methods_label:"Allowed authorizashun methods",auth_allowed_methods_hint:"Select arrrrthorization methods",auth_nostr_label:"Nostr Request URL",auth_nostr_hint:"Absolute URL that th' clients will use t' login.",auth_google_ci_label:"Google Client ID",auth_google_ci_hint:"Make sure that the authorized redirect URIs contain https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"GitHub Client ID",auth_gh_client_id_hint:"Make sure that the authorization callback URL is set to https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Client Secret",auth_keycloak_label:"Keycloak Discovery URL",auth_keycloak_ci_label:"Keycloak Client ID",auth_keycloak_ci_hint:"Make sure thant th' authorization callback URL be set t' https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Client Secret",currency_settings:"Doubloon Settin's",allowed_currencies:"Allo'ed Doubloons",allowed_currencies_hint:"Limit the number of available fiat doubloons",default_account_currency:"Default Account Currency",default_account_currency_hint:"Default dubloon fer accountin'",service_fee_label:"Service fee (%).",service_fee_hint:"Fee charged per tx (%)",service_fee_max_label:"Service fee max (sats)",service_fee_max_hint:"Max service fee to charge in (sats)",fee_wallet:"Fee Wallet",fee_wallet_label:"Tariff wallet (wallet ID)",fee_wallet_hint:"Wallett ID t' send funds t'",disable_fee:"Disable Fee",disable_fee_internal:"Disable Service Fee for Internal Payments",disable_fee_internal_desc:"Disable Service Fee fer Internal Lightning Payments",ui_management:"UI Management",ui_site_title:"Site Title",ui_site_tagline:"Site Tagline",ui_elements_enable:"Set course for the homepage elements!",ui_elements_disable:"Disarm elements on homepage",ui_toggle_elements_tip:"Be rid of homepage elements like 'runs on' etc",ui_site_description:"Site Description",ui_site_description_hint:"Use plain text, Markdown, or raw HTML",ui_default_wallet_name:"Default Wallet Name",lnbits_wallet:"LNbits wallet",denomination:"Denomination",denomination_hint:"The name fer the FakeWallet doubloon",ui_qr_code_logo:"QR Code Logo",ui_qr_code_logo_hint:"URL t' logo image in QR code",ui_custom_badge:"Custom Badge",ui_custom_badge_label:"Custom Badge 'USE WITH CAUTION - LNbits wallet be still in BETA'",ui_custom_badge_color_label:"Custom Bauble Color",themes:"Themes",themes_hint:"Choose themes available for users",custom_logo:"Custom Logo",custom_logo_hint:"URL to logo image",ad_space_title:"Ad Space Title",ad_space_title_label:"Supported by",ad_slots:"Adversment Sprogs",ad_slots_hint:"Ad url an' image filepaths in CSV format, extensions can choose t' honor",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Ads Enabled",ads_disabled:"Ads Keelhauled",user_management:"User Matey-handlin'",admin_users:"Admin Scurvy Dogs",admin_users_hint:"Scallywags with cap'n privileges",admin_users_label:"User ID",allowed_users:"Allowed Users",allowed_users_hint:"Only these scallywags can use LNbits",allowed_users_label:"User ID",allow_creation_user:"Permit creation of new scallywags",allow_creation_user_desc:"Allow creation o' new users on th' index page",components:"Components",long_running_endpoints:"Top 5 Long Runnin' Endpoints",http_request_methods:"HTTP Request Methods",http_response_codes:"HTTP Response Codes",request_details:"Request Details",http_request_details:"HTTP Request Details"},window.localisation.pl={confirm:"Tak",server:"Serwer",theme:"Motyw",site_customisation:"Dostosowanie witryny",funding:"Finansowanie",users:"Użytkownicy",audit:"Audyt",apps:"Aplikacje",channels:"Kanały",transactions:"Transakcje",dashboard:"Panel kontrolny",node:"Węzeł",export_users:"Eksportuj użytkowników",no_users:"Nie znaleziono użytkowników",total_capacity:"Całkowita Pojemność",avg_channel_size:"Średni rozmiar kanału",biggest_channel_size:"Największy Rozmiar Kanału",smallest_channel_size:"Najmniejszy Rozmiar Kanału",number_of_channels:"Ilość kanałów",active_channels:"Aktywne kanały",connect_peer:"Połącz z węzłem równorzędnym",connect:"Połącz",open_channel:"Otwarty Kanał",open:"Otwórz",close_channel:"Zamknij kanał",close:"Zamknij",restart:"Restart serwera",save:"Zapisz",save_tooltip:"Zapisz zmiany",credit_debit:"Kredyt / Debet",credit_hint:"Naciśnij Enter aby doładować konto",credit_label:"{denomination} doładowanie",credit_ok:"Pomyślne zaksięgowanie/obciążenie wirtualnych środków ({amount} sats). Płatności zależą od rzeczywistych środków na źródle finansowania.",restart_tooltip:"Zrestartuj serwer aby aktywować zmiany",add_funds_tooltip:"Dodaj środki do portfela.",reset_defaults:"Powrót do ustawień domyślnych",reset_defaults_tooltip:"Wymaż wszystkie ustawienia i ustaw domyślne.",download_backup:"Pobierz kopię zapasową bazy danych",name_your_wallet:"Nazwij swój portfel {name}",paste_invoice_label:"Wklej fakturę, żądanie zapłaty lub kod lnurl *",lnbits_description:"Łatwy i lekki w konfiguracji, LNbits może działać w oparciu o dowolne źródło finansowania w sieci lightning czy nawet inną instancję LNbits! Możesz uruchomić instancję LNbits dla siebie lub dla innych. Każdy portfel ma swoje klucze API i nie ma ograniczeń jeśli chodzi o ilość portfeli. LNbits umożliwia dzielenie środków w celu zarządzania nimi, jest również dobrym narzędziem deweloperskim. Rozszerzenia zwiększają funkcjonalność LNbits co umożliwia eksperymentowanie z nowym technologiami w sieci lightning. Tworzenie rozszerzeń jest proste dlatego zachęcamy innych deweloperów do tworzenia dodatkowych funkcjonalności i wysyłanie do nas PR",export_to_phone:"Eksport kodu QR na telefon",export_to_phone_desc:"Ten kod QR zawiera adres URL Twojego portfela z pełnym dostępem do niego. Możesz go zeskanować na swoim telefonie aby otworzyć na nim ten portfel.",wallet:"Portfel:",wallets:"Portfele",add_wallet:"Dodaj portfel",delete_wallet:"Usuń portfel",delete_wallet_desc:"Ten portfel zostanie usunięty, środków na nim zgromadzonych NIE BĘDZIE MOŻNA ODZYSKAĆ.",rename_wallet:"Zmień nazwę portfela",update_name:"Zaktualizuj nazwę",fiat_tracking:"Śledzenie Fiata",currency:"Waluta",update_currency:"Aktualizuj walutę",press_to_claim:"Naciśnij aby odebrać Bitcoiny",donate:"Podaruj",view_github:"Otwórz GitHub",voidwallet_active:"VoidWallet jest aktywny! Płatności są niemożliwe",use_with_caution:"KORZYSTAJ Z ROZWAGĄ - portfel {name} jest w wersji BETA",service_fee:"Opłata serwisowa: {amount} % za transakcję",service_fee_max:"Opłata serwisowa: {amount} % za transakcję (maks {max} sat)",service_fee_tooltip:"Opłata serwisowa pobierana przez administratora serwera LNbits za każdą wychodzącą transakcję",toggle_darkmode:"Tryb nocny",payment_reactions:"Reakcje na płatność",view_swagger_docs:"Dokumentacja Swagger API",api_docs:"Dokumentacja API",api_keys_api_docs:"Adres URL węzła, klucze API i dokumentacja API",lnbits_version:"Wersja LNbits",runs_on:"Działa na",paste:"Wklej",paste_from_clipboard:"Wklej ze schowka",paste_request:"Wklej żądanie",create_invoice:"Utwórz fakturę",camera_tooltip:"Użyj kamery aby zeskanować fakturę lub kod QR",export_csv:"Eksport do CSV",chart_tooltip:"Wykres",pending:"W toku",copy_invoice:"Skopiuj fakturę",withdraw_from:"Wypłać z",cancel:"Anuluj",scan:"Skanuj",read:"Odczytaj",pay:"Zapłać",memo:"Memo",date:"Data",payment_processing:"Przetwarzam płatność...",not_enough_funds:"Brak wystarczających środków!",search_by_tag_memo_amount:"Szukaj po tagu, memo czy wartości",invoice_waiting:"Faktura oczekuje na zapłatę",payment_received:"Otrzymano płatność",payment_sent:"Wysłano płatność",receive:"odbierać",send:"wysłać",outgoing_payment_pending:"Płatność wychodząca w toku",drain_funds:"Opróżnij środki",drain_funds_desc:"To jest kod QR służący do opróżnienia portfela (LNURL-withdraw). Nie udostępniaj go nikomu. Ten kod jest kompatybilny z funkcjami, które umożliwiają wielokrotne żądania aż do zupełnego opróżnienia portfela.",i_understand:"Rozumiem",copy_wallet_url:"Skopiuj URL portfela",disclaimer_dialog_title:"Ważne!",disclaimer_dialog:"Funkcja logowania zostanie uruchomiona w przyszłości. Póki co upewnij się, że zapisałeś adres URL tej strony aby mieć dostęp do tego portfela. Nie udostępniaj adresu tej strony nikomu, kto nie ma mieć do tego portfela dostępu! Ta usługa działa w wersji BETA, nie odpowiadamy za utratę dostępu do środków przez osoby używające LNbits.",no_transactions:"Brak transakcji",manage:"Zarządzaj",exchanges:"Giełdy",extensions:"Rozszerzenia",no_extensions:"Nie masz zainstalowanych żadnych rozszerzeń :(",created:"Utworzono",search_extensions:"Szukaj rozszerzeń",extension_sources:"Źródła rozszerzeń",ext_sources_hint:"Repozytoria, z których można pobrać rozszerzenia",ext_sources_label:"URL źródłowy (używaj tylko oficjalnego źródła rozszerzenia LNbits oraz źródeł, którym możesz zaufać)",warning:"Ostrzeżenie",repository:"Repozytorium",confirm_continue:"Czy na pewno chcesz kontynuować?",manage_extension_details:"Instaluj/odinstaluj rozszerzenie",install:"Zainstaluj",uninstall:"Odinstaluj",drop_db:"Usuń dane",enable:"Włącz",pay_to_enable:"Zapłać, aby włączyć",enable_extension_details:"Włącz rozszerzenie dla aktualnego użytkownika",disable:"Wyłącz",delete:"Usuń",installed:"Zainstalowano",activated:"Aktywowany",deactivated:"Dezaktywowany",release_notes:"Informacje o wydaniu",activate_extension_details:"Udostępnij/nie udostępniaj rozszerzenia użytkownikom",featured:"Polecane",all:"Wszystko",only_admins_can_install:"Tylko konta administratorów mogą instalować rozszerzenia",admin_only:"Tylko dla administratora",new_version:"Nowa wersja",extension_depends_on:"Zależy od:",extension_rating_soon:"Oceny będą dostępne wkrótce",extension_installed_version:"Zainstalowana wersja",extension_uninstall_warning:"Za chwilę usuniesz rozszerzenie dla wszystkich użytkowników.",uninstall_confirm:"Tak, Odinstaluj",extension_db_drop_info:"Wszystkie dane dla rozszerzenia zostaną trwale usunięte. Nie ma sposobu, aby cofnąć tę operację!",extension_db_drop_warning:"Za chwilę usuniesz wszystkie dane dla rozszerzenia. Proszę wpisz nazwę rozszerzenia, aby kontynuować:",extension_required_lnbits_version:"To wymaga przynajmniej wersji LNbits",min_version:"Minimum (włącznie)",max_version:"Maksymalna (wyłączona)",payment_hash:"Hash Płatności",fee:"Opłata",amount:"Wartość",amount_sats:"Kwota (sats)",tag:"Etykieta",unit:"Jednostka",description:"Opis",expiry:"Wygasa",webhook:"Webhook",payment_proof:"Potwierdzenie płatności",update:"Aktualizuj",update_available:"Aktualizacja {version} dostępna!",latest_update:"Korzystasz z najnowszej wersji {version}.",notifications:"Powiadomienia",no_notifications:"Brak powiadomień",notifications_disabled:"Powiadomienia o statusie LNbits są wyłączone.",enable_notifications:"Włącz powiadomienia",enable_notifications_desc:"Jeśli ta opcja zostanie włączona, będzie pobierać najnowsze informacje o statusie LNbits, takie jak incydenty bezpieczeństwa i aktualizacje.",enable_watchdog:"Włącz Watchdog",enable_watchdog_desc:"Jeśli zostanie włączone, automatycznie zmieni źródło finansowania na VoidWallet, jeśli saldo jest niższe niż saldo LNbits. Po aktualizacji trzeba będzie włączyć ręcznie.",watchdog_interval:"Interwał Watchdog",watchdog_interval_desc:"Jak często zadanie w tle powinno sprawdzać sygnał wyłącznika awaryjnego w delcie strażnika [node_balance - lnbits_balance] (w minutach).",watchdog_delta:"Strażnik Delta",watchdog_delta_desc:"Limit przed aktywacją wyłącznika zmienia źródło finansowania na VoidWallet [lnbits_balance - node_balance > delta]",status:"Stan",notification_source:"Źródło powiadomień",notification_source_label:"Adres URL źródła (używaj tylko oficjalnego źródła statusu LNbits oraz źródeł, którym możesz zaufać)",more:"więcej",less:"mniej",releases:"Wydania",watchdog:"Pies gończy",server_logs:"Dzienniki serwera",ip_blocker:"Blokada IP",security:"Bezpieczeństwo",security_tools:"Narzędzia bezpieczeństwa",block_access_hint:"Zablokuj dostęp przez IP",allow_access_hint:"Zezwól na dostęp przez IP (zignoruje zablokowane adresy IP)",enter_ip:"Wpisz adres IP i naciśnij enter",rate_limiter:"Ogranicznik Częstotliwości",wallet_limiter:"Ogranicznik Portfela",wallet_limit_max_withdraw_per_day:"Maksymalna dzienna wypłata z portfela w satoshi (0 aby wyłączyć)",wallet_max_ballance:"Maksymalny stan portfela w satoshi (0 aby wyłączyć)",wallet_limit_secs_between_trans:"Min sekund pomiędzy transakcjami na portfel (0 aby wyłączyć)",number_of_requests:"Liczba żądań",time_unit:"Jednostka czasu",minute:"minuta",second:"sekunda",hour:"godzina",disable_server_log:"Wyłącz log serwera",enable_server_log:"Włącz dziennik serwera",coming_soon:"Funkcja wkrótce będzie dostępna",session_has_expired:"Twoja sesja wygasła. Proszę zaloguj się ponownie.",instant_access_question:"Chcesz mieć natychmiastowy dostęp?",login_with_user_id:"Zaloguj się za pomocą identyfikatora użytkownika",or:"lub",create_new_wallet:"Utwórz nowy portfel",login_to_account:"Zaloguj się do swojego konta",create_account:"Załóż konto",account_settings:"Ustawienia konta",signin_with_nostr:"Kontynuuj z Nostr",signin_with_google:"Zaloguj się przez Google",signin_with_github:"Zaloguj się przez GitHub",signin_with_keycloak:"Zaloguj się przez Keycloak",username_or_email:"Nazwa użytkownika lub Email",password:"Hasło",password_config:"Konfiguracja Hasła",password_repeat:"Powtórz hasło",change_password:"Zmień hasło",update_credentials:"Aktualizuj dane logowania",update_pubkey:"Zaktualizuj klucz publiczny",set_password:"Ustaw hasło",invalid_password:"Hasło musi zawierać co najmniej 8 znaków",login:"Logowanie",register:"Zarejestruj",username:"Nazwa użytkownika",pubkey:"Klucz publiczny",user_id:"Identyfikator użytkownika",email:"Email",first_name:"Imię",last_name:"Nazwisko",picture:"Zdjęcie",verify_email:"Zweryfikuj email za pomocą",account:"Konto",update_account:"Aktualizuj konto",invalid_username:"Nieprawidłowa nazwa użytkownika",auth_provider:"Dostawca uwierzytelniania",my_account:"Moje Konto",back:"Wstecz",logout:"Wyloguj",look_and_feel:"Wygląd i zachowanie",toggle_gradient:"Przełącz gradient",gradient_background:"Tło gradientowe",language:"Język",color_scheme:"Schemat kolorów",admin_settings:"Ustawienia administratora",extension_cost:"To niniejsze wydanie wymaga zapłaty minimalnej {cost} satów.",extension_paid_sats:"Już zapłaciłeś {paid_sats} satów.",release_details_error:"Nie można uzyskać szczegółów wydania.",pay_from_wallet:"Zapłać z portfela",wallet_required:"Portfel *",show_qr:"Pokaż kod QR",retry_install:"Ponów instalację",new_payment:"Dokonaj nowej płatności",update_payment:"Zaktualizuj płatność",already_paid_question:"Czy już zapłaciłeś?",sell:"Sprzedaj",sell_require:"Poproś o płatność, aby włączyć rozszerzenie",sell_info:"Rozszerzenie {name} wymaga płatności w wysokości minimum {amount} sats, aby je włączyć.",hide_empty_wallets:"Ukryj puste portfele",recheck:"Sprawdź ponownie",contributors:"Współpracownicy",license:"Licencja",reset_key:"Resetuj klucz",reset_password:"Zresetuj hasło",border_choices:"Wybory granicy",select_all:"Zaznacz wszystko",nfc_supported:"Obsługa NFC",nfc_not_supported:"NFC nieobsługiwane",expire_date:"Data wygaśnięcia:",hash:"Hash:",welcome_lnbits:"Witamy w LNbits",setup_su_account:"Skonfiguruj konto Superuser poniżej.",create_ticker_converter:"Stwórz Konwerter Kursu Walutowego",enable_audit:"Włącz Audyt",recommended:"Zalecane",audit_desc:"Rejestruj żądania HTTP zgodnie z określonymi filtrami",audit_record_req:"Zarejestruj treść żądania",audit_record_warning:"Ostrzeżenie:",audit_record_req_warning_1:"dane poufne (takie jak hasła) będą rejestrowane.",audit_record_req_warning_2:"treść żądania może mieć duży rozmiar.",audit_record_use:"Używaj tego ostrożnie.",audit_ip:"Zapisz adres IP",audit_ip_desc:"Zarejestruj adres IP klienta",audit_path_params:"Zarejestruj parametry ścieżki",audit_query_params:"Zarejestruj parametry zapytania",audit_http_methods:"Uwzględnij metody HTTP",audit_http_methods_hint:"Lista metod HTTP do uwzględnienia. Pusta lista oznacza wszystkie.",audit_http_methods_label:"Metody HTTP",audit_resp_codes:"Uwzględnij kody odpowiedzi HTTP",audit_resp_codes_hint:"Lista kodów HTTP do uwzględnienia (dopasowanie do wyrażenia regularnego). Puste listy oznaczają wszystkie. Np: 4.*, 5.*",audit_resp_codes_label:"Kod odpowiedzi HTTP (wyrażenie regularne)",audit_paths:"Ścieżki dołączania",audit_paths_hint:"Lista ścieżek do uwzględnienia (dopasowanie regex). Pusta lista oznacza wszystkie.",audit_paths_label:"Ścieżka HTTP (regex)",audit_paths_exclude:"Wyklucz ścieżki",audit_paths_exclude_hint:"Lista ścieżek do wykluczenia (dopasowanie do wyrażenia regularnego). Pusta lista oznacza brak.",audit_paths_exclude_label:"Ścieżka HTTP (wyrażenie regularne)",exchange_providers:"Dostawcy wymiany",admin_extensions:"Rozszerzenia administracyjne",admin_extensions_label:"Rozszerzenia administracyjne",admin_extensions_hint:"Tylko użytkownik rozszerzeń z uprawnieniami administratora może używać",user_default_extensions:"Domyślne Rozszerzenia Użytkownika",user_default_extensions_label:"Rozszerzenia użytkownika",user_default_extensions_hint:"Rozszerzenia, które będą domyślnie włączone dla użytkowników.",miscellanous:"Różne",misc_disable_extensions:"Wyłącz rozszerzenia",misc_disable_extensions_label:"Wyłącz wszystkie rozszerzenia",misc_hide_api:"Ukryj API",misc_hide_api_label:"Ukrywa interfejs API portfela, rozszerzenia mogą zdecydować się na honorowanie",wallets_management:"Zarządzanie portfelami",funding_source_info:"Informacje o źródle finansowania",funding_source:"Źródło finansowania: {wallet_class}",node_balance:"Saldo węzła: {balance} sats",lnbits_balance:"Saldo LNbits: {balance} sats",funding_reserve_percent:"Rezerwa procentowa: {percent} %",node_management:"Zarządzanie węzłami",node_management_not_supported:"Zarządzanie węzłami nie jest obsługiwane przez aktywne źródło finansowania.",toggle_node_ui:"Interfejs użytkownika węzła",toggle_public_node_ui:"Interfejs węzła publicznego",toggle_transactions_node_ui:"Karta transakcji (wyłącz na dużych węzłach CLN)",invoice_expiry:"Wygaśnięcie faktury",invoice_expiry_label:"Termin wygaśnięcia faktury (sekundy)",fee_reserve:"Rezerwa Opłat",fee_reserve_msats:"Opłata rezerwowa w msats",fee_reserve_percent:"Opłata rezerwacyjna w procentach",server_management:"Zarządzanie serwerem",base_url:"Podstawowy adres URL",base_url_label:"Adres URL statyczny/bazowy dla serwera",authentication:"Uwierzytelnianie",auth_token_expiry_label:"Minuty wygaśnięcia tokenu",auth_token_expiry_hint:"Czas w minutach do wygaśnięcia tokenu",auth_allowed_methods_label:"Dopuszczalne metody autoryzacji",auth_allowed_methods_hint:"Wybierz metody autoryzacji",auth_nostr_label:"Żądanie URL Nostr",auth_nostr_hint:"Absolutny URL, którego klienci będą używać do logowania.",auth_google_ci_label:"Identyfikator klienta Google",auth_google_ci_hint:"Upewnij się, że autoryzowane URI przekierowania zawierają https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Hasło tajne klienta Google",auth_gh_client_id_label:"Identyfikator klienta GitHub",auth_gh_client_id_hint:"Upewnij się, że adres URL wywołania zwrotnego autoryzacji jest ustawiony na https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Client Secret",auth_keycloak_label:"Adres URL Discovery Keycloak",auth_keycloak_ci_label:"Identyfikator klienta Keycloak",auth_keycloak_ci_hint:"Upewnij się, że URL zwrotu autoryzacji jest ustawiony na https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Hasło klienta Keycloak",currency_settings:"Ustawienia waluty",allowed_currencies:"Dozwolone waluty",allowed_currencies_hint:"Ogranicz liczbę dostępnych walut fiducjarnych",default_account_currency:"Domyślna waluta konta",default_account_currency_hint:"Domyślna waluta dla księgowości",service_fee_label:"Opłata serwisowa (%)",service_fee_hint:"Opłata pobierana za transakcję (%)",service_fee_max_label:"Opłata za usługę max (sats)",service_fee_max_hint:"Maksymalna opłata serwisowa do pobrania w (sats)",fee_wallet:"Portfel opłat",fee_wallet_label:"Portfel opłat (ID portfela)",fee_wallet_hint:"Identyfikator portfela, do którego wysłać środki",disable_fee:"Wyłącz opłatę",disable_fee_internal:"Wyłącz opłatę za usługę dla płatności wewnętrznych",disable_fee_internal_desc:"Wyłącz opłatę serwisową dla wewnętrznych płatności Lightning",ui_management:"Zarządzanie interfejsem użytkownika",ui_site_title:"Tytuł strony",ui_site_tagline:"Podpis strony",ui_elements_enable:"Włącz elementy na stronie głównej",ui_elements_disable:"Wyłącz elementy na stronie głównej",ui_toggle_elements_tip:"Usuń elementy strony głównej takie jak 'runs on' itp.",ui_site_description:"Opis strony",ui_site_description_hint:"Użyj zwykłego tekstu, Markdown lub surowego HTML",ui_default_wallet_name:"Domyślna nazwa portfela",lnbits_wallet:"Portfel LNbits",denomination:"Nominacja",denomination_hint:"Nazwa dla tokena FakeWallet",ui_qr_code_logo:"Logo kodu QR",ui_qr_code_logo_hint:"Adres URL do obrazu logo w kodzie QR",ui_custom_badge:"Niestandardowa odznaka",ui_custom_badge_label:"Znak niestandardowy 'UŻYWAJ OSTROŻNIE - portfel LNbits wciąż jest w WERSJI BETA'",ui_custom_badge_color_label:"Niestandardowy kolor odznaki",themes:"Motywy",themes_hint:"Wybierz motywy dostępne dla użytkowników",custom_logo:"Logo niestandardowe",custom_logo_hint:"URL do obrazu logo",ad_space_title:"Tytuł reklamy",ad_space_title_label:"Wspierane przez",ad_slots:"Sloty reklamowe",ad_slots_hint:"Adres URL i ścieżki plików obrazów w formacie CSV, rozszerzenia mogą zdecydować się na honorowanie",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Reklamy włączone",ads_disabled:"Reklamy wyłączone",user_management:"Zarządzanie użytkownikami",admin_users:"Użytkownicy administratorzy",admin_users_hint:"Użytkownicy z uprawnieniami administratora",admin_users_label:"Identyfikator użytkownika",allowed_users:"Dozwoleni użytkownicy",allowed_users_hint:"Tylko ci użytkownicy mogą używać LNbits",allowed_users_label:"Identyfikator użytkownika",allow_creation_user:"Zezwól na tworzenie nowych użytkowników",allow_creation_user_desc:"Zezwól na tworzenie nowych użytkowników na stronie głównej indeksu",components:"Komponenty",long_running_endpoints:"5 najdłużej działających punktów końcowych",http_request_methods:"Metody żądań HTTP",http_response_codes:"Kody Odpowiedzi HTTP",request_details:"Szczegóły żądania",http_request_details:"Szczegóły żądania HTTP"},window.localisation.fr={confirm:"Oui",server:"Serveur",theme:"Thème",site_customisation:"Personnalisation du site",funding:"Financement",users:"Utilisateurs",audit:"Audit",apps:"Applications",channels:"Canaux",transactions:"Transactions",dashboard:"Tableau de bord",node:"Noeud",export_users:"Exporter les utilisateurs",no_users:"Aucun utilisateur trouvé",total_capacity:"Capacité totale",avg_channel_size:"Taille moyenne du canal",biggest_channel_size:"Taille de canal maximale",smallest_channel_size:"Taille de canal la plus petite",number_of_channels:"Nombre de canaux",active_channels:"Canaux actifs",connect_peer:"Connecter un pair",connect:"Connecter",open_channel:"Ouvrir le canal",open:"Ouvrir",close_channel:"Fermer le canal",close:"Fermer",restart:"Redémarrer le serveur",save:"Enregistrer",save_tooltip:"Enregistrer vos modifications",credit_debit:"Crédit / Débit",credit_hint:"Appuyez sur Entrée pour créditer le compte",credit_label:"{denomination} à créditer",credit_ok:"Succès du crédit/débit des fonds virtuels ({amount} sats). Les paiements dépendent des fonds réels sur la source de financement.",restart_tooltip:"Redémarrez le serveur pour que les changements prennent effet",add_funds_tooltip:"Ajouter des fonds à un portefeuille.",reset_defaults:"Réinitialiser aux valeurs par défaut",reset_defaults_tooltip:"Supprimer tous les paramètres et les réinitialiser aux valeurs par défaut.",download_backup:"Télécharger la sauvegarde de la base de données",name_your_wallet:"Nommez votre portefeuille {name}",paste_invoice_label:"Coller une facture, une demande de paiement ou un code lnurl *",lnbits_description:"Facile à installer et léger, LNbits peut fonctionner sur n'importe quelle source de financement du réseau Lightning et même LNbits lui-même! Vous pouvez exécuter LNbits pour vous-même ou offrir facilement une solution de gardien pour les autres. Chaque portefeuille a ses propres clés API et il n'y a pas de limite au nombre de portefeuilles que vous pouvez créer. La capacité de partitionner les fonds rend LNbits un outil utile pour la gestion de l'argent et comme outil de développement. Les extensions ajoutent une fonctionnalité supplémentaire à LNbits afin que vous puissiez expérimenter une gamme de technologies de pointe sur le réseau Lightning. Nous avons rendu le développement d'extensions aussi simple que possible et, en tant que projet gratuit et open source, nous encourageons les gens à développer et à soumettre les leurs.",export_to_phone:"Exporter vers le téléphone avec un code QR",export_to_phone_desc:"Ce code QR contient l'URL de votre portefeuille avec un accès complet. Vous pouvez le scanner depuis votre téléphone pour ouvrir votre portefeuille depuis là-bas.",wallet:"Portefeuille :",wallets:"Portefeuilles",add_wallet:"Ajouter un nouveau portefeuille",delete_wallet:"Supprimer le portefeuille",delete_wallet_desc:"Ce portefeuille entier sera supprimé et les fonds seront IRRECUPERABLES.",rename_wallet:"Renommer le portefeuille",update_name:"Mettre à jour le nom",fiat_tracking:"Suivi Fiat",currency:"Devise",update_currency:"Mettre à jour la devise",press_to_claim:"Appuyez pour demander du Bitcoin",donate:"Donner",view_github:"Voir sur GitHub",voidwallet_active:"VoidWallet est actif! Paiements désactivés",use_with_caution:"UTILISER AVEC PRUDENCE - Le portefeuille {name} est toujours en version BETA",service_fee:"Frais de service : {amount} % par transaction",service_fee_max:"Frais de service : {amount} % par transaction (max {max} sats)",service_fee_tooltip:"Frais de service facturés par l'administrateur du serveur LNbits pour chaque transaction sortante",toggle_darkmode:"Basculer le mode sombre",payment_reactions:"Réactions de paiement",view_swagger_docs:"Voir les documentation de l'API Swagger de LNbits",api_docs:"Documentation de l'API",api_keys_api_docs:"URL du nœud, clés API et documentation API",lnbits_version:"Version de LNbits",runs_on:"Fonctionne sur",paste:"Coller",paste_from_clipboard:"Coller depuis le presse-papiers",paste_request:"Coller la requête",create_invoice:"Créer une facture",camera_tooltip:"Utiliser la caméra pour scanner une facture / un code QR",export_csv:"Exporter vers CSV",chart_tooltip:"Afficher le graphique",pending:"En attente",copy_invoice:"Copier la facture",withdraw_from:"Retirer de",cancel:"Annuler",scan:"Scanner",read:"Lire",pay:"Payer",memo:"Mémo",date:"Date",payment_processing:"Traitement du paiement...",not_enough_funds:"Fonds insuffisants !",search_by_tag_memo_amount:"Rechercher par tag, mémo, montant",invoice_waiting:"Facture en attente de paiement",payment_received:"Paiement reçu",payment_sent:"Paiement envoyé",receive:"recevoir",send:"envoyer",outgoing_payment_pending:"Paiement sortant en attente",drain_funds:"Vider les fonds",drain_funds_desc:"Il s'agit d'un code QR LNURL-withdraw pour tout aspirer de ce portefeuille. Ne le partagez avec personne. Il est compatible avec balanceCheck et balanceNotify, de sorte que votre portefeuille peut continuer à retirer les fonds continuellement à partir d'ici après le premier retrait.",i_understand:"J'ai compris",copy_wallet_url:"Copier l'URL du portefeuille",disclaimer_dialog_title:"Important !",disclaimer_dialog:"La fonctionnalité de connexion sera publiée dans une future mise à jour, pour l'instant, assurez-vous de mettre cette page en favori pour accéder à votre portefeuille ultérieurement ! Ce service est en BETA, et nous ne sommes pas responsables des personnes qui perdent l'accès à leurs fonds.",no_transactions:"Aucune transaction effectuée pour le moment",manage:"Gérer",exchanges:"Échanges",extensions:"Extensions",no_extensions:"Vous n'avez installé aucune extension :(",created:"Créé",search_extensions:"Rechercher des extensions",extension_sources:"Sources d'extension",ext_sources_hint:"Dépôts à partir desquels les extensions peuvent être téléchargées",ext_sources_label:"URL source (utilisez uniquement la source officielle de l'extension LNbits et des sources fiables)",warning:"Avertissement",repository:"Référentiel",confirm_continue:"Êtes-vous sûr de vouloir continuer ?",manage_extension_details:"Installer/désinstaller l'extension",install:"Installer",uninstall:"Désinstaller",drop_db:"Supprimer les données",enable:"Activer",pay_to_enable:"Payer pour activer",enable_extension_details:"Activer l'extension pour l'utilisateur actuel",disable:"Désactiver",delete:"Supprimer",installed:"Installé",activated:"Activé",deactivated:"Désactivé",release_notes:"Notes de version",activate_extension_details:"Rendre l'extension disponible/indisponible pour les utilisateurs",featured:"Mis en avant",all:"Tout",only_admins_can_install:"Seuls les comptes administrateurs peuvent installer des extensions",admin_only:"Réservé aux administrateurs",new_version:"Nouvelle version",extension_depends_on:"Dépend de :",extension_rating_soon:"Notes des utilisateurs à venir bientôt",extension_installed_version:"Version installée",extension_uninstall_warning:"Vous êtes sur le point de supprimer l'extension pour tous les utilisateurs.",uninstall_confirm:"Oui, Désinstaller",extension_db_drop_info:"Toutes les données pour l'extension seront supprimées de manière permanente. Il n'est pas possible d'annuler cette opération !",extension_db_drop_warning:"Vous êtes sur le point de supprimer toutes les données de l'extension. Veuillez taper le nom de l'extension pour continuer :",extension_required_lnbits_version:"Cette version nécessite au moins LNbits version",min_version:"Minimum (inclus)",max_version:"Maximum (exclu)",payment_hash:"Hash de paiement",fee:"Frais",amount:"Montant",amount_sats:"Montant (sats)",tag:"Étiqueter",unit:"Unité",description:"Description",expiry:"Expiration",webhook:"Webhook",payment_proof:"Preuve de paiement",update:"Mettre à jour",update_available:"Mise à jour {version} disponible !",latest_update:"Vous êtes sur la dernière version {version}.",notifications:"Notifications",no_notifications:"Aucune notification",notifications_disabled:"Les notifications de statut LNbits sont désactivées.",enable_notifications:"Activer les notifications",enable_notifications_desc:"Si activé, il récupérera les dernières mises à jour du statut LNbits, telles que les incidents de sécurité et les mises à jour.",enable_watchdog:"Activer le Watchdog",enable_watchdog_desc:"Si elle est activée, elle changera automatiquement votre source de financement en VoidWallet si votre solde est inférieur au solde LNbits. Vous devrez activer manuellement après une mise à jour.",watchdog_interval:"Intervalle du gardien",watchdog_interval_desc:"À quelle fréquence la tâche en arrière-plan doit-elle vérifier la présence d'un signal d'arrêt d'urgence dans le delta du gardien [node_balance - lnbits_balance] (en minutes).",watchdog_delta:"Chien de garde Delta",watchdog_delta_desc:"Limite avant que l'interrupteur d'arrêt ne change la source de financement pour VoidWallet [lnbits_balance - node_balance > delta]",status:"Statut",notification_source:"Source de notification",notification_source_label:"URL source (utilisez uniquement la source officielle de statut LNbits et des sources de confiance)",more:"plus",less:"moins",releases:"Versions",watchdog:"Chien de garde",server_logs:"Journaux du serveur",ip_blocker:"Bloqueur d'IP",security:"Sécurité",security_tools:"Outils de sécurité",block_access_hint:"Bloquer l'accès par IP",allow_access_hint:"Autoriser l'accès par IP (cela passera outre les IP bloquées)",enter_ip:"Entrez l'adresse IP et appuyez sur Entrée",rate_limiter:"Limiteur de débit",wallet_limiter:"Limiteur de portefeuille",wallet_limit_max_withdraw_per_day:"Retrait quotidien maximum du portefeuille en sats (0 pour désactiver)",wallet_max_ballance:"Solde maximum du portefeuille en sats (0 pour désactiver)",wallet_limit_secs_between_trans:"Minutes et secondes entre les transactions par portefeuille (0 pour désactiver)",number_of_requests:"Nombre de requêtes",time_unit:"Unité de temps",minute:"minute",second:"seconde",hour:"heure",disable_server_log:"Désactiver le journal du serveur",enable_server_log:"Activer le journal du serveur",coming_soon:"Fonctionnalité à venir bientôt",session_has_expired:"Votre session a expiré. Veuillez vous reconnecter.",instant_access_question:"Voulez-vous un accès instantané ?",login_with_user_id:"Connexion avec l'identifiant utilisateur",or:"ou",create_new_wallet:"Créer un nouveau portefeuille",login_to_account:"Connectez-vous à votre compte",create_account:"Créer un compte",account_settings:"Paramètres du compte",signin_with_nostr:"Continuer avec Nostr",signin_with_google:"Connectez-vous avec Google",signin_with_github:"Connectez-vous avec GitHub",signin_with_keycloak:"Connectez-vous avec Keycloak",username_or_email:"Nom d'utilisateur ou e-mail",password:"Mot de passe",password_config:"Configuration du mot de passe",password_repeat:"Répétition du mot de passe",change_password:"Changer le mot de passe",update_credentials:"Mettre à jour les informations d'identification",update_pubkey:"Mettre à jour la clé publique",set_password:"Définir le mot de passe",invalid_password:"Le mot de passe doit comporter au moins 8 caractères",login:"Connexion",register:"Inscrire",username:"Nom d'utilisateur",pubkey:"Clé publique",user_id:"Identifiant utilisateur",email:"E-mail",first_name:"Prénom",last_name:"Nom de famille",picture:"Image",verify_email:"Vérifiez l'e-mail avec",account:"Compte",update_account:"Mettre à jour le compte",invalid_username:"Nom d'utilisateur invalide",auth_provider:"Fournisseur d'authentification",my_account:"Mon compte",back:"Retour",logout:"Déconnexion",look_and_feel:"Apparence",toggle_gradient:"Basculer le dégradé",gradient_background:"Fond en dégradé",language:"Langue",color_scheme:"Schéma de couleurs",admin_settings:"Paramètres administrateur",extension_cost:"Cette version nécessite un paiement minimum de {cost} sats.",extension_paid_sats:"Vous avez déjà payé {paid_sats} sats.",release_details_error:"Impossible d'obtenir les détails de la version.",pay_from_wallet:"Payer depuis le portefeuille",wallet_required:"Portefeuille *",show_qr:"Afficher le QR",retry_install:"Réessayer l'installation",new_payment:"Effectuer un nouveau paiement",update_payment:"Mettre à jour le paiement",already_paid_question:"Avez-vous déjà payé ?",sell:"Vendre",sell_require:"Demander un paiement pour activer l'extension",sell_info:"L'extension {name} nécessite un paiement minimum de {amount} sats pour être activée.",hide_empty_wallets:"Masquer les portefeuilles vides",recheck:"Revérifier",contributors:"Contributeurs",license:"Licence",reset_key:"Réinitialiser la clé",reset_password:"Réinitialiser le mot de passe",border_choices:"Choix de bordure",select_all:"Sélectionner tout",nfc_supported:"NFC pris en charge",nfc_not_supported:"NFC non pris en charge",expire_date:"Date d'expiration :",hash:"Hash :",welcome_lnbits:"Bienvenue à LNbits",setup_su_account:"Configurez le compte Superuser ci-dessous.",create_ticker_converter:"Créer un convertisseur de code de devise",enable_audit:"Activer l'audit",recommended:"Recommandé",audit_desc:"Enregistrer les requêtes HTTP selon les filtres spécifiés",audit_record_req:"Enregistrer le corps de la demande",audit_record_warning:"Avertissement :",audit_record_req_warning_1:"les données confidentielles (comme les mots de passe) seront enregistrées.",audit_record_req_warning_2:"le corps de la requête peut être de grande taille.",audit_record_use:"Utilisez-le avec précaution.",audit_ip:"Enregistrer l'adresse IP",audit_ip_desc:"Enregistrer l'adresse IP du client",audit_path_params:"Enregistrer les paramètres de chemin",audit_query_params:"Enregistrer les paramètres de la requête",audit_http_methods:"Inclure les méthodes HTTP",audit_http_methods_hint:"Liste des méthodes HTTP à inclure. Listes vides signifie toutes.",audit_http_methods_label:"Méthodes HTTP",audit_resp_codes:"Inclure les codes de réponse HTTP",audit_resp_codes_hint:"Liste des codes HTTP à inclure (correspondance regex). Les listes vides signifient tout. Ex : 4.*, 5.*",audit_resp_codes_label:"Code de réponse HTTP (regex)",audit_paths:"Inclure des chemins",audit_paths_hint:"Liste des chemins à inclure (correspondance regex). Liste vide signifie tout.",audit_paths_label:"Chemin HTTP (regex)",audit_paths_exclude:"Exclure les chemins",audit_paths_exclude_hint:"Liste des chemins à exclure (correspondance regex). Liste vide signifie aucun.",audit_paths_exclude_label:"Chemin HTTP (regex)",exchange_providers:"Fournisseurs d'échange",admin_extensions:"Extensions d'administration",admin_extensions_label:"Extensions d'administration",admin_extensions_hint:"Seuls les utilisateurs avec des privilèges d'administrateur peuvent utiliser les extensions.",user_default_extensions:"Extensions par défaut de l'utilisateur",user_default_extensions_label:"Extensions utilisateur",user_default_extensions_hint:"Extensions qui seront activées par défaut pour les utilisateurs.",miscellanous:"Divers",misc_disable_extensions:"Désactiver les extensions",misc_disable_extensions_label:"Désactiver toutes les extensions",misc_hide_api:"Masquer l'API",misc_hide_api_label:"Masque l'API du portefeuille, les extensions peuvent choisir de respecter",wallets_management:"Gestion des portefeuilles",funding_source_info:"Informations sur la source de financement",funding_source:"Source de financement : {wallet_class}",node_balance:"Solde du nœud : {balance} sats",lnbits_balance:"Solde LNbits : {balance} sats",funding_reserve_percent:"Pourcentage de Réserve : {percent} %",node_management:"Gestion des nœuds",node_management_not_supported:"La gestion des nœuds n'est pas prise en charge par la source de financement active",toggle_node_ui:"Interface utilisateur de nœud",toggle_public_node_ui:"Interface utilisateur du nœud public",toggle_transactions_node_ui:"Onglet des transactions (Désactiver sur les grands nœuds CLN)",invoice_expiry:"Expiration de la facture",invoice_expiry_label:"Expiration de la facture (secondes)",fee_reserve:"Réserve de frais",fee_reserve_msats:"Frais de réservation en msats",fee_reserve_percent:"Frais de réservation en pourcentage",server_management:"Gestion de serveur",base_url:"URL de base",base_url_label:"URL statique/de base pour le serveur",authentication:"Authentification",auth_token_expiry_label:"Durée d'expiration du jeton (en minutes)",auth_token_expiry_hint:"Durée en minutes avant l'expiration du jeton",auth_allowed_methods_label:"Méthodes d'autorisation autorisées",auth_allowed_methods_hint:"Sélectionnez les méthodes d'autorisation",auth_nostr_label:"URL de requête Nostr",auth_nostr_hint:"URL absolue que les clients utiliseront pour se connecter.",auth_google_ci_label:"ID Client Google",auth_google_ci_hint:"Assurez-vous que les URIs de redirection autorisées contiennent https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Secret client Google",auth_gh_client_id_label:"Identifiant client GitHub",auth_gh_client_id_hint:"Assurez-vous que l'URL de rappel d'autorisation est définie sur https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Secret Client GitHub",auth_keycloak_label:"URL de découverte Keycloak",auth_keycloak_ci_label:"ID Client Keycloak",auth_keycloak_ci_hint:"Assurez-vous que l'URL de rappel d'autorisation est définie sur https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Secret client Keycloak",currency_settings:"Paramètres de devise",allowed_currencies:"Devises autorisées",allowed_currencies_hint:"Limiter le nombre de devises fiduciaires disponibles",default_account_currency:"Devise par défaut du compte",default_account_currency_hint:"Devise par défaut pour la comptabilité",service_fee_label:"Frais de service (%)",service_fee_hint:"Frais facturés par tx (%)",service_fee_max_label:"Frais de service max (sats)",service_fee_max_hint:"Frais de service maximum à facturer en (sats)",fee_wallet:"Portefeuille de frais",fee_wallet_label:"Portefeuille de frais (ID de portefeuille)",fee_wallet_hint:"Identifiant de portefeuille pour envoyer des fonds à",disable_fee:"Désactiver les frais",disable_fee_internal:"Désactiver les frais de service pour les paiements internes",disable_fee_internal_desc:"Désactiver les frais de service pour les paiements Lightning internes",ui_management:"Gestion de l'interface utilisateur",ui_site_title:"Titre du site",ui_site_tagline:"Slogan du site",ui_elements_enable:"Activer les éléments sur la page d'accueil",ui_elements_disable:"Désactiver les éléments sur la page d'accueil",ui_toggle_elements_tip:"Supprimer les éléments de la page d'accueil comme 'fonctionne avec', etc.",ui_site_description:"Description du site",ui_site_description_hint:"Utilisez du texte brut, du Markdown ou du HTML brut",ui_default_wallet_name:"Nom par Défaut du Portefeuille",lnbits_wallet:"Portefeuille LNbits",denomination:"Dénomination",denomination_hint:"Le nom du jeton FakeWallet",ui_qr_code_logo:"Logo de code QR",ui_qr_code_logo_hint:"URL de l'image du logo dans le code QR",ui_custom_badge:"Badge personnalisé",ui_custom_badge_label:"Badge personnalisé 'À UTILISER AVEC PRÉCAUTION - Le portefeuille LNbits est encore en BÊTA'",ui_custom_badge_color_label:"Couleur de badge personnalisée",themes:"Thèmes",themes_hint:"Choisissez des thèmes disponibles pour les utilisateurs",custom_logo:"Logo personnalisé",custom_logo_hint:"URL de l'image du logo",ad_space_title:"Titre de l'espace publicitaire",ad_space_title_label:"Soutenu par",ad_slots:"Emplacements publicitaires",ad_slots_hint:"URL de l'annonce et chemins des fichiers image au format CSV, les extensions peuvent choisir de respecter",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Annonces activées",ads_disabled:"Publicités désactivées",user_management:"Gestion des utilisateurs",admin_users:"Utilisateurs administrateurs",admin_users_hint:"Utilisateurs avec des privilèges d'administration",admin_users_label:"Identifiant utilisateur",allowed_users:"Utilisateurs autorisés",allowed_users_hint:"Seuls ces utilisateurs peuvent utiliser LNbits",allowed_users_label:"ID utilisateur",allow_creation_user:"Autoriser la création de nouveaux utilisateurs",allow_creation_user_desc:"Permettre la création de nouveaux utilisateurs sur la page d’index",components:"Composants",long_running_endpoints:"Top 5 points de terminaison longue durée",http_request_methods:"Méthodes de requête HTTP",http_response_codes:"Codes de réponse HTTP",request_details:"Détails de la demande",http_request_details:"Détails de la requête HTTP"},window.localisation.nl={confirm:"Ja",server:"Server",theme:"Thema",site_customisation:"Site-aanpassing",funding:"Financiering",users:"Gebruikers",audit:"Controle",apps:"Apps",channels:"Kanalen",transactions:"Transacties",dashboard:"Dashboard",node:"Knooppunt",export_users:"Gebruikers exporteren",no_users:"Geen gebruikers gevonden",total_capacity:"Totale capaciteit",avg_channel_size:"Gem. Kanaalgrootte",biggest_channel_size:"Grootste Kanaalgrootte",smallest_channel_size:"Kleinste Kanaalgrootte",number_of_channels:"Aantal kanalen",active_channels:"Actieve Kanalen",connect_peer:"Peer verbinden",connect:"Verbinden",open_channel:"Open Kanaal",open:"Open",close_channel:"Kanaal Sluiten",close:"Sluiten",restart:"Server opnieuw opstarten",save:"Opslaan",save_tooltip:"Sla uw wijzigingen op",credit_debit:"Credit / Debet",credit_hint:"Druk op Enter om de rekening te crediteren",credit_label:"{denomination} te crediteren",credit_ok:"Succesvol crediteren/debiteren van virtuele gelden ({amount} sats). Betalingen zijn afhankelijk van de werkelijke fondsen op de financieringsbron.",restart_tooltip:"Start de server opnieuw op zodat wijzigingen van kracht worden",add_funds_tooltip:"Voeg geld toe aan een portemonnee.",reset_defaults:"Standaardinstellingen herstellen",reset_defaults_tooltip:"Wis alle instellingen en herstel de standaardinstellingen.",download_backup:"Databaseback-up downloaden",name_your_wallet:"Geef je {name} portemonnee een naam",paste_invoice_label:"Plak een factuur, betalingsverzoek of lnurl-code*",lnbits_description:"Gemakkelijk in te stellen en lichtgewicht, LNbits kan op elke lightning-netwerkfinancieringsbron draaien en zelfs LNbits zelf! U kunt LNbits voor uzelf laten draaien of gemakkelijk een bewaardersoplossing voor anderen bieden. Elke portemonnee heeft zijn eigen API-sleutels en er is geen limiet aan het aantal portemonnees dat u kunt maken. Het kunnen partitioneren van fondsen maakt LNbits een nuttige tool voor geldbeheer en als ontwikkelingstool. Extensies voegen extra functionaliteit toe aan LNbits, zodat u kunt experimenteren met een reeks toonaangevende technologieën op het bliksemschichtnetwerk. We hebben het ontwikkelen van extensies zo eenvoudig mogelijk gemaakt en als een gratis en opensource-project moedigen we mensen aan om hun eigen ontwikkelingen in te dienen.",export_to_phone:"Exporteren naar telefoon met QR-code",export_to_phone_desc:"Deze QR-code bevat uw portemonnee-URL met volledige toegang. U kunt het vanaf uw telefoon scannen om uw portemonnee van daaruit te openen.",wallet:"Wallet:",wallets:"Portemonnees",add_wallet:"Een nieuwe portemonnee toevoegen",delete_wallet:"Portemonnee verwijderen",delete_wallet_desc:"Deze hele portemonnee wordt verwijderd, de fondsen worden NIET TERUGGEVONDEN.",rename_wallet:"Portemonnee hernoemen",update_name:"Naam bijwerken",fiat_tracking:"Volgfunctie voor fiat-valuata",currency:"Valuta",update_currency:"Valuta bijwerken",press_to_claim:"Druk om bitcoin te claimen",donate:"Doneren",view_github:"Bekijken op GitHub",voidwallet_active:"VoidWallet is actief! Betalingen uitgeschakeld",use_with_caution:"GEBRUIK MET VOORZICHTIGHEID - {name} portemonnee is nog in BETA",service_fee:"Servicekosten: {amount} % per transactie",service_fee_max:"Servicekosten: {amount} % per transactie (max {max} sats)",service_fee_tooltip:"Transactiekosten in rekening gebracht door de LNbits serverbeheerder per uitgaande transactie",toggle_darkmode:"Donkere modus aan/uit",payment_reactions:"Betalingsreacties",view_swagger_docs:"Bekijk LNbits Swagger API-documentatie",api_docs:"API-documentatie",api_keys_api_docs:"Node URL, API-sleutels en API-documentatie",lnbits_version:"LNbits-versie",runs_on:"Draait op",paste:"Plakken",paste_from_clipboard:"Plakken van klembord",paste_request:"Verzoek plakken",create_invoice:"Factuur aanmaken",camera_tooltip:"Gebruik de camera om een factuur/QR-code te scannen",export_csv:"Exporteer naar CSV",chart_tooltip:"Toon grafiek",pending:"In behandeling",copy_invoice:"Kopieer factuur",withdraw_from:"Opnemen van",cancel:"Annuleren",scan:"Scannen",read:"Lezen",pay:"Betalen",memo:"Memo",date:"Datum",payment_processing:"Verwerking betaling...",not_enough_funds:"Onvoldoende saldo!",search_by_tag_memo_amount:"Zoeken op tag, memo, bedrag",invoice_waiting:"Factuur wachtend op betaling",payment_received:"Betaling ontvangen",payment_sent:"Betaling verzonden",receive:"ontvangen",send:"versturen",outgoing_payment_pending:"Uitgaande betaling in behandeling",drain_funds:"Geld opnemen",drain_funds_desc:"Dit is een LNURL-withdraw QR-code om alles uit deze portemonnee te halen. Deel deze code niet met anderen. Het is compatibel met balanceCheck en balanceNotify zodat jouw portemonnee continu geld kan blijven opnemen vanaf hier na de eerste opname.",i_understand:"Ik begrijp het",copy_wallet_url:"Kopieer portemonnee-URL",disclaimer_dialog_title:"Belangrijk!",disclaimer_dialog:"Inlogfunctionaliteit wordt uitgebracht in een toekomstige update. Zorg er nu voor dat je deze pagina als favoriet markeert om in de toekomst toegang te krijgen tot je portemonnee! Deze service is in BETA en we zijn niet verantwoordelijk voor mensen die de toegang tot hun fondsen verliezen.",no_transactions:"Er zijn nog geen transacties gedaan",manage:"Beheer",exchanges:"Beurzen",extensions:"Extensies",no_extensions:"Je hebt geen extensies geïnstalleerd :(",created:"Aangemaakt",search_extensions:"Zoekextensies",extension_sources:"Extensiebronnen",ext_sources_hint:"Repositories van waar de extensies kunnen worden gedownload",ext_sources_label:"Bron-URL (gebruik alleen de officiële LNbits-extensiebron en bronnen die je kunt vertrouwen)",warning:"Waarschuwing",repository:"Repository",confirm_continue:"Weet je zeker dat je wilt doorgaan?",manage_extension_details:"Installeren/verwijderen van extensie",install:"Installeren",uninstall:"Deïnstalleren",drop_db:"Gegevens verwijderen",enable:"Inschakelen",pay_to_enable:"Betalen om te activeren",enable_extension_details:"Schakel extensie in voor huidige gebruiker",disable:"Uitschakelen",delete:"Verwijderen",installed:"Geïnstalleerd",activated:"Geactiveerd",deactivated:"Gedeactiveerd",release_notes:"Release-opmerkingen",activate_extension_details:"Maak extensie beschikbaar/niet beschikbaar voor gebruikers",featured:"Uitgelicht",all:"Alles",only_admins_can_install:"Alleen beheerdersaccounts kunnen extensies installeren",admin_only:"Alleen beheerder",new_version:"Nieuwe Versie",extension_depends_on:"Afhankelijk van:",extension_rating_soon:"Beoordelingen binnenkort beschikbaar",extension_installed_version:"Geïnstalleerde versie",extension_uninstall_warning:"U staat op het punt de extensie voor alle gebruikers te verwijderen.",uninstall_confirm:"Ja, de-installeren",extension_db_drop_info:"Alle gegevens voor de extensie zullen permanent worden verwijderd. Er is geen manier om deze bewerking ongedaan te maken!",extension_db_drop_warning:"U staat op het punt alle gegevens voor de extensie te verwijderen. Typ de naam van de extensie om door te gaan:",extension_required_lnbits_version:"Deze release vereist ten minste LNbits-versie",min_version:"Minimum (inbegrepen)",max_version:"Maximum (uitgesloten)",payment_hash:"Betalings-hash",fee:"Kosten",amount:"Bedrag",amount_sats:"Bedrag (sats)",tag:"Label",unit:"Eenheid",description:"Beschrijving",expiry:"Vervaldatum",webhook:"Webhook",payment_proof:"Betalingsbewijs",update:"Bijwerken",update_available:"Update {version} beschikbaar!",latest_update:"U bent op de nieuwste versie {version}.",notifications:"Meldingen",no_notifications:"Geen meldingen",notifications_disabled:"LNbits-statusmeldingen zijn uitgeschakeld.",enable_notifications:"Schakel meldingen in",enable_notifications_desc:"Indien ingeschakeld zal het de laatste LNbits Status updates ophalen, zoals veiligheidsincidenten en updates.",enable_watchdog:"Inschakelen Watchdog",enable_watchdog_desc:"Indien ingeschakeld, wordt uw betaalbron automatisch gewijzigd naar VoidWallet als uw saldo lager is dan het saldo van LNbits. U zult dit na een update handmatig moeten inschakelen.",watchdog_interval:"Watchdog-interval",watchdog_interval_desc:"Hoe vaak de achtergrondtaak moet controleren op een killswitch signaal in het watchdog verschil [node_balance - lnbits_balance] (in minuten).",watchdog_delta:"Waakhond Delta",watchdog_delta_desc:"Limiet voordat de killswitch de financieringsbron verandert naar VoidWallet [lnbits_balance - node_balance > delta]",status:"Status",notification_source:"Notificatiebron",notification_source_label:"Bron-URL (gebruik alleen de officiële LNbits-statusbron en bronnen die u vertrouwt)",more:"meer",less:"minder",releases:"Uitgaven",watchdog:"Waakhond",server_logs:"Serverlogboeken",ip_blocker:"IP-blokkering",security:"Beveiliging",security_tools:"Beveiligingstools",block_access_hint:"Toegang blokkeren per IP",allow_access_hint:"Toegang verlenen op basis van IP (zal geblokkeerde IP's overschrijven)",enter_ip:"Voer IP in en druk op enter",rate_limiter:"Snelheidsbegrenzer",wallet_limiter:"Portemonnee Limietsteller",wallet_limit_max_withdraw_per_day:"Maximale dagelijkse opname van wallet in sats (0 om uit te schakelen)",wallet_max_ballance:"Maximale portefeuillesaldo in sats (0 om uit te schakelen)",wallet_limit_secs_between_trans:"Min seconden tussen transacties per portemonnee (0 om uit te schakelen)",number_of_requests:"Aantal verzoeken",time_unit:"Tijdeenheid",minute:"minuut",second:"seconde",hour:"uur",disable_server_log:"Serverlog uitschakelen",enable_server_log:"Activeer Serverlog",coming_soon:"Functie binnenkort beschikbaar",session_has_expired:"Uw sessie is verlopen. Log alstublieft opnieuw in.",instant_access_question:"Wil je directe toegang?",login_with_user_id:"Inloggen met gebruikers-ID",or:"of",create_new_wallet:"Nieuwe portemonnee aanmaken",login_to_account:"Log in op je account",create_account:"Account aanmaken",account_settings:"Accountinstellingen",signin_with_nostr:"Doorgaan met Nostr",signin_with_google:"Inloggen met Google",signin_with_github:"Inloggen met GitHub",signin_with_keycloak:"Inloggen met Keycloak",username_or_email:"Gebruikersnaam of e-mail",password:"Wachtwoord",password_config:"Wachtwoordconfiguratie",password_repeat:"Wachtwoord herhalen",change_password:"Wachtwoord wijzigen",update_credentials:"Referenties bijwerken",update_pubkey:"Openbare Sleutel Bijwerken",set_password:"Wachtwoord instellen",invalid_password:"Wachtwoord moet ten minste 8 tekens bevatten",login:"Inloggen",register:"Registreren",username:"Gebruikersnaam",pubkey:"Publieke Sleutel",user_id:"Gebruikers-ID",email:"E-mail",first_name:"Voornaam",last_name:"Achternaam",picture:"Foto",verify_email:"E-mail verifiëren met",account:"Account",update_account:"Account bijwerken",invalid_username:"Ongeldige gebruikersnaam",auth_provider:"Auth Provider",my_account:"Mijn Account",back:"Terug",logout:"Afmelden",look_and_feel:"Uiterlijk en gedrag",toggle_gradient:"Gradiënt Schakelen",gradient_background:"Verloopachtergrond",language:"Taal",color_scheme:"Kleurenschema",admin_settings:"Beheerdersinstellingen",extension_cost:"Deze release vereist een betaling van minimaal {cost} sats.",extension_paid_sats:"U heeft al {paid_sats} sats betaald.",release_details_error:"Kan de gegevens van de release niet ophalen.",pay_from_wallet:"Betalen vanuit Portemonnee",wallet_required:"Wallet *",show_qr:"Toon QR",retry_install:"Opnieuw installeren",new_payment:"Nieuwe betaling maken",update_payment:"Betaling bijwerken",already_paid_question:"Heb je al betaald?",sell:"Verkopen",sell_require:"Vraag betaling om de extensie te activeren.",sell_info:"De {name} extensie vereist een betaling van minimaal {amount} sats om in te schakelen.",hide_empty_wallets:"Verberg lege portemonnees",recheck:"Opnieuw controleren",contributors:"Bijdragers",license:"Licentie",reset_key:"Hersteltoets",reset_password:"Wachtwoord Resetten",border_choices:"Randkeuzes",select_all:"Alles selecteren",nfc_supported:"NFC Ondersteund",nfc_not_supported:"NFC niet ondersteund",expire_date:"Vervaldatum:",hash:"Hash:",welcome_lnbits:"Welkom bij LNbits",setup_su_account:"Stel het Superuser-account hieronder in.",create_ticker_converter:"Maak Valuta Ticker Converter",enable_audit:"Audit inschakelen",recommended:"Aanbevolen",audit_desc:"HTTP-verzoeken vastleggen volgens de opgegeven filters",audit_record_req:"Verzoeklichaam registreren",audit_record_warning:"Waarschuwing:",audit_record_req_warning_1:"vertrouwelijke gegevens (zoals wachtwoorden) worden gelogd.",audit_record_req_warning_2:"de aanvraagbody kan een grote omvang hebben.",audit_record_use:"Gebruik het met voorzichtigheid.",audit_ip:"IP-adres vastleggen",audit_ip_desc:"Leg het IP-adres van de klant vast",audit_path_params:"Parameters van het pad opnemen",audit_query_params:"Queryparameters vastleggen",audit_http_methods:"Inclusief HTTP-methoden",audit_http_methods_hint:"Lijst van HTTP-methoden die moeten worden opgenomen. Lege lijsten betekenen alles.",audit_http_methods_label:"HTTP-methoden",audit_resp_codes:"Inclusief HTTP-responscodes",audit_resp_codes_hint:"Lijst van op te nemen HTTP-codes (regex-overeenkomst). Lege lijst betekent alles. Bijvoorbeeld: 4.*, 5.*",audit_resp_codes_label:"HTTP-responscode (regex)",audit_paths:"Inclusiepad",audit_paths_hint:"Lijst met paden die moeten worden opgenomen (regex match). Lege lijst betekent alles.",audit_paths_label:"HTTP-pad (regex)",audit_paths_exclude:"Paden uitsluiten",audit_paths_exclude_hint:"Lijst met paden die moeten worden uitgesloten (regex-overeenkomst). Een lege lijst betekent geen.",audit_paths_exclude_label:"HTTP-pad (regex)",exchange_providers:"Wisselaanbieders",admin_extensions:"Beheeruitbreidingen",admin_extensions_label:"Beheerdersuitbreidingen",admin_extensions_hint:"Alleen gebruikers met beheerdersrechten kunnen extensies gebruiken.",user_default_extensions:"Standaardextensies voor gebruikers",user_default_extensions_label:"Gebruikersuitbreidingen",user_default_extensions_hint:"Extensies die standaard voor de gebruikers worden ingeschakeld.",miscellanous:"Diversen",misc_disable_extensions:"Extensies uitschakelen",misc_disable_extensions_label:"Alle extensies uitschakelen",misc_hide_api:"API verbergen",misc_hide_api_label:"Verbergt de wallet-API, extensies kunnen ervoor kiezen dit te respecteren",wallets_management:"Beheer van portemonnees",funding_source_info:"Financieringsbroninfo",funding_source:"Financieringsbron: {wallet_class}",node_balance:"Node Balans: {balance} sats",lnbits_balance:"LNbits Saldo: {balance} sats",funding_reserve_percent:"Reservepercentage: {percent} %",node_management:"Nodebeheer",node_management_not_supported:"Nodebeheer wordt niet ondersteund door de actieve financieringsbron",toggle_node_ui:"Node UI",toggle_public_node_ui:"Openbare Node UI",toggle_transactions_node_ui:"Transacties Tabblad (Uitschakelen op grote CLN-nodes)",invoice_expiry:"Factuurvervaldatum",invoice_expiry_label:"Factuurverloop (seconden)",fee_reserve:"Toegangsvergoeding Reserve",fee_reserve_msats:"Reserveringskosten in msats",fee_reserve_percent:"Reserveringskosten in procent",server_management:"Serverbeheer",base_url:"Basis-URL",base_url_label:"Statisch/Basis-URL voor de server",authentication:"Authenticatie",auth_token_expiry_label:"Token vervalt over minuten",auth_token_expiry_hint:"Tijd in minuten totdat de token verloopt",auth_allowed_methods_label:"Toegestane autorisatiemethoden",auth_allowed_methods_hint:"Selecteer autorisatiemethoden",auth_nostr_label:"Nostr Aanvraag-URL",auth_nostr_hint:"Absolute URL die de klanten zullen gebruiken om in te loggen.",auth_google_ci_label:"Google Client-ID",auth_google_ci_hint:"Zorg ervoor dat de geautoriseerde omleidings-URL's https://{domain}/api/v1/auth/google/token bevatten.",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"GitHub client-ID",auth_gh_client_id_hint:"Zorg ervoor dat de autorisatie-callback-URL is ingesteld op https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Clientgeheim",auth_keycloak_label:"Keycloak Ontdekking URL",auth_keycloak_ci_label:"Keycloak-client-ID",auth_keycloak_ci_hint:"Zorg ervoor dat de autorisatie callback-URL is ingesteld op https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak Clientgeheim",currency_settings:"Valuta-instellingen",allowed_currencies:"Toegestane valuta's",allowed_currencies_hint:"Beperk het aantal beschikbare fiatvaluta's",default_account_currency:"Standaardrekeningvaluta",default_account_currency_hint:"Standaardvaluta voor boekhouding",service_fee_label:"Servicekosten (%)",service_fee_hint:"Toeslag per transactie (%)",service_fee_max_label:"Servicekosten max (sats)",service_fee_max_hint:"Maximale servicekosten om in rekening te brengen in (sats)",fee_wallet:"Kosten Portemonnee",fee_wallet_label:"Kosten portemonnee (wallet ID)",fee_wallet_hint:"Wallet-ID om geld naar over te maken",disable_fee:"Kosten uitschakelen",disable_fee_internal:"Servicekosten uitschakelen voor interne betalingen",disable_fee_internal_desc:"Dienstenkosten uitschakelen voor interne Lightning-betalingen",ui_management:"UI-beheer",ui_site_title:"Site titel",ui_site_tagline:"Site-slogan",ui_elements_enable:"Elementen op de homepage inschakelen",ui_elements_disable:"Elementen op de homepage uitschakelen",ui_toggle_elements_tip:"Verwijder startpagina-elementen zoals 'werkt op' enz.",ui_site_description:"Sitebeschrijving",ui_site_description_hint:"Gebruik platte tekst, Markdown, of ruwe HTML",ui_default_wallet_name:"Standaard Wallet Naam",lnbits_wallet:"LNbits-portemonnee",denomination:"Denominatie",denomination_hint:"De naam voor de FakeWallet token",ui_qr_code_logo:"QR-code-logo",ui_qr_code_logo_hint:"URL naar logo-afbeelding in QR-code",ui_custom_badge:"Aangepaste badge",ui_custom_badge_label:"Aangepaste Badge 'GEBRUIK MET VOORZICHTIGHEID - LNbits-portemonnee is nog in BÈTA'",ui_custom_badge_color_label:"Aangepaste Badge Kleur",themes:"Thema's",themes_hint:"Kies thema's beschikbaar voor gebruikers",custom_logo:"Aangepast logo",custom_logo_hint:"URL naar logo-afbeelding",ad_space_title:"Advertentieruimte Titel",ad_space_title_label:"Ondersteund door",ad_slots:"Advertentieblokken",ad_slots_hint:"Ad URL en afbeeldingspad in CSV-formaat, extensies kunnen ervoor kiezen te honoreren",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Advertenties ingeschakeld",ads_disabled:"Advertenties uitgeschakeld",user_management:"Gebruikersbeheer",admin_users:"Beheerdersgebruikers",admin_users_hint:"Gebruikers met beheerdersrechten",admin_users_label:"Gebruikers-ID",allowed_users:"Toegestane gebruikers",allowed_users_hint:"Alleen deze gebruikers kunnen LNbits gebruiken",allowed_users_label:"Gebruikers-ID",allow_creation_user:"Sta het aanmaken van nieuwe gebruikers toe",allow_creation_user_desc:"Sta de aanmaak van nieuwe gebruikers op de indexpagina toe",components:"Componenten",long_running_endpoints:"Top 5 langlopende eindpunten",http_request_methods:"HTTP-aanvraagmethoden",http_response_codes:"HTTP-responscodes",request_details:"Aanvraagdetails",http_request_details:"HTTP-verzoekdetails"},window.localisation.we={confirm:"Ydw",server:"Gweinydd",theme:"Thema",site_customisation:"Addasu Safle",funding:"Arian fyndio",users:"Defnyddwyr",audit:"Archwilio",apps:"Apiau",channels:"Sianelau",transactions:"Trafodion",dashboard:"Panel Gweinyddol",node:"Nod",export_users:"Allfor Defnyddwyr",no_users:"Heb ganfod defnyddwyr",total_capacity:"Capasiti Cyfanswm",avg_channel_size:"Maint Sianel Cyf.",biggest_channel_size:"Maint Sianel Fwyaf",smallest_channel_size:"Maint Sianel Lleiaf",number_of_channels:"Nifer y Sianeli",active_channels:"Sianeli Gweithredol",connect_peer:"Cysylltu â Chymar",connect:"Cysylltu",open_channel:"Sianel Agored",open:"Agor",close_channel:"Cau Sianel",close:"cau",restart:"Ailgychwyn gweinydd",save:"Save",save_tooltip:"cadw eich newidiadau",credit_debit:"Credyd / Debyd",credit_hint:"Pwyswch Enter i gyfrif credyd",credit_label:"{denomination} i gredyd",credit_ok:"Credydu/dad-debydu llwyddiannus o gronfeydd rhithwir ({amount} sats). Mae taliadau yn dibynnu ar y cronfeydd gwirioneddol sydd ar y ffynhonnell ariannu.",restart_tooltip:"Ailgychwyn y gweinydd er mwyn i newidiadau ddod i rym",add_funds_tooltip:"Ychwanegu arian at waled.",reset_defaults:"Ailosod i`r rhagosodiadau",reset_defaults_tooltip:"Dileu pob gosodiad ac ailosod i`r rhagosodiadau.",download_backup:"Lawrlwytho copi wrth gefn cronfa ddata",name_your_wallet:"Enwch eich waled {name}",paste_invoice_label:"Gludwch anfoneb, cais am daliad neu god lnurl *",lnbits_description:"Yn hawdd iw sefydlu ac yn ysgafn, gall LNbits redeg ar unrhyw ffynhonnell ariannu rhwydwaith mellt a hyd yn oed LNbits ei hun! Gallwch redeg LNbits i chi`ch hun, neu gynnig datrysiad ceidwad i eraill yn hawdd. Mae gan bob waled ei allweddi API ei hun ac nid oes cyfyngiad ar nifer y waledi y gallwch eu gwneud. Mae gallu rhannu cronfeydd yn gwneud LNbits yn arf defnyddiol ar gyfer rheoli arian ac fel offeryn datblygu. Mae estyniadau yn ychwanegu ymarferoldeb ychwanegol at LNbits fel y gallwch arbrofi gydag ystod o dechnolegau blaengar ar y rhwydwaith mellt. Rydym wedi gwneud datblygu estyniadau mor hawdd â phosibl, ac fel prosiect ffynhonnell agored am ddim, rydym yn annog pobl i ddatblygu a chyflwyno eu rhai eu hunain.",export_to_phone:"Allforio i Ffôn gyda chod QR",export_to_phone_desc:"Mae`r cod QR hwn yn cynnwys URL eich waled gyda mynediad llawn. Gallwch ei sganio o`ch ffôn i agor eich waled oddi yno.",wallet:"Waled:",wallets:"Waledi",add_wallet:"Ychwanegu waled newydd",delete_wallet:"Dileu waled",delete_wallet_desc:"Bydd y waled gyfan hon yn cael ei dileu, ni fydd modd adennill yr arian.",rename_wallet:"Ailenwi waled",update_name:"Diweddaru enw",fiat_tracking:"Olrhain Fiat",currency:"Arian Cyfred",update_currency:"Diweddaru arian cyfred",press_to_claim:"Pwyswch i hawlio bitcoin",donate:"Rhoi",view_github:"Gweld ar GitHub",voidwallet_active:" Mae VoidWallet yn weithredol! Taliadau wedi`u hanalluogi",use_with_caution:"DEFNYDDIO GYDA GOFAL - mae waled {name} yn dal yn BETA",service_fee:"Ffi gwasanaeth: {amount} % y trafodiad",service_fee_max:"Ffi gwasanaeth: {amount} % y trafodiad (uchafswm {max} sats)",service_fee_tooltip:"Ffi gwasanaeth a godir gan weinyddwr gweinydd LNbits ym mhob trafodiad sy'n mynd allan",toggle_darkmode:"Toglo Modd Tywyll",payment_reactions:"Adweithiau Talu",view_swagger_docs:"Gweld dogfennau API LNbits Swagger",api_docs:"Dogfennau API",api_keys_api_docs:"URL y nod, allweddi API a dogfennau API",lnbits_version:"Fersiwn LNbits",runs_on:"Yn rhedeg ymlaen",paste:"Gludo",paste_from_clipboard:"Gludo o'r clipfwrdd",paste_request:"Gludo Cais",create_invoice:"Creu Anfoneb",camera_tooltip:"Defnyddio camera i sganio anfoneb/QR",export_csv:"Allforio i CSV",chart_tooltip:"Dangos siart",pending:"yn yr arfaeth",copy_invoice:"Copi anfoneb",withdraw_from:"Tynnu oddi ar",cancel:"Canslo",scan:"Sgan",read:"Darllen",pay:"Talu",memo:"Memo",date:"Dyddiad",payment_processing:"Prosesu taliad...",not_enough_funds:"Dim digon o arian!",search_by_tag_memo_amount:"Chwilio yn ôl tag, memo, swm",invoice_waiting:"Anfoneb yn aros i gael ei thalu",payment_received:"Taliad a Dderbyniwyd",payment_sent:"Taliad a Anfonwyd",receive:"derbyn",send:"anfon",outgoing_payment_pending:"Taliad sy`n aros yn yr arfaeth",drain_funds:"Cronfeydd Draenio",drain_funds_desc:"Cod QR Tynnu`n ôl LNURL yw hwn ar gyfer slurpio popeth o`r waled hon. Peidiwch â rhannu gyda neb. Mae`n gydnaws â balanceCheck a balanceNotify felly efallai y bydd eich waled yn tynnu`r arian yn barhaus o`r fan hon ar ôl y codiad cyntaf.",i_understand:"Rwy`n deall",copy_wallet_url:"Copi URL waled",disclaimer_dialog_title:"Pwysig!",disclaimer_dialog:"Swyddogaeth mewngofnodi i`w ryddhau mewn diweddariad yn y dyfodol, am y tro, gwnewch yn siŵr eich bod yn rhoi nod tudalen ar y dudalen hon ar gyfer mynediad i`ch waled yn y dyfodol! Mae`r gwasanaeth hwn yn BETA, ac nid ydym yn gyfrifol am bobl sy`n colli mynediad at arian.",no_transactions:"Dim trafodion wedi`u gwneud eto",manage:"Rheoli",exchanges:"Cyfnewidfeydd",extensions:"Estyniadau",no_extensions:"Nid oes gennych unrhyw estyniadau wedi'u gosod :(",created:"Crëwyd",search_extensions:"Chwilio estyniadau",extension_sources:"Ffynonellau Estyniad",ext_sources_hint:"Repoau o ble gellir lawrlwytho'r estyniadau",ext_sources_label:"URL Ffynhonnell (defnyddiwch ffynhonnell estyniad swyddogol LNbits yn unig, a ffynonellau y gallwch ymddiried ynddynt)",warning:"Rhybudd",repository:"Ystorfa",confirm_continue:"Ydych chi'n siŵr eich bod chi eisiau parhau?",manage_extension_details:"Gosod/dadosod estyniad",install:"Gosod",uninstall:"Dadgymhwyso",drop_db:"Dileu Data",enable:"Galluogi",pay_to_enable:"Talu I Alluogi",enable_extension_details:"Galluogi estyniad ar gyfer y defnyddiwr presennol",disable:"Analluogi",delete:"Dileu",installed:"Gosodwyd",activated:"Wedi'i actifadu",deactivated:"Anweithredol",release_notes:"Nodiadau Rhyddhau",activate_extension_details:"Gwneud estyniad ar gael/anar gael i ddefnyddwyr",featured:"Nodweddwyd",all:"Pob",only_admins_can_install:"Dim ond cyfrifon gweinyddwr all osod estyniadau",admin_only:"Dim ond Gweinyddwr",new_version:"Fersiwn Newydd",extension_depends_on:"Dibynnu ar:",extension_rating_soon:"Sgôr yn dod yn fuan",extension_installed_version:"Fersiwn wedi'i gosod",extension_uninstall_warning:"Rydych chi ar fin dileu'r estyniad ar gyfer pob defnyddiwr.",uninstall_confirm:"Ie, Dad-osod",extension_db_drop_info:"Bydd yr holl ddata ar gyfer yr estyniad yn cael ei ddileu'n barhaol. Does dim ffordd o dadwneud y weithrediad hwn!",extension_db_drop_warning:"Rydych chi ar fin dileu'r holl ddata ar gyfer yr estyniad. Teipiwch enw'r estyniad i barhau:",extension_required_lnbits_version:"Mae'r rhyddhau hwn yn gofyn o leiaf am fersiwn LNbits",min_version:"Isafswm (cynnwys)",max_version:"Uchafswm (wedi'i eithrio)",payment_hash:"Hais Taliad",fee:"Fee",amount:"swm",amount_sats:"Swm (sats)",tag:"Tag",unit:"Uned",description:"Disgrifiad",expiry:"dod i ben",webhook:"bachyn we",payment_proof:"prawf taliad",update:"Diweddariad",update_available:"Diweddariad {version} ar gael!",latest_update:"Rydych chi ar y fersiwn diweddaraf {version}.",notifications:"Hysbysiadau",no_notifications:"Dim hysbysiadau",notifications_disabled:"Hysbysiadau statws LNbits wedi'u analluogi.",enable_notifications:"Galluogi Hysbysiadau",enable_notifications_desc:"Os bydd wedi'i alluogi bydd yn nôl y diweddariadau Statws LNbits diweddaraf, fel digwyddiadau diogelwch a diweddariadau.",enable_watchdog:"Galluogi Watchdog",enable_watchdog_desc:"Os bydd yn cael ei alluogi bydd yn newid eich ffynhonnell ariannu i VoidWallet yn awtomatig os bydd eich balans yn is na balans LNbits. Bydd angen i chi alluogi â llaw ar ôl diweddariad.",watchdog_interval:"Amserlennu Gwylio",watchdog_interval_desc:"Pa mor aml y dylai'r dasg gefndir wirio am signal torri yn y gwarchodfa delta [node_balance - lnbits_balance] (mewn munudau).",watchdog_delta:"Watchdog Delta",watchdog_delta_desc:"Terfyn cyn i'r switshladd newid ffynhonnell ariannu i VoidWallet [lnbits_balance - node_balance > delta]",status:"Statws",notification_source:"Ffynhonnell Hysbysiad",notification_source_label:"URL Ffynhonnell (defnyddiwch yn unig ffynhonnell statws swyddogol LNbits, a ffynonellau y gallwch ymddiried ynddynt)",more:"mwy",less:"llai",releases:"Rhyddhau",watchdog:"Gwyliwr",server_logs:"Logiau Gweinydd",ip_blocker:"Rheolydd IP",security:"Diogelwch",security_tools:"Offer teclynnau diogelwch",block_access_hint:"Atal mynediad gan IP",allow_access_hint:"Caniatáu mynediad gan IP (bydd yn diystyru IPs sydd wedi'u blocio)",enter_ip:"Rhowch IP a gwasgwch enter",rate_limiter:"Cyfyngydd Cyfradd",wallet_limiter:"Cyfyngwr Waled",wallet_limit_max_withdraw_per_day:"Uchafswm tynnu’n ôl waled dyddiol mewn sats (0 i analluogi)",wallet_max_ballance:"Uchafswm balans y waled mewn sats (0 i analluogi)",wallet_limit_secs_between_trans:"Eiliadau lleiaf rhwng trafodion fesul waled (0 i analluogi)",number_of_requests:"Nifer y ceisiadau",time_unit:"Uned amser",minute:"munud",second:"ail",hour:"awr",disable_server_log:"Analluogi Log Gweinydd",enable_server_log:"Galluogi Log Gweinydd",coming_soon:"Nodwedd yn dod yn fuan",session_has_expired:"Mae eich sesiwn wedi dod i ben. Mewngofnodwch eto.",instant_access_question:"Eisiau mynediad ar unwaith?",login_with_user_id:"Mewngofnodi gyda ID y defnyddiwr",or:"neu",create_new_wallet:"Creu Waled Newydd",login_to_account:"Mewngofnodwch i'ch cyfrif",create_account:"Creu cyfrif",account_settings:"Gosodiadau Cyfrif",signin_with_nostr:"Parhewch gyda Nostr",signin_with_google:"Mewngofnodi gyda Google",signin_with_github:"Mewngofnodi gyda GitHub",signin_with_keycloak:"Mewngofnodi gyda Keycloak",username_or_email:"Defnyddiwr neu E-bost",password:"Cyfrinair",password_config:"Ffurfweddiad Cyfrinair",password_repeat:"Ailadrodd cyfrinair",change_password:"Newid Cyfrinair",update_credentials:"Diweddaru Cyfrifoldebau",update_pubkey:"Diweddaru Allwedd Gyhoeddus",set_password:"Gosod Cyfrinair",invalid_password:"Rhaid i'r cyfrinair gynnwys o leiaf 8 nod.",login:"Mewngofnodi",register:"Cofrestru",username:"Enw defnyddiwr",pubkey:"Allwedd Gyhoeddus",user_id:"ID Defnyddiwr",email:"E-bost",first_name:"Enw Cyntaf",last_name:"Cyfenw",picture:"Llun",verify_email:"Gwirio e-bost gyda",account:"Cyfrif",update_account:"Diweddaru Cyfrif",invalid_username:"Enw Defnyddiwr Annilys",auth_provider:"Darparwr Dilysiad",my_account:"Fy Nghyfrif",back:"Yn ôl",logout:"Allgofnodi",look_and_feel:"Edrych a Theimlo",toggle_gradient:"Toglo Graddiênt",gradient_background:"Cefndir Graddiant",language:"Iaith",color_scheme:"Cynllun Lliw",admin_settings:"Gosodiadau Gweinyddol",extension_cost:"Mae'r rhyddhad hwn yn gofyn am daliad o leiaf {cost} sats.",extension_paid_sats:"Rydych chi eisoes wedi talu {paid_sats} sats.",release_details_error:"Methu cael manylion y rhyddhau.",pay_from_wallet:"Talu o'r Waled",wallet_required:"Waled *",show_qr:"Dangos QR",retry_install:"Ailgeisio Gosod",new_payment:"Gwneud Taliad Newydd",update_payment:"Diweddarwch Dalu",already_paid_question:"Ydych chi eisoes wedi talu?",sell:"Gwerthu",sell_require:"Gofynnwch am daliad i alluogi estyniad",sell_info:"Mae angen taliad o leiaf {amount} sats ar yr estyniad {name} i'w alluogi.",hide_empty_wallets:"Cuddio waledau gwag",recheck:"Ailwirio",contributors:"Cyfranwyr",license:"Trwydded",reset_key:"Ailosod Allwedd",reset_password:"Ailosod Cyfrinair",border_choices:"Dewisiadau Ffin",select_all:"Dewis Pob Un",nfc_supported:"Cefnogir NFC",nfc_not_supported:"NFC heb ei Gefnogi",expire_date:"Dyddiad Dod i Ben:",hash:"Hash:",welcome_lnbits:"Croeso i LNbits",setup_su_account:"Sefydlu'r cyfrif Superuser isod.",create_ticker_converter:"Creu Trosi Ticiwr Arian",enable_audit:"Galluogi Archwilio",recommended:"Argymhellir",audit_desc:"Cofnodi ceisiadau HTTP yn ôl y hidlwyr penodedig",audit_record_req:"Cofnodi Corff y Cais",audit_record_warning:"Rhybudd:",audit_record_req_warning_1:"data cyfrinachol (fel cyfrineiriau) yn cael eu logio.",audit_record_req_warning_2:"mae gan y corff cais faint mawr.",audit_record_use:"Defnyddiwch ef gyda gofal.",audit_ip:"Cofnodi Cyfeiriad IP",audit_ip_desc:"Cofnodwch gyfeiriad IP y cleient",audit_path_params:"Cofnod Paramedrau Llwybr",audit_query_params:"Cofnod Paramedrau Holiannau",audit_http_methods:"Cynnwys Dulliau HTTP",audit_http_methods_hint:"Rhestr o ddulliau HTTP i'w cynnwys. Yn golygu pob un yw rhestrau gwag.",audit_http_methods_label:"Dulliau HTTP",audit_resp_codes:"Cynnwys Codau Ymateb HTTP",audit_resp_codes_hint:"Rhestr o godau HTTP i'w cynnwys (cydweddu regex). Mae rhestrau gwag yn golygu popeth. Ee: 4.*, 5.*",audit_resp_codes_label:"Cod Ymateb HTTP (regex)",audit_paths:"Cynnwys Llwybrau",audit_paths_hint:"Rhestr o lwybrau i'w cynnwys (cydweddiad rhegiwlar). Mae rhestr wag yn golygu pob un.",audit_paths_label:"Llwybr HTTP (regex)",audit_paths_exclude:"Eithrio Llwybrau",audit_paths_exclude_hint:"Rhestr o lwybrau i'w heithrio (cydweddu regex). Mae rhestr wag yn golygu dim.",audit_paths_exclude_label:"Llwybr HTTP (regex)",exchange_providers:"Darparwyr Cyfnewid",admin_extensions:"Estyniadau Gweinyddol",admin_extensions_label:"Estyniadau gweinyddu",admin_extensions_hint:"Dim ond defnyddiwr Estyniadau gyda braint gweinyddwr sy'n gallu defnyddio",user_default_extensions:"Rhyngwyneb Diofyn Defnyddiwr",user_default_extensions_label:"Estyniadau defnyddiwr",user_default_extensions_hint:"Estyniadau a fydd yn cael eu galluogi yn ddiofyn ar gyfer y defnyddwyr.",miscellanous:"Amrywiol",misc_disable_extensions:"Analluogi Estyniadau",misc_disable_extensions_label:"Analluogi'r holl estynniadau",misc_hide_api:"Cuddio API",misc_hide_api_label:"Yn cuddio api waled, gall estyniadau ddewis anrhydeddu",wallets_management:"Rheoli Waledau",funding_source_info:"Gwybodaeth am Ffynhonnell Ariannu",funding_source:"Ffynhonnell Ariannu: {wallet_class}",node_balance:"Cydbwysedd Nôd: {balance} sats",lnbits_balance:"Cydbwysedd LNbits: {balance} sats",funding_reserve_percent:"Cadw Canran: {percent} %",node_management:"Rheoli Nodau",node_management_not_supported:"Nid yw Rheoli Nodau yn cael ei gefnogi gan ffynhonnell ariannu weithredol",toggle_node_ui:"Node UI",toggle_public_node_ui:"UI Nod Cyhoeddus",toggle_transactions_node_ui:"Tab Trafodion (Analluoga ar nodau CLN mawr)",invoice_expiry:"Dyddiad Dod i Ben yr Anfoneb",invoice_expiry_label:"Darfod anfoneb (eiliadau)",fee_reserve:"Cadw Ffi",fee_reserve_msats:"Ffi cadw yn msats",fee_reserve_percent:"Ffioedd cadw mewn canran",server_management:"Rheoli Gweinyddwr",base_url:"Prif URL",base_url_label:"Url statig/sylfaen ar gyfer y gweinydd",authentication:"Dilysiad",auth_token_expiry_label:"Cofnodi munudau dod i ben",auth_token_expiry_hint:"Amser mewn munudau tan fod y tocyn yn dod i ben",auth_allowed_methods_label:"Dulliau awdurdodi a ganiateir",auth_allowed_methods_hint:"Dewiswch ddulliau awdurdodi",auth_nostr_label:"URL Cais Nostr",auth_nostr_hint:"URL absoliwt y bydd y cleientiaid yn ei ddefnyddio i fewngofnodi.",auth_google_ci_label:"ID Cleient Google",auth_google_ci_hint:"Sicrhewch fod yr URIs adnewyddu awdurdodedig yn cynnwys https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Cwsmer Google Dirgel",auth_gh_client_id_label:"ID Cleient GitHub",auth_gh_client_id_hint:"Gwnewch yn siŵr bod y URL galwad yn ôl awdurdodi wedi'i osod i https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Cudd-wybodaeth Cleient GitHub",auth_keycloak_label:"URL Darganfod Keycloak",auth_keycloak_ci_label:"ID Cleient Keycloak",auth_keycloak_ci_hint:"Gwnewch yn siŵr bod URL adalw awdurdodiad wedi'i osod i https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Cyfrinach Cleient Keycloak",currency_settings:"Gosodiadau Arian Cyfred",allowed_currencies:"Ariannau a Ganiateir",allowed_currencies_hint:"Cyfyngu nifer yr arian cyfred fiat sydd ar gael",default_account_currency:"Arian Cyfred Diofyn y Cyfrif",default_account_currency_hint:"Arian cyfred diofyn ar gyfer cyfrifyddu",service_fee_label:"Ffioedd gwasanaeth (%)",service_fee_hint:"Ffi a godir fesul trx (%)",service_fee_max_label:"Ffioedd gwasanaeth uchaf (sats)",service_fee_max_hint:"Uchafswm ffi gwasanaeth i godi mewn (sats)",fee_wallet:"Waled Ffioedd",fee_wallet_label:"Ffi waled (ID waled)",fee_wallet_hint:"ID Cwlt hon i anfon cronfeydd i",disable_fee:"Analluogi Ffi",disable_fee_internal:"Analluogi Ffi Gwasanaeth ar gyfer Taliadau Mewnol",disable_fee_internal_desc:"Analluogi Ffi Gwasanaeth ar gyfer Taliadau Mellt Mewnol",ui_management:"Rheoli UI",ui_site_title:"Teitl y Safle",ui_site_tagline:"Tagline'r Safle",ui_elements_enable:"Galluogi elfennau ar hafan",ui_elements_disable:"Analluoga elfennau ar y dudalen gartref",ui_toggle_elements_tip:"Tynn elfennau tudalen gartref fel 'yn rhedeg ar' ayyb.",ui_site_description:"Disgrifiad Safle",ui_site_description_hint:"Defnyddiwch destun plaen, Markdown, neu HTML crai",ui_default_wallet_name:"Enw Diofyn y Waled",lnbits_wallet:"Cwdyn LNbits",denomination:"Enwad",denomination_hint:"Enw'r token FakeWallet",ui_qr_code_logo:"Logo Cod QR",ui_qr_code_logo_hint:"URL i ddelwedd logo yn y cod QR",ui_custom_badge:"Bathodyn Personol",ui_custom_badge_label:"Bathodyn Custom 'DEFNYDDIO GYDA RHYBUDD - mae waled LNbits dal mewn BETA'",ui_custom_badge_color_label:"Lliw Bathodyn Personol",themes:"Themâu",themes_hint:"Dewiswch themâu sydd ar gael i ddefnyddwyr",custom_logo:"Logo Personol",custom_logo_hint:"URL i ddelwedd logo",ad_space_title:"Teitl Gofod Hysbysebu",ad_space_title_label:"Cefnogir gan",ad_slots:"Slotiau Hysbysebu",ad_slots_hint:"Ychwanegu url a llwybrau ffeil delwedd yn y fformat CSV, gall estyniadau ddewis i barchu",ad_slots_label:"url;url_delwedd_ysgafn;url_delwedd_tywyll, url...",ads_enabled:"Hysbysebion wedi'u Galluogi",ads_disabled:"Hysbysebion Wedi'u Analluogi",user_management:"Rheoli Defnyddwyr",admin_users:"Defnyddwyr Gweinyddol",admin_users_hint:"Defnyddwyr â breintiau gweinyddol",admin_users_label:"ID Defnyddiwr",allowed_users:"Defnyddwyr a Ganiateir",allowed_users_hint:"Dim ond y defnyddwyr hyn all ddefnyddio LNbits",allowed_users_label:"ID defnyddiwr",allow_creation_user:"Caniatáu creu defnyddwyr newydd",allow_creation_user_desc:"Caniatáu creu defnyddwyr newydd ar y dudalen fynegai",components:"Cydrannau",long_running_endpoints:"5 Pwynt Terfyn Hir-rhediad Uchaf",http_request_methods:"Dulliau Cais HTTP",http_response_codes:"Codau Ymateb HTTP",request_details:"Manylion y Cais",http_request_details:"Manylion Cais HTTP"},window.localisation.pt={confirm:"Sim",server:"Servidor",theme:"Tema",site_customisation:"Customização do Site",funding:"Financiamento",users:"Usuários",audit:"Auditoria",apps:"Aplicativos",channels:"Canais",transactions:"Transações",dashboard:"Painel de Controle",node:"Nó",export_users:"Exportar Usuários",no_users:"Nenhum usuário encontrado",total_capacity:"Capacidade Total",avg_channel_size:"Tamanho Médio do Canal",biggest_channel_size:"Maior Tamanho do Canal",smallest_channel_size:"Menor Tamanho de Canal",number_of_channels:"Número de Canais",active_channels:"Canais Ativos",connect_peer:"Conectar Par",connect:"Conectar",open_channel:"Canal Aberto",open:"Abrir",close_channel:"Fechar Canal",close:"Fechar",restart:"Reiniciar servidor",save:"Gravar",save_tooltip:"Gravar as alterações",credit_debit:"Crédito / Débito",credit_hint:"Pressione Enter para creditar a conta",credit_label:"{denomination} para creditar",credit_ok:"Sucesso ao creditar/debitar fundos virtuais ({amount} sats). Os pagamentos dependem dos fundos reais na fonte de financiamento.",restart_tooltip:"Reinicie o servidor para que as alterações tenham efeito",add_funds_tooltip:"Adicionar fundos a uma carteira.",reset_defaults:"Redefinir para padrões",reset_defaults_tooltip:"Apagar todas as configurações e redefinir para os padrões.",download_backup:"Fazer backup da base de dados",name_your_wallet:"Nomeie sua carteira {name}",paste_invoice_label:"Cole uma fatura, pedido de pagamento ou código lnurl *",lnbits_description:"Fácil de configurar e leve, o LNbits pode ser executado em qualquer fonte de financiamento da Lightning Network e até mesmo o LNbits em si! Você pode executar o LNbits para si mesmo ou oferecer facilmente uma solução de custódia para outros. Cada carteira tem suas próprias chaves de API e não há limite para o número de carteiras que você pode criar. Ser capaz de particionar fundos torna o LNbits uma ferramenta útil para gerenciamento de dinheiro e como uma ferramenta de desenvolvimento. As extensões adicionam funcionalidades extras ao LNbits para que você possa experimentar uma série de tecnologias de ponta na rede lightning. Nós tornamos o desenvolvimento de extensões o mais fácil possível e, como um projeto gratuito e de código aberto, incentivamos as pessoas a desenvolver e enviar as suas próprias.",export_to_phone:"Exportar para o telefone com código QR",export_to_phone_desc:"Este código QR contém a URL da sua carteira com acesso total. Você pode escaneá-lo do seu telefone para abrir sua carteira a partir dele.",wallet:"Carteira:",wallets:"Carteiras",add_wallet:"Adicionar nova carteira",delete_wallet:"Excluir carteira",delete_wallet_desc:"Toda a carteira será excluída, os fundos serão IRRECUPERÁVEIS.",rename_wallet:"Renomear carteira",update_name:"Atualizar nome",fiat_tracking:"Rastreamento Fiat",currency:"Moeda",update_currency:"Atualizar moeda",press_to_claim:"Pressione para solicitar bitcoin",donate:"Doar",view_github:"Ver no GitHub",voidwallet_active:"VoidWallet está ativo! Pagamentos desabilitados",use_with_caution:"USE COM CAUTELA - a carteira {name} ainda está em BETA",service_fee:"Taxa de serviço: {amount} % por transação",service_fee_max:"Taxa de serviço: {amount} % por transação (máximo de {max} sats)",service_fee_tooltip:"Taxa de serviço cobrada pelo administrador do servidor LNbits por transação de saída",toggle_darkmode:"Alternar modo escuro",payment_reactions:"Reações de Pagamento",view_swagger_docs:"Ver a documentação da API do LNbits Swagger",api_docs:"Documentação da API",api_keys_api_docs:"URL do Nó, chaves de API e documentação de API",lnbits_version:"Versão do LNbits",runs_on:"Executa em",paste:"Colar",paste_from_clipboard:"Colar da área de transferência",paste_request:"Colar Pedido",create_invoice:"Criar Fatura",camera_tooltip:"Usar a câmara para escanear uma fatura / QR",export_csv:"Exportar para CSV",chart_tooltip:"Mostrar gráfico",pending:"Pendente",copy_invoice:"Copiar fatura",withdraw_from:"Retirar de",cancel:"Cancelar",scan:"Escanear",read:"Ler",pay:"Pagar",memo:"Memo",date:"Data",payment_processing:"Processando pagamento...",not_enough_funds:"Fundos insuficientes!",search_by_tag_memo_amount:"Pesquisar por tag, memo, quantidade",invoice_waiting:"Fatura aguardando pagamento",payment_received:"Pagamento Recebido",payment_sent:"Pagamento Enviado",receive:"receber",send:"enviar",outgoing_payment_pending:"Pagamento de saída pendente",drain_funds:"Esvasiar carteira",drain_funds_desc:"Este é um código QR de saque LNURL para sacar tudo desta carteira. Não o partilhe com ninguém. É compatível com balanceCheck e balanceNotify para que a sua carteira possa continuar levantando os fundos continuamente daqui após o primeiro saque.",i_understand:"Eu entendo",copy_wallet_url:"Copiar URL da carteira",disclaimer_dialog_title:"Importante!",disclaimer_dialog:"Funcionalidade de login a ser lançada numa atualização futura, por enquanto, certifique-se que marca esta página para acesso futuro à sua carteira! Este serviço está em BETA, e não nos responsabilizamos por pessoas que perderem o acesso aos fundos.",no_transactions:"Ainda não foram feitas transações",manage:"Gerir",exchanges:"Trocas",extensions:"Extensões",no_extensions:"Não há nenhuma extensão instalada :(",created:"Criado",search_extensions:"Pesquisar extensões",extension_sources:"Fontes de Extensão",ext_sources_hint:"Repositórios de onde as extensões podem ser baixadas",ext_sources_label:"URL de origem (use apenas a fonte oficial da extensão LNbits e fontes em que você confia)",warning:"Aviso",repository:"Repositório",confirm_continue:"Tem certeza de que deseja continuar?",manage_extension_details:"Instalar/desinstalar extensão",install:"Instalar",uninstall:"Desinstalar",drop_db:"Remover Dados",enable:"Ativar",pay_to_enable:"Pagar para Ativar",enable_extension_details:"Ativar extensão para o usuário atual",disable:"Desativar",delete:"Excluir",installed:"Instalado",activated:"Ativado",deactivated:"Desativado",release_notes:"Notas de Lançamento",activate_extension_details:"Torne a extensão disponível/indisponível para usuários",featured:"Destacado",all:"Todos",only_admins_can_install:"Apenas contas de administrador podem instalar extensões.",admin_only:"Apenas para administradores",new_version:"Nova Versão",extension_depends_on:"Depende de:",extension_rating_soon:"Avaliações em breve",extension_installed_version:"Versão instalada",extension_uninstall_warning:"Você está prestes a remover a extensão para todos os usuários.",uninstall_confirm:"Sim, Desinstalar",extension_db_drop_info:"Todos os dados da extensão serão permanentemente excluídos. Não há como desfazer essa operação!",extension_db_drop_warning:"Você está prestes a remover todos os dados para a extensão. Por favor, digite o nome da extensão para continuar:",extension_required_lnbits_version:"Esta versão requer pelo menos a versão LNbits",min_version:"Mínimo (incluído)",max_version:"Máximo (excluído)",payment_hash:"Hash de pagamento",fee:"Taxa",amount:"Quantidade",amount_sats:"Quantidade (sats)",tag:"Etiqueta",unit:"Unidade",description:"Descrição",expiry:"Validade",webhook:"Webhook",payment_proof:"Comprovativo de pagamento",update:"Atualizar",update_available:"Atualização {version} disponível!",latest_update:"Você está na última versão {version}.",notifications:"Notificações",no_notifications:"Sem notificações",notifications_disabled:"As notificações de status do LNbits estão desativadas.",enable_notifications:"Ativar Notificações",enable_notifications_desc:"Se ativado, ele buscará as últimas atualizações de status do LNbits, como incidentes de segurança e atualizações.",enable_watchdog:"Ativar Watchdog",enable_watchdog_desc:"Se ativado, mudará automaticamente a sua fonte de financiamento para VoidWallet caso o seu saldo seja inferior ao saldo LNbits. Você precisará ativar manualmente após uma atualização.",watchdog_interval:"Intervalo do Watchdog",watchdog_interval_desc:"Com que frequência a tarefa de fundo deve verificar um sinal de desligamento no delta do watchdog [node_balance - lnbits_balance] (em minutos).",watchdog_delta:"Observador Delta",watchdog_delta_desc:"Limite antes que o killswitch altere a fonte de financiamento para VoidWallet [lnbits_balance - node_balance > delta]",status:"Estado",notification_source:"Fonte de Notificação",notification_source_label:"URL de Origem (use apenas a fonte oficial de status do LNbits e fontes em que confia)",more:"mais",less:"menos",releases:"Lançamentos",watchdog:"Cão de guarda",server_logs:"Registros do Servidor",ip_blocker:"Bloqueador de IP",security:"Segurança",security_tools:"Ferramentas de segurança",block_access_hint:"Bloquear acesso por IP",allow_access_hint:"Permitir acesso por IP (substituirá IPs bloqueados)",enter_ip:"Digite o IP e pressione enter.",rate_limiter:"Limitador de Taxa",wallet_limiter:"Limitador de Carteira",wallet_limit_max_withdraw_per_day:"Limite diário máximo de saque da carteira em sats (0 para desativar)",wallet_max_ballance:"Saldo máximo da carteira em sats (0 para desativar)",wallet_limit_secs_between_trans:"Minutos seg. entre transações por carteira (0 para desativar)",number_of_requests:"Número de solicitações",time_unit:"Unidade de tempo",minute:"minuto",second:"segundo",hour:"hora",disable_server_log:"Desativar Log do Servidor",enable_server_log:"Ativar Log do Servidor",coming_soon:"Funcionalidade em breve",session_has_expired:"Sua sessão expirou. Por favor, faça login novamente.",instant_access_question:"Quer acesso imediato?",login_with_user_id:"Entrar com ID do usuário",or:"ou",create_new_wallet:"Criar Nova Carteira",login_to_account:"Faça login na sua conta",create_account:"Criar conta",account_settings:"Configurações da Conta",signin_with_nostr:"Continue com Nostr",signin_with_google:"Entrar com o Google",signin_with_github:"Entrar com o GitHub",signin_with_keycloak:"Entrar com o Keycloak",username_or_email:"Nome de usuário ou Email",password:"Senha",password_config:"Configuração de Senha",password_repeat:"Repetição de senha",change_password:"Alterar Senha",update_credentials:"Atualizar Credenciais",update_pubkey:"Atualizar Chave Pública",set_password:"Definir Senha",invalid_password:"A senha deve ter pelo menos 8 caracteres",login:"Entrar",register:"Registrar",username:"Nome de usuário",pubkey:"Chave Pública",user_id:"ID do Usuário",email:"E-mail",first_name:"Nome próprio",last_name:"Sobrenome",picture:"Foto",verify_email:"Verifique o e-mail com",account:"Conta",update_account:"Atualizar Conta",invalid_username:"Nome de usuário inválido",auth_provider:"Provedor de Autenticação",my_account:"Minha Conta",back:"Voltar",logout:"Sair",look_and_feel:"Aparência e Sensação",toggle_gradient:"Alternar Gradiente",gradient_background:"Fundo Gradiente",language:"Idioma",color_scheme:"Esquema de Cores",admin_settings:"Configurações de Administração",extension_cost:"Este lançamento requer um pagamento mínimo de {cost} sats.",extension_paid_sats:"Você já pagou {paid_sats} sats.",release_details_error:"Não é possível obter os detalhes da versão.",pay_from_wallet:"Pague da Carteira",wallet_required:"Carteira *",show_qr:"Exibir QR",retry_install:"Reinstalar Tente Novamente",new_payment:"Realizar Novo Pagamento",update_payment:"Atualizar Pagamento",already_paid_question:"Já pagou?",sell:"Vender",sell_require:"Peça pagamento para habilitar a extensão",sell_info:"A extensão {name} requer um pagamento mínimo de {amount} sats para habilitar.",hide_empty_wallets:"Ocultar carteiras vazias",recheck:"Rever",contributors:"Colaboradores",license:"Licença",reset_key:"Redefinir Chave",reset_password:"Redefinir Senha",border_choices:"Opções de Borda",select_all:"Selecionar tudo",nfc_supported:"NFC Suportado",nfc_not_supported:"NFC não suportado",expire_date:"Data de Expiração:",hash:"Hash:",welcome_lnbits:"Bem-vindo ao LNbits",setup_su_account:"Configure a conta Superusuário abaixo.",create_ticker_converter:"Criar Conversor de Moeda Ticker",enable_audit:"Ativar Auditoria",recommended:"Recomendado",audit_desc:"Registre solicitações HTTP de acordo com os filtros especificados",audit_record_req:"Registrar Corpo da Solicitação",audit_record_warning:"Aviso:",audit_record_req_warning_1:"dados confidenciais (como senhas) serão registrados.",audit_record_req_warning_2:"o corpo da solicitação pode ter um tamanho grande.",audit_record_use:"Use com cautela.",audit_ip:"Registrar Endereço IP",audit_ip_desc:"Registre o endereço IP do cliente",audit_path_params:"Registrar parâmetros de caminho",audit_query_params:"Registrar Parâmetros de Consulta",audit_http_methods:"Incluir métodos HTTP",audit_http_methods_hint:"Lista de métodos HTTP a serem incluídos. Listas vazias significam todos.",audit_http_methods_label:"Métodos HTTP",audit_resp_codes:"Incluir Códigos de Resposta HTTP",audit_resp_codes_hint:"Lista de códigos HTTP a serem incluídos (correspondência com expressões regulares). Listas vazias significam todos. Ex: 4.*, 5.*",audit_resp_codes_label:"Código de resposta HTTP (regex)",audit_paths:"Incluir Caminhos",audit_paths_hint:"Lista de caminhos a serem incluídos (correspondência regex). Lista vazia significa todos.",audit_paths_label:"Caminho HTTP (regex)",audit_paths_exclude:"Excluir Caminhos",audit_paths_exclude_hint:"Lista de caminhos a serem excluídos (correspondência com regex). Lista vazia significa nenhum.",audit_paths_exclude_label:"Caminho HTTP (regex)",exchange_providers:"Provedores de Câmbio",admin_extensions:"Extensões do Administrador",admin_extensions_label:"Extensões administrativas",admin_extensions_hint:"Somente usuários com privilégios de administrador podem usar extensões.",user_default_extensions:"Extensões Padrão do Usuário",user_default_extensions_label:"Extensões do usuário",user_default_extensions_hint:"Extensões que serão ativadas por padrão para os usuários.",miscellanous:"Diversos",misc_disable_extensions:"Desativar Extensões",misc_disable_extensions_label:"Desativar todas as extensões",misc_hide_api:"Ocultar API",misc_hide_api_label:"Oculta a API da carteira, extensões podem optar por honrar",wallets_management:"Gestão de Carteiras",funding_source_info:"Informações da Fonte de Financiamento",funding_source:"Fonte de Financiamento: {wallet_class}",node_balance:"Saldo do Nó: {balance} sats",lnbits_balance:"Saldo do LNbits: {balance} sats",funding_reserve_percent:"Reserve Percentagem: {percent} %",node_management:"Gerenciamento de Nós",node_management_not_supported:"Gerenciamento de nós não suportado pela fonte de financiamento ativa",toggle_node_ui:"Interface do Usuário de Nó",toggle_public_node_ui:"Interface Pública do Nó",toggle_transactions_node_ui:"Aba de Transações (Desativar em nós grandes do CLN)",invoice_expiry:"Validade da Fatura",invoice_expiry_label:"Expiração da fatura (segundos)",fee_reserve:"Reserva de Taxa",fee_reserve_msats:"Taxa de reserva em msats",fee_reserve_percent:"Taxa de reserva em porcentagem",server_management:"Gerenciamento de Servidor",base_url:"URL base",base_url_label:"URL estático/base para o servidor",authentication:"Autenticação",auth_token_expiry_label:"Minutos de expiração do token",auth_token_expiry_hint:"Tempo em minutos até que o token expire",auth_allowed_methods_label:"Métodos de autorização permitidos",auth_allowed_methods_hint:"Selecione os métodos de autorização",auth_nostr_label:"URL de Solicitação Nostr",auth_nostr_hint:"URL absoluta que os clientes usarão para fazer login.",auth_google_ci_label:"ID do Cliente do Google",auth_google_ci_hint:"Certifique-se de que os URIs de redirecionamento autorizados contenham https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Segredo do Cliente do Google",auth_gh_client_id_label:"ID do Cliente do GitHub",auth_gh_client_id_hint:"Certifique-se de que a URL de retorno de chamada de autorização esteja definida como https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Cliente Secreto do GitHub",auth_keycloak_label:"URL de Descoberta do Keycloak",auth_keycloak_ci_label:"ID do Cliente do Keycloak",auth_keycloak_ci_hint:"Certifique-se de que o URL de retorno de chamada de autorização esteja definido como https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Segredo do Cliente do Keycloak",currency_settings:"Configurações de Moeda",allowed_currencies:"Moedas Permitidas",allowed_currencies_hint:"Limite o número de moedas fiduciárias disponíveis",default_account_currency:"Moeda Padrão da Conta",default_account_currency_hint:"Moeda padrão para contabilidade",service_fee_label:"Taxa de serviço (%)",service_fee_hint:"Taxa cobrada por transação (%)",service_fee_max_label:"Taxa de serviço máx (sats)",service_fee_max_hint:"Taxa máxima de serviço a cobrar em (sats)",fee_wallet:"Carteira de Taxas",fee_wallet_label:"Carteira de taxa (ID da carteira)",fee_wallet_hint:"ID da carteira para enviar fundos para",disable_fee:"Desativar taxa",disable_fee_internal:"Desativar Taxa de Serviço para Pagamentos Internos",disable_fee_internal_desc:"Desativar Taxa de Serviço para Pagamentos Internos Lightning",ui_management:"Gestão de UI",ui_site_title:"Título do Site",ui_site_tagline:"Tagline do site",ui_elements_enable:"Ativar elementos na página inicial",ui_elements_disable:"Desativar elementos na página inicial",ui_toggle_elements_tip:"Remova elementos da homepage como 'executa em' etc.",ui_site_description:"Descrição do Site",ui_site_description_hint:"Use texto simples, Markdown ou HTML bruto",ui_default_wallet_name:"Nome Padrão da Carteira",lnbits_wallet:"Carteira LNbits",denomination:"Denominação",denomination_hint:"O nome para o token FakeWallet",ui_qr_code_logo:"Logo do Código QR",ui_qr_code_logo_hint:"URL para imagem do logotipo no código QR",ui_custom_badge:"Distintivo Personalizado",ui_custom_badge_label:"Emblema Personalizado 'USE COM CAUTELA - A carteira LNbits ainda está em BETA'",ui_custom_badge_color_label:"Cor Personalizada do Distintivo",themes:"Temas",themes_hint:"Escolha os temas disponíveis para os usuários",custom_logo:"Logotipo Personalizado",custom_logo_hint:"URL para imagem do logotipo",ad_space_title:"Título do Espaço Publicitário",ad_space_title_label:"Suportado por",ad_slots:"Espaços Publicitários",ad_slots_hint:"Adicionar URL e caminhos de arquivo de imagem no formato CSV, extensões podem optar por respeitar",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Anúncios Ativados",ads_disabled:"Anúncios Desativados",user_management:"Gestão de Usuários",admin_users:"Usuários Administrativos",admin_users_hint:"Usuários com privilégios de administrador",admin_users_label:"ID do Usuário",allowed_users:"Usuários Permitidos",allowed_users_hint:"Somente estes usuários podem usar LNbits",allowed_users_label:"ID do usuário",allow_creation_user:"Permitir a criação de novos usuários",allow_creation_user_desc:"Permitir a criação de novos usuários na página inicial",components:"Componentes",long_running_endpoints:"Principais 5 Endpoints de Longa Execução",http_request_methods:"Métodos de Requisição HTTP",http_response_codes:"Códigos de Resposta HTTP",request_details:"Detalhes da solicitação",http_request_details:"Detalhes da Solicitação HTTP"},window.localisation.br={confirm:"Sim",server:"Servidor",theme:"Tema",site_customisation:"Customização do Site",funding:"Financiamento",users:"Usuários",audit:"Auditoria",apps:"Aplicativos",channels:"Canais",transactions:"Transações",dashboard:"Painel de Controle",node:"Nó",export_users:"Exportar Usuários",no_users:"Nenhum usuário encontrado",total_capacity:"Capacidade Total",avg_channel_size:"Tamanho médio do canal",biggest_channel_size:"Maior Tamanho de Canal",smallest_channel_size:"Tamanho Mínimo do Canal",number_of_channels:"Número de Canais",active_channels:"Canais Ativos",connect_peer:"Conectar Par",connect:"Conectar",open_channel:"Canal Aberto",open:"Abrir",close_channel:"Fechar Canal",close:"Fechar",restart:"Reiniciar servidor",save:"Salvar",save_tooltip:"Salvar suas alterações",credit_debit:"Crédito / Débito",credit_hint:"Pressione Enter para creditar a conta",credit_label:"{denomination} para creditar",credit_ok:"Sucesso ao creditar/debitar fundos virtuais ({amount} sats). Os pagamentos dependem dos fundos reais na fonte de financiamento.",restart_tooltip:"Reinicie o servidor para que as alterações tenham efeito",add_funds_tooltip:"Adicionar fundos a uma carteira.",reset_defaults:"Redefinir para padrões",reset_defaults_tooltip:"Apagar todas as configurações e redefinir para os padrões.",download_backup:"Fazer backup do banco de dados",name_your_wallet:"Nomeie sua carteira {name}",paste_invoice_label:"Cole uma fatura, pedido de pagamento ou código lnurl *",lnbits_description:"Fácil de configurar e leve, o LNbits pode ser executado em qualquer fonte de financiamento da Lightning Network e até mesmo o LNbits em si! Você pode executar o LNbits para si mesmo ou oferecer facilmente uma solução de custódia para outros. Cada carteira tem suas próprias chaves de API e não há limite para o número de carteiras que você pode criar. Ser capaz de particionar fundos torna o LNbits uma ferramenta útil para gerenciamento de dinheiro e como uma ferramenta de desenvolvimento. As extensões adicionam funcionalidades extras ao LNbits para que você possa experimentar uma série de tecnologias de ponta na rede lightning. Nós tornamos o desenvolvimento de extensões o mais fácil possível e, como um projeto gratuito e de código aberto, incentivamos as pessoas a desenvolver e enviar as suas próprias.",export_to_phone:"Exportar para o telefone com código QR",export_to_phone_desc:"Este código QR contém a URL da sua carteira com acesso total. Você pode escaneá-lo do seu telefone para abrir sua carteira a partir dele.",wallet:"Carteira:",wallets:"Carteiras",add_wallet:"Adicionar nova carteira",delete_wallet:"Excluir carteira",delete_wallet_desc:"Toda a carteira será excluída, os fundos serão IRRECUPERÁVEIS.",rename_wallet:"Renomear carteira",update_name:"Atualizar nome",fiat_tracking:"Rastreamento Fiat",currency:"Moeda",update_currency:"Atualizar moeda",press_to_claim:"Pressione para solicitar bitcoin",donate:"Doar",view_github:"Ver no GitHub",voidwallet_active:"VoidWallet está ativo! Pagamentos desabilitados",use_with_caution:"USE COM CAUTELA - a carteira {name} ainda está em BETA",service_fee:"Taxa de serviço: {amount} % por transação",service_fee_max:"Taxa de serviço: {amount} % por transação (máx {max} sats)",service_fee_tooltip:"Taxa de serviço cobrada pelo administrador do servidor LNbits por transação de saída",toggle_darkmode:"Alternar modo escuro",payment_reactions:"Reações de Pagamento",view_swagger_docs:"Ver a documentação da API do LNbits Swagger",api_docs:"Documentação da API",api_keys_api_docs:"URL do Node, chaves da API e documentação da API",lnbits_version:"Versão do LNbits",runs_on:"Executa em",paste:"Colar",paste_from_clipboard:"Cole do clipboard",paste_request:"Colar Pedido",create_invoice:"Criar Fatura",camera_tooltip:"Usar a câmara para escanear uma fatura / QR",export_csv:"Exportar para CSV",chart_tooltip:"Mostrar gráfico",pending:"Pendente",copy_invoice:"Copiar fatura",withdraw_from:"Sacar de",cancel:"Cancelar",scan:"Escanear",read:"Ler",pay:"Pagar",memo:"Memo",date:"Data",payment_processing:"Processando pagamento...",not_enough_funds:"Fundos insuficientes!",search_by_tag_memo_amount:"Pesquisar por tag, memo, quantidade",invoice_waiting:"Fatura aguardando pagamento",payment_received:"Pagamento Recebido",payment_sent:"Pagamento Enviado",receive:"receber",send:"enviar",outgoing_payment_pending:"Pagamento pendente de saída",drain_funds:"Drenar Fundos",drain_funds_desc:"Este é um código QR de retirada do LNURL para sugar tudo desta carteira. Não compartilhe com ninguém. É compatível com balanceCheck e balanceNotify para que sua carteira possa continuar retirando os fundos continuamente daqui após a primeira retirada.",i_understand:"Eu entendo",copy_wallet_url:"Copiar URL da carteira",disclaimer_dialog_title:"Importante!",disclaimer_dialog:"Funcionalidade de login a ser lançada em uma atualização futura, por enquanto, certifique-se de marcar esta página para acesso futuro à sua carteira! Este serviço está em BETA, e não nos responsabilizamos por pessoas que perderem o acesso aos fundos.",no_transactions:"Ainda não foram feitas transações",manage:"Gerenciar",exchanges:"Bolsas de valores",extensions:"Extensões",no_extensions:"Você não possui nenhuma extensão instalada :(",created:"Criado",search_extensions:"Extensões de pesquisa",extension_sources:"Fontes de Extensão",ext_sources_hint:"Repositórios de onde as extensões podem ser baixadas",ext_sources_label:"URL de origem (use apenas a fonte oficial da extensão LNbits e fontes confiáveis)",warning:"Aviso",repository:"Repositório",confirm_continue:"Você tem certeza de que deseja continuar?",manage_extension_details:"Instalar/desinstalar extensão",install:"Instalar",uninstall:"Desinstalar",drop_db:"Remover Dados",enable:"Ativar",pay_to_enable:"Pague para Habilitar",enable_extension_details:"Ativar extensão para o usuário atual",disable:"Desativar",delete:"Excluir",installed:"Instalado",activated:"Ativado",deactivated:"Desativado",release_notes:"Notas de Lançamento",activate_extension_details:"Tornar a extensão disponível/indisponível para usuários",featured:"Destacado",all:"Tudo",only_admins_can_install:"Apenas contas de administrador podem instalar extensões.",admin_only:"Apenas para Administração",new_version:"Nova Versão",extension_depends_on:"Depende de:",extension_rating_soon:"Avaliações estarão disponíveis em breve",extension_installed_version:"Versão instalada",extension_uninstall_warning:"Você está prestes a remover a extensão para todos os usuários.",uninstall_confirm:"Sim, Desinstalar",extension_db_drop_info:"Todos os dados da extensão serão permanentemente excluídos. Não há como desfazer essa operação!",extension_db_drop_warning:"Você está prestes a remover todos os dados para a extensão. Por favor, digite o nome da extensão para continuar:",extension_required_lnbits_version:"Esta versão requer no mínimo a versão do LNbits",min_version:"Mínimo (incluído)",max_version:"Máximo (excluído)",payment_hash:"Hash de pagamento",fee:"Taxa",amount:"Quantidade",amount_sats:"Quantidade (sats)",tag:"Etiqueta",unit:"Unidade",description:"Descrição",expiry:"Validade",webhook:"Webhook",payment_proof:"Comprovante de pagamento",update:"Atualizar",update_available:"Atualização {version} disponível!",latest_update:"Você está na versão mais recente {version}.",notifications:"Notificações",no_notifications:"Sem notificações",notifications_disabled:"As notificações de status do LNbits estão desativadas.",enable_notifications:"Ativar notificações",enable_notifications_desc:"Se ativado, ele buscará as últimas atualizações de status do LNbits, como incidentes de segurança e atualizações.",enable_watchdog:"Ativar Watchdog",enable_watchdog_desc:"Se ativado, ele mudará automaticamente sua fonte de financiamento para VoidWallet se o seu saldo for inferior ao saldo do LNbits. Você precisará ativar manualmente após uma atualização.",watchdog_interval:"Intervalo do Watchdog",watchdog_interval_desc:"Com que frequência a tarefa de fundo deve verificar um sinal de interrupção no delta do monitor [node_balance - lnbits_balance] (em minutos).",watchdog_delta:"Observador Delta",watchdog_delta_desc:"Limite antes da mudança do mecanismo de segurança alterar a fonte de financiamento para VoidWallet [lnbits_balance - node_balance > delta]",status:"Estado",notification_source:"Fonte de Notificação",notification_source_label:"URL de origem (use apenas a fonte de status oficial do LNbits e fontes de confiança)",more:"mais",less:"menos",releases:"Lançamentos",watchdog:"Cão de guarda",server_logs:"Registros do Servidor",ip_blocker:"Bloqueador de IP",security:"Segurança",security_tools:"Ferramentas de segurança",block_access_hint:"Bloquear acesso por IP",allow_access_hint:"Permitir acesso por IP (substituirá os IPs bloqueados)",enter_ip:"Digite o IP e pressione enter",rate_limiter:"Limitador de Taxa",wallet_limiter:"Limitador de Carteira",wallet_limit_max_withdraw_per_day:"Retirada máxima diária da carteira em sats (0 para desativar)",wallet_max_ballance:"Saldo máximo da carteira em sats (0 para desativar)",wallet_limit_secs_between_trans:"Minutos e segundos entre transações por carteira (0 para desativar)",number_of_requests:"Número de solicitações",time_unit:"Unidade de tempo",minute:"minuto",second:"segundo",hour:"hora",disable_server_log:"Desativar Log do Servidor",enable_server_log:"Ativar Registro do Servidor",coming_soon:"Funcionalidade em breve",session_has_expired:"Sua sessão expirou. Por favor, faça login novamente.",instant_access_question:"Quer acesso imediato?",login_with_user_id:"Faça login com ID do usuário",or:"ou",create_new_wallet:"Criar Nova Carteira",login_to_account:"Faça login na sua conta",create_account:"Criar conta",account_settings:"Configurações da Conta",signin_with_nostr:"Continuar com Nostr",signin_with_google:"Entrar com o Google",signin_with_github:"Entrar com GitHub",signin_with_keycloak:"Entrar com Keycloak",username_or_email:"Nome de usuário ou E-mail",password:"Senha",password_config:"Configuração de Senha",password_repeat:"Repetição de senha",change_password:"Alterar Senha",update_credentials:"Atualizar credenciais",update_pubkey:"Atualizar Chave Pública",set_password:"Definir Senha",invalid_password:"A senha deve ter pelo menos 8 caracteres",login:"Entrar",register:"Registrar",username:"Nome de usuário",pubkey:"Chave Pública",user_id:"ID do Usuário",email:"E-mail",first_name:"Primeiro Nome",last_name:"Sobrenome",picture:"Foto",verify_email:"Verifique o e-mail com",account:"Conta",update_account:"Atualizar Conta",invalid_username:"Nome de usuário inválido",auth_provider:"Provedor de Autenticação",my_account:"Minha Conta",back:"Voltar",logout:"Sair",look_and_feel:"Aparência",toggle_gradient:"Alternar Gradiente",gradient_background:"Fundo em Degradê",language:"Idioma",color_scheme:"Esquema de Cores",admin_settings:"Configurações do Administrador",extension_cost:"Este lançamento requer um pagamento mínimo de {cost} sats.",extension_paid_sats:"Você já pagou {paid_sats} sats.",release_details_error:"Não é possível obter os detalhes da versão.",pay_from_wallet:"Pagar com a Carteira",wallet_required:"Carteira *",show_qr:"Exibir QR",retry_install:"Repetir Instalação",new_payment:"Efetuar Novo Pagamento",update_payment:"Atualizar Pagamento",already_paid_question:"Você já pagou?",sell:"Vender",sell_require:"Peça pagamento para habilitar a extensão",sell_info:"A extensão {name} requer um pagamento mínimo de {amount} sats para habilitar.",hide_empty_wallets:"Ocultar carteiras vazias",recheck:"Verificar novamente",contributors:"Contribuidores",license:"Licença",reset_key:"Redefinir Chave",reset_password:"Redefinir senha",border_choices:"Opções de Borda",select_all:"Selecionar tudo",nfc_supported:"Compatível com NFC",nfc_not_supported:"NFC não suportado",expire_date:"Data de Expiração:",hash:"Hash:",welcome_lnbits:"Bem-vindo ao LNbits",setup_su_account:"Configure a conta Superuser abaixo.",create_ticker_converter:"Criar Conversor de Ticker de Moeda",enable_audit:"Habilitar Auditoria",recommended:"Recomendado",audit_desc:"Gravar solicitações HTTP de acordo com os filtros especificados",audit_record_req:"Gravar Corpo da Requisição",audit_record_warning:"Aviso:",audit_record_req_warning_1:"dados confidenciais (como senhas) serão registrados.",audit_record_req_warning_2:"o corpo da solicitação pode ter um tamanho grande.",audit_record_use:"Use com cuidado.",audit_ip:"Registrar endereço IP",audit_ip_desc:"Registre o endereço IP do cliente",audit_path_params:"Registrar Parâmetros de Caminho",audit_query_params:"Registrar Parâmetros de Consulta",audit_http_methods:"Incluir métodos HTTP",audit_http_methods_hint:"Lista de métodos HTTP a serem incluídos. Listas vazias significam todos.",audit_http_methods_label:"Métodos HTTP",audit_resp_codes:"Incluir Códigos de Resposta HTTP",audit_resp_codes_hint:"Lista de códigos HTTP a serem incluídos (correspondência regex). Listas vazias significam todos. Ex: 4.*, 5.*",audit_resp_codes_label:"Código de resposta HTTP (regex)",audit_paths:"Incluir Caminhos",audit_paths_hint:"Lista de caminhos a serem incluídos (correspondência de regex). Lista vazia significa todos.",audit_paths_label:"Caminho HTTP (regex)",audit_paths_exclude:"Excluir Caminhos",audit_paths_exclude_hint:"Lista de caminhos a serem excluídos (correspondência regex). Lista vazia significa nenhum.",audit_paths_exclude_label:"Caminho HTTP (regex)",exchange_providers:"Provedores de Câmbio",admin_extensions:"Extensões de Administração",admin_extensions_label:"Extensões de administração",admin_extensions_hint:"Somente usuários com privilégios de administrador podem usar extensões.",user_default_extensions:"Extensões Padrão do Usuário",user_default_extensions_label:"Extensões do usuário",user_default_extensions_hint:"Extensões que serão ativadas por padrão para os usuários.",miscellanous:"Diversos",misc_disable_extensions:"Desativar extensões",misc_disable_extensions_label:"Desativar todas as extensões",misc_hide_api:"Ocultar API",misc_hide_api_label:"Oculta a API de carteira, extensões podem optar por honrar",wallets_management:"Gerenciamento de Carteiras",funding_source_info:"Informações da Fonte de Financiamento",funding_source:"Fonte de Financiamento: {wallet_class}",node_balance:"Saldo do Nó: {balance} sats",lnbits_balance:"Saldo do LNbits: {balance} sats",funding_reserve_percent:"Reserve Percentual: {percent} %",node_management:"Gerenciamento de Nós",node_management_not_supported:"Gerenciamento de nó não suportado pela fonte de financiamento ativa",toggle_node_ui:"Interface do Nó",toggle_public_node_ui:"Interface Pública do Nó",toggle_transactions_node_ui:"Guia de Transações (Desativar em nós grandes CLN)",invoice_expiry:"Expiração da Fatura",invoice_expiry_label:"Validade da fatura (segundos)",fee_reserve:"Reserva de Taxa",fee_reserve_msats:"Taxa de reserva em msats",fee_reserve_percent:"Taxa de reserva em porcentagem",server_management:"Gerenciamento de Servidor",base_url:"URL base",base_url_label:"URL estática/base para o servidor",authentication:"Autenticação",auth_token_expiry_label:"Minutos para expiração do token",auth_token_expiry_hint:"Tempo em minutos até o token expirar",auth_allowed_methods_label:"Métodos de autorização permitidos",auth_allowed_methods_hint:"Selecione métodos de autorização",auth_nostr_label:"URL de Solicitação Nostr",auth_nostr_hint:"URL absoluta que os clientes usarão para fazer login.",auth_google_ci_label:"ID do Cliente do Google",auth_google_ci_hint:"Certifique-se de que os URIs de redirecionamento autorizados contenham https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Segredo do Cliente do Google",auth_gh_client_id_label:"ID do Cliente do GitHub",auth_gh_client_id_hint:"Certifique-se de que a URL de callback de autorização esteja definida como https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"Segredo do Cliente do GitHub",auth_keycloak_label:"URL de Descoberta do Keycloak",auth_keycloak_ci_label:"ID do Cliente Keycloak",auth_keycloak_ci_hint:"Certifique-se de que a URL de retorno de chamada de autorização esteja definida para https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Segredo do Cliente Keycloak",currency_settings:"Configurações de Moeda",allowed_currencies:"Moedas Permitidas",allowed_currencies_hint:"Limite o número de moedas fiduciárias disponíveis",default_account_currency:"Moeda Padrão da Conta",default_account_currency_hint:"Moeda padrão para contabilidade",service_fee_label:"Taxa de serviço (%)",service_fee_hint:"Taxa cobrada por tx (%)",service_fee_max_label:"Taxa de serviço máx (sats)",service_fee_max_hint:"Taxa máxima de serviço a cobrar em (sats)",fee_wallet:"Carteira de Taxas",fee_wallet_label:"Carteira de tarifas (ID da carteira)",fee_wallet_hint:"ID da carteira para enviar fundos para",disable_fee:"Desativar Taxa",disable_fee_internal:"Desativar taxa de serviço para pagamentos internos",disable_fee_internal_desc:"Desativar Taxa de Serviço para Pagamentos Internos Lightning",ui_management:"Gerenciamento de UI",ui_site_title:"Título do Site",ui_site_tagline:"Tagline do site",ui_elements_enable:"Habilitar elementos na página inicial",ui_elements_disable:"Desativar elementos na página inicial",ui_toggle_elements_tip:"Remover elementos da página inicial, como 'funciona com', etc.",ui_site_description:"Descrição do Site",ui_site_description_hint:"Use texto simples, Markdown ou HTML bruto",ui_default_wallet_name:"Nome Padrão da Carteira",lnbits_wallet:"Carteira LNbits",denomination:"Denominação",denomination_hint:"O nome para o token FakeWallet",ui_qr_code_logo:"Logo do QR Code",ui_qr_code_logo_hint:"URL para imagem de logo no código QR",ui_custom_badge:"Distintivo Personalizado",ui_custom_badge_label:"Distintivo Personalizado 'USE COM CUIDADO - a carteira LNbits ainda está em BETA'",ui_custom_badge_color_label:"Cor Personalizada do Distintivo",themes:"Temas",themes_hint:"Escolha temas disponíveis para usuários",custom_logo:"Logotipo personalizado",custom_logo_hint:"URL para a imagem do logotipo",ad_space_title:"Título do Espaço Publicitário",ad_space_title_label:"Suportado por",ad_slots:"Slots de Anúncio",ad_slots_hint:"Adicionar URL e caminhos de arquivo de imagem no formato CSV, as extensões podem optar por honrar",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Anúncios Ativados",ads_disabled:"Anúncios Desativados",user_management:"Gerenciamento de Usuários",admin_users:"Usuários Administradores",admin_users_hint:"Usuários com privilégios de administrador",admin_users_label:"ID do Usuário",allowed_users:"Usuários Permitidos",allowed_users_hint:"Somente esses usuários podem usar o LNbits",allowed_users_label:"ID do Usuário",allow_creation_user:"Permitir a criação de novos usuários",allow_creation_user_desc:"Permitir a criação de novos usuários na página de índice",components:"Componentes",long_running_endpoints:"Top 5 Endpoints de Longa Execução",http_request_methods:"Métodos de Requisição HTTP",http_response_codes:"Códigos de Resposta HTTP",request_details:"Detalhes do Pedido",http_request_details:"Detalhes da Requisição HTTP"},window.localisation.cs={confirm:"Ano",server:"Server",theme:"Téma",site_customisation:"Přizpůsobení stránek",funding:"Financování",users:"Uživatelé",audit:"Audit",apps:"Aplikace",channels:"Kanály",transactions:"Transakce",dashboard:"Přehled",node:"Uzel",export_users:"Exportovat uživatele",no_users:"Nebyli nalezeni žádní uživatelé",total_capacity:"Celková kapacita",avg_channel_size:"Průmerná velikost kanálu",biggest_channel_size:"Největší velikost kanálu",smallest_channel_size:"Nejmenší velikost kanálu",number_of_channels:"Počet kanálů",active_channels:"Aktivní kanály",connect_peer:"Připojit peer",connect:"Připojit",open_channel:"Otevřít kanál",open:"Otevřít",close_channel:"Zavřít kanál",close:"Zavřít",restart:"Restartovat server",save:"Uložit",save_tooltip:"Uložit změny",credit_debit:"Kreditní / Debetní",credit_hint:"Stiskněte Enter pro připsání na účet",credit_label:"{denomination} k připsání",credit_ok:"Úspěšné připsání/odepsání virtuálních prostředků ({amount} satů). Platby závisí na skutečných prostředcích z financujícího zdroje.",restart_tooltip:"Restartujte server pro aplikaci změn",add_funds_tooltip:"Přidat prostředky do peněženky.",reset_defaults:"Obnovit výchozí",reset_defaults_tooltip:"Smazat všechna nastavení a obnovit výchozí.",download_backup:"Stáhnout zálohu databáze",name_your_wallet:"Pojmenujte svou {name} peněženku",paste_invoice_label:"Vložte fakturu, platební požadavek nebo lnurl kód *",lnbits_description:"Snadno nastavitelný a lehkotonážní, LNbits může běžet na jakémkoliv zdroji financování Lightning Network a dokonce LNbits samotné! LNbits můžete provozovat pro sebe, nebo snadno nabízet správu peněženek pro ostatní. Každá peněženka má své vlastní API klíče a není omezen počet peněženek, které můžete vytvořit. Možnost rozdělení prostředků dělá z LNbits užitečný nástroj pro správu peněz a jako vývojový nástroj. Rozšíření přidávají extra funkčnost k LNbits, takže můžete experimentovat s řadou špičkových technologií na lightning network. Vývoj rozšíření jsme učinili co nejjednodušší a jako svobodný a open-source projekt podporujeme lidi ve vývoji a zasílání vlastních rozšíření.",export_to_phone:"Exportovat do telefonu pomocí QR kódu",export_to_phone_desc:"Tento QR kód obsahuje URL vaší peněženky s plným přístupem. Můžete jej naskenovat z telefonu a otevřít peněženku odtamtud.",wallet:"Peněženka:",wallets:"Peněženky",add_wallet:"Přidat novou peněženku",delete_wallet:"Smazat peněženku",delete_wallet_desc:"Celá peněženka bude smazána, prostředky budou NEOBNOVITELNÉ.",rename_wallet:"Přejmenovat peněženku",update_name:"Aktualizovat název",fiat_tracking:"Sledování fiatu",currency:"Měna",update_currency:"Aktualizovat měnu",press_to_claim:"Stiskněte pro nárokování bitcoinu",donate:"Darovat",view_github:"Zobrazit na GitHubu",voidwallet_active:"VoidWallet je aktivní! Platby zakázány",use_with_caution:"POUŽÍVEJTE S OBEZŘETNOSTÍ - {name} peněženka je stále v BETĚ",service_fee:"Servisný poplatek: {amount} % za transakci",service_fee_max:"Servisný poplatek: {amount} % za transakci (max {max} satoshi)",service_fee_tooltip:"Servisní poplatek účtovaný správcem LNbits serveru za odchozí transakci",toggle_darkmode:"Přepnout tmavý režim",payment_reactions:"Reakce na platby",view_swagger_docs:"Zobrazit LNbits Swagger API dokumentaci",api_docs:"API dokumentace",api_keys_api_docs:"Adresa uzlu, API klíče a API dokumentace",lnbits_version:"Verze LNbits",runs_on:"Běží na",paste:"Vložit",paste_from_clipboard:"Vložit ze schránky",paste_request:"Vložit požadavek",create_invoice:"Vytvořit fakturu",camera_tooltip:"Použijte kameru pro skenování faktury/QR",export_csv:"Exportovat do CSV",chart_tooltip:"Zobrazit graf",pending:"Čeká na vyřízení",copy_invoice:"Kopírovat fakturu",withdraw_from:"Vybrat z",cancel:"Zrušit",scan:"Skenovat",read:"Číst",pay:"Platit",memo:"Poznámka",date:"Datum",payment_processing:"Zpracování platby...",not_enough_funds:"Nedostatek prostředků!",search_by_tag_memo_amount:"Hledat podle tagu, poznámky, částky",invoice_waiting:"Faktura čeká na platbu",payment_received:"Platba přijata",payment_sent:"Platba odeslána",receive:"přijmout",send:"odeslat",outgoing_payment_pending:"Odchozí platba čeká na vyřízení",drain_funds:"Vyčerpat prostředky",drain_funds_desc:"Toto je LNURL-withdraw QR kód pro vyčerpání všeho z této peněženky. Nesdílejte s nikým. Je kompatibilní s balanceCheck a balanceNotify, takže vaše peněženka může kontinuálně čerpat prostředky odsud po prvním výběru.",i_understand:"Rozumím",copy_wallet_url:"Kopírovat URL peněženky",disclaimer_dialog_title:"Důležité!",disclaimer_dialog:"Funkcionalita přihlášení bude vydána v budoucí aktualizaci, zatím si ujistěte, že jste si tuto stránku uložili do záložek pro budoucí přístup k vaší peněžence! Tato služba je v BETA verzi a nepřebíráme žádnou zodpovědnost za ztrátu přístupu k prostředkům.",no_transactions:"Zatím žádné transakce",manage:"Spravovat",exchanges:"Burzy",extensions:"Rozšíření",no_extensions:"Nemáte nainstalováno žádné rozšíření :(",created:"Vytvořeno",search_extensions:"Hledat rozšíření",extension_sources:"Zdroje rozšíření",ext_sources_hint:"Úložiště, odkud lze rozšíření stáhnout.",ext_sources_label:"Zdrojová URL (používejte pouze oficiální zdroj rozšíření LNbits a zdroje, kterým můžete důvěřovat)",warning:"Varování",repository:"Repositář",confirm_continue:"Jste si jistí, že chcete pokračovat?",manage_extension_details:"Instalovat/odinstalovat rozšíření",install:"Instalovat",uninstall:"Odinstalovat",drop_db:"Odstranit data",enable:"Povolit",pay_to_enable:"Zaplatit pro aktivaci",enable_extension_details:"Povolit rozšíření pro aktuálního uživatele",disable:"Zakázat",delete:"Smazat",installed:"Nainstalováno",activated:"Aktivováno",deactivated:"Deaktivováno",release_notes:"Poznámky k vydání",activate_extension_details:"Zpřístupnit/zakázat rozšíření pro uživatele",featured:"Doporučené",all:"Vše",only_admins_can_install:"(Pouze administrátorské účty mohou instalovat rozšíření)",admin_only:"Pouze pro adminy",new_version:"Nová verze",extension_depends_on:"Závisí na:",extension_rating_soon:"Hodnocení brzy dostupné",extension_installed_version:"Nainstalovaná verze",extension_uninstall_warning:"Chystáte se odstranit rozšíření pro všechny uživatele.",uninstall_confirm:"Ano, odinstalovat",extension_db_drop_info:"Všechna data pro rozšíření budou trvale odstraněna. Tuto operaci nelze vrátit zpět!",extension_db_drop_warning:"Chystáte se odstranit všechna data pro rozšíření. Prosím, pokračujte zadáním názvu rozšíření:",extension_required_lnbits_version:"Toto vydání vyžaduje alespoň verzi LNbits",min_version:"Minimum (včetně)",max_version:"Maximální (vyloučeno)",payment_hash:"Hash platby",fee:"Poplatek",amount:"Částka",amount_sats:"Částka (sats)",tag:"Tag",unit:"Jednotka",description:"Popis",expiry:"Expirace",webhook:"Webhook",payment_proof:"Důkaz platby",update:"Aktualizovat",update_available:"Dostupná aktualizace {version}!",latest_update:"Máte nejnovější verzi {version}.",notifications:"Notifikace",no_notifications:"Žádné notifikace",notifications_disabled:"Notifikace stavu LNbits jsou zakázány.",enable_notifications:"Povolit notifikace",enable_notifications_desc:"Pokud je povoleno, bude stahovat nejnovější aktualizace stavu LNbits, jako jsou bezpečnostní incidenty a aktualizace.",watchdog_interval:"Interval Watchdog",watchdog_interval_desc:"Jak často by měl úkol na pozadí kontrolovat signál killswitch v watchdog delta [node_balance - lnbits_balance] (v minutách).",watchdog_delta:"Delta Watchdog",watchdog_delta_desc:"Limit předtím, než killswitch změní zdroj financování na VoidWallet [lnbits_balance - node_balance > delta]",status:"Stav",notification_source:"Zdroj notifikací",notification_source_label:"URL zdroje (používejte pouze oficiální zdroj stavu LNbits a zdroje, kterým můžete věřit)",more:"více",less:"méně",releases:"Vydání",watchdog:"Watchdog",server_logs:"Logy serveru",ip_blocker:"Blokování IP",security:"Bezpečnost",security_tools:"Nástroje bezpečnosti",block_access_hint:"Blokovat přístup podle IP",allow_access_hint:"Povolit přístup podle IP (přepíše blokované IP)",enter_ip:"Zadejte IP a stiskněte enter",rate_limiter:"Omezovač počtu požadavků",wallet_limiter:"Omezení peněženky",wallet_limit_max_withdraw_per_day:"Maximální denní limit pro výběr z peněženky v sats (0 pro deaktivaci)",wallet_max_ballance:"Maximální zůstatek v peněžence v sats (0 pro zakázání)",wallet_limit_secs_between_trans:"Minimální počet sekund mezi transakcemi na peněženku (0 pro vypnutí)",number_of_requests:"Počet požadavků",time_unit:"Časová jednotka",minute:"minuta",second:"sekunda",hour:"hodina",disable_server_log:"Zakázat log serveru",enable_server_log:"Povolit log serveru",coming_soon:"Funkce brzy dostupná",session_has_expired:"Vaše relace vypršela. Prosím, přihlašte se znovu.",instant_access_question:"Chcete okamžitý přístup?",login_with_user_id:"Přihlásit se s uživatelským ID",or:"nebo",create_new_wallet:"Vytvořit novou peněženku",login_to_account:"Přihlaste se ke svému účtu",create_account:"Vytvořit účet",account_settings:"Nastavení účtu",signin_with_nostr:"Pokračovat s Nostr",signin_with_google:"Přihlásit se přes Google",signin_with_github:"Přihlásit se přes GitHub",signin_with_keycloak:"Přihlásit se přes Keycloak",username_or_email:"Uživatelské jméno nebo Email",password:"Heslo",password_config:"Konfigurace hesla",password_repeat:"Opakujte heslo",change_password:"Změnit heslo",update_credentials:"Aktualizovat přihlašovací údaje",update_pubkey:"Aktualizovat veřejný klíč",set_password:"Nastavit heslo",invalid_password:"Heslo musí mít alespoň 8 znaků",login:"Přihlášení",register:"Registrovat",username:"Uživatelské jméno",pubkey:"Veřejný klíč",user_id:"ID uživatele",email:"Email",first_name:"Křestní jméno",last_name:"Příjmení",picture:"Obrázek",verify_email:"Ověřte e-mail s",account:"Účet",update_account:"Aktualizovat účet",invalid_username:"Neplatné uživatelské jméno",auth_provider:"Poskytovatel ověření",my_account:"Můj účet",back:"Zpět",logout:"Odhlásit se",look_and_feel:"Vzhled a chování",toggle_gradient:"Přepnout gradient",gradient_background:"Barevný přechod pozadí",language:"Jazyk",color_scheme:"Barevné schéma",admin_settings:"Nastavení administrátora",extension_cost:"Toto vydání vyžaduje minimální platbu {cost} satoshi.",extension_paid_sats:"Již jste zaplatili {paid_sats} sats.",release_details_error:"Nelze získat podrobnosti o vydání.",pay_from_wallet:"Platit z peněženky",wallet_required:"Peněženka *",show_qr:"Zobrazit QR",retry_install:"Zkusit znovu nainstalovat",new_payment:"Vytvořit novou platbu",update_payment:"Aktualizovat platbu",already_paid_question:"Už jste zaplatili?",sell:"Prodat",sell_require:"Požádejte o platbu, abyste povolili rozšíření",sell_info:"Rozšíření {name} vyžaduje platbu minimálně {amount} sats pro aktivaci.",hide_empty_wallets:"Skrýt prázdné peněženky",recheck:"Znovu zkontrolovat",contributors:"Přispěvatelé",license:"Licence",reset_key:"Obnovit klíč",reset_password:"Obnovit heslo",border_choices:"Možnosti ohraničení",select_all:"Vybrat vše",nfc_supported:"Podpora NFC",nfc_not_supported:"NFC není podporováno",expire_date:"Datum expirace:",hash:"Hash:",welcome_lnbits:"Vítejte v LNbits",setup_su_account:"Nastavte účet Superuser níže.",create_ticker_converter:"Vytvořit převodník měnových tickerů",enable_audit:"Povolit audit",recommended:"Doporučeno",audit_desc:"Zaznamenávejte HTTP požadavky podle zadaných filtrů",audit_record_req:"Záznam Tělo Požadavku",audit_record_warning:"Varování:",audit_record_req_warning_1:"důvěrná data (jako hesla) budou zaznamenána.",audit_record_req_warning_2:"tělo žádosti může mít velkou velikost.",audit_record_use:"Používejte to opatrně.",audit_ip:"Zaznamenat IP adresu",audit_ip_desc:"Zaznamenejte IP adresu klienta",audit_path_params:"Zaznamenat parametry cesty",audit_query_params:"Zaznamenat parametry dotazu",audit_http_methods:"Zahrnout metody HTTP",audit_http_methods_hint:"Seznam metod HTTP, které mají být zahrnuty. Prázdné seznamy znamenají všechny.",audit_http_methods_label:"Metody HTTP",audit_resp_codes:"Zahrnout kódy odpovědí HTTP",audit_resp_codes_hint:"Seznam kódů HTTP, které mají být zahrnuty (regex match). Prázdné seznamy znamenají všechny. Např.: 4.*, 5.*",audit_resp_codes_label:"Kód odpovědi HTTP (regex)",audit_paths:"Zahrnout cesty",audit_paths_hint:"Seznam cest, které mají být zahrnuty (regex shoda). Prázdný seznam znamená vše.",audit_paths_label:"HTTP cesta (regex)",audit_paths_exclude:"Vyloučit cesty",audit_paths_exclude_hint:"Seznam cest, které mají být vyloučeny (regex shoda). Prázdný seznam znamená žádné.",audit_paths_exclude_label:"HTTP cesta (regex)",exchange_providers:"Poskytovatelé směny",admin_extensions:"Rozšíření pro správce",admin_extensions_label:"Administrátorské rozšíření",admin_extensions_hint:"Rozšíření může používat pouze uživatel s administrátorskými oprávněními.",user_default_extensions:"Výchozí rozšíření uživatele",user_default_extensions_label:"Uživatelská rozšíření",user_default_extensions_hint:"Rozšíření, která budou u uživatelů ve výchozím nastavení povolena.",miscellanous:"Různé",misc_disable_extensions:"Zakázat rozšíření",misc_disable_extensions_label:"Zakázat všechna rozšíření",misc_hide_api:"Skrýt API",misc_hide_api_label:"Skrývá API peněženky, rozšíření se mohou rozhodnout ctít",wallets_management:"Správa peněženek",funding_source_info:"Informace o zdroji financování",funding_source:"Zdroj financování: {wallet_class}",node_balance:"Stav uzlu: {balance} sats",lnbits_balance:"Zůstatek LNbits: {balance} sats",funding_reserve_percent:"Rezervovat procento: {percent} %",node_management:"Správa uzlů",node_management_not_supported:"Správa uzlů není podporována aktivním zdrojem financování",toggle_node_ui:"Uživatelské rozhraní uzlu",toggle_public_node_ui:"Veřejné rozhraní uzlu",toggle_transactions_node_ui:"Karta Transakce (Zakázat na velkých uzlech CLN)",invoice_expiry:"Datum vypršení faktury",invoice_expiry_label:"Vypršení faktury (sekundy)",fee_reserve:"Rezerva poplatku",fee_reserve_msats:"Rezervační poplatek v msats",fee_reserve_percent:"Rezervační poplatek v procentech",server_management:"Správa serveru",base_url:"Základní URL",base_url_label:"Statická/Základní URL pro server",authentication:"Ověření",auth_token_expiry_label:"Minuty vypršení platnosti tokenu",auth_token_expiry_hint:"Čas v minutách do vypršení tokenu",auth_allowed_methods_label:"Povolené metody autorizace",auth_allowed_methods_hint:"Vyberte metody autorizace",auth_nostr_label:"URL žádosti Nostr",auth_nostr_hint:"Absolutní URL, které klienti použijí pro přihlášení.",auth_google_ci_label:"ID klienta Google",auth_google_ci_hint:"Ujistěte se, že autorizované přesměrovací URI obsahují https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Heslo klienta Google",auth_gh_client_id_label:"ID klienta GitHub",auth_gh_client_id_hint:"Ujistěte se, že je nastavena zpětná adresa URL pro autorizaci na https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Klientský tajný klíč",auth_keycloak_label:"URL pro zjištění Keycloak",auth_keycloak_ci_label:"ID klienta Keycloak",auth_keycloak_ci_hint:"Ujistěte se, že je autorizace callback URL nastavena na https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Klíč k aplikaci Keycloak tajemství",currency_settings:"Nastavení měny",allowed_currencies:"Povolené měny",allowed_currencies_hint:"Omezte počet dostupných fiat měn",default_account_currency:"Výchozí měna účtu",default_account_currency_hint:"Výchozí měna pro účetnictví",service_fee_label:"Poplatek za službu (%)",service_fee_hint:"Poplatek účtovaný za transakci (%)",service_fee_max_label:"Poplatek za službu max (sats)",service_fee_max_hint:"Maximální poplatek za službu k účtování v (sats)",fee_wallet:"Poplatková peněženka",fee_wallet_label:"Poplatková peněženka (ID peněženky)",fee_wallet_hint:"ID peněženky, na kterou se mají odeslat prostředky",disable_fee:"Zakázat poplatek",disable_fee_internal:"Zakázat poplatek za službu pro interní platby",disable_fee_internal_desc:"Zakázat servisní poplatek za interní lightning platby",ui_management:"Správa uživatelského rozhraní",ui_site_title:"Název stránky",ui_site_tagline:"Stránkový slogan",ui_elements_enable:"Povolit prvky na domovské stránce",ui_elements_disable:"Zakázat prvky na úvodní stránce",ui_toggle_elements_tip:"Odebrat prvky z domovské stránky, jako je 'běží na' atd.",ui_site_description:"Popis webu",ui_site_description_hint:"Použijte prostý text, Markdown nebo surové HTML.",ui_default_wallet_name:"Výchozí název peněženky",lnbits_wallet:"Peněženka LNbits",denomination:"Nominální hodnota",denomination_hint:"Název pro token FakeWallet",ui_qr_code_logo:"Logo QR kódu",ui_qr_code_logo_hint:"URL k obrázku loga v QR kódu",ui_custom_badge:"Vlastní odznak",ui_custom_badge_label:"Vlastní odznak 'POUŽÍVEJTE S OPATRNOSTÍ - Peněženka LNbits je stále v BETA verzi'",ui_custom_badge_color_label:"Barva vlastního odznaku",themes:"Motivy",themes_hint:"Vyberte motivy dostupné pro uživatele",custom_logo:"Vlastní logo",custom_logo_hint:"URL k obrázku loga",ad_space_title:"Název reklamního prostoru",ad_space_title_label:"Podporováno",ad_slots:"Reklamní sloty",ad_slots_hint:"Adresa URL reklamy a cesty k souborům obrázků ve formátu CSV, rozšíření se mohou rozhodnout respektovat",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Reklamy povoleny",ads_disabled:"Reklamy deaktivovány",user_management:"Správa uživatelů",admin_users:"Administrátorští uživatelé",admin_users_hint:"Uživatelé s administrátorskými oprávněními",admin_users_label:"ID uživatele",allowed_users:"Povolení uživatelé",allowed_users_hint:"Pouze tito uživatelé mohou používat LNbits.",allowed_users_label:"Uživatelské ID",allow_creation_user:"Povolit vytvoření nových uživatelů",allow_creation_user_desc:"Povolit vytváření nových uživatelů na úvodní stránce",components:"Soubory",long_running_endpoints:"Top 5 dlouho běžících koncových bodů",http_request_methods:"Metody HTTP požadavků",http_response_codes:"Kódy HTTP odpovědí",request_details:"Podrobnosti žádosti",http_request_details:"Podrobnosti HTTP žádosti"},window.localisation.sk={confirm:"Áno",server:"Server",theme:"Téma",site_customisation:"Prispôsobenie lokality",funding:"Financovanie",users:"Používatelia",audit:"Audit",apps:"Aplikácie",channels:"Kanály",transactions:"Transakcie",dashboard:"Prehľad",node:"Uzol",export_users:"Exportovať používateľov",no_users:"Nenašli sa žiadni používatelia",total_capacity:"Celková kapacita",avg_channel_size:"Priemerná veľkosť kanálu",biggest_channel_size:"Najväčší kanál",smallest_channel_size:"Najmenší kanál",number_of_channels:"Počet kanálov",active_channels:"Aktívne kanály",connect_peer:"Pripojiť peer",connect:"Pripojiť",open_channel:"Otvoriť kanál",open:"Otvoriť",close_channel:"Zatvoriť kanál",close:"Zatvoriť",restart:"Reštartovať server",save:"Uložiť",save_tooltip:"Uložiť vaše zmeny",credit_debit:"Kreditná / Debetná",credit_hint:"Stlačte Enter pre pripísanie na účet",credit_label:"{denomination} na pripísanie",restart_tooltip:"Pre prejavenie zmien reštartujte server",add_funds_tooltip:"Pridať prostriedky do peňaženky.",reset_defaults:"Obnoviť predvolené",reset_defaults_tooltip:"Odstrániť všetky nastavenia a obnoviť predvolené.",download_backup:"Stiahnuť zálohu databázy",name_your_wallet:"Pomenujte vašu {name} peňaženku",paste_invoice_label:"Vložte faktúru, platobnú požiadavku alebo lnurl kód *",lnbits_description:"Ľahko nastaviteľný a ľahkotonážny, LNbits môže bežať na akomkoľvek zdroji financovania Lightning Network a dokonca LNbits samotný! LNbits môžete používať pre seba, alebo ľahko ponúknuť správcovské riešenie pre iných. Každá peňaženka má svoje vlastné API kľúče a nie je limit na počet peňaženiek, ktoré môžete vytvoriť. Schopnosť rozdeľovať finančné prostriedky robí z LNbits užitočný nástroj pre správu peňazí a ako vývojový nástroj. Rozšírenia pridávajú extra funkčnosť do LNbits, takže môžete experimentovať s radou najnovších technológií na lightning sieti. Vývoj rozšírení sme urobili čo najjednoduchší a ako voľný a open-source projekt, podporujeme ľudí vývoj a odovzdávanie vlastných rozšírení.",export_to_phone:"Exportovať do telefónu s QR kódom",export_to_phone_desc:"Tento QR kód obsahuje URL vašej peňaženky s plným prístupom. Môžete ho naskenovať z vášho telefónu a otvoriť vašu peňaženku odtiaľ.",wallet:"Peňaženka:",wallets:"Peňaženky",add_wallet:"Pridať novú peňaženku",delete_wallet:"Zmazať peňaženku",delete_wallet_desc:"Celá peňaženka bude zmazaná, prostriedky budú NEOBNOVITEĽNÉ.",rename_wallet:"Premenovať peňaženku",update_name:"Aktualizovať meno",fiat_tracking:"Sledovanie fiat",currency:"Mena",update_currency:"Aktualizovať menu",press_to_claim:"Stlačte pre nárok na bitcoin",donate:"Prispieť",view_github:"Zobraziť na GitHube",voidwallet_active:"VoidWallet je aktívny! Platby zakázané",use_with_caution:"POUŽÍVAJTE OPATRNE - {name} peňaženka je stále v BETE",service_fee:"Servisný poplatok: {amount} % za transakciu",service_fee_max:"Servisný poplatok: {amount} % za transakciu (max {max} satoshi)",service_fee_tooltip:"Servisný poplatok účtovaný správcom LNbits servera za odchádzajúcu transakciu",toggle_darkmode:"Prepnúť Tmavý režim",payment_reactions:"Reakcie na platbu",view_swagger_docs:"Zobraziť LNbits Swagger API dokumentáciu",api_docs:"API dokumentácia",api_keys_api_docs:"Adresa uzla, API kľúče a API dokumentácia",lnbits_version:"Verzia LNbits",runs_on:"Beží na",paste:"Vložiť",paste_from_clipboard:"Vložiť zo schránky",paste_request:"Vložiť požiadavku",create_invoice:"Vytvoriť faktúru",camera_tooltip:"Použite kameru na naskenovanie faktúry/QR",export_csv:"Exportovať do CSV",chart_tooltip:"Zobraziť graf",pending:"Čakajúce",copy_invoice:"Kopírovať faktúru",withdraw_from:"Vybrať z",cancel:"Zrušiť",scan:"Skenovať",read:"Čítať",pay:"Platiť",memo:"Poznámka",date:"Dátum",payment_processing:"Spracovávanie platby...",not_enough_funds:"Nedostatok prostriedkov!",search_by_tag_memo_amount:"Vyhľadať podľa značky, poznámky, sumy",invoice_waiting:"Faktúra čakajúca na zaplatenie",payment_received:"Platba prijatá",payment_sent:"Platba odoslaná",receive:"prijímať",send:"posielať",outgoing_payment_pending:"Odchádzajúca platba čaká",drain_funds:"Vyprázdniť prostriedky",drain_funds_desc:"Toto je LNURL-withdraw QR kód pre vyprázdnienie všetkého z tejto peňaženky. S nikým ho nezdieľajte. Je kompatibilný s balanceCheck a balanceNotify, takže vaša peňaženka môže naďalej kontinuálne vyťahovať prostriedky odtiaľto po prvom výbere.",i_understand:"Rozumiem",copy_wallet_url:"Kopírovať URL peňaženky",disclaimer_dialog_title:"Dôležité!",disclaimer_dialog:"Funkcionalita prihlásenia bude vydaná v budúcej aktualizácii, zatiaľ si uistite, že ste si túto stránku pridali medzi záložky pre budúci prístup k vašej peňaženke! Táto služba je v BETA verzii a nenesieme zodpovednosť za stratu prístupu k prostriedkom.",no_transactions:"Zatiaľ žiadne transakcie",manage:"Spravovať",exchanges:"Burzy",extensions:"Rozšírenia",no_extensions:"Nemáte nainštalované žiadne rozšírenia :(",created:"Vytvorené",search_extensions:"Hľadať rozšírenia",extension_sources:"Rozšírenie zdrojov",ext_sources_hint:"Úložiská, z ktorých sa môžu stiahnuť rozšírenia.",ext_sources_label:"Zdrojová URL (použite iba oficiálny zdroj rozšírenia LNbits a zdroje, ktorým môžete dôverovať)",warning:"Upozornenie",repository:"Repozitár",confirm_continue:"Ste si istí, že chcete pokračovať?",manage_extension_details:"Inštalovať/odinštalovať rozšírenie",install:"Inštalovať",uninstall:"Odinštalovať",drop_db:"Odstrániť údaje",enable:"Povoliť",pay_to_enable:"Zaplaťte na aktiváciu",enable_extension_details:"Povoliť rozšírenie pre aktuálneho používateľa",disable:"Zakázať",delete:"Odstrániť",installed:"Nainštalované",activated:"Aktivované",deactivated:"Deaktivované",release_notes:"Poznámky k vydaniu",activate_extension_details:"Sprístupniť/neprístupniť rozšírenie pre používateľov",featured:"Odporúčané",all:"Všetky",only_admins_can_install:"(Iba administrátorské účty môžu inštalovať rozšírenia)",admin_only:"Iba pre administrátorov",new_version:"Nová verzia",extension_depends_on:"Závisí na:",extension_rating_soon:"Hodnotenia budú čoskoro dostupné",extension_installed_version:"Nainštalovaná verzia",extension_uninstall_warning:"Chystáte sa odstrániť rozšírenie pre všetkých používateľov.",uninstall_confirm:"Áno, Odinštalovať",extension_db_drop_info:"Všetky údaje pre rozšírenie budú trvalo vymazané. Túto operáciu nie je možné vrátiť!",extension_db_drop_warning:"Chystáte sa odstrániť všetky údaje pre rozšírenie. Pre pokračovanie prosím napíšte názov rozšírenia:",extension_required_lnbits_version:"Toto vydanie vyžaduje aspoň verziu LNbits",min_version:"Minimum (vrátane)",max_version:"Maximálne (vylúčené)",payment_hash:"Hash platby",fee:"Poplatok",amount:"Suma",amount_sats:"Suma (sats)",tag:"Tag",unit:"Jednotka",description:"Popis",expiry:"Expirácia",webhook:"Webhook",payment_proof:"Dôkaz platby",update:"Aktualizovať",update_available:"Dostupná aktualizácia {version}!",latest_update:"Máte najnovšiu verziu {version}.",notifications:"Notifikácie",no_notifications:"Žiadne notifikácie",notifications_disabled:"Notifikácie stavu LNbits sú zakázané.",enable_notifications:"Povoliť Notifikácie",enable_notifications_desc:"Ak povolené, budú sa načítavať najnovšie aktualizácie stavu LNbits, ako sú bezpečnostné incidenty a aktualizácie.",enable_watchdog:"Povoliť Watchdog",enable_watchdog_desc:"Ak povolené, vaš zdroj financovania sa automaticky zmení na VoidWallet, ak je váš zostatok nižší ako zostatok LNbits. Po aktualizácii bude treba povoliť manuálne.",watchdog_interval:"Interval Watchdog",watchdog_interval_desc:"Ako často by malo pozadie kontrolovať signál killswitch v watchdog delta [node_balance - lnbits_balance] (v minútach).",watchdog_delta:"Delta Watchdog",watchdog_delta_desc:"Limit pred zmenou zdroja financovania na VoidWallet [lnbits_balance - node_balance > delta]",status:"Stav",notification_source:"Zdroj notifikácií",notification_source_label:"URL zdroja (používajte len oficiálny LNbits zdroj stavu a zdroje, ktorým môžete dôverovať)",more:"viac",less:"menej",releases:"Vydania",watchdog:"Watchdog",server_logs:"Logy servera",ip_blocker:"Blokovanie IP",security:"Bezpečnosť",security_tools:"Nástroje bezpečnosti",block_access_hint:"Blokovať prístup podľa IP",allow_access_hint:"Povoliť prístup podľa IP (prebije blokované IP)",enter_ip:"Zadajte IP a stlačte enter",rate_limiter:"Obmedzovač počtu požiadaviek",wallet_limiter:"Obmedzovač peňaženky",wallet_limit_max_withdraw_per_day:"Maximálny denný výber z peňaženky v satošiach (0 pre zrušenie)",wallet_max_ballance:"Maximálny zostatok v peňaženke v satošiach (0 pre deaktiváciu)",wallet_limit_secs_between_trans:"Minimálny počet sekúnd medzi transakciami na peňaženku (0 na deaktiváciu)",number_of_requests:"Počet požiadaviek",time_unit:"Časová jednotka",minute:"minúta",second:"sekunda",hour:"hodina",disable_server_log:"Zakázať Log servera",enable_server_log:"Povoliť Log servera",coming_soon:"Funkcia bude čoskoro dostupná",session_has_expired:"Vaša relácia vypršala. Prosím, prihláste sa znova.",instant_access_question:"Chcete okamžitý prístup?",login_with_user_id:"Prihlásiť sa s používateľským ID",or:"alebo",create_new_wallet:"Vytvoriť novú peňaženku",login_to_account:"Prihláste sa do vášho účtu",create_account:"Vytvoriť účet",account_settings:"Nastavenia účtu",signin_with_nostr:"Pokračovať s Nostr",signin_with_google:"Prihlásiť sa pomocou Google",signin_with_github:"Prihlásiť sa pomocou GitHub",signin_with_keycloak:"Prihlásiť sa pomocou Keycloak",username_or_email:"Používateľské meno alebo email",password:"Heslo",password_config:"Konfigurácia hesla",password_repeat:"Opakovanie hesla",change_password:"Zmeniť heslo",update_credentials:"Aktualizovať poverenia",update_pubkey:"Aktualizovať verejný kľúč",set_password:"Nastaviť heslo",invalid_password:"Heslo musí mať aspoň 8 znakov",login:"Prihlásenie",register:"Registrovať",username:"Používateľské meno",pubkey:"Verejný kľúč",user_id:"ID používateľa",email:"Email",first_name:"Meno",last_name:"Priezvisko",picture:"Obrázok",verify_email:"Overiť e-mail s",account:"Účet",update_account:"Aktualizovať účet",invalid_username:"Neplatné užívateľské meno",auth_provider:"Poskytovateľ autentifikácie",my_account:"Môj účet",back:"Späť",logout:"Odhlásiť sa",look_and_feel:"Vzhľad a dojem",toggle_gradient:"Prepnúť prechodový režim",gradient_background:"Gradientné pozadie",language:"Jazyk",color_scheme:"Farebná schéma",admin_settings:"Nastavenia správcu",extension_cost:"Táto verzia vyžaduje minimálnu platbu {cost} satoshi.",extension_paid_sats:"Už ste zaplatili {paid_sats} sats.",release_details_error:"Nepodarilo sa získať podrobnosti o vydaní.",pay_from_wallet:"Zaplatiť z peňaženky",wallet_required:"Peňaženka *",show_qr:"Zobraziť QR",retry_install:"Skúste inštaláciu znova",new_payment:"Vytvoriť novú platbu",update_payment:"Aktualizovať platbu",already_paid_question:"Už ste zaplatili?",sell:"Predať",sell_require:"Požiadajte o platbu na povolenie rozšírenia",sell_info:"Rozšírenie {name} vyžaduje platbu minimálne {amount} sats na aktiváciu.",hide_empty_wallets:"Skryť prázdne peňaženky",recheck:"Prekontrolovať znova",contributors:"Prispievatelia",license:"Licencia",reset_key:"Resetovať kľúč",reset_password:"Obnoviť heslo",border_choices:"Výber obrysov",select_all:"Vybrať všetko",nfc_supported:"Podpora NFC",nfc_not_supported:"NFC nie je podporované",expire_date:"Dátum exspirácie:",hash:"Hash:",welcome_lnbits:"Vitajte v LNbits",setup_su_account:"Nastavte účet Superuser nižšie.",create_ticker_converter:"Vytvoriť prevodník mienových tickerov",enable_audit:"Povoliť audit",recommended:"Odporúčané",audit_desc:"Zaznamenávajte HTTP požiadavky podľa špecifikovaných filtrov.",audit_record_req:"Zaznamenať telo žiadosti",audit_record_warning:"Upozornenie:",audit_record_req_warning_1:"dôverné údaje (ako napríklad heslá) budú zaznamenané.",audit_record_req_warning_2:"telo žiadosti môže mať veľkú veľkosť.",audit_record_use:"Používajte to s opatrnosťou.",audit_ip:"Zaznamenať IP adresu",audit_ip_desc:"Zaznamenajte IP adresu klienta",audit_path_params:"Zaznamenať hodnoty cesty",audit_query_params:"Zaznamenať parametre dopytu",audit_http_methods:"Zahrnúť metódy HTTP",audit_http_methods_hint:"Zoznam zahrnutých metód HTTP. Prázdne zoznamy znamenajú všetky.",audit_http_methods_label:"HTTP metódy",audit_resp_codes:"Zahrnúť kódy odpovede HTTP",audit_resp_codes_hint:"Zoznam kódov HTTP, ktoré sa majú zahrnúť (zhoda s regexom). Prázdny zoznam znamená všetky. Napr: 4.*, 5.*",audit_resp_codes_label:"Kód odpovede HTTP (regex)",audit_paths:"Cesty zahrnúť",audit_paths_hint:"Zoznam ciest, ktoré sa majú zahrnúť (zhoda s regexom). Prázdny zoznam znamená všetky.",audit_paths_label:"HTTP cesta (regex)",audit_paths_exclude:"Vylúčiť cesty",audit_paths_exclude_hint:"Zoznam ciest, ktoré majú byť vylúčené (zhoda s regexom). Prázdny zoznam znamená žiadne.",audit_paths_exclude_label:"Cesta HTTP (regex)",exchange_providers:"Poskytovatelia výmeny",admin_extensions:"Rozšírenia administrátora",admin_extensions_label:"Rozšírenia správcu",admin_extensions_hint:"Rozšírenia môže používať iba používateľ s administrátorskými právami.",user_default_extensions:"Predvolené rozšírenia používateľa",user_default_extensions_label:"Používateľské rozšírenia",user_default_extensions_hint:"Rozšírenia, ktoré budú predvolene povolené pre používateľov.",miscellanous:"Rôzne",misc_disable_extensions:"Zakázať rozšírenia",misc_disable_extensions_label:"Zakázať všetky rozšírenia",misc_hide_api:"Skryť API",misc_hide_api_label:"Skryje API peňaženky, rozšírenia sa môžu rozhodnúť dodržiavať",wallets_management:"Správa peňaženiek",funding_source_info:"Informácie o zdroji financovania",funding_source:"Zdroj financovania: {wallet_class}",node_balance:"Stav uzla: {balance} sats",lnbits_balance:"Zostatok LNbits: {balance} sats",funding_reserve_percent:"Rezervovať percento: {percent} %",node_management:"Správa uzlov",node_management_not_supported:"Správa uzlov nie je podporovaná aktívnym zdrojom financovania",toggle_node_ui:"Používateľské rozhranie uzla",toggle_public_node_ui:"Verejné používateľské rozhranie uzla",toggle_transactions_node_ui:"Karta transakcií (Zakázať na veľkých CLN uzloch)",invoice_expiry:"Platnosť faktúry",invoice_expiry_label:"Doba platnosti faktúry (sekundy)",fee_reserve:"Rezerva poplatkov",fee_reserve_msats:"Rezervačný poplatok v msats",fee_reserve_percent:"Rezervačný poplatok v percentách",server_management:"Správa servera",base_url:"Základná URL adresa",base_url_label:"Statická/Základná URL adresa pre server",authentication:"Autentifikácia",auth_token_expiry_label:"Minúty do vypršania tokenu",auth_token_expiry_hint:"Čas v minútach do vypršania platnosti tokenu",auth_allowed_methods_label:"Povolené metódy autorizácie",auth_allowed_methods_hint:"Vyberte metódy autorizácie",auth_nostr_label:"Adresa URL žiadosti Nostr",auth_nostr_hint:"Absolútna URL adresa, ktorú klienti použijú na prihlásenie.",auth_google_ci_label:"ID klienta Google",auth_google_ci_hint:"Uistite sa, že autorizované presmerovacie URI obsahujú https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google Client Secret",auth_gh_client_id_label:"Identifikátor klienta GitHub",auth_gh_client_id_hint:"Uistite sa, že URL adresa pre spätné volanie autorizácie je nastavená na https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub Client Secret",auth_keycloak_label:"URL zistenia Keycloak",auth_keycloak_ci_label:"ID klienta Keycloak",auth_keycloak_ci_hint:"Uistite sa, že URL spätného volania autorizácie je nastavená na https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Tajný kľúč klienta Keycloak",currency_settings:"Nastavenia meny",allowed_currencies:"Povolené meny",allowed_currencies_hint:"Obmedzte počet dostupných fiat mien",default_account_currency:"Predvolená mena účtu",default_account_currency_hint:"Predvolená mena pre účtovníctvo",service_fee_label:"Poplatok za službu (%)",service_fee_hint:"Poplatok účtovaný za transakciu (%)",service_fee_max_label:"Poplatok za službu max (sats)",service_fee_max_hint:"Maximálny servisný poplatok na účtovanie v (sats)",fee_wallet:"Peňaženka s poplatkami",fee_wallet_label:"Peňaženka poplatkov (ID peňaženky)",fee_wallet_hint:"ID peňaženky, do ktorej sa majú odoslať prostriedky",disable_fee:"Zakázať poplatok",disable_fee_internal:"Zakázať poplatok za službu pre interné platby",disable_fee_internal_desc:"Zakázať poplatok za službu pre interné platby Lightning",ui_management:"Správa používateľského rozhrania",ui_site_title:"Názov stránky",ui_site_tagline:"Slogan webovej stránky",ui_elements_enable:"Povoliť prvky na domovskej stránke",ui_elements_disable:"Zakázať prvky na domovskej stránke",ui_toggle_elements_tip:"Odstrániť prvky úvodnej stránky, ako napríklad 'používa' atď.",ui_site_description:"Popis lokality",ui_site_description_hint:"Použite obyčajný text, Markdown alebo surové HTML.",ui_default_wallet_name:"Predvolený názov peňaženky",lnbits_wallet:"LNbits peňaženka",denomination:"Nominálna hodnota",denomination_hint:"Názov pre token FakeWallet",ui_qr_code_logo:"Logo QR kódu",ui_qr_code_logo_hint:"URL k obrázku loga v QR kóde",ui_custom_badge:"Vlastná odznak",ui_custom_badge_label:"Vlastný odznak 'POUŽÍVAŤ S OPATRNOSŤOU - LNbits peňaženka je stále v BETA verzii'",ui_custom_badge_color_label:"Vlastná farba odznaku",themes:"Motívy",themes_hint:"Vyberte témy dostupné pre používateľov",custom_logo:"Vlastné logo",custom_logo_hint:"URL k obrázku loga",ad_space_title:"Názov reklamného priestoru",ad_space_title_label:"Podporované spoločnosťou",ad_slots:"Reklamné sloty",ad_slots_hint:"Pridajte URL adresu a cesty k obrazovým súborom vo formáte CSV, rozšírenia sa môžu rozhodnúť dodržať",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Reklamy povolené",ads_disabled:"Reklamy deaktivované",user_management:"Správa používateľov",admin_users:"Administrátorskí používatelia",admin_users_hint:"Používatelia s administrátorskými oprávneniami",admin_users_label:"ID používateľa",allowed_users:"Povolení používatelia",allowed_users_hint:"Iba títo používatelia môžu používať LNbits.",allowed_users_label:"ID používateľa",allow_creation_user:"Povoliť vytváranie nových používateľov",allow_creation_user_desc:"Povoliť vytváranie nových používateľov na indexovej stránke",components:"Súčasti",long_running_endpoints:"Top 5 dlho bežiacich koncových bodov",http_request_methods:"Metódy HTTP žiadostí",http_response_codes:"Kódy odpovedí HTTP",request_details:"Podrobnosti žiadosti",http_request_details:"Podrobnosti požiadavky HTTP"},window.localisation.kr={confirm:"확인",server:"서버",theme:"테마",site_customisation:"사이트 사용자 정의",funding:"자금",users:"사용자",audit:"감사",apps:"앱",channels:"채널",transactions:"거래 내역",dashboard:"현황판",node:"노드",export_users:"사용자 내보내기",no_users:"사용자가 없습니다",total_capacity:"총 용량",avg_channel_size:"평균 채널 용량",biggest_channel_size:"가장 큰 채널 용량",smallest_channel_size:"가장 작은 채널 용량",number_of_channels:"채널 수",active_channels:"활성화된 채널",connect_peer:"피어 연결하기",connect:"연결하기",open_channel:"채널 개설하기",open:"개설",close_channel:"채널 폐쇄하기",close:"폐쇄",restart:"서버 재시작",save:"저장",save_tooltip:"변경 사항 저장",credit_debit:"크레딧 / 직불카드",credit_hint:"계정에 자금을 넣으려면 Enter를 눌러주세요",credit_label:"{denomination} 단위로 충전하기",credit_ok:"가상 자금({amount} sats) 입출금 성공. 지불은 자금 출처의 실제 자금에 따라 달라집니다.",restart_tooltip:"변경 사항을 적용하려면 서버를 재시작해야 합니다.",add_funds_tooltip:"지갑에 자금을 추가합니다.",reset_defaults:"기본 설정으로 돌아가기",reset_defaults_tooltip:"설정했던 내용들을 모두 지우고, 기본 설정으로 돌아갑니다.",download_backup:"데이터베이스 백업 다운로드",name_your_wallet:"사용할 {name}지갑의 이름을 정하세요",paste_invoice_label:"인보이스, 결제 요청, 혹은 lnurl 코드를 붙여넣으세요 *",lnbits_description:"설정이 쉽고 가벼운 LNbits는 어떤 라이트닝 네트워크의 예산 자원 위에서든 돌아갈 수 있습니다, 그리고 다른 LNbits 지갑들입니다. 스스로 사용하기 위해, 또는 다른 사람들에게 수탁형 솔루션을 제공하기 위해 LNbits를 운영할 수 있습니다. 각 지갑들은 자신만의 API key를 가지며, 생성 가능한 지갑의 수에는 제한이 없습니다. 자금을 분할할 수 있는 기능으로 인해, LNbits는 자금 운영 도구로써뿐만 아니라 개발 도구로써도 유용합니다. 확장 기능들은 LNbits에 여러분들이 라이트닝 네트워크의 다양한 최신 기술들을 수행해볼 수 있게 하는 추가 기능을 제공합니다. LNbits 개발진들은 확장 기능들의 개발 또한 가능한 쉽게 만들었으며, 무료 오픈 소스 프로젝트답게 사람들이 자신만의 확장 기능들을 개발하고 제출하기를 응원합니다.",export_to_phone:"QR 코드를 이용해 모바일 기기로 내보내기",export_to_phone_desc:"이 QR 코드는 선택된 지갑의 최대 접근 권한을 가진 전체 URL을 담고 있습니다. 스캔 후, 모바일 기기에서 지갑을 열 수 있습니다.",wallet:"지갑:",wallets:"지갑",add_wallet:"새로운 지갑을 추가합니다",delete_wallet:"지갑을 삭제합니다",delete_wallet_desc:"이 지갑은 삭제될 것이며, 삭제 시 지갑 내 자금은 복구가 불가능합니다.",rename_wallet:"지갑 이름 변경",update_name:"이름 변경하기",fiat_tracking:"법정통화 가격 표시",currency:"통화",update_currency:"통화 수정하기",press_to_claim:"비트코인을 수령하려면 눌러주세요",donate:"기부",view_github:"GitHub 페이지 보기",voidwallet_active:"VoidWallet이 활성화되었습니다! 결제가 불가능합니다.",use_with_caution:"주의하세요 - {name} 지갑은 아직 BETA 단계입니다.",service_fee:"서비스 수수료: 거래액의 {amount} %",service_fee_max:"서비스 수수료: 거래액의 {amount} % (최대 {max} sats)",service_fee_tooltip:"지불 결제 시마다 LNbits 서버 관리자에게 납부되는 서비스 수수료",toggle_darkmode:"다크 모드 전환",payment_reactions:"결제 반응",view_swagger_docs:"LNbits Swagger API 문서를 봅니다",api_docs:"API 문서",api_keys_api_docs:"노드 URL, API 키와 API 문서",lnbits_version:"LNbits 버전",runs_on:"Runs on",paste:"붙여넣기",paste_from_clipboard:"클립보드에서 붙여넣기",paste_request:"지불 요청 붙여넣기",create_invoice:"인보이스 생성하기",camera_tooltip:"카메라를 이용해서 인보이스/QR을 스캔하세요",export_csv:"CSV 형태로 내보내기",chart_tooltip:"그래프로 보여주기",pending:"대기 중",copy_invoice:"인보이스 복사하기",withdraw_from:"출금",cancel:"취소",scan:"스캔",read:"분석하기",pay:"지불하기",memo:"Memo",date:"일시",payment_processing:"결제 처리 중...",not_enough_funds:"자금이 부족합니다!",search_by_tag_memo_amount:"태그, memo, 수량으로 검색하기",invoice_waiting:"결제를 기다리는 인보이스",payment_received:"받은 결제액",payment_sent:"보낸 결제액",receive:"받기",send:"보내기",outgoing_payment_pending:"지불 대기 중",drain_funds:"자금 비우기",drain_funds_desc:"이는 선택된 지갑으로부터 모든 자금을 인출하는 LNURL-withdraw QR 코드입니다. 그 누구와도 공유하지 마세요. balanceCheck 및 balanceNotify 기능과 호환되며, 당신의 지갑은 첫 출금 이후로도 계속 자금을 끌어당기고 있을 수 있습니다.",i_understand:"이해하였습니다",copy_wallet_url:"지갑 URL 복사하기",disclaimer_dialog_title:"중요!",disclaimer_dialog:"로그인 기능은 향후 업데이트를 통해 지원될 계획이지만, 현재로써는 이 페이지에 향후 다시 접속하기 위해 북마크 설정하는 것을 잊지 마세요! 이 서비스는 아직 BETA 과정에 있고, LNbits 개발자들은 자금 손실에 대해 전혀 책임을 지지 않습니다.",no_transactions:"아직 아무런 거래도 이루어지지 않았습니다",manage:"관리",exchanges:"거래소",extensions:"확장 기능",no_extensions:"아직 설치된 확장 기능들이 없네요 :(",created:"생성됨",search_extensions:"확장 기능 검색하기",extension_sources:"확장 소스",ext_sources_hint:"확장 프로그램을 다운로드할 수 있는 저장소",ext_sources_label:"출처 URL (공식 LNbits 확장 소스만 사용하고, 신뢰할 수 있는 출처를 사용하세요)",warning:"주의",repository:"저장소",confirm_continue:"정말로 계속할까요?",manage_extension_details:"확장 기능 설치/삭제하기",install:"설치",uninstall:"삭제",drop_db:"데이터 삭제",enable:"활성화",pay_to_enable:"지불하여 활성화",enable_extension_details:"현재 사용자 계정에 해당 확장 기능을 활성화합니다",disable:"비활성화",delete:"삭제",installed:"설치됨",activated:"작동됨",deactivated:"작동 중지",release_notes:"배포 노트",activate_extension_details:"사용자들의 확장 기능 사용 가능 여부를 결정합니다",featured:"추천",all:"전체",only_admins_can_install:"(관리자 계정만이 확장 기능을 설치할 수 있습니다)",admin_only:"관리자 전용",new_version:"새로운 버전",extension_depends_on:"의존성 존재:",extension_rating_soon:"평점 기능도 곧 구현됩니다",extension_installed_version:"설치된 버전",extension_uninstall_warning:"모든 사용자들로부터 이 확장 기능을 제거한다는 점에 유의하세요.",uninstall_confirm:"네, 삭제합니다",extension_db_drop_info:"해당 확장 기능의 모든 데이터가 영구적으로 삭제됩니다. 작업 수행 후에는 되돌릴 수 없습니다!",extension_db_drop_warning:"해당 확장 기능의 모든 데이터가 영구적으로 삭제될 겁니다. 계속하려면 확장 기능의 이름을 입력해주세요:",extension_required_lnbits_version:"이 배포 버전은 더 높은 버전의 lnbits가 설치되어 있어야 합니다.",min_version:"최소값 (포함됨)",max_version:"최대값 (제외됨)",payment_hash:"결제 해쉬값",fee:"수수료",amount:"액수",amount_sats:"금액 (사토시)",tag:"태그",unit:"단위",description:"상세",expiry:"만료",webhook:"Webhook",payment_proof:"Payment 증거",update:"업데이트",update_available:"{version}으로 업데이트가 가능합니다.",latest_update:"이미 {version} 버전으로 업데이트되었습니다.",notifications:"알림",no_notifications:"알림 없음",notifications_disabled:"LNbits 상태 알림이 비활성화되었습니다.",enable_notifications:"알림 활성화",enable_notifications_desc:"활성화 시, 가장 최신의 보안 사고나 소프트웨어 업데이트 등의 LNbits 상황 업데이트를 불러옵니다.",enable_watchdog:"와치독 활성화",enable_watchdog_desc:"활성화 시, LNbits 잔금보다 당신의 잔금이 지정한 수준보다 더 낮아질 경우 자동으로 자금의 원천을 VoidWallet으로 변경합니다. 업데이트 이후 수동으로 활성화해 주어야 합니다.",watchdog_interval:"와치독 시간 간격",watchdog_interval_desc:"와치독 델타 값을 기반으로 하여 당신의 LNbits 서버에서 나오는 비상 정지 신호를 백그라운드 작업으로 얼마나 자주 확인할 것인지를 결정합니다. (분 단위)",watchdog_delta:"와치독 델타",watchdog_delta_desc:"당신의 자금 원천을 VoidWallet으로 변경하기까지의 기준 값 [LNbits 잔액 - 노드 잔액 > 델타 값]",status:"상황",notification_source:"알림 메세지 출처",notification_source_label:"알림 메세지를 가져올 URL (공식 LNbits 상황판 출처나, 당신이 신뢰할 수 있는 출처만을 사용하세요)",more:"더 알아보기",less:"적게",releases:"배포 버전들",watchdog:"와치독",server_logs:"서버 로그",ip_blocker:"IP 기반 차단기",security:"보안",security_tools:"보안 도구들",block_access_hint:"IP 기준으로 접속 차단하기",allow_access_hint:"IP 기준으로 접속 허용하기 (차단한 IP들을 무시합니다)",enter_ip:"IP 주소를 입력하고 Enter를 눌러주세요",rate_limiter:"횟수로 제한하기",wallet_limiter:"지갑 제한기",wallet_limit_max_withdraw_per_day:"일일 최대 지갑 출금액(sats) (0은 비활성화)",wallet_max_ballance:"지갑 최대 잔액(sats) (0은 비활성화)",wallet_limit_secs_between_trans:"지갑 당 거래 사이 최소 초 (0은 비활성화)",number_of_requests:"요청 횟수",time_unit:"시간 단위",minute:"분",second:"초",hour:"시간",disable_server_log:"서버 로깅 중단하기",enable_server_log:"서버 로깅 활성화하기",coming_soon:"곧 구현될 기능들입니다",session_has_expired:"세션 유효 기간이 만료되었습니다. 다시 로그인해 주세요.",instant_access_question:"즉시 액세스하시겠습니까?",login_with_user_id:"사용자 ID로 로그인",or:"또는",create_new_wallet:"새 지갑 만들기",login_to_account:"계정에 로그인하세요.",create_account:"계정 생성",account_settings:"계정 설정",signin_with_nostr:"Nostr로 계속하기",signin_with_google:"Google으로 로그인",signin_with_github:"GitHub으로 로그인",signin_with_keycloak:"Keycloak으로 로그인",username_or_email:"사용자 이름 또는 이메일",password:"비밀번호",password_config:"비밀번호 설정",password_repeat:"비밀번호 재입력",change_password:"비밀번호 변경",update_credentials:"자격 증명 업데이트",update_pubkey:"공개 키 업데이트",set_password:"비밀번호 설정",invalid_password:"비밀번호는 최소 8자 이상이어야 합니다",login:"로그인",register:"등록",username:"사용자 이름",pubkey:"공개 키",user_id:"사용자 ID",email:"이메일",first_name:"성명",last_name:"성",picture:"사진",verify_email:"이메일을 인증하려면",account:"계정",update_account:"계정 업데이트",invalid_username:"잘못된 사용자 이름",auth_provider:"인증 제공자",my_account:"내 계정",back:"뒤로",logout:"로그아웃",look_and_feel:"외관과 느낌",toggle_gradient:"그라디언트 전환",gradient_background:"그라디언트 배경",language:"언어",color_scheme:"색상 구성",admin_settings:"관리자 설정",extension_cost:"이 버전은 최소 {cost} sats의 지불이 필요합니다.",extension_paid_sats:"당신은 이미 {paid_sats} sats를 지불했습니다.",release_details_error:"릴리스 세부 정보를 가져올 수 없습니다.",pay_from_wallet:"지갑에서 결제하다",wallet_required:"지갑 *",show_qr:"QR 보기",retry_install:"다시 설치하세요",new_payment:"새로운 결제하기",update_payment:"결제 업데이트",already_paid_question:"이미 지불하셨나요?",sell:"판매",sell_require:"확장을 활성화하려면 결제를 요청하십시오.",sell_info:"{name} 확장 기능을 활성화하려면 최소 {amount} 사토시의 결제가 필요합니다.",hide_empty_wallets:"빈 지갑 숨기기",recheck:"재확인",contributors:"기여자",license:"라이선스",reset_key:"재설정 키",reset_password:"비밀번호 재설정",border_choices:"테두리 선택사항",select_all:"모두 선택",nfc_supported:"NFC 지원됨",nfc_not_supported:"NFC 지원되지 않음",expire_date:"만료 날짜:",hash:"해시:",welcome_lnbits:"LNbits에 오신 것을 환영합니다.",setup_su_account:"슈퍼유저 계정을 아래에 설정하십시오.",create_ticker_converter:"통화 티커 변환기 생성",enable_audit:"감사 활성화",recommended:"추천됨",audit_desc:"지정된 필터에 따라 HTTP 요청 기록",audit_record_req:"레코드 요청 본문",audit_record_warning:"경고:",audit_record_req_warning_1:"암호와 같은 기밀 데이터가 기록됩니다.",audit_record_req_warning_2:"요청 본문은 큰 크기를 가질 수 있습니다.",audit_record_use:"주의해서 사용하십시오.",audit_ip:"IP 주소 기록",audit_ip_desc:"클라이언트의 IP 주소를 기록하십시오.",audit_path_params:"경로 매개변수 기록",audit_query_params:"쿼리 매개변수 기록",audit_http_methods:"HTTP 메서드 포함",audit_http_methods_hint:"포함할 HTTP 메서드 목록. 목록이 비어 있으면 모두 포함됩니다.",audit_http_methods_label:"HTTP 방법",audit_resp_codes:"HTTP 응답 코드 포함",audit_resp_codes_hint:"포함할 HTTP 코드 목록(정규 표현식 일치). 빈 목록은 모두를 의미합니다. 예: 4.*, 5.*",audit_resp_codes_label:"HTTP 응답 코드 (정규식)",audit_paths:"포함 경로",audit_paths_hint:"포함할 경로 목록 (정규 표현식 일치). 빈 목록은 모두를 의미합니다.",audit_paths_label:"HTTP 경로 (정규식)",audit_paths_exclude:"제외 경로",audit_paths_exclude_hint:"제외할 경로 목록 (정규 표현식 일치). 빈 목록은 없음을 의미합니다.",audit_paths_exclude_label:"HTTP 경로 (정규식)",exchange_providers:"거래소 공급자",admin_extensions:"관리자 확장 프로그램",admin_extensions_label:"관리자 확장 기능",admin_extensions_hint:"확장 기능은 관리자 권한이 있는 사용자만 사용할 수 있습니다.",user_default_extensions:"사용자 기본 확장자",user_default_extensions_label:"사용자 확장 기능",user_default_extensions_hint:"사용자에게 기본적으로 활성화될 확장 기능.",miscellanous:"기타",misc_disable_extensions:"확장 프로그램 사용 안 함",misc_disable_extensions_label:"모든 확장 프로그램 비활성화",misc_hide_api:"API 숨기기",misc_hide_api_label:"지갑 API 숨기기, 확장 기능은 준수할 수 있음",wallets_management:"지갑 관리",funding_source_info:"자금 출처 정보",funding_source:"자금 출처: {wallet_class}",node_balance:"노드 잔액: {balance} 사토시",lnbits_balance:"LNbits 잔액: {balance} sats",funding_reserve_percent:"예약 비율: {percent} %",node_management:"노드 관리",node_management_not_supported:"활성화된 자금 출처에 의해 노드 관리는 지원되지 않습니다.",toggle_node_ui:"노드 UI",toggle_public_node_ui:"공개 노드 UI",toggle_transactions_node_ui:"트랜잭션 탭 (대형 CLN 노드에서는 비활성화)",invoice_expiry:"송장 만료",invoice_expiry_label:"송장 만료 (초)",fee_reserve:"수수료 예약",fee_reserve_msats:"msats의 예약 수수료",fee_reserve_percent:"예약 수수료(%)",server_management:"서버 관리",base_url:"기본 URL",base_url_label:"서버의 정적/기본 URL",authentication:"인증",auth_token_expiry_label:"토큰 만료 시간(분)",auth_token_expiry_hint:"토큰이 만료되기까지 남은 시간(분)",auth_allowed_methods_label:"허용된 인증 방법",auth_allowed_methods_hint:"인증 방법 선택",auth_nostr_label:"Nostr 요청 URL",auth_nostr_hint:"클라이언트가 로그인하는 데 사용할 절대 URL.",auth_google_ci_label:"Google 클라이언트 ID",auth_google_ci_hint:"허가된 리디렉션 URI에 https://{domain}/api/v1/auth/google/token이 포함되어 있는지 확인하세요.",auth_google_cs_label:"Google 클라이언트 시크릿",auth_gh_client_id_label:"GitHub 클라이언트 ID",auth_gh_client_id_hint:"인가 콜백 URL이 https://{domain}/api/v1/auth/github/token으로 설정되어 있는지 확인하십시오.",auth_gh_client_secret_label:"GitHub 클라이언트 비밀키",auth_keycloak_label:"Keycloak 디스커버리 URL",auth_keycloak_ci_label:"키클록 클라이언트 ID",auth_keycloak_ci_hint:"승인 콜백 URL이 https://{domain}/api/v1/auth/keycloak/token으로 설정되어 있는지 확인하십시오.",auth_keycloak_cs_label:"Keycloak 클라이언트 시크릿",currency_settings:"통화 설정",allowed_currencies:"허용되는 통화",allowed_currencies_hint:"사용 가능한 법정 화폐의 수를 제한하십시오.",default_account_currency:"기본 계좌 통화",default_account_currency_hint:"회계 기본 통화",service_fee_label:"서비스 수수료 (%)",service_fee_hint:"트랜잭션당 수수료 (%)",service_fee_max_label:"서비스 수수료 최대 (sats)",service_fee_max_hint:"(사토시)로 부과할 최대 서비스 요금",fee_wallet:"수수료 지갑",fee_wallet_label:"수수료 지갑 (지갑 ID)",fee_wallet_hint:"자금을 보낼 지갑 ID",disable_fee:"수수료 비활성화",disable_fee_internal:"내부 결제에 대한 서비스 요금 비활성화",disable_fee_internal_desc:"내부 라이트닝 결제에 대한 서비스 요금 비활성화",ui_management:"UI 관리",ui_site_title:"사이트 제목",ui_site_tagline:"사이트 태그라인",ui_elements_enable:"홈페이지의 요소 활성화",ui_elements_disable:"홈페이지의 요소 비활성화",ui_toggle_elements_tip:"'에 의해 구동됨' 등의 홈페이지 요소 제거",ui_site_description:"사이트 설명",ui_site_description_hint:"일반 텍스트, Markdown, 또는 원시 HTML을 사용하십시오.",ui_default_wallet_name:"기본 지갑 이름",lnbits_wallet:"LNbits 지갑",denomination:"액면가",denomination_hint:"FakeWallet 토큰의 이름",ui_qr_code_logo:"QR 코드 로고",ui_qr_code_logo_hint:"QR 코드의 로고 이미지 URL",ui_custom_badge:"맞춤 배지",ui_custom_badge_label:"사용자 지정 배지 '주의하여 사용 - LNbits 지갑은 여전히 BETA 상태입니다'",ui_custom_badge_color_label:"사용자 정의 배지 색상",themes:"테마",themes_hint:"사용자가 사용할 수 있는 테마 선택",custom_logo:"맞춤 로고",custom_logo_hint:"로고 이미지의 URL",ad_space_title:"광고 공간 제목",ad_space_title_label:"지원:",ad_slots:"광고 슬롯",ad_slots_hint:"광고 URL 및 이미지 파일 경로를 CSV 형식으로, 확장자는 준수할 수 있습니다.",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"광고 활성화됨",ads_disabled:"광고 비활성화됨",user_management:"사용자 관리",admin_users:"관리자 사용자",admin_users_hint:"관리자 권한이 있는 사용자",admin_users_label:"사용자 ID",allowed_users:"허용된 사용자",allowed_users_hint:"LNbits는 이 사용자들만 사용할 수 있습니다.",allowed_users_label:"사용자 ID",allow_creation_user:"새 사용자 생성 허용",allow_creation_user_desc:"색인 페이지에서 새 사용자 생성 허용",components:"구성 요소",long_running_endpoints:"최상위 5개의 장시간 실행 엔드포인트",http_request_methods:"HTTP 요청 메서드",http_response_codes:"HTTP 응답 코드",request_details:"요청 세부사항",http_request_details:"HTTP 요청 세부사항"},window.localisation.fi={confirm:"Kyllä",server:"Palvelin",theme:"Teema",site_customisation:"Sivuston kustomointi",funding:"Rahoitus",users:"Käyttäjät",audit:"Seuranta",api_watch:"API-seuranta",apps:"Sovellukset",channels:"Kanavat",transactions:"Tapahtumat",dashboard:"Ohjauspaneeli",node:"Solmu",export_users:"Vie käyttäjät",no_users:"Käyttäjiä ei löytynyt",total_capacity:"Kokonaiskapasiteetti",avg_channel_size:"Keskimääräisen kanavan kapasiteetti",biggest_channel_size:"Suurimman kanavan kapasiteetti",smallest_channel_size:"Pienimmän kanavan kapasiteetti",number_of_channels:"Kanavien lukumäärä",active_channels:"Aktiivisia kanavia",connect_peer:"Yhdistä naapuriin",connect:"Yhdistä",reconnect:"Uudista yhteys",open_channel:"Avaa kanava",open:"Avaa",close_channel:"Sulje kanava",close:"Sulje",restart:"Palvelimen uudelleen käynnistys",image_library:"Kuvakirjasto",save:"Tallenna",save_tooltip:"Tallenna muutokset",credit_debit:"Hyvitä / Veloita",credit_hint:"Hyväksy painamalla Enter (negatiivisetkin arvot ovat sallittuja)",credit_label:"Hyvitä / Veloita tilille {denomination}-varoja",credit_ok:"Virtuaalivarojen ({amount} sat) hyvitys-/veloitustapahtuma onnistui. Maksukyky riippuuu rahoituslähteen todellisista varoista.",restart_tooltip:"Uudelleenkäynnistä palvelu muutosten käyttöönottamiseksi",add_funds_tooltip:"Lisää varoja lompakkoon",reset_defaults:"Palauta oletusasetukset",reset_defaults_tooltip:"Poista kaikki asetusten muutokset ja palauta järjestelmän oletusasetukset.",download_backup:"Lataa tietokannan varmuuskopio",name_your_wallet:"Nimeä lompakkosi {name}",paste_invoice_label:"Liita lasku, maksupyyntö tai LNURL-koodi*",lnbits_description:"Kevyt ja helppokäyttöinen LNbits voi käyttää rahoituslähteinään mitä vain Lightning-palveluita ja jopa LNbits-palvelua! Voit käyttää sitä itsenäisesti ja helposti tarjota erilaisia Lightning-palveluita. Pystyt luomaan sillä salamaverkkolompakoita eikä niiden määrää ole rajoitettu. Jokaiselle lompakolle saat yksilölliset API-avaimet. Varojen osittaminen tekee siitä erittäin kätevän varojen hallinnassa sekä myös ohjelmistokehityksen työkalun. Laajennukset lisäävät LNbits:in toiminnallisuuksia. Näinpä voit helposti testailla useita erilaisia ja viimeisimpiä salamaverkon teknologioita. Laajennuksien kehittämisen olemme pyrkineet tekemään mahdollisimman helpoksi pitämällä LNbits:in ilmaisena OpenSource-projektina. Kannustamme kaikkia kehittämään ja jakelemaan omia laajennuksia!",export_to_phone:"Käytä puhelimessa lukemalla QR-koodi",export_to_phone_desc:"Tämä QR-koodi sisältää URL-osoitteen, jolla saa lompakkoosi täydet valtuudet. Voit lukea sen puhelimellasi ja avata sillä lompakkosi. Voit myös lisätä lompakkosi selaimella käytettäväksi PWA-sovellukseksi puhelimen aloitusruudulle. ",access_wallet_on_mobile:"Mobiili käyttö",wallet:"Lompakko:",wallet_name:"Lompakon nimi",wallets:"Lompakot",add_wallet:"Lisää lompakko",add_new_wallet:"Lisää uusi lompakko",pin_wallet:"Kiinnitä lompakko",delete_wallet:"Poista lompakko",delete_wallet_desc:"Lompakko poistetaan pysyvästi. Siirrä lompakosta varat ennalta muualle, sillä tämä toiminto on PERUUTTAMATON!",rename_wallet:"Nimeä lompakko uudelleen",update_name:"Tallenna",fiat_tracking:"Käytettävä valuutta",fiat_providers:"Valuutan välittäjät",currency:"Valuutta",update_currency:"Tallenna",press_to_claim:"Lunasta varat painamalla tästä",claim_desc:"Näyttää että sinulla on lunastamattomia bitcoin varoja, mutta sinulla ei vielä ole lompakkoa. Lunasta varat allaolevaa nappia painamalla, ja sinulle luodaan lompakko.",donate:"Lahjoita",view_github:"Näytä GitHub:ssa",voidwallet_active:"VoidWallet on aktiivinen. Se ei tue maksutapahtumia!",use_with_caution:"KÄYTÄ VAROEN - BETA-ohjelmisto on käytössä palvelussa: {name}",service_fee_tooltip:"LNbits palvelimen ylläpitäjä veloittaa lähtevästä maksusta palvelumaksun.",toggle_darkmode:"Tumma näkymä",payment_reactions:"Maksureaktiot",view_swagger_docs:"Näytä LNbits Swagger API-dokumentit",api_docs:"API-dokumentaatio",api_keys_api_docs:"Solmun URL, API-avaimet ja -dokumentaatio",lnbits_version:"LNbits versio",runs_on:"Mukana menossa",paste:"Liitä",paste_from_clipboard:"Liitä leikepöydältä",paste_request:"Liitä pyyntö",create_invoice:"Laskuta",camera_tooltip:"Kuvaa lasku tai QR-koodi",export_csv:"Vie CSV-tiedostoon",export_csv_details:"Vie CSV-tiedostoon lisätietoineen",chart_tooltip:"Näytä kaaviokuva",pending:"Odottaa",copy_invoice:"Kopioi lasku",withdraw_from:"Nosta kohteesta",cancel:"Peruuta",scan:"Scannaa",read:"Lue",write:"Kirjoita",pay:"Maksa",memo:"Kuvaus",date:"Päiväys",path:"Path",payment_processing:"Maksua käsitellään...",not_enough_funds:"Varat eivät riitä!",search_by_tag_memo_amount:"Etsi tunnisteella, muistiolla tai määrällä",invoice_waiting:"Lasku odottaa maksua",payment_received:"Maksu vastaanotettu",payment_sent:"Maksu lähetetty",payment_failed:"Maksu epäonnistui",receive:"vastaanota",send:"lähetä",outgoing_payment_pending:"Lähtevä maksu odottaa",drain_funds:"Tyhjennä varat",drain_funds_desc:"Tämä LNURL-withdraw -tyyppinen QR-koodi on tarkoitettu kaikkien varojen imurointiin lompakosta. ÄLÄ JAA SITÄ KENELLEKÄÄN! Se on balanceCheck- ja balanceNotify-toimintojen kanssa yhteensopiva, joten sitä voi käyttää lompakon tyhjentämiseen ensimmäisen käytön jälleen jatkuvasti.",i_understand:"Vakuutan ymmärtäväni",copy_wallet_url:"Kopioi lompakon URL",disclaimer_dialog_title:"Tärkeää!",disclaimer_dialog:"Sinun *PITÄÄ TALLETTAA* kirjautumistietosi turvallisesta ja helposti saataville, jotta pääset jatkossa kirjautumaan lompakkoosi! Löydät kirjautumistiedot Tilin asetukset -sivulta. Kukaan ei ota mitään vastuuta varojen säilymisestä tai niiden käytettävyyden takaamisesta.",no_transactions:"Lompakossa ei ole yhtään tapahtumaa",manage:"Hallinnointi",exchanges:"Vaihtokurssit",extensions:"Laajennukset",no_extensions:"Laajennuksia ei ole asennettu :(",created:"Luotu",search_extensions:"Etsi laajennuksia",search_wallets:"Etsi lompakkoa",extension_sources:"Laajennuslähteet",ext_sources_hint:"Lähteet joista laajennuksia voi ladata",ext_sources_label:"Lähde-URL (käytä vain virallista LNbits tai muuta luotettaa laajennuslähdettä)",warning:"Varoitus",repository:"Laajennuksien lähde",confirm_continue:"Haluatko varmasti jatkaa?",manage_extension_details:"Asenna/Poista laajennus",install:"Asenna",uninstall:"Poista",drop_db:"Poista tiedot",enable:"Ota käyttöön",enabled:"Käytössä",pay_to_enable:"Maksa ottaaksesi käyttöön",enable_extension_details:"Ota laajennus käyttöön tälle käyttäjälle",disable:"Poista käytöstä",delete:"Poista",installed:"Asennettu",activated:"Käytössä",deactivated:"Poissa käytöstä",release_notes:"Julkaisutiedot",activate_extension_details:"Aseta/Poista laajennus käyttäjien saatavilta",featured:"Esittelyssä",all:"Kaikki",only_admins_can_install:"(Vain pääkäyttäjät voivat asentaa laajennuksia)",admin_only:"Pääkäyttäjille",new_version:"Uusi versio",extension_depends_on:"Edellyttää:",extension_rating_soon:"Arvostelut on tulossa pian",extension_installed_version:"Nykyinen versio",extension_uninstall_warning:"Olet poistamassa laajennuksen kaikilta käyttäjiltä.",uninstall_confirm:"Kyllä, poista asennus",extension_db_drop_info:"Kaikki laajennuksen tallettama tieto poistetaan pysyvästi. Poistoa ei voi jälkikäteen peruuttaa!",extension_db_drop_warning:"Olet tuhoamassa laajennuksen tallettamat tiedot. Vahvista poisto kirjoittamalla viivalle seuraavassa näkyvä laajennuksen nimi:",extension_required_lnbits_version:"Tämä laajennus vaatii vähintään LNbits-version",min_version:"Minimi (sisältyy)",max_version:"Enimmäismäärä (ei sisälly)",payment_hash:"Maksun tiiviste",fee:"Kulu",amount:"Määrä",amount_limits:"Määrien rajat",amount_sats:"Määrä (sat)",faucest_wallet:"Faucet Wallet",faucest_wallet_desc_1:"Each time a payment is confirmed by the {provider} provider funds will be subtracted from this wallet.",faucest_wallet_desc_2:"This helps monitor all {provider} payments and their status.",faucest_wallet_desc_3:"This wallet must be topped up with the amount of sats that the admin is willing to offer in exchange for the fiat currency.",faucest_wallet_desc_4:"If this wallet is configured, but is empty, the {provider} payments will not be processed.",faucest_wallet_desc_5:"This wallet can eventually get to a negative balance if parallel fiat payments are made.",faucest_wallet_id:"Faucet Wallet ID (optional)",faucest_wallet_id_hint:"Wallet ID to use for the faucet. It will be used to send the funds to the user.",tag:"Tunniste",unit:"Yksikkö",description:"Kuvaus",expiry:"Vanhenee",webhook:"Webhook",webhook_url:"Webhook URL",webhook_url_hint:"Webhook URL to send the payment details to. It will be called when the payment is completed.",webhook_events_list:"The following events must be supported by the webhook:",webhook_stripe_description:"One the stripe side you must configure a webhook with a URL that points to your LNbits server.",payment_proof:"Maksun varmenne",update:"Päivitä",update_available:"Saatavilla on päivitys {version}-versioon!",update_available:"Rahoituslähteet",latest_update:"Käytössä oleva versio {version}, on viimeisin saatavilla oleva.",notifications:"Tiedotteet",notifications_configure:"Määritä tiedotukset",notifications_nostr_config:"Nostr-määritykset",notifications_enable_nostr:"Kaytä Nostr:ia",notifications_enable_nostr_desc:"Lähetä tietodukset Nostr:in kautta",notifications_nostr_private_key:"Nostr-yksityisavain",notifications_nostr_private_key_desc:"Yksityinen avain (hex tai nsec) Nostr-viestien lähettämisen allekirjoitukseen",notifications_nostr_identifiers:"Nostr-tunnisteet",notifications_nostr_identifiers_desc:"Lista tunnisteista kenelle tiedotukset lähetetään",notifications_telegram_config:"Telegram-määritykset",notifications_enable_telegram:"Käytä Telegram:ia",notifications_enable_telegram_desc:"Lähetä tietodukset Telegram:in kautta",notifications_telegram_access_token:"Access Token",notifications_telegram_access_token_desc:"Telegram botin Access token",notifications_chat_id:"Keskustelun tunnus",notifications_chat_id_desc:"Keskustelun tunnus minne tiedotukset lähetetään",notifications_email_config:"Sähköposti määritykset",notifications_enable_email:"Käytä sähköpostia",notifications_enable_email_desc:"Lähetä tiedotteet sähköpostilla",notifications_send_test_email:"Lähetä testiposti",notifications_send_email:"Lähetä sähköpostiosoitteella",notifications_send_email_desc:"Lähettäjänä näkyvä sähköpostiosoite",notifications_send_email_username:"Käyttäjätunnus",notifications_send_email_username_desc:"Käyttäjätunnus, mikäli tyhjä, käytetään sähköpostiosoitetta",notifications_send_email_password:"Lähtevän sähköpostin salasana",notifications_send_email_password_desc:"Salasana lähettävälle sähköpostille",notifications_send_email_server_port:"Lähtevän sähköpostin SMTP-portti",notifications_send_email_server_port_desc:"SMTP-palvelimen portti",notifications_send_email_server:"Lähtevän sähköpostin SMTP-palvelin",notifications_send_email_server_desc:"SMTP-palvelin jonka kautta sähköpostit lähetetään",notifications_send_to_emails:"Sähköpostien vastaanottaja",notifications_send_to_emails_desc:"Kenelle sähköpostit lähetetään",notification_settings_update:"Asetuksia päivitetty",notification_settings_update_desc:"Tiedota kun palvelimen asetuksia on päivitetty",notification_server_start_stop:"Palvelimen Käynnystys/Sammutus",notification_server_start_stop_desc:"Tiedota kun palvelin on käynnistetty tai sammutettu",notification_watchdog_limit:"Watchdog-raja -tiedote",notification_watchdog_limit_desc:"Tiedota kun watchdog-raja on saavutettu (ei vaikuta rahoituslähteeseen)",notification_server_status:"Palvelimen tila",notification_server_status_desc:"Lähetä säännölliset tiedotteet palvelimen tilasta (anna tiedotusväli tunteina)",notification_incoming_payment:"Saapuvat maksut",notification_incoming_payment_desc:"Tiedota kun lompakon vastaanottaman ja saapuvan maksun määrä ylittää rajan (sat)",notification_outgoing_payment:"Lähtevät maksut",notification_outgoing_payment_desc:"Tiedota kun lompakon lähettävän ja maksettavan maksun määrä ylittää rajan (sat)",notification_credit_debit:"Hyvitys / Veloitus",notification_credit_debit_desc:"Tiedota kun Superuser tekee lompakon hyvitys- tai veloitustapahtumia",notification_balance_delta_changed:"Saldon määrän muutos",notification_balance_delta_changed_desc:"Tiedota kun solmun ja LNbits saldojen eri poikkeaa edes yhden satoshin. Tämä tarkastus tehdään joka minuuttu.",enable_watchdog:"Watchdog-kytkin",enable_watchdog_desc:"Tämän ollessa käytössä, ja solmun varojen laskiessa alle LNbits-varojen määrän, otetaan automaattisesti käyttöön VoidWallet. Päivityksen jälkeen tämä asetus pitää tarkastaa uudelleen.",watchdog_interval:"Watchdog-aikaväli",watchdog_interval_desc:"Tällä määritetään kuinka usein taustatoiminto tarkistaa varojen Delta-muutokset [node_balance - lnbits_balance] killswitch-signaalille. Hakujen väli ilmoitetaan minuutteina.",watchdog_delta:"Watchdog Delta",watchdog_delta_desc:"Mikäli rahoituslähteen saldo laskee alle LNbits kokonaissaldon, muutetaan rahoituslähteeksi heti VoidWallet. Päivittämisen jälkeen asetus pitää päivittää manuaalisestsi.",status:"Tilanne",notification_source:"Tiedotteiden lähde",notification_source_label:"Lähde-URL (käytä ainoastaan LNbits:iä tai muuta luotettavaa lähdettä)",more:"näytä lisää",more_count:"näytä {count} lisää",less:"supista",releases:"Julkaisut",watchdog:"Watchdog",server_logs:"Palvelimen lokit",ip_blocker:"Palvelimen suojaus IP-osoitesuodattimella",security:"Turvallisuus",security_tools:"Turvallisuus työkalut",block_access_hint:"Estä pääsy IP-osoitteen perusteella",allow_access_hint:"Salli pääsy IP-osoitteen perusteella (ohittaa estot)",enter_ip:"Anna IP ja paina +",rate_limiter:"Toiston rajoitin",callback_url_rules:"Callback URL -säännöt",enter_callback_url_rule:"Anna URL-sääntö regex-muodossa ja paina enter",callback_url_rule_hint:"Callback URL:it (kuten LNURL) tarkistetaan kaikkien näiden sääntöjen mukaisesti. Jos sääntöjä ei ole määritetty, kaikki URL:it ovat sallittuja.",wallet_limiter:"Lompakon käyttörajoitin",wallet_config:"Wallet Config",wallet_charts:"Wallet Charts",wallet_limit_max_withdraw_per_day:"Päivittäin nostettavissa sat maksimi (0 poistaa käytöstä)",wallet_max_ballance:"Maksimisaldo (sat) (0 poistaa käytöstä)",wallet_limit_secs_between_trans:"Tapahtumien välinen minimi (sec) (0 poistaa käytöstä)",only_incoming_payments_allowed:"Vain saapuvat maksut sallittuna",disable_outgoing_payments:"Poista lähtevät maksut käytöstä",number_of_requests:"Pyyntöjen lukumäärä",time_unit:"aikayksikkö",minute:"minuutti",settings:"Asetukset",second:"sekunti",hour:"tunti",disable_server_log:"Piilota palvelimen loki",enable_server_log:"Näytä palvelimen loki",coming_soon:"Ominaisuus on tulossa pian",session_has_expired:"Käyttämätön sessio on vanhentunut. Kirjaudu uudelleen.",instant_access_question:"perinteinen kirjautuminen",login_with_user_id:"Kirjaudu käyttäjä-ID:llä",or:"tai",create_new_wallet:"Avaa uusi lompakko",delete_all_wallets:"Poista kaikki lompakot",confirm_delete_all_wallets:"Oletko todellakin varma, että haluat poistaa käyttäjältä KAIKKI lompakot?",login_to_account:"Kirjaudu käyttäjänimellä",create_account:"Luo tili",account_settings:"Tilin asetukset",signin_with_oauth:"Login with",signin_with_oauth_or:"or Login with",signin_with_nostr:"Kirjaudu Nostr:lla",signin_with_google:"Kirjaudu Google-tunnuksella",signin_with_github:"Kirjaudu GitHub-tunnuksella",signin_with_custom_org:"Kirjaudu {custom_org}-palvelulla",username_or_email:"Käyttäjänimi tai sähköposti",password:"Anna uusi salasana",password_config:"Salasanan määritys",password_repeat:"Toista uusi salasana",update_password:"Päivitä salasana",change_password:"Vaihda salasana",update_credentials:"Päivitä käyttöoikeustiedot",update_pubkey:"Päivitä julkinen avain",nostr_pubkey_tooltip:"Syötä tämän käyttäjän julkinen Nostr avain (hex arvona)",set_password:"Aseta salasana",set_password_tooltip:"Aseta käyttäjätunnukselle salasana",invalid_password:"Salasanassa tulee olla vähintään kahdeksan merkkiä",invalid_password_repeat:"Salasanat eivät täsmää",reset_key_generated:"Salasanan vaihtoavain on luotu.",reset_key_copy:"Kopioi vaihto-URL leikepöydälle painamalla OK.",login:"Kirjaudu",register:"Rekisteröidy",username:"Käyttäjänimi",pubkey:"Julkinen avain",user_id:"Käyttäjä tunnus",id:"tunnus",email:"Sähköposti",first_name:"Etunimi",last_name:"Sukunimi",picture:"Kuva",verify_email:"Vahvista sähköposti",account:"Tili",update_account:"Päivitä tiliä",invalid_username:"Virheellinen käyttäjänimi",auth_provider:"Tunnistamisen toimittaja",my_account:"Tilini",existing_account_question:"Onkohan sinulla jo tili?",background_image:"Taustakuva",back:"Takaisin",logout:"Poistu",look_and_feel:"Kieli ja värit",endpoint:"Endpoint",api:"API",api_token:"API Token",api_tokens:"API Tokens",access_control_list:"Access Control List",access_control_list_admin_warning:"This is an admin account. The generated tokens will have admin privileges.",new_api_acl:"New Access Control List",api_token_id:"Token Id",toggle_gradient:"Toggle Gradient",gradient_background:"Gradient Background",language:"Kieli",color_scheme:"Väriteema",visible_wallet_count:"Näytettävien lompakkojen määrä",admin_settings:"Pääkäyttäjän asetukset",extension_cost:"Tämä laajennus edellyttää vähintään {cost} sat maksua.",extension_paid_sats:"Olet jo maksanut {paid_sats} satsia.",release_details_error:"Ei voi hakea julkaisun tietoja.",pay_from_wallet:"Maksa lompakosta",pay_with:"Maksa {provider}:lla",select_payment_provider:"Valitse maksun välittäjä",wallet_required:"Lompakko *",show_qr:"Näytä QR",retry_install:"Yritä asennusta uudelleen",new_payment:"Luo uusi maksu",update_payment:"Päivitä maksu",already_paid_question:"Kenties maksoit jo?",sell:"Myy",sell_require:"Pyydä maksua laajennuksen käytöstä",sell_info:"{name} -laajennuksen aktivointi edellyttää vähintään {amount} sat maksua.",hide_empty_wallets:"Piilota tyhjät lompakot",recheck:"Tarkista uudelleen",check:"Tarkista",check_connection:"Tarkista yhteys",check_webhook:"Tarkista Webhook",contributors:"Avustajat",license:"Lisenssi",reset_key:"Vaihda avain",reset_password:"Vaihda salasana",border_choices:"Reunuksen vaihtoehdot",select_all:"Valitse kaikki",nfc_supported:"NFC on tuettu",nfc_not_supported:"NFC:tä ei tueta",expire_date:"Vanhenemispäivämäärä:",hash:"Tiiviste:",welcome_lnbits:"Tervetuloa LNbits-palveluun",setup_su_account:"Määritä Superuser-tili alta.",create_ticker_converter:"Luo valuuttamuuntimen Ticker",enable_audit:"Ota seuranta käyttöön",recommended:"Suositeltu",audit_desc:"Tallenna HTTP-pyyntöjä seuraavien suodattimien mukaisesti",audit_record_req:"Tallenna pyynnön Body",audit_record_warning:"Varoitus:",audit_record_req_warning_1:"Luottamukselliset tiedot (kuten salasanat) tallennetaan.",audit_record_req_warning_2:"Body-datamäätä voi olla iso.",audit_record_use:"Käytä varoen!",audit_ip:"Tallenna IP-osoite",audit_ip_desc:"Tallenna asiakkaan IP-osoite",audit_path_params:"Tallenna Path-parametrit",audit_query_params:"Tallenna Query-parametrit",audit_http_methods:"Tallenna HTTP-menetelmät",audit_http_methods_hint:"Luettelo mukaan otettavista HTTP-menetelmistä. Tyhjä luettelo tallettaa kaikki.",audit_http_methods_label:"HTTP-metodit",audit_resp_codes:"Tallenna HTTP-vastauskoodit",audit_resp_codes_hint:"HTTP-koodien lista, jotka sisällytetään (regex-match). Tyhjä luettelo tallettaa kaikki. Esim: 4.*, 5.*",audit_resp_codes_label:"HTTP-vastauskoodi (säännöllinen lauseke)",audit_paths:"Sisällytä polut",audit_paths_hint:"Luettelo poluista, jotka sisällytetään (regex-vastaavuus). Tyhjä luettelo tarkoittaa kaikkia.",audit_paths_label:"HTTP-polku (regex)",audit_paths_exclude:"Ohita polut",audit_paths_exclude_hint:"Lista poluista, jotka jätetään pois (regex-vastaavuus). Tyhjällä listalla mitään ei jätetä pois.",audit_paths_exclude_label:"HTTP-polku (regex)",exchange_providers:"Vaihtokurssin tarjoajat",admin_extensions:"Pääkäyttäjän laajennukset",admin_extensions_label:"Pääkäyttäjän laajennukset",admin_extensions_hint:"Laajennuksia voi käyttää vain käyttäjä, jolla on pääkäyttäjäoikeudet",user_default_extensions:"Käyttäjän oletuslaajennukset",user_default_extensions_label:"Käyttäjän laajennukset",user_default_extensions_hint:"Laajennukset, jotka otetaan oletusarvoisesti käyttöön kaikille käyttäjille.",miscellanous:"Sekalaiset",misc_disable_extensions:"Poista laajennukset käytöstä",misc_disable_extensions_label:"Poista kaikki laajennukset käytöstä",misc_hide_api:"Piilota API",misc_hide_api_label:"Piilottaa lompakon rajapinnan, laajennukset voivat valita välittävätkö tästä asetuksesta",wallets_management:"Lompakoiden hallinta",funding_source_info:"Rahoituslähteen tiedot",funding_source:"Rahoituslähde: {wallet_class}",node_balance:"Solmun saldo: {balance} sats",lnbits_balance:"LNbits-saldo: {balance} sat",funding_reserve_percent:"Omavaraisuusaste: {percent} %",node_management:"Solmun hallinta",node_management_not_supported:"Solmun hallinta ei ole mahdollista valitun rahoituslähteen kanssa.",toggle_node_ui:"Solmun käyttöliittymä",toggle_public_node_ui:"Julkinen näkymä solmun tietoihin",toggle_transactions_node_ui:"Tapahtumat-välilehti (Poista käytöstä suurilla CLN-solmuilla)",invoice_expiry:"Laskun vanhenemisaika",invoice_expiry_label:"Laskun vanhentuminen (sekunteina)",fee_reserve:"Kuluvaraus",fee_reserve_percent:"Kuluvaraus prosentteina",fee_reserve_msats:"Kuluvaraus milli-sat",reserve_fee_in_percent:"Kuluvaraus prosentteina",payment_wait_time:"Maksun odotusaika (sekuntia)",payment_wait_time_desc:"Kuinka pitkään maksua odotetaan saapuvaksi, ennen kuin se merkitään Odotetaan-tilaan. Aseta pidemmäksi käytettäessä HODL-laskuja, Boltz-palvelua, tms",server_management:"Palvelimen hallinta",base_url:"Palvelimen URL-osoite",base_url_label:"Palvelun staattinen pohja-URL",authentication:"Käyttäjän todennus",auth_token_expiry_label:"Kirjautumisen vanhentumisaika minuutteina",auth_token_expiry_hint:"Aika minuuteissa, jossa kirjautuminen vanhenee",auth_allowed_methods_label:"Sallitut kirjautumismenetelmät",auth_allowed_methods_hint:"Valitse kirjautumismenetelmät",auth_nostr_label:"Nostr kutsujen URL",auth_nostr_hint:"Asiakkaiden kirjautumiseen käyttämä absoluuttinen URL-osoite.",auth_google_ci_label:"Google-asiakastunnus",auth_google_ci_hint:"Varmista, että valtuutetut uudelleenohjaus-URI:t sisältävät https://{domain}/api/v1/auth/google/token",auth_google_cs_label:"Google-asiakassalasana",auth_gh_client_id_label:"GitHub-asiakastunnus",auth_gh_client_id_hint:"Varmista, että valtuutuksen paluuosoite-URL on asetettu osoitteeseen https://{domain}/api/v1/auth/github/token",auth_gh_client_secret_label:"GitHub-asiakassalaisuusavain",auth_keycloak_label:"Keycloak-discovery-URL",auth_keycloak_ci_label:"Keycloak-asiakastunnus",auth_keycloak_ci_hint:"Varmista, että valtuutuksen palautus-URL on asetettu muotoon https://{domain}/api/v1/auth/keycloak/token",auth_keycloak_cs_label:"Keycloak-asiakassalasana",auth_keycloak_custom_org_label:"Valinnainen Keycloak-organisaatio",auth_keycloak_custom_icon_label:"Valinnainen Keycloak-kuvake (URL)",currency_settings:"Valuutta-asetukset",allowed_currencies:"Käytettävät valuutat",allowed_currencies_hint:"Valitse käytettävissä olevat fiat-valuutat",default_account_currency:"Tilin oletusvaluutta",default_account_currency_hint:"Kirjanpidon oletusvaluutta",min_incoming_payment_amount:"Pienin vastaanotettava maksun määrä",min_incoming_payment_amount_desc:"Pienin maksun määrä jolle voi luoda laskun",max_incoming_payment_amount:"Saapuvan maksun enimmäismäärä",max_incoming_payment_amount_desc:"Enimmäismäärä jonka voi laskuttaa",max_outgoing_payment_amount:"Lähtevän maksun enimmäismäärä",max_outgoing_payment_amount_desc:"Enimmäismäärä jonka voi maksaa",service_fee:"Palvelumaksut",service_fee_label:"Palvelumaksu (%)",service_fee_hint:"Tapahtumastakohtainen palvelumaksu (%)",service_fee_max:"Palvelumaksun enimmäismäärä",service_fee_max_label:"Palvelumaksu max (sat)",service_fee_max_hint:"Suurin veloitettava palvelumaksu (sat)",fee_wallet:"Palvelumaksujen lompakko",fee_wallet_label:"Palvelumaksujen tilityslompakko (lompakon tunnus)",fee_wallet_hint:"Lompakon tunnus, johon palvelumaksut tilitetään",disable_fee:"Poista maksu käytöstä",disable_fee_internal:"Poista palvelumaksu sisäisiltä maksuilta",disable_fee_internal_desc:"Poista palvelumaksu sisäisiltä salamaksuilta",ui_management:"Käyttöliittymän hallinta",ui_site_title:"Sivuston nimi",ui_changing_remove_lnbits_elements:" (tämän muuttamalla LNbits elementit poistuvat kotisivulla ja alareunasta)",ui_site_tagline:"Sivuston iskulause",ui_elements_enable:"Ota käyttöön elementit etusivulla/alareunassa",ui_elements_disable:"Poista elementit käytöstä etusivulla/alareunassa",ui_toggle_elements_tip:"Poista kotisivuelementit kuten 'toimii' jne.",ui_site_description:"Sivuston kuvaus",ui_site_description_hint:"Käytä tavallista tekstiä, Markdownia tai puhdasta HTML:ää",ui_default_wallet_name:"Oletuslompakon nimi",ui_default_theme:"Oletusteema",lnbits_wallet:"LNbits-lompakko",denomination:"Valuutan nimi",denomination_hint:"FakeWallet-lompakon valuutan nimi",denomination_error:"Valuutta tunnisssa on oltava 3 merkkiä, tai `sat`",ui_qr_code_logo:"QR- ja Favicon-logo",ui_qr_code_logo_hint:"Anna QR-koodissa ja Faviconissa käytettävän logo-kuvan URL",ui_custom_image:"Yksilöity kuva",ui_custom_image_label:"Anna yksilöidyn kuvan URL-osoite",ui_custom_image_hint:"Yksilöity kuva näytetään aloitus- ja kirjautumissivuilla",ui_custom_badge:"Yksilöity tunnus",ui_custom_badge_label:"Yksilöity tunnus 'KÄYTÄ VAROVAISUUTTA - LNbits-lompakko on edelleen BETA-versiossa'",ui_custom_badge_color_label:"Kustomoidun tunnuksen väri",themes:"Teemat",themes_hint:"Valitse käyttäjille saatavilla olevat teemat",custom_logo:"Mukautettu logo",custom_logo_hint:"Logokuvan sisältävä URL-osoite",ad_space_title:"Mainospaikan otsikko",ad_space_title_label:"Palvelua tukevat ",ad_slots:"Mainospaikat",ad_slots_hint:"Mainoslinkit ja kuvatiedostopolut CSV-muodossa, lisäosat voivat valita välittävätkö asetuksesta",ad_slots_label:"url;img_light_url;img_dark_url, url...",ads_enabled:"Mainokset käytössä",ads_disabled:"Mainokset poistettu käytöstä",user_management:"Käyttäjänhallinta",admin_users:"Pääkäyttäjät",admin_users_hint:"Käyttäjät, joilla on pääkäyttäjän oikeudet",admin_users_label:"Käyttäjätunnus",allowed_users:"Sallitut käyttäjät",allowed_users_hint:"Vain nämä käyttäjät voivat käyttää LNbitsiä",allowed_users_hint_feature:"Ainoastaan nämä käyttäjät voivat käyttää ominaisuutta {feature}",allowed_users_label:"Käyttäjätunnus",allow_creation_user:"Salli uusien käyttäjien luominen",allow_creation_user_desc:"Etusivulta on mahdollisuus luoda uusia käyttäjiä",new_user_not_allowed:"Tunnusten luonti on estetty.",components:"Komponentit",long_running_endpoints:"Top 5 pisimpään yhteydessä ollutta päätepistettä",http_request_methods:"HTTP-pyynnön menetelmät",http_response_codes:"HTTP-vastaukset koodit",request_details:"Pyynnön tiedot",http_request_details:"HTTP-pyynnön tiedot",payment_details:"Maksun yksityiskohdat",payment_details_desc:"Yksityiskohtaisen maksun sisältö",payments:"Maksut",payment_show_internal:"Näytä sisäiset maksut",payment_chart_flow:"Kuukausittainen maksuvirta",payment_chart_status:"Maksun Tila",payment_chart_tx_per_wallet:"Lompakkokohtaiset tapahtumat (saldo/kappaletta)",payment_details_back:"Takaisin Maksuihin",payment_chart_tags:"Maksut Tag:eittäin",payments_balance_in_out:"Saldo Sisään/Ulos",payments_count_in_out:"Tapahtumia Sisään/Ulos",payments_status_chart:"Tilakaavio",payments_tag_chart:"Tag-kaavio",payments_balance_chart:"Saldo-kaavio",payments_wallets_chart:"Lompakko-kaavio",payments_balance_in_out_chart:"Saldo Sisään/Ulos -kaavio",payments_count_in_out_chart:"Lukumäärä Sisään/Ulos -kaavio",reset_wallet_keys:"Uusi API-avaimet",reset_wallet_keys_desc:"Tämän lompakon API-avaimet uusitaan. Edelliset API-avaimet lakkaavat toimimasta ja uudet luodaan niiden tilalle..",view_list:"Näytä lompakot allekain",view_column:"Näytä lompakot rinnakkain",filter_payments:"Suodata maksuja",filter_date:"Suodata päiväyksellä",websocket_example:"Websocket example",secret_key:"Secret Key",signing_secret:"Signing Secret",signing_secret_hint:"Signing secret for the webhook. Messages will be signed with this secret.",callback_success_url:"Callback Success URL",callback_success_url_hint:"The user will be redirected to this URL after the payment is successful"},window._lnbitsUtils={copyText(e,t,n){Quasar.copyToClipboard(e).then(()=>{Quasar.Notify.create({message:t||"Copied to clipboard!",position:n||"bottom"})})},confirmDialog:e=>Quasar.Dialog.create({message:e,ok:{flat:!0,color:"orange"},cancel:{flat:!0,color:"grey"}}),async logout(){LNbits.utils.confirmDialog('Do you really want to logout? Please visit "My Account" page to check your credentials!').onOk(async()=>{try{await LNbits.api.logout(),window.location="/"}catch(e){LNbits.utils.notifyApiError(e)}})},async digestMessage(e){const t=(new TextEncoder).encode(e),n=await crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(n)).map(e=>e.toString(16).padStart(2,"0")).join("")},formatTimestamp:(e,t=null)=>(t=t||window.dateFormat,Quasar.date.formatDate(new Date(1e3*e),t)),formatDateString(e){this.formatDate(e)},formatDate:(e,t=null)=>(t=t||window.dateFormat,Quasar.date.formatDate(new Date(e),t)),formatTimestampFrom:e=>moment.utc(1e3*e).local().fromNow(),formatDateFrom(e){const t=new Date(e).getTime();return moment.utc(t).local().fromNow()},formatBalance:(e,t="sats")=>"sats"===t?LNbits.utils.formatSat(e)+" sats":LNbits.utils.formatCurrency(e/100,t),formatCurrency:(e,t)=>new Intl.NumberFormat(window.i18n.global.locale,{style:"currency",currency:t||"sat"}).format(e),formatSat:e=>new Intl.NumberFormat(window.i18n.global.locale).format(e),formatMsat(e){return this.formatSat(e/1e3)},notifyApiError(e){if(!e.response)return console.error(e);Quasar.Notify.create({timeout:5e3,type:{400:"warning",401:"warning",500:"negative"}[e.response.status]||"warning",message:e.response.data.message||e.response.data.detail||null,caption:[e.response.status," ",e.response.statusText].join("").toUpperCase()||null,icon:null})},search(e,t,n,a){try{const i=t.toLowerCase().split(a||" ");return e.filter(e=>{let t=0;return _.each(i,a=>{-1!==e[n].indexOf(a)&&t++}),t===i.length})}catch(t){return e}},prepareFilterQuery(e,t,n){e.filter=n||e.filter||{},t&&(e.pagination=t.pagination,Object.assign(e.filter,t.filter));const a=e.pagination;e.loading=!0;const i={limit:a.rowsPerPage,offset:(a.page-1)*a.rowsPerPage,sortby:a.sortBy??"",direction:a.descending?"desc":"asc",...e.filter};return e.search&&(i.search=e.search),new URLSearchParams(i)},exportCSV(e,t,n){const a=(e,t)=>{let n=void 0!==t?t(e):e;return n=null==n?"":String(n),n=n.split('"').join('""'),`"${n}"`},i=[e.map(e=>a(e.label))].concat(t.map(t=>e.map(e=>a("function"==typeof e.field?e.field(t):t[void 0===e.field?e.name:e.field],e.format)).join(","))).join("\r\n");!0!==Quasar.exportFile(`${n||"table-export"}.csv`,i,"text/csv")&&Quasar.Notify.create({message:"Browser denied file download...",color:"negative",icon:null})},convertMarkdown(e){const t=new showdown.Converter;return t.setFlavor("github"),t.setOption("simpleLineBreaks",!0),t.makeHtml(e)},async decryptLnurlPayAES(e,t){let n=new Uint8Array(t.match(/[\da-f]{2}/gi).map(e=>parseInt(e,16)));return crypto.subtle.importKey("raw",n,{name:"AES-CBC",length:256},!1,["decrypt"]).then(t=>{let n=Uint8Array.from(window.atob(e.iv),e=>e.charCodeAt(0)),a=Uint8Array.from(window.atob(e.ciphertext),e=>e.charCodeAt(0));return crypto.subtle.decrypt({name:"AES-CBC",iv:n},t,a)}).then(e=>new TextDecoder("utf-8").decode(e))}},window._lnbitsApi={request:(e,t,n,a,i={})=>axios({method:e,url:t,headers:{"X-Api-Key":n},data:a,...i}),getServerHealth(){return this.request("get","/api/v1/health")},async createInvoice(e,t,n,a="sat",i=null,r=null,o=null,s=null){const l={out:!1,amount:t,memo:n,unit:a,lnurl_withdraw:i,fiat_provider:r,payment_hash:s};return o&&(l.extra={internal_memo:String(o)}),this.request("post","/api/v1/payments",e.inkey,l)},payInvoice(e,t,n=null){const a={out:!0,bolt11:t};return n&&(a.extra={internal_memo:String(n)}),this.request("post","/api/v1/payments",e.adminkey,a)},cancelInvoice(e,t){return this.request("post","/api/v1/payments/cancel",e.adminkey,{payment_hash:t})},settleInvoice(e,t){return this.request("post","/api/v1/payments/settle",e.adminkey,{preimage:t})},createAccount(e){return this.request("post","/api/v1/account",null,{name:e})},register:(e,t,n,a)=>axios({method:"POST",url:"/api/v1/auth/register",data:{username:e,email:t,password:n,password_repeat:a}}),reset:(e,t,n)=>axios({method:"PUT",url:"/api/v1/auth/reset",data:{reset_key:e,password:t,password_repeat:n}}),login:(e,t)=>axios({method:"POST",url:"/api/v1/auth",data:{username:e,password:t}}),loginByProvider:(e,t,n)=>axios({method:"POST",url:`/api/v1/auth/${e}`,headers:t,data:n}),loginUsr:e=>axios({method:"POST",url:"/api/v1/auth/usr",data:{usr:e}}),logout:()=>axios({method:"POST",url:"/api/v1/auth/logout"}),getAuthenticatedUser(){return this.request("get","/api/v1/auth")},getWallet(e){return this.request("get","/api/v1/wallet",e.inkey)},createWallet(e,t,n,a={}){return this.request("post","/api/v1/wallet",e.adminkey,{name:t,wallet_type:n,...a}).then(e=>{window.location="/wallet?wal="+e.data.id})},updateWallet(e,t){return this.request("patch","/api/v1/wallet",t.adminkey,{name:e})},resetWalletKeys(e){return this.request("put",`/api/v1/wallet/reset/${e.id}`).then(e=>e.data)},deleteWallet(e){return this.request("delete",`/api/v1/wallet/${e.id}`).then(e=>{let t=new URL(window.location.href);t.searchParams.delete("wal"),window.location=t})},getPayments(e,t){return this.request("get","/api/v1/payments/paginated?"+t,e.inkey)},getPayment(e,t){return this.request("get","/api/v1/payments/"+t,e.inkey)},updateBalance(e,t){return this.request("PUT","/users/api/v1/balance",null,{amount:e,id:t})},getCurrencies(){return this.request("GET","/api/v1/currencies").then(e=>["sats",...e.data])}};const localStore=(e,t)=>{const n=Quasar.LocalStorage.getItem(e);return null!==n&&"null"!==n&&void 0!==n&&"undefined"!==n?n:t};window.g=Vue.reactive({errorCode:null,errorMessage:null,isUserAuthorized:!!Quasar.Cookies.get("is_lnbits_user_authorized"),offline:!navigator.onLine,hasCamera:!1,visibleDrawer:!1,extensions:WINDOW_SETTINGS.EXTENSIONS,user:null,wallet:{},fiatBalance:0,exchangeRate:0,fiatTracking:!1,showScanner:!1,payments:[],walletEventListeners:[],showNewWalletDialog:!1,newWalletType:"lightning",updatePayments:!1,updatePaymentsHash:!1,currencies:WINDOW_SETTINGS.LNBITS_CURRENCIES??[],allowedCurrencies:WINDOW_SETTINGS.LNBITS_ALLOWED_CURRENCIES??[],locale:localStore("lnbits.lang",navigator.languages[1]??"en"),disclaimerShown:localStore("lnbits.disclaimerShown",!1),isFiatPriority:localStore("lnbits.isFiatPriority",!1),mobileSimple:localStore("lnbits.mobileSimple",!0),walletFlip:localStore("lnbits.walletFlip",!1),lastActiveWallet:localStore("lnbits.lastActiveWallet",null),darkChoice:localStore("lnbits.darkMode",!0),themeChoice:localStore("lnbits.theme",WINDOW_SETTINGS.LNBITS_DEFAULT_THEME),borderChoice:localStore("lnbits.border",WINDOW_SETTINGS.LNBITS_DEFAULT_BORDER||"hard-border"),gradientChoice:localStore("lnbits.gradientBg",WINDOW_SETTINGS.LNBITS_DEFAULT_GRADIENT||!1),reactionChoice:localStore("lnbits.reactions",WINDOW_SETTINGS.LNBITS_DEFAULT_REACTION||"confettiBothSides"),bgimageChoice:localStore("lnbits.backgroundImage",WINDOW_SETTINGS.LNBITS_DEFAULT_BGIMAGE||""),ads:WINDOW_SETTINGS.AD_SPACE.split(",").map(e=>e.split(";")),denomination:WINDOW_SETTINGS.LNBITS_DENOMINATION,isSatsDenomination:"sats"==WINDOW_SETTINGS.LNBITS_DENOMINATION,scanDetectCallback:null}),window.dateFormat="YYYY-MM-DD HH:mm";const websocketPrefix="http:"===window.location.protocol?"ws://":"wss://",websocketUrl=`${websocketPrefix}${window.location.host}/api/v1/ws`,_access_cookies_for_safari_refresh_do_not_delete=document.cookie;function eventReaction(e){if(localUrl="",reaction=localStorage.getItem("lnbits.reactions"),reaction&&"None"!==reaction)try{if(e<0)return;reaction=localStorage.getItem("lnbits.reactions"),reaction&&window[reaction.split("|")[1]]()}catch(e){console.log(e)}}function confettiTop(){document.getElementById("vue").disabled=!0;var e=Date.now()+200,t=[localStorage.getItem("lnbits.primaryColor")||"#FFD700",localStorage.getItem("lnbits.secondaryColor")||"E89400","#ffffff"];!function n(){confetti({particleCount:3,angle:270,spread:1e3,origin:{y:0},colors:t,zIndex:999999}),Date.now(){e.substring(0,n.length)===n&&(t=n)}),null==t)throw"Malformed request: unknown prefix";let n=decodeAmount(e.substring(t.length,e.length));return{prefix:t,amount:n}}function decodeData(e,t){let n=e.substring(0,7),a=bech32ToInt(n),i=e.substring(e.length-104,e.length),r=e.substring(7,e.length-104),o=decodeTags(r),s=bech32ToFiveBitArray(n+r);return s=fiveBitArrayTo8BitArray(s,!0),s=textToHexString(t).concat(byteArrayToHexString(s)),{time_stamp:a,tags:o,signature:decodeSignature(i),signing_data:s}}function decodeSignature(e){let t=fiveBitArrayTo8BitArray(bech32ToFiveBitArray(e)),n=t[t.length-1];return{r:byteArrayToHexString(t.slice(0,32)),s:byteArrayToHexString(t.slice(32,t.length-1)),recovery_flag:n}}function decodeAmount(e){let t=e.charAt(e.length-1),n=e.substring(0,e.length-1);if("0"===n.substring(0,1))throw"Malformed request: amount cannot contain leading zeros";if(n=Number(n),n<0||!Number.isInteger(n))throw"Malformed request: amount must be a positive decimal integer";switch(t){case"":return"Any amount";case"p":return n/10;case"n":return 100*n;case"u":return 1e5*n;case"m":return 1e8*n;default:throw"Malformed request: undefined amount multiplier"}}function decodeTags(e){let t=extractTags(e),n=[];return t.forEach(e=>n.push(decodeTag(e.type,e.length,e.data))),n}function extractTags(e){let t=[];for(;e.length>0;){let n=e.charAt(0),a=bech32ToInt(e.substring(1,3)),i=e.substring(3,a+3);t.push({type:n,length:a,data:i}),e=e.substring(3+a,e.length)}return t}function decodeTag(e,t,n){switch(e){case"p":if(52!==t)break;return{type:e,length:t,description:"payment_hash",value:byteArrayToHexString(fiveBitArrayTo8BitArray(bech32ToFiveBitArray(n)))};case"d":return{type:e,length:t,description:"description",value:bech32ToUTF8String(n)};case"n":if(53!==t)break;return{type:e,length:t,description:"payee_public_key",value:byteArrayToHexString(fiveBitArrayTo8BitArray(bech32ToFiveBitArray(n)))};case"h":if(52!==t)break;return{type:e,length:t,description:"description_hash",value:n};case"x":return{type:e,length:t,description:"expiry",value:bech32ToInt(n)};case"c":return{type:e,length:t,description:"min_final_cltv_expiry",value:bech32ToInt(n)};case"f":let a=bech32ToFiveBitArray(n.charAt(0))[0];if(a<0||a>18)break;return{type:e,length:t,description:"fallback_address",value:{version:a,fallback_address:n=n.substring(1,n.length)}};case"r":let i=(n=fiveBitArrayTo8BitArray(bech32ToFiveBitArray(n))).slice(0,33),r=n.slice(33,41),o=n.slice(41,45),s=n.slice(45,49),l=n.slice(49,51);return{type:e,length:t,description:"routing_information",value:{public_key:byteArrayToHexString(i),short_channel_id:byteArrayToHexString(r),fee_base_msat:byteArrayToInt(o),fee_proportional_millionths:byteArrayToInt(s),cltv_expiry_delta:byteArrayToInt(l)}}}}function polymod(e){let t=[996825010,642813549,513874426,1027748829,705979059],n=1;return e.forEach(e=>{let a=n>>25;n=(33554431&n)<<5^e;for(let e=0;e<5;e++)n^=1==(a>>e&1)?t[e]:0}),n}function expand(e){let t=[];for(let n=0;n>5);t.push(0);for(let n=0;n{console.log("offline",e),this.g.offline=!0}),addEventListener("online",e=>{console.log("back online",e),this.g.offline=!1}),null!=navigator.serviceWorker&&navigator.serviceWorker.register("/service-worker.js").then(e=>{console.log("Registered events at scope: ",e.scope)}),navigator.mediaDevices&&navigator.mediaDevices.enumerateDevices&&navigator.mediaDevices.enumerateDevices().then(e=>{window.g.hasCamera=e.some(e=>"videoinput"===e.kind)}),window.LNbits={g:window.g,utils:window._lnbitsUtils,api:window._lnbitsApi,map:{user(e){const t={id:e.id,admin:e.admin,email:e.email,extensions:e.extensions,wallets:e.wallets,fiat_providers:e.fiat_providers||[],super_user:e.super_user,extra:e.extra??{}},n=this.wallet;return t.wallets=t.wallets.map(n).sort((e,t)=>e.extra.pinned!==t.extra.pinned?e.extra.pinned?-1:1:e.name.localeCompare(t.name)),t.walletOptions=t.wallets.map(e=>({label:[e.name," - ",e.id.substring(0,5),"..."].join(""),value:e.id})),t.hiddenWalletsCount=Math.max(0,e.wallets.length-e.extra.visible_wallet_count),t.walletInvitesCount=e.extra.wallet_invite_requests?.length||0,t},wallet(e){if(newWallet={id:e.id,name:e.name,walletType:e.wallet_type,sharePermissions:e.share_permissions,sharedWalletId:e.shared_wallet_id,adminkey:e.adminkey,inkey:e.inkey,currency:e.currency,extra:e.extra,canReceivePayments:!0,canSendPayments:!0},newWallet.msat=e.balance_msat,newWallet.sat=Math.floor(e.balance_msat/1e3),newWallet.fsat=new Intl.NumberFormat(window.i18n.global.locale).format(newWallet.sat),"lightning-shared"===newWallet.walletType){const e=newWallet.sharePermissions;newWallet.canReceivePayments=e.includes("receive-payments"),newWallet.canSendPayments=e.includes("send-payments")}return newWallet.url=`/wallet?&wal=${e.id}`,newWallet.storedPaylinks=e.stored_paylinks.links,newWallet}}},window.windowMixin={methods:{handleScan(e){this.g.scanDetectCallback&&(this.g.scanDetectCallback(e),this.g.scanDetectCallback=null)},openScanDialog(e){this.g.showScanner=!0,this.g.scanDetectCallback=e},openNewWalletDialog(e="lightning"){this.g.newWalletType=e,this.g.showNewWalletDialog=!0},onWebsocketMessage(e){const t=JSON.parse(e.data);t.payment?(this.g.user.wallets.forEach(e=>{e.id===t.payment.wallet_id&&(e.sat=t.wallet_balance)}),this.g.wallet.id===t.payment.wallet_id&&(this.g.wallet.sat=t.wallet_balance,this.g.updatePayments=!this.g.updatePayments,this.g.updatePaymentsHash=!this.g.updatePaymentsHash),t.payment.amount>0&&eventReaction(1e3*t.wallet_balance)):console.error("ws message no payment",t)},paymentEvents(){let e;this.g.user.wallets.forEach(t=>{if(!this.g.walletEventListeners.includes(t.id)){this.g.walletEventListeners.push(t.id);const n=new WebSocket(`${websocketUrl}/${t.inkey}`);n.onmessage=this.onWebsocketMessage,n.onopen=()=>console.log("ws connected for wallet",t.id),n.onclose=()=>{console.log("ws closed, reconnecting...",t.id),this.g.walletEventListeners=this.g.walletEventListeners.filter(e=>e!==t.id),clearTimeout(e),e=setTimeout(this.paymentEvents,5e3)},n.onerror=()=>{console.warn("ws error, reconnecting...",t.id),this.g.walletEventListeners=this.g.walletEventListeners.filter(e=>e!==t.id),clearTimeout(e),e=setTimeout(this.paymentEvents,5e3)}}})}},created(){window.user&&!this.g.user&&(this.g.user=window.LNbits.map.user(window.user),this.paymentEvents())}},function(e,t){!function e(t,n,a,i){var r=!!(t.Worker&&t.Blob&&t.Promise&&t.OffscreenCanvas&&t.OffscreenCanvasRenderingContext2D&&t.HTMLCanvasElement&&t.HTMLCanvasElement.prototype.transferControlToOffscreen&&t.URL&&t.URL.createObjectURL);function o(){}function s(e){var a=n.exports.Promise,i=void 0!==a?a:t.Promise;return"function"==typeof i?new i(e):(e(o,o),null)}var l,u,c,d,h,p,f,m,g=(c=Math.floor(1e3/60),d={},h=0,"function"==typeof requestAnimationFrame&&"function"==typeof cancelAnimationFrame?(l=function(e){var t=Math.random();return d[t]=requestAnimationFrame(function n(a){h===a||h+c-1{a=(a<<5)+e,n+=5,n>=8&&(i.push(a>>n-8&255),n-=8)}),t&&n>0&&i.push(a<<8-n&255),i}function bech32ToUTF8String(e){let t=fiveBitArrayTo8BitArray(bech32ToFiveBitArray(e)),n="";for(let e=0;e20&&(t-=20,e/=Math.pow(10,t),e+=new Array(t+1).join("0"));return e} \ No newline at end of file diff --git a/lnbits/static/js/event-reactions.js b/lnbits/static/js/event-reactions.js index fadfb4e4..ebd50f7c 100644 --- a/lnbits/static/js/event-reactions.js +++ b/lnbits/static/js/event-reactions.js @@ -473,7 +473,6 @@ function confettiStars() { F = t.width * I.x, N = t.height * I.y; E--; - ) S.push( ((o = { diff --git a/lnbits/static/scss/themes.scss b/lnbits/static/scss/_themes.scss similarity index 100% rename from lnbits/static/scss/themes.scss rename to lnbits/static/scss/_themes.scss diff --git a/lnbits/static/scss/background.scss b/lnbits/static/scss/background.scss index d5f0d090..b20491d8 100644 --- a/lnbits/static/scss/background.scss +++ b/lnbits/static/scss/background.scss @@ -1,6 +1,7 @@ @use 'sass:color'; +@use 'themes'; -@each $theme, $colors in $themes { +@each $theme, $colors in themes.$themes { body[data-theme='#{$theme}'] { @each $name, $color in $colors { @if $name== 'dark' { diff --git a/lnbits/static/scss/base.scss b/lnbits/static/scss/base.scss index 3d5e3ef4..8b535174 100644 --- a/lnbits/static/scss/base.scss +++ b/lnbits/static/scss/base.scss @@ -1,7 +1,7 @@ -@import 'themes'; -@import 'borders'; -@import 'background'; -@import 'home'; +@use 'themes'; +@use 'borders'; +@use 'background'; +@use 'home'; [v-cloak] { display: none; diff --git a/lnbits/static/scss/borders.scss b/lnbits/static/scss/borders.scss index a2a0f781..eafe7d30 100644 --- a/lnbits/static/scss/borders.scss +++ b/lnbits/static/scss/borders.scss @@ -1,4 +1,6 @@ -@each $theme, $colors in $themes { +@use 'themes'; + +@each $theme, $colors in themes.$themes { @each $name, $color in $colors { @if $name== 'primary' { body[data-theme='#{$theme}'].neon-border { diff --git a/lnbits/static/vendor/axios.js b/lnbits/static/vendor/axios.js index 31f223c6..17606d68 100644 --- a/lnbits/static/vendor/axios.js +++ b/lnbits/static/vendor/axios.js @@ -1,4 +1,4 @@ -/*! Axios v1.12.0 Copyright (c) 2025 Matt Zabriskie and contributors */ +/*! Axios v1.13.2 Copyright (c) 2025 Matt Zabriskie and contributors */ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : @@ -668,6 +668,13 @@ }; } + /** + * Create a bound version of a function with a specified `this` context + * + * @param {Function} fn - The function to bind + * @param {*} thisArg - The value to be passed as the `this` parameter + * @returns {Function} A new function that will call the original function with the specified `this` context + */ function bind(fn, thisArg) { return function wrap() { return fn.apply(thisArg, arguments); @@ -1031,10 +1038,8 @@ result[targetKey] = merge({}, val); } else if (isArray(val)) { result[targetKey] = val.slice(); - } else { - if (!skipUndefined || !isUndefined(val)) { - result[targetKey] = val; - } + } else if (!skipUndefined || !isUndefined(val)) { + result[targetKey] = val; } }; for (var i = 0, l = arguments.length; i < l; i++) { @@ -1833,7 +1838,7 @@ * * @param {Number} id The ID that was returned by `use` * - * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise + * @returns {void} */ }, { key: "eject", @@ -2704,20 +2709,33 @@ var cookies = platform.hasStandardBrowserEnv ? // Standard browser envs support document.cookie { - write: function write(name, value, expires, path, domain, secure) { - var cookie = [name + '=' + encodeURIComponent(value)]; - utils$1.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString()); - utils$1.isString(path) && cookie.push('path=' + path); - utils$1.isString(domain) && cookie.push('domain=' + domain); - secure === true && cookie.push('secure'); + write: function write(name, value, expires, path, domain, secure, sameSite) { + if (typeof document === 'undefined') return; + var cookie = ["".concat(name, "=").concat(encodeURIComponent(value))]; + if (utils$1.isNumber(expires)) { + cookie.push("expires=".concat(new Date(expires).toUTCString())); + } + if (utils$1.isString(path)) { + cookie.push("path=".concat(path)); + } + if (utils$1.isString(domain)) { + cookie.push("domain=".concat(domain)); + } + if (secure === true) { + cookie.push('secure'); + } + if (utils$1.isString(sameSite)) { + cookie.push("SameSite=".concat(sameSite)); + } document.cookie = cookie.join('; '); }, read: function read(name) { - var match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)')); - return match ? decodeURIComponent(match[3]) : null; + if (typeof document === 'undefined') return null; + var match = document.cookie.match(new RegExp('(?:^|; )' + name + '=([^;]*)')); + return match ? decodeURIComponent(match[1]) : null; }, remove: function remove(name) { - this.write(name, '', Date.now() - 86400000); + this.write(name, '', Date.now() - 86400000, '/'); } } : // Non-standard browser env (web workers, react-native) lack needed support. @@ -3353,11 +3371,9 @@ var DEFAULT_CHUNK_SIZE = 64 * 1024; var isFunction = utils$1.isFunction; var globalFetchAPI = function (_ref) { - var fetch = _ref.fetch, - Request = _ref.Request, + var Request = _ref.Request, Response = _ref.Response; return { - fetch: fetch, Request: Request, Response: Response }; @@ -3376,11 +3392,14 @@ } }; var factory = function factory(env) { - var _Object$assign = Object.assign({}, globalFetchAPI, env), - fetch = _Object$assign.fetch, - Request = _Object$assign.Request, - Response = _Object$assign.Response; - var isFetchSupported = isFunction(fetch); + env = utils$1.merge.call({ + skipUndefined: true + }, globalFetchAPI, env); + var _env = env, + envFetch = _env.fetch, + Request = _env.Request, + Response = _env.Response; + var isFetchSupported = envFetch ? isFunction(envFetch) : typeof fetch === 'function'; var isRequestSupported = isFunction(Request); var isResponseSupported = isFunction(Response); if (!isFetchSupported) { @@ -3521,31 +3540,32 @@ }(); return /*#__PURE__*/function () { var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(config) { - var _resolveConfig, url, method, data, signal, cancelToken, timeout, onDownloadProgress, onUploadProgress, responseType, headers, _resolveConfig$withCr, withCredentials, fetchOptions, composedSignal, request, unsubscribe, requestContentLength, _request, contentTypeHeader, _progressEventDecorat, _progressEventDecorat2, onProgress, flush, isCredentialsSupported, resolvedOptions, response, isStreamResponse, options, responseContentLength, _ref6, _ref7, _onProgress, _flush, responseData; + var _resolveConfig, url, method, data, signal, cancelToken, timeout, onDownloadProgress, onUploadProgress, responseType, headers, _resolveConfig$withCr, withCredentials, fetchOptions, _fetch, composedSignal, request, unsubscribe, requestContentLength, _request, contentTypeHeader, _progressEventDecorat, _progressEventDecorat2, onProgress, flush, isCredentialsSupported, resolvedOptions, response, isStreamResponse, options, responseContentLength, _ref6, _ref7, _onProgress, _flush, responseData; return _regeneratorRuntime().wrap(function _callee4$(_context4) { while (1) switch (_context4.prev = _context4.next) { case 0: _resolveConfig = resolveConfig(config), url = _resolveConfig.url, method = _resolveConfig.method, data = _resolveConfig.data, signal = _resolveConfig.signal, cancelToken = _resolveConfig.cancelToken, timeout = _resolveConfig.timeout, onDownloadProgress = _resolveConfig.onDownloadProgress, onUploadProgress = _resolveConfig.onUploadProgress, responseType = _resolveConfig.responseType, headers = _resolveConfig.headers, _resolveConfig$withCr = _resolveConfig.withCredentials, withCredentials = _resolveConfig$withCr === void 0 ? 'same-origin' : _resolveConfig$withCr, fetchOptions = _resolveConfig.fetchOptions; + _fetch = envFetch || fetch; responseType = responseType ? (responseType + '').toLowerCase() : 'text'; composedSignal = composeSignals$1([signal, cancelToken && cancelToken.toAbortSignal()], timeout); request = null; unsubscribe = composedSignal && composedSignal.unsubscribe && function () { composedSignal.unsubscribe(); }; - _context4.prev = 5; + _context4.prev = 6; _context4.t0 = onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head'; if (!_context4.t0) { - _context4.next = 12; + _context4.next = 13; break; } - _context4.next = 10; + _context4.next = 11; return resolveBodyLength(headers, data); - case 10: + case 11: _context4.t1 = requestContentLength = _context4.sent; _context4.t0 = _context4.t1 !== 0; - case 12: + case 13: if (!_context4.t0) { - _context4.next = 16; + _context4.next = 17; break; } _request = new Request(url, { @@ -3560,7 +3580,7 @@ _progressEventDecorat = progressEventDecorator(requestContentLength, progressEventReducer(asyncDecorator(onUploadProgress))), _progressEventDecorat2 = _slicedToArray(_progressEventDecorat, 2), onProgress = _progressEventDecorat2[0], flush = _progressEventDecorat2[1]; data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); } - case 16: + case 17: if (!utils$1.isString(withCredentials)) { withCredentials = withCredentials ? 'include' : 'omit'; } @@ -3577,9 +3597,9 @@ credentials: isCredentialsSupported ? withCredentials : undefined }); request = isRequestSupported && new Request(url, resolvedOptions); - _context4.next = 22; - return isRequestSupported ? fetch(request, fetchOptions) : fetch(url, resolvedOptions); - case 22: + _context4.next = 23; + return isRequestSupported ? _fetch(request, fetchOptions) : _fetch(url, resolvedOptions); + case 23: response = _context4.sent; isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response'); if (supportsResponseStream && (onDownloadProgress || isStreamResponse && unsubscribe)) { @@ -3595,12 +3615,12 @@ }), options); } responseType = responseType || 'text'; - _context4.next = 28; + _context4.next = 29; return resolvers[utils$1.findKey(resolvers, responseType) || 'text'](response, config); - case 28: + case 29: responseData = _context4.sent; !isStreamResponse && unsubscribe && unsubscribe(); - _context4.next = 32; + _context4.next = 33; return new Promise(function (resolve, reject) { settle(resolve, reject, { data: responseData, @@ -3611,26 +3631,26 @@ request: request }); }); - case 32: + case 33: return _context4.abrupt("return", _context4.sent); - case 35: - _context4.prev = 35; - _context4.t2 = _context4["catch"](5); + case 36: + _context4.prev = 36; + _context4.t2 = _context4["catch"](6); unsubscribe && unsubscribe(); if (!(_context4.t2 && _context4.t2.name === 'TypeError' && /Load failed|fetch/i.test(_context4.t2.message))) { - _context4.next = 40; + _context4.next = 41; break; } throw Object.assign(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request), { cause: _context4.t2.cause || _context4.t2 }); - case 40: - throw AxiosError.from(_context4.t2, _context4.t2 && _context4.t2.code, config, request); case 41: + throw AxiosError.from(_context4.t2, _context4.t2 && _context4.t2.code, config, request); + case 42: case "end": return _context4.stop(); } - }, _callee4, null, [[5, 35]]); + }, _callee4, null, [[6, 36]]); })); return function (_x5) { return _ref5.apply(this, arguments); @@ -3639,9 +3659,7 @@ }; var seedCache = new Map(); var getFetch = function getFetch(config) { - var env = utils$1.merge.call({ - skipUndefined: true - }, globalFetchAPI, config ? config.env : null); + var env = config && config.env || {}; var fetch = env.fetch, Request = env.Request, Response = env.Response; @@ -3661,6 +3679,15 @@ }; getFetch(); + /** + * Known adapters mapping. + * Provides environment-specific adapters for Axios: + * - `http` for Node.js + * - `xhr` for browsers + * - `fetch` for fetch API-based requests + * + * @type {Object} + */ var knownAdapters = { http: httpAdapter, xhr: xhrAdapter, @@ -3668,6 +3695,8 @@ get: getFetch } }; + + // Assign adapter names for easier debugging and identification utils$1.forEach(knownAdapters, function (fn, value) { if (fn) { try { @@ -3682,47 +3711,85 @@ }); } }); + + /** + * Render a rejection reason string for unknown or unsupported adapters + * + * @param {string} reason + * @returns {string} + */ var renderReason = function renderReason(reason) { return "- ".concat(reason); }; + + /** + * Check if the adapter is resolved (function, null, or false) + * + * @param {Function|null|false} adapter + * @returns {boolean} + */ var isResolvedHandle = function isResolvedHandle(adapter) { return utils$1.isFunction(adapter) || adapter === null || adapter === false; }; + + /** + * Get the first suitable adapter from the provided list. + * Tries each adapter in order until a supported one is found. + * Throws an AxiosError if no adapter is suitable. + * + * @param {Array|string|Function} adapters - Adapter(s) by name or function. + * @param {Object} config - Axios request configuration + * @throws {AxiosError} If no suitable adapter is available + * @returns {Function} The resolved adapter function + */ + function getAdapter(adapters, config) { + adapters = utils$1.isArray(adapters) ? adapters : [adapters]; + var _adapters = adapters, + length = _adapters.length; + var nameOrAdapter; + var adapter; + var rejectedReasons = {}; + for (var i = 0; i < length; i++) { + nameOrAdapter = adapters[i]; + var id = void 0; + adapter = nameOrAdapter; + if (!isResolvedHandle(nameOrAdapter)) { + adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; + if (adapter === undefined) { + throw new AxiosError("Unknown adapter '".concat(id, "'")); + } + } + if (adapter && (utils$1.isFunction(adapter) || (adapter = adapter.get(config)))) { + break; + } + rejectedReasons[id || '#' + i] = adapter; + } + if (!adapter) { + var reasons = Object.entries(rejectedReasons).map(function (_ref) { + var _ref2 = _slicedToArray(_ref, 2), + id = _ref2[0], + state = _ref2[1]; + return "adapter ".concat(id, " ") + (state === false ? 'is not supported by the environment' : 'is not available in the build'); + }); + var s = length ? reasons.length > 1 ? 'since :\n' + reasons.map(renderReason).join('\n') : ' ' + renderReason(reasons[0]) : 'as no adapter specified'; + throw new AxiosError("There is no suitable adapter to dispatch the request " + s, 'ERR_NOT_SUPPORT'); + } + return adapter; + } + + /** + * Exports Axios adapters and utility to resolve an adapter + */ var adapters = { - getAdapter: function getAdapter(adapters, config) { - adapters = utils$1.isArray(adapters) ? adapters : [adapters]; - var _adapters = adapters, - length = _adapters.length; - var nameOrAdapter; - var adapter; - var rejectedReasons = {}; - for (var i = 0; i < length; i++) { - nameOrAdapter = adapters[i]; - var id = void 0; - adapter = nameOrAdapter; - if (!isResolvedHandle(nameOrAdapter)) { - adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; - if (adapter === undefined) { - throw new AxiosError("Unknown adapter '".concat(id, "'")); - } - } - if (adapter && (utils$1.isFunction(adapter) || (adapter = adapter.get(config)))) { - break; - } - rejectedReasons[id || '#' + i] = adapter; - } - if (!adapter) { - var reasons = Object.entries(rejectedReasons).map(function (_ref) { - var _ref2 = _slicedToArray(_ref, 2), - id = _ref2[0], - state = _ref2[1]; - return "adapter ".concat(id, " ") + (state === false ? 'is not supported by the environment' : 'is not available in the build'); - }); - var s = length ? reasons.length > 1 ? 'since :\n' + reasons.map(renderReason).join('\n') : ' ' + renderReason(reasons[0]) : 'as no adapter specified'; - throw new AxiosError("There is no suitable adapter to dispatch the request " + s, 'ERR_NOT_SUPPORT'); - } - return adapter; - }, + /** + * Resolve an adapter from a list of adapter names or functions. + * @type {Function} + */ + getAdapter: getAdapter, + /** + * Exposes all known adapters + * @type {Object} + */ adapters: knownAdapters }; @@ -3780,7 +3847,7 @@ }); } - var VERSION = "1.12.0"; + var VERSION = "1.13.2"; var validators$1 = {}; @@ -4023,7 +4090,6 @@ } len = requestInterceptorChain.length; var newConfig = config; - i = 0; while (i < len) { var onFulfilled = requestInterceptorChain[i++]; var onRejected = requestInterceptorChain[i++]; @@ -4317,7 +4383,13 @@ InsufficientStorage: 507, LoopDetected: 508, NotExtended: 510, - NetworkAuthenticationRequired: 511 + NetworkAuthenticationRequired: 511, + WebServerIsDown: 521, + ConnectionTimedOut: 522, + OriginIsUnreachable: 523, + TimeoutOccurred: 524, + SslHandshakeFailed: 525, + InvalidSslCertificate: 526 }; Object.entries(HttpStatusCode).forEach(function (_ref) { var _ref2 = _slicedToArray(_ref, 2), diff --git a/lnbits/static/vendor/chart.umd.js b/lnbits/static/vendor/chart.umd.js index 8e43e996..4cfce5c7 100644 --- a/lnbits/static/vendor/chart.umd.js +++ b/lnbits/static/vendor/chart.umd.js @@ -1,14 +1,14 @@ /*! - * Chart.js v4.4.4 + * Chart.js v4.5.1 * https://www.chartjs.org - * (c) 2024 Chart.js Contributors + * (c) 2025 Chart.js Contributors * Released under the MIT License */ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return Go},get Decimation(){return Qo},get Filler(){return ma},get Legend(){return ya},get SubTitle(){return ka},get Title(){return Ma},get Tooltip(){return Ba}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;at,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)t-e)).pop(),e}function N(t){return!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;sl&&h=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return nt[s][e]et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;ss&&t[n-1]>i;)n--;return s>0||n{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const n=s.apply(this,e);return t._chartjs.listeners.forEach((t=>{"function"==typeof t[i]&&t[i](...e)})),n}})})))}function rt(t,e){const i=t._chartjs;if(!i)return;const s=i.listeners,n=s.indexOf(e);-1!==n&&s.splice(n,1),s.length>0||(ot.forEach((e=>{delete t[e]})),delete t._chartjs)}function lt(t){const e=new Set(t);return e.size===t.length?t:Array.from(e)}const ht="undefined"==typeof window?function(t){return t()}:window.requestAnimationFrame;function ct(t,e){let i=[],s=!1;return function(...n){i=n,s||(s=!0,ht.call(window,(()=>{s=!1,t.apply(e,i)})))}}function dt(t,e){let i;return function(...s){return e?(clearTimeout(i),i=setTimeout(t,e,s)):t.apply(this,s),e}}const ut=t=>"start"===t?"left":"end"===t?"right":"center",ft=(t,e,i)=>"start"===t?e:"end"===t?i:(e+i)/2,gt=(t,e,i,s)=>t===(s?"left":"right")?i:"center"===t?(e+i)/2:e;function pt(t,e,i){const s=e.length;let n=0,o=s;if(t._sorted){const{iScale:a,_parsed:r}=t,l=a.axis,{min:h,max:c,minDefined:d,maxDefined:u}=a.getUserBounds();d&&(n=J(Math.min(it(r,l,h).lo,i?s:it(e,l,a.getPixelForValue(h)).lo),0,s-1)),o=u?J(Math.max(it(r,a.axis,c,!0).hi+1,i?0:it(e,l,a.getPixelForValue(c),!0).hi+1),n,s)-n:s-n}return{start:n,count:o}}function mt(t){const{xScale:e,yScale:i,_scaleRanges:s}=t,n={xmin:e.min,xmax:e.max,ymin:i.min,ymax:i.max};if(!s)return t._scaleRanges=n,!0;const o=s.xmin!==e.min||s.xmax!==e.max||s.ymin!==i.min||s.ymax!==i.max;return Object.assign(s,n),o}class xt{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,i,s){const n=e.listeners[s],o=e.duration;n.forEach((s=>s({chart:t,initial:e.initial,numSteps:o,currentStep:Math.min(i-e.start,o)})))}_refresh(){this._request||(this._running=!0,this._request=ht.call(window,(()=>{this._update(),this._request=null,this._running&&this._refresh()})))}_update(t=Date.now()){let e=0;this._charts.forEach(((i,s)=>{if(!i.running||!i.items.length)return;const n=i.items;let o,a=n.length-1,r=!1;for(;a>=0;--a)o=n[a],o._active?(o._total>i.duration&&(i.duration=o._total),o.tick(t),r=!0):(n[a]=n[n.length-1],n.pop());r&&(s.draw(),this._notify(s,i,t,"progress")),n.length||(i.running=!1,this._notify(s,i,t,"complete"),i.initial=!1),e+=n.length})),this._lastDate=t,0===e&&(this._running=!1)}_getAnims(t){const e=this._charts;let i=e.get(t);return i||(i={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,i)),i}listen(t,e,i){this._getAnims(t).listeners[e].push(i)}add(t,e){e&&e.length&&this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce(((t,e)=>Math.max(t,e._duration)),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!!(e&&e.running&&e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const i=e.items;let s=i.length-1;for(;s>=0;--s)i[s].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var bt=new xt; +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return Jo},get Decimation(){return ta},get Filler(){return ba},get Legend(){return Ma},get SubTitle(){return Pa},get Title(){return ka},get Tooltip(){return Na}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;at,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)t-e)).pop(),e}function N(t){return!function(t){return"symbol"==typeof t||"object"==typeof t&&null!==t&&!(Symbol.toPrimitive in t||"toString"in t||"valueOf"in t)}(t)&&!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;sl&&h=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return nt[s][e]et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;ss&&t[n-1]>i;)n--;return s>0||n{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const n=s.apply(this,e);return t._chartjs.listeners.forEach((t=>{"function"==typeof t[i]&&t[i](...e)})),n}})})))}function rt(t,e){const i=t._chartjs;if(!i)return;const s=i.listeners,n=s.indexOf(e);-1!==n&&s.splice(n,1),s.length>0||(ot.forEach((e=>{delete t[e]})),delete t._chartjs)}function lt(t){const e=new Set(t);return e.size===t.length?t:Array.from(e)}const ht="undefined"==typeof window?function(t){return t()}:window.requestAnimationFrame;function ct(t,e){let i=[],s=!1;return function(...n){i=n,s||(s=!0,ht.call(window,(()=>{s=!1,t.apply(e,i)})))}}function dt(t,e){let i;return function(...s){return e?(clearTimeout(i),i=setTimeout(t,e,s)):t.apply(this,s),e}}const ut=t=>"start"===t?"left":"end"===t?"right":"center",ft=(t,e,i)=>"start"===t?e:"end"===t?i:(e+i)/2,gt=(t,e,i,s)=>t===(s?"left":"right")?i:"center"===t?(e+i)/2:e;function pt(t,e,i){const n=e.length;let o=0,a=n;if(t._sorted){const{iScale:r,vScale:l,_parsed:h}=t,c=t.dataset&&t.dataset.options?t.dataset.options.spanGaps:null,d=r.axis,{min:u,max:f,minDefined:g,maxDefined:p}=r.getUserBounds();if(g){if(o=Math.min(it(h,d,u).lo,i?n:it(e,d,r.getPixelForValue(u)).lo),c){const t=h.slice(0,o+1).reverse().findIndex((t=>!s(t[l.axis])));o-=Math.max(0,t)}o=Z(o,0,n-1)}if(p){let t=Math.max(it(h,r.axis,f,!0).hi+1,i?0:it(e,d,r.getPixelForValue(f),!0).hi+1);if(c){const e=h.slice(t-1).findIndex((t=>!s(t[l.axis])));t+=Math.max(0,e)}a=Z(t,o,n)-o}else a=n-o}return{start:o,count:a}}function mt(t){const{xScale:e,yScale:i,_scaleRanges:s}=t,n={xmin:e.min,xmax:e.max,ymin:i.min,ymax:i.max};if(!s)return t._scaleRanges=n,!0;const o=s.xmin!==e.min||s.xmax!==e.max||s.ymin!==i.min||s.ymax!==i.max;return Object.assign(s,n),o}class xt{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,i,s){const n=e.listeners[s],o=e.duration;n.forEach((s=>s({chart:t,initial:e.initial,numSteps:o,currentStep:Math.min(i-e.start,o)})))}_refresh(){this._request||(this._running=!0,this._request=ht.call(window,(()=>{this._update(),this._request=null,this._running&&this._refresh()})))}_update(t=Date.now()){let e=0;this._charts.forEach(((i,s)=>{if(!i.running||!i.items.length)return;const n=i.items;let o,a=n.length-1,r=!1;for(;a>=0;--a)o=n[a],o._active?(o._total>i.duration&&(i.duration=o._total),o.tick(t),r=!0):(n[a]=n[n.length-1],n.pop());r&&(s.draw(),this._notify(s,i,t,"progress")),n.length||(i.running=!1,this._notify(s,i,t,"complete"),i.initial=!1),e+=n.length})),this._lastDate=t,0===e&&(this._running=!1)}_getAnims(t){const e=this._charts;let i=e.get(t);return i||(i={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,i)),i}listen(t,e,i){this._getAnims(t).listeners[e].push(i)}add(t,e){e&&e.length&&this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce(((t,e)=>Math.max(t,e._duration)),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!!(e&&e.running&&e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const i=e.items;let s=i.length-1;for(;s>=0;--s)i[s].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var bt=new xt; /*! * @kurkle/color v0.3.2 * https://github.com/kurkle/color#readme * (c) 2023 Jukka Kurkela * Released under the MIT License - */function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),s=Ft(s),t.r=s[0],t.g=s[1],t.b=s[2]}}function qt(t,e){return t?Object.assign(e||{},t):t}function Kt(t){var e={r:0,g:0,b:0,a:255};return Array.isArray(t)?t.length>=3&&(e={r:t[0],g:t[1],b:t[2],a:255},t.length>3&&(e.a=Mt(t[3]))):(e=qt(t,{r:0,g:0,b:0,a:1})).a=Mt(e.a),e}function Gt(t){return"r"===t.charAt(0)?function(t){const e=$t.exec(t);let i,s,n,o=255;if(e){if(e[7]!==i){const t=+e[7];o=e[8]?vt(t):yt(255*t,0,255)}return i=+e[1],s=+e[3],n=+e[5],i=255&(e[2]?vt(i):yt(i,0,255)),s=255&(e[4]?vt(s):yt(s,0,255)),n=255&(e[6]?vt(n):yt(n,0,255)),{r:i,g:s,b:n,a:o}}}(t):Bt(t)}class Zt{constructor(t){if(t instanceof Zt)return t;const e=typeof t;let i;var s,n,o;"object"===e?i=Kt(t):"string"===e&&(o=(s=t).length,"#"===s[0]&&(4===o||5===o?n={r:255&17*St[s[1]],g:255&17*St[s[2]],b:255&17*St[s[3]],a:5===o?17*St[s[4]]:255}:7!==o&&9!==o||(n={r:St[s[1]]<<4|St[s[2]],g:St[s[3]]<<4|St[s[4]],b:St[s[5]]<<4|St[s[6]],a:9===o?St[s[7]]<<4|St[s[8]]:255})),i=n||jt(t)||Gt(t)),this._rgb=i,this._valid=!!i}get valid(){return this._valid}get rgb(){var t=qt(this._rgb);return t&&(t.a=wt(t.a)),t}set rgb(t){this._rgb=Kt(t)}rgbString(){return this._valid?(t=this._rgb)&&(t.a<255?`rgba(${t.r}, ${t.g}, ${t.b}, ${wt(t.a)})`:`rgb(${t.r}, ${t.g}, ${t.b})`):void 0;var t}hexString(){return this._valid?At(this._rgb):void 0}hslString(){return this._valid?function(t){if(!t)return;const e=It(t),i=e[0],s=kt(e[1]),n=kt(e[2]);return t.a<255?`hsla(${i}, ${s}%, ${n}%, ${wt(t.a)})`:`hsl(${i}, ${s}%, ${n}%)`}(this._rgb):void 0}mix(t,e){if(t){const i=this.rgb,s=t.rgb;let n;const o=e===n?.5:e,a=2*o-1,r=i.a-s.a,l=((a*r==-1?a:(a+r)/(1+a*r))+1)/2;n=1-l,i.r=255&l*i.r+n*s.r+.5,i.g=255&l*i.g+n*s.g+.5,i.b=255&l*i.b+n*s.b+.5,i.a=o*i.a+(1-o)*s.a,this.rgb=i}return this}interpolate(t,e){return t&&(this._rgb=function(t,e,i){const s=Ut(wt(t.r)),n=Ut(wt(t.g)),o=Ut(wt(t.b));return{r:Mt(Yt(s+i*(Ut(wt(e.r))-s))),g:Mt(Yt(n+i*(Ut(wt(e.g))-n))),b:Mt(Yt(o+i*(Ut(wt(e.b))-o))),a:t.a+i*(e.a-t.a)}}(this._rgb,t._rgb,e)),this}clone(){return new Zt(this.rgb)}alpha(t){return this._rgb.a=Mt(t),this}clearer(t){return this._rgb.a*=1-t,this}greyscale(){const t=this._rgb,e=_t(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=e,this}opaquer(t){return this._rgb.a*=1+t,this}negate(){const t=this._rgb;return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,this}lighten(t){return Xt(this._rgb,2,t),this}darken(t){return Xt(this._rgb,2,-t),this}saturate(t){return Xt(this._rgb,1,t),this}desaturate(t){return Xt(this._rgb,1,-t),this}rotate(t){return function(t,e){var i=It(t);i[0]=Vt(i[0]+e),i=Ft(i),t.r=i[0],t.g=i[1],t.b=i[2]}(this._rgb,t),this}}function Jt(t){if(t&&"object"==typeof t){const e=t.toString();return"[object CanvasPattern]"===e||"[object CanvasGradient]"===e}return!1}function Qt(t){return Jt(t)?t:new Zt(t)}function te(t){return Jt(t)?t:new Zt(t).saturate(.5).darken(.1).hexString()}const ee=["x","y","borderWidth","radius","tension"],ie=["color","borderColor","backgroundColor"];const se=new Map;function ne(t,e,i){return function(t,e){e=e||{};const i=t+JSON.stringify(e);let s=se.get(i);return s||(s=new Intl.NumberFormat(t,e),se.set(i,s)),s}(e,i).format(t)}const oe={values:t=>n(t)?t:""+t,numeric(t,e,i){if(0===t)return"0";const s=this.chart.options.locale;let n,o=t;if(i.length>1){const e=Math.max(Math.abs(i[0].value),Math.abs(i[i.length-1].value));(e<1e-4||e>1e15)&&(n="scientific"),o=function(t,e){let i=e.length>3?e[2].value-e[1].value:e[1].value-e[0].value;Math.abs(i)>=1&&t!==Math.floor(t)&&(i=t-Math.floor(t));return i}(t,i)}const a=z(Math.abs(o)),r=isNaN(a)?1:Math.max(Math.min(-1*Math.floor(a),20),0),l={notation:n,minimumFractionDigits:r,maximumFractionDigits:r};return Object.assign(l,this.options.ticks.format),ne(t,s,l)},logarithmic(t,e,i){if(0===t)return"0";const s=i[e].significand||t/Math.pow(10,Math.floor(z(t)));return[1,2,3,5,10,15].includes(s)||e>.8*i.length?oe.numeric.call(this,t,e,i):""}};var ae={formatters:oe};const re=Object.create(null),le=Object.create(null);function he(t,e){if(!e)return t;const i=e.split(".");for(let e=0,s=i.length;et.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(t,e)=>te(e.backgroundColor),this.hoverBorderColor=(t,e)=>te(e.borderColor),this.hoverColor=(t,e)=>te(e.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(t),this.apply(e)}set(t,e){return ce(this,t,e)}get(t){return he(this,t)}describe(t,e){return ce(le,t,e)}override(t,e){return ce(re,t,e)}route(t,e,i,s){const n=he(this,t),a=he(this,i),r="_"+e;Object.defineProperties(n,{[r]:{value:n[e],writable:!0},[e]:{enumerable:!0,get(){const t=this[r],e=a[s];return o(t)?Object.assign({},e,t):l(t,e)},set(t){this[r]=t}}})}apply(t){t.forEach((t=>t(this)))}}var ue=new de({_scriptable:t=>!t.startsWith("on"),_indexable:t=>"events"!==t,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[function(t){t.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),t.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:t=>"onProgress"!==t&&"onComplete"!==t&&"fn"!==t}),t.set("animations",{colors:{type:"color",properties:ie},numbers:{type:"number",properties:ee}}),t.describe("animations",{_fallback:"animation"}),t.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>0|t}}}})},function(t){t.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})},function(t){t.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:ae.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),t.route("scale.ticks","color","","color"),t.route("scale.grid","color","","borderColor"),t.route("scale.border","color","","borderColor"),t.route("scale.title","color","","color"),t.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&"callback"!==t&&"parser"!==t,_indexable:t=>"borderDash"!==t&&"tickBorderDash"!==t&&"dash"!==t}),t.describe("scales",{_fallback:"scale"}),t.describe("scale.ticks",{_scriptable:t=>"backdropPadding"!==t&&"callback"!==t,_indexable:t=>"backdropPadding"!==t})}]);function fe(){return"undefined"!=typeof window&&"undefined"!=typeof document}function ge(t){let e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e}function pe(t,e,i){let s;return"string"==typeof t?(s=parseInt(t,10),-1!==t.indexOf("%")&&(s=s/100*e.parentNode[i])):s=t,s}const me=t=>t.ownerDocument.defaultView.getComputedStyle(t,null);function xe(t,e){return me(t).getPropertyValue(e)}const be=["top","right","bottom","left"];function _e(t,e,i){const s={};i=i?"-"+i:"";for(let n=0;n<4;n++){const o=be[n];s[o]=parseFloat(t[e+"-"+o+i])||0}return s.width=s.left+s.right,s.height=s.top+s.bottom,s}const ye=(t,e,i)=>(t>0||e>0)&&(!i||!i.shadowRoot);function ve(t,e){if("native"in t)return t;const{canvas:i,currentDevicePixelRatio:s}=e,n=me(i),o="border-box"===n.boxSizing,a=_e(n,"padding"),r=_e(n,"border","width"),{x:l,y:h,box:c}=function(t,e){const i=t.touches,s=i&&i.length?i[0]:t,{offsetX:n,offsetY:o}=s;let a,r,l=!1;if(ye(n,o,t.target))a=n,r=o;else{const t=e.getBoundingClientRect();a=s.clientX-t.left,r=s.clientY-t.top,l=!0}return{x:a,y:r,box:l}}(t,i),d=a.left+(c&&r.left),u=a.top+(c&&r.top);let{width:f,height:g}=e;return o&&(f-=a.width+r.width,g-=a.height+r.height),{x:Math.round((l-d)/f*i.width/s),y:Math.round((h-u)/g*i.height/s)}}const Me=t=>Math.round(10*t)/10;function we(t,e,i,s){const n=me(t),o=_e(n,"margin"),a=pe(n.maxWidth,t,"clientWidth")||T,r=pe(n.maxHeight,t,"clientHeight")||T,l=function(t,e,i){let s,n;if(void 0===e||void 0===i){const o=t&&ge(t);if(o){const t=o.getBoundingClientRect(),a=me(o),r=_e(a,"border","width"),l=_e(a,"padding");e=t.width-l.width-r.width,i=t.height-l.height-r.height,s=pe(a.maxWidth,o,"clientWidth"),n=pe(a.maxHeight,o,"clientHeight")}else e=t.clientWidth,i=t.clientHeight}return{width:e,height:i,maxWidth:s||T,maxHeight:n||T}}(t,e,i);let{width:h,height:c}=l;if("content-box"===n.boxSizing){const t=_e(n,"border","width"),e=_e(n,"padding");h-=e.width+t.width,c-=e.height+t.height}h=Math.max(0,h-o.width),c=Math.max(0,s?h/s:c-o.height),h=Me(Math.min(h,a,l.maxWidth)),c=Me(Math.min(c,r,l.maxHeight)),h&&!c&&(c=Me(h/2));return(void 0!==e||void 0!==i)&&s&&l.height&&c>l.height&&(c=l.height,h=Me(Math.floor(c*s))),{width:h,height:c}}function ke(t,e,i){const s=e||1,n=Math.floor(t.height*s),o=Math.floor(t.width*s);t.height=Math.floor(t.height),t.width=Math.floor(t.width);const a=t.canvas;return a.style&&(i||!a.style.height&&!a.style.width)&&(a.style.height=`${t.height}px`,a.style.width=`${t.width}px`),(t.currentDevicePixelRatio!==s||a.height!==n||a.width!==o)&&(t.currentDevicePixelRatio=s,a.height=n,a.width=o,t.ctx.setTransform(s,0,0,s,0,0),!0)}const Se=function(){let t=!1;try{const e={get passive(){return t=!0,!1}};fe()&&(window.addEventListener("test",null,e),window.removeEventListener("test",null,e))}catch(t){}return t}();function Pe(t,e){const i=xe(t,e),s=i&&i.match(/^(\d+)(\.\d+)?px$/);return s?+s[1]:void 0}function De(t){return!t||s(t.size)||s(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}function Ce(t,e,i,s,n){let o=e[n];return o||(o=e[n]=t.measureText(n).width,i.push(n)),o>s&&(s=o),s}function Oe(t,e,i,s){let o=(s=s||{}).data=s.data||{},a=s.garbageCollect=s.garbageCollect||[];s.font!==e&&(o=s.data={},a=s.garbageCollect=[],s.font=e),t.save(),t.font=e;let r=0;const l=i.length;let h,c,d,u,f;for(h=0;hi.length){for(h=0;h0&&t.stroke()}}function Re(t,e,i){return i=i||.5,!e||t&&t.x>e.left-i&&t.xe.top-i&&t.y0&&""!==r.strokeColor;let c,d;for(t.save(),t.font=a.string,function(t,e){e.translation&&t.translate(e.translation[0],e.translation[1]),s(e.rotation)||t.rotate(e.rotation),e.color&&(t.fillStyle=e.color),e.textAlign&&(t.textAlign=e.textAlign),e.textBaseline&&(t.textBaseline=e.textBaseline)}(t,r),c=0;ct[0])){const o=i||t;void 0===s&&(s=ti("_fallback",t));const a={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:o,_fallback:s,_getTarget:n,override:i=>je([i,...t],e,o,s)};return new Proxy(a,{deleteProperty:(e,i)=>(delete e[i],delete e._keys,delete t[0][i],!0),get:(i,s)=>qe(i,s,(()=>function(t,e,i,s){let n;for(const o of e)if(n=ti(Ue(o,t),i),void 0!==n)return Xe(t,n)?Je(i,s,t,n):n}(s,e,t,i))),getOwnPropertyDescriptor:(t,e)=>Reflect.getOwnPropertyDescriptor(t._scopes[0],e),getPrototypeOf:()=>Reflect.getPrototypeOf(t[0]),has:(t,e)=>ei(t).includes(e),ownKeys:t=>ei(t),set(t,e,i){const s=t._storage||(t._storage=n());return t[e]=s[e]=i,delete t._keys,!0}})}function $e(t,e,i,s){const a={_cacheable:!1,_proxy:t,_context:e,_subProxy:i,_stack:new Set,_descriptors:Ye(t,s),setContext:e=>$e(t,e,i,s),override:n=>$e(t.override(n),e,i,s)};return new Proxy(a,{deleteProperty:(e,i)=>(delete e[i],delete t[i],!0),get:(t,e,i)=>qe(t,e,(()=>function(t,e,i){const{_proxy:s,_context:a,_subProxy:r,_descriptors:l}=t;let h=s[e];S(h)&&l.isScriptable(e)&&(h=function(t,e,i,s){const{_proxy:n,_context:o,_subProxy:a,_stack:r}=i;if(r.has(t))throw new Error("Recursion detected: "+Array.from(r).join("->")+"->"+t);r.add(t);let l=e(o,a||s);r.delete(t),Xe(t,l)&&(l=Je(n._scopes,n,t,l));return l}(e,h,t,i));n(h)&&h.length&&(h=function(t,e,i,s){const{_proxy:n,_context:a,_subProxy:r,_descriptors:l}=i;if(void 0!==a.index&&s(t))return e[a.index%e.length];if(o(e[0])){const i=e,s=n._scopes.filter((t=>t!==i));e=[];for(const o of i){const i=Je(s,n,t,o);e.push($e(i,a,r&&r[t],l))}}return e}(e,h,t,l.isIndexable));Xe(e,h)&&(h=$e(h,a,r&&r[e],l));return h}(t,e,i))),getOwnPropertyDescriptor:(e,i)=>e._descriptors.allKeys?Reflect.has(t,i)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(t,i),getPrototypeOf:()=>Reflect.getPrototypeOf(t),has:(e,i)=>Reflect.has(t,i),ownKeys:()=>Reflect.ownKeys(t),set:(e,i,s)=>(t[i]=s,delete e[i],!0)})}function Ye(t,e={scriptable:!0,indexable:!0}){const{_scriptable:i=e.scriptable,_indexable:s=e.indexable,_allKeys:n=e.allKeys}=t;return{allKeys:n,scriptable:i,indexable:s,isScriptable:S(i)?i:()=>i,isIndexable:S(s)?s:()=>s}}const Ue=(t,e)=>t?t+w(e):e,Xe=(t,e)=>o(e)&&"adapters"!==t&&(null===Object.getPrototypeOf(e)||e.constructor===Object);function qe(t,e,i){if(Object.prototype.hasOwnProperty.call(t,e)||"constructor"===e)return t[e];const s=i();return t[e]=s,s}function Ke(t,e,i){return S(t)?t(e,i):t}const Ge=(t,e)=>!0===t?e:"string"==typeof t?M(e,t):void 0;function Ze(t,e,i,s,n){for(const o of e){const e=Ge(i,o);if(e){t.add(e);const o=Ke(e._fallback,i,n);if(void 0!==o&&o!==i&&o!==s)return o}else if(!1===e&&void 0!==s&&i!==s)return null}return!1}function Je(t,e,i,s){const a=e._rootScopes,r=Ke(e._fallback,i,s),l=[...t,...a],h=new Set;h.add(s);let c=Qe(h,l,i,r||i,s);return null!==c&&((void 0===r||r===i||(c=Qe(h,l,r,c,s),null!==c))&&je(Array.from(h),[""],a,r,(()=>function(t,e,i){const s=t._getTarget();e in s||(s[e]={});const a=s[e];if(n(a)&&o(i))return i;return a||{}}(e,i,s))))}function Qe(t,e,i,s,n){for(;i;)i=Ze(t,e,i,s,n);return i}function ti(t,e){for(const i of e){if(!i)continue;const e=i[t];if(void 0!==e)return e}}function ei(t){let e=t._keys;return e||(e=t._keys=function(t){const e=new Set;for(const i of t)for(const t of Object.keys(i).filter((t=>!t.startsWith("_"))))e.add(t);return Array.from(e)}(t._scopes)),e}function ii(t,e,i,s){const{iScale:n}=t,{key:o="r"}=this._parsing,a=new Array(s);let r,l,h,c;for(r=0,l=s;re"x"===t?"y":"x";function ai(t,e,i,s){const n=t.skip?e:t,o=e,a=i.skip?e:i,r=q(o,n),l=q(a,o);let h=r/(r+l),c=l/(r+l);h=isNaN(h)?0:h,c=isNaN(c)?0:c;const d=s*h,u=s*c;return{previous:{x:o.x-d*(a.x-n.x),y:o.y-d*(a.y-n.y)},next:{x:o.x+u*(a.x-n.x),y:o.y+u*(a.y-n.y)}}}function ri(t,e="x"){const i=oi(e),s=t.length,n=Array(s).fill(0),o=Array(s);let a,r,l,h=ni(t,0);for(a=0;a!t.skip))),"monotone"===e.cubicInterpolationMode)ri(t,n);else{let i=s?t[t.length-1]:t[0];for(o=0,a=t.length;o0===t||1===t,di=(t,e,i)=>-Math.pow(2,10*(t-=1))*Math.sin((t-e)*O/i),ui=(t,e,i)=>Math.pow(2,-10*t)*Math.sin((t-e)*O/i)+1,fi={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>-t*(t-2),easeInOutQuad:t=>(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1),easeInCubic:t=>t*t*t,easeOutCubic:t=>(t-=1)*t*t+1,easeInOutCubic:t=>(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2),easeInQuart:t=>t*t*t*t,easeOutQuart:t=>-((t-=1)*t*t*t-1),easeInOutQuart:t=>(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2),easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>(t-=1)*t*t*t*t+1,easeInOutQuint:t=>(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2),easeInSine:t=>1-Math.cos(t*E),easeOutSine:t=>Math.sin(t*E),easeInOutSine:t=>-.5*(Math.cos(C*t)-1),easeInExpo:t=>0===t?0:Math.pow(2,10*(t-1)),easeOutExpo:t=>1===t?1:1-Math.pow(2,-10*t),easeInOutExpo:t=>ci(t)?t:t<.5?.5*Math.pow(2,10*(2*t-1)):.5*(2-Math.pow(2,-10*(2*t-1))),easeInCirc:t=>t>=1?t:-(Math.sqrt(1-t*t)-1),easeOutCirc:t=>Math.sqrt(1-(t-=1)*t),easeInOutCirc:t=>(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1),easeInElastic:t=>ci(t)?t:di(t,.075,.3),easeOutElastic:t=>ci(t)?t:ui(t,.075,.3),easeInOutElastic(t){const e=.1125;return ci(t)?t:t<.5?.5*di(2*t,e,.45):.5+.5*ui(2*t-1,e,.45)},easeInBack(t){const e=1.70158;return t*t*((e+1)*t-e)},easeOutBack(t){const e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack(t){let e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:t=>1-fi.easeOutBounce(1-t),easeOutBounce(t){const e=7.5625,i=2.75;return t<1/i?e*t*t:t<2/i?e*(t-=1.5/i)*t+.75:t<2.5/i?e*(t-=2.25/i)*t+.9375:e*(t-=2.625/i)*t+.984375},easeInOutBounce:t=>t<.5?.5*fi.easeInBounce(2*t):.5*fi.easeOutBounce(2*t-1)+.5};function gi(t,e,i,s){return{x:t.x+i*(e.x-t.x),y:t.y+i*(e.y-t.y)}}function pi(t,e,i,s){return{x:t.x+i*(e.x-t.x),y:"middle"===s?i<.5?t.y:e.y:"after"===s?i<1?t.y:e.y:i>0?e.y:t.y}}function mi(t,e,i,s){const n={x:t.cp2x,y:t.cp2y},o={x:e.cp1x,y:e.cp1y},a=gi(t,n,i),r=gi(n,o,i),l=gi(o,e,i),h=gi(a,r,i),c=gi(r,l,i);return gi(h,c,i)}const xi=/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/,bi=/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/;function _i(t,e){const i=(""+t).match(xi);if(!i||"normal"===i[1])return 1.2*e;switch(t=+i[2],i[3]){case"px":return t;case"%":t/=100}return e*t}const yi=t=>+t||0;function vi(t,e){const i={},s=o(e),n=s?Object.keys(e):e,a=o(t)?s?i=>l(t[i],t[e[i]]):e=>t[e]:()=>t;for(const t of n)i[t]=yi(a(t));return i}function Mi(t){return vi(t,{top:"y",right:"x",bottom:"y",left:"x"})}function wi(t){return vi(t,["topLeft","topRight","bottomLeft","bottomRight"])}function ki(t){const e=Mi(t);return e.width=e.left+e.right,e.height=e.top+e.bottom,e}function Si(t,e){t=t||{},e=e||ue.font;let i=l(t.size,e.size);"string"==typeof i&&(i=parseInt(i,10));let s=l(t.style,e.style);s&&!(""+s).match(bi)&&(console.warn('Invalid font style specified: "'+s+'"'),s=void 0);const n={family:l(t.family,e.family),lineHeight:_i(l(t.lineHeight,e.lineHeight),i),size:i,style:s,weight:l(t.weight,e.weight),string:""};return n.string=De(n),n}function Pi(t,e,i,s){let o,a,r,l=!0;for(o=0,a=t.length;oi&&0===t?0:t+e;return{min:a(s,-Math.abs(o)),max:a(n,o)}}function Ci(t,e){return Object.assign(Object.create(t),e)}function Oi(t,e,i){return t?function(t,e){return{x:i=>t+t+e-i,setWidth(t){e=t},textAlign:t=>"center"===t?t:"right"===t?"left":"right",xPlus:(t,e)=>t-e,leftForLtr:(t,e)=>t-e}}(e,i):{x:t=>t,setWidth(t){},textAlign:t=>t,xPlus:(t,e)=>t+e,leftForLtr:(t,e)=>t}}function Ai(t,e){let i,s;"ltr"!==e&&"rtl"!==e||(i=t.canvas.style,s=[i.getPropertyValue("direction"),i.getPropertyPriority("direction")],i.setProperty("direction",e,"important"),t.prevTextDirection=s)}function Ti(t,e){void 0!==e&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",e[0],e[1]))}function Li(t){return"angle"===t?{between:Z,compare:K,normalize:G}:{between:tt,compare:(t,e)=>t-e,normalize:t=>t}}function Ei({start:t,end:e,count:i,loop:s,style:n}){return{start:t%i,end:e%i,loop:s&&(e-t+1)%i==0,style:n}}function Ri(t,e,i){if(!i)return[t];const{property:s,start:n,end:o}=i,a=e.length,{compare:r,between:l,normalize:h}=Li(s),{start:c,end:d,loop:u,style:f}=function(t,e,i){const{property:s,start:n,end:o}=i,{between:a,normalize:r}=Li(s),l=e.length;let h,c,{start:d,end:u,loop:f}=t;if(f){for(d+=l,u+=l,h=0,c=l;hb||l(n,x,p)&&0!==r(n,x),v=()=>!b||0===r(o,p)||l(o,x,p);for(let t=c,i=c;t<=d;++t)m=e[t%a],m.skip||(p=h(m[s]),p!==x&&(b=l(p,n,o),null===_&&y()&&(_=0===r(p,n)?t:i),null!==_&&v()&&(g.push(Ei({start:_,end:t,loop:u,count:a,style:f})),_=null),i=t,x=p));return null!==_&&g.push(Ei({start:_,end:d,loop:u,count:a,style:f})),g}function Ii(t,e){const i=[],s=t.segments;for(let n=0;nn&&t[o%e].skip;)o--;return o%=e,{start:n,end:o}}(i,n,o,s);if(!0===s)return Fi(t,[{start:a,end:r,loop:o}],i,e);return Fi(t,function(t,e,i,s){const n=t.length,o=[];let a,r=e,l=t[e];for(a=e+1;a<=i;++a){const i=t[a%n];i.skip||i.stop?l.skip||(s=!1,o.push({start:e%n,end:(a-1)%n,loop:s}),e=r=i.stop?a:null):(r=a,l.skip&&(e=a)),l=i}return null!==r&&o.push({start:e%n,end:r%n,loop:s}),o}(i,a,r{t[a]&&t[a](e[i],n)&&(o.push({element:t,datasetIndex:s,index:l}),r=r||t.inRange(e.x,e.y,n))})),s&&!r?[]:o}var Xi={evaluateInteractionItems:Hi,modes:{index(t,e,i,s){const n=ve(e,t),o=i.axis||"x",a=i.includeInvisible||!1,r=i.intersect?ji(t,n,o,s,a):Yi(t,n,o,!1,s,a),l=[];return r.length?(t.getSortedVisibleDatasetMetas().forEach((t=>{const e=r[0].index,i=t.data[e];i&&!i.skip&&l.push({element:i,datasetIndex:t.index,index:e})})),l):[]},dataset(t,e,i,s){const n=ve(e,t),o=i.axis||"xy",a=i.includeInvisible||!1;let r=i.intersect?ji(t,n,o,s,a):Yi(t,n,o,!1,s,a);if(r.length>0){const e=r[0].datasetIndex,i=t.getDatasetMeta(e).data;r=[];for(let t=0;tji(t,ve(e,t),i.axis||"xy",s,i.includeInvisible||!1),nearest(t,e,i,s){const n=ve(e,t),o=i.axis||"xy",a=i.includeInvisible||!1;return Yi(t,n,o,i.intersect,s,a)},x:(t,e,i,s)=>Ui(t,ve(e,t),"x",i.intersect,s),y:(t,e,i,s)=>Ui(t,ve(e,t),"y",i.intersect,s)}};const qi=["left","top","right","bottom"];function Ki(t,e){return t.filter((t=>t.pos===e))}function Gi(t,e){return t.filter((t=>-1===qi.indexOf(t.pos)&&t.box.axis===e))}function Zi(t,e){return t.sort(((t,i)=>{const s=e?i:t,n=e?t:i;return s.weight===n.weight?s.index-n.index:s.weight-n.weight}))}function Ji(t,e){const i=function(t){const e={};for(const i of t){const{stack:t,pos:s,stackWeight:n}=i;if(!t||!qi.includes(s))continue;const o=e[t]||(e[t]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=n}return e}(t),{vBoxMaxWidth:s,hBoxMaxHeight:n}=e;let o,a,r;for(o=0,a=t.length;o{s[t]=Math.max(e[t],i[t])})),s}return s(t?["left","right"]:["top","bottom"])}function ss(t,e,i,s){const n=[];let o,a,r,l,h,c;for(o=0,a=t.length,h=0;ot.box.fullSize)),!0),s=Zi(Ki(e,"left"),!0),n=Zi(Ki(e,"right")),o=Zi(Ki(e,"top"),!0),a=Zi(Ki(e,"bottom")),r=Gi(e,"x"),l=Gi(e,"y");return{fullSize:i,leftAndTop:s.concat(o),rightAndBottom:n.concat(l).concat(a).concat(r),chartArea:Ki(e,"chartArea"),vertical:s.concat(n).concat(l),horizontal:o.concat(a).concat(r)}}(t.boxes),l=r.vertical,h=r.horizontal;u(t.boxes,(t=>{"function"==typeof t.beforeLayout&&t.beforeLayout()}));const c=l.reduce(((t,e)=>e.box.options&&!1===e.box.options.display?t:t+1),0)||1,d=Object.freeze({outerWidth:e,outerHeight:i,padding:n,availableWidth:o,availableHeight:a,vBoxMaxWidth:o/2/c,hBoxMaxHeight:a/2}),f=Object.assign({},n);ts(f,ki(s));const g=Object.assign({maxPadding:f,w:o,h:a,x:n.left,y:n.top},n),p=Ji(l.concat(h),d);ss(r.fullSize,g,d,p),ss(l,g,d,p),ss(h,g,d,p)&&ss(l,g,d,p),function(t){const e=t.maxPadding;function i(i){const s=Math.max(e[i]-t[i],0);return t[i]+=s,s}t.y+=i("top"),t.x+=i("left"),i("right"),i("bottom")}(g),os(r.leftAndTop,g,d,p),g.x+=g.w,g.y+=g.h,os(r.rightAndBottom,g,d,p),t.chartArea={left:g.left,top:g.top,right:g.left+g.w,bottom:g.top+g.h,height:g.h,width:g.w},u(r.chartArea,(e=>{const i=e.box;Object.assign(i,t.chartArea),i.update(g.w,g.h,{left:0,top:0,right:0,bottom:0})}))}};class rs{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,i){}removeEventListener(t,e,i){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,i,s){return e=Math.max(0,e||t.width),i=i||t.height,{width:e,height:Math.max(0,s?Math.floor(e/s):i)}}isAttached(t){return!0}updateConfig(t){}}class ls extends rs{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const hs="$chartjs",cs={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},ds=t=>null===t||""===t;const us=!!Se&&{passive:!0};function fs(t,e,i){t&&t.canvas&&t.canvas.removeEventListener(e,i,us)}function gs(t,e){for(const i of t)if(i===e||i.contains(e))return!0}function ps(t,e,i){const s=t.canvas,n=new MutationObserver((t=>{let e=!1;for(const i of t)e=e||gs(i.addedNodes,s),e=e&&!gs(i.removedNodes,s);e&&i()}));return n.observe(document,{childList:!0,subtree:!0}),n}function ms(t,e,i){const s=t.canvas,n=new MutationObserver((t=>{let e=!1;for(const i of t)e=e||gs(i.removedNodes,s),e=e&&!gs(i.addedNodes,s);e&&i()}));return n.observe(document,{childList:!0,subtree:!0}),n}const xs=new Map;let bs=0;function _s(){const t=window.devicePixelRatio;t!==bs&&(bs=t,xs.forEach(((e,i)=>{i.currentDevicePixelRatio!==t&&e()})))}function ys(t,e,i){const s=t.canvas,n=s&&ge(s);if(!n)return;const o=ct(((t,e)=>{const s=n.clientWidth;i(t,e),s{const e=t[0],i=e.contentRect.width,s=e.contentRect.height;0===i&&0===s||o(i,s)}));return a.observe(n),function(t,e){xs.size||window.addEventListener("resize",_s),xs.set(t,e)}(t,o),a}function vs(t,e,i){i&&i.disconnect(),"resize"===e&&function(t){xs.delete(t),xs.size||window.removeEventListener("resize",_s)}(t)}function Ms(t,e,i){const s=t.canvas,n=ct((e=>{null!==t.ctx&&i(function(t,e){const i=cs[t.type]||t.type,{x:s,y:n}=ve(t,e);return{type:i,chart:e,native:t,x:void 0!==s?s:null,y:void 0!==n?n:null}}(e,t))}),t);return function(t,e,i){t&&t.addEventListener(e,i,us)}(s,e,n),n}class ws extends rs{acquireContext(t,e){const i=t&&t.getContext&&t.getContext("2d");return i&&i.canvas===t?(function(t,e){const i=t.style,s=t.getAttribute("height"),n=t.getAttribute("width");if(t[hs]={initial:{height:s,width:n,style:{display:i.display,height:i.height,width:i.width}}},i.display=i.display||"block",i.boxSizing=i.boxSizing||"border-box",ds(n)){const e=Pe(t,"width");void 0!==e&&(t.width=e)}if(ds(s))if(""===t.style.height)t.height=t.width/(e||2);else{const e=Pe(t,"height");void 0!==e&&(t.height=e)}}(t,e),i):null}releaseContext(t){const e=t.canvas;if(!e[hs])return!1;const i=e[hs].initial;["height","width"].forEach((t=>{const n=i[t];s(n)?e.removeAttribute(t):e.setAttribute(t,n)}));const n=i.style||{};return Object.keys(n).forEach((t=>{e.style[t]=n[t]})),e.width=e.width,delete e[hs],!0}addEventListener(t,e,i){this.removeEventListener(t,e);const s=t.$proxies||(t.$proxies={}),n={attach:ps,detach:ms,resize:ys}[e]||Ms;s[e]=n(t,e,i)}removeEventListener(t,e){const i=t.$proxies||(t.$proxies={}),s=i[e];if(!s)return;({attach:vs,detach:vs,resize:vs}[e]||fs)(t,e,s),i[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,i,s){return we(t,e,i,s)}isAttached(t){const e=t&&ge(t);return!(!e||!e.isConnected)}}function ks(t){return!fe()||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas?ls:ws}var Ss=Object.freeze({__proto__:null,BasePlatform:rs,BasicPlatform:ls,DomPlatform:ws,_detectPlatform:ks});const Ps="transparent",Ds={boolean:(t,e,i)=>i>.5?e:t,color(t,e,i){const s=Qt(t||Ps),n=s.valid&&Qt(e||Ps);return n&&n.valid?n.mix(s,i).hexString():e},number:(t,e,i)=>t+(e-t)*i};class Cs{constructor(t,e,i,s){const n=e[i];s=Pi([t.to,s,n,t.from]);const o=Pi([t.from,n,s]);this._active=!0,this._fn=t.fn||Ds[t.type||typeof o],this._easing=fi[t.easing]||fi.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=i,this._from=o,this._to=s,this._promises=void 0}active(){return this._active}update(t,e,i){if(this._active){this._notify(!1);const s=this._target[this._prop],n=i-this._start,o=this._duration-n;this._start=i,this._duration=Math.floor(Math.max(o,t.duration)),this._total+=n,this._loop=!!t.loop,this._to=Pi([t.to,e,s,t.from]),this._from=Pi([t.from,s,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,i=this._duration,s=this._prop,n=this._from,o=this._loop,a=this._to;let r;if(this._active=n!==a&&(o||e1?2-r:r,r=this._easing(Math.min(1,Math.max(0,r))),this._target[s]=this._fn(n,a,r))}wait(){const t=this._promises||(this._promises=[]);return new Promise(((e,i)=>{t.push({res:e,rej:i})}))}_notify(t){const e=t?"res":"rej",i=this._promises||[];for(let t=0;t{const a=t[s];if(!o(a))return;const r={};for(const t of e)r[t]=a[t];(n(a.properties)&&a.properties||[s]).forEach((t=>{t!==s&&i.has(t)||i.set(t,r)}))}))}_animateOptions(t,e){const i=e.options,s=function(t,e){if(!e)return;let i=t.options;if(!i)return void(t.options=e);i.$shared&&(t.options=i=Object.assign({},i,{$shared:!1,$animations:{}}));return i}(t,i);if(!s)return[];const n=this._createAnimations(s,i);return i.$shared&&function(t,e){const i=[],s=Object.keys(e);for(let e=0;e{t.options=i}),(()=>{})),n}_createAnimations(t,e){const i=this._properties,s=[],n=t.$animations||(t.$animations={}),o=Object.keys(e),a=Date.now();let r;for(r=o.length-1;r>=0;--r){const l=o[r];if("$"===l.charAt(0))continue;if("options"===l){s.push(...this._animateOptions(t,e));continue}const h=e[l];let c=n[l];const d=i.get(l);if(c){if(d&&c.active()){c.update(d,h,a);continue}c.cancel()}d&&d.duration?(n[l]=c=new Cs(d,t,l,h),s.push(c)):t[l]=h}return s}update(t,e){if(0===this._properties.size)return void Object.assign(t,e);const i=this._createAnimations(t,e);return i.length?(bt.add(this._chart,i),!0):void 0}}function As(t,e){const i=t&&t.options||{},s=i.reverse,n=void 0===i.min?e:0,o=void 0===i.max?e:0;return{start:s?o:n,end:s?n:o}}function Ts(t,e){const i=[],s=t._getSortedDatasetMetas(e);let n,o;for(n=0,o=s.length;n0||!i&&e<0)return n.index}return null}function zs(t,e){const{chart:i,_cachedMeta:s}=t,n=i._stacks||(i._stacks={}),{iScale:o,vScale:a,index:r}=s,l=o.axis,h=a.axis,c=function(t,e,i){return`${t.id}.${e.id}.${i.stack||i.type}`}(o,a,s),d=e.length;let u;for(let t=0;ti[t].axis===e)).shift()}function Vs(t,e){const i=t.controller.index,s=t.vScale&&t.vScale.axis;if(s){e=e||t._parsed;for(const t of e){const e=t._stacks;if(!e||void 0===e[s]||void 0===e[s][i])return;delete e[s][i],void 0!==e[s]._visualValues&&void 0!==e[s]._visualValues[i]&&delete e[s]._visualValues[i]}}}const Bs=t=>"reset"===t||"none"===t,Ws=(t,e)=>e?t:Object.assign({},t);class Ns{static defaults={};static datasetElementType=null;static dataElementType=null;constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=Es(t.vScale,t),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(t){this.index!==t&&Vs(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,i=this.getDataset(),s=(t,e,i,s)=>"x"===t?e:"r"===t?s:i,n=e.xAxisID=l(i.xAxisID,Fs(t,"x")),o=e.yAxisID=l(i.yAxisID,Fs(t,"y")),a=e.rAxisID=l(i.rAxisID,Fs(t,"r")),r=e.indexAxis,h=e.iAxisID=s(r,n,o,a),c=e.vAxisID=s(r,o,n,a);e.xScale=this.getScaleForId(n),e.yScale=this.getScaleForId(o),e.rScale=this.getScaleForId(a),e.iScale=this.getScaleForId(h),e.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&rt(this._data,this),t._stacked&&Vs(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),i=this._data;if(o(e)){const t=this._cachedMeta;this._data=function(t,e){const{iScale:i,vScale:s}=e,n="x"===i.axis?"x":"y",o="x"===s.axis?"x":"y",a=Object.keys(t),r=new Array(a.length);let l,h,c;for(l=0,h=a.length;l0&&i._parsed[t-1];if(!1===this._parsing)i._parsed=s,i._sorted=!0,d=s;else{d=n(s[t])?this.parseArrayData(i,s,t,e):o(s[t])?this.parseObjectData(i,s,t,e):this.parsePrimitiveData(i,s,t,e);const a=()=>null===c[l]||f&&c[l]t&&!e.hidden&&e._stacked&&{keys:Ts(i,!0),values:null})(e,i,this.chart),h={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:d}=function(t){const{min:e,max:i,minDefined:s,maxDefined:n}=t.getUserBounds();return{min:s?e:Number.NEGATIVE_INFINITY,max:n?i:Number.POSITIVE_INFINITY}}(r);let u,f;function g(){f=s[u];const e=f[r.axis];return!a(f[t.axis])||c>e||d=0;--u)if(!g()){this.updateRangeFromParsed(h,t,f,l);break}return h}getAllParsedValues(t){const e=this._cachedMeta._parsed,i=[];let s,n,o;for(s=0,n=e.length;s=0&&tthis.getContext(i,s,e)),c);return f.$shared&&(f.$shared=r,n[o]=Object.freeze(Ws(f,r))),f}_resolveAnimations(t,e,i){const s=this.chart,n=this._cachedDataOpts,o=`animation-${e}`,a=n[o];if(a)return a;let r;if(!1!==s.options.animation){const s=this.chart.config,n=s.datasetAnimationScopeKeys(this._type,e),o=s.getOptionScopes(this.getDataset(),n);r=s.createResolver(o,this.getContext(t,i,e))}const l=new Os(s,r&&r.animations);return r&&r._cacheable&&(n[o]=Object.freeze(l)),l}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||Bs(t)||this.chart._animationsDisabled}_getSharedOptions(t,e){const i=this.resolveDataElementOptions(t,e),s=this._sharedOptions,n=this.getSharedOptions(i),o=this.includeOptions(e,n)||n!==s;return this.updateSharedOptions(n,e,i),{sharedOptions:n,includeOptions:o}}updateElement(t,e,i,s){Bs(s)?Object.assign(t,i):this._resolveAnimations(e,s).update(t,i)}updateSharedOptions(t,e,i){t&&!Bs(e)&&this._resolveAnimations(void 0,e).update(t,i)}_setStyle(t,e,i,s){t.active=s;const n=this.getStyle(e,s);this._resolveAnimations(e,i,s).update(t,{options:!s&&this.getSharedOptions(n)||n})}removeHoverStyle(t,e,i){this._setStyle(t,i,"active",!1)}setHoverStyle(t,e,i){this._setStyle(t,i,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,i=this._cachedMeta.data;for(const[t,e,i]of this._syncList)this[t](e,i);this._syncList=[];const s=i.length,n=e.length,o=Math.min(n,s);o&&this.parse(0,o),n>s?this._insertElements(s,n-s,t):n{for(t.length+=e,a=t.length-1;a>=o;a--)t[a]=t[a-e]};for(r(n),a=t;a{s[t]=i[t]&&i[t].active()?i[t]._to:this[t]})),s}}function js(t,e){const i=t.options.ticks,n=function(t){const e=t.options.offset,i=t._tickSize(),s=t._length/i+(e?0:1),n=t._maxLength/i;return Math.floor(Math.min(s,n))}(t),o=Math.min(i.maxTicksLimit||n,n),a=i.major.enabled?function(t){const e=[];let i,s;for(i=0,s=t.length;io)return function(t,e,i,s){let n,o=0,a=i[0];for(s=Math.ceil(s),n=0;nn)return e}return Math.max(n,1)}(a,e,o);if(r>0){let t,i;const n=r>1?Math.round((h-l)/(r-1)):null;for($s(e,c,d,s(n)?0:l-n,l),t=0,i=r-1;t"top"===e||"left"===e?t[e]+i:t[e]-i,Us=(t,e)=>Math.min(e||t,t);function Xs(t,e){const i=[],s=t.length/e,n=t.length;let o=0;for(;oa+r)))return h}function Ks(t){return t.drawTicks?t.tickLength:0}function Gs(t,e){if(!t.display)return 0;const i=Si(t.font,e),s=ki(t.padding);return(n(t.text)?t.text.length:1)*i.lineHeight+s.height}function Zs(t,e,i){let s=ut(t);return(i&&"right"!==e||!i&&"right"===e)&&(s=(t=>"left"===t?"right":"right"===t?"left":t)(s)),s}class Js extends Hs{constructor(t){super(),this.id=t.id,this.type=t.type,this.options=void 0,this.ctx=t.ctx,this.chart=t.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(t){this.options=t.setContext(this.getContext()),this.axis=t.axis,this._userMin=this.parse(t.min),this._userMax=this.parse(t.max),this._suggestedMin=this.parse(t.suggestedMin),this._suggestedMax=this.parse(t.suggestedMax)}parse(t,e){return t}getUserBounds(){let{_userMin:t,_userMax:e,_suggestedMin:i,_suggestedMax:s}=this;return t=r(t,Number.POSITIVE_INFINITY),e=r(e,Number.NEGATIVE_INFINITY),i=r(i,Number.POSITIVE_INFINITY),s=r(s,Number.NEGATIVE_INFINITY),{min:r(t,i),max:r(e,s),minDefined:a(t),maxDefined:a(e)}}getMinMax(t){let e,{min:i,max:s,minDefined:n,maxDefined:o}=this.getUserBounds();if(n&&o)return{min:i,max:s};const a=this.getMatchingVisibleMetas();for(let r=0,l=a.length;rs?s:i,s=n&&i>s?i:s,{min:r(i,r(s,i)),max:r(s,r(i,s))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){d(this.options.beforeUpdate,[this])}update(t,e,i){const{beginAtZero:s,grace:n,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=i=Object.assign({left:0,right:0,top:0,bottom:0},i),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+i.left+i.right:this.height+i.top+i.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=Di(this,n,s),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const r=a=n||i<=1||!this.isHorizontal())return void(this.labelRotation=s);const h=this._getLabelSizes(),c=h.widest.width,d=h.highest.height,u=J(this.chart.width-c,0,this.maxWidth);o=t.offset?this.maxWidth/i:u/(i-1),c+6>o&&(o=u/(i-(t.offset?.5:1)),a=this.maxHeight-Ks(t.grid)-e.padding-Gs(t.title,this.chart.options.font),r=Math.sqrt(c*c+d*d),l=Y(Math.min(Math.asin(J((h.highest.height+6)/o,-1,1)),Math.asin(J(a/r,-1,1))-Math.asin(J(d/r,-1,1)))),l=Math.max(s,Math.min(n,l))),this.labelRotation=l}afterCalculateLabelRotation(){d(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){d(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:i,title:s,grid:n}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const o=Gs(s,e.options.font);if(a?(t.width=this.maxWidth,t.height=Ks(n)+o):(t.height=this.maxHeight,t.width=Ks(n)+o),i.display&&this.ticks.length){const{first:e,last:s,widest:n,highest:o}=this._getLabelSizes(),r=2*i.padding,l=$(this.labelRotation),h=Math.cos(l),c=Math.sin(l);if(a){const e=i.mirror?0:c*n.width+h*o.height;t.height=Math.min(this.maxHeight,t.height+e+r)}else{const e=i.mirror?0:h*n.width+c*o.height;t.width=Math.min(this.maxWidth,t.width+e+r)}this._calculatePadding(e,s,c,h)}}this._handleMargins(),a?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,i,s){const{ticks:{align:n,padding:o},position:a}=this.options,r=0!==this.labelRotation,l="top"!==a&&"x"===this.axis;if(this.isHorizontal()){const a=this.getPixelForTick(0)-this.left,h=this.right-this.getPixelForTick(this.ticks.length-1);let c=0,d=0;r?l?(c=s*t.width,d=i*e.height):(c=i*t.height,d=s*e.width):"start"===n?d=e.width:"end"===n?c=t.width:"inner"!==n&&(c=t.width/2,d=e.width/2),this.paddingLeft=Math.max((c-a+o)*this.width/(this.width-a),0),this.paddingRight=Math.max((d-h+o)*this.width/(this.width-h),0)}else{let i=e.height/2,s=t.height/2;"start"===n?(i=0,s=t.height):"end"===n&&(i=e.height,s=0),this.paddingTop=i+o,this.paddingBottom=s+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){d(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return"top"===e||"bottom"===e||"x"===t}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){let e,i;for(this.beforeTickToLabelConversion(),this.generateTickLabels(t),e=0,i=t.length;e{const i=t.gc,s=i.length/2;let n;if(s>e){for(n=0;n({width:r[t]||0,height:l[t]||0});return{first:P(0),last:P(e-1),widest:P(k),highest:P(S),widths:r,heights:l}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return Q(this._alignToPixels?Ae(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&ta*s?a/i:r/s:r*s0}_computeGridLineItems(t){const e=this.axis,i=this.chart,s=this.options,{grid:n,position:a,border:r}=s,h=n.offset,c=this.isHorizontal(),d=this.ticks.length+(h?1:0),u=Ks(n),f=[],g=r.setContext(this.getContext()),p=g.display?g.width:0,m=p/2,x=function(t){return Ae(i,t,p)};let b,_,y,v,M,w,k,S,P,D,C,O;if("top"===a)b=x(this.bottom),w=this.bottom-u,S=b-m,D=x(t.top)+m,O=t.bottom;else if("bottom"===a)b=x(this.top),D=t.top,O=x(t.bottom)-m,w=b+m,S=this.top+u;else if("left"===a)b=x(this.right),M=this.right-u,k=b-m,P=x(t.left)+m,C=t.right;else if("right"===a)b=x(this.left),P=t.left,C=x(t.right)-m,M=b+m,k=this.left+u;else if("x"===e){if("center"===a)b=x((t.top+t.bottom)/2+.5);else if(o(a)){const t=Object.keys(a)[0],e=a[t];b=x(this.chart.scales[t].getPixelForValue(e))}D=t.top,O=t.bottom,w=b+m,S=w+u}else if("y"===e){if("center"===a)b=x((t.left+t.right)/2);else if(o(a)){const t=Object.keys(a)[0],e=a[t];b=x(this.chart.scales[t].getPixelForValue(e))}M=b-m,k=M-u,P=t.left,C=t.right}const A=l(s.ticks.maxTicksLimit,d),T=Math.max(1,Math.ceil(d/A));for(_=0;_0&&(o-=s/2)}d={left:o,top:n,width:s+e.width,height:i+e.height,color:t.backdropColor}}x.push({label:v,font:P,textOffset:O,options:{rotation:m,color:i,strokeColor:o,strokeWidth:h,textAlign:f,textBaseline:A,translation:[M,w],backdrop:d}})}return x}_getXAxisLabelAlignment(){const{position:t,ticks:e}=this.options;if(-$(this.labelRotation))return"top"===t?"left":"right";let i="center";return"start"===e.align?i="left":"end"===e.align?i="right":"inner"===e.align&&(i="inner"),i}_getYAxisLabelAlignment(t){const{position:e,ticks:{crossAlign:i,mirror:s,padding:n}}=this.options,o=t+n,a=this._getLabelSizes().widest.width;let r,l;return"left"===e?s?(l=this.right+n,"near"===i?r="left":"center"===i?(r="center",l+=a/2):(r="right",l+=a)):(l=this.right-o,"near"===i?r="right":"center"===i?(r="center",l-=a/2):(r="left",l=this.left)):"right"===e?s?(l=this.left+n,"near"===i?r="right":"center"===i?(r="center",l-=a/2):(r="left",l-=a)):(l=this.left+o,"near"===i?r="left":"center"===i?(r="center",l+=a/2):(r="right",l=this.right)):r="right",{textAlign:r,x:l}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,e=this.options.position;return"left"===e||"right"===e?{top:0,left:this.left,bottom:t.height,right:this.right}:"top"===e||"bottom"===e?{top:this.top,left:0,bottom:this.bottom,right:t.width}:void 0}drawBackground(){const{ctx:t,options:{backgroundColor:e},left:i,top:s,width:n,height:o}=this;e&&(t.save(),t.fillStyle=e,t.fillRect(i,s,n,o),t.restore())}getLineWidthForValue(t){const e=this.options.grid;if(!this._isVisible()||!e.display)return 0;const i=this.ticks.findIndex((e=>e.value===t));if(i>=0){return e.setContext(this.getContext(i)).lineWidth}return 0}drawGrid(t){const e=this.options.grid,i=this.ctx,s=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let n,o;const a=(t,e,s)=>{s.width&&s.color&&(i.save(),i.lineWidth=s.width,i.strokeStyle=s.color,i.setLineDash(s.borderDash||[]),i.lineDashOffset=s.borderDashOffset,i.beginPath(),i.moveTo(t.x,t.y),i.lineTo(e.x,e.y),i.stroke(),i.restore())};if(e.display)for(n=0,o=s.length;n{this.drawBackground(),this.drawGrid(t),this.drawTitle()}},{z:s,draw:()=>{this.drawBorder()}},{z:e,draw:t=>{this.drawLabels(t)}}]:[{z:e,draw:t=>{this.draw(t)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),i=this.axis+"AxisID",s=[];let n,o;for(n=0,o=e.length;n{const s=i.split("."),n=s.pop(),o=[t].concat(s).join("."),a=e[i].split("."),r=a.pop(),l=a.join(".");ue.route(o,n,l,r)}))}(e,t.defaultRoutes);t.descriptors&&ue.describe(e,t.descriptors)}(t,o,i),this.override&&ue.override(t.id,t.overrides)),o}get(t){return this.items[t]}unregister(t){const e=this.items,i=t.id,s=this.scope;i in e&&delete e[i],s&&i in ue[s]&&(delete ue[s][i],this.override&&delete re[i])}}class tn{constructor(){this.controllers=new Qs(Ns,"datasets",!0),this.elements=new Qs(Hs,"elements"),this.plugins=new Qs(Object,"plugins"),this.scales=new Qs(Js,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,i){[...e].forEach((e=>{const s=i||this._getRegistryForType(e);i||s.isForType(e)||s===this.plugins&&e.id?this._exec(t,s,e):u(e,(e=>{const s=i||this._getRegistryForType(e);this._exec(t,s,e)}))}))}_exec(t,e,i){const s=w(t);d(i["before"+s],[],i),e[t](i),d(i["after"+s],[],i)}_getRegistryForType(t){for(let e=0;et.filter((t=>!e.some((e=>t.plugin.id===e.plugin.id))));this._notify(s(e,i),t,"stop"),this._notify(s(i,e),t,"start")}}function nn(t,e){return e||!1!==t?!0===t?{}:t:null}function on(t,{plugin:e,local:i},s,n){const o=t.pluginScopeKeys(e),a=t.getOptionScopes(s,o);return i&&e.defaults&&a.push(e.defaults),t.createResolver(a,n,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function an(t,e){const i=ue.datasets[t]||{};return((e.datasets||{})[t]||{}).indexAxis||e.indexAxis||i.indexAxis||"x"}function rn(t){if("x"===t||"y"===t||"r"===t)return t}function ln(t,...e){if(rn(t))return t;for(const s of e){const e=s.axis||("top"===(i=s.position)||"bottom"===i?"x":"left"===i||"right"===i?"y":void 0)||t.length>1&&rn(t[0].toLowerCase());if(e)return e}var i;throw new Error(`Cannot determine type of '${t}' axis. Please provide 'axis' or 'position' option.`)}function hn(t,e,i){if(i[e+"AxisID"]===t)return{axis:e}}function cn(t,e){const i=re[t.type]||{scales:{}},s=e.scales||{},n=an(t.type,e),a=Object.create(null);return Object.keys(s).forEach((e=>{const r=s[e];if(!o(r))return console.error(`Invalid scale configuration for scale: ${e}`);if(r._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${e}`);const l=ln(e,r,function(t,e){if(e.data&&e.data.datasets){const i=e.data.datasets.filter((e=>e.xAxisID===t||e.yAxisID===t));if(i.length)return hn(t,"x",i[0])||hn(t,"y",i[0])}return{}}(e,t),ue.scales[r.type]),h=function(t,e){return t===e?"_index_":"_value_"}(l,n),c=i.scales||{};a[e]=b(Object.create(null),[{axis:l},r,c[l],c[h]])})),t.data.datasets.forEach((i=>{const n=i.type||t.type,o=i.indexAxis||an(n,e),r=(re[n]||{}).scales||{};Object.keys(r).forEach((t=>{const e=function(t,e){let i=t;return"_index_"===t?i=e:"_value_"===t&&(i="x"===e?"y":"x"),i}(t,o),n=i[e+"AxisID"]||e;a[n]=a[n]||Object.create(null),b(a[n],[{axis:e},s[n],r[t]])}))})),Object.keys(a).forEach((t=>{const e=a[t];b(e,[ue.scales[e.type],ue.scale])})),a}function dn(t){const e=t.options||(t.options={});e.plugins=l(e.plugins,{}),e.scales=cn(t,e)}function un(t){return(t=t||{}).datasets=t.datasets||[],t.labels=t.labels||[],t}const fn=new Map,gn=new Set;function pn(t,e){let i=fn.get(t);return i||(i=e(),fn.set(t,i),gn.add(i)),i}const mn=(t,e,i)=>{const s=M(e,i);void 0!==s&&t.add(s)};class xn{constructor(t){this._config=function(t){return(t=t||{}).data=un(t.data),dn(t),t}(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=un(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),dn(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return pn(t,(()=>[[`datasets.${t}`,""]]))}datasetAnimationScopeKeys(t,e){return pn(`${t}.transition.${e}`,(()=>[[`datasets.${t}.transitions.${e}`,`transitions.${e}`],[`datasets.${t}`,""]]))}datasetElementScopeKeys(t,e){return pn(`${t}-${e}`,(()=>[[`datasets.${t}.elements.${e}`,`datasets.${t}`,`elements.${e}`,""]]))}pluginScopeKeys(t){const e=t.id;return pn(`${this.type}-plugin-${e}`,(()=>[[`plugins.${e}`,...t.additionalOptionScopes||[]]]))}_cachedScopes(t,e){const i=this._scopeCache;let s=i.get(t);return s&&!e||(s=new Map,i.set(t,s)),s}getOptionScopes(t,e,i){const{options:s,type:n}=this,o=this._cachedScopes(t,i),a=o.get(e);if(a)return a;const r=new Set;e.forEach((e=>{t&&(r.add(t),e.forEach((e=>mn(r,t,e)))),e.forEach((t=>mn(r,s,t))),e.forEach((t=>mn(r,re[n]||{},t))),e.forEach((t=>mn(r,ue,t))),e.forEach((t=>mn(r,le,t)))}));const l=Array.from(r);return 0===l.length&&l.push(Object.create(null)),gn.has(e)&&o.set(e,l),l}chartOptionScopes(){const{options:t,type:e}=this;return[t,re[e]||{},ue.datasets[e]||{},{type:e},ue,le]}resolveNamedOptions(t,e,i,s=[""]){const o={$shared:!0},{resolver:a,subPrefixes:r}=bn(this._resolverCache,t,s);let l=a;if(function(t,e){const{isScriptable:i,isIndexable:s}=Ye(t);for(const o of e){const e=i(o),a=s(o),r=(a||e)&&t[o];if(e&&(S(r)||_n(r))||a&&n(r))return!0}return!1}(a,e)){o.$shared=!1;l=$e(a,i=S(i)?i():i,this.createResolver(t,i,r))}for(const t of e)o[t]=l[t];return o}createResolver(t,e,i=[""],s){const{resolver:n}=bn(this._resolverCache,t,i);return o(e)?$e(n,e,void 0,s):n}}function bn(t,e,i){let s=t.get(e);s||(s=new Map,t.set(e,s));const n=i.join();let o=s.get(n);if(!o){o={resolver:je(e,i),subPrefixes:i.filter((t=>!t.toLowerCase().includes("hover")))},s.set(n,o)}return o}const _n=t=>o(t)&&Object.getOwnPropertyNames(t).some((e=>S(t[e])));const yn=["top","bottom","left","right","chartArea"];function vn(t,e){return"top"===t||"bottom"===t||-1===yn.indexOf(t)&&"x"===e}function Mn(t,e){return function(i,s){return i[t]===s[t]?i[e]-s[e]:i[t]-s[t]}}function wn(t){const e=t.chart,i=e.options.animation;e.notifyPlugins("afterRender"),d(i&&i.onComplete,[t],e)}function kn(t){const e=t.chart,i=e.options.animation;d(i&&i.onProgress,[t],e)}function Sn(t){return fe()&&"string"==typeof t?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const Pn={},Dn=t=>{const e=Sn(t);return Object.values(Pn).filter((t=>t.canvas===e)).pop()};function Cn(t,e,i){const s=Object.keys(t);for(const n of s){const s=+n;if(s>=e){const o=t[n];delete t[n],(i>0||s>e)&&(t[s+i]=o)}}}function On(t,e,i){return t.options.clip?t[i]:e[i]}class An{static defaults=ue;static instances=Pn;static overrides=re;static registry=en;static version="4.4.4";static getChart=Dn;static register(...t){en.add(...t),Tn()}static unregister(...t){en.remove(...t),Tn()}constructor(t,e){const s=this.config=new xn(e),n=Sn(t),o=Dn(n);if(o)throw new Error("Canvas is already in use. Chart with ID '"+o.id+"' must be destroyed before the canvas with ID '"+o.canvas.id+"' can be reused.");const a=s.createResolver(s.chartOptionScopes(),this.getContext());this.platform=new(s.platform||ks(n)),this.platform.updateConfig(s);const r=this.platform.acquireContext(n,a.aspectRatio),l=r&&r.canvas,h=l&&l.height,c=l&&l.width;this.id=i(),this.ctx=r,this.canvas=l,this.width=c,this.height=h,this._options=a,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new sn,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=dt((t=>this.update(t)),a.resizeDelay||0),this._dataChanges=[],Pn[this.id]=this,r&&l?(bt.listen(this,"complete",wn),bt.listen(this,"progress",kn),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:i,height:n,_aspectRatio:o}=this;return s(t)?e&&o?o:n?i/n:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return en}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():ke(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Te(this.canvas,this.ctx),this}stop(){return bt.stop(this),this}resize(t,e){bt.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const i=this.options,s=this.canvas,n=i.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(s,t,e,n),a=i.devicePixelRatio||this.platform.getDevicePixelRatio(),r=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,ke(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),d(i.onResize,[this,o],this),this.attached&&this._doResize(r)&&this.render())}ensureScalesHaveIDs(){u(this.options.scales||{},((t,e)=>{t.id=e}))}buildOrUpdateScales(){const t=this.options,e=t.scales,i=this.scales,s=Object.keys(i).reduce(((t,e)=>(t[e]=!1,t)),{});let n=[];e&&(n=n.concat(Object.keys(e).map((t=>{const i=e[t],s=ln(t,i),n="r"===s,o="x"===s;return{options:i,dposition:n?"chartArea":o?"bottom":"left",dtype:n?"radialLinear":o?"category":"linear"}})))),u(n,(e=>{const n=e.options,o=n.id,a=ln(o,n),r=l(n.type,e.dtype);void 0!==n.position&&vn(n.position,a)===vn(e.dposition)||(n.position=e.dposition),s[o]=!0;let h=null;if(o in i&&i[o].type===r)h=i[o];else{h=new(en.getScale(r))({id:o,type:r,ctx:this.ctx,chart:this}),i[h.id]=h}h.init(n,t)})),u(s,((t,e)=>{t||delete i[e]})),u(i,(t=>{as.configure(this,t,t.options),as.addBox(this,t)}))}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,i=t.length;if(t.sort(((t,e)=>t.index-e.index)),i>e){for(let t=e;te.length&&delete this._stacks,t.forEach(((t,i)=>{0===e.filter((e=>e===t._dataset)).length&&this._destroyDatasetMeta(i)}))}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let i,s;for(this._removeUnreferencedMetasets(),i=0,s=e.length;i{this.getDatasetMeta(e).controller.reset()}),this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const i=this._options=e.createResolver(e.chartOptionScopes(),this.getContext()),s=this._animationsDisabled=!i.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0}))return;const n=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let t=0,e=this.data.datasets.length;t{t.reset()})),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(Mn("z","_idx"));const{_active:a,_lastEvent:r}=this;r?this._eventHandler(r,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){u(this.scales,(t=>{as.removeBox(this,t)})),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,e=new Set(Object.keys(this._listeners)),i=new Set(t.events);P(e,i)&&!!this._responsiveListeners===t.responsive||(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,e=this._getUniformDataChanges()||[];for(const{method:i,start:s,count:n}of e){Cn(t,s,"_removeElements"===i?-n:n)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const e=this.data.datasets.length,i=e=>new Set(t.filter((t=>t[0]===e)).map(((t,e)=>e+","+t.splice(1).join(",")))),s=i(0);for(let t=1;tt.split(","))).map((t=>({method:t[1],start:+t[2],count:+t[3]})))}_updateLayout(t){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;as.update(this,this.width,this.height,t);const e=this.chartArea,i=e.width<=0||e.height<=0;this._layers=[],u(this.boxes,(t=>{i&&"chartArea"===t.position||(t.configure&&t.configure(),this._layers.push(...t._layers()))}),this),this._layers.forEach(((t,e)=>{t._idx=e})),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})){for(let t=0,e=this.data.datasets.length;t=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,i=t._clip,s=!i.disabled,n=function(t,e){const{xScale:i,yScale:s}=t;return i&&s?{left:On(i,e,"left"),right:On(i,e,"right"),top:On(s,e,"top"),bottom:On(s,e,"bottom")}:e}(t,this.chartArea),o={meta:t,index:t.index,cancelable:!0};!1!==this.notifyPlugins("beforeDatasetDraw",o)&&(s&&Ie(e,{left:!1===i.left?0:n.left-i.left,right:!1===i.right?this.width:n.right+i.right,top:!1===i.top?0:n.top-i.top,bottom:!1===i.bottom?this.height:n.bottom+i.bottom}),t.controller.draw(),s&&ze(e),o.cancelable=!1,this.notifyPlugins("afterDatasetDraw",o))}isPointInArea(t){return Re(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,e,i,s){const n=Xi.modes[e];return"function"==typeof n?n(this,t,i,s):[]}getDatasetMeta(t){const e=this.data.datasets[t],i=this._metasets;let s=i.filter((t=>t&&t._dataset===e)).pop();return s||(s={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},i.push(s)),s}getContext(){return this.$context||(this.$context=Ci(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const i=this.getDatasetMeta(t);return"boolean"==typeof i.hidden?!i.hidden:!e.hidden}setDatasetVisibility(t,e){this.getDatasetMeta(t).hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,i){const s=i?"show":"hide",n=this.getDatasetMeta(t),o=n.controller._resolveAnimations(void 0,s);k(e)?(n.data[e].hidden=!i,this.update()):(this.setDatasetVisibility(t,i),o.update(n,{visible:i}),this.update((e=>e.datasetIndex===t?s:void 0)))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),bt.remove(this),t=0,e=this.data.datasets.length;t{e.addEventListener(this,i,s),t[i]=s},s=(t,e,i)=>{t.offsetX=e,t.offsetY=i,this._eventHandler(t)};u(this.options.events,(t=>i(t,s)))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,i=(i,s)=>{e.addEventListener(this,i,s),t[i]=s},s=(i,s)=>{t[i]&&(e.removeEventListener(this,i,s),delete t[i])},n=(t,e)=>{this.canvas&&this.resize(t,e)};let o;const a=()=>{s("attach",a),this.attached=!0,this.resize(),i("resize",n),i("detach",o)};o=()=>{this.attached=!1,s("resize",n),this._stop(),this._resize(0,0),i("attach",a)},e.isAttached(this.canvas)?a():o()}unbindEvents(){u(this._listeners,((t,e)=>{this.platform.removeEventListener(this,e,t)})),this._listeners={},u(this._responsiveListeners,((t,e)=>{this.platform.removeEventListener(this,e,t)})),this._responsiveListeners=void 0}updateHoverStyle(t,e,i){const s=i?"set":"remove";let n,o,a,r;for("dataset"===e&&(n=this.getDatasetMeta(t[0].datasetIndex),n.controller["_"+s+"DatasetHoverStyle"]()),a=0,r=t.length;a{const i=this.getDatasetMeta(t);if(!i)throw new Error("No dataset found at index "+t);return{datasetIndex:t,element:i.data[e],index:e}}));!f(i,e)&&(this._active=i,this._lastEvent=null,this._updateHoverStyles(i,e))}notifyPlugins(t,e,i){return this._plugins.notify(this,t,e,i)}isPluginEnabled(t){return 1===this._plugins._cache.filter((e=>e.plugin.id===t)).length}_updateHoverStyles(t,e,i){const s=this.options.hover,n=(t,e)=>t.filter((t=>!e.some((e=>t.datasetIndex===e.datasetIndex&&t.index===e.index)))),o=n(e,t),a=i?t:n(t,e);o.length&&this.updateHoverStyle(o,s.mode,!1),a.length&&s.mode&&this.updateHoverStyle(a,s.mode,!0)}_eventHandler(t,e){const i={event:t,replay:e,cancelable:!0,inChartArea:this.isPointInArea(t)},s=e=>(e.options.events||this.options.events).includes(t.native.type);if(!1===this.notifyPlugins("beforeEvent",i,s))return;const n=this._handleEvent(t,e,i.inChartArea);return i.cancelable=!1,this.notifyPlugins("afterEvent",i,s),(n||i.changed)&&this.render(),this}_handleEvent(t,e,i){const{_active:s=[],options:n}=this,o=e,a=this._getActiveElements(t,s,i,o),r=D(t),l=function(t,e,i,s){return i&&"mouseout"!==t.type?s?e:t:null}(t,this._lastEvent,i,r);i&&(this._lastEvent=null,d(n.onHover,[t,a,this],this),r&&d(n.onClick,[t,a,this],this));const h=!f(a,s);return(h||e)&&(this._active=a,this._updateHoverStyles(a,s,e)),this._lastEvent=l,h}_getActiveElements(t,e,i,s){if("mouseout"===t.type)return[];if(!i)return e;const n=this.options.hover;return this.getElementsAtEventForMode(t,n.mode,n,s)}}function Tn(){return u(An.instances,(t=>t._plugins.invalidate()))}function Ln(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class En{static override(t){Object.assign(En.prototype,t)}options;constructor(t){this.options=t||{}}init(){}formats(){return Ln()}parse(){return Ln()}format(){return Ln()}add(){return Ln()}diff(){return Ln()}startOf(){return Ln()}endOf(){return Ln()}}var Rn={_date:En};function In(t){const e=t.iScale,i=function(t,e){if(!t._cache.$bar){const i=t.getMatchingVisibleMetas(e);let s=[];for(let e=0,n=i.length;et-e)))}return t._cache.$bar}(e,t.type);let s,n,o,a,r=e._length;const l=()=>{32767!==o&&-32768!==o&&(k(a)&&(r=Math.min(r,Math.abs(o-a)||r)),a=o)};for(s=0,n=i.length;sMath.abs(r)&&(l=r,h=a),e[i.axis]=h,e._custom={barStart:l,barEnd:h,start:n,end:o,min:a,max:r}}(t,e,i,s):e[i.axis]=i.parse(t,s),e}function Fn(t,e,i,s){const n=t.iScale,o=t.vScale,a=n.getLabels(),r=n===o,l=[];let h,c,d,u;for(h=i,c=i+s;ht.x,i="left",s="right"):(e=t.base"spacing"!==t,_indexable:t=>"spacing"!==t&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")};static overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:i,color:s}}=t.legend.options;return e.labels.map(((e,n)=>{const o=t.getDatasetMeta(0).controller.getStyle(n);return{text:e,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,fontColor:s,lineWidth:o.borderWidth,pointStyle:i,hidden:!t.getDataVisibility(n),index:n}}))}return[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}}};constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const i=this.getDataset().data,s=this._cachedMeta;if(!1===this._parsing)s._parsed=i;else{let n,a,r=t=>+i[t];if(o(i[t])){const{key:t="value"}=this._parsing;r=e=>+M(i[e],t)}for(n=t,a=t+e;nZ(t,r,l,!0)?1:Math.max(e,e*i,s,s*i),g=(t,e,s)=>Z(t,r,l,!0)?-1:Math.min(e,e*i,s,s*i),p=f(0,h,d),m=f(E,c,u),x=g(C,h,d),b=g(C+E,c,u);s=(p-x)/2,n=(m-b)/2,o=-(p+x)/2,a=-(m+b)/2}return{ratioX:s,ratioY:n,offsetX:o,offsetY:a}}(u,d,r),x=(i.width-o)/f,b=(i.height-o)/g,_=Math.max(Math.min(x,b)/2,0),y=c(this.options.radius,_),v=(y-Math.max(y*r,0))/this._getVisibleDatasetWeightTotal();this.offsetX=p*y,this.offsetY=m*y,s.total=this.calculateTotal(),this.outerRadius=y-v*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-v*l,0),this.updateElements(n,0,n.length,t)}_circumference(t,e){const i=this.options,s=this._cachedMeta,n=this._getCircumference();return e&&i.animation.animateRotate||!this.chart.getDataVisibility(t)||null===s._parsed[t]||s.data[t].hidden?0:this.calculateCircumference(s._parsed[t]*n/O)}updateElements(t,e,i,s){const n="reset"===s,o=this.chart,a=o.chartArea,r=o.options.animation,l=(a.left+a.right)/2,h=(a.top+a.bottom)/2,c=n&&r.animateScale,d=c?0:this.innerRadius,u=c?0:this.outerRadius,{sharedOptions:f,includeOptions:g}=this._getSharedOptions(e,s);let p,m=this._getRotation();for(p=0;p0&&!isNaN(t)?O*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,s=i.data.labels||[],n=ne(e._parsed[t],i.options.locale);return{label:s[t]||"",value:n}}getMaxBorderWidth(t){let e=0;const i=this.chart;let s,n,o,a,r;if(!t)for(s=0,n=i.data.datasets.length;s{const o=t.getDatasetMeta(0).controller.getStyle(n);return{text:e,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,fontColor:s,lineWidth:o.borderWidth,pointStyle:i,hidden:!t.getDataVisibility(n),index:n}}))}return[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};constructor(t,e){super(t,e),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,s=i.data.labels||[],n=ne(e._parsed[t].r,i.options.locale);return{label:s[t]||"",value:n}}parseObjectData(t,e,i,s){return ii.bind(this)(t,e,i,s)}update(t){const e=this._cachedMeta.data;this._updateRadius(),this.updateElements(e,0,e.length,t)}getMinMax(){const t=this._cachedMeta,e={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return t.data.forEach(((t,i)=>{const s=this.getParsed(i).r;!isNaN(s)&&this.chart.getDataVisibility(i)&&(se.max&&(e.max=s))})),e}_updateRadius(){const t=this.chart,e=t.chartArea,i=t.options,s=Math.min(e.right-e.left,e.bottom-e.top),n=Math.max(s/2,0),o=(n-Math.max(i.cutoutPercentage?n/100*i.cutoutPercentage:1,0))/t.getVisibleDatasetCount();this.outerRadius=n-o*this.index,this.innerRadius=this.outerRadius-o}updateElements(t,e,i,s){const n="reset"===s,o=this.chart,a=o.options.animation,r=this._cachedMeta.rScale,l=r.xCenter,h=r.yCenter,c=r.getIndexAngle(0)-.5*C;let d,u=c;const f=360/this.countVisibleElements();for(d=0;d{!isNaN(this.getParsed(i).r)&&this.chart.getDataVisibility(i)&&e++})),e}_computeAngle(t,e,i){return this.chart.getDataVisibility(t)?$(this.resolveDataElementOptions(t,e).angle||i):0}}var Yn=Object.freeze({__proto__:null,BarController:class extends Ns{static id="bar";static defaults={datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}};static overrides={scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}};parsePrimitiveData(t,e,i,s){return Fn(t,e,i,s)}parseArrayData(t,e,i,s){return Fn(t,e,i,s)}parseObjectData(t,e,i,s){const{iScale:n,vScale:o}=t,{xAxisKey:a="x",yAxisKey:r="y"}=this._parsing,l="x"===n.axis?a:r,h="x"===o.axis?a:r,c=[];let d,u,f,g;for(d=i,u=i+s;dt.controller.options.grouped)),o=i.options.stacked,a=[],r=this._cachedMeta.controller.getParsed(e),l=r&&r[i.axis],h=t=>{const e=t._parsed.find((t=>t[i.axis]===l)),n=e&&e[t.vScale.axis];if(s(n)||isNaN(n))return!0};for(const i of n)if((void 0===e||!h(i))&&((!1===o||-1===a.indexOf(i.stack)||void 0===o&&void 0===i.stack)&&a.push(i.stack),i.index===t))break;return a.length||a.push(void 0),a}_getStackCount(t){return this._getStacks(void 0,t).length}_getStackIndex(t,e,i){const s=this._getStacks(t,i),n=void 0!==e?s.indexOf(e):-1;return-1===n?s.length-1:n}_getRuler(){const t=this.options,e=this._cachedMeta,i=e.iScale,s=[];let n,o;for(n=0,o=e.data.length;n=i?1:-1)}(u,e,r)*a,f===r&&(x-=u/2);const t=e.getPixelForDecimal(0),s=e.getPixelForDecimal(1),o=Math.min(t,s),h=Math.max(t,s);x=Math.max(Math.min(x,h),o),d=x+u,i&&!c&&(l._stacks[e.axis]._visualValues[n]=e.getValueForPixel(d)-e.getValueForPixel(x))}if(x===e.getPixelForValue(r)){const t=F(u)*e.getLineWidthForValue(r)/2;x+=t,u-=t}return{size:u,base:x,head:d,center:d+u/2}}_calculateBarIndexPixels(t,e){const i=e.scale,n=this.options,o=n.skipNull,a=l(n.maxBarThickness,1/0);let r,h;if(e.grouped){const i=o?this._getStackCount(t):e.stackCount,l="flex"===n.barThickness?function(t,e,i,s){const n=e.pixels,o=n[t];let a=t>0?n[t-1]:null,r=t=0;--i)e=Math.max(e,t[i].size(this.resolveDataElementOptions(i))/2);return e>0&&e}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart.data.labels||[],{xScale:s,yScale:n}=e,o=this.getParsed(t),a=s.getLabelForValue(o.x),r=n.getLabelForValue(o.y),l=o._custom;return{label:i[t]||"",value:"("+a+", "+r+(l?", "+l:"")+")"}}update(t){const e=this._cachedMeta.data;this.updateElements(e,0,e.length,t)}updateElements(t,e,i,s){const n="reset"===s,{iScale:o,vScale:a}=this._cachedMeta,{sharedOptions:r,includeOptions:l}=this._getSharedOptions(e,s),h=o.axis,c=a.axis;for(let d=e;d0&&this.getParsed(e-1);for(let i=0;i<_;++i){const g=t[i],_=x?g:{};if(i=b){_.skip=!0;continue}const v=this.getParsed(i),M=s(v[f]),w=_[u]=a.getPixelForValue(v[u],i),k=_[f]=o||M?r.getBasePixel():r.getPixelForValue(l?this.applyStack(r,v,l):v[f],i);_.skip=isNaN(w)||isNaN(k)||M,_.stop=i>0&&Math.abs(v[u]-y[u])>m,p&&(_.parsed=v,_.raw=h.data[i]),d&&(_.options=c||this.resolveDataElementOptions(i,g.active?"active":n)),x||this.updateElement(g,i,_,n),y=v}}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,i=e.options&&e.options.borderWidth||0,s=t.data||[];if(!s.length)return i;const n=s[0].size(this.resolveDataElementOptions(0)),o=s[s.length-1].size(this.resolveDataElementOptions(s.length-1));return Math.max(i,n,o)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}},PieController:class extends jn{static id="pie";static defaults={cutout:0,rotation:0,circumference:360,radius:"100%"}},PolarAreaController:$n,RadarController:class extends Ns{static id="radar";static defaults={datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}};static overrides={aspectRatio:1,scales:{r:{type:"radialLinear"}}};getLabelAndValue(t){const e=this._cachedMeta.vScale,i=this.getParsed(t);return{label:e.getLabels()[t],value:""+e.getLabelForValue(i[e.axis])}}parseObjectData(t,e,i,s){return ii.bind(this)(t,e,i,s)}update(t){const e=this._cachedMeta,i=e.dataset,s=e.data||[],n=e.iScale.getLabels();if(i.points=s,"resize"!==t){const e=this.resolveDatasetElementOptions(t);this.options.showLine||(e.borderWidth=0);const o={_loop:!0,_fullLoop:n.length===s.length,options:e};this.updateElement(i,void 0,o,t)}this.updateElements(s,0,s.length,t)}updateElements(t,e,i,s){const n=this._cachedMeta.rScale,o="reset"===s;for(let a=e;a0&&this.getParsed(e-1);for(let c=e;c0&&Math.abs(i[f]-_[f])>x,m&&(p.parsed=i,p.raw=h.data[c]),u&&(p.options=d||this.resolveDataElementOptions(c,e.active?"active":n)),b||this.updateElement(e,c,p,n),_=i}this.updateSharedOptions(d,n,c)}getMaxOverflow(){const t=this._cachedMeta,e=t.data||[];if(!this.options.showLine){let t=0;for(let i=e.length-1;i>=0;--i)t=Math.max(t,e[i].size(this.resolveDataElementOptions(i))/2);return t>0&&t}const i=t.dataset,s=i.options&&i.options.borderWidth||0;if(!e.length)return s;const n=e[0].size(this.resolveDataElementOptions(0)),o=e[e.length-1].size(this.resolveDataElementOptions(e.length-1));return Math.max(s,n,o)/2}}});function Un(t,e,i,s){const n=vi(t.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]);const o=(i-e)/2,a=Math.min(o,s*e/2),r=t=>{const e=(i-Math.min(o,t))*s/2;return J(t,0,Math.min(o,e))};return{outerStart:r(n.outerStart),outerEnd:r(n.outerEnd),innerStart:J(n.innerStart,0,a),innerEnd:J(n.innerEnd,0,a)}}function Xn(t,e,i,s){return{x:i+t*Math.cos(e),y:s+t*Math.sin(e)}}function qn(t,e,i,s,n,o){const{x:a,y:r,startAngle:l,pixelMargin:h,innerRadius:c}=e,d=Math.max(e.outerRadius+s+i-h,0),u=c>0?c+s+i+h:0;let f=0;const g=n-l;if(s){const t=((c>0?c-s:0)+(d>0?d-s:0))/2;f=(g-(0!==t?g*t/(t+s):g))/2}const p=(g-Math.max(.001,g*d-i/C)/d)/2,m=l+p+f,x=n-p-f,{outerStart:b,outerEnd:_,innerStart:y,innerEnd:v}=Un(e,u,d,x-m),M=d-b,w=d-_,k=m+b/M,S=x-_/w,P=u+y,D=u+v,O=m+y/P,A=x-v/D;if(t.beginPath(),o){const e=(k+S)/2;if(t.arc(a,r,d,k,e),t.arc(a,r,d,e,S),_>0){const e=Xn(w,S,a,r);t.arc(e.x,e.y,_,S,x+E)}const i=Xn(D,x,a,r);if(t.lineTo(i.x,i.y),v>0){const e=Xn(D,A,a,r);t.arc(e.x,e.y,v,x+E,A+Math.PI)}const s=(x-v/u+(m+y/u))/2;if(t.arc(a,r,u,x-v/u,s,!0),t.arc(a,r,u,s,m+y/u,!0),y>0){const e=Xn(P,O,a,r);t.arc(e.x,e.y,y,O+Math.PI,m-E)}const n=Xn(M,m,a,r);if(t.lineTo(n.x,n.y),b>0){const e=Xn(M,k,a,r);t.arc(e.x,e.y,b,m-E,k)}}else{t.moveTo(a,r);const e=Math.cos(k)*d+a,i=Math.sin(k)*d+r;t.lineTo(e,i);const s=Math.cos(S)*d+a,n=Math.sin(S)*d+r;t.lineTo(s,n)}t.closePath()}function Kn(t,e,i,s,n){const{fullCircles:o,startAngle:a,circumference:r,options:l}=e,{borderWidth:h,borderJoinStyle:c,borderDash:d,borderDashOffset:u}=l,f="inner"===l.borderAlign;if(!h)return;t.setLineDash(d||[]),t.lineDashOffset=u,f?(t.lineWidth=2*h,t.lineJoin=c||"round"):(t.lineWidth=h,t.lineJoin=c||"bevel");let g=e.endAngle;if(o){qn(t,e,i,s,g,n);for(let e=0;en?(h=n/l,t.arc(o,a,l,i+h,s-h,!0)):t.arc(o,a,n,i+E,s-E),t.closePath(),t.clip()}(t,e,g),o||(qn(t,e,i,s,g,n),t.stroke())}function Gn(t,e,i=e){t.lineCap=l(i.borderCapStyle,e.borderCapStyle),t.setLineDash(l(i.borderDash,e.borderDash)),t.lineDashOffset=l(i.borderDashOffset,e.borderDashOffset),t.lineJoin=l(i.borderJoinStyle,e.borderJoinStyle),t.lineWidth=l(i.borderWidth,e.borderWidth),t.strokeStyle=l(i.borderColor,e.borderColor)}function Zn(t,e,i){t.lineTo(i.x,i.y)}function Jn(t,e,i={}){const s=t.length,{start:n=0,end:o=s-1}=i,{start:a,end:r}=e,l=Math.max(n,a),h=Math.min(o,r),c=nr&&o>r;return{count:s,start:l,loop:e.loop,ilen:h(a+(h?r-t:t))%o,_=()=>{f!==g&&(t.lineTo(m,g),t.lineTo(m,f),t.lineTo(m,p))};for(l&&(d=n[b(0)],t.moveTo(d.x,d.y)),c=0;c<=r;++c){if(d=n[b(c)],d.skip)continue;const e=d.x,i=d.y,s=0|e;s===u?(ig&&(g=i),m=(x*m+e)/++x):(_(),t.lineTo(e,i),u=s,x=0,f=g=i),p=i}_()}function eo(t){const e=t.options,i=e.borderDash&&e.borderDash.length;return!(t._decimated||t._loop||e.tension||"monotone"===e.cubicInterpolationMode||e.stepped||i)?to:Qn}const io="function"==typeof Path2D;function so(t,e,i,s){io&&!e.options.segment?function(t,e,i,s){let n=e._path;n||(n=e._path=new Path2D,e.path(n,i,s)&&n.closePath()),Gn(t,e.options),t.stroke(n)}(t,e,i,s):function(t,e,i,s){const{segments:n,options:o}=e,a=eo(e);for(const r of n)Gn(t,o,r.style),t.beginPath(),a(t,e,r,{start:i,end:i+s-1})&&t.closePath(),t.stroke()}(t,e,i,s)}class no extends Hs{static id="line";static defaults={borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};static descriptors={_scriptable:!0,_indexable:t=>"borderDash"!==t&&"fill"!==t};constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const i=this.options;if((i.tension||"monotone"===i.cubicInterpolationMode)&&!i.stepped&&!this._pointsUpdated){const s=i.spanGaps?this._loop:this._fullLoop;hi(this._points,i,t,s,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=zi(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,i=t.length;return i&&e[t[i-1].end]}interpolate(t,e){const i=this.options,s=t[e],n=this.points,o=Ii(this,{property:e,start:s,end:s});if(!o.length)return;const a=[],r=function(t){return t.stepped?pi:t.tension||"monotone"===t.cubicInterpolationMode?mi:gi}(i);let l,h;for(l=0,h=o.length;l"borderDash"!==t};circumference;endAngle;fullCircles;innerRadius;outerRadius;pixelMargin;startAngle;constructor(t){super(),this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,t&&Object.assign(this,t)}inRange(t,e,i){const s=this.getProps(["x","y"],i),{angle:n,distance:o}=X(s,{x:t,y:e}),{startAngle:a,endAngle:r,innerRadius:h,outerRadius:c,circumference:d}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],i),u=(this.options.spacing+this.options.borderWidth)/2,f=l(d,r-a),g=Z(n,a,r)&&a!==r,p=f>=O||g,m=tt(o,h+u,c+u);return p&&m}getCenterPoint(t){const{x:e,y:i,startAngle:s,endAngle:n,innerRadius:o,outerRadius:a}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],t),{offset:r,spacing:l}=this.options,h=(s+n)/2,c=(o+a+l+r)/2;return{x:e+Math.cos(h)*c,y:i+Math.sin(h)*c}}tooltipPosition(t){return this.getCenterPoint(t)}draw(t){const{options:e,circumference:i}=this,s=(e.offset||0)/4,n=(e.spacing||0)/2,o=e.circular;if(this.pixelMargin="inner"===e.borderAlign?.33:0,this.fullCircles=i>O?Math.floor(i/O):0,0===i||this.innerRadius<0||this.outerRadius<0)return;t.save();const a=(this.startAngle+this.endAngle)/2;t.translate(Math.cos(a)*s,Math.sin(a)*s);const r=s*(1-Math.sin(Math.min(C,i||0)));t.fillStyle=e.backgroundColor,t.strokeStyle=e.borderColor,function(t,e,i,s,n){const{fullCircles:o,startAngle:a,circumference:r}=e;let l=e.endAngle;if(o){qn(t,e,i,s,l,n);for(let e=0;e("string"==typeof e?(i=t.push(e)-1,s.unshift({index:i,label:e})):isNaN(e)&&(i=null),i))(t,e,i,s);return n!==t.lastIndexOf(e)?i:n}function po(t){const e=this.getLabels();return t>=0&&ts=e?s:t,a=t=>n=i?n:t;if(t){const t=F(s),e=F(n);t<0&&e<0?a(0):t>0&&e>0&&o(0)}if(s===n){let e=0===n?1:Math.abs(.05*n);a(n+e),t||o(s-e)}this.min=s,this.max=n}getTickLimit(){const t=this.options.ticks;let e,{maxTicksLimit:i,stepSize:s}=t;return s?(e=Math.ceil(this.max/s)-Math.floor(this.min/s)+1,e>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${s} would result generating up to ${e} ticks. Limiting to 1000.`),e=1e3)):(e=this.computeTickLimit(),i=i||11),i&&(e=Math.min(i,e)),e}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let i=this.getTickLimit();i=Math.max(2,i);const n=function(t,e){const i=[],{bounds:n,step:o,min:a,max:r,precision:l,count:h,maxTicks:c,maxDigits:d,includeBounds:u}=t,f=o||1,g=c-1,{min:p,max:m}=e,x=!s(a),b=!s(r),_=!s(h),y=(m-p)/(d+1);let v,M,w,k,S=B((m-p)/g/f)*f;if(S<1e-14&&!x&&!b)return[{value:p},{value:m}];k=Math.ceil(m/S)-Math.floor(p/S),k>g&&(S=B(k*S/g/f)*f),s(l)||(v=Math.pow(10,l),S=Math.ceil(S*v)/v),"ticks"===n?(M=Math.floor(p/S)*S,w=Math.ceil(m/S)*S):(M=p,w=m),x&&b&&o&&H((r-a)/o,S/1e3)?(k=Math.round(Math.min((r-a)/S,c)),S=(r-a)/k,M=a,w=r):_?(M=x?a:M,w=b?r:w,k=h-1,S=(w-M)/k):(k=(w-M)/S,k=V(k,Math.round(k),S/1e3)?Math.round(k):Math.ceil(k));const P=Math.max(U(S),U(M));v=Math.pow(10,s(l)?P:l),M=Math.round(M*v)/v,w=Math.round(w*v)/v;let D=0;for(x&&(u&&M!==a?(i.push({value:a}),Mr)break;i.push({value:t})}return b&&u&&w!==r?i.length&&V(i[i.length-1].value,r,mo(r,y,t))?i[i.length-1].value=r:i.push({value:r}):b&&w!==r||i.push({value:w}),i}({maxTicks:i,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:!1!==e.includeBounds},this._range||this);return"ticks"===t.bounds&&j(n,this,"value"),t.reverse?(n.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),n}configure(){const t=this.ticks;let e=this.min,i=this.max;if(super.configure(),this.options.offset&&t.length){const s=(i-e)/Math.max(t.length-1,1)/2;e-=s,i+=s}this._startValue=e,this._endValue=i,this._valueRange=i-e}getLabelForValue(t){return ne(t,this.chart.options.locale,this.options.ticks.format)}}class bo extends xo{static id="linear";static defaults={ticks:{callback:ae.formatters.numeric}};determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=a(t)?t:0,this.max=a(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,i=$(this.options.ticks.minRotation),s=(t?Math.sin(i):Math.cos(i))||.001,n=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,n.lineHeight/s))}getPixelForValue(t){return null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}const _o=t=>Math.floor(z(t)),yo=(t,e)=>Math.pow(10,_o(t)+e);function vo(t){return 1===t/Math.pow(10,_o(t))}function Mo(t,e,i){const s=Math.pow(10,i),n=Math.floor(t/s);return Math.ceil(e/s)-n}function wo(t,{min:e,max:i}){e=r(t.min,e);const s=[],n=_o(e);let o=function(t,e){let i=_o(e-t);for(;Mo(t,e,i)>10;)i++;for(;Mo(t,e,i)<10;)i--;return Math.min(i,_o(t))}(e,i),a=o<0?Math.pow(10,Math.abs(o)):1;const l=Math.pow(10,o),h=n>o?Math.pow(10,n):0,c=Math.round((e-h)*a)/a,d=Math.floor((e-h)/l/10)*l*10;let u=Math.floor((c-d)/Math.pow(10,o)),f=r(t.min,Math.round((h+d+u*Math.pow(10,o))*a)/a);for(;f=10?u=u<15?15:20:u++,u>=20&&(o++,u=2,a=o>=0?1:a),f=Math.round((h+d+u*Math.pow(10,o))*a)/a;const g=r(t.max,f);return s.push({value:g,major:vo(g),significand:u}),s}class ko extends Js{static id="logarithmic";static defaults={ticks:{callback:ae.formatters.logarithmic,major:{enabled:!0}}};constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(t,e){const i=xo.prototype.parse.apply(this,[t,e]);if(0!==i)return a(i)&&i>0?i:null;this._zero=!0}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=a(t)?Math.max(0,t):null,this.max=a(e)?Math.max(0,e):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!a(this._userMin)&&(this.min=t===yo(this.min,0)?yo(this.min,-1):yo(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let i=this.min,s=this.max;const n=e=>i=t?i:e,o=t=>s=e?s:t;i===s&&(i<=0?(n(1),o(10)):(n(yo(i,-1)),o(yo(s,1)))),i<=0&&n(yo(s,-1)),s<=0&&o(yo(i,1)),this.min=i,this.max=s}buildTicks(){const t=this.options,e=wo({min:this._userMin,max:this._userMax},this);return"ticks"===t.bounds&&j(e,this,"value"),t.reverse?(e.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),e}getLabelForValue(t){return void 0===t?"0":ne(t,this.chart.options.locale,this.options.ticks.format)}configure(){const t=this.min;super.configure(),this._startValue=z(t),this._valueRange=z(this.max)-z(t)}getPixelForValue(t){return void 0!==t&&0!==t||(t=this.min),null===t||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:(z(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const e=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+e*this._valueRange)}}function So(t){const e=t.ticks;if(e.display&&t.display){const t=ki(e.backdropPadding);return l(e.font&&e.font.size,ue.font.size)+t.height}return 0}function Po(t,e,i,s,n){return t===s||t===n?{start:e-i/2,end:e+i/2}:tn?{start:e-i,end:e}:{start:e,end:e+i}}function Do(t){const e={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},i=Object.assign({},e),s=[],o=[],a=t._pointLabels.length,r=t.options.pointLabels,l=r.centerPointLabels?C/a:0;for(let u=0;ue.r&&(r=(s.end-e.r)/o,t.r=Math.max(t.r,e.r+r)),n.starte.b&&(l=(n.end-e.b)/a,t.b=Math.max(t.b,e.b+l))}function Oo(t,e,i){const s=t.drawingArea,{extra:n,additionalAngle:o,padding:a,size:r}=i,l=t.getPointPosition(e,s+n+a,o),h=Math.round(Y(G(l.angle+E))),c=function(t,e,i){90===i||270===i?t-=e/2:(i>270||i<90)&&(t-=e);return t}(l.y,r.h,h),d=function(t){if(0===t||180===t)return"center";if(t<180)return"left";return"right"}(h),u=function(t,e,i){"right"===i?t-=e:"center"===i&&(t-=e/2);return t}(l.x,r.w,d);return{visible:!0,x:l.x,y:c,textAlign:d,left:u,top:c,right:u+r.w,bottom:c+r.h}}function Ao(t,e){if(!e)return!0;const{left:i,top:s,right:n,bottom:o}=t;return!(Re({x:i,y:s},e)||Re({x:i,y:o},e)||Re({x:n,y:s},e)||Re({x:n,y:o},e))}function To(t,e,i){const{left:n,top:o,right:a,bottom:r}=i,{backdropColor:l}=e;if(!s(l)){const i=wi(e.borderRadius),s=ki(e.backdropPadding);t.fillStyle=l;const h=n-s.left,c=o-s.top,d=a-n+s.width,u=r-o+s.height;Object.values(i).some((t=>0!==t))?(t.beginPath(),He(t,{x:h,y:c,w:d,h:u,radius:i}),t.fill()):t.fillRect(h,c,d,u)}}function Lo(t,e,i,s){const{ctx:n}=t;if(i)n.arc(t.xCenter,t.yCenter,e,0,O);else{let i=t.getPointPosition(0,e);n.moveTo(i.x,i.y);for(let o=1;ot,padding:5,centerPointLabels:!1}};static defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"};static descriptors={angleLines:{_fallback:"grid"}};constructor(t){super(t),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const t=this._padding=ki(So(this.options)/2),e=this.width=this.maxWidth-t.width,i=this.height=this.maxHeight-t.height;this.xCenter=Math.floor(this.left+e/2+t.left),this.yCenter=Math.floor(this.top+i/2+t.top),this.drawingArea=Math.floor(Math.min(e,i)/2)}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!1);this.min=a(t)&&!isNaN(t)?t:0,this.max=a(e)&&!isNaN(e)?e:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/So(this.options))}generateTickLabels(t){xo.prototype.generateTickLabels.call(this,t),this._pointLabels=this.getLabels().map(((t,e)=>{const i=d(this.options.pointLabels.callback,[t,e],this);return i||0===i?i:""})).filter(((t,e)=>this.chart.getDataVisibility(e)))}fit(){const t=this.options;t.display&&t.pointLabels.display?Do(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(t,e,i,s){this.xCenter+=Math.floor((t-e)/2),this.yCenter+=Math.floor((i-s)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(t,e,i,s))}getIndexAngle(t){return G(t*(O/(this._pointLabels.length||1))+$(this.options.startAngle||0))}getDistanceFromCenterForValue(t){if(s(t))return NaN;const e=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*e:(t-this.min)*e}getValueForDistanceFromCenter(t){if(s(t))return NaN;const e=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-e:this.min+e}getPointLabelContext(t){const e=this._pointLabels||[];if(t>=0&&t=0;n--){const e=t._pointLabelItems[n];if(!e.visible)continue;const o=s.setContext(t.getPointLabelContext(n));To(i,o,e);const a=Si(o.font),{x:r,y:l,textAlign:h}=e;Ne(i,t._pointLabels[n],r,l+a.lineHeight/2,a,{color:o.color,textAlign:h,textBaseline:"middle"})}}(this,o),s.display&&this.ticks.forEach(((t,e)=>{if(0!==e||0===e&&this.min<0){r=this.getDistanceFromCenterForValue(t.value);const i=this.getContext(e),a=s.setContext(i),l=n.setContext(i);!function(t,e,i,s,n){const o=t.ctx,a=e.circular,{color:r,lineWidth:l}=e;!a&&!s||!r||!l||i<0||(o.save(),o.strokeStyle=r,o.lineWidth=l,o.setLineDash(n.dash),o.lineDashOffset=n.dashOffset,o.beginPath(),Lo(t,i,a,s),o.closePath(),o.stroke(),o.restore())}(this,a,r,o,l)}})),i.display){for(t.save(),a=o-1;a>=0;a--){const s=i.setContext(this.getPointLabelContext(a)),{color:n,lineWidth:o}=s;o&&n&&(t.lineWidth=o,t.strokeStyle=n,t.setLineDash(s.borderDash),t.lineDashOffset=s.borderDashOffset,r=this.getDistanceFromCenterForValue(e.reverse?this.min:this.max),l=this.getPointPosition(a,r),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(l.x,l.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,e=this.options,i=e.ticks;if(!i.display)return;const s=this.getIndexAngle(0);let n,o;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(s),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach(((s,a)=>{if(0===a&&this.min>=0&&!e.reverse)return;const r=i.setContext(this.getContext(a)),l=Si(r.font);if(n=this.getDistanceFromCenterForValue(this.ticks[a].value),r.showLabelBackdrop){t.font=l.string,o=t.measureText(s.label).width,t.fillStyle=r.backdropColor;const e=ki(r.backdropPadding);t.fillRect(-o/2-e.left,-n-l.size/2-e.top,o+e.width,l.size+e.height)}Ne(t,s.label,0,-n,l,{color:r.color,strokeColor:r.textStrokeColor,strokeWidth:r.textStrokeWidth})})),t.restore()}drawTitle(){}}const Ro={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Io=Object.keys(Ro);function zo(t,e){return t-e}function Fo(t,e){if(s(e))return null;const i=t._adapter,{parser:n,round:o,isoWeekday:r}=t._parseOpts;let l=e;return"function"==typeof n&&(l=n(l)),a(l)||(l="string"==typeof n?i.parse(l,n):i.parse(l)),null===l?null:(o&&(l="week"!==o||!N(r)&&!0!==r?i.startOf(l,o):i.startOf(l,"isoWeek",r)),+l)}function Vo(t,e,i,s){const n=Io.length;for(let o=Io.indexOf(t);o=e?i[s]:i[n]]=!0}}else t[e]=!0}function Wo(t,e,i){const s=[],n={},o=e.length;let a,r;for(a=0;a=0&&(e[l].major=!0);return e}(t,s,n,i):s}class No extends Js{static id="time";static defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}};constructor(t){super(t),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(t,e={}){const i=t.time||(t.time={}),s=this._adapter=new Rn._date(t.adapters.date);s.init(e),b(i.displayFormats,s.formats()),this._parseOpts={parser:i.parser,round:i.round,isoWeekday:i.isoWeekday},super.init(t),this._normalized=e.normalized}parse(t,e){return void 0===t?null:Fo(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,e=this._adapter,i=t.time.unit||"day";let{min:s,max:n,minDefined:o,maxDefined:r}=this.getUserBounds();function l(t){o||isNaN(t.min)||(s=Math.min(s,t.min)),r||isNaN(t.max)||(n=Math.max(n,t.max))}o&&r||(l(this._getLabelBounds()),"ticks"===t.bounds&&"labels"===t.ticks.source||l(this.getMinMax(!1))),s=a(s)&&!isNaN(s)?s:+e.startOf(Date.now(),i),n=a(n)&&!isNaN(n)?n:+e.endOf(Date.now(),i)+1,this.min=Math.min(s,n-1),this.max=Math.max(s+1,n)}_getLabelBounds(){const t=this.getLabelTimestamps();let e=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY;return t.length&&(e=t[0],i=t[t.length-1]),{min:e,max:i}}buildTicks(){const t=this.options,e=t.time,i=t.ticks,s="labels"===i.source?this.getLabelTimestamps():this._generate();"ticks"===t.bounds&&s.length&&(this.min=this._userMin||s[0],this.max=this._userMax||s[s.length-1]);const n=this.min,o=nt(s,n,this.max);return this._unit=e.unit||(i.autoSkip?Vo(e.minUnit,this.min,this.max,this._getLabelCapacity(n)):function(t,e,i,s,n){for(let o=Io.length-1;o>=Io.indexOf(i);o--){const i=Io[o];if(Ro[i].common&&t._adapter.diff(n,s,i)>=e-1)return i}return Io[i?Io.indexOf(i):0]}(this,o.length,e.minUnit,this.min,this.max)),this._majorUnit=i.major.enabled&&"year"!==this._unit?function(t){for(let e=Io.indexOf(t)+1,i=Io.length;e+t.value)))}initOffsets(t=[]){let e,i,s=0,n=0;this.options.offset&&t.length&&(e=this.getDecimalForValue(t[0]),s=1===t.length?1-e:(this.getDecimalForValue(t[1])-e)/2,i=this.getDecimalForValue(t[t.length-1]),n=1===t.length?i:(i-this.getDecimalForValue(t[t.length-2]))/2);const o=t.length<3?.5:.25;s=J(s,0,o),n=J(n,0,o),this._offsets={start:s,end:n,factor:1/(s+1+n)}}_generate(){const t=this._adapter,e=this.min,i=this.max,s=this.options,n=s.time,o=n.unit||Vo(n.minUnit,e,i,this._getLabelCapacity(e)),a=l(s.ticks.stepSize,1),r="week"===o&&n.isoWeekday,h=N(r)||!0===r,c={};let d,u,f=e;if(h&&(f=+t.startOf(f,"isoWeek",r)),f=+t.startOf(f,h?"day":o),t.diff(i,e,o)>1e5*a)throw new Error(e+" and "+i+" are too far apart with stepSize of "+a+" "+o);const g="data"===s.ticks.source&&this.getDataTimestamps();for(d=f,u=0;d+t))}getLabelForValue(t){const e=this._adapter,i=this.options.time;return i.tooltipFormat?e.format(t,i.tooltipFormat):e.format(t,i.displayFormats.datetime)}format(t,e){const i=this.options.time.displayFormats,s=this._unit,n=e||i[s];return this._adapter.format(t,n)}_tickFormatFunction(t,e,i,s){const n=this.options,o=n.ticks.callback;if(o)return d(o,[t,e,i],this);const a=n.time.displayFormats,r=this._unit,l=this._majorUnit,h=r&&a[r],c=l&&a[l],u=i[e],f=l&&c&&u&&u.major;return this._adapter.format(t,s||(f?c:h))}generateTickLabels(t){let e,i,s;for(e=0,i=t.length;e0?a:1}getDataTimestamps(){let t,e,i=this._cache.data||[];if(i.length)return i;const s=this.getMatchingVisibleMetas();if(this._normalized&&s.length)return this._cache.data=s[0].controller.getAllParsedValues(this);for(t=0,e=s.length;t=t[r].pos&&e<=t[l].pos&&({lo:r,hi:l}=it(t,"pos",e)),({pos:s,time:o}=t[r]),({pos:n,time:a}=t[l])):(e>=t[r].time&&e<=t[l].time&&({lo:r,hi:l}=it(t,"time",e)),({time:s,pos:o}=t[r]),({time:n,pos:a}=t[l]));const h=n-s;return h?o+(a-o)*(e-s)/h:o}var jo=Object.freeze({__proto__:null,CategoryScale:class extends Js{static id="category";static defaults={ticks:{callback:po}};constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const e=this._addedLabels;if(e.length){const t=this.getLabels();for(const{index:i,label:s}of e)t[i]===s&&t.splice(i,1);this._addedLabels=[]}super.init(t)}parse(t,e){if(s(t))return null;const i=this.getLabels();return((t,e)=>null===t?null:J(Math.round(t),0,e))(e=isFinite(e)&&i[e]===t?e:go(i,t,l(e,t),this._addedLabels),i.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let{min:i,max:s}=this.getMinMax(!0);"ticks"===this.options.bounds&&(t||(i=0),e||(s=this.getLabels().length-1)),this.min=i,this.max=s}buildTicks(){const t=this.min,e=this.max,i=this.options.offset,s=[];let n=this.getLabels();n=0===t&&e===n.length-1?n:n.slice(t,e+1),this._valueRange=Math.max(n.length-(i?0:1),1),this._startValue=this.min-(i?.5:0);for(let i=t;i<=e;i++)s.push({value:i});return s}getLabelForValue(t){return po.call(this,t)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(t){return"number"!=typeof t&&(t=this.parse(t)),null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}},LinearScale:bo,LogarithmicScale:ko,RadialLinearScale:Eo,TimeScale:No,TimeSeriesScale:class extends No{static id="timeseries";static defaults=No.defaults;constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=Ho(e,this.min),this._tableRange=Ho(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:i}=this,s=[],n=[];let o,a,r,l,h;for(o=0,a=t.length;o=e&&l<=i&&s.push(l);if(s.length<2)return[{time:e,pos:0},{time:i,pos:1}];for(o=0,a=s.length;ot-e))}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const e=this.getDataTimestamps(),i=this.getLabelTimestamps();return t=e.length&&i.length?this.normalize(e.concat(i)):e.length?e:i,t=this._cache.all=t,t}getDecimalForValue(t){return(Ho(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const e=this._offsets,i=this.getDecimalForPixel(t)/e.factor-e.end;return Ho(this._table,i*this._tableRange+this._minPos,!0)}}});const $o=["rgb(54, 162, 235)","rgb(255, 99, 132)","rgb(255, 159, 64)","rgb(255, 205, 86)","rgb(75, 192, 192)","rgb(153, 102, 255)","rgb(201, 203, 207)"],Yo=$o.map((t=>t.replace("rgb(","rgba(").replace(")",", 0.5)")));function Uo(t){return $o[t%$o.length]}function Xo(t){return Yo[t%Yo.length]}function qo(t){let e=0;return(i,s)=>{const n=t.getDatasetMeta(s).controller;n instanceof jn?e=function(t,e){return t.backgroundColor=t.data.map((()=>Uo(e++))),e}(i,e):n instanceof $n?e=function(t,e){return t.backgroundColor=t.data.map((()=>Xo(e++))),e}(i,e):n&&(e=function(t,e){return t.borderColor=Uo(e),t.backgroundColor=Xo(e),++e}(i,e))}}function Ko(t){let e;for(e in t)if(t[e].borderColor||t[e].backgroundColor)return!0;return!1}var Go={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(t,e,i){if(!i.enabled)return;const{data:{datasets:s},options:n}=t.config,{elements:o}=n;if(!i.forceOverride&&(Ko(s)||(a=n)&&(a.borderColor||a.backgroundColor)||o&&Ko(o)))return;var a;const r=qo(t);s.forEach(r)}};function Zo(t){if(t._decimated){const e=t._data;delete t._decimated,delete t._data,Object.defineProperty(t,"data",{configurable:!0,enumerable:!0,writable:!0,value:e})}}function Jo(t){t.data.datasets.forEach((t=>{Zo(t)}))}var Qo={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(t,e,i)=>{if(!i.enabled)return void Jo(t);const n=t.width;t.data.datasets.forEach(((e,o)=>{const{_data:a,indexAxis:r}=e,l=t.getDatasetMeta(o),h=a||e.data;if("y"===Pi([r,t.options.indexAxis]))return;if(!l.controller.supportsDecimation)return;const c=t.scales[l.xAxisID];if("linear"!==c.type&&"time"!==c.type)return;if(t.options.parsing)return;let{start:d,count:u}=function(t,e){const i=e.length;let s,n=0;const{iScale:o}=t,{min:a,max:r,minDefined:l,maxDefined:h}=o.getUserBounds();return l&&(n=J(it(e,o.axis,a).lo,0,i-1)),s=h?J(it(e,o.axis,r).hi+1,n,i)-n:i-n,{start:n,count:s}}(l,h);if(u<=(i.threshold||4*n))return void Zo(e);let f;switch(s(a)&&(e._data=h,delete e.data,Object.defineProperty(e,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(t){this._data=t}})),i.algorithm){case"lttb":f=function(t,e,i,s,n){const o=n.samples||s;if(o>=i)return t.slice(e,e+i);const a=[],r=(i-2)/(o-2);let l=0;const h=e+i-1;let c,d,u,f,g,p=e;for(a[l++]=t[p],c=0;cu&&(u=f,d=t[s],g=s);a[l++]=d,p=g}return a[l++]=t[h],a}(h,d,u,n,i);break;case"min-max":f=function(t,e,i,n){let o,a,r,l,h,c,d,u,f,g,p=0,m=0;const x=[],b=e+i-1,_=t[e].x,y=t[b].x-_;for(o=e;og&&(g=l,d=o),p=(m*p+a.x)/++m;else{const i=o-1;if(!s(c)&&!s(d)){const e=Math.min(c,d),s=Math.max(c,d);e!==u&&e!==i&&x.push({...t[e],x:p}),s!==u&&s!==i&&x.push({...t[s],x:p})}o>0&&i!==u&&x.push(t[i]),x.push(a),h=e,m=0,f=g=l,c=d=u=o}}return x}(h,d,u,n);break;default:throw new Error(`Unsupported decimation algorithm '${i.algorithm}'`)}e._decimated=f}))},destroy(t){Jo(t)}};function ta(t,e,i,s){if(s)return;let n=e[t],o=i[t];return"angle"===t&&(n=G(n),o=G(o)),{property:t,start:n,end:o}}function ea(t,e,i){for(;e>t;e--){const t=i[e];if(!isNaN(t.x)&&!isNaN(t.y))break}return e}function ia(t,e,i,s){return t&&e?s(t[i],e[i]):t?t[i]:e?e[i]:0}function sa(t,e){let i=[],s=!1;return n(t)?(s=!0,i=t):i=function(t,e){const{x:i=null,y:s=null}=t||{},n=e.points,o=[];return e.segments.forEach((({start:t,end:e})=>{e=ea(t,e,n);const a=n[t],r=n[e];null!==s?(o.push({x:a.x,y:s}),o.push({x:r.x,y:s})):null!==i&&(o.push({x:i,y:a.y}),o.push({x:i,y:r.y}))})),o}(t,e),i.length?new no({points:i,options:{tension:0},_loop:s,_fullLoop:s}):null}function na(t){return t&&!1!==t.fill}function oa(t,e,i){let s=t[e].fill;const n=[e];let o;if(!i)return s;for(;!1!==s&&-1===n.indexOf(s);){if(!a(s))return s;if(o=t[s],!o)return!1;if(o.visible)return s;n.push(s),s=o.fill}return!1}function aa(t,e,i){const s=function(t){const e=t.options,i=e.fill;let s=l(i&&i.target,i);void 0===s&&(s=!!e.backgroundColor);if(!1===s||null===s)return!1;if(!0===s)return"origin";return s}(t);if(o(s))return!isNaN(s.value)&&s;let n=parseFloat(s);return a(n)&&Math.floor(n)===n?function(t,e,i,s){"-"!==t&&"+"!==t||(i=e+i);if(i===e||i<0||i>=s)return!1;return i}(s[0],e,n,i):["origin","start","end","stack","shape"].indexOf(s)>=0&&s}function ra(t,e,i){const s=[];for(let n=0;n=0;--e){const i=n[e].$filler;i&&(i.line.updateControlPoints(o,i.axis),s&&i.fill&&da(t.ctx,i,o))}},beforeDatasetsDraw(t,e,i){if("beforeDatasetsDraw"!==i.drawTime)return;const s=t.getSortedVisibleDatasetMetas();for(let e=s.length-1;e>=0;--e){const i=s[e].$filler;na(i)&&da(t.ctx,i,t.chartArea)}},beforeDatasetDraw(t,e,i){const s=e.meta.$filler;na(s)&&"beforeDatasetDraw"===i.drawTime&&da(t.ctx,s,t.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const xa=(t,e)=>{let{boxHeight:i=e,boxWidth:s=e}=t;return t.usePointStyle&&(i=Math.min(i,e),s=t.pointStyleWidth||Math.min(s,e)),{boxWidth:s,boxHeight:i,itemHeight:Math.max(e,i)}};class ba extends Hs{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,i){this.maxWidth=t,this.maxHeight=e,this._margins=i,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=d(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter((e=>t.filter(e,this.chart.data)))),t.sort&&(e=e.sort(((e,i)=>t.sort(e,i,this.chart.data)))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display)return void(this.width=this.height=0);const i=t.labels,s=Si(i.font),n=s.size,o=this._computeTitleHeight(),{boxWidth:a,itemHeight:r}=xa(i,n);let l,h;e.font=s.string,this.isHorizontal()?(l=this.maxWidth,h=this._fitRows(o,n,a,r)+10):(h=this.maxHeight,l=this._fitCols(o,s,a,r)+10),this.width=Math.min(l,t.maxWidth||this.maxWidth),this.height=Math.min(h,t.maxHeight||this.maxHeight)}_fitRows(t,e,i,s){const{ctx:n,maxWidth:o,options:{labels:{padding:a}}}=this,r=this.legendHitBoxes=[],l=this.lineWidths=[0],h=s+a;let c=t;n.textAlign="left",n.textBaseline="middle";let d=-1,u=-h;return this.legendItems.forEach(((t,f)=>{const g=i+e/2+n.measureText(t.text).width;(0===f||l[l.length-1]+g+2*a>o)&&(c+=h,l[l.length-(f>0?0:1)]=0,u+=h,d++),r[f]={left:0,top:u,row:d,width:g,height:s},l[l.length-1]+=g+a})),c}_fitCols(t,e,i,s){const{ctx:n,maxHeight:o,options:{labels:{padding:a}}}=this,r=this.legendHitBoxes=[],l=this.columnSizes=[],h=o-t;let c=a,d=0,u=0,f=0,g=0;return this.legendItems.forEach(((t,o)=>{const{itemWidth:p,itemHeight:m}=function(t,e,i,s,n){const o=function(t,e,i,s){let n=t.text;n&&"string"!=typeof n&&(n=n.reduce(((t,e)=>t.length>e.length?t:e)));return e+i.size/2+s.measureText(n).width}(s,t,e,i),a=function(t,e,i){let s=t;"string"!=typeof e.text&&(s=_a(e,i));return s}(n,s,e.lineHeight);return{itemWidth:o,itemHeight:a}}(i,e,n,t,s);o>0&&u+m+2*a>h&&(c+=d+a,l.push({width:d,height:u}),f+=d+a,g++,d=u=0),r[o]={left:f,top:u,col:g,width:p,height:m},d=Math.max(d,p),u+=m+a})),c+=d,l.push({width:d,height:u}),c}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:i,labels:{padding:s},rtl:n}}=this,o=Oi(n,this.left,this.width);if(this.isHorizontal()){let n=0,a=ft(i,this.left+s,this.right-this.lineWidths[n]);for(const r of e)n!==r.row&&(n=r.row,a=ft(i,this.left+s,this.right-this.lineWidths[n])),r.top+=this.top+t+s,r.left=o.leftForLtr(o.x(a),r.width),a+=r.width+s}else{let n=0,a=ft(i,this.top+t+s,this.bottom-this.columnSizes[n].height);for(const r of e)r.col!==n&&(n=r.col,a=ft(i,this.top+t+s,this.bottom-this.columnSizes[n].height)),r.top=a,r.left+=this.left+s,r.left=o.leftForLtr(o.x(r.left),r.width),a+=r.height+s}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const t=this.ctx;Ie(t,this),this._draw(),ze(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:i,ctx:s}=this,{align:n,labels:o}=t,a=ue.color,r=Oi(t.rtl,this.left,this.width),h=Si(o.font),{padding:c}=o,d=h.size,u=d/2;let f;this.drawTitle(),s.textAlign=r.textAlign("left"),s.textBaseline="middle",s.lineWidth=.5,s.font=h.string;const{boxWidth:g,boxHeight:p,itemHeight:m}=xa(o,d),x=this.isHorizontal(),b=this._computeTitleHeight();f=x?{x:ft(n,this.left+c,this.right-i[0]),y:this.top+c+b,line:0}:{x:this.left+c,y:ft(n,this.top+b+c,this.bottom-e[0].height),line:0},Ai(this.ctx,t.textDirection);const _=m+c;this.legendItems.forEach(((y,v)=>{s.strokeStyle=y.fontColor,s.fillStyle=y.fontColor;const M=s.measureText(y.text).width,w=r.textAlign(y.textAlign||(y.textAlign=o.textAlign)),k=g+u+M;let S=f.x,P=f.y;r.setWidth(this.width),x?v>0&&S+k+c>this.right&&(P=f.y+=_,f.line++,S=f.x=ft(n,this.left+c,this.right-i[f.line])):v>0&&P+_>this.bottom&&(S=f.x=S+e[f.line].width+c,f.line++,P=f.y=ft(n,this.top+b+c,this.bottom-e[f.line].height));if(function(t,e,i){if(isNaN(g)||g<=0||isNaN(p)||p<0)return;s.save();const n=l(i.lineWidth,1);if(s.fillStyle=l(i.fillStyle,a),s.lineCap=l(i.lineCap,"butt"),s.lineDashOffset=l(i.lineDashOffset,0),s.lineJoin=l(i.lineJoin,"miter"),s.lineWidth=n,s.strokeStyle=l(i.strokeStyle,a),s.setLineDash(l(i.lineDash,[])),o.usePointStyle){const a={radius:p*Math.SQRT2/2,pointStyle:i.pointStyle,rotation:i.rotation,borderWidth:n},l=r.xPlus(t,g/2);Ee(s,a,l,e+u,o.pointStyleWidth&&g)}else{const o=e+Math.max((d-p)/2,0),a=r.leftForLtr(t,g),l=wi(i.borderRadius);s.beginPath(),Object.values(l).some((t=>0!==t))?He(s,{x:a,y:o,w:g,h:p,radius:l}):s.rect(a,o,g,p),s.fill(),0!==n&&s.stroke()}s.restore()}(r.x(S),P,y),S=gt(w,S+g+u,x?S+k:this.right,t.rtl),function(t,e,i){Ne(s,i.text,t,e+m/2,h,{strikethrough:i.hidden,textAlign:r.textAlign(i.textAlign)})}(r.x(S),P,y),x)f.x+=k+c;else if("string"!=typeof y.text){const t=h.lineHeight;f.y+=_a(y,t)+c}else f.y+=_})),Ti(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,i=Si(e.font),s=ki(e.padding);if(!e.display)return;const n=Oi(t.rtl,this.left,this.width),o=this.ctx,a=e.position,r=i.size/2,l=s.top+r;let h,c=this.left,d=this.width;if(this.isHorizontal())d=Math.max(...this.lineWidths),h=this.top+l,c=ft(t.align,c,this.right-d);else{const e=this.columnSizes.reduce(((t,e)=>Math.max(t,e.height)),0);h=l+ft(t.align,this.top,this.bottom-e-t.labels.padding-this._computeTitleHeight())}const u=ft(a,c,c+d);o.textAlign=n.textAlign(ut(a)),o.textBaseline="middle",o.strokeStyle=e.color,o.fillStyle=e.color,o.font=i.string,Ne(o,e.text,u,h,i)}_computeTitleHeight(){const t=this.options.title,e=Si(t.font),i=ki(t.padding);return t.display?e.lineHeight+i.height:0}_getLegendItemAt(t,e){let i,s,n;if(tt(t,this.left,this.right)&&tt(e,this.top,this.bottom))for(n=this.legendHitBoxes,i=0;it.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const e=t.data.datasets,{labels:{usePointStyle:i,pointStyle:s,textAlign:n,color:o,useBorderRadius:a,borderRadius:r}}=t.legend.options;return t._getSortedDatasetMetas().map((t=>{const l=t.controller.getStyle(i?0:void 0),h=ki(l.borderWidth);return{text:e[t.index].label,fillStyle:l.backgroundColor,fontColor:o,hidden:!t.visible,lineCap:l.borderCapStyle,lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:(h.width+h.height)/4,strokeStyle:l.borderColor,pointStyle:s||l.pointStyle,rotation:l.rotation,textAlign:n||l.textAlign,borderRadius:a&&(r||l.borderRadius),datasetIndex:t.index}}),this)}},title:{color:t=>t.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:t=>!t.startsWith("on"),labels:{_scriptable:t=>!["generateLabels","filter","sort"].includes(t)}}};class va extends Hs{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const i=this.options;if(this.left=0,this.top=0,!i.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=t,this.height=this.bottom=e;const s=n(i.text)?i.text.length:1;this._padding=ki(i.padding);const o=s*Si(i.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=o:this.width=o}isHorizontal(){const t=this.options.position;return"top"===t||"bottom"===t}_drawArgs(t){const{top:e,left:i,bottom:s,right:n,options:o}=this,a=o.align;let r,l,h,c=0;return this.isHorizontal()?(l=ft(a,i,n),h=e+t,r=n-i):("left"===o.position?(l=i+t,h=ft(a,s,e),c=-.5*C):(l=n-t,h=ft(a,e,s),c=.5*C),r=s-e),{titleX:l,titleY:h,maxWidth:r,rotation:c}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const i=Si(e.font),s=i.lineHeight/2+this._padding.top,{titleX:n,titleY:o,maxWidth:a,rotation:r}=this._drawArgs(s);Ne(t,e.text,0,0,i,{color:e.color,maxWidth:a,rotation:r,textAlign:ut(e.align),textBaseline:"middle",translation:[n,o]})}}var Ma={id:"title",_element:va,start(t,e,i){!function(t,e){const i=new va({ctx:t.ctx,options:e,chart:t});as.configure(t,i,e),as.addBox(t,i),t.titleBlock=i}(t,i)},stop(t){const e=t.titleBlock;as.removeBox(t,e),delete t.titleBlock},beforeUpdate(t,e,i){const s=t.titleBlock;as.configure(t,s,i),s.options=i},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const wa=new WeakMap;var ka={id:"subtitle",start(t,e,i){const s=new va({ctx:t.ctx,options:i,chart:t});as.configure(t,s,i),as.addBox(t,s),wa.set(t,s)},stop(t){as.removeBox(t,wa.get(t)),wa.delete(t)},beforeUpdate(t,e,i){const s=wa.get(t);as.configure(t,s,i),s.options=i},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Sa={average(t){if(!t.length)return!1;let e,i,s=new Set,n=0,o=0;for(e=0,i=t.length;et+e))/s.size,y:n/o}},nearest(t,e){if(!t.length)return!1;let i,s,n,o=e.x,a=e.y,r=Number.POSITIVE_INFINITY;for(i=0,s=t.length;i-1?t.split("\n"):t}function Ca(t,e){const{element:i,datasetIndex:s,index:n}=e,o=t.getDatasetMeta(s).controller,{label:a,value:r}=o.getLabelAndValue(n);return{chart:t,label:a,parsed:o.getParsed(n),raw:t.data.datasets[s].data[n],formattedValue:r,dataset:o.getDataset(),dataIndex:n,datasetIndex:s,element:i}}function Oa(t,e){const i=t.chart.ctx,{body:s,footer:n,title:o}=t,{boxWidth:a,boxHeight:r}=e,l=Si(e.bodyFont),h=Si(e.titleFont),c=Si(e.footerFont),d=o.length,f=n.length,g=s.length,p=ki(e.padding);let m=p.height,x=0,b=s.reduce(((t,e)=>t+e.before.length+e.lines.length+e.after.length),0);if(b+=t.beforeBody.length+t.afterBody.length,d&&(m+=d*h.lineHeight+(d-1)*e.titleSpacing+e.titleMarginBottom),b){m+=g*(e.displayColors?Math.max(r,l.lineHeight):l.lineHeight)+(b-g)*l.lineHeight+(b-1)*e.bodySpacing}f&&(m+=e.footerMarginTop+f*c.lineHeight+(f-1)*e.footerSpacing);let _=0;const y=function(t){x=Math.max(x,i.measureText(t).width+_)};return i.save(),i.font=h.string,u(t.title,y),i.font=l.string,u(t.beforeBody.concat(t.afterBody),y),_=e.displayColors?a+2+e.boxPadding:0,u(s,(t=>{u(t.before,y),u(t.lines,y),u(t.after,y)})),_=0,i.font=c.string,u(t.footer,y),i.restore(),x+=p.width,{width:x,height:m}}function Aa(t,e,i,s){const{x:n,width:o}=i,{width:a,chartArea:{left:r,right:l}}=t;let h="center";return"center"===s?h=n<=(r+l)/2?"left":"right":n<=o/2?h="left":n>=a-o/2&&(h="right"),function(t,e,i,s){const{x:n,width:o}=s,a=i.caretSize+i.caretPadding;return"left"===t&&n+o+a>e.width||"right"===t&&n-o-a<0||void 0}(h,t,e,i)&&(h="center"),h}function Ta(t,e,i){const s=i.yAlign||e.yAlign||function(t,e){const{y:i,height:s}=e;return it.height-s/2?"bottom":"center"}(t,i);return{xAlign:i.xAlign||e.xAlign||Aa(t,e,i,s),yAlign:s}}function La(t,e,i,s){const{caretSize:n,caretPadding:o,cornerRadius:a}=t,{xAlign:r,yAlign:l}=i,h=n+o,{topLeft:c,topRight:d,bottomLeft:u,bottomRight:f}=wi(a);let g=function(t,e){let{x:i,width:s}=t;return"right"===e?i-=s:"center"===e&&(i-=s/2),i}(e,r);const p=function(t,e,i){let{y:s,height:n}=t;return"top"===e?s+=i:s-="bottom"===e?n+i:n/2,s}(e,l,h);return"center"===l?"left"===r?g+=h:"right"===r&&(g-=h):"left"===r?g-=Math.max(c,u)+n:"right"===r&&(g+=Math.max(d,f)+n),{x:J(g,0,s.width-e.width),y:J(p,0,s.height-e.height)}}function Ea(t,e,i){const s=ki(i.padding);return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-s.right:t.x+s.left}function Ra(t){return Pa([],Da(t))}function Ia(t,e){const i=e&&e.dataset&&e.dataset.tooltip&&e.dataset.tooltip.callbacks;return i?t.override(i):t}const za={beforeTitle:e,title(t){if(t.length>0){const e=t[0],i=e.chart.data.labels,s=i?i.length:0;if(this&&this.options&&"dataset"===this.options.mode)return e.dataset.label||"";if(e.label)return e.label;if(s>0&&e.dataIndex{const e={before:[],lines:[],after:[]},n=Ia(i,t);Pa(e.before,Da(Fa(n,"beforeLabel",this,t))),Pa(e.lines,Fa(n,"label",this,t)),Pa(e.after,Da(Fa(n,"afterLabel",this,t))),s.push(e)})),s}getAfterBody(t,e){return Ra(Fa(e.callbacks,"afterBody",this,t))}getFooter(t,e){const{callbacks:i}=e,s=Fa(i,"beforeFooter",this,t),n=Fa(i,"footer",this,t),o=Fa(i,"afterFooter",this,t);let a=[];return a=Pa(a,Da(s)),a=Pa(a,Da(n)),a=Pa(a,Da(o)),a}_createItems(t){const e=this._active,i=this.chart.data,s=[],n=[],o=[];let a,r,l=[];for(a=0,r=e.length;at.filter(e,s,n,i)))),t.itemSort&&(l=l.sort(((e,s)=>t.itemSort(e,s,i)))),u(l,(e=>{const i=Ia(t.callbacks,e);s.push(Fa(i,"labelColor",this,e)),n.push(Fa(i,"labelPointStyle",this,e)),o.push(Fa(i,"labelTextColor",this,e))})),this.labelColors=s,this.labelPointStyles=n,this.labelTextColors=o,this.dataPoints=l,l}update(t,e){const i=this.options.setContext(this.getContext()),s=this._active;let n,o=[];if(s.length){const t=Sa[i.position].call(this,s,this._eventPosition);o=this._createItems(i),this.title=this.getTitle(o,i),this.beforeBody=this.getBeforeBody(o,i),this.body=this.getBody(o,i),this.afterBody=this.getAfterBody(o,i),this.footer=this.getFooter(o,i);const e=this._size=Oa(this,i),a=Object.assign({},t,e),r=Ta(this.chart,i,a),l=La(i,a,r,this.chart);this.xAlign=r.xAlign,this.yAlign=r.yAlign,n={opacity:1,x:l.x,y:l.y,width:e.width,height:e.height,caretX:t.x,caretY:t.y}}else 0!==this.opacity&&(n={opacity:0});this._tooltipItems=o,this.$context=void 0,n&&this._resolveAnimations().update(this,n),t&&i.external&&i.external.call(this,{chart:this.chart,tooltip:this,replay:e})}drawCaret(t,e,i,s){const n=this.getCaretPosition(t,i,s);e.lineTo(n.x1,n.y1),e.lineTo(n.x2,n.y2),e.lineTo(n.x3,n.y3)}getCaretPosition(t,e,i){const{xAlign:s,yAlign:n}=this,{caretSize:o,cornerRadius:a}=i,{topLeft:r,topRight:l,bottomLeft:h,bottomRight:c}=wi(a),{x:d,y:u}=t,{width:f,height:g}=e;let p,m,x,b,_,y;return"center"===n?(_=u+g/2,"left"===s?(p=d,m=p-o,b=_+o,y=_-o):(p=d+f,m=p+o,b=_-o,y=_+o),x=p):(m="left"===s?d+Math.max(r,h)+o:"right"===s?d+f-Math.max(l,c)-o:this.caretX,"top"===n?(b=u,_=b-o,p=m-o,x=m+o):(b=u+g,_=b+o,p=m+o,x=m-o),y=b),{x1:p,x2:m,x3:x,y1:b,y2:_,y3:y}}drawTitle(t,e,i){const s=this.title,n=s.length;let o,a,r;if(n){const l=Oi(i.rtl,this.x,this.width);for(t.x=Ea(this,i.titleAlign,i),e.textAlign=l.textAlign(i.titleAlign),e.textBaseline="middle",o=Si(i.titleFont),a=i.titleSpacing,e.fillStyle=i.titleColor,e.font=o.string,r=0;r0!==t))?(t.beginPath(),t.fillStyle=n.multiKeyBackground,He(t,{x:e,y:g,w:h,h:l,radius:r}),t.fill(),t.stroke(),t.fillStyle=a.backgroundColor,t.beginPath(),He(t,{x:i,y:g+1,w:h-2,h:l-2,radius:r}),t.fill()):(t.fillStyle=n.multiKeyBackground,t.fillRect(e,g,h,l),t.strokeRect(e,g,h,l),t.fillStyle=a.backgroundColor,t.fillRect(i,g+1,h-2,l-2))}t.fillStyle=this.labelTextColors[i]}drawBody(t,e,i){const{body:s}=this,{bodySpacing:n,bodyAlign:o,displayColors:a,boxHeight:r,boxWidth:l,boxPadding:h}=i,c=Si(i.bodyFont);let d=c.lineHeight,f=0;const g=Oi(i.rtl,this.x,this.width),p=function(i){e.fillText(i,g.x(t.x+f),t.y+d/2),t.y+=d+n},m=g.textAlign(o);let x,b,_,y,v,M,w;for(e.textAlign=o,e.textBaseline="middle",e.font=c.string,t.x=Ea(this,m,i),e.fillStyle=i.bodyColor,u(this.beforeBody,p),f=a&&"right"!==m?"center"===o?l/2+h:l+2+h:0,y=0,M=s.length;y0&&e.stroke()}_updateAnimationTarget(t){const e=this.chart,i=this.$animations,s=i&&i.x,n=i&&i.y;if(s||n){const i=Sa[t.position].call(this,this._active,this._eventPosition);if(!i)return;const o=this._size=Oa(this,t),a=Object.assign({},i,this._size),r=Ta(e,t,a),l=La(t,a,r,e);s._to===l.x&&n._to===l.y||(this.xAlign=r.xAlign,this.yAlign=r.yAlign,this.width=o.width,this.height=o.height,this.caretX=i.x,this.caretY=i.y,this._resolveAnimations().update(this,l))}}_willRender(){return!!this.opacity}draw(t){const e=this.options.setContext(this.getContext());let i=this.opacity;if(!i)return;this._updateAnimationTarget(e);const s={width:this.width,height:this.height},n={x:this.x,y:this.y};i=Math.abs(i)<.001?0:i;const o=ki(e.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&a&&(t.save(),t.globalAlpha=i,this.drawBackground(n,t,s,e),Ai(t,e.textDirection),n.y+=o.top,this.drawTitle(n,t,e),this.drawBody(n,t,e),this.drawFooter(n,t,e),Ti(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const i=this._active,s=t.map((({datasetIndex:t,index:e})=>{const i=this.chart.getDatasetMeta(t);if(!i)throw new Error("Cannot find a dataset at index "+t);return{datasetIndex:t,element:i.data[e],index:e}})),n=!f(i,s),o=this._positionChanged(s,e);(n||o)&&(this._active=s,this._eventPosition=e,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,e,i=!0){if(e&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const s=this.options,n=this._active||[],o=this._getActiveElements(t,n,e,i),a=this._positionChanged(o,t),r=e||!f(o,n)||a;return r&&(this._active=o,(s.enabled||s.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),r}_getActiveElements(t,e,i,s){const n=this.options;if("mouseout"===t.type)return[];if(!s)return e.filter((t=>this.chart.data.datasets[t.datasetIndex]&&void 0!==this.chart.getDatasetMeta(t.datasetIndex).controller.getParsed(t.index)));const o=this.chart.getElementsAtEventForMode(t,n.mode,n,i);return n.reverse&&o.reverse(),o}_positionChanged(t,e){const{caretX:i,caretY:s,options:n}=this,o=Sa[n.position].call(this,t,e);return!1!==o&&(i!==o.x||s!==o.y)}}var Ba={id:"tooltip",_element:Va,positioners:Sa,afterInit(t,e,i){i&&(t.tooltip=new Va({chart:t,options:i}))},beforeUpdate(t,e,i){t.tooltip&&t.tooltip.initialize(i)},reset(t,e,i){t.tooltip&&t.tooltip.initialize(i)},afterDraw(t){const e=t.tooltip;if(e&&e._willRender()){const i={tooltip:e};if(!1===t.notifyPlugins("beforeTooltipDraw",{...i,cancelable:!0}))return;e.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",i)}},afterEvent(t,e){if(t.tooltip){const i=e.replay;t.tooltip.handleEvent(e.event,i,e.inChartArea)&&(e.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,e)=>e.bodyFont.size,boxWidth:(t,e)=>e.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:za},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:t=>"filter"!==t&&"itemSort"!==t&&"external"!==t,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};return An.register(Yn,jo,fo,t),An.helpers={...Wi},An._adapters=Rn,An.Animation=Cs,An.Animations=Os,An.animator=bt,An.controllers=en.controllers.items,An.DatasetController=Ns,An.Element=Hs,An.elements=fo,An.Interaction=Xi,An.layouts=as,An.platforms=Ss,An.Scale=Js,An.Ticks=ae,Object.assign(An,Yn,jo,fo,t,Ss),An.Chart=An,"undefined"!=typeof window&&(window.Chart=An),An})); + */function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),s=Ft(s),t.r=s[0],t.g=s[1],t.b=s[2]}}function qt(t,e){return t?Object.assign(e||{},t):t}function Kt(t){var e={r:0,g:0,b:0,a:255};return Array.isArray(t)?t.length>=3&&(e={r:t[0],g:t[1],b:t[2],a:255},t.length>3&&(e.a=Mt(t[3]))):(e=qt(t,{r:0,g:0,b:0,a:1})).a=Mt(e.a),e}function Gt(t){return"r"===t.charAt(0)?function(t){const e=$t.exec(t);let i,s,n,o=255;if(e){if(e[7]!==i){const t=+e[7];o=e[8]?vt(t):yt(255*t,0,255)}return i=+e[1],s=+e[3],n=+e[5],i=255&(e[2]?vt(i):yt(i,0,255)),s=255&(e[4]?vt(s):yt(s,0,255)),n=255&(e[6]?vt(n):yt(n,0,255)),{r:i,g:s,b:n,a:o}}}(t):Bt(t)}class Jt{constructor(t){if(t instanceof Jt)return t;const e=typeof t;let i;var s,n,o;"object"===e?i=Kt(t):"string"===e&&(o=(s=t).length,"#"===s[0]&&(4===o||5===o?n={r:255&17*St[s[1]],g:255&17*St[s[2]],b:255&17*St[s[3]],a:5===o?17*St[s[4]]:255}:7!==o&&9!==o||(n={r:St[s[1]]<<4|St[s[2]],g:St[s[3]]<<4|St[s[4]],b:St[s[5]]<<4|St[s[6]],a:9===o?St[s[7]]<<4|St[s[8]]:255})),i=n||jt(t)||Gt(t)),this._rgb=i,this._valid=!!i}get valid(){return this._valid}get rgb(){var t=qt(this._rgb);return t&&(t.a=wt(t.a)),t}set rgb(t){this._rgb=Kt(t)}rgbString(){return this._valid?(t=this._rgb)&&(t.a<255?`rgba(${t.r}, ${t.g}, ${t.b}, ${wt(t.a)})`:`rgb(${t.r}, ${t.g}, ${t.b})`):void 0;var t}hexString(){return this._valid?At(this._rgb):void 0}hslString(){return this._valid?function(t){if(!t)return;const e=It(t),i=e[0],s=kt(e[1]),n=kt(e[2]);return t.a<255?`hsla(${i}, ${s}%, ${n}%, ${wt(t.a)})`:`hsl(${i}, ${s}%, ${n}%)`}(this._rgb):void 0}mix(t,e){if(t){const i=this.rgb,s=t.rgb;let n;const o=e===n?.5:e,a=2*o-1,r=i.a-s.a,l=((a*r==-1?a:(a+r)/(1+a*r))+1)/2;n=1-l,i.r=255&l*i.r+n*s.r+.5,i.g=255&l*i.g+n*s.g+.5,i.b=255&l*i.b+n*s.b+.5,i.a=o*i.a+(1-o)*s.a,this.rgb=i}return this}interpolate(t,e){return t&&(this._rgb=function(t,e,i){const s=Ut(wt(t.r)),n=Ut(wt(t.g)),o=Ut(wt(t.b));return{r:Mt(Yt(s+i*(Ut(wt(e.r))-s))),g:Mt(Yt(n+i*(Ut(wt(e.g))-n))),b:Mt(Yt(o+i*(Ut(wt(e.b))-o))),a:t.a+i*(e.a-t.a)}}(this._rgb,t._rgb,e)),this}clone(){return new Jt(this.rgb)}alpha(t){return this._rgb.a=Mt(t),this}clearer(t){return this._rgb.a*=1-t,this}greyscale(){const t=this._rgb,e=_t(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=e,this}opaquer(t){return this._rgb.a*=1+t,this}negate(){const t=this._rgb;return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,this}lighten(t){return Xt(this._rgb,2,t),this}darken(t){return Xt(this._rgb,2,-t),this}saturate(t){return Xt(this._rgb,1,t),this}desaturate(t){return Xt(this._rgb,1,-t),this}rotate(t){return function(t,e){var i=It(t);i[0]=Vt(i[0]+e),i=Ft(i),t.r=i[0],t.g=i[1],t.b=i[2]}(this._rgb,t),this}}function Zt(t){if(t&&"object"==typeof t){const e=t.toString();return"[object CanvasPattern]"===e||"[object CanvasGradient]"===e}return!1}function Qt(t){return Zt(t)?t:new Jt(t)}function te(t){return Zt(t)?t:new Jt(t).saturate(.5).darken(.1).hexString()}const ee=["x","y","borderWidth","radius","tension"],ie=["color","borderColor","backgroundColor"];const se=new Map;function ne(t,e,i){return function(t,e){e=e||{};const i=t+JSON.stringify(e);let s=se.get(i);return s||(s=new Intl.NumberFormat(t,e),se.set(i,s)),s}(e,i).format(t)}const oe={values:t=>n(t)?t:""+t,numeric(t,e,i){if(0===t)return"0";const s=this.chart.options.locale;let n,o=t;if(i.length>1){const e=Math.max(Math.abs(i[0].value),Math.abs(i[i.length-1].value));(e<1e-4||e>1e15)&&(n="scientific"),o=function(t,e){let i=e.length>3?e[2].value-e[1].value:e[1].value-e[0].value;Math.abs(i)>=1&&t!==Math.floor(t)&&(i=t-Math.floor(t));return i}(t,i)}const a=z(Math.abs(o)),r=isNaN(a)?1:Math.max(Math.min(-1*Math.floor(a),20),0),l={notation:n,minimumFractionDigits:r,maximumFractionDigits:r};return Object.assign(l,this.options.ticks.format),ne(t,s,l)},logarithmic(t,e,i){if(0===t)return"0";const s=i[e].significand||t/Math.pow(10,Math.floor(z(t)));return[1,2,3,5,10,15].includes(s)||e>.8*i.length?oe.numeric.call(this,t,e,i):""}};var ae={formatters:oe};const re=Object.create(null),le=Object.create(null);function he(t,e){if(!e)return t;const i=e.split(".");for(let e=0,s=i.length;et.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(t,e)=>te(e.backgroundColor),this.hoverBorderColor=(t,e)=>te(e.borderColor),this.hoverColor=(t,e)=>te(e.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(t),this.apply(e)}set(t,e){return ce(this,t,e)}get(t){return he(this,t)}describe(t,e){return ce(le,t,e)}override(t,e){return ce(re,t,e)}route(t,e,i,s){const n=he(this,t),a=he(this,i),r="_"+e;Object.defineProperties(n,{[r]:{value:n[e],writable:!0},[e]:{enumerable:!0,get(){const t=this[r],e=a[s];return o(t)?Object.assign({},e,t):l(t,e)},set(t){this[r]=t}}})}apply(t){t.forEach((t=>t(this)))}}var ue=new de({_scriptable:t=>!t.startsWith("on"),_indexable:t=>"events"!==t,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[function(t){t.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),t.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:t=>"onProgress"!==t&&"onComplete"!==t&&"fn"!==t}),t.set("animations",{colors:{type:"color",properties:ie},numbers:{type:"number",properties:ee}}),t.describe("animations",{_fallback:"animation"}),t.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>0|t}}}})},function(t){t.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})},function(t){t.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:ae.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),t.route("scale.ticks","color","","color"),t.route("scale.grid","color","","borderColor"),t.route("scale.border","color","","borderColor"),t.route("scale.title","color","","color"),t.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&"callback"!==t&&"parser"!==t,_indexable:t=>"borderDash"!==t&&"tickBorderDash"!==t&&"dash"!==t}),t.describe("scales",{_fallback:"scale"}),t.describe("scale.ticks",{_scriptable:t=>"backdropPadding"!==t&&"callback"!==t,_indexable:t=>"backdropPadding"!==t})}]);function fe(){return"undefined"!=typeof window&&"undefined"!=typeof document}function ge(t){let e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e}function pe(t,e,i){let s;return"string"==typeof t?(s=parseInt(t,10),-1!==t.indexOf("%")&&(s=s/100*e.parentNode[i])):s=t,s}const me=t=>t.ownerDocument.defaultView.getComputedStyle(t,null);function xe(t,e){return me(t).getPropertyValue(e)}const be=["top","right","bottom","left"];function _e(t,e,i){const s={};i=i?"-"+i:"";for(let n=0;n<4;n++){const o=be[n];s[o]=parseFloat(t[e+"-"+o+i])||0}return s.width=s.left+s.right,s.height=s.top+s.bottom,s}const ye=(t,e,i)=>(t>0||e>0)&&(!i||!i.shadowRoot);function ve(t,e){if("native"in t)return t;const{canvas:i,currentDevicePixelRatio:s}=e,n=me(i),o="border-box"===n.boxSizing,a=_e(n,"padding"),r=_e(n,"border","width"),{x:l,y:h,box:c}=function(t,e){const i=t.touches,s=i&&i.length?i[0]:t,{offsetX:n,offsetY:o}=s;let a,r,l=!1;if(ye(n,o,t.target))a=n,r=o;else{const t=e.getBoundingClientRect();a=s.clientX-t.left,r=s.clientY-t.top,l=!0}return{x:a,y:r,box:l}}(t,i),d=a.left+(c&&r.left),u=a.top+(c&&r.top);let{width:f,height:g}=e;return o&&(f-=a.width+r.width,g-=a.height+r.height),{x:Math.round((l-d)/f*i.width/s),y:Math.round((h-u)/g*i.height/s)}}const Me=t=>Math.round(10*t)/10;function we(t,e,i,s){const n=me(t),o=_e(n,"margin"),a=pe(n.maxWidth,t,"clientWidth")||T,r=pe(n.maxHeight,t,"clientHeight")||T,l=function(t,e,i){let s,n;if(void 0===e||void 0===i){const o=t&&ge(t);if(o){const t=o.getBoundingClientRect(),a=me(o),r=_e(a,"border","width"),l=_e(a,"padding");e=t.width-l.width-r.width,i=t.height-l.height-r.height,s=pe(a.maxWidth,o,"clientWidth"),n=pe(a.maxHeight,o,"clientHeight")}else e=t.clientWidth,i=t.clientHeight}return{width:e,height:i,maxWidth:s||T,maxHeight:n||T}}(t,e,i);let{width:h,height:c}=l;if("content-box"===n.boxSizing){const t=_e(n,"border","width"),e=_e(n,"padding");h-=e.width+t.width,c-=e.height+t.height}h=Math.max(0,h-o.width),c=Math.max(0,s?h/s:c-o.height),h=Me(Math.min(h,a,l.maxWidth)),c=Me(Math.min(c,r,l.maxHeight)),h&&!c&&(c=Me(h/2));return(void 0!==e||void 0!==i)&&s&&l.height&&c>l.height&&(c=l.height,h=Me(Math.floor(c*s))),{width:h,height:c}}function ke(t,e,i){const s=e||1,n=Me(t.height*s),o=Me(t.width*s);t.height=Me(t.height),t.width=Me(t.width);const a=t.canvas;return a.style&&(i||!a.style.height&&!a.style.width)&&(a.style.height=`${t.height}px`,a.style.width=`${t.width}px`),(t.currentDevicePixelRatio!==s||a.height!==n||a.width!==o)&&(t.currentDevicePixelRatio=s,a.height=n,a.width=o,t.ctx.setTransform(s,0,0,s,0,0),!0)}const Se=function(){let t=!1;try{const e={get passive(){return t=!0,!1}};fe()&&(window.addEventListener("test",null,e),window.removeEventListener("test",null,e))}catch(t){}return t}();function Pe(t,e){const i=xe(t,e),s=i&&i.match(/^(\d+)(\.\d+)?px$/);return s?+s[1]:void 0}function De(t){return!t||s(t.size)||s(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}function Ce(t,e,i,s,n){let o=e[n];return o||(o=e[n]=t.measureText(n).width,i.push(n)),o>s&&(s=o),s}function Oe(t,e,i,s){let o=(s=s||{}).data=s.data||{},a=s.garbageCollect=s.garbageCollect||[];s.font!==e&&(o=s.data={},a=s.garbageCollect=[],s.font=e),t.save(),t.font=e;let r=0;const l=i.length;let h,c,d,u,f;for(h=0;hi.length){for(h=0;h0&&t.stroke()}}function Re(t,e,i){return i=i||.5,!e||t&&t.x>e.left-i&&t.xe.top-i&&t.y0&&""!==r.strokeColor;let c,d;for(t.save(),t.font=a.string,function(t,e){e.translation&&t.translate(e.translation[0],e.translation[1]),s(e.rotation)||t.rotate(e.rotation),e.color&&(t.fillStyle=e.color),e.textAlign&&(t.textAlign=e.textAlign),e.textBaseline&&(t.textBaseline=e.textBaseline)}(t,r),c=0;ct[0])){const o=i||t;void 0===s&&(s=ti("_fallback",t));const a={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:o,_fallback:s,_getTarget:n,override:i=>je([i,...t],e,o,s)};return new Proxy(a,{deleteProperty:(e,i)=>(delete e[i],delete e._keys,delete t[0][i],!0),get:(i,s)=>qe(i,s,(()=>function(t,e,i,s){let n;for(const o of e)if(n=ti(Ue(o,t),i),void 0!==n)return Xe(t,n)?Ze(i,s,t,n):n}(s,e,t,i))),getOwnPropertyDescriptor:(t,e)=>Reflect.getOwnPropertyDescriptor(t._scopes[0],e),getPrototypeOf:()=>Reflect.getPrototypeOf(t[0]),has:(t,e)=>ei(t).includes(e),ownKeys:t=>ei(t),set(t,e,i){const s=t._storage||(t._storage=n());return t[e]=s[e]=i,delete t._keys,!0}})}function $e(t,e,i,s){const a={_cacheable:!1,_proxy:t,_context:e,_subProxy:i,_stack:new Set,_descriptors:Ye(t,s),setContext:e=>$e(t,e,i,s),override:n=>$e(t.override(n),e,i,s)};return new Proxy(a,{deleteProperty:(e,i)=>(delete e[i],delete t[i],!0),get:(t,e,i)=>qe(t,e,(()=>function(t,e,i){const{_proxy:s,_context:a,_subProxy:r,_descriptors:l}=t;let h=s[e];S(h)&&l.isScriptable(e)&&(h=function(t,e,i,s){const{_proxy:n,_context:o,_subProxy:a,_stack:r}=i;if(r.has(t))throw new Error("Recursion detected: "+Array.from(r).join("->")+"->"+t);r.add(t);let l=e(o,a||s);r.delete(t),Xe(t,l)&&(l=Ze(n._scopes,n,t,l));return l}(e,h,t,i));n(h)&&h.length&&(h=function(t,e,i,s){const{_proxy:n,_context:a,_subProxy:r,_descriptors:l}=i;if(void 0!==a.index&&s(t))return e[a.index%e.length];if(o(e[0])){const i=e,s=n._scopes.filter((t=>t!==i));e=[];for(const o of i){const i=Ze(s,n,t,o);e.push($e(i,a,r&&r[t],l))}}return e}(e,h,t,l.isIndexable));Xe(e,h)&&(h=$e(h,a,r&&r[e],l));return h}(t,e,i))),getOwnPropertyDescriptor:(e,i)=>e._descriptors.allKeys?Reflect.has(t,i)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(t,i),getPrototypeOf:()=>Reflect.getPrototypeOf(t),has:(e,i)=>Reflect.has(t,i),ownKeys:()=>Reflect.ownKeys(t),set:(e,i,s)=>(t[i]=s,delete e[i],!0)})}function Ye(t,e={scriptable:!0,indexable:!0}){const{_scriptable:i=e.scriptable,_indexable:s=e.indexable,_allKeys:n=e.allKeys}=t;return{allKeys:n,scriptable:i,indexable:s,isScriptable:S(i)?i:()=>i,isIndexable:S(s)?s:()=>s}}const Ue=(t,e)=>t?t+w(e):e,Xe=(t,e)=>o(e)&&"adapters"!==t&&(null===Object.getPrototypeOf(e)||e.constructor===Object);function qe(t,e,i){if(Object.prototype.hasOwnProperty.call(t,e)||"constructor"===e)return t[e];const s=i();return t[e]=s,s}function Ke(t,e,i){return S(t)?t(e,i):t}const Ge=(t,e)=>!0===t?e:"string"==typeof t?M(e,t):void 0;function Je(t,e,i,s,n){for(const o of e){const e=Ge(i,o);if(e){t.add(e);const o=Ke(e._fallback,i,n);if(void 0!==o&&o!==i&&o!==s)return o}else if(!1===e&&void 0!==s&&i!==s)return null}return!1}function Ze(t,e,i,s){const a=e._rootScopes,r=Ke(e._fallback,i,s),l=[...t,...a],h=new Set;h.add(s);let c=Qe(h,l,i,r||i,s);return null!==c&&((void 0===r||r===i||(c=Qe(h,l,r,c,s),null!==c))&&je(Array.from(h),[""],a,r,(()=>function(t,e,i){const s=t._getTarget();e in s||(s[e]={});const a=s[e];if(n(a)&&o(i))return i;return a||{}}(e,i,s))))}function Qe(t,e,i,s,n){for(;i;)i=Je(t,e,i,s,n);return i}function ti(t,e){for(const i of e){if(!i)continue;const e=i[t];if(void 0!==e)return e}}function ei(t){let e=t._keys;return e||(e=t._keys=function(t){const e=new Set;for(const i of t)for(const t of Object.keys(i).filter((t=>!t.startsWith("_"))))e.add(t);return Array.from(e)}(t._scopes)),e}function ii(t,e,i,s){const{iScale:n}=t,{key:o="r"}=this._parsing,a=new Array(s);let r,l,h,c;for(r=0,l=s;re"x"===t?"y":"x";function ai(t,e,i,s){const n=t.skip?e:t,o=e,a=i.skip?e:i,r=q(o,n),l=q(a,o);let h=r/(r+l),c=l/(r+l);h=isNaN(h)?0:h,c=isNaN(c)?0:c;const d=s*h,u=s*c;return{previous:{x:o.x-d*(a.x-n.x),y:o.y-d*(a.y-n.y)},next:{x:o.x+u*(a.x-n.x),y:o.y+u*(a.y-n.y)}}}function ri(t,e="x"){const i=oi(e),s=t.length,n=Array(s).fill(0),o=Array(s);let a,r,l,h=ni(t,0);for(a=0;a!t.skip))),"monotone"===e.cubicInterpolationMode)ri(t,n);else{let i=s?t[t.length-1]:t[0];for(o=0,a=t.length;o0===t||1===t,di=(t,e,i)=>-Math.pow(2,10*(t-=1))*Math.sin((t-e)*O/i),ui=(t,e,i)=>Math.pow(2,-10*t)*Math.sin((t-e)*O/i)+1,fi={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>-t*(t-2),easeInOutQuad:t=>(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1),easeInCubic:t=>t*t*t,easeOutCubic:t=>(t-=1)*t*t+1,easeInOutCubic:t=>(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2),easeInQuart:t=>t*t*t*t,easeOutQuart:t=>-((t-=1)*t*t*t-1),easeInOutQuart:t=>(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2),easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>(t-=1)*t*t*t*t+1,easeInOutQuint:t=>(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2),easeInSine:t=>1-Math.cos(t*E),easeOutSine:t=>Math.sin(t*E),easeInOutSine:t=>-.5*(Math.cos(C*t)-1),easeInExpo:t=>0===t?0:Math.pow(2,10*(t-1)),easeOutExpo:t=>1===t?1:1-Math.pow(2,-10*t),easeInOutExpo:t=>ci(t)?t:t<.5?.5*Math.pow(2,10*(2*t-1)):.5*(2-Math.pow(2,-10*(2*t-1))),easeInCirc:t=>t>=1?t:-(Math.sqrt(1-t*t)-1),easeOutCirc:t=>Math.sqrt(1-(t-=1)*t),easeInOutCirc:t=>(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1),easeInElastic:t=>ci(t)?t:di(t,.075,.3),easeOutElastic:t=>ci(t)?t:ui(t,.075,.3),easeInOutElastic(t){const e=.1125;return ci(t)?t:t<.5?.5*di(2*t,e,.45):.5+.5*ui(2*t-1,e,.45)},easeInBack(t){const e=1.70158;return t*t*((e+1)*t-e)},easeOutBack(t){const e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack(t){let e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:t=>1-fi.easeOutBounce(1-t),easeOutBounce(t){const e=7.5625,i=2.75;return t<1/i?e*t*t:t<2/i?e*(t-=1.5/i)*t+.75:t<2.5/i?e*(t-=2.25/i)*t+.9375:e*(t-=2.625/i)*t+.984375},easeInOutBounce:t=>t<.5?.5*fi.easeInBounce(2*t):.5*fi.easeOutBounce(2*t-1)+.5};function gi(t,e,i,s){return{x:t.x+i*(e.x-t.x),y:t.y+i*(e.y-t.y)}}function pi(t,e,i,s){return{x:t.x+i*(e.x-t.x),y:"middle"===s?i<.5?t.y:e.y:"after"===s?i<1?t.y:e.y:i>0?e.y:t.y}}function mi(t,e,i,s){const n={x:t.cp2x,y:t.cp2y},o={x:e.cp1x,y:e.cp1y},a=gi(t,n,i),r=gi(n,o,i),l=gi(o,e,i),h=gi(a,r,i),c=gi(r,l,i);return gi(h,c,i)}const xi=/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/,bi=/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/;function _i(t,e){const i=(""+t).match(xi);if(!i||"normal"===i[1])return 1.2*e;switch(t=+i[2],i[3]){case"px":return t;case"%":t/=100}return e*t}const yi=t=>+t||0;function vi(t,e){const i={},s=o(e),n=s?Object.keys(e):e,a=o(t)?s?i=>l(t[i],t[e[i]]):e=>t[e]:()=>t;for(const t of n)i[t]=yi(a(t));return i}function Mi(t){return vi(t,{top:"y",right:"x",bottom:"y",left:"x"})}function wi(t){return vi(t,["topLeft","topRight","bottomLeft","bottomRight"])}function ki(t){const e=Mi(t);return e.width=e.left+e.right,e.height=e.top+e.bottom,e}function Si(t,e){t=t||{},e=e||ue.font;let i=l(t.size,e.size);"string"==typeof i&&(i=parseInt(i,10));let s=l(t.style,e.style);s&&!(""+s).match(bi)&&(console.warn('Invalid font style specified: "'+s+'"'),s=void 0);const n={family:l(t.family,e.family),lineHeight:_i(l(t.lineHeight,e.lineHeight),i),size:i,style:s,weight:l(t.weight,e.weight),string:""};return n.string=De(n),n}function Pi(t,e,i,s){let o,a,r,l=!0;for(o=0,a=t.length;oi&&0===t?0:t+e;return{min:a(s,-Math.abs(o)),max:a(n,o)}}function Ci(t,e){return Object.assign(Object.create(t),e)}function Oi(t,e,i){return t?function(t,e){return{x:i=>t+t+e-i,setWidth(t){e=t},textAlign:t=>"center"===t?t:"right"===t?"left":"right",xPlus:(t,e)=>t-e,leftForLtr:(t,e)=>t-e}}(e,i):{x:t=>t,setWidth(t){},textAlign:t=>t,xPlus:(t,e)=>t+e,leftForLtr:(t,e)=>t}}function Ai(t,e){let i,s;"ltr"!==e&&"rtl"!==e||(i=t.canvas.style,s=[i.getPropertyValue("direction"),i.getPropertyPriority("direction")],i.setProperty("direction",e,"important"),t.prevTextDirection=s)}function Ti(t,e){void 0!==e&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",e[0],e[1]))}function Li(t){return"angle"===t?{between:J,compare:K,normalize:G}:{between:tt,compare:(t,e)=>t-e,normalize:t=>t}}function Ei({start:t,end:e,count:i,loop:s,style:n}){return{start:t%i,end:e%i,loop:s&&(e-t+1)%i==0,style:n}}function Ri(t,e,i){if(!i)return[t];const{property:s,start:n,end:o}=i,a=e.length,{compare:r,between:l,normalize:h}=Li(s),{start:c,end:d,loop:u,style:f}=function(t,e,i){const{property:s,start:n,end:o}=i,{between:a,normalize:r}=Li(s),l=e.length;let h,c,{start:d,end:u,loop:f}=t;if(f){for(d+=l,u+=l,h=0,c=l;hb||l(n,x,p)&&0!==r(n,x),v=()=>!b||0===r(o,p)||l(o,x,p);for(let t=c,i=c;t<=d;++t)m=e[t%a],m.skip||(p=h(m[s]),p!==x&&(b=l(p,n,o),null===_&&y()&&(_=0===r(p,n)?t:i),null!==_&&v()&&(g.push(Ei({start:_,end:t,loop:u,count:a,style:f})),_=null),i=t,x=p));return null!==_&&g.push(Ei({start:_,end:d,loop:u,count:a,style:f})),g}function Ii(t,e){const i=[],s=t.segments;for(let n=0;nn&&t[o%e].skip;)o--;return o%=e,{start:n,end:o}}(i,n,o,s);if(!0===s)return Fi(t,[{start:a,end:r,loop:o}],i,e);return Fi(t,function(t,e,i,s){const n=t.length,o=[];let a,r=e,l=t[e];for(a=e+1;a<=i;++a){const i=t[a%n];i.skip||i.stop?l.skip||(s=!1,o.push({start:e%n,end:(a-1)%n,loop:s}),e=r=i.stop?a:null):(r=a,l.skip&&(e=a)),l=i}return null!==r&&o.push({start:e%n,end:r%n,loop:s}),o}(i,a,r!s(t[e.axis])));n.lo-=Math.max(0,a);const r=i.slice(n.hi).findIndex((t=>!s(t[e.axis])));n.hi+=Math.max(0,r)}return n}if(o._sharedOptions){const t=a[0],s="function"==typeof t.getRange&&t.getRange(e);if(s){const t=r(a,e,i-s),n=r(a,e,i+s);return{lo:t.lo,hi:n.hi}}}}return{lo:0,hi:a.length-1}}function $i(t,e,i,s,n){const o=t.getSortedVisibleDatasetMetas(),a=i[e];for(let t=0,i=o.length;t{t[a]&&t[a](e[i],n)&&(o.push({element:t,datasetIndex:s,index:l}),r=r||t.inRange(e.x,e.y,n))})),s&&!r?[]:o}var Ki={evaluateInteractionItems:$i,modes:{index(t,e,i,s){const n=ve(e,t),o=i.axis||"x",a=i.includeInvisible||!1,r=i.intersect?Yi(t,n,o,s,a):Xi(t,n,o,!1,s,a),l=[];return r.length?(t.getSortedVisibleDatasetMetas().forEach((t=>{const e=r[0].index,i=t.data[e];i&&!i.skip&&l.push({element:i,datasetIndex:t.index,index:e})})),l):[]},dataset(t,e,i,s){const n=ve(e,t),o=i.axis||"xy",a=i.includeInvisible||!1;let r=i.intersect?Yi(t,n,o,s,a):Xi(t,n,o,!1,s,a);if(r.length>0){const e=r[0].datasetIndex,i=t.getDatasetMeta(e).data;r=[];for(let t=0;tYi(t,ve(e,t),i.axis||"xy",s,i.includeInvisible||!1),nearest(t,e,i,s){const n=ve(e,t),o=i.axis||"xy",a=i.includeInvisible||!1;return Xi(t,n,o,i.intersect,s,a)},x:(t,e,i,s)=>qi(t,ve(e,t),"x",i.intersect,s),y:(t,e,i,s)=>qi(t,ve(e,t),"y",i.intersect,s)}};const Gi=["left","top","right","bottom"];function Ji(t,e){return t.filter((t=>t.pos===e))}function Zi(t,e){return t.filter((t=>-1===Gi.indexOf(t.pos)&&t.box.axis===e))}function Qi(t,e){return t.sort(((t,i)=>{const s=e?i:t,n=e?t:i;return s.weight===n.weight?s.index-n.index:s.weight-n.weight}))}function ts(t,e){const i=function(t){const e={};for(const i of t){const{stack:t,pos:s,stackWeight:n}=i;if(!t||!Gi.includes(s))continue;const o=e[t]||(e[t]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=n}return e}(t),{vBoxMaxWidth:s,hBoxMaxHeight:n}=e;let o,a,r;for(o=0,a=t.length;o{s[t]=Math.max(e[t],i[t])})),s}return s(t?["left","right"]:["top","bottom"])}function os(t,e,i,s){const n=[];let o,a,r,l,h,c;for(o=0,a=t.length,h=0;ot.box.fullSize)),!0),s=Qi(Ji(e,"left"),!0),n=Qi(Ji(e,"right")),o=Qi(Ji(e,"top"),!0),a=Qi(Ji(e,"bottom")),r=Zi(e,"x"),l=Zi(e,"y");return{fullSize:i,leftAndTop:s.concat(o),rightAndBottom:n.concat(l).concat(a).concat(r),chartArea:Ji(e,"chartArea"),vertical:s.concat(n).concat(l),horizontal:o.concat(a).concat(r)}}(t.boxes),l=r.vertical,h=r.horizontal;u(t.boxes,(t=>{"function"==typeof t.beforeLayout&&t.beforeLayout()}));const c=l.reduce(((t,e)=>e.box.options&&!1===e.box.options.display?t:t+1),0)||1,d=Object.freeze({outerWidth:e,outerHeight:i,padding:n,availableWidth:o,availableHeight:a,vBoxMaxWidth:o/2/c,hBoxMaxHeight:a/2}),f=Object.assign({},n);is(f,ki(s));const g=Object.assign({maxPadding:f,w:o,h:a,x:n.left,y:n.top},n),p=ts(l.concat(h),d);os(r.fullSize,g,d,p),os(l,g,d,p),os(h,g,d,p)&&os(l,g,d,p),function(t){const e=t.maxPadding;function i(i){const s=Math.max(e[i]-t[i],0);return t[i]+=s,s}t.y+=i("top"),t.x+=i("left"),i("right"),i("bottom")}(g),rs(r.leftAndTop,g,d,p),g.x+=g.w,g.y+=g.h,rs(r.rightAndBottom,g,d,p),t.chartArea={left:g.left,top:g.top,right:g.left+g.w,bottom:g.top+g.h,height:g.h,width:g.w},u(r.chartArea,(e=>{const i=e.box;Object.assign(i,t.chartArea),i.update(g.w,g.h,{left:0,top:0,right:0,bottom:0})}))}};class hs{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,i){}removeEventListener(t,e,i){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,i,s){return e=Math.max(0,e||t.width),i=i||t.height,{width:e,height:Math.max(0,s?Math.floor(e/s):i)}}isAttached(t){return!0}updateConfig(t){}}class cs extends hs{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const ds="$chartjs",us={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},fs=t=>null===t||""===t;const gs=!!Se&&{passive:!0};function ps(t,e,i){t&&t.canvas&&t.canvas.removeEventListener(e,i,gs)}function ms(t,e){for(const i of t)if(i===e||i.contains(e))return!0}function xs(t,e,i){const s=t.canvas,n=new MutationObserver((t=>{let e=!1;for(const i of t)e=e||ms(i.addedNodes,s),e=e&&!ms(i.removedNodes,s);e&&i()}));return n.observe(document,{childList:!0,subtree:!0}),n}function bs(t,e,i){const s=t.canvas,n=new MutationObserver((t=>{let e=!1;for(const i of t)e=e||ms(i.removedNodes,s),e=e&&!ms(i.addedNodes,s);e&&i()}));return n.observe(document,{childList:!0,subtree:!0}),n}const _s=new Map;let ys=0;function vs(){const t=window.devicePixelRatio;t!==ys&&(ys=t,_s.forEach(((e,i)=>{i.currentDevicePixelRatio!==t&&e()})))}function Ms(t,e,i){const s=t.canvas,n=s&&ge(s);if(!n)return;const o=ct(((t,e)=>{const s=n.clientWidth;i(t,e),s{const e=t[0],i=e.contentRect.width,s=e.contentRect.height;0===i&&0===s||o(i,s)}));return a.observe(n),function(t,e){_s.size||window.addEventListener("resize",vs),_s.set(t,e)}(t,o),a}function ws(t,e,i){i&&i.disconnect(),"resize"===e&&function(t){_s.delete(t),_s.size||window.removeEventListener("resize",vs)}(t)}function ks(t,e,i){const s=t.canvas,n=ct((e=>{null!==t.ctx&&i(function(t,e){const i=us[t.type]||t.type,{x:s,y:n}=ve(t,e);return{type:i,chart:e,native:t,x:void 0!==s?s:null,y:void 0!==n?n:null}}(e,t))}),t);return function(t,e,i){t&&t.addEventListener(e,i,gs)}(s,e,n),n}class Ss extends hs{acquireContext(t,e){const i=t&&t.getContext&&t.getContext("2d");return i&&i.canvas===t?(function(t,e){const i=t.style,s=t.getAttribute("height"),n=t.getAttribute("width");if(t[ds]={initial:{height:s,width:n,style:{display:i.display,height:i.height,width:i.width}}},i.display=i.display||"block",i.boxSizing=i.boxSizing||"border-box",fs(n)){const e=Pe(t,"width");void 0!==e&&(t.width=e)}if(fs(s))if(""===t.style.height)t.height=t.width/(e||2);else{const e=Pe(t,"height");void 0!==e&&(t.height=e)}}(t,e),i):null}releaseContext(t){const e=t.canvas;if(!e[ds])return!1;const i=e[ds].initial;["height","width"].forEach((t=>{const n=i[t];s(n)?e.removeAttribute(t):e.setAttribute(t,n)}));const n=i.style||{};return Object.keys(n).forEach((t=>{e.style[t]=n[t]})),e.width=e.width,delete e[ds],!0}addEventListener(t,e,i){this.removeEventListener(t,e);const s=t.$proxies||(t.$proxies={}),n={attach:xs,detach:bs,resize:Ms}[e]||ks;s[e]=n(t,e,i)}removeEventListener(t,e){const i=t.$proxies||(t.$proxies={}),s=i[e];if(!s)return;({attach:ws,detach:ws,resize:ws}[e]||ps)(t,e,s),i[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,i,s){return we(t,e,i,s)}isAttached(t){const e=t&&ge(t);return!(!e||!e.isConnected)}}function Ps(t){return!fe()||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas?cs:Ss}var Ds=Object.freeze({__proto__:null,BasePlatform:hs,BasicPlatform:cs,DomPlatform:Ss,_detectPlatform:Ps});const Cs="transparent",Os={boolean:(t,e,i)=>i>.5?e:t,color(t,e,i){const s=Qt(t||Cs),n=s.valid&&Qt(e||Cs);return n&&n.valid?n.mix(s,i).hexString():e},number:(t,e,i)=>t+(e-t)*i};class As{constructor(t,e,i,s){const n=e[i];s=Pi([t.to,s,n,t.from]);const o=Pi([t.from,n,s]);this._active=!0,this._fn=t.fn||Os[t.type||typeof o],this._easing=fi[t.easing]||fi.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=i,this._from=o,this._to=s,this._promises=void 0}active(){return this._active}update(t,e,i){if(this._active){this._notify(!1);const s=this._target[this._prop],n=i-this._start,o=this._duration-n;this._start=i,this._duration=Math.floor(Math.max(o,t.duration)),this._total+=n,this._loop=!!t.loop,this._to=Pi([t.to,e,s,t.from]),this._from=Pi([t.from,s,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,i=this._duration,s=this._prop,n=this._from,o=this._loop,a=this._to;let r;if(this._active=n!==a&&(o||e1?2-r:r,r=this._easing(Math.min(1,Math.max(0,r))),this._target[s]=this._fn(n,a,r))}wait(){const t=this._promises||(this._promises=[]);return new Promise(((e,i)=>{t.push({res:e,rej:i})}))}_notify(t){const e=t?"res":"rej",i=this._promises||[];for(let t=0;t{const a=t[s];if(!o(a))return;const r={};for(const t of e)r[t]=a[t];(n(a.properties)&&a.properties||[s]).forEach((t=>{t!==s&&i.has(t)||i.set(t,r)}))}))}_animateOptions(t,e){const i=e.options,s=function(t,e){if(!e)return;let i=t.options;if(!i)return void(t.options=e);i.$shared&&(t.options=i=Object.assign({},i,{$shared:!1,$animations:{}}));return i}(t,i);if(!s)return[];const n=this._createAnimations(s,i);return i.$shared&&function(t,e){const i=[],s=Object.keys(e);for(let e=0;e{t.options=i}),(()=>{})),n}_createAnimations(t,e){const i=this._properties,s=[],n=t.$animations||(t.$animations={}),o=Object.keys(e),a=Date.now();let r;for(r=o.length-1;r>=0;--r){const l=o[r];if("$"===l.charAt(0))continue;if("options"===l){s.push(...this._animateOptions(t,e));continue}const h=e[l];let c=n[l];const d=i.get(l);if(c){if(d&&c.active()){c.update(d,h,a);continue}c.cancel()}d&&d.duration?(n[l]=c=new As(d,t,l,h),s.push(c)):t[l]=h}return s}update(t,e){if(0===this._properties.size)return void Object.assign(t,e);const i=this._createAnimations(t,e);return i.length?(bt.add(this._chart,i),!0):void 0}}function Ls(t,e){const i=t&&t.options||{},s=i.reverse,n=void 0===i.min?e:0,o=void 0===i.max?e:0;return{start:s?o:n,end:s?n:o}}function Es(t,e){const i=[],s=t._getSortedDatasetMetas(e);let n,o;for(n=0,o=s.length;n0||!i&&e<0)return n.index}return null}function Vs(t,e){const{chart:i,_cachedMeta:s}=t,n=i._stacks||(i._stacks={}),{iScale:o,vScale:a,index:r}=s,l=o.axis,h=a.axis,c=function(t,e,i){return`${t.id}.${e.id}.${i.stack||i.type}`}(o,a,s),d=e.length;let u;for(let t=0;ti[t].axis===e)).shift()}function Ws(t,e){const i=t.controller.index,s=t.vScale&&t.vScale.axis;if(s){e=e||t._parsed;for(const t of e){const e=t._stacks;if(!e||void 0===e[s]||void 0===e[s][i])return;delete e[s][i],void 0!==e[s]._visualValues&&void 0!==e[s]._visualValues[i]&&delete e[s]._visualValues[i]}}}const Ns=t=>"reset"===t||"none"===t,Hs=(t,e)=>e?t:Object.assign({},t);class js{static defaults={};static datasetElementType=null;static dataElementType=null;constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=Is(t.vScale,t),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(t){this.index!==t&&Ws(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,i=this.getDataset(),s=(t,e,i,s)=>"x"===t?e:"r"===t?s:i,n=e.xAxisID=l(i.xAxisID,Bs(t,"x")),o=e.yAxisID=l(i.yAxisID,Bs(t,"y")),a=e.rAxisID=l(i.rAxisID,Bs(t,"r")),r=e.indexAxis,h=e.iAxisID=s(r,n,o,a),c=e.vAxisID=s(r,o,n,a);e.xScale=this.getScaleForId(n),e.yScale=this.getScaleForId(o),e.rScale=this.getScaleForId(a),e.iScale=this.getScaleForId(h),e.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&rt(this._data,this),t._stacked&&Ws(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),i=this._data;if(o(e)){const t=this._cachedMeta;this._data=function(t,e){const{iScale:i,vScale:s}=e,n="x"===i.axis?"x":"y",o="x"===s.axis?"x":"y",a=Object.keys(t),r=new Array(a.length);let l,h,c;for(l=0,h=a.length;l0&&i._parsed[t-1];if(!1===this._parsing)i._parsed=s,i._sorted=!0,d=s;else{d=n(s[t])?this.parseArrayData(i,s,t,e):o(s[t])?this.parseObjectData(i,s,t,e):this.parsePrimitiveData(i,s,t,e);const a=()=>null===c[l]||f&&c[l]t&&!e.hidden&&e._stacked&&{keys:Es(i,!0),values:null})(e,i,this.chart),h={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:d}=function(t){const{min:e,max:i,minDefined:s,maxDefined:n}=t.getUserBounds();return{min:s?e:Number.NEGATIVE_INFINITY,max:n?i:Number.POSITIVE_INFINITY}}(r);let u,f;function g(){f=s[u];const e=f[r.axis];return!a(f[t.axis])||c>e||d=0;--u)if(!g()){this.updateRangeFromParsed(h,t,f,l);break}return h}getAllParsedValues(t){const e=this._cachedMeta._parsed,i=[];let s,n,o;for(s=0,n=e.length;s=0&&tthis.getContext(i,s,e)),c);return f.$shared&&(f.$shared=r,n[o]=Object.freeze(Hs(f,r))),f}_resolveAnimations(t,e,i){const s=this.chart,n=this._cachedDataOpts,o=`animation-${e}`,a=n[o];if(a)return a;let r;if(!1!==s.options.animation){const s=this.chart.config,n=s.datasetAnimationScopeKeys(this._type,e),o=s.getOptionScopes(this.getDataset(),n);r=s.createResolver(o,this.getContext(t,i,e))}const l=new Ts(s,r&&r.animations);return r&&r._cacheable&&(n[o]=Object.freeze(l)),l}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||Ns(t)||this.chart._animationsDisabled}_getSharedOptions(t,e){const i=this.resolveDataElementOptions(t,e),s=this._sharedOptions,n=this.getSharedOptions(i),o=this.includeOptions(e,n)||n!==s;return this.updateSharedOptions(n,e,i),{sharedOptions:n,includeOptions:o}}updateElement(t,e,i,s){Ns(s)?Object.assign(t,i):this._resolveAnimations(e,s).update(t,i)}updateSharedOptions(t,e,i){t&&!Ns(e)&&this._resolveAnimations(void 0,e).update(t,i)}_setStyle(t,e,i,s){t.active=s;const n=this.getStyle(e,s);this._resolveAnimations(e,i,s).update(t,{options:!s&&this.getSharedOptions(n)||n})}removeHoverStyle(t,e,i){this._setStyle(t,i,"active",!1)}setHoverStyle(t,e,i){this._setStyle(t,i,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,i=this._cachedMeta.data;for(const[t,e,i]of this._syncList)this[t](e,i);this._syncList=[];const s=i.length,n=e.length,o=Math.min(n,s);o&&this.parse(0,o),n>s?this._insertElements(s,n-s,t):n{for(t.length+=e,a=t.length-1;a>=o;a--)t[a]=t[a-e]};for(r(n),a=t;a{s[t]=i[t]&&i[t].active()?i[t]._to:this[t]})),s}}function Ys(t,e){const i=t.options.ticks,n=function(t){const e=t.options.offset,i=t._tickSize(),s=t._length/i+(e?0:1),n=t._maxLength/i;return Math.floor(Math.min(s,n))}(t),o=Math.min(i.maxTicksLimit||n,n),a=i.major.enabled?function(t){const e=[];let i,s;for(i=0,s=t.length;io)return function(t,e,i,s){let n,o=0,a=i[0];for(s=Math.ceil(s),n=0;nn)return e}return Math.max(n,1)}(a,e,o);if(r>0){let t,i;const n=r>1?Math.round((h-l)/(r-1)):null;for(Us(e,c,d,s(n)?0:l-n,l),t=0,i=r-1;t"top"===e||"left"===e?t[e]+i:t[e]-i,qs=(t,e)=>Math.min(e||t,t);function Ks(t,e){const i=[],s=t.length/e,n=t.length;let o=0;for(;oa+r)))return h}function Js(t){return t.drawTicks?t.tickLength:0}function Zs(t,e){if(!t.display)return 0;const i=Si(t.font,e),s=ki(t.padding);return(n(t.text)?t.text.length:1)*i.lineHeight+s.height}function Qs(t,e,i){let s=ut(t);return(i&&"right"!==e||!i&&"right"===e)&&(s=(t=>"left"===t?"right":"right"===t?"left":t)(s)),s}class tn extends $s{constructor(t){super(),this.id=t.id,this.type=t.type,this.options=void 0,this.ctx=t.ctx,this.chart=t.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(t){this.options=t.setContext(this.getContext()),this.axis=t.axis,this._userMin=this.parse(t.min),this._userMax=this.parse(t.max),this._suggestedMin=this.parse(t.suggestedMin),this._suggestedMax=this.parse(t.suggestedMax)}parse(t,e){return t}getUserBounds(){let{_userMin:t,_userMax:e,_suggestedMin:i,_suggestedMax:s}=this;return t=r(t,Number.POSITIVE_INFINITY),e=r(e,Number.NEGATIVE_INFINITY),i=r(i,Number.POSITIVE_INFINITY),s=r(s,Number.NEGATIVE_INFINITY),{min:r(t,i),max:r(e,s),minDefined:a(t),maxDefined:a(e)}}getMinMax(t){let e,{min:i,max:s,minDefined:n,maxDefined:o}=this.getUserBounds();if(n&&o)return{min:i,max:s};const a=this.getMatchingVisibleMetas();for(let r=0,l=a.length;rs?s:i,s=n&&i>s?i:s,{min:r(i,r(s,i)),max:r(s,r(i,s))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){d(this.options.beforeUpdate,[this])}update(t,e,i){const{beginAtZero:s,grace:n,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=i=Object.assign({left:0,right:0,top:0,bottom:0},i),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+i.left+i.right:this.height+i.top+i.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=Di(this,n,s),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const r=a=n||i<=1||!this.isHorizontal())return void(this.labelRotation=s);const h=this._getLabelSizes(),c=h.widest.width,d=h.highest.height,u=Z(this.chart.width-c,0,this.maxWidth);o=t.offset?this.maxWidth/i:u/(i-1),c+6>o&&(o=u/(i-(t.offset?.5:1)),a=this.maxHeight-Js(t.grid)-e.padding-Zs(t.title,this.chart.options.font),r=Math.sqrt(c*c+d*d),l=Y(Math.min(Math.asin(Z((h.highest.height+6)/o,-1,1)),Math.asin(Z(a/r,-1,1))-Math.asin(Z(d/r,-1,1)))),l=Math.max(s,Math.min(n,l))),this.labelRotation=l}afterCalculateLabelRotation(){d(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){d(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:i,title:s,grid:n}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const o=Zs(s,e.options.font);if(a?(t.width=this.maxWidth,t.height=Js(n)+o):(t.height=this.maxHeight,t.width=Js(n)+o),i.display&&this.ticks.length){const{first:e,last:s,widest:n,highest:o}=this._getLabelSizes(),r=2*i.padding,l=$(this.labelRotation),h=Math.cos(l),c=Math.sin(l);if(a){const e=i.mirror?0:c*n.width+h*o.height;t.height=Math.min(this.maxHeight,t.height+e+r)}else{const e=i.mirror?0:h*n.width+c*o.height;t.width=Math.min(this.maxWidth,t.width+e+r)}this._calculatePadding(e,s,c,h)}}this._handleMargins(),a?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,i,s){const{ticks:{align:n,padding:o},position:a}=this.options,r=0!==this.labelRotation,l="top"!==a&&"x"===this.axis;if(this.isHorizontal()){const a=this.getPixelForTick(0)-this.left,h=this.right-this.getPixelForTick(this.ticks.length-1);let c=0,d=0;r?l?(c=s*t.width,d=i*e.height):(c=i*t.height,d=s*e.width):"start"===n?d=e.width:"end"===n?c=t.width:"inner"!==n&&(c=t.width/2,d=e.width/2),this.paddingLeft=Math.max((c-a+o)*this.width/(this.width-a),0),this.paddingRight=Math.max((d-h+o)*this.width/(this.width-h),0)}else{let i=e.height/2,s=t.height/2;"start"===n?(i=0,s=t.height):"end"===n&&(i=e.height,s=0),this.paddingTop=i+o,this.paddingBottom=s+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){d(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return"top"===e||"bottom"===e||"x"===t}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){let e,i;for(this.beforeTickToLabelConversion(),this.generateTickLabels(t),e=0,i=t.length;e{const i=t.gc,s=i.length/2;let n;if(s>e){for(n=0;n({width:r[t]||0,height:l[t]||0});return{first:P(0),last:P(e-1),widest:P(k),highest:P(S),widths:r,heights:l}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return Q(this._alignToPixels?Ae(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&ta*s?a/i:r/s:r*s0}_computeGridLineItems(t){const e=this.axis,i=this.chart,s=this.options,{grid:n,position:a,border:r}=s,h=n.offset,c=this.isHorizontal(),d=this.ticks.length+(h?1:0),u=Js(n),f=[],g=r.setContext(this.getContext()),p=g.display?g.width:0,m=p/2,x=function(t){return Ae(i,t,p)};let b,_,y,v,M,w,k,S,P,D,C,O;if("top"===a)b=x(this.bottom),w=this.bottom-u,S=b-m,D=x(t.top)+m,O=t.bottom;else if("bottom"===a)b=x(this.top),D=t.top,O=x(t.bottom)-m,w=b+m,S=this.top+u;else if("left"===a)b=x(this.right),M=this.right-u,k=b-m,P=x(t.left)+m,C=t.right;else if("right"===a)b=x(this.left),P=t.left,C=x(t.right)-m,M=b+m,k=this.left+u;else if("x"===e){if("center"===a)b=x((t.top+t.bottom)/2+.5);else if(o(a)){const t=Object.keys(a)[0],e=a[t];b=x(this.chart.scales[t].getPixelForValue(e))}D=t.top,O=t.bottom,w=b+m,S=w+u}else if("y"===e){if("center"===a)b=x((t.left+t.right)/2);else if(o(a)){const t=Object.keys(a)[0],e=a[t];b=x(this.chart.scales[t].getPixelForValue(e))}M=b-m,k=M-u,P=t.left,C=t.right}const A=l(s.ticks.maxTicksLimit,d),T=Math.max(1,Math.ceil(d/A));for(_=0;_0&&(o-=s/2)}d={left:o,top:n,width:s+e.width,height:i+e.height,color:t.backdropColor}}x.push({label:v,font:P,textOffset:O,options:{rotation:m,color:i,strokeColor:o,strokeWidth:h,textAlign:f,textBaseline:A,translation:[M,w],backdrop:d}})}return x}_getXAxisLabelAlignment(){const{position:t,ticks:e}=this.options;if(-$(this.labelRotation))return"top"===t?"left":"right";let i="center";return"start"===e.align?i="left":"end"===e.align?i="right":"inner"===e.align&&(i="inner"),i}_getYAxisLabelAlignment(t){const{position:e,ticks:{crossAlign:i,mirror:s,padding:n}}=this.options,o=t+n,a=this._getLabelSizes().widest.width;let r,l;return"left"===e?s?(l=this.right+n,"near"===i?r="left":"center"===i?(r="center",l+=a/2):(r="right",l+=a)):(l=this.right-o,"near"===i?r="right":"center"===i?(r="center",l-=a/2):(r="left",l=this.left)):"right"===e?s?(l=this.left+n,"near"===i?r="right":"center"===i?(r="center",l-=a/2):(r="left",l-=a)):(l=this.left+o,"near"===i?r="left":"center"===i?(r="center",l+=a/2):(r="right",l=this.right)):r="right",{textAlign:r,x:l}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,e=this.options.position;return"left"===e||"right"===e?{top:0,left:this.left,bottom:t.height,right:this.right}:"top"===e||"bottom"===e?{top:this.top,left:0,bottom:this.bottom,right:t.width}:void 0}drawBackground(){const{ctx:t,options:{backgroundColor:e},left:i,top:s,width:n,height:o}=this;e&&(t.save(),t.fillStyle=e,t.fillRect(i,s,n,o),t.restore())}getLineWidthForValue(t){const e=this.options.grid;if(!this._isVisible()||!e.display)return 0;const i=this.ticks.findIndex((e=>e.value===t));if(i>=0){return e.setContext(this.getContext(i)).lineWidth}return 0}drawGrid(t){const e=this.options.grid,i=this.ctx,s=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let n,o;const a=(t,e,s)=>{s.width&&s.color&&(i.save(),i.lineWidth=s.width,i.strokeStyle=s.color,i.setLineDash(s.borderDash||[]),i.lineDashOffset=s.borderDashOffset,i.beginPath(),i.moveTo(t.x,t.y),i.lineTo(e.x,e.y),i.stroke(),i.restore())};if(e.display)for(n=0,o=s.length;n{this.drawBackground(),this.drawGrid(t),this.drawTitle()}},{z:s,draw:()=>{this.drawBorder()}},{z:e,draw:t=>{this.drawLabels(t)}}]:[{z:e,draw:t=>{this.draw(t)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),i=this.axis+"AxisID",s=[];let n,o;for(n=0,o=e.length;n{const s=i.split("."),n=s.pop(),o=[t].concat(s).join("."),a=e[i].split("."),r=a.pop(),l=a.join(".");ue.route(o,n,l,r)}))}(e,t.defaultRoutes);t.descriptors&&ue.describe(e,t.descriptors)}(t,o,i),this.override&&ue.override(t.id,t.overrides)),o}get(t){return this.items[t]}unregister(t){const e=this.items,i=t.id,s=this.scope;i in e&&delete e[i],s&&i in ue[s]&&(delete ue[s][i],this.override&&delete re[i])}}class sn{constructor(){this.controllers=new en(js,"datasets",!0),this.elements=new en($s,"elements"),this.plugins=new en(Object,"plugins"),this.scales=new en(tn,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,i){[...e].forEach((e=>{const s=i||this._getRegistryForType(e);i||s.isForType(e)||s===this.plugins&&e.id?this._exec(t,s,e):u(e,(e=>{const s=i||this._getRegistryForType(e);this._exec(t,s,e)}))}))}_exec(t,e,i){const s=w(t);d(i["before"+s],[],i),e[t](i),d(i["after"+s],[],i)}_getRegistryForType(t){for(let e=0;et.filter((t=>!e.some((e=>t.plugin.id===e.plugin.id))));this._notify(s(e,i),t,"stop"),this._notify(s(i,e),t,"start")}}function an(t,e){return e||!1!==t?!0===t?{}:t:null}function rn(t,{plugin:e,local:i},s,n){const o=t.pluginScopeKeys(e),a=t.getOptionScopes(s,o);return i&&e.defaults&&a.push(e.defaults),t.createResolver(a,n,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function ln(t,e){const i=ue.datasets[t]||{};return((e.datasets||{})[t]||{}).indexAxis||e.indexAxis||i.indexAxis||"x"}function hn(t){if("x"===t||"y"===t||"r"===t)return t}function cn(t,...e){if(hn(t))return t;for(const s of e){const e=s.axis||("top"===(i=s.position)||"bottom"===i?"x":"left"===i||"right"===i?"y":void 0)||t.length>1&&hn(t[0].toLowerCase());if(e)return e}var i;throw new Error(`Cannot determine type of '${t}' axis. Please provide 'axis' or 'position' option.`)}function dn(t,e,i){if(i[e+"AxisID"]===t)return{axis:e}}function un(t,e){const i=re[t.type]||{scales:{}},s=e.scales||{},n=ln(t.type,e),a=Object.create(null);return Object.keys(s).forEach((e=>{const r=s[e];if(!o(r))return console.error(`Invalid scale configuration for scale: ${e}`);if(r._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${e}`);const l=cn(e,r,function(t,e){if(e.data&&e.data.datasets){const i=e.data.datasets.filter((e=>e.xAxisID===t||e.yAxisID===t));if(i.length)return dn(t,"x",i[0])||dn(t,"y",i[0])}return{}}(e,t),ue.scales[r.type]),h=function(t,e){return t===e?"_index_":"_value_"}(l,n),c=i.scales||{};a[e]=b(Object.create(null),[{axis:l},r,c[l],c[h]])})),t.data.datasets.forEach((i=>{const n=i.type||t.type,o=i.indexAxis||ln(n,e),r=(re[n]||{}).scales||{};Object.keys(r).forEach((t=>{const e=function(t,e){let i=t;return"_index_"===t?i=e:"_value_"===t&&(i="x"===e?"y":"x"),i}(t,o),n=i[e+"AxisID"]||e;a[n]=a[n]||Object.create(null),b(a[n],[{axis:e},s[n],r[t]])}))})),Object.keys(a).forEach((t=>{const e=a[t];b(e,[ue.scales[e.type],ue.scale])})),a}function fn(t){const e=t.options||(t.options={});e.plugins=l(e.plugins,{}),e.scales=un(t,e)}function gn(t){return(t=t||{}).datasets=t.datasets||[],t.labels=t.labels||[],t}const pn=new Map,mn=new Set;function xn(t,e){let i=pn.get(t);return i||(i=e(),pn.set(t,i),mn.add(i)),i}const bn=(t,e,i)=>{const s=M(e,i);void 0!==s&&t.add(s)};class _n{constructor(t){this._config=function(t){return(t=t||{}).data=gn(t.data),fn(t),t}(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=gn(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),fn(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return xn(t,(()=>[[`datasets.${t}`,""]]))}datasetAnimationScopeKeys(t,e){return xn(`${t}.transition.${e}`,(()=>[[`datasets.${t}.transitions.${e}`,`transitions.${e}`],[`datasets.${t}`,""]]))}datasetElementScopeKeys(t,e){return xn(`${t}-${e}`,(()=>[[`datasets.${t}.elements.${e}`,`datasets.${t}`,`elements.${e}`,""]]))}pluginScopeKeys(t){const e=t.id;return xn(`${this.type}-plugin-${e}`,(()=>[[`plugins.${e}`,...t.additionalOptionScopes||[]]]))}_cachedScopes(t,e){const i=this._scopeCache;let s=i.get(t);return s&&!e||(s=new Map,i.set(t,s)),s}getOptionScopes(t,e,i){const{options:s,type:n}=this,o=this._cachedScopes(t,i),a=o.get(e);if(a)return a;const r=new Set;e.forEach((e=>{t&&(r.add(t),e.forEach((e=>bn(r,t,e)))),e.forEach((t=>bn(r,s,t))),e.forEach((t=>bn(r,re[n]||{},t))),e.forEach((t=>bn(r,ue,t))),e.forEach((t=>bn(r,le,t)))}));const l=Array.from(r);return 0===l.length&&l.push(Object.create(null)),mn.has(e)&&o.set(e,l),l}chartOptionScopes(){const{options:t,type:e}=this;return[t,re[e]||{},ue.datasets[e]||{},{type:e},ue,le]}resolveNamedOptions(t,e,i,s=[""]){const o={$shared:!0},{resolver:a,subPrefixes:r}=yn(this._resolverCache,t,s);let l=a;if(function(t,e){const{isScriptable:i,isIndexable:s}=Ye(t);for(const o of e){const e=i(o),a=s(o),r=(a||e)&&t[o];if(e&&(S(r)||vn(r))||a&&n(r))return!0}return!1}(a,e)){o.$shared=!1;l=$e(a,i=S(i)?i():i,this.createResolver(t,i,r))}for(const t of e)o[t]=l[t];return o}createResolver(t,e,i=[""],s){const{resolver:n}=yn(this._resolverCache,t,i);return o(e)?$e(n,e,void 0,s):n}}function yn(t,e,i){let s=t.get(e);s||(s=new Map,t.set(e,s));const n=i.join();let o=s.get(n);if(!o){o={resolver:je(e,i),subPrefixes:i.filter((t=>!t.toLowerCase().includes("hover")))},s.set(n,o)}return o}const vn=t=>o(t)&&Object.getOwnPropertyNames(t).some((e=>S(t[e])));const Mn=["top","bottom","left","right","chartArea"];function wn(t,e){return"top"===t||"bottom"===t||-1===Mn.indexOf(t)&&"x"===e}function kn(t,e){return function(i,s){return i[t]===s[t]?i[e]-s[e]:i[t]-s[t]}}function Sn(t){const e=t.chart,i=e.options.animation;e.notifyPlugins("afterRender"),d(i&&i.onComplete,[t],e)}function Pn(t){const e=t.chart,i=e.options.animation;d(i&&i.onProgress,[t],e)}function Dn(t){return fe()&&"string"==typeof t?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const Cn={},On=t=>{const e=Dn(t);return Object.values(Cn).filter((t=>t.canvas===e)).pop()};function An(t,e,i){const s=Object.keys(t);for(const n of s){const s=+n;if(s>=e){const o=t[n];delete t[n],(i>0||s>e)&&(t[s+i]=o)}}}class Tn{static defaults=ue;static instances=Cn;static overrides=re;static registry=nn;static version="4.5.1";static getChart=On;static register(...t){nn.add(...t),Ln()}static unregister(...t){nn.remove(...t),Ln()}constructor(t,e){const s=this.config=new _n(e),n=Dn(t),o=On(n);if(o)throw new Error("Canvas is already in use. Chart with ID '"+o.id+"' must be destroyed before the canvas with ID '"+o.canvas.id+"' can be reused.");const a=s.createResolver(s.chartOptionScopes(),this.getContext());this.platform=new(s.platform||Ps(n)),this.platform.updateConfig(s);const r=this.platform.acquireContext(n,a.aspectRatio),l=r&&r.canvas,h=l&&l.height,c=l&&l.width;this.id=i(),this.ctx=r,this.canvas=l,this.width=c,this.height=h,this._options=a,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new on,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=dt((t=>this.update(t)),a.resizeDelay||0),this._dataChanges=[],Cn[this.id]=this,r&&l?(bt.listen(this,"complete",Sn),bt.listen(this,"progress",Pn),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:i,height:n,_aspectRatio:o}=this;return s(t)?e&&o?o:n?i/n:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return nn}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():ke(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Te(this.canvas,this.ctx),this}stop(){return bt.stop(this),this}resize(t,e){bt.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const i=this.options,s=this.canvas,n=i.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(s,t,e,n),a=i.devicePixelRatio||this.platform.getDevicePixelRatio(),r=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,ke(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),d(i.onResize,[this,o],this),this.attached&&this._doResize(r)&&this.render())}ensureScalesHaveIDs(){u(this.options.scales||{},((t,e)=>{t.id=e}))}buildOrUpdateScales(){const t=this.options,e=t.scales,i=this.scales,s=Object.keys(i).reduce(((t,e)=>(t[e]=!1,t)),{});let n=[];e&&(n=n.concat(Object.keys(e).map((t=>{const i=e[t],s=cn(t,i),n="r"===s,o="x"===s;return{options:i,dposition:n?"chartArea":o?"bottom":"left",dtype:n?"radialLinear":o?"category":"linear"}})))),u(n,(e=>{const n=e.options,o=n.id,a=cn(o,n),r=l(n.type,e.dtype);void 0!==n.position&&wn(n.position,a)===wn(e.dposition)||(n.position=e.dposition),s[o]=!0;let h=null;if(o in i&&i[o].type===r)h=i[o];else{h=new(nn.getScale(r))({id:o,type:r,ctx:this.ctx,chart:this}),i[h.id]=h}h.init(n,t)})),u(s,((t,e)=>{t||delete i[e]})),u(i,(t=>{ls.configure(this,t,t.options),ls.addBox(this,t)}))}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,i=t.length;if(t.sort(((t,e)=>t.index-e.index)),i>e){for(let t=e;te.length&&delete this._stacks,t.forEach(((t,i)=>{0===e.filter((e=>e===t._dataset)).length&&this._destroyDatasetMeta(i)}))}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let i,s;for(this._removeUnreferencedMetasets(),i=0,s=e.length;i{this.getDatasetMeta(e).controller.reset()}),this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const i=this._options=e.createResolver(e.chartOptionScopes(),this.getContext()),s=this._animationsDisabled=!i.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0}))return;const n=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let t=0,e=this.data.datasets.length;t{t.reset()})),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(kn("z","_idx"));const{_active:a,_lastEvent:r}=this;r?this._eventHandler(r,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){u(this.scales,(t=>{ls.removeBox(this,t)})),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,e=new Set(Object.keys(this._listeners)),i=new Set(t.events);P(e,i)&&!!this._responsiveListeners===t.responsive||(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,e=this._getUniformDataChanges()||[];for(const{method:i,start:s,count:n}of e){An(t,s,"_removeElements"===i?-n:n)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const e=this.data.datasets.length,i=e=>new Set(t.filter((t=>t[0]===e)).map(((t,e)=>e+","+t.splice(1).join(",")))),s=i(0);for(let t=1;tt.split(","))).map((t=>({method:t[1],start:+t[2],count:+t[3]})))}_updateLayout(t){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;ls.update(this,this.width,this.height,t);const e=this.chartArea,i=e.width<=0||e.height<=0;this._layers=[],u(this.boxes,(t=>{i&&"chartArea"===t.position||(t.configure&&t.configure(),this._layers.push(...t._layers()))}),this),this._layers.forEach(((t,e)=>{t._idx=e})),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})){for(let t=0,e=this.data.datasets.length;t=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,i={meta:t,index:t.index,cancelable:!0},s=Ni(this,t);!1!==this.notifyPlugins("beforeDatasetDraw",i)&&(s&&Ie(e,s),t.controller.draw(),s&&ze(e),i.cancelable=!1,this.notifyPlugins("afterDatasetDraw",i))}isPointInArea(t){return Re(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,e,i,s){const n=Ki.modes[e];return"function"==typeof n?n(this,t,i,s):[]}getDatasetMeta(t){const e=this.data.datasets[t],i=this._metasets;let s=i.filter((t=>t&&t._dataset===e)).pop();return s||(s={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},i.push(s)),s}getContext(){return this.$context||(this.$context=Ci(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const i=this.getDatasetMeta(t);return"boolean"==typeof i.hidden?!i.hidden:!e.hidden}setDatasetVisibility(t,e){this.getDatasetMeta(t).hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,i){const s=i?"show":"hide",n=this.getDatasetMeta(t),o=n.controller._resolveAnimations(void 0,s);k(e)?(n.data[e].hidden=!i,this.update()):(this.setDatasetVisibility(t,i),o.update(n,{visible:i}),this.update((e=>e.datasetIndex===t?s:void 0)))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),bt.remove(this),t=0,e=this.data.datasets.length;t{e.addEventListener(this,i,s),t[i]=s},s=(t,e,i)=>{t.offsetX=e,t.offsetY=i,this._eventHandler(t)};u(this.options.events,(t=>i(t,s)))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,i=(i,s)=>{e.addEventListener(this,i,s),t[i]=s},s=(i,s)=>{t[i]&&(e.removeEventListener(this,i,s),delete t[i])},n=(t,e)=>{this.canvas&&this.resize(t,e)};let o;const a=()=>{s("attach",a),this.attached=!0,this.resize(),i("resize",n),i("detach",o)};o=()=>{this.attached=!1,s("resize",n),this._stop(),this._resize(0,0),i("attach",a)},e.isAttached(this.canvas)?a():o()}unbindEvents(){u(this._listeners,((t,e)=>{this.platform.removeEventListener(this,e,t)})),this._listeners={},u(this._responsiveListeners,((t,e)=>{this.platform.removeEventListener(this,e,t)})),this._responsiveListeners=void 0}updateHoverStyle(t,e,i){const s=i?"set":"remove";let n,o,a,r;for("dataset"===e&&(n=this.getDatasetMeta(t[0].datasetIndex),n.controller["_"+s+"DatasetHoverStyle"]()),a=0,r=t.length;a{const i=this.getDatasetMeta(t);if(!i)throw new Error("No dataset found at index "+t);return{datasetIndex:t,element:i.data[e],index:e}}));!f(i,e)&&(this._active=i,this._lastEvent=null,this._updateHoverStyles(i,e))}notifyPlugins(t,e,i){return this._plugins.notify(this,t,e,i)}isPluginEnabled(t){return 1===this._plugins._cache.filter((e=>e.plugin.id===t)).length}_updateHoverStyles(t,e,i){const s=this.options.hover,n=(t,e)=>t.filter((t=>!e.some((e=>t.datasetIndex===e.datasetIndex&&t.index===e.index)))),o=n(e,t),a=i?t:n(t,e);o.length&&this.updateHoverStyle(o,s.mode,!1),a.length&&s.mode&&this.updateHoverStyle(a,s.mode,!0)}_eventHandler(t,e){const i={event:t,replay:e,cancelable:!0,inChartArea:this.isPointInArea(t)},s=e=>(e.options.events||this.options.events).includes(t.native.type);if(!1===this.notifyPlugins("beforeEvent",i,s))return;const n=this._handleEvent(t,e,i.inChartArea);return i.cancelable=!1,this.notifyPlugins("afterEvent",i,s),(n||i.changed)&&this.render(),this}_handleEvent(t,e,i){const{_active:s=[],options:n}=this,o=e,a=this._getActiveElements(t,s,i,o),r=D(t),l=function(t,e,i,s){return i&&"mouseout"!==t.type?s?e:t:null}(t,this._lastEvent,i,r);i&&(this._lastEvent=null,d(n.onHover,[t,a,this],this),r&&d(n.onClick,[t,a,this],this));const h=!f(a,s);return(h||e)&&(this._active=a,this._updateHoverStyles(a,s,e)),this._lastEvent=l,h}_getActiveElements(t,e,i,s){if("mouseout"===t.type)return[];if(!i)return e;const n=this.options.hover;return this.getElementsAtEventForMode(t,n.mode,n,s)}}function Ln(){return u(Tn.instances,(t=>t._plugins.invalidate()))}function En(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class Rn{static override(t){Object.assign(Rn.prototype,t)}options;constructor(t){this.options=t||{}}init(){}formats(){return En()}parse(){return En()}format(){return En()}add(){return En()}diff(){return En()}startOf(){return En()}endOf(){return En()}}var In={_date:Rn};function zn(t){const e=t.iScale,i=function(t,e){if(!t._cache.$bar){const i=t.getMatchingVisibleMetas(e);let s=[];for(let e=0,n=i.length;et-e)))}return t._cache.$bar}(e,t.type);let s,n,o,a,r=e._length;const l=()=>{32767!==o&&-32768!==o&&(k(a)&&(r=Math.min(r,Math.abs(o-a)||r)),a=o)};for(s=0,n=i.length;sMath.abs(r)&&(l=r,h=a),e[i.axis]=h,e._custom={barStart:l,barEnd:h,start:n,end:o,min:a,max:r}}(t,e,i,s):e[i.axis]=i.parse(t,s),e}function Vn(t,e,i,s){const n=t.iScale,o=t.vScale,a=n.getLabels(),r=n===o,l=[];let h,c,d,u;for(h=i,c=i+s;ht.x,i="left",s="right"):(e=t.base"spacing"!==t,_indexable:t=>"spacing"!==t&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")};static overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data,{labels:{pointStyle:i,textAlign:s,color:n,useBorderRadius:o,borderRadius:a}}=t.legend.options;return e.labels.length&&e.datasets.length?e.labels.map(((e,r)=>{const l=t.getDatasetMeta(0).controller.getStyle(r);return{text:e,fillStyle:l.backgroundColor,fontColor:n,hidden:!t.getDataVisibility(r),lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:l.borderWidth,strokeStyle:l.borderColor,textAlign:s,pointStyle:i,borderRadius:o&&(a||l.borderRadius),index:r}})):[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}}};constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const i=this.getDataset().data,s=this._cachedMeta;if(!1===this._parsing)s._parsed=i;else{let n,a,r=t=>+i[t];if(o(i[t])){const{key:t="value"}=this._parsing;r=e=>+M(i[e],t)}for(n=t,a=t+e;nJ(t,r,l,!0)?1:Math.max(e,e*i,s,s*i),g=(t,e,s)=>J(t,r,l,!0)?-1:Math.min(e,e*i,s,s*i),p=f(0,h,d),m=f(E,c,u),x=g(C,h,d),b=g(C+E,c,u);s=(p-x)/2,n=(m-b)/2,o=-(p+x)/2,a=-(m+b)/2}return{ratioX:s,ratioY:n,offsetX:o,offsetY:a}}(u,d,r),x=(i.width-o)/f,b=(i.height-o)/g,_=Math.max(Math.min(x,b)/2,0),y=c(this.options.radius,_),v=(y-Math.max(y*r,0))/this._getVisibleDatasetWeightTotal();this.offsetX=p*y,this.offsetY=m*y,s.total=this.calculateTotal(),this.outerRadius=y-v*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-v*l,0),this.updateElements(n,0,n.length,t)}_circumference(t,e){const i=this.options,s=this._cachedMeta,n=this._getCircumference();return e&&i.animation.animateRotate||!this.chart.getDataVisibility(t)||null===s._parsed[t]||s.data[t].hidden?0:this.calculateCircumference(s._parsed[t]*n/O)}updateElements(t,e,i,s){const n="reset"===s,o=this.chart,a=o.chartArea,r=o.options.animation,l=(a.left+a.right)/2,h=(a.top+a.bottom)/2,c=n&&r.animateScale,d=c?0:this.innerRadius,u=c?0:this.outerRadius,{sharedOptions:f,includeOptions:g}=this._getSharedOptions(e,s);let p,m=this._getRotation();for(p=0;p0&&!isNaN(t)?O*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,s=i.data.labels||[],n=ne(e._parsed[t],i.options.locale);return{label:s[t]||"",value:n}}getMaxBorderWidth(t){let e=0;const i=this.chart;let s,n,o,a,r;if(!t)for(s=0,n=i.data.datasets.length;s{const o=t.getDatasetMeta(0).controller.getStyle(n);return{text:e,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,fontColor:s,lineWidth:o.borderWidth,pointStyle:i,hidden:!t.getDataVisibility(n),index:n}}))}return[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};constructor(t,e){super(t,e),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,s=i.data.labels||[],n=ne(e._parsed[t].r,i.options.locale);return{label:s[t]||"",value:n}}parseObjectData(t,e,i,s){return ii.bind(this)(t,e,i,s)}update(t){const e=this._cachedMeta.data;this._updateRadius(),this.updateElements(e,0,e.length,t)}getMinMax(){const t=this._cachedMeta,e={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return t.data.forEach(((t,i)=>{const s=this.getParsed(i).r;!isNaN(s)&&this.chart.getDataVisibility(i)&&(se.max&&(e.max=s))})),e}_updateRadius(){const t=this.chart,e=t.chartArea,i=t.options,s=Math.min(e.right-e.left,e.bottom-e.top),n=Math.max(s/2,0),o=(n-Math.max(i.cutoutPercentage?n/100*i.cutoutPercentage:1,0))/t.getVisibleDatasetCount();this.outerRadius=n-o*this.index,this.innerRadius=this.outerRadius-o}updateElements(t,e,i,s){const n="reset"===s,o=this.chart,a=o.options.animation,r=this._cachedMeta.rScale,l=r.xCenter,h=r.yCenter,c=r.getIndexAngle(0)-.5*C;let d,u=c;const f=360/this.countVisibleElements();for(d=0;d{!isNaN(this.getParsed(i).r)&&this.chart.getDataVisibility(i)&&e++})),e}_computeAngle(t,e,i){return this.chart.getDataVisibility(t)?$(this.resolveDataElementOptions(t,e).angle||i):0}}var Un=Object.freeze({__proto__:null,BarController:class extends js{static id="bar";static defaults={datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}};static overrides={scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}};parsePrimitiveData(t,e,i,s){return Vn(t,e,i,s)}parseArrayData(t,e,i,s){return Vn(t,e,i,s)}parseObjectData(t,e,i,s){const{iScale:n,vScale:o}=t,{xAxisKey:a="x",yAxisKey:r="y"}=this._parsing,l="x"===n.axis?a:r,h="x"===o.axis?a:r,c=[];let d,u,f,g;for(d=i,u=i+s;dt.controller.options.grouped)),o=i.options.stacked,a=[],r=this._cachedMeta.controller.getParsed(e),l=r&&r[i.axis],h=t=>{const e=t._parsed.find((t=>t[i.axis]===l)),n=e&&e[t.vScale.axis];if(s(n)||isNaN(n))return!0};for(const i of n)if((void 0===e||!h(i))&&((!1===o||-1===a.indexOf(i.stack)||void 0===o&&void 0===i.stack)&&a.push(i.stack),i.index===t))break;return a.length||a.push(void 0),a}_getStackCount(t){return this._getStacks(void 0,t).length}_getAxisCount(){return this._getAxis().length}getFirstScaleIdForIndexAxis(){const t=this.chart.scales,e=this.chart.options.indexAxis;return Object.keys(t).filter((i=>t[i].axis===e)).shift()}_getAxis(){const t={},e=this.getFirstScaleIdForIndexAxis();for(const i of this.chart.data.datasets)t[l("x"===this.chart.options.indexAxis?i.xAxisID:i.yAxisID,e)]=!0;return Object.keys(t)}_getStackIndex(t,e,i){const s=this._getStacks(t,i),n=void 0!==e?s.indexOf(e):-1;return-1===n?s.length-1:n}_getRuler(){const t=this.options,e=this._cachedMeta,i=e.iScale,s=[];let n,o;for(n=0,o=e.data.length;n=i?1:-1)}(u,e,r)*a,f===r&&(x-=u/2);const t=e.getPixelForDecimal(0),s=e.getPixelForDecimal(1),o=Math.min(t,s),h=Math.max(t,s);x=Math.max(Math.min(x,h),o),d=x+u,i&&!c&&(l._stacks[e.axis]._visualValues[n]=e.getValueForPixel(d)-e.getValueForPixel(x))}if(x===e.getPixelForValue(r)){const t=F(u)*e.getLineWidthForValue(r)/2;x+=t,u-=t}return{size:u,base:x,head:d,center:d+u/2}}_calculateBarIndexPixels(t,e){const i=e.scale,n=this.options,o=n.skipNull,a=l(n.maxBarThickness,1/0);let r,h;const c=this._getAxisCount();if(e.grouped){const i=o?this._getStackCount(t):e.stackCount,d="flex"===n.barThickness?function(t,e,i,s){const n=e.pixels,o=n[t];let a=t>0?n[t-1]:null,r=t=0;--i)e=Math.max(e,t[i].size(this.resolveDataElementOptions(i))/2);return e>0&&e}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart.data.labels||[],{xScale:s,yScale:n}=e,o=this.getParsed(t),a=s.getLabelForValue(o.x),r=n.getLabelForValue(o.y),l=o._custom;return{label:i[t]||"",value:"("+a+", "+r+(l?", "+l:"")+")"}}update(t){const e=this._cachedMeta.data;this.updateElements(e,0,e.length,t)}updateElements(t,e,i,s){const n="reset"===s,{iScale:o,vScale:a}=this._cachedMeta,{sharedOptions:r,includeOptions:l}=this._getSharedOptions(e,s),h=o.axis,c=a.axis;for(let d=e;d0&&this.getParsed(e-1);for(let i=0;i<_;++i){const g=t[i],_=x?g:{};if(i=b){_.skip=!0;continue}const v=this.getParsed(i),M=s(v[f]),w=_[u]=a.getPixelForValue(v[u],i),k=_[f]=o||M?r.getBasePixel():r.getPixelForValue(l?this.applyStack(r,v,l):v[f],i);_.skip=isNaN(w)||isNaN(k)||M,_.stop=i>0&&Math.abs(v[u]-y[u])>m,p&&(_.parsed=v,_.raw=h.data[i]),d&&(_.options=c||this.resolveDataElementOptions(i,g.active?"active":n)),x||this.updateElement(g,i,_,n),y=v}}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,i=e.options&&e.options.borderWidth||0,s=t.data||[];if(!s.length)return i;const n=s[0].size(this.resolveDataElementOptions(0)),o=s[s.length-1].size(this.resolveDataElementOptions(s.length-1));return Math.max(i,n,o)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}},PieController:class extends $n{static id="pie";static defaults={cutout:0,rotation:0,circumference:360,radius:"100%"}},PolarAreaController:Yn,RadarController:class extends js{static id="radar";static defaults={datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}};static overrides={aspectRatio:1,scales:{r:{type:"radialLinear"}}};getLabelAndValue(t){const e=this._cachedMeta.vScale,i=this.getParsed(t);return{label:e.getLabels()[t],value:""+e.getLabelForValue(i[e.axis])}}parseObjectData(t,e,i,s){return ii.bind(this)(t,e,i,s)}update(t){const e=this._cachedMeta,i=e.dataset,s=e.data||[],n=e.iScale.getLabels();if(i.points=s,"resize"!==t){const e=this.resolveDatasetElementOptions(t);this.options.showLine||(e.borderWidth=0);const o={_loop:!0,_fullLoop:n.length===s.length,options:e};this.updateElement(i,void 0,o,t)}this.updateElements(s,0,s.length,t)}updateElements(t,e,i,s){const n=this._cachedMeta.rScale,o="reset"===s;for(let a=e;a0&&this.getParsed(e-1);for(let c=e;c0&&Math.abs(i[f]-_[f])>x,m&&(p.parsed=i,p.raw=h.data[c]),u&&(p.options=d||this.resolveDataElementOptions(c,e.active?"active":n)),b||this.updateElement(e,c,p,n),_=i}this.updateSharedOptions(d,n,c)}getMaxOverflow(){const t=this._cachedMeta,e=t.data||[];if(!this.options.showLine){let t=0;for(let i=e.length-1;i>=0;--i)t=Math.max(t,e[i].size(this.resolveDataElementOptions(i))/2);return t>0&&t}const i=t.dataset,s=i.options&&i.options.borderWidth||0;if(!e.length)return s;const n=e[0].size(this.resolveDataElementOptions(0)),o=e[e.length-1].size(this.resolveDataElementOptions(e.length-1));return Math.max(s,n,o)/2}}});function Xn(t,e,i,s){const n=vi(t.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]);const o=(i-e)/2,a=Math.min(o,s*e/2),r=t=>{const e=(i-Math.min(o,t))*s/2;return Z(t,0,Math.min(o,e))};return{outerStart:r(n.outerStart),outerEnd:r(n.outerEnd),innerStart:Z(n.innerStart,0,a),innerEnd:Z(n.innerEnd,0,a)}}function qn(t,e,i,s){return{x:i+t*Math.cos(e),y:s+t*Math.sin(e)}}function Kn(t,e,i,s,n,o){const{x:a,y:r,startAngle:l,pixelMargin:h,innerRadius:c}=e,d=Math.max(e.outerRadius+s+i-h,0),u=c>0?c+s+i+h:0;let f=0;const g=n-l;if(s){const t=((c>0?c-s:0)+(d>0?d-s:0))/2;f=(g-(0!==t?g*t/(t+s):g))/2}const p=(g-Math.max(.001,g*d-i/C)/d)/2,m=l+p+f,x=n-p-f,{outerStart:b,outerEnd:_,innerStart:y,innerEnd:v}=Xn(e,u,d,x-m),M=d-b,w=d-_,k=m+b/M,S=x-_/w,P=u+y,D=u+v,O=m+y/P,A=x-v/D;if(t.beginPath(),o){const e=(k+S)/2;if(t.arc(a,r,d,k,e),t.arc(a,r,d,e,S),_>0){const e=qn(w,S,a,r);t.arc(e.x,e.y,_,S,x+E)}const i=qn(D,x,a,r);if(t.lineTo(i.x,i.y),v>0){const e=qn(D,A,a,r);t.arc(e.x,e.y,v,x+E,A+Math.PI)}const s=(x-v/u+(m+y/u))/2;if(t.arc(a,r,u,x-v/u,s,!0),t.arc(a,r,u,s,m+y/u,!0),y>0){const e=qn(P,O,a,r);t.arc(e.x,e.y,y,O+Math.PI,m-E)}const n=qn(M,m,a,r);if(t.lineTo(n.x,n.y),b>0){const e=qn(M,k,a,r);t.arc(e.x,e.y,b,m-E,k)}}else{t.moveTo(a,r);const e=Math.cos(k)*d+a,i=Math.sin(k)*d+r;t.lineTo(e,i);const s=Math.cos(S)*d+a,n=Math.sin(S)*d+r;t.lineTo(s,n)}t.closePath()}function Gn(t,e,i,s,n){const{fullCircles:o,startAngle:a,circumference:r,options:l}=e,{borderWidth:h,borderJoinStyle:c,borderDash:d,borderDashOffset:u,borderRadius:f}=l,g="inner"===l.borderAlign;if(!h)return;t.setLineDash(d||[]),t.lineDashOffset=u,g?(t.lineWidth=2*h,t.lineJoin=c||"round"):(t.lineWidth=h,t.lineJoin=c||"bevel");let p=e.endAngle;if(o){Kn(t,e,i,s,p,n);for(let e=0;en?(h=n/l,t.arc(o,a,l,i+h,s-h,!0)):t.arc(o,a,n,i+E,s-E),t.closePath(),t.clip()}(t,e,p),l.selfJoin&&p-a>=C&&0===f&&"miter"!==c&&function(t,e,i){const{startAngle:s,x:n,y:o,outerRadius:a,innerRadius:r,options:l}=e,{borderWidth:h,borderJoinStyle:c}=l,d=Math.min(h/a,G(s-i));if(t.beginPath(),t.arc(n,o,a-h/2,s+d/2,i-d/2),r>0){const e=Math.min(h/r,G(s-i));t.arc(n,o,r+h/2,i-e/2,s+e/2,!0)}else{const e=Math.min(h/2,a*G(s-i));if("round"===c)t.arc(n,o,e,i-C/2,s+C/2,!0);else if("bevel"===c){const a=2*e*e,r=-a*Math.cos(i+C/2)+n,l=-a*Math.sin(i+C/2)+o,h=a*Math.cos(s+C/2)+n,c=a*Math.sin(s+C/2)+o;t.lineTo(r,l),t.lineTo(h,c)}}t.closePath(),t.moveTo(0,0),t.rect(0,0,t.canvas.width,t.canvas.height),t.clip("evenodd")}(t,e,p),o||(Kn(t,e,i,s,p,n),t.stroke())}function Jn(t,e,i=e){t.lineCap=l(i.borderCapStyle,e.borderCapStyle),t.setLineDash(l(i.borderDash,e.borderDash)),t.lineDashOffset=l(i.borderDashOffset,e.borderDashOffset),t.lineJoin=l(i.borderJoinStyle,e.borderJoinStyle),t.lineWidth=l(i.borderWidth,e.borderWidth),t.strokeStyle=l(i.borderColor,e.borderColor)}function Zn(t,e,i){t.lineTo(i.x,i.y)}function Qn(t,e,i={}){const s=t.length,{start:n=0,end:o=s-1}=i,{start:a,end:r}=e,l=Math.max(n,a),h=Math.min(o,r),c=nr&&o>r;return{count:s,start:l,loop:e.loop,ilen:h(a+(h?r-t:t))%o,_=()=>{f!==g&&(t.lineTo(m,g),t.lineTo(m,f),t.lineTo(m,p))};for(l&&(d=n[b(0)],t.moveTo(d.x,d.y)),c=0;c<=r;++c){if(d=n[b(c)],d.skip)continue;const e=d.x,i=d.y,s=0|e;s===u?(ig&&(g=i),m=(x*m+e)/++x):(_(),t.lineTo(e,i),u=s,x=0,f=g=i),p=i}_()}function io(t){const e=t.options,i=e.borderDash&&e.borderDash.length;return!(t._decimated||t._loop||e.tension||"monotone"===e.cubicInterpolationMode||e.stepped||i)?eo:to}const so="function"==typeof Path2D;function no(t,e,i,s){so&&!e.options.segment?function(t,e,i,s){let n=e._path;n||(n=e._path=new Path2D,e.path(n,i,s)&&n.closePath()),Jn(t,e.options),t.stroke(n)}(t,e,i,s):function(t,e,i,s){const{segments:n,options:o}=e,a=io(e);for(const r of n)Jn(t,o,r.style),t.beginPath(),a(t,e,r,{start:i,end:i+s-1})&&t.closePath(),t.stroke()}(t,e,i,s)}class oo extends $s{static id="line";static defaults={borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0};static defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};static descriptors={_scriptable:!0,_indexable:t=>"borderDash"!==t&&"fill"!==t};constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const i=this.options;if((i.tension||"monotone"===i.cubicInterpolationMode)&&!i.stepped&&!this._pointsUpdated){const s=i.spanGaps?this._loop:this._fullLoop;hi(this._points,i,t,s,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=zi(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,i=t.length;return i&&e[t[i-1].end]}interpolate(t,e){const i=this.options,s=t[e],n=this.points,o=Ii(this,{property:e,start:s,end:s});if(!o.length)return;const a=[],r=function(t){return t.stepped?pi:t.tension||"monotone"===t.cubicInterpolationMode?mi:gi}(i);let l,h;for(l=0,h=o.length;l"borderDash"!==t};circumference;endAngle;fullCircles;innerRadius;outerRadius;pixelMargin;startAngle;constructor(t){super(),this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,t&&Object.assign(this,t)}inRange(t,e,i){const s=this.getProps(["x","y"],i),{angle:n,distance:o}=X(s,{x:t,y:e}),{startAngle:a,endAngle:r,innerRadius:h,outerRadius:c,circumference:d}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],i),u=(this.options.spacing+this.options.borderWidth)/2,f=l(d,r-a),g=J(n,a,r)&&a!==r,p=f>=O||g,m=tt(o,h+u,c+u);return p&&m}getCenterPoint(t){const{x:e,y:i,startAngle:s,endAngle:n,innerRadius:o,outerRadius:a}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],t),{offset:r,spacing:l}=this.options,h=(s+n)/2,c=(o+a+l+r)/2;return{x:e+Math.cos(h)*c,y:i+Math.sin(h)*c}}tooltipPosition(t){return this.getCenterPoint(t)}draw(t){const{options:e,circumference:i}=this,s=(e.offset||0)/4,n=(e.spacing||0)/2,o=e.circular;if(this.pixelMargin="inner"===e.borderAlign?.33:0,this.fullCircles=i>O?Math.floor(i/O):0,0===i||this.innerRadius<0||this.outerRadius<0)return;t.save();const a=(this.startAngle+this.endAngle)/2;t.translate(Math.cos(a)*s,Math.sin(a)*s);const r=s*(1-Math.sin(Math.min(C,i||0)));t.fillStyle=e.backgroundColor,t.strokeStyle=e.borderColor,function(t,e,i,s,n){const{fullCircles:o,startAngle:a,circumference:r}=e;let l=e.endAngle;if(o){Kn(t,e,i,s,l,n);for(let e=0;e("string"==typeof e?(i=t.push(e)-1,s.unshift({index:i,label:e})):isNaN(e)&&(i=null),i))(t,e,i,s);return n!==t.lastIndexOf(e)?i:n}function mo(t){const e=this.getLabels();return t>=0&&ts=e?s:t,a=t=>n=i?n:t;if(t){const t=F(s),e=F(n);t<0&&e<0?a(0):t>0&&e>0&&o(0)}if(s===n){let e=0===n?1:Math.abs(.05*n);a(n+e),t||o(s-e)}this.min=s,this.max=n}getTickLimit(){const t=this.options.ticks;let e,{maxTicksLimit:i,stepSize:s}=t;return s?(e=Math.ceil(this.max/s)-Math.floor(this.min/s)+1,e>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${s} would result generating up to ${e} ticks. Limiting to 1000.`),e=1e3)):(e=this.computeTickLimit(),i=i||11),i&&(e=Math.min(i,e)),e}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let i=this.getTickLimit();i=Math.max(2,i);const n=function(t,e){const i=[],{bounds:n,step:o,min:a,max:r,precision:l,count:h,maxTicks:c,maxDigits:d,includeBounds:u}=t,f=o||1,g=c-1,{min:p,max:m}=e,x=!s(a),b=!s(r),_=!s(h),y=(m-p)/(d+1);let v,M,w,k,S=B((m-p)/g/f)*f;if(S<1e-14&&!x&&!b)return[{value:p},{value:m}];k=Math.ceil(m/S)-Math.floor(p/S),k>g&&(S=B(k*S/g/f)*f),s(l)||(v=Math.pow(10,l),S=Math.ceil(S*v)/v),"ticks"===n?(M=Math.floor(p/S)*S,w=Math.ceil(m/S)*S):(M=p,w=m),x&&b&&o&&H((r-a)/o,S/1e3)?(k=Math.round(Math.min((r-a)/S,c)),S=(r-a)/k,M=a,w=r):_?(M=x?a:M,w=b?r:w,k=h-1,S=(w-M)/k):(k=(w-M)/S,k=V(k,Math.round(k),S/1e3)?Math.round(k):Math.ceil(k));const P=Math.max(U(S),U(M));v=Math.pow(10,s(l)?P:l),M=Math.round(M*v)/v,w=Math.round(w*v)/v;let D=0;for(x&&(u&&M!==a?(i.push({value:a}),Mr)break;i.push({value:t})}return b&&u&&w!==r?i.length&&V(i[i.length-1].value,r,xo(r,y,t))?i[i.length-1].value=r:i.push({value:r}):b&&w!==r||i.push({value:w}),i}({maxTicks:i,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:!1!==e.includeBounds},this._range||this);return"ticks"===t.bounds&&j(n,this,"value"),t.reverse?(n.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),n}configure(){const t=this.ticks;let e=this.min,i=this.max;if(super.configure(),this.options.offset&&t.length){const s=(i-e)/Math.max(t.length-1,1)/2;e-=s,i+=s}this._startValue=e,this._endValue=i,this._valueRange=i-e}getLabelForValue(t){return ne(t,this.chart.options.locale,this.options.ticks.format)}}class _o extends bo{static id="linear";static defaults={ticks:{callback:ae.formatters.numeric}};determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=a(t)?t:0,this.max=a(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,i=$(this.options.ticks.minRotation),s=(t?Math.sin(i):Math.cos(i))||.001,n=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,n.lineHeight/s))}getPixelForValue(t){return null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}const yo=t=>Math.floor(z(t)),vo=(t,e)=>Math.pow(10,yo(t)+e);function Mo(t){return 1===t/Math.pow(10,yo(t))}function wo(t,e,i){const s=Math.pow(10,i),n=Math.floor(t/s);return Math.ceil(e/s)-n}function ko(t,{min:e,max:i}){e=r(t.min,e);const s=[],n=yo(e);let o=function(t,e){let i=yo(e-t);for(;wo(t,e,i)>10;)i++;for(;wo(t,e,i)<10;)i--;return Math.min(i,yo(t))}(e,i),a=o<0?Math.pow(10,Math.abs(o)):1;const l=Math.pow(10,o),h=n>o?Math.pow(10,n):0,c=Math.round((e-h)*a)/a,d=Math.floor((e-h)/l/10)*l*10;let u=Math.floor((c-d)/Math.pow(10,o)),f=r(t.min,Math.round((h+d+u*Math.pow(10,o))*a)/a);for(;f=10?u=u<15?15:20:u++,u>=20&&(o++,u=2,a=o>=0?1:a),f=Math.round((h+d+u*Math.pow(10,o))*a)/a;const g=r(t.max,f);return s.push({value:g,major:Mo(g),significand:u}),s}class So extends tn{static id="logarithmic";static defaults={ticks:{callback:ae.formatters.logarithmic,major:{enabled:!0}}};constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(t,e){const i=bo.prototype.parse.apply(this,[t,e]);if(0!==i)return a(i)&&i>0?i:null;this._zero=!0}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=a(t)?Math.max(0,t):null,this.max=a(e)?Math.max(0,e):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!a(this._userMin)&&(this.min=t===vo(this.min,0)?vo(this.min,-1):vo(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let i=this.min,s=this.max;const n=e=>i=t?i:e,o=t=>s=e?s:t;i===s&&(i<=0?(n(1),o(10)):(n(vo(i,-1)),o(vo(s,1)))),i<=0&&n(vo(s,-1)),s<=0&&o(vo(i,1)),this.min=i,this.max=s}buildTicks(){const t=this.options,e=ko({min:this._userMin,max:this._userMax},this);return"ticks"===t.bounds&&j(e,this,"value"),t.reverse?(e.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),e}getLabelForValue(t){return void 0===t?"0":ne(t,this.chart.options.locale,this.options.ticks.format)}configure(){const t=this.min;super.configure(),this._startValue=z(t),this._valueRange=z(this.max)-z(t)}getPixelForValue(t){return void 0!==t&&0!==t||(t=this.min),null===t||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:(z(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const e=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+e*this._valueRange)}}function Po(t){const e=t.ticks;if(e.display&&t.display){const t=ki(e.backdropPadding);return l(e.font&&e.font.size,ue.font.size)+t.height}return 0}function Do(t,e,i,s,n){return t===s||t===n?{start:e-i/2,end:e+i/2}:tn?{start:e-i,end:e}:{start:e,end:e+i}}function Co(t){const e={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},i=Object.assign({},e),s=[],o=[],a=t._pointLabels.length,r=t.options.pointLabels,l=r.centerPointLabels?C/a:0;for(let u=0;ue.r&&(r=(s.end-e.r)/o,t.r=Math.max(t.r,e.r+r)),n.starte.b&&(l=(n.end-e.b)/a,t.b=Math.max(t.b,e.b+l))}function Ao(t,e,i){const s=t.drawingArea,{extra:n,additionalAngle:o,padding:a,size:r}=i,l=t.getPointPosition(e,s+n+a,o),h=Math.round(Y(G(l.angle+E))),c=function(t,e,i){90===i||270===i?t-=e/2:(i>270||i<90)&&(t-=e);return t}(l.y,r.h,h),d=function(t){if(0===t||180===t)return"center";if(t<180)return"left";return"right"}(h),u=function(t,e,i){"right"===i?t-=e:"center"===i&&(t-=e/2);return t}(l.x,r.w,d);return{visible:!0,x:l.x,y:c,textAlign:d,left:u,top:c,right:u+r.w,bottom:c+r.h}}function To(t,e){if(!e)return!0;const{left:i,top:s,right:n,bottom:o}=t;return!(Re({x:i,y:s},e)||Re({x:i,y:o},e)||Re({x:n,y:s},e)||Re({x:n,y:o},e))}function Lo(t,e,i){const{left:n,top:o,right:a,bottom:r}=i,{backdropColor:l}=e;if(!s(l)){const i=wi(e.borderRadius),s=ki(e.backdropPadding);t.fillStyle=l;const h=n-s.left,c=o-s.top,d=a-n+s.width,u=r-o+s.height;Object.values(i).some((t=>0!==t))?(t.beginPath(),He(t,{x:h,y:c,w:d,h:u,radius:i}),t.fill()):t.fillRect(h,c,d,u)}}function Eo(t,e,i,s){const{ctx:n}=t;if(i)n.arc(t.xCenter,t.yCenter,e,0,O);else{let i=t.getPointPosition(0,e);n.moveTo(i.x,i.y);for(let o=1;ot,padding:5,centerPointLabels:!1}};static defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"};static descriptors={angleLines:{_fallback:"grid"}};constructor(t){super(t),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const t=this._padding=ki(Po(this.options)/2),e=this.width=this.maxWidth-t.width,i=this.height=this.maxHeight-t.height;this.xCenter=Math.floor(this.left+e/2+t.left),this.yCenter=Math.floor(this.top+i/2+t.top),this.drawingArea=Math.floor(Math.min(e,i)/2)}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!1);this.min=a(t)&&!isNaN(t)?t:0,this.max=a(e)&&!isNaN(e)?e:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/Po(this.options))}generateTickLabels(t){bo.prototype.generateTickLabels.call(this,t),this._pointLabels=this.getLabels().map(((t,e)=>{const i=d(this.options.pointLabels.callback,[t,e],this);return i||0===i?i:""})).filter(((t,e)=>this.chart.getDataVisibility(e)))}fit(){const t=this.options;t.display&&t.pointLabels.display?Co(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(t,e,i,s){this.xCenter+=Math.floor((t-e)/2),this.yCenter+=Math.floor((i-s)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(t,e,i,s))}getIndexAngle(t){return G(t*(O/(this._pointLabels.length||1))+$(this.options.startAngle||0))}getDistanceFromCenterForValue(t){if(s(t))return NaN;const e=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*e:(t-this.min)*e}getValueForDistanceFromCenter(t){if(s(t))return NaN;const e=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-e:this.min+e}getPointLabelContext(t){const e=this._pointLabels||[];if(t>=0&&t=0;n--){const e=t._pointLabelItems[n];if(!e.visible)continue;const o=s.setContext(t.getPointLabelContext(n));Lo(i,o,e);const a=Si(o.font),{x:r,y:l,textAlign:h}=e;Ne(i,t._pointLabels[n],r,l+a.lineHeight/2,a,{color:o.color,textAlign:h,textBaseline:"middle"})}}(this,o),s.display&&this.ticks.forEach(((t,e)=>{if(0!==e||0===e&&this.min<0){r=this.getDistanceFromCenterForValue(t.value);const i=this.getContext(e),a=s.setContext(i),l=n.setContext(i);!function(t,e,i,s,n){const o=t.ctx,a=e.circular,{color:r,lineWidth:l}=e;!a&&!s||!r||!l||i<0||(o.save(),o.strokeStyle=r,o.lineWidth=l,o.setLineDash(n.dash||[]),o.lineDashOffset=n.dashOffset,o.beginPath(),Eo(t,i,a,s),o.closePath(),o.stroke(),o.restore())}(this,a,r,o,l)}})),i.display){for(t.save(),a=o-1;a>=0;a--){const s=i.setContext(this.getPointLabelContext(a)),{color:n,lineWidth:o}=s;o&&n&&(t.lineWidth=o,t.strokeStyle=n,t.setLineDash(s.borderDash),t.lineDashOffset=s.borderDashOffset,r=this.getDistanceFromCenterForValue(e.reverse?this.min:this.max),l=this.getPointPosition(a,r),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(l.x,l.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,e=this.options,i=e.ticks;if(!i.display)return;const s=this.getIndexAngle(0);let n,o;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(s),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach(((s,a)=>{if(0===a&&this.min>=0&&!e.reverse)return;const r=i.setContext(this.getContext(a)),l=Si(r.font);if(n=this.getDistanceFromCenterForValue(this.ticks[a].value),r.showLabelBackdrop){t.font=l.string,o=t.measureText(s.label).width,t.fillStyle=r.backdropColor;const e=ki(r.backdropPadding);t.fillRect(-o/2-e.left,-n-l.size/2-e.top,o+e.width,l.size+e.height)}Ne(t,s.label,0,-n,l,{color:r.color,strokeColor:r.textStrokeColor,strokeWidth:r.textStrokeWidth})})),t.restore()}drawTitle(){}}const Io={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},zo=Object.keys(Io);function Fo(t,e){return t-e}function Vo(t,e){if(s(e))return null;const i=t._adapter,{parser:n,round:o,isoWeekday:r}=t._parseOpts;let l=e;return"function"==typeof n&&(l=n(l)),a(l)||(l="string"==typeof n?i.parse(l,n):i.parse(l)),null===l?null:(o&&(l="week"!==o||!N(r)&&!0!==r?i.startOf(l,o):i.startOf(l,"isoWeek",r)),+l)}function Bo(t,e,i,s){const n=zo.length;for(let o=zo.indexOf(t);o=e?i[s]:i[n]]=!0}}else t[e]=!0}function No(t,e,i){const s=[],n={},o=e.length;let a,r;for(a=0;a=0&&(e[l].major=!0);return e}(t,s,n,i):s}class Ho extends tn{static id="time";static defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}};constructor(t){super(t),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(t,e={}){const i=t.time||(t.time={}),s=this._adapter=new In._date(t.adapters.date);s.init(e),b(i.displayFormats,s.formats()),this._parseOpts={parser:i.parser,round:i.round,isoWeekday:i.isoWeekday},super.init(t),this._normalized=e.normalized}parse(t,e){return void 0===t?null:Vo(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,e=this._adapter,i=t.time.unit||"day";let{min:s,max:n,minDefined:o,maxDefined:r}=this.getUserBounds();function l(t){o||isNaN(t.min)||(s=Math.min(s,t.min)),r||isNaN(t.max)||(n=Math.max(n,t.max))}o&&r||(l(this._getLabelBounds()),"ticks"===t.bounds&&"labels"===t.ticks.source||l(this.getMinMax(!1))),s=a(s)&&!isNaN(s)?s:+e.startOf(Date.now(),i),n=a(n)&&!isNaN(n)?n:+e.endOf(Date.now(),i)+1,this.min=Math.min(s,n-1),this.max=Math.max(s+1,n)}_getLabelBounds(){const t=this.getLabelTimestamps();let e=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY;return t.length&&(e=t[0],i=t[t.length-1]),{min:e,max:i}}buildTicks(){const t=this.options,e=t.time,i=t.ticks,s="labels"===i.source?this.getLabelTimestamps():this._generate();"ticks"===t.bounds&&s.length&&(this.min=this._userMin||s[0],this.max=this._userMax||s[s.length-1]);const n=this.min,o=nt(s,n,this.max);return this._unit=e.unit||(i.autoSkip?Bo(e.minUnit,this.min,this.max,this._getLabelCapacity(n)):function(t,e,i,s,n){for(let o=zo.length-1;o>=zo.indexOf(i);o--){const i=zo[o];if(Io[i].common&&t._adapter.diff(n,s,i)>=e-1)return i}return zo[i?zo.indexOf(i):0]}(this,o.length,e.minUnit,this.min,this.max)),this._majorUnit=i.major.enabled&&"year"!==this._unit?function(t){for(let e=zo.indexOf(t)+1,i=zo.length;e+t.value)))}initOffsets(t=[]){let e,i,s=0,n=0;this.options.offset&&t.length&&(e=this.getDecimalForValue(t[0]),s=1===t.length?1-e:(this.getDecimalForValue(t[1])-e)/2,i=this.getDecimalForValue(t[t.length-1]),n=1===t.length?i:(i-this.getDecimalForValue(t[t.length-2]))/2);const o=t.length<3?.5:.25;s=Z(s,0,o),n=Z(n,0,o),this._offsets={start:s,end:n,factor:1/(s+1+n)}}_generate(){const t=this._adapter,e=this.min,i=this.max,s=this.options,n=s.time,o=n.unit||Bo(n.minUnit,e,i,this._getLabelCapacity(e)),a=l(s.ticks.stepSize,1),r="week"===o&&n.isoWeekday,h=N(r)||!0===r,c={};let d,u,f=e;if(h&&(f=+t.startOf(f,"isoWeek",r)),f=+t.startOf(f,h?"day":o),t.diff(i,e,o)>1e5*a)throw new Error(e+" and "+i+" are too far apart with stepSize of "+a+" "+o);const g="data"===s.ticks.source&&this.getDataTimestamps();for(d=f,u=0;d+t))}getLabelForValue(t){const e=this._adapter,i=this.options.time;return i.tooltipFormat?e.format(t,i.tooltipFormat):e.format(t,i.displayFormats.datetime)}format(t,e){const i=this.options.time.displayFormats,s=this._unit,n=e||i[s];return this._adapter.format(t,n)}_tickFormatFunction(t,e,i,s){const n=this.options,o=n.ticks.callback;if(o)return d(o,[t,e,i],this);const a=n.time.displayFormats,r=this._unit,l=this._majorUnit,h=r&&a[r],c=l&&a[l],u=i[e],f=l&&c&&u&&u.major;return this._adapter.format(t,s||(f?c:h))}generateTickLabels(t){let e,i,s;for(e=0,i=t.length;e0?a:1}getDataTimestamps(){let t,e,i=this._cache.data||[];if(i.length)return i;const s=this.getMatchingVisibleMetas();if(this._normalized&&s.length)return this._cache.data=s[0].controller.getAllParsedValues(this);for(t=0,e=s.length;t=t[r].pos&&e<=t[l].pos&&({lo:r,hi:l}=it(t,"pos",e)),({pos:s,time:o}=t[r]),({pos:n,time:a}=t[l])):(e>=t[r].time&&e<=t[l].time&&({lo:r,hi:l}=it(t,"time",e)),({time:s,pos:o}=t[r]),({time:n,pos:a}=t[l]));const h=n-s;return h?o+(a-o)*(e-s)/h:o}var $o=Object.freeze({__proto__:null,CategoryScale:class extends tn{static id="category";static defaults={ticks:{callback:mo}};constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const e=this._addedLabels;if(e.length){const t=this.getLabels();for(const{index:i,label:s}of e)t[i]===s&&t.splice(i,1);this._addedLabels=[]}super.init(t)}parse(t,e){if(s(t))return null;const i=this.getLabels();return((t,e)=>null===t?null:Z(Math.round(t),0,e))(e=isFinite(e)&&i[e]===t?e:po(i,t,l(e,t),this._addedLabels),i.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let{min:i,max:s}=this.getMinMax(!0);"ticks"===this.options.bounds&&(t||(i=0),e||(s=this.getLabels().length-1)),this.min=i,this.max=s}buildTicks(){const t=this.min,e=this.max,i=this.options.offset,s=[];let n=this.getLabels();n=0===t&&e===n.length-1?n:n.slice(t,e+1),this._valueRange=Math.max(n.length-(i?0:1),1),this._startValue=this.min-(i?.5:0);for(let i=t;i<=e;i++)s.push({value:i});return s}getLabelForValue(t){return mo.call(this,t)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(t){return"number"!=typeof t&&(t=this.parse(t)),null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}},LinearScale:_o,LogarithmicScale:So,RadialLinearScale:Ro,TimeScale:Ho,TimeSeriesScale:class extends Ho{static id="timeseries";static defaults=Ho.defaults;constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=jo(e,this.min),this._tableRange=jo(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:i}=this,s=[],n=[];let o,a,r,l,h;for(o=0,a=t.length;o=e&&l<=i&&s.push(l);if(s.length<2)return[{time:e,pos:0},{time:i,pos:1}];for(o=0,a=s.length;ot-e))}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const e=this.getDataTimestamps(),i=this.getLabelTimestamps();return t=e.length&&i.length?this.normalize(e.concat(i)):e.length?e:i,t=this._cache.all=t,t}getDecimalForValue(t){return(jo(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const e=this._offsets,i=this.getDecimalForPixel(t)/e.factor-e.end;return jo(this._table,i*this._tableRange+this._minPos,!0)}}});const Yo=["rgb(54, 162, 235)","rgb(255, 99, 132)","rgb(255, 159, 64)","rgb(255, 205, 86)","rgb(75, 192, 192)","rgb(153, 102, 255)","rgb(201, 203, 207)"],Uo=Yo.map((t=>t.replace("rgb(","rgba(").replace(")",", 0.5)")));function Xo(t){return Yo[t%Yo.length]}function qo(t){return Uo[t%Uo.length]}function Ko(t){let e=0;return(i,s)=>{const n=t.getDatasetMeta(s).controller;n instanceof $n?e=function(t,e){return t.backgroundColor=t.data.map((()=>Xo(e++))),e}(i,e):n instanceof Yn?e=function(t,e){return t.backgroundColor=t.data.map((()=>qo(e++))),e}(i,e):n&&(e=function(t,e){return t.borderColor=Xo(e),t.backgroundColor=qo(e),++e}(i,e))}}function Go(t){let e;for(e in t)if(t[e].borderColor||t[e].backgroundColor)return!0;return!1}var Jo={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(t,e,i){if(!i.enabled)return;const{data:{datasets:s},options:n}=t.config,{elements:o}=n,a=Go(s)||(r=n)&&(r.borderColor||r.backgroundColor)||o&&Go(o)||"rgba(0,0,0,0.1)"!==ue.borderColor||"rgba(0,0,0,0.1)"!==ue.backgroundColor;var r;if(!i.forceOverride&&a)return;const l=Ko(t);s.forEach(l)}};function Zo(t){if(t._decimated){const e=t._data;delete t._decimated,delete t._data,Object.defineProperty(t,"data",{configurable:!0,enumerable:!0,writable:!0,value:e})}}function Qo(t){t.data.datasets.forEach((t=>{Zo(t)}))}var ta={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(t,e,i)=>{if(!i.enabled)return void Qo(t);const n=t.width;t.data.datasets.forEach(((e,o)=>{const{_data:a,indexAxis:r}=e,l=t.getDatasetMeta(o),h=a||e.data;if("y"===Pi([r,t.options.indexAxis]))return;if(!l.controller.supportsDecimation)return;const c=t.scales[l.xAxisID];if("linear"!==c.type&&"time"!==c.type)return;if(t.options.parsing)return;let{start:d,count:u}=function(t,e){const i=e.length;let s,n=0;const{iScale:o}=t,{min:a,max:r,minDefined:l,maxDefined:h}=o.getUserBounds();return l&&(n=Z(it(e,o.axis,a).lo,0,i-1)),s=h?Z(it(e,o.axis,r).hi+1,n,i)-n:i-n,{start:n,count:s}}(l,h);if(u<=(i.threshold||4*n))return void Zo(e);let f;switch(s(a)&&(e._data=h,delete e.data,Object.defineProperty(e,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(t){this._data=t}})),i.algorithm){case"lttb":f=function(t,e,i,s,n){const o=n.samples||s;if(o>=i)return t.slice(e,e+i);const a=[],r=(i-2)/(o-2);let l=0;const h=e+i-1;let c,d,u,f,g,p=e;for(a[l++]=t[p],c=0;cu&&(u=f,d=t[s],g=s);a[l++]=d,p=g}return a[l++]=t[h],a}(h,d,u,n,i);break;case"min-max":f=function(t,e,i,n){let o,a,r,l,h,c,d,u,f,g,p=0,m=0;const x=[],b=e+i-1,_=t[e].x,y=t[b].x-_;for(o=e;og&&(g=l,d=o),p=(m*p+a.x)/++m;else{const i=o-1;if(!s(c)&&!s(d)){const e=Math.min(c,d),s=Math.max(c,d);e!==u&&e!==i&&x.push({...t[e],x:p}),s!==u&&s!==i&&x.push({...t[s],x:p})}o>0&&i!==u&&x.push(t[i]),x.push(a),h=e,m=0,f=g=l,c=d=u=o}}return x}(h,d,u,n);break;default:throw new Error(`Unsupported decimation algorithm '${i.algorithm}'`)}e._decimated=f}))},destroy(t){Qo(t)}};function ea(t,e,i,s){if(s)return;let n=e[t],o=i[t];return"angle"===t&&(n=G(n),o=G(o)),{property:t,start:n,end:o}}function ia(t,e,i){for(;e>t;e--){const t=i[e];if(!isNaN(t.x)&&!isNaN(t.y))break}return e}function sa(t,e,i,s){return t&&e?s(t[i],e[i]):t?t[i]:e?e[i]:0}function na(t,e){let i=[],s=!1;return n(t)?(s=!0,i=t):i=function(t,e){const{x:i=null,y:s=null}=t||{},n=e.points,o=[];return e.segments.forEach((({start:t,end:e})=>{e=ia(t,e,n);const a=n[t],r=n[e];null!==s?(o.push({x:a.x,y:s}),o.push({x:r.x,y:s})):null!==i&&(o.push({x:i,y:a.y}),o.push({x:i,y:r.y}))})),o}(t,e),i.length?new oo({points:i,options:{tension:0},_loop:s,_fullLoop:s}):null}function oa(t){return t&&!1!==t.fill}function aa(t,e,i){let s=t[e].fill;const n=[e];let o;if(!i)return s;for(;!1!==s&&-1===n.indexOf(s);){if(!a(s))return s;if(o=t[s],!o)return!1;if(o.visible)return s;n.push(s),s=o.fill}return!1}function ra(t,e,i){const s=function(t){const e=t.options,i=e.fill;let s=l(i&&i.target,i);void 0===s&&(s=!!e.backgroundColor);if(!1===s||null===s)return!1;if(!0===s)return"origin";return s}(t);if(o(s))return!isNaN(s.value)&&s;let n=parseFloat(s);return a(n)&&Math.floor(n)===n?function(t,e,i,s){"-"!==t&&"+"!==t||(i=e+i);if(i===e||i<0||i>=s)return!1;return i}(s[0],e,n,i):["origin","start","end","stack","shape"].indexOf(s)>=0&&s}function la(t,e,i){const s=[];for(let n=0;n=0;--e){const i=n[e].$filler;i&&(i.line.updateControlPoints(o,i.axis),s&&i.fill&&ua(t.ctx,i,o))}},beforeDatasetsDraw(t,e,i){if("beforeDatasetsDraw"!==i.drawTime)return;const s=t.getSortedVisibleDatasetMetas();for(let e=s.length-1;e>=0;--e){const i=s[e].$filler;oa(i)&&ua(t.ctx,i,t.chartArea)}},beforeDatasetDraw(t,e,i){const s=e.meta.$filler;oa(s)&&"beforeDatasetDraw"===i.drawTime&&ua(t.ctx,s,t.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const _a=(t,e)=>{let{boxHeight:i=e,boxWidth:s=e}=t;return t.usePointStyle&&(i=Math.min(i,e),s=t.pointStyleWidth||Math.min(s,e)),{boxWidth:s,boxHeight:i,itemHeight:Math.max(e,i)}};class ya extends $s{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,i){this.maxWidth=t,this.maxHeight=e,this._margins=i,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=d(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter((e=>t.filter(e,this.chart.data)))),t.sort&&(e=e.sort(((e,i)=>t.sort(e,i,this.chart.data)))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display)return void(this.width=this.height=0);const i=t.labels,s=Si(i.font),n=s.size,o=this._computeTitleHeight(),{boxWidth:a,itemHeight:r}=_a(i,n);let l,h;e.font=s.string,this.isHorizontal()?(l=this.maxWidth,h=this._fitRows(o,n,a,r)+10):(h=this.maxHeight,l=this._fitCols(o,s,a,r)+10),this.width=Math.min(l,t.maxWidth||this.maxWidth),this.height=Math.min(h,t.maxHeight||this.maxHeight)}_fitRows(t,e,i,s){const{ctx:n,maxWidth:o,options:{labels:{padding:a}}}=this,r=this.legendHitBoxes=[],l=this.lineWidths=[0],h=s+a;let c=t;n.textAlign="left",n.textBaseline="middle";let d=-1,u=-h;return this.legendItems.forEach(((t,f)=>{const g=i+e/2+n.measureText(t.text).width;(0===f||l[l.length-1]+g+2*a>o)&&(c+=h,l[l.length-(f>0?0:1)]=0,u+=h,d++),r[f]={left:0,top:u,row:d,width:g,height:s},l[l.length-1]+=g+a})),c}_fitCols(t,e,i,s){const{ctx:n,maxHeight:o,options:{labels:{padding:a}}}=this,r=this.legendHitBoxes=[],l=this.columnSizes=[],h=o-t;let c=a,d=0,u=0,f=0,g=0;return this.legendItems.forEach(((t,o)=>{const{itemWidth:p,itemHeight:m}=function(t,e,i,s,n){const o=function(t,e,i,s){let n=t.text;n&&"string"!=typeof n&&(n=n.reduce(((t,e)=>t.length>e.length?t:e)));return e+i.size/2+s.measureText(n).width}(s,t,e,i),a=function(t,e,i){let s=t;"string"!=typeof e.text&&(s=va(e,i));return s}(n,s,e.lineHeight);return{itemWidth:o,itemHeight:a}}(i,e,n,t,s);o>0&&u+m+2*a>h&&(c+=d+a,l.push({width:d,height:u}),f+=d+a,g++,d=u=0),r[o]={left:f,top:u,col:g,width:p,height:m},d=Math.max(d,p),u+=m+a})),c+=d,l.push({width:d,height:u}),c}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:i,labels:{padding:s},rtl:n}}=this,o=Oi(n,this.left,this.width);if(this.isHorizontal()){let n=0,a=ft(i,this.left+s,this.right-this.lineWidths[n]);for(const r of e)n!==r.row&&(n=r.row,a=ft(i,this.left+s,this.right-this.lineWidths[n])),r.top+=this.top+t+s,r.left=o.leftForLtr(o.x(a),r.width),a+=r.width+s}else{let n=0,a=ft(i,this.top+t+s,this.bottom-this.columnSizes[n].height);for(const r of e)r.col!==n&&(n=r.col,a=ft(i,this.top+t+s,this.bottom-this.columnSizes[n].height)),r.top=a,r.left+=this.left+s,r.left=o.leftForLtr(o.x(r.left),r.width),a+=r.height+s}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const t=this.ctx;Ie(t,this),this._draw(),ze(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:i,ctx:s}=this,{align:n,labels:o}=t,a=ue.color,r=Oi(t.rtl,this.left,this.width),h=Si(o.font),{padding:c}=o,d=h.size,u=d/2;let f;this.drawTitle(),s.textAlign=r.textAlign("left"),s.textBaseline="middle",s.lineWidth=.5,s.font=h.string;const{boxWidth:g,boxHeight:p,itemHeight:m}=_a(o,d),x=this.isHorizontal(),b=this._computeTitleHeight();f=x?{x:ft(n,this.left+c,this.right-i[0]),y:this.top+c+b,line:0}:{x:this.left+c,y:ft(n,this.top+b+c,this.bottom-e[0].height),line:0},Ai(this.ctx,t.textDirection);const _=m+c;this.legendItems.forEach(((y,v)=>{s.strokeStyle=y.fontColor,s.fillStyle=y.fontColor;const M=s.measureText(y.text).width,w=r.textAlign(y.textAlign||(y.textAlign=o.textAlign)),k=g+u+M;let S=f.x,P=f.y;r.setWidth(this.width),x?v>0&&S+k+c>this.right&&(P=f.y+=_,f.line++,S=f.x=ft(n,this.left+c,this.right-i[f.line])):v>0&&P+_>this.bottom&&(S=f.x=S+e[f.line].width+c,f.line++,P=f.y=ft(n,this.top+b+c,this.bottom-e[f.line].height));if(function(t,e,i){if(isNaN(g)||g<=0||isNaN(p)||p<0)return;s.save();const n=l(i.lineWidth,1);if(s.fillStyle=l(i.fillStyle,a),s.lineCap=l(i.lineCap,"butt"),s.lineDashOffset=l(i.lineDashOffset,0),s.lineJoin=l(i.lineJoin,"miter"),s.lineWidth=n,s.strokeStyle=l(i.strokeStyle,a),s.setLineDash(l(i.lineDash,[])),o.usePointStyle){const a={radius:p*Math.SQRT2/2,pointStyle:i.pointStyle,rotation:i.rotation,borderWidth:n},l=r.xPlus(t,g/2);Ee(s,a,l,e+u,o.pointStyleWidth&&g)}else{const o=e+Math.max((d-p)/2,0),a=r.leftForLtr(t,g),l=wi(i.borderRadius);s.beginPath(),Object.values(l).some((t=>0!==t))?He(s,{x:a,y:o,w:g,h:p,radius:l}):s.rect(a,o,g,p),s.fill(),0!==n&&s.stroke()}s.restore()}(r.x(S),P,y),S=gt(w,S+g+u,x?S+k:this.right,t.rtl),function(t,e,i){Ne(s,i.text,t,e+m/2,h,{strikethrough:i.hidden,textAlign:r.textAlign(i.textAlign)})}(r.x(S),P,y),x)f.x+=k+c;else if("string"!=typeof y.text){const t=h.lineHeight;f.y+=va(y,t)+c}else f.y+=_})),Ti(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,i=Si(e.font),s=ki(e.padding);if(!e.display)return;const n=Oi(t.rtl,this.left,this.width),o=this.ctx,a=e.position,r=i.size/2,l=s.top+r;let h,c=this.left,d=this.width;if(this.isHorizontal())d=Math.max(...this.lineWidths),h=this.top+l,c=ft(t.align,c,this.right-d);else{const e=this.columnSizes.reduce(((t,e)=>Math.max(t,e.height)),0);h=l+ft(t.align,this.top,this.bottom-e-t.labels.padding-this._computeTitleHeight())}const u=ft(a,c,c+d);o.textAlign=n.textAlign(ut(a)),o.textBaseline="middle",o.strokeStyle=e.color,o.fillStyle=e.color,o.font=i.string,Ne(o,e.text,u,h,i)}_computeTitleHeight(){const t=this.options.title,e=Si(t.font),i=ki(t.padding);return t.display?e.lineHeight+i.height:0}_getLegendItemAt(t,e){let i,s,n;if(tt(t,this.left,this.right)&&tt(e,this.top,this.bottom))for(n=this.legendHitBoxes,i=0;it.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const e=t.data.datasets,{labels:{usePointStyle:i,pointStyle:s,textAlign:n,color:o,useBorderRadius:a,borderRadius:r}}=t.legend.options;return t._getSortedDatasetMetas().map((t=>{const l=t.controller.getStyle(i?0:void 0),h=ki(l.borderWidth);return{text:e[t.index].label,fillStyle:l.backgroundColor,fontColor:o,hidden:!t.visible,lineCap:l.borderCapStyle,lineDash:l.borderDash,lineDashOffset:l.borderDashOffset,lineJoin:l.borderJoinStyle,lineWidth:(h.width+h.height)/4,strokeStyle:l.borderColor,pointStyle:s||l.pointStyle,rotation:l.rotation,textAlign:n||l.textAlign,borderRadius:a&&(r||l.borderRadius),datasetIndex:t.index}}),this)}},title:{color:t=>t.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:t=>!t.startsWith("on"),labels:{_scriptable:t=>!["generateLabels","filter","sort"].includes(t)}}};class wa extends $s{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const i=this.options;if(this.left=0,this.top=0,!i.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=t,this.height=this.bottom=e;const s=n(i.text)?i.text.length:1;this._padding=ki(i.padding);const o=s*Si(i.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=o:this.width=o}isHorizontal(){const t=this.options.position;return"top"===t||"bottom"===t}_drawArgs(t){const{top:e,left:i,bottom:s,right:n,options:o}=this,a=o.align;let r,l,h,c=0;return this.isHorizontal()?(l=ft(a,i,n),h=e+t,r=n-i):("left"===o.position?(l=i+t,h=ft(a,s,e),c=-.5*C):(l=n-t,h=ft(a,e,s),c=.5*C),r=s-e),{titleX:l,titleY:h,maxWidth:r,rotation:c}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const i=Si(e.font),s=i.lineHeight/2+this._padding.top,{titleX:n,titleY:o,maxWidth:a,rotation:r}=this._drawArgs(s);Ne(t,e.text,0,0,i,{color:e.color,maxWidth:a,rotation:r,textAlign:ut(e.align),textBaseline:"middle",translation:[n,o]})}}var ka={id:"title",_element:wa,start(t,e,i){!function(t,e){const i=new wa({ctx:t.ctx,options:e,chart:t});ls.configure(t,i,e),ls.addBox(t,i),t.titleBlock=i}(t,i)},stop(t){const e=t.titleBlock;ls.removeBox(t,e),delete t.titleBlock},beforeUpdate(t,e,i){const s=t.titleBlock;ls.configure(t,s,i),s.options=i},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Sa=new WeakMap;var Pa={id:"subtitle",start(t,e,i){const s=new wa({ctx:t.ctx,options:i,chart:t});ls.configure(t,s,i),ls.addBox(t,s),Sa.set(t,s)},stop(t){ls.removeBox(t,Sa.get(t)),Sa.delete(t)},beforeUpdate(t,e,i){const s=Sa.get(t);ls.configure(t,s,i),s.options=i},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Da={average(t){if(!t.length)return!1;let e,i,s=new Set,n=0,o=0;for(e=0,i=t.length;et+e))/s.size,y:n/o}},nearest(t,e){if(!t.length)return!1;let i,s,n,o=e.x,a=e.y,r=Number.POSITIVE_INFINITY;for(i=0,s=t.length;i-1?t.split("\n"):t}function Aa(t,e){const{element:i,datasetIndex:s,index:n}=e,o=t.getDatasetMeta(s).controller,{label:a,value:r}=o.getLabelAndValue(n);return{chart:t,label:a,parsed:o.getParsed(n),raw:t.data.datasets[s].data[n],formattedValue:r,dataset:o.getDataset(),dataIndex:n,datasetIndex:s,element:i}}function Ta(t,e){const i=t.chart.ctx,{body:s,footer:n,title:o}=t,{boxWidth:a,boxHeight:r}=e,l=Si(e.bodyFont),h=Si(e.titleFont),c=Si(e.footerFont),d=o.length,f=n.length,g=s.length,p=ki(e.padding);let m=p.height,x=0,b=s.reduce(((t,e)=>t+e.before.length+e.lines.length+e.after.length),0);if(b+=t.beforeBody.length+t.afterBody.length,d&&(m+=d*h.lineHeight+(d-1)*e.titleSpacing+e.titleMarginBottom),b){m+=g*(e.displayColors?Math.max(r,l.lineHeight):l.lineHeight)+(b-g)*l.lineHeight+(b-1)*e.bodySpacing}f&&(m+=e.footerMarginTop+f*c.lineHeight+(f-1)*e.footerSpacing);let _=0;const y=function(t){x=Math.max(x,i.measureText(t).width+_)};return i.save(),i.font=h.string,u(t.title,y),i.font=l.string,u(t.beforeBody.concat(t.afterBody),y),_=e.displayColors?a+2+e.boxPadding:0,u(s,(t=>{u(t.before,y),u(t.lines,y),u(t.after,y)})),_=0,i.font=c.string,u(t.footer,y),i.restore(),x+=p.width,{width:x,height:m}}function La(t,e,i,s){const{x:n,width:o}=i,{width:a,chartArea:{left:r,right:l}}=t;let h="center";return"center"===s?h=n<=(r+l)/2?"left":"right":n<=o/2?h="left":n>=a-o/2&&(h="right"),function(t,e,i,s){const{x:n,width:o}=s,a=i.caretSize+i.caretPadding;return"left"===t&&n+o+a>e.width||"right"===t&&n-o-a<0||void 0}(h,t,e,i)&&(h="center"),h}function Ea(t,e,i){const s=i.yAlign||e.yAlign||function(t,e){const{y:i,height:s}=e;return it.height-s/2?"bottom":"center"}(t,i);return{xAlign:i.xAlign||e.xAlign||La(t,e,i,s),yAlign:s}}function Ra(t,e,i,s){const{caretSize:n,caretPadding:o,cornerRadius:a}=t,{xAlign:r,yAlign:l}=i,h=n+o,{topLeft:c,topRight:d,bottomLeft:u,bottomRight:f}=wi(a);let g=function(t,e){let{x:i,width:s}=t;return"right"===e?i-=s:"center"===e&&(i-=s/2),i}(e,r);const p=function(t,e,i){let{y:s,height:n}=t;return"top"===e?s+=i:s-="bottom"===e?n+i:n/2,s}(e,l,h);return"center"===l?"left"===r?g+=h:"right"===r&&(g-=h):"left"===r?g-=Math.max(c,u)+n:"right"===r&&(g+=Math.max(d,f)+n),{x:Z(g,0,s.width-e.width),y:Z(p,0,s.height-e.height)}}function Ia(t,e,i){const s=ki(i.padding);return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-s.right:t.x+s.left}function za(t){return Ca([],Oa(t))}function Fa(t,e){const i=e&&e.dataset&&e.dataset.tooltip&&e.dataset.tooltip.callbacks;return i?t.override(i):t}const Va={beforeTitle:e,title(t){if(t.length>0){const e=t[0],i=e.chart.data.labels,s=i?i.length:0;if(this&&this.options&&"dataset"===this.options.mode)return e.dataset.label||"";if(e.label)return e.label;if(s>0&&e.dataIndex{const e={before:[],lines:[],after:[]},n=Fa(i,t);Ca(e.before,Oa(Ba(n,"beforeLabel",this,t))),Ca(e.lines,Ba(n,"label",this,t)),Ca(e.after,Oa(Ba(n,"afterLabel",this,t))),s.push(e)})),s}getAfterBody(t,e){return za(Ba(e.callbacks,"afterBody",this,t))}getFooter(t,e){const{callbacks:i}=e,s=Ba(i,"beforeFooter",this,t),n=Ba(i,"footer",this,t),o=Ba(i,"afterFooter",this,t);let a=[];return a=Ca(a,Oa(s)),a=Ca(a,Oa(n)),a=Ca(a,Oa(o)),a}_createItems(t){const e=this._active,i=this.chart.data,s=[],n=[],o=[];let a,r,l=[];for(a=0,r=e.length;at.filter(e,s,n,i)))),t.itemSort&&(l=l.sort(((e,s)=>t.itemSort(e,s,i)))),u(l,(e=>{const i=Fa(t.callbacks,e);s.push(Ba(i,"labelColor",this,e)),n.push(Ba(i,"labelPointStyle",this,e)),o.push(Ba(i,"labelTextColor",this,e))})),this.labelColors=s,this.labelPointStyles=n,this.labelTextColors=o,this.dataPoints=l,l}update(t,e){const i=this.options.setContext(this.getContext()),s=this._active;let n,o=[];if(s.length){const t=Da[i.position].call(this,s,this._eventPosition);o=this._createItems(i),this.title=this.getTitle(o,i),this.beforeBody=this.getBeforeBody(o,i),this.body=this.getBody(o,i),this.afterBody=this.getAfterBody(o,i),this.footer=this.getFooter(o,i);const e=this._size=Ta(this,i),a=Object.assign({},t,e),r=Ea(this.chart,i,a),l=Ra(i,a,r,this.chart);this.xAlign=r.xAlign,this.yAlign=r.yAlign,n={opacity:1,x:l.x,y:l.y,width:e.width,height:e.height,caretX:t.x,caretY:t.y}}else 0!==this.opacity&&(n={opacity:0});this._tooltipItems=o,this.$context=void 0,n&&this._resolveAnimations().update(this,n),t&&i.external&&i.external.call(this,{chart:this.chart,tooltip:this,replay:e})}drawCaret(t,e,i,s){const n=this.getCaretPosition(t,i,s);e.lineTo(n.x1,n.y1),e.lineTo(n.x2,n.y2),e.lineTo(n.x3,n.y3)}getCaretPosition(t,e,i){const{xAlign:s,yAlign:n}=this,{caretSize:o,cornerRadius:a}=i,{topLeft:r,topRight:l,bottomLeft:h,bottomRight:c}=wi(a),{x:d,y:u}=t,{width:f,height:g}=e;let p,m,x,b,_,y;return"center"===n?(_=u+g/2,"left"===s?(p=d,m=p-o,b=_+o,y=_-o):(p=d+f,m=p+o,b=_-o,y=_+o),x=p):(m="left"===s?d+Math.max(r,h)+o:"right"===s?d+f-Math.max(l,c)-o:this.caretX,"top"===n?(b=u,_=b-o,p=m-o,x=m+o):(b=u+g,_=b+o,p=m+o,x=m-o),y=b),{x1:p,x2:m,x3:x,y1:b,y2:_,y3:y}}drawTitle(t,e,i){const s=this.title,n=s.length;let o,a,r;if(n){const l=Oi(i.rtl,this.x,this.width);for(t.x=Ia(this,i.titleAlign,i),e.textAlign=l.textAlign(i.titleAlign),e.textBaseline="middle",o=Si(i.titleFont),a=i.titleSpacing,e.fillStyle=i.titleColor,e.font=o.string,r=0;r0!==t))?(t.beginPath(),t.fillStyle=n.multiKeyBackground,He(t,{x:e,y:g,w:h,h:l,radius:r}),t.fill(),t.stroke(),t.fillStyle=a.backgroundColor,t.beginPath(),He(t,{x:i,y:g+1,w:h-2,h:l-2,radius:r}),t.fill()):(t.fillStyle=n.multiKeyBackground,t.fillRect(e,g,h,l),t.strokeRect(e,g,h,l),t.fillStyle=a.backgroundColor,t.fillRect(i,g+1,h-2,l-2))}t.fillStyle=this.labelTextColors[i]}drawBody(t,e,i){const{body:s}=this,{bodySpacing:n,bodyAlign:o,displayColors:a,boxHeight:r,boxWidth:l,boxPadding:h}=i,c=Si(i.bodyFont);let d=c.lineHeight,f=0;const g=Oi(i.rtl,this.x,this.width),p=function(i){e.fillText(i,g.x(t.x+f),t.y+d/2),t.y+=d+n},m=g.textAlign(o);let x,b,_,y,v,M,w;for(e.textAlign=o,e.textBaseline="middle",e.font=c.string,t.x=Ia(this,m,i),e.fillStyle=i.bodyColor,u(this.beforeBody,p),f=a&&"right"!==m?"center"===o?l/2+h:l+2+h:0,y=0,M=s.length;y0&&e.stroke()}_updateAnimationTarget(t){const e=this.chart,i=this.$animations,s=i&&i.x,n=i&&i.y;if(s||n){const i=Da[t.position].call(this,this._active,this._eventPosition);if(!i)return;const o=this._size=Ta(this,t),a=Object.assign({},i,this._size),r=Ea(e,t,a),l=Ra(t,a,r,e);s._to===l.x&&n._to===l.y||(this.xAlign=r.xAlign,this.yAlign=r.yAlign,this.width=o.width,this.height=o.height,this.caretX=i.x,this.caretY=i.y,this._resolveAnimations().update(this,l))}}_willRender(){return!!this.opacity}draw(t){const e=this.options.setContext(this.getContext());let i=this.opacity;if(!i)return;this._updateAnimationTarget(e);const s={width:this.width,height:this.height},n={x:this.x,y:this.y};i=Math.abs(i)<.001?0:i;const o=ki(e.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&a&&(t.save(),t.globalAlpha=i,this.drawBackground(n,t,s,e),Ai(t,e.textDirection),n.y+=o.top,this.drawTitle(n,t,e),this.drawBody(n,t,e),this.drawFooter(n,t,e),Ti(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const i=this._active,s=t.map((({datasetIndex:t,index:e})=>{const i=this.chart.getDatasetMeta(t);if(!i)throw new Error("Cannot find a dataset at index "+t);return{datasetIndex:t,element:i.data[e],index:e}})),n=!f(i,s),o=this._positionChanged(s,e);(n||o)&&(this._active=s,this._eventPosition=e,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,e,i=!0){if(e&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const s=this.options,n=this._active||[],o=this._getActiveElements(t,n,e,i),a=this._positionChanged(o,t),r=e||!f(o,n)||a;return r&&(this._active=o,(s.enabled||s.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),r}_getActiveElements(t,e,i,s){const n=this.options;if("mouseout"===t.type)return[];if(!s)return e.filter((t=>this.chart.data.datasets[t.datasetIndex]&&void 0!==this.chart.getDatasetMeta(t.datasetIndex).controller.getParsed(t.index)));const o=this.chart.getElementsAtEventForMode(t,n.mode,n,i);return n.reverse&&o.reverse(),o}_positionChanged(t,e){const{caretX:i,caretY:s,options:n}=this,o=Da[n.position].call(this,t,e);return!1!==o&&(i!==o.x||s!==o.y)}}var Na={id:"tooltip",_element:Wa,positioners:Da,afterInit(t,e,i){i&&(t.tooltip=new Wa({chart:t,options:i}))},beforeUpdate(t,e,i){t.tooltip&&t.tooltip.initialize(i)},reset(t,e,i){t.tooltip&&t.tooltip.initialize(i)},afterDraw(t){const e=t.tooltip;if(e&&e._willRender()){const i={tooltip:e};if(!1===t.notifyPlugins("beforeTooltipDraw",{...i,cancelable:!0}))return;e.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",i)}},afterEvent(t,e){if(t.tooltip){const i=e.replay;t.tooltip.handleEvent(e.event,i,e.inChartArea)&&(e.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,e)=>e.bodyFont.size,boxWidth:(t,e)=>e.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:Va},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:t=>"filter"!==t&&"itemSort"!==t&&"external"!==t,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};return Tn.register(Un,$o,go,t),Tn.helpers={...Hi},Tn._adapters=In,Tn.Animation=As,Tn.Animations=Ts,Tn.animator=bt,Tn.controllers=nn.controllers.items,Tn.DatasetController=js,Tn.Element=$s,Tn.elements=go,Tn.Interaction=Ki,Tn.layouts=ls,Tn.platforms=Ds,Tn.Scale=tn,Tn.Ticks=ae,Object.assign(Tn,Un,$o,go,t,Ds),Tn.Chart=Tn,"undefined"!=typeof window&&(window.Chart=Tn),Tn})); //# sourceMappingURL=chart.umd.js.map diff --git a/lnbits/static/vendor/nostr.bundle.js b/lnbits/static/vendor/nostr.bundle.js index 9bd0f0c6..81998850 100644 --- a/lnbits/static/vendor/nostr.bundle.js +++ b/lnbits/static/vendor/nostr.bundle.js @@ -38,6 +38,7 @@ var NostrTools = (() => { nip10: () => nip10_exports, nip11: () => nip11_exports, nip13: () => nip13_exports, + nip17: () => nip17_exports, nip18: () => nip18_exports, nip19: () => nip19_exports, nip21: () => nip21_exports, @@ -49,7 +50,10 @@ var NostrTools = (() => { nip42: () => nip42_exports, nip44: () => nip44_exports, nip47: () => nip47_exports, + nip54: () => nip54_exports, nip57: () => nip57_exports, + nip59: () => nip59_exports, + nip77: () => nip77_exports, nip98: () => nip98_exports, parseReferences: () => parseReferences, serializeEvent: () => serializeEvent, @@ -2037,7 +2041,7 @@ var NostrTools = (() => { if (!Array.isArray(tag)) return false; for (let j = 0; j < tag.length; j++) { - if (typeof tag[j] === "object") + if (typeof tag[j] !== "string") return false; } } @@ -2368,6 +2372,8 @@ var NostrTools = (() => { Queue: () => Queue, QueueNode: () => QueueNode, binarySearch: () => binarySearch, + bytesToHex: () => bytesToHex2, + hexToBytes: () => hexToBytes2, insertEventIntoAscendingList: () => insertEventIntoAscendingList, insertEventIntoDescendingList: () => insertEventIntoDescendingList, normalizeURL: () => normalizeURL, @@ -2377,17 +2383,25 @@ var NostrTools = (() => { var utf8Decoder = new TextDecoder("utf-8"); var utf8Encoder = new TextEncoder(); function normalizeURL(url) { - if (url.indexOf("://") === -1) - url = "wss://" + url; - let p = new URL(url); - p.pathname = p.pathname.replace(/\/+/g, "/"); - if (p.pathname.endsWith("/")) - p.pathname = p.pathname.slice(0, -1); - if (p.port === "80" && p.protocol === "ws:" || p.port === "443" && p.protocol === "wss:") - p.port = ""; - p.searchParams.sort(); - p.hash = ""; - return p.toString(); + try { + if (url.indexOf("://") === -1) + url = "wss://" + url; + let p = new URL(url); + if (p.protocol === "http:") + p.protocol = "ws:"; + else if (p.protocol === "https:") + p.protocol = "wss:"; + p.pathname = p.pathname.replace(/\/+/g, "/"); + if (p.pathname.endsWith("/")) + p.pathname = p.pathname.slice(0, -1); + if (p.port === "80" && p.protocol === "ws:" || p.port === "443" && p.protocol === "wss:") + p.port = ""; + p.searchParams.sort(); + p.hash = ""; + return p.toString(); + } catch (e) { + throw new Error(`Invalid URL: ${url}`); + } } function insertEventIntoDescendingList(sortedArray, event) { const [idx, found] = binarySearch(sortedArray, (b) => { @@ -2474,6 +2488,9 @@ var NostrTools = (() => { } const target = this.first; this.first = target.next; + if (this.first) { + this.first.prev = null; + } return target.value; } }; @@ -2553,17 +2570,18 @@ var NostrTools = (() => { CreateOrUpdateStall: () => CreateOrUpdateStall, Curationsets: () => Curationsets, Date: () => Date2, + DirectMessageRelaysList: () => DirectMessageRelaysList, DraftClassifiedListing: () => DraftClassifiedListing, DraftLong: () => DraftLong, Emojisets: () => Emojisets, EncryptedDirectMessage: () => EncryptedDirectMessage, - EncryptedDirectMessages: () => EncryptedDirectMessages, EventDeletion: () => EventDeletion, FileMetadata: () => FileMetadata, FileServerPreference: () => FileServerPreference, Followsets: () => Followsets, GenericRepost: () => GenericRepost, Genericlists: () => Genericlists, + GiftWrap: () => GiftWrap, HTTPAuth: () => HTTPAuth, Handlerinformation: () => Handlerinformation, Handlerrecommendation: () => Handlerrecommendation, @@ -2586,6 +2604,7 @@ var NostrTools = (() => { NostrConnect: () => NostrConnect, OpenTimestamps: () => OpenTimestamps, Pinlist: () => Pinlist, + PrivateDirectMessage: () => PrivateDirectMessage, ProblemTracker: () => ProblemTracker, ProfileBadges: () => ProfileBadges, PublicChatsList: () => PublicChatsList, @@ -2596,6 +2615,7 @@ var NostrTools = (() => { Report: () => Report, Reporting: () => Reporting, Repost: () => Repost, + Seal: () => Seal, SearchRelaysList: () => SearchRelaysList, ShortTextNote: () => ShortTextNote, Time: () => Time, @@ -2605,21 +2625,22 @@ var NostrTools = (() => { ZapGoal: () => ZapGoal, ZapRequest: () => ZapRequest, classifyKind: () => classifyKind, + isAddressableKind: () => isAddressableKind, isEphemeralKind: () => isEphemeralKind, - isParameterizedReplaceableKind: () => isParameterizedReplaceableKind, + isKind: () => isKind, isRegularKind: () => isRegularKind, isReplaceableKind: () => isReplaceableKind }); function isRegularKind(kind) { - return 1e3 <= kind && kind < 1e4 || [1, 2, 4, 5, 6, 7, 8, 16, 40, 41, 42, 43, 44].includes(kind); + return kind < 1e4 && kind !== 0 && kind !== 3; } function isReplaceableKind(kind) { - return [0, 3].includes(kind) || 1e4 <= kind && kind < 2e4; + return kind === 0 || kind === 3 || 1e4 <= kind && kind < 2e4; } function isEphemeralKind(kind) { return 2e4 <= kind && kind < 3e4; } - function isParameterizedReplaceableKind(kind) { + function isAddressableKind(kind) { return 3e4 <= kind && kind < 4e4; } function classifyKind(kind) { @@ -2629,20 +2650,25 @@ var NostrTools = (() => { return "replaceable"; if (isEphemeralKind(kind)) return "ephemeral"; - if (isParameterizedReplaceableKind(kind)) + if (isAddressableKind(kind)) return "parameterized"; return "unknown"; } + function isKind(event, kind) { + const kindAsArray = kind instanceof Array ? kind : [kind]; + return validateEvent(event) && kindAsArray.includes(event.kind) || false; + } var Metadata = 0; var ShortTextNote = 1; var RecommendRelay = 2; var Contacts = 3; var EncryptedDirectMessage = 4; - var EncryptedDirectMessages = 4; var EventDeletion = 5; var Repost = 6; var Reaction = 7; var BadgeAward = 8; + var Seal = 13; + var PrivateDirectMessage = 14; var GenericRepost = 16; var ChannelCreation = 40; var ChannelMetadata = 41; @@ -2650,6 +2676,7 @@ var NostrTools = (() => { var ChannelHideMessage = 43; var ChannelMuteUser = 44; var OpenTimestamps = 1040; + var GiftWrap = 1059; var FileMetadata = 1063; var LiveChatMessage = 1311; var ProblemTracker = 1971; @@ -2674,6 +2701,7 @@ var NostrTools = (() => { var SearchRelaysList = 10007; var InterestsList = 10015; var UserEmojiList = 10030; + var DirectMessageRelaysList = 10050; var FileServerPreference = 10096; var NWCWalletInfo = 13194; var LightningPubRPC = 21e3; @@ -2779,7 +2807,7 @@ var NostrTools = (() => { Math.max(0, filter.limit ?? Infinity), filter.ids?.length ?? Infinity, filter.authors?.length && filter.kinds?.every((kind) => isReplaceableKind(kind)) ? filter.authors.length * filter.kinds.length : Infinity, - filter.authors?.length && filter.kinds?.every((kind) => isParameterizedReplaceableKind(kind)) && filter["#d"]?.length ? filter.authors.length * filter.kinds.length * filter["#d"].length : Infinity + filter.authors?.length && filter.kinds?.every((kind) => isAddressableKind(kind)) && filter["#d"]?.length ? filter.authors.length * filter.kinds.length * filter["#d"].length : Infinity ); } @@ -2849,15 +2877,30 @@ var NostrTools = (() => { // helpers.ts async function yieldThread() { - return new Promise((resolve) => { - const ch = new MessageChannel(); - const handler = () => { - ch.port1.removeEventListener("message", handler); - resolve(); - }; - ch.port1.addEventListener("message", handler); - ch.port2.postMessage(0); - ch.port1.start(); + return new Promise((resolve, reject) => { + try { + if (typeof MessageChannel !== "undefined") { + const ch = new MessageChannel(); + const handler = () => { + ch.port1.removeEventListener("message", handler); + resolve(); + }; + ch.port1.addEventListener("message", handler); + ch.port2.postMessage(0); + ch.port1.start(); + } else { + if (typeof setImmediate !== "undefined") { + setImmediate(resolve); + } else if (typeof setTimeout !== "undefined") { + setTimeout(resolve, 0); + } else { + resolve(); + } + } + } catch (e) { + console.error("during yield: ", e); + reject(e); + } }); } var alwaysTrue = (t) => { @@ -2866,16 +2909,31 @@ var NostrTools = (() => { }; // abstract-relay.ts + var SendingOnClosedConnection = class extends Error { + constructor(message, relay) { + super(`Tried to send message '${message} on a closed connection to ${relay}.`); + this.name = "SendingOnClosedConnection"; + } + }; var AbstractRelay = class { url; _connected = false; onclose = null; onnotice = (msg) => console.debug(`NOTICE from ${this.url}: ${msg}`); - _onauth = null; baseEoseTimeout = 4400; connectionTimeout = 4400; + publishTimeout = 4400; + pingFrequency = 2e4; + pingTimeout = 2e4; + resubscribeBackoff = [1e4, 1e4, 1e4, 2e4, 2e4, 3e4, 6e4]; openSubs = /* @__PURE__ */ new Map(); + enablePing; + enableReconnect; connectionTimeoutHandle; + reconnectTimeoutHandle; + pingTimeoutHandle; + reconnectAttempts = 0; + closedIntentionally = false; connectionPromise; openCountRequests = /* @__PURE__ */ new Map(); openEventPublishes = /* @__PURE__ */ new Map(); @@ -2883,6 +2941,7 @@ var NostrTools = (() => { incomingMessageQueue = new Queue(); queueRunning = false; challenge; + authPromise; serial = 0; verifyEvent; _WebSocket; @@ -2890,6 +2949,8 @@ var NostrTools = (() => { this.url = normalizeURL(url); this.verifyEvent = opts.verifyEvent; this._WebSocket = opts.websocketImplementation || WebSocket; + this.enablePing = opts.enablePing; + this.enableReconnect = opts.enableReconnect || false; } static async connect(url, opts) { const relay = new AbstractRelay(url, opts); @@ -2913,10 +2974,37 @@ var NostrTools = (() => { get connected() { return this._connected; } + async reconnect() { + const backoff = this.resubscribeBackoff[Math.min(this.reconnectAttempts, this.resubscribeBackoff.length - 1)]; + this.reconnectAttempts++; + this.reconnectTimeoutHandle = setTimeout(async () => { + try { + await this.connect(); + } catch (err) { + } + }, backoff); + } + handleHardClose(reason) { + if (this.pingTimeoutHandle) { + clearTimeout(this.pingTimeoutHandle); + this.pingTimeoutHandle = void 0; + } + this._connected = false; + this.connectionPromise = void 0; + const wasIntentional = this.closedIntentionally; + this.closedIntentionally = false; + this.onclose?.(); + if (this.enableReconnect && !wasIntentional) { + this.reconnect(); + } else { + this.closeAllSubscriptions(reason); + } + } async connect() { if (this.connectionPromise) return this.connectionPromise; this.challenge = void 0; + this.authPromise = void 0; this.connectionPromise = new Promise((resolve, reject) => { this.connectionTimeoutHandle = setTimeout(() => { reject("connection timed out"); @@ -2927,35 +3015,77 @@ var NostrTools = (() => { try { this.ws = new this._WebSocket(this.url); } catch (err) { + clearTimeout(this.connectionTimeoutHandle); reject(err); return; } this.ws.onopen = () => { + if (this.reconnectTimeoutHandle) { + clearTimeout(this.reconnectTimeoutHandle); + this.reconnectTimeoutHandle = void 0; + } clearTimeout(this.connectionTimeoutHandle); this._connected = true; + this.reconnectAttempts = 0; + for (const sub of this.openSubs.values()) { + sub.eosed = false; + if (typeof this.enableReconnect === "function") { + sub.filters = this.enableReconnect(sub.filters); + } + sub.fire(); + } + if (this.enablePing) { + this.pingpong(); + } resolve(); }; this.ws.onerror = (ev) => { + clearTimeout(this.connectionTimeoutHandle); reject(ev.message || "websocket error"); - if (this._connected) { - this._connected = false; - this.connectionPromise = void 0; - this.onclose?.(); - this.closeAllSubscriptions("relay connection errored"); - } + this.handleHardClose("relay connection errored"); }; - this.ws.onclose = async () => { - if (this._connected) { - this._connected = false; - this.connectionPromise = void 0; - this.onclose?.(); - this.closeAllSubscriptions("relay connection closed"); - } + this.ws.onclose = (ev) => { + clearTimeout(this.connectionTimeoutHandle); + reject(ev.message || "websocket closed"); + this.handleHardClose("relay connection closed"); }; this.ws.onmessage = this._onmessage.bind(this); }); return this.connectionPromise; } + waitForPingPong() { + return new Promise((resolve) => { + ; + this.ws.once("pong", () => resolve(true)); + this.ws.ping(); + }); + } + async waitForDummyReq() { + return new Promise((resolve, _) => { + const sub = this.subscribe([{ ids: ["a".repeat(64)] }], { + oneose: () => { + sub.close(); + resolve(true); + }, + eoseTimeout: this.pingTimeout + 1e3 + }); + }); + } + async pingpong() { + if (this.ws?.readyState === 1) { + const result = await Promise.any([ + this.ws && this.ws.ping && this.ws.once ? this.waitForPingPong() : this.waitForDummyReq(), + new Promise((res) => setTimeout(() => res(false), this.pingTimeout)) + ]); + if (result) { + this.pingTimeoutHandle = setTimeout(() => this.pingpong(), this.pingFrequency); + } else { + if (this.ws?.readyState === this._WebSocket.OPEN) { + this.ws?.close(); + } + } + } + } async runQueue() { this.queueRunning = true; while (true) { @@ -3017,11 +3147,14 @@ var NostrTools = (() => { const ok = data[2]; const reason = data[3]; const ep = this.openEventPublishes.get(id); - if (ok) - ep.resolve(reason); - else - ep.reject(new Error(reason)); - this.openEventPublishes.delete(id); + if (ep) { + clearTimeout(ep.timeout); + if (ok) + ep.resolve(reason); + else + ep.reject(new Error(reason)); + this.openEventPublishes.delete(id); + } return; } case "CLOSED": { @@ -3033,12 +3166,17 @@ var NostrTools = (() => { so.close(data[2]); return; } - case "NOTICE": + case "NOTICE": { this.onnotice(data[1]); return; + } case "AUTH": { this.challenge = data[1]; - this._onauth?.(data[1]); + return; + } + default: { + const so = this.openSubs.get(data[1]); + so?.oncustom?.(data); return; } } @@ -3048,24 +3186,45 @@ var NostrTools = (() => { } async send(message) { if (!this.connectionPromise) - throw new Error("sending on closed connection"); + throw new SendingOnClosedConnection(message, this.url); this.connectionPromise.then(() => { this.ws?.send(message); }); } async auth(signAuthEvent) { - if (!this.challenge) + const challenge2 = this.challenge; + if (!challenge2) throw new Error("can't perform auth, no challenge was received"); - const evt = await signAuthEvent(makeAuthEvent(this.url, this.challenge)); - const ret = new Promise((resolve, reject) => { - this.openEventPublishes.set(evt.id, { resolve, reject }); + if (this.authPromise) + return this.authPromise; + this.authPromise = new Promise(async (resolve, reject) => { + try { + let evt = await signAuthEvent(makeAuthEvent(this.url, challenge2)); + let timeout = setTimeout(() => { + let ep = this.openEventPublishes.get(evt.id); + if (ep) { + ep.reject(new Error("auth timed out")); + this.openEventPublishes.delete(evt.id); + } + }, this.publishTimeout); + this.openEventPublishes.set(evt.id, { resolve, reject, timeout }); + this.send('["AUTH",' + JSON.stringify(evt) + "]"); + } catch (err) { + console.warn("subscribe auth function failed:", err); + } }); - this.send('["AUTH",' + JSON.stringify(evt) + "]"); - return ret; + return this.authPromise; } async publish(event) { const ret = new Promise((resolve, reject) => { - this.openEventPublishes.set(event.id, { resolve, reject }); + const timeout = setTimeout(() => { + const ep = this.openEventPublishes.get(event.id); + if (ep) { + ep.reject(new Error("publish timed out")); + this.openEventPublishes.delete(event.id); + } + }, this.publishTimeout); + this.openEventPublishes.set(event.id, { resolve, reject, timeout }); }); this.send('["EVENT",' + JSON.stringify(event) + "]"); return ret; @@ -3080,21 +3239,33 @@ var NostrTools = (() => { return ret; } subscribe(filters, params) { - const subscription = this.prepareSubscription(filters, params); - subscription.fire(); - return subscription; + const sub = this.prepareSubscription(filters, params); + sub.fire(); + return sub; } prepareSubscription(filters, params) { this.serial++; - const id = params.id || "sub:" + this.serial; + const id = params.id || (params.label ? params.label + ":" : "sub:") + this.serial; const subscription = new Subscription(this, id, filters, params); this.openSubs.set(id, subscription); return subscription; } close() { + this.closedIntentionally = true; + if (this.reconnectTimeoutHandle) { + clearTimeout(this.reconnectTimeoutHandle); + this.reconnectTimeoutHandle = void 0; + } + if (this.pingTimeoutHandle) { + clearTimeout(this.pingTimeoutHandle); + this.pingTimeoutHandle = void 0; + } this.closeAllSubscriptions("relay connection closed by us"); this._connected = false; - this.ws?.close(); + this.onclose?.(); + if (this.ws?.readyState === this._WebSocket.OPEN) { + this.ws?.close(); + } } _onmessage(ev) { this.incomingMessageQueue.enqueue(ev.data); @@ -3114,9 +3285,12 @@ var NostrTools = (() => { onevent; oneose; onclose; + oncustom; eoseTimeout; eoseTimeoutHandle; constructor(relay, id, filters, params) { + if (filters.length === 0) + throw new Error("subscription can't be created with zero filters"); this.relay = relay; this.filters = filters; this.id = id; @@ -3145,7 +3319,14 @@ var NostrTools = (() => { } close(reason = "closed by caller") { if (!this.closed && this.relay.connected) { - this.relay.send('["CLOSE",' + JSON.stringify(this.id) + "]"); + try { + this.relay.send('["CLOSE",' + JSON.stringify(this.id) + "]"); + } catch (err) { + if (err instanceof SendingOnClosedConnection) { + } else { + throw err; + } + } this.closed = true; } this.relay.openSubs.delete(this.id); @@ -3160,11 +3341,11 @@ var NostrTools = (() => { } catch { } var Relay = class extends AbstractRelay { - constructor(url) { - super(url, { verifyEvent, websocketImplementation: _WebSocket }); + constructor(url, options) { + super(url, { verifyEvent, websocketImplementation: _WebSocket, ...options }); } - static async connect(url) { - const relay = new Relay(url); + static async connect(url, options) { + const relay = new Relay(url, options); await relay.connect(); return relay; } @@ -3176,11 +3357,15 @@ var NostrTools = (() => { seenOn = /* @__PURE__ */ new Map(); trackRelays = false; verifyEvent; + enablePing; + enableReconnect; trustedRelayURLs = /* @__PURE__ */ new Set(); _WebSocket; constructor(opts) { this.verifyEvent = opts.verifyEvent; this._WebSocket = opts.websocketImplementation; + this.enablePing = opts.enablePing; + this.enableReconnect = opts.enableReconnect; } async ensureRelay(url, params) { url = normalizeURL(url); @@ -3188,8 +3373,15 @@ var NostrTools = (() => { if (!relay) { relay = new AbstractRelay(url, { verifyEvent: this.trustedRelayURLs.has(url) ? alwaysTrue : this.verifyEvent, - websocketImplementation: this._WebSocket + websocketImplementation: this._WebSocket, + enablePing: this.enablePing, + enableReconnect: this.enableReconnect }); + relay.onclose = () => { + if (relay && !relay.enableReconnect) { + this.relays.delete(url); + } + }; if (params?.connectionTimeout) relay.connectionTimeout = params.connectionTimeout; this.relays.set(url, relay); @@ -3200,12 +3392,43 @@ var NostrTools = (() => { close(relays) { relays.map(normalizeURL).forEach((url) => { this.relays.get(url)?.close(); + this.relays.delete(url); }); } - subscribeMany(relays, filters, params) { - return this.subscribeManyMap(Object.fromEntries(relays.map((url) => [url, filters])), params); + subscribe(relays, filter, params) { + params.onauth = params.onauth || params.doauth; + const request = []; + for (let i2 = 0; i2 < relays.length; i2++) { + const url = normalizeURL(relays[i2]); + if (!request.find((r) => r.url === url)) { + request.push({ url, filter }); + } + } + return this.subscribeMap(request, params); } - subscribeManyMap(requests, params) { + subscribeMany(relays, filter, params) { + params.onauth = params.onauth || params.doauth; + const request = []; + const uniqUrls = []; + for (let i2 = 0; i2 < relays.length; i2++) { + const url = normalizeURL(relays[i2]); + if (uniqUrls.indexOf(url) === -1) { + uniqUrls.push(url); + request.push({ url, filter }); + } + } + return this.subscribeMap(request, params); + } + subscribeMap(requests, params) { + params.onauth = params.onauth || params.doauth; + const grouped = /* @__PURE__ */ new Map(); + for (const req of requests) { + const { url, filter } = req; + if (!grouped.has(url)) + grouped.set(url, []); + grouped.get(url).push(filter); + } + const groupedRequests = Array.from(grouped.entries()).map(([url, filters]) => ({ url, filters })); if (this.trackRelays) { params.receivedEvent = (relay, id) => { let set = this.seenOn.get(id); @@ -3218,11 +3441,12 @@ var NostrTools = (() => { } const _knownIds = /* @__PURE__ */ new Set(); const subs = []; - const relaysLength = Object.keys(requests).length; const eosesReceived = []; let handleEose = (i2) => { + if (eosesReceived[i2]) + return; eosesReceived[i2] = true; - if (eosesReceived.filter((a) => a).length === relaysLength) { + if (eosesReceived.filter((a) => a).length === groupedRequests.length) { params.oneose?.(); handleEose = () => { }; @@ -3230,9 +3454,11 @@ var NostrTools = (() => { }; const closesReceived = []; let handleClose = (i2, reason) => { + if (closesReceived[i2]) + return; handleEose(i2); closesReceived[i2] = reason; - if (closesReceived.filter((a) => a).length === relaysLength) { + if (closesReceived.filter((a) => a).length === groupedRequests.length) { params.onclose?.(closesReceived); handleClose = () => { }; @@ -3247,13 +3473,7 @@ var NostrTools = (() => { return have; }; const allOpened = Promise.all( - Object.entries(requests).map(async (req, i2, arr) => { - if (arr.indexOf(req) !== i2) { - handleClose(i2, "duplicate url"); - return; - } - let [url, filters] = req; - url = normalizeURL(url); + groupedRequests.map(async ({ url, filters }, i2) => { let relay; try { relay = await this.ensureRelay(url, { @@ -3266,7 +3486,25 @@ var NostrTools = (() => { let subscription = relay.subscribe(filters, { ...params, oneose: () => handleEose(i2), - onclose: (reason) => handleClose(i2, reason), + onclose: (reason) => { + if (reason.startsWith("auth-required: ") && params.onauth) { + relay.auth(params.onauth).then(() => { + relay.subscribe(filters, { + ...params, + oneose: () => handleEose(i2), + onclose: (reason2) => { + handleClose(i2, reason2); + }, + alreadyHaveEvent: localAlreadyHaveEventHandler, + eoseTimeout: params.maxWait + }); + }).catch((err) => { + handleClose(i2, `auth was required and attempted, but failed with: ${err}`); + }); + } else { + handleClose(i2, reason); + } + }, alreadyHaveEvent: localAlreadyHaveEventHandler, eoseTimeout: params.maxWait }); @@ -3274,19 +3512,30 @@ var NostrTools = (() => { }) ); return { - async close() { + async close(reason) { await allOpened; subs.forEach((sub) => { - sub.close(); + sub.close(reason); }); } }; } - subscribeManyEose(relays, filters, params) { - const subcloser = this.subscribeMany(relays, filters, { + subscribeEose(relays, filter, params) { + params.onauth = params.onauth || params.doauth; + const subcloser = this.subscribe(relays, filter, { ...params, oneose() { - subcloser.close(); + subcloser.close("closed automatically on eose"); + } + }); + return subcloser; + } + subscribeManyEose(relays, filter, params) { + params.onauth = params.onauth || params.doauth; + const subcloser = this.subscribeMany(relays, filter, { + ...params, + oneose() { + subcloser.close("closed automatically on eose"); } }); return subcloser; @@ -3294,7 +3543,7 @@ var NostrTools = (() => { async querySync(relays, filter, params) { return new Promise(async (resolve) => { const events = []; - this.subscribeManyEose(relays, [filter], { + this.subscribeEose(relays, filter, { ...params, onevent(event) { events.push(event); @@ -3311,13 +3560,29 @@ var NostrTools = (() => { events.sort((a, b) => b.created_at - a.created_at); return events[0] || null; } - publish(relays, event) { + publish(relays, event, options) { return relays.map(normalizeURL).map(async (url, i2, arr) => { if (arr.indexOf(url) !== i2) { return Promise.reject("duplicate url"); } let r = await this.ensureRelay(url); - return r.publish(event); + return r.publish(event).catch(async (err) => { + if (err instanceof Error && err.message.startsWith("auth-required: ") && options?.onauth) { + await r.auth(options.onauth); + return r.publish(event); + } + throw err; + }).then((reason) => { + if (this.trackRelays) { + let set = this.seenOn.get(event.id); + if (!set) { + set = /* @__PURE__ */ new Set(); + this.seenOn.set(event.id, set); + } + set.add(r); + } + return reason; + }); }); } listConnectionStatus() { @@ -3338,8 +3603,8 @@ var NostrTools = (() => { } catch { } var SimplePool = class extends AbstractSimplePool { - constructor() { - super({ verifyEvent, websocketImplementation: _WebSocket2 }); + constructor(options) { + super({ verifyEvent, websocketImplementation: _WebSocket2, ...options }); } }; @@ -3348,14 +3613,15 @@ var NostrTools = (() => { __export(nip19_exports, { BECH32_REGEX: () => BECH32_REGEX, Bech32MaxSize: () => Bech32MaxSize, + NostrTypeGuard: () => NostrTypeGuard, decode: () => decode, + decodeNostrURI: () => decodeNostrURI, encodeBytes: () => encodeBytes, naddrEncode: () => naddrEncode, neventEncode: () => neventEncode, noteEncode: () => noteEncode, nprofileEncode: () => nprofileEncode, npubEncode: () => npubEncode, - nrelayEncode: () => nrelayEncode, nsecEncode: () => nsecEncode }); @@ -3713,6 +3979,15 @@ var NostrTools = (() => { var coderTypeError = `Invalid encoding type. Available types: ${Object.keys(CODERS).join(", ")}`; // nip19.ts + var NostrTypeGuard = { + isNProfile: (value) => /^nprofile1[a-z\d]+$/.test(value || ""), + isNEvent: (value) => /^nevent1[a-z\d]+$/.test(value || ""), + isNAddr: (value) => /^naddr1[a-z\d]+$/.test(value || ""), + isNSec: (value) => /^nsec1[a-z\d]{58}$/.test(value || ""), + isNPub: (value) => /^npub1[a-z\d]{58}$/.test(value || ""), + isNote: (value) => /^note1[a-z\d]+$/.test(value || ""), + isNcryptsec: (value) => /^ncryptsec1[a-z\d]+$/.test(value || "") + }; var Bech32MaxSize = 5e3; var BECH32_REGEX = /[\x21-\x7E]{1,83}1[023456789acdefghjklmnpqrstuvwxyz]{6,}/; function integerToUint8Array(number4) { @@ -3723,8 +3998,17 @@ var NostrTools = (() => { uint8Array[3] = number4 & 255; return uint8Array; } - function decode(nip19) { - let { prefix, words } = bech32.decode(nip19, Bech32MaxSize); + function decodeNostrURI(nip19code) { + try { + if (nip19code.startsWith("nostr:")) + nip19code = nip19code.substring(6); + return decode(nip19code); + } catch (_err) { + return { type: "invalid", data: null }; + } + } + function decode(code) { + let { prefix, words } = bech32.decode(code, Bech32MaxSize); let data = new Uint8Array(bech32.fromWords(words)); switch (prefix) { case "nprofile": { @@ -3783,15 +4067,6 @@ var NostrTools = (() => { } }; } - case "nrelay": { - let tlv = parseTLV(data); - if (!tlv[0]?.[0]) - throw new Error("missing TLV 0 for nrelay"); - return { - type: "nrelay", - data: utf8Decoder.decode(tlv[0][0]) - }; - } case "nsec": return { type: prefix, data }; case "npub": @@ -3863,12 +4138,6 @@ var NostrTools = (() => { }); return encodeBech32("naddr", data); } - function nrelayEncode(url) { - let data = encodeTLV({ - 0: [utf8Encoder.encode(url)] - }); - return encodeBech32("nrelay", data); - } function encodeTLV(tlv) { let entries = []; Object.entries(tlv).reverse().forEach(([t, vs]) => { @@ -4018,6 +4287,44 @@ var NostrTools = (() => { var isLE3 = new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68; if (!isLE3) throw new Error("Non little-endian hardware is not supported"); + var hexes3 = /* @__PURE__ */ Array.from({ length: 256 }, (_, i2) => i2.toString(16).padStart(2, "0")); + function bytesToHex3(bytes4) { + bytes3(bytes4); + let hex2 = ""; + for (let i2 = 0; i2 < bytes4.length; i2++) { + hex2 += hexes3[bytes4[i2]]; + } + return hex2; + } + var asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 }; + function asciiToBase16(char) { + if (char >= asciis._0 && char <= asciis._9) + return char - asciis._0; + if (char >= asciis._A && char <= asciis._F) + return char - (asciis._A - 10); + if (char >= asciis._a && char <= asciis._f) + return char - (asciis._a - 10); + return; + } + function hexToBytes3(hex2) { + if (typeof hex2 !== "string") + throw new Error("hex string expected, got " + typeof hex2); + const hl = hex2.length; + const al = hl / 2; + if (hl % 2) + throw new Error("padded hex string expected, got unpadded hex of length " + hl); + const array = new Uint8Array(al); + for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) { + const n1 = asciiToBase16(hex2.charCodeAt(hi)); + const n2 = asciiToBase16(hex2.charCodeAt(hi + 1)); + if (n1 === void 0 || n2 === void 0) { + const char = hex2[hi] + hex2[hi + 1]; + throw new Error('hex string expected, got non-hex character "' + char + '" at index ' + hi); + } + array[ai] = n1 * 16 + n2; + } + return array; + } function utf8ToBytes4(str) { if (typeof str !== "string") throw new Error(`string expected, got ${typeof str}`); @@ -4758,7 +5065,7 @@ var NostrTools = (() => { }); // nip04.ts - async function encrypt2(secretKey, pubkey, text) { + function encrypt2(secretKey, pubkey, text) { const privkey = secretKey instanceof Uint8Array ? bytesToHex2(secretKey) : secretKey; const key = secp256k1.getSharedSecret(privkey, "02" + pubkey); const normalizedKey = getNormalizedX(key); @@ -4769,7 +5076,7 @@ var NostrTools = (() => { let ivb64 = base64.encode(new Uint8Array(iv.buffer)); return `${ctb64}?iv=${ivb64}`; } - async function decrypt2(secretKey, pubkey, data) { + function decrypt2(secretKey, pubkey, data) { const privkey = secretKey instanceof Uint8Array ? bytesToHex2(secretKey) : secretKey; let [ctb64, ivb64] = data.split("?iv="); let key = secp256k1.getSharedSecret(privkey, "02" + pubkey); @@ -4787,16 +5094,19 @@ var NostrTools = (() => { var nip05_exports = {}; __export(nip05_exports, { NIP05_REGEX: () => NIP05_REGEX, + isNip05: () => isNip05, isValid: () => isValid, queryProfile: () => queryProfile, searchDomain: () => searchDomain, useFetchImplementation: () => useFetchImplementation }); var NIP05_REGEX = /^(?:([\w.+-]+)@)?([\w_-]+(\.[\w_-]+)+)$/; + var isNip05 = (value) => NIP05_REGEX.test(value || ""); var _fetch; try { _fetch = fetch; - } catch { + } catch (_) { + null; } function useFetchImplementation(fetchImplementation) { _fetch = fetchImplementation; @@ -4804,7 +5114,10 @@ var NostrTools = (() => { async function searchDomain(domain, query = "") { try { const url = `https://${domain}/.well-known/nostr.json?name=${query}`; - const res = await _fetch(url, { redirect: "error" }); + const res = await _fetch(url, { redirect: "manual" }); + if (res.status !== 200) { + throw Error("Wrong response code"); + } const json = await res.json(); return json.names; } catch (_) { @@ -4815,18 +5128,22 @@ var NostrTools = (() => { const match = fullname.match(NIP05_REGEX); if (!match) return null; - const [_, name = "_", domain] = match; + const [, name = "_", domain] = match; try { const url = `https://${domain}/.well-known/nostr.json?name=${name}`; - const res = await (await _fetch(url, { redirect: "error" })).json(); - let pubkey = res.names[name]; - return pubkey ? { pubkey, relays: res.relays?.[pubkey] } : null; + const res = await _fetch(url, { redirect: "manual" }); + if (res.status !== 200) { + throw Error("Wrong response code"); + } + const json = await res.json(); + const pubkey = json.names[name]; + return pubkey ? { pubkey, relays: json.relays?.[pubkey] } : null; } catch (_e) { return null; } } async function isValid(pubkey, nip05) { - let res = await queryProfile(nip05); + const res = await queryProfile(nip05); return res ? res.pubkey === pubkey : false; } @@ -4840,51 +5157,98 @@ var NostrTools = (() => { reply: void 0, root: void 0, mentions: [], - profiles: [] + profiles: [], + quotes: [] }; - const eTags = []; - for (const tag of event.tags) { + let maybeParent; + let maybeRoot; + for (let i2 = event.tags.length - 1; i2 >= 0; i2--) { + const tag = event.tags[i2]; if (tag[0] === "e" && tag[1]) { - eTags.push(tag); + const [_, eTagEventId, eTagRelayUrl, eTagMarker, eTagAuthor] = tag; + const eventPointer = { + id: eTagEventId, + relays: eTagRelayUrl ? [eTagRelayUrl] : [], + author: eTagAuthor + }; + if (eTagMarker === "root") { + result.root = eventPointer; + continue; + } + if (eTagMarker === "reply") { + result.reply = eventPointer; + continue; + } + if (eTagMarker === "mention") { + result.mentions.push(eventPointer); + continue; + } + if (!maybeParent) { + maybeParent = eventPointer; + } else { + maybeRoot = eventPointer; + } + result.mentions.push(eventPointer); + continue; + } + if (tag[0] === "q" && tag[1]) { + const [_, eTagEventId, eTagRelayUrl] = tag; + result.quotes.push({ + id: eTagEventId, + relays: eTagRelayUrl ? [eTagRelayUrl] : [] + }); } if (tag[0] === "p" && tag[1]) { result.profiles.push({ pubkey: tag[1], relays: tag[2] ? [tag[2]] : [] }); + continue; } } - for (let eTagIndex = 0; eTagIndex < eTags.length; eTagIndex++) { - const eTag = eTags[eTagIndex]; - const [_, eTagEventId, eTagRelayUrl, eTagMarker] = eTag; - const eventPointer = { - id: eTagEventId, - relays: eTagRelayUrl ? [eTagRelayUrl] : [] - }; - const isFirstETag = eTagIndex === 0; - const isLastETag = eTagIndex === eTags.length - 1; - if (eTagMarker === "root") { - result.root = eventPointer; - continue; - } - if (eTagMarker === "reply") { - result.reply = eventPointer; - continue; - } - if (eTagMarker === "mention") { - result.mentions.push(eventPointer); - continue; - } - if (isFirstETag) { - result.root = eventPointer; - continue; - } - if (isLastETag) { - result.reply = eventPointer; - continue; - } - result.mentions.push(eventPointer); + if (!result.root) { + result.root = maybeRoot || maybeParent || result.reply; } + if (!result.reply) { + result.reply = maybeParent || result.root; + } + ; + [result.reply, result.root].forEach((ref) => { + if (!ref) + return; + let idx = result.mentions.indexOf(ref); + if (idx !== -1) { + result.mentions.splice(idx, 1); + } + if (ref.author) { + let author = result.profiles.find((p) => p.pubkey === ref.author); + if (author && author.relays) { + if (!ref.relays) { + ref.relays = []; + } + author.relays.forEach((url) => { + if (ref.relays?.indexOf(url) === -1) + ref.relays.push(url); + }); + author.relays = ref.relays; + } + } + }); + result.mentions.forEach((ref) => { + if (ref.author) { + let author = result.profiles.find((p) => p.pubkey === ref.author); + if (author && author.relays) { + if (!ref.relays) { + ref.relays = []; + } + author.relays.forEach((url) => { + if (ref.relays.indexOf(url) === -1) + ref.relays.push(url); + }); + author.relays = ref.relays; + } + } + }); return result; } @@ -4911,17 +5275,18 @@ var NostrTools = (() => { // nip13.ts var nip13_exports = {}; __export(nip13_exports, { + fastEventHash: () => fastEventHash, getPow: () => getPow, minePow: () => minePow }); function getPow(hex2) { let count = 0; - for (let i2 = 0; i2 < hex2.length; i2++) { - const nibble = parseInt(hex2[i2], 16); + for (let i2 = 0; i2 < 64; i2 += 8) { + const nibble = parseInt(hex2.substring(i2, i2 + 8), 16); if (nibble === 0) { - count += 4; + count += 32; } else { - count += Math.clz32(nibble) - 28; + count += Math.clz32(nibble); break; } } @@ -4933,340 +5298,45 @@ var NostrTools = (() => { const tag = ["nonce", count.toString(), difficulty.toString()]; event.tags.push(tag); while (true) { - const now = Math.floor(new Date().getTime() / 1e3); - if (now !== event.created_at) { + const now2 = Math.floor(new Date().getTime() / 1e3); + if (now2 !== event.created_at) { count = 0; - event.created_at = now; + event.created_at = now2; } tag[1] = (++count).toString(); - event.id = getEventHash(event); + event.id = fastEventHash(event); if (getPow(event.id) >= difficulty) { break; } } return event; } - - // nip18.ts - var nip18_exports = {}; - __export(nip18_exports, { - finishRepostEvent: () => finishRepostEvent, - getRepostedEvent: () => getRepostedEvent, - getRepostedEventPointer: () => getRepostedEventPointer - }); - function finishRepostEvent(t, reposted, relayUrl, privateKey) { - return finalizeEvent( - { - kind: Repost, - tags: [...t.tags ?? [], ["e", reposted.id, relayUrl], ["p", reposted.pubkey]], - content: t.content === "" ? "" : JSON.stringify(reposted), - created_at: t.created_at - }, - privateKey + function fastEventHash(evt) { + return bytesToHex2( + sha2562(utf8Encoder.encode(JSON.stringify([0, evt.pubkey, evt.created_at, evt.kind, evt.tags, evt.content]))) ); } - function getRepostedEventPointer(event) { - if (event.kind !== Repost) { - return void 0; - } - let lastETag; - let lastPTag; - for (let i2 = event.tags.length - 1; i2 >= 0 && (lastETag === void 0 || lastPTag === void 0); i2--) { - const tag = event.tags[i2]; - if (tag.length >= 2) { - if (tag[0] === "e" && lastETag === void 0) { - lastETag = tag; - } else if (tag[0] === "p" && lastPTag === void 0) { - lastPTag = tag; - } - } - } - if (lastETag === void 0) { - return void 0; - } - return { - id: lastETag[1], - relays: [lastETag[2], lastPTag?.[2]].filter((x) => typeof x === "string"), - author: lastPTag?.[1] - }; - } - function getRepostedEvent(event, { skipVerification } = {}) { - const pointer = getRepostedEventPointer(event); - if (pointer === void 0 || event.content === "") { - return void 0; - } - let repostedEvent; - try { - repostedEvent = JSON.parse(event.content); - } catch (error) { - return void 0; - } - if (repostedEvent.id !== pointer.id) { - return void 0; - } - if (!skipVerification && !verifyEvent(repostedEvent)) { - return void 0; - } - return repostedEvent; - } - // nip21.ts - var nip21_exports = {}; - __export(nip21_exports, { - NOSTR_URI_REGEX: () => NOSTR_URI_REGEX, - parse: () => parse2, - test: () => test + // nip17.ts + var nip17_exports = {}; + __export(nip17_exports, { + unwrapEvent: () => unwrapEvent2, + unwrapManyEvents: () => unwrapManyEvents2, + wrapEvent: () => wrapEvent2, + wrapManyEvents: () => wrapManyEvents2 }); - var NOSTR_URI_REGEX = new RegExp(`nostr:(${BECH32_REGEX.source})`); - function test(value) { - return typeof value === "string" && new RegExp(`^${NOSTR_URI_REGEX.source}$`).test(value); - } - function parse2(uri) { - const match = uri.match(new RegExp(`^${NOSTR_URI_REGEX.source}$`)); - if (!match) - throw new Error(`Invalid Nostr URI: ${uri}`); - return { - uri: match[0], - value: match[1], - decoded: decode(match[1]) - }; - } - // nip25.ts - var nip25_exports = {}; - __export(nip25_exports, { - finishReactionEvent: () => finishReactionEvent, - getReactedEventPointer: () => getReactedEventPointer + // nip59.ts + var nip59_exports = {}; + __export(nip59_exports, { + createRumor: () => createRumor, + createSeal: () => createSeal, + createWrap: () => createWrap, + unwrapEvent: () => unwrapEvent, + unwrapManyEvents: () => unwrapManyEvents, + wrapEvent: () => wrapEvent, + wrapManyEvents: () => wrapManyEvents }); - function finishReactionEvent(t, reacted, privateKey) { - const inheritedTags = reacted.tags.filter((tag) => tag.length >= 2 && (tag[0] === "e" || tag[0] === "p")); - return finalizeEvent( - { - ...t, - kind: Reaction, - tags: [...t.tags ?? [], ...inheritedTags, ["e", reacted.id], ["p", reacted.pubkey]], - content: t.content ?? "+" - }, - privateKey - ); - } - function getReactedEventPointer(event) { - if (event.kind !== Reaction) { - return void 0; - } - let lastETag; - let lastPTag; - for (let i2 = event.tags.length - 1; i2 >= 0 && (lastETag === void 0 || lastPTag === void 0); i2--) { - const tag = event.tags[i2]; - if (tag.length >= 2) { - if (tag[0] === "e" && lastETag === void 0) { - lastETag = tag; - } else if (tag[0] === "p" && lastPTag === void 0) { - lastPTag = tag; - } - } - } - if (lastETag === void 0 || lastPTag === void 0) { - return void 0; - } - return { - id: lastETag[1], - relays: [lastETag[2], lastPTag[2]].filter((x) => x !== void 0), - author: lastPTag[1] - }; - } - - // nip27.ts - var nip27_exports = {}; - __export(nip27_exports, { - matchAll: () => matchAll, - regex: () => regex, - replaceAll: () => replaceAll - }); - var regex = () => new RegExp(`\\b${NOSTR_URI_REGEX.source}\\b`, "g"); - function* matchAll(content) { - const matches = content.matchAll(regex()); - for (const match of matches) { - try { - const [uri, value] = match; - yield { - uri, - value, - decoded: decode(value), - start: match.index, - end: match.index + uri.length - }; - } catch (_e) { - } - } - } - function replaceAll(content, replacer) { - return content.replaceAll(regex(), (uri, value) => { - return replacer({ - uri, - value, - decoded: decode(value) - }); - }); - } - - // nip28.ts - var nip28_exports = {}; - __export(nip28_exports, { - channelCreateEvent: () => channelCreateEvent, - channelHideMessageEvent: () => channelHideMessageEvent, - channelMessageEvent: () => channelMessageEvent, - channelMetadataEvent: () => channelMetadataEvent, - channelMuteUserEvent: () => channelMuteUserEvent - }); - var channelCreateEvent = (t, privateKey) => { - let content; - if (typeof t.content === "object") { - content = JSON.stringify(t.content); - } else if (typeof t.content === "string") { - content = t.content; - } else { - return void 0; - } - return finalizeEvent( - { - kind: ChannelCreation, - tags: [...t.tags ?? []], - content, - created_at: t.created_at - }, - privateKey - ); - }; - var channelMetadataEvent = (t, privateKey) => { - let content; - if (typeof t.content === "object") { - content = JSON.stringify(t.content); - } else if (typeof t.content === "string") { - content = t.content; - } else { - return void 0; - } - return finalizeEvent( - { - kind: ChannelMetadata, - tags: [["e", t.channel_create_event_id], ...t.tags ?? []], - content, - created_at: t.created_at - }, - privateKey - ); - }; - var channelMessageEvent = (t, privateKey) => { - const tags = [["e", t.channel_create_event_id, t.relay_url, "root"]]; - if (t.reply_to_channel_message_event_id) { - tags.push(["e", t.reply_to_channel_message_event_id, t.relay_url, "reply"]); - } - return finalizeEvent( - { - kind: ChannelMessage, - tags: [...tags, ...t.tags ?? []], - content: t.content, - created_at: t.created_at - }, - privateKey - ); - }; - var channelHideMessageEvent = (t, privateKey) => { - let content; - if (typeof t.content === "object") { - content = JSON.stringify(t.content); - } else if (typeof t.content === "string") { - content = t.content; - } else { - return void 0; - } - return finalizeEvent( - { - kind: ChannelHideMessage, - tags: [["e", t.channel_message_event_id], ...t.tags ?? []], - content, - created_at: t.created_at - }, - privateKey - ); - }; - var channelMuteUserEvent = (t, privateKey) => { - let content; - if (typeof t.content === "object") { - content = JSON.stringify(t.content); - } else if (typeof t.content === "string") { - content = t.content; - } else { - return void 0; - } - return finalizeEvent( - { - kind: ChannelMuteUser, - tags: [["p", t.pubkey_to_mute], ...t.tags ?? []], - content, - created_at: t.created_at - }, - privateKey - ); - }; - - // nip30.ts - var nip30_exports = {}; - __export(nip30_exports, { - EMOJI_SHORTCODE_REGEX: () => EMOJI_SHORTCODE_REGEX, - matchAll: () => matchAll2, - regex: () => regex2, - replaceAll: () => replaceAll2 - }); - var EMOJI_SHORTCODE_REGEX = /:(\w+):/; - var regex2 = () => new RegExp(`\\B${EMOJI_SHORTCODE_REGEX.source}\\B`, "g"); - function* matchAll2(content) { - const matches = content.matchAll(regex2()); - for (const match of matches) { - try { - const [shortcode, name] = match; - yield { - shortcode, - name, - start: match.index, - end: match.index + shortcode.length - }; - } catch (_e) { - } - } - } - function replaceAll2(content, replacer) { - return content.replaceAll(regex2(), (shortcode, name) => { - return replacer({ - shortcode, - name - }); - }); - } - - // nip39.ts - var nip39_exports = {}; - __export(nip39_exports, { - useFetchImplementation: () => useFetchImplementation3, - validateGithub: () => validateGithub - }); - var _fetch3; - try { - _fetch3 = fetch; - } catch { - } - function useFetchImplementation3(fetchImplementation) { - _fetch3 = fetchImplementation; - } - async function validateGithub(pubkey, username, proof) { - try { - let res = await (await _fetch3(`https://gist.github.com/${username}/${proof}/raw`)).text(); - return res === `Verifying that I control the following Nostr public key: ${pubkey}`; - } catch (_) { - return false; - } - } // nip44.ts var nip44_exports = {}; @@ -6084,6 +6154,557 @@ var NostrTools = (() => { decrypt: decrypt3 }; + // nip59.ts + var TWO_DAYS = 2 * 24 * 60 * 60; + var now = () => Math.round(Date.now() / 1e3); + var randomNow = () => Math.round(now() - Math.random() * TWO_DAYS); + var nip44ConversationKey = (privateKey, publicKey) => getConversationKey(privateKey, publicKey); + var nip44Encrypt = (data, privateKey, publicKey) => encrypt3(JSON.stringify(data), nip44ConversationKey(privateKey, publicKey)); + var nip44Decrypt = (data, privateKey) => JSON.parse(decrypt3(data.content, nip44ConversationKey(privateKey, data.pubkey))); + function createRumor(event, privateKey) { + const rumor = { + created_at: now(), + content: "", + tags: [], + ...event, + pubkey: getPublicKey(privateKey) + }; + rumor.id = getEventHash(rumor); + return rumor; + } + function createSeal(rumor, privateKey, recipientPublicKey) { + return finalizeEvent( + { + kind: Seal, + content: nip44Encrypt(rumor, privateKey, recipientPublicKey), + created_at: randomNow(), + tags: [] + }, + privateKey + ); + } + function createWrap(seal, recipientPublicKey) { + const randomKey = generateSecretKey(); + return finalizeEvent( + { + kind: GiftWrap, + content: nip44Encrypt(seal, randomKey, recipientPublicKey), + created_at: randomNow(), + tags: [["p", recipientPublicKey]] + }, + randomKey + ); + } + function wrapEvent(event, senderPrivateKey, recipientPublicKey) { + const rumor = createRumor(event, senderPrivateKey); + const seal = createSeal(rumor, senderPrivateKey, recipientPublicKey); + return createWrap(seal, recipientPublicKey); + } + function wrapManyEvents(event, senderPrivateKey, recipientsPublicKeys) { + if (!recipientsPublicKeys || recipientsPublicKeys.length === 0) { + throw new Error("At least one recipient is required."); + } + const senderPublicKey = getPublicKey(senderPrivateKey); + const wrappeds = [wrapEvent(event, senderPrivateKey, senderPublicKey)]; + recipientsPublicKeys.forEach((recipientPublicKey) => { + wrappeds.push(wrapEvent(event, senderPrivateKey, recipientPublicKey)); + }); + return wrappeds; + } + function unwrapEvent(wrap, recipientPrivateKey) { + const unwrappedSeal = nip44Decrypt(wrap, recipientPrivateKey); + return nip44Decrypt(unwrappedSeal, recipientPrivateKey); + } + function unwrapManyEvents(wrappedEvents, recipientPrivateKey) { + let unwrappedEvents = []; + wrappedEvents.forEach((e) => { + unwrappedEvents.push(unwrapEvent(e, recipientPrivateKey)); + }); + unwrappedEvents.sort((a, b) => a.created_at - b.created_at); + return unwrappedEvents; + } + + // nip17.ts + function createEvent(recipients, message, conversationTitle, replyTo) { + const baseEvent = { + created_at: Math.ceil(Date.now() / 1e3), + kind: PrivateDirectMessage, + tags: [], + content: message + }; + const recipientsArray = Array.isArray(recipients) ? recipients : [recipients]; + recipientsArray.forEach(({ publicKey, relayUrl }) => { + baseEvent.tags.push(relayUrl ? ["p", publicKey, relayUrl] : ["p", publicKey]); + }); + if (replyTo) { + baseEvent.tags.push(["e", replyTo.eventId, replyTo.relayUrl || "", "reply"]); + } + if (conversationTitle) { + baseEvent.tags.push(["subject", conversationTitle]); + } + return baseEvent; + } + function wrapEvent2(senderPrivateKey, recipient, message, conversationTitle, replyTo) { + const event = createEvent(recipient, message, conversationTitle, replyTo); + return wrapEvent(event, senderPrivateKey, recipient.publicKey); + } + function wrapManyEvents2(senderPrivateKey, recipients, message, conversationTitle, replyTo) { + if (!recipients || recipients.length === 0) { + throw new Error("At least one recipient is required."); + } + const senderPublicKey = getPublicKey(senderPrivateKey); + return [{ publicKey: senderPublicKey }, ...recipients].map( + (recipient) => wrapEvent2(senderPrivateKey, recipient, message, conversationTitle, replyTo) + ); + } + var unwrapEvent2 = unwrapEvent; + var unwrapManyEvents2 = unwrapManyEvents; + + // nip18.ts + var nip18_exports = {}; + __export(nip18_exports, { + finishRepostEvent: () => finishRepostEvent, + getRepostedEvent: () => getRepostedEvent, + getRepostedEventPointer: () => getRepostedEventPointer + }); + function finishRepostEvent(t, reposted, relayUrl, privateKey) { + let kind; + const tags = [...t.tags ?? [], ["e", reposted.id, relayUrl], ["p", reposted.pubkey]]; + if (reposted.kind === ShortTextNote) { + kind = Repost; + } else { + kind = GenericRepost; + tags.push(["k", String(reposted.kind)]); + } + return finalizeEvent( + { + kind, + tags, + content: t.content === "" || reposted.tags?.find((tag) => tag[0] === "-") ? "" : JSON.stringify(reposted), + created_at: t.created_at + }, + privateKey + ); + } + function getRepostedEventPointer(event) { + if (![Repost, GenericRepost].includes(event.kind)) { + return void 0; + } + let lastETag; + let lastPTag; + for (let i2 = event.tags.length - 1; i2 >= 0 && (lastETag === void 0 || lastPTag === void 0); i2--) { + const tag = event.tags[i2]; + if (tag.length >= 2) { + if (tag[0] === "e" && lastETag === void 0) { + lastETag = tag; + } else if (tag[0] === "p" && lastPTag === void 0) { + lastPTag = tag; + } + } + } + if (lastETag === void 0) { + return void 0; + } + return { + id: lastETag[1], + relays: [lastETag[2], lastPTag?.[2]].filter((x) => typeof x === "string"), + author: lastPTag?.[1] + }; + } + function getRepostedEvent(event, { skipVerification } = {}) { + const pointer = getRepostedEventPointer(event); + if (pointer === void 0 || event.content === "") { + return void 0; + } + let repostedEvent; + try { + repostedEvent = JSON.parse(event.content); + } catch (error) { + return void 0; + } + if (repostedEvent.id !== pointer.id) { + return void 0; + } + if (!skipVerification && !verifyEvent(repostedEvent)) { + return void 0; + } + return repostedEvent; + } + + // nip21.ts + var nip21_exports = {}; + __export(nip21_exports, { + NOSTR_URI_REGEX: () => NOSTR_URI_REGEX, + parse: () => parse2, + test: () => test + }); + var NOSTR_URI_REGEX = new RegExp(`nostr:(${BECH32_REGEX.source})`); + function test(value) { + return typeof value === "string" && new RegExp(`^${NOSTR_URI_REGEX.source}$`).test(value); + } + function parse2(uri) { + const match = uri.match(new RegExp(`^${NOSTR_URI_REGEX.source}$`)); + if (!match) + throw new Error(`Invalid Nostr URI: ${uri}`); + return { + uri: match[0], + value: match[1], + decoded: decode(match[1]) + }; + } + + // nip25.ts + var nip25_exports = {}; + __export(nip25_exports, { + finishReactionEvent: () => finishReactionEvent, + getReactedEventPointer: () => getReactedEventPointer + }); + function finishReactionEvent(t, reacted, privateKey) { + const inheritedTags = reacted.tags.filter((tag) => tag.length >= 2 && (tag[0] === "e" || tag[0] === "p")); + return finalizeEvent( + { + ...t, + kind: Reaction, + tags: [...t.tags ?? [], ...inheritedTags, ["e", reacted.id], ["p", reacted.pubkey]], + content: t.content ?? "+" + }, + privateKey + ); + } + function getReactedEventPointer(event) { + if (event.kind !== Reaction) { + return void 0; + } + let lastETag; + let lastPTag; + for (let i2 = event.tags.length - 1; i2 >= 0 && (lastETag === void 0 || lastPTag === void 0); i2--) { + const tag = event.tags[i2]; + if (tag.length >= 2) { + if (tag[0] === "e" && lastETag === void 0) { + lastETag = tag; + } else if (tag[0] === "p" && lastPTag === void 0) { + lastPTag = tag; + } + } + } + if (lastETag === void 0 || lastPTag === void 0) { + return void 0; + } + return { + id: lastETag[1], + relays: [lastETag[2], lastPTag[2]].filter((x) => x !== void 0), + author: lastPTag[1] + }; + } + + // nip27.ts + var nip27_exports = {}; + __export(nip27_exports, { + parse: () => parse3 + }); + var noCharacter = /\W/m; + var noURLCharacter = /\W |\W$|$|,| /m; + var MAX_HASHTAG_LENGTH = 42; + function* parse3(content) { + let emojis = []; + if (typeof content !== "string") { + for (let i2 = 0; i2 < content.tags.length; i2++) { + const tag = content.tags[i2]; + if (tag[0] === "emoji" && tag.length >= 3) { + emojis.push({ type: "emoji", shortcode: tag[1], url: tag[2] }); + } + } + content = content.content; + } + const max = content.length; + let prevIndex = 0; + let index = 0; + mainloop: + while (index < max) { + const u = content.indexOf(":", index); + const h = content.indexOf("#", index); + if (u === -1 && h === -1) { + break mainloop; + } + if (u === -1 || h >= 0 && h < u) { + if (h === 0 || content[h - 1] === " ") { + const m = content.slice(h + 1, h + MAX_HASHTAG_LENGTH).match(noCharacter); + const end = m ? h + 1 + m.index : max; + yield { type: "text", text: content.slice(prevIndex, h) }; + yield { type: "hashtag", value: content.slice(h + 1, end) }; + index = end; + prevIndex = index; + continue mainloop; + } + index = h + 1; + continue mainloop; + } + if (content.slice(u - 5, u) === "nostr") { + const m = content.slice(u + 60).match(noCharacter); + const end = m ? u + 60 + m.index : max; + try { + let pointer; + let { data, type } = decode(content.slice(u + 1, end)); + switch (type) { + case "npub": + pointer = { pubkey: data }; + break; + case "nsec": + case "note": + index = end + 1; + continue; + default: + pointer = data; + } + if (prevIndex !== u - 5) { + yield { type: "text", text: content.slice(prevIndex, u - 5) }; + } + yield { type: "reference", pointer }; + index = end; + prevIndex = index; + continue mainloop; + } catch (_err) { + index = u + 1; + continue mainloop; + } + } else if (content.slice(u - 5, u) === "https" || content.slice(u - 4, u) === "http") { + const m = content.slice(u + 4).match(noURLCharacter); + const end = m ? u + 4 + m.index : max; + const prefixLen = content[u - 1] === "s" ? 5 : 4; + try { + let url = new URL(content.slice(u - prefixLen, end)); + if (url.hostname.indexOf(".") === -1) { + throw new Error("invalid url"); + } + if (prevIndex !== u - prefixLen) { + yield { type: "text", text: content.slice(prevIndex, u - prefixLen) }; + } + if (/\.(png|jpe?g|gif|webp|heic|svg)$/i.test(url.pathname)) { + yield { type: "image", url: url.toString() }; + index = end; + prevIndex = index; + continue mainloop; + } + if (/\.(mp4|avi|webm|mkv|mov)$/i.test(url.pathname)) { + yield { type: "video", url: url.toString() }; + index = end; + prevIndex = index; + continue mainloop; + } + if (/\.(mp3|aac|ogg|opus|wav|flac)$/i.test(url.pathname)) { + yield { type: "audio", url: url.toString() }; + index = end; + prevIndex = index; + continue mainloop; + } + yield { type: "url", url: url.toString() }; + index = end; + prevIndex = index; + continue mainloop; + } catch (_err) { + index = end + 1; + continue mainloop; + } + } else if (content.slice(u - 3, u) === "wss" || content.slice(u - 2, u) === "ws") { + const m = content.slice(u + 4).match(noURLCharacter); + const end = m ? u + 4 + m.index : max; + const prefixLen = content[u - 1] === "s" ? 3 : 2; + try { + let url = new URL(content.slice(u - prefixLen, end)); + if (url.hostname.indexOf(".") === -1) { + throw new Error("invalid ws url"); + } + if (prevIndex !== u - prefixLen) { + yield { type: "text", text: content.slice(prevIndex, u - prefixLen) }; + } + yield { type: "relay", url: url.toString() }; + index = end; + prevIndex = index; + continue mainloop; + } catch (_err) { + index = end + 1; + continue mainloop; + } + } else { + for (let e = 0; e < emojis.length; e++) { + const emoji = emojis[e]; + if (content[u + emoji.shortcode.length + 1] === ":" && content.slice(u + 1, u + emoji.shortcode.length + 1) === emoji.shortcode) { + if (prevIndex !== u) { + yield { type: "text", text: content.slice(prevIndex, u) }; + } + yield emoji; + index = u + emoji.shortcode.length + 2; + prevIndex = index; + continue mainloop; + } + } + index = u + 1; + continue mainloop; + } + } + if (prevIndex !== max) { + yield { type: "text", text: content.slice(prevIndex) }; + } + } + + // nip28.ts + var nip28_exports = {}; + __export(nip28_exports, { + channelCreateEvent: () => channelCreateEvent, + channelHideMessageEvent: () => channelHideMessageEvent, + channelMessageEvent: () => channelMessageEvent, + channelMetadataEvent: () => channelMetadataEvent, + channelMuteUserEvent: () => channelMuteUserEvent + }); + var channelCreateEvent = (t, privateKey) => { + let content; + if (typeof t.content === "object") { + content = JSON.stringify(t.content); + } else if (typeof t.content === "string") { + content = t.content; + } else { + return void 0; + } + return finalizeEvent( + { + kind: ChannelCreation, + tags: [...t.tags ?? []], + content, + created_at: t.created_at + }, + privateKey + ); + }; + var channelMetadataEvent = (t, privateKey) => { + let content; + if (typeof t.content === "object") { + content = JSON.stringify(t.content); + } else if (typeof t.content === "string") { + content = t.content; + } else { + return void 0; + } + return finalizeEvent( + { + kind: ChannelMetadata, + tags: [["e", t.channel_create_event_id], ...t.tags ?? []], + content, + created_at: t.created_at + }, + privateKey + ); + }; + var channelMessageEvent = (t, privateKey) => { + const tags = [["e", t.channel_create_event_id, t.relay_url, "root"]]; + if (t.reply_to_channel_message_event_id) { + tags.push(["e", t.reply_to_channel_message_event_id, t.relay_url, "reply"]); + } + return finalizeEvent( + { + kind: ChannelMessage, + tags: [...tags, ...t.tags ?? []], + content: t.content, + created_at: t.created_at + }, + privateKey + ); + }; + var channelHideMessageEvent = (t, privateKey) => { + let content; + if (typeof t.content === "object") { + content = JSON.stringify(t.content); + } else if (typeof t.content === "string") { + content = t.content; + } else { + return void 0; + } + return finalizeEvent( + { + kind: ChannelHideMessage, + tags: [["e", t.channel_message_event_id], ...t.tags ?? []], + content, + created_at: t.created_at + }, + privateKey + ); + }; + var channelMuteUserEvent = (t, privateKey) => { + let content; + if (typeof t.content === "object") { + content = JSON.stringify(t.content); + } else if (typeof t.content === "string") { + content = t.content; + } else { + return void 0; + } + return finalizeEvent( + { + kind: ChannelMuteUser, + tags: [["p", t.pubkey_to_mute], ...t.tags ?? []], + content, + created_at: t.created_at + }, + privateKey + ); + }; + + // nip30.ts + var nip30_exports = {}; + __export(nip30_exports, { + EMOJI_SHORTCODE_REGEX: () => EMOJI_SHORTCODE_REGEX, + matchAll: () => matchAll, + regex: () => regex, + replaceAll: () => replaceAll + }); + var EMOJI_SHORTCODE_REGEX = /:(\w+):/; + var regex = () => new RegExp(`\\B${EMOJI_SHORTCODE_REGEX.source}\\B`, "g"); + function* matchAll(content) { + const matches = content.matchAll(regex()); + for (const match of matches) { + try { + const [shortcode, name] = match; + yield { + shortcode, + name, + start: match.index, + end: match.index + shortcode.length + }; + } catch (_e) { + } + } + } + function replaceAll(content, replacer) { + return content.replaceAll(regex(), (shortcode, name) => { + return replacer({ + shortcode, + name + }); + }); + } + + // nip39.ts + var nip39_exports = {}; + __export(nip39_exports, { + useFetchImplementation: () => useFetchImplementation3, + validateGithub: () => validateGithub + }); + var _fetch3; + try { + _fetch3 = fetch; + } catch { + } + function useFetchImplementation3(fetchImplementation) { + _fetch3 = fetchImplementation; + } + async function validateGithub(pubkey, username, proof) { + try { + let res = await (await _fetch3(`https://gist.github.com/${username}/${proof}/raw`)).text(); + return res === `Verifying that I control the following Nostr public key: ${pubkey}`; + } catch (_) { + return false; + } + } + // nip47.ts var nip47_exports = {}; __export(nip47_exports, { @@ -6091,8 +6712,8 @@ var NostrTools = (() => { parseConnectionString: () => parseConnectionString }); function parseConnectionString(connectionString) { - const { pathname, searchParams } = new URL(connectionString); - const pubkey = pathname; + const { host, pathname, searchParams } = new URL(connectionString); + const pubkey = pathname || host; const relay = searchParams.get("relay"); const secret = searchParams.get("secret"); if (!pubkey || !relay || !secret) { @@ -6107,7 +6728,7 @@ var NostrTools = (() => { invoice } }; - const encryptedContent = await encrypt2(secretKey, pubkey, JSON.stringify(content)); + const encryptedContent = encrypt2(secretKey, pubkey, JSON.stringify(content)); const eventTemplate = { kind: NWCWalletRequest, created_at: Math.round(Date.now() / 1e3), @@ -6117,9 +6738,26 @@ var NostrTools = (() => { return finalizeEvent(eventTemplate, secretKey); } + // nip54.ts + var nip54_exports = {}; + __export(nip54_exports, { + normalizeIdentifier: () => normalizeIdentifier + }); + function normalizeIdentifier(name) { + name = name.trim().toLowerCase(); + name = name.normalize("NFKC"); + return Array.from(name).map((char) => { + if (/\p{Letter}/u.test(char) || /\p{Number}/u.test(char)) { + return char; + } + return "-"; + }).join(""); + } + // nip57.ts var nip57_exports = {}; __export(nip57_exports, { + getSatoshisAmountFromBolt11: () => getSatoshisAmountFromBolt11, getZapEndpoint: () => getZapEndpoint, makeZapReceipt: () => makeZapReceipt, makeZapRequest: () => makeZapRequest, @@ -6138,13 +6776,13 @@ var NostrTools = (() => { try { let lnurl = ""; let { lud06, lud16 } = JSON.parse(metadata.content); - if (lud06) { + if (lud16) { + let [name, domain] = lud16.split("@"); + lnurl = new URL(`/.well-known/lnurlp/${name}`, `https://${domain}`).toString(); + } else if (lud06) { let { words } = bech32.decode(lud06, 1e3); let data = bech32.fromWords(words); lnurl = utf8Decoder.decode(data); - } else if (lud16) { - let [name, domain] = lud16.split("@"); - lnurl = new URL(`/.well-known/lnurlp/${name}`, `https://${domain}`).toString(); } else { return null; } @@ -6157,29 +6795,30 @@ var NostrTools = (() => { } return null; } - function makeZapRequest({ - profile, - event, - amount, - relays, - comment = "" - }) { - if (!amount) - throw new Error("amount not given"); - if (!profile) - throw new Error("profile not given"); + function makeZapRequest(params) { let zr = { kind: 9734, created_at: Math.round(Date.now() / 1e3), - content: comment, + content: params.comment || "", tags: [ - ["p", profile], - ["amount", amount.toString()], - ["relays", ...relays] + ["p", "pubkey" in params ? params.pubkey : params.event.pubkey], + ["amount", params.amount.toString()], + ["relays", ...params.relays] ] }; - if (event) { - zr.tags.push(["e", event]); + if ("event" in params) { + zr.tags.push(["e", params.event.id]); + if (isReplaceableKind(params.event.kind)) { + const a = ["a", `${params.event.kind}:${params.event.pubkey}:`]; + zr.tags.push(a); + } else if (isAddressableKind(params.event.kind)) { + let d = params.event.tags.find(([t, v]) => t === "d" && v); + if (!d) + throw new Error("d tag not found or is empty"); + const a = ["a", `${params.event.kind}:${params.event.pubkey}:${d[1]}`]; + zr.tags.push(a); + } + zr.tags.push(["k", params.event.kind.toString()]); } return zr; } @@ -6226,6 +6865,545 @@ var NostrTools = (() => { } return zap; } + function getSatoshisAmountFromBolt11(bolt11) { + if (bolt11.length < 50) { + return 0; + } + bolt11 = bolt11.substring(0, 50); + const idx = bolt11.lastIndexOf("1"); + if (idx === -1) { + return 0; + } + const hrp = bolt11.substring(0, idx); + if (!hrp.startsWith("lnbc")) { + return 0; + } + const amount = hrp.substring(4); + if (amount.length < 1) { + return 0; + } + const char = amount[amount.length - 1]; + const digit = char.charCodeAt(0) - "0".charCodeAt(0); + const isDigit = digit >= 0 && digit <= 9; + let cutPoint = amount.length - 1; + if (isDigit) { + cutPoint++; + } + if (cutPoint < 1) { + return 0; + } + const num = parseInt(amount.substring(0, cutPoint)); + switch (char) { + case "m": + return num * 1e5; + case "u": + return num * 100; + case "n": + return num / 10; + case "p": + return num / 1e4; + default: + return num * 1e8; + } + } + + // nip77.ts + var nip77_exports = {}; + __export(nip77_exports, { + Negentropy: () => Negentropy, + NegentropyStorageVector: () => NegentropyStorageVector, + NegentropySync: () => NegentropySync + }); + var PROTOCOL_VERSION = 97; + var ID_SIZE = 32; + var FINGERPRINT_SIZE = 16; + var Mode = { + Skip: 0, + Fingerprint: 1, + IdList: 2 + }; + var WrappedBuffer = class { + _raw; + length; + constructor(buffer) { + if (typeof buffer === "number") { + this._raw = new Uint8Array(buffer); + this.length = 0; + } else if (buffer instanceof Uint8Array) { + this._raw = new Uint8Array(buffer); + this.length = buffer.length; + } else { + this._raw = new Uint8Array(512); + this.length = 0; + } + } + unwrap() { + return this._raw.subarray(0, this.length); + } + get capacity() { + return this._raw.byteLength; + } + extend(buf) { + if (buf instanceof WrappedBuffer) + buf = buf.unwrap(); + if (typeof buf.length !== "number") + throw Error("bad length"); + const targetSize = buf.length + this.length; + if (this.capacity < targetSize) { + const oldRaw = this._raw; + const newCapacity = Math.max(this.capacity * 2, targetSize); + this._raw = new Uint8Array(newCapacity); + this._raw.set(oldRaw); + } + this._raw.set(buf, this.length); + this.length += buf.length; + } + shift() { + const first = this._raw[0]; + this._raw = this._raw.subarray(1); + this.length--; + return first; + } + shiftN(n = 1) { + const firstSubarray = this._raw.subarray(0, n); + this._raw = this._raw.subarray(n); + this.length -= n; + return firstSubarray; + } + }; + function decodeVarInt(buf) { + let res = 0; + while (1) { + if (buf.length === 0) + throw Error("parse ends prematurely"); + let byte = buf.shift(); + res = res << 7 | byte & 127; + if ((byte & 128) === 0) + break; + } + return res; + } + function encodeVarInt(n) { + if (n === 0) + return new WrappedBuffer(new Uint8Array([0])); + let o = []; + while (n !== 0) { + o.push(n & 127); + n >>>= 7; + } + o.reverse(); + for (let i2 = 0; i2 < o.length - 1; i2++) + o[i2] |= 128; + return new WrappedBuffer(new Uint8Array(o)); + } + function getByte(buf) { + return getBytes(buf, 1)[0]; + } + function getBytes(buf, n) { + if (buf.length < n) + throw Error("parse ends prematurely"); + return buf.shiftN(n); + } + var Accumulator = class { + buf; + constructor() { + this.setToZero(); + } + setToZero() { + this.buf = new Uint8Array(ID_SIZE); + } + add(otherBuf) { + let currCarry = 0, nextCarry = 0; + let p = new DataView(this.buf.buffer); + let po = new DataView(otherBuf.buffer); + for (let i2 = 0; i2 < 8; i2++) { + let offset = i2 * 4; + let orig = p.getUint32(offset, true); + let otherV = po.getUint32(offset, true); + let next = orig; + next += currCarry; + next += otherV; + if (next > 4294967295) + nextCarry = 1; + p.setUint32(offset, next & 4294967295, true); + currCarry = nextCarry; + nextCarry = 0; + } + } + negate() { + let p = new DataView(this.buf.buffer); + for (let i2 = 0; i2 < 8; i2++) { + let offset = i2 * 4; + p.setUint32(offset, ~p.getUint32(offset, true)); + } + let one = new Uint8Array(ID_SIZE); + one[0] = 1; + this.add(one); + } + getFingerprint(n) { + let input = new WrappedBuffer(); + input.extend(this.buf); + input.extend(encodeVarInt(n)); + let hash3 = sha2562(input.unwrap()); + return hash3.subarray(0, FINGERPRINT_SIZE); + } + }; + var NegentropyStorageVector = class { + items; + sealed; + constructor() { + this.items = []; + this.sealed = false; + } + insert(timestamp, id) { + if (this.sealed) + throw Error("already sealed"); + const idb = hexToBytes3(id); + if (idb.byteLength !== ID_SIZE) + throw Error("bad id size for added item"); + this.items.push({ timestamp, id: idb }); + } + seal() { + if (this.sealed) + throw Error("already sealed"); + this.sealed = true; + this.items.sort(itemCompare); + for (let i2 = 1; i2 < this.items.length; i2++) { + if (itemCompare(this.items[i2 - 1], this.items[i2]) === 0) + throw Error("duplicate item inserted"); + } + } + unseal() { + this.sealed = false; + } + size() { + this._checkSealed(); + return this.items.length; + } + getItem(i2) { + this._checkSealed(); + if (i2 >= this.items.length) + throw Error("out of range"); + return this.items[i2]; + } + iterate(begin, end, cb) { + this._checkSealed(); + this._checkBounds(begin, end); + for (let i2 = begin; i2 < end; ++i2) { + if (!cb(this.items[i2], i2)) + break; + } + } + findLowerBound(begin, end, bound) { + this._checkSealed(); + this._checkBounds(begin, end); + return this._binarySearch(this.items, begin, end, (a) => itemCompare(a, bound) < 0); + } + fingerprint(begin, end) { + let out = new Accumulator(); + out.setToZero(); + this.iterate(begin, end, (item) => { + out.add(item.id); + return true; + }); + return out.getFingerprint(end - begin); + } + _checkSealed() { + if (!this.sealed) + throw Error("not sealed"); + } + _checkBounds(begin, end) { + if (begin > end || end > this.items.length) + throw Error("bad range"); + } + _binarySearch(arr, first, last, cmp) { + let count = last - first; + while (count > 0) { + let it = first; + let step = Math.floor(count / 2); + it += step; + if (cmp(arr[it])) { + first = ++it; + count -= step + 1; + } else { + count = step; + } + } + return first; + } + }; + var Negentropy = class { + storage; + frameSizeLimit; + lastTimestampIn; + lastTimestampOut; + constructor(storage, frameSizeLimit = 6e4) { + if (frameSizeLimit < 4096) + throw Error("frameSizeLimit too small"); + this.storage = storage; + this.frameSizeLimit = frameSizeLimit; + this.lastTimestampIn = 0; + this.lastTimestampOut = 0; + } + _bound(timestamp, id) { + return { timestamp, id: id || new Uint8Array(0) }; + } + initiate() { + let output4 = new WrappedBuffer(); + output4.extend(new Uint8Array([PROTOCOL_VERSION])); + this.splitRange(0, this.storage.size(), this._bound(Number.MAX_VALUE), output4); + return bytesToHex3(output4.unwrap()); + } + reconcile(queryMsg, onhave, onneed) { + const query = new WrappedBuffer(hexToBytes3(queryMsg)); + this.lastTimestampIn = this.lastTimestampOut = 0; + let fullOutput = new WrappedBuffer(); + fullOutput.extend(new Uint8Array([PROTOCOL_VERSION])); + let protocolVersion = getByte(query); + if (protocolVersion < 96 || protocolVersion > 111) + throw Error("invalid negentropy protocol version byte"); + if (protocolVersion !== PROTOCOL_VERSION) { + throw Error("unsupported negentropy protocol version requested: " + (protocolVersion - 96)); + } + let storageSize = this.storage.size(); + let prevBound = this._bound(0); + let prevIndex = 0; + let skip = false; + while (query.length !== 0) { + let o = new WrappedBuffer(); + let doSkip = () => { + if (skip) { + skip = false; + o.extend(this.encodeBound(prevBound)); + o.extend(encodeVarInt(Mode.Skip)); + } + }; + let currBound = this.decodeBound(query); + let mode = decodeVarInt(query); + let lower = prevIndex; + let upper = this.storage.findLowerBound(prevIndex, storageSize, currBound); + if (mode === Mode.Skip) { + skip = true; + } else if (mode === Mode.Fingerprint) { + let theirFingerprint = getBytes(query, FINGERPRINT_SIZE); + let ourFingerprint = this.storage.fingerprint(lower, upper); + if (compareUint8Array(theirFingerprint, ourFingerprint) !== 0) { + doSkip(); + this.splitRange(lower, upper, currBound, o); + } else { + skip = true; + } + } else if (mode === Mode.IdList) { + let numIds = decodeVarInt(query); + let theirElems = {}; + for (let i2 = 0; i2 < numIds; i2++) { + let e = getBytes(query, ID_SIZE); + theirElems[bytesToHex3(e)] = e; + } + skip = true; + this.storage.iterate(lower, upper, (item) => { + let k = item.id; + const id = bytesToHex3(k); + if (!theirElems[id]) { + onhave?.(id); + } else { + delete theirElems[bytesToHex3(k)]; + } + return true; + }); + if (onneed) { + for (let v of Object.values(theirElems)) { + onneed(bytesToHex3(v)); + } + } + } else { + throw Error("unexpected mode"); + } + if (this.exceededFrameSizeLimit(fullOutput.length + o.length)) { + let remainingFingerprint = this.storage.fingerprint(upper, storageSize); + fullOutput.extend(this.encodeBound(this._bound(Number.MAX_VALUE))); + fullOutput.extend(encodeVarInt(Mode.Fingerprint)); + fullOutput.extend(remainingFingerprint); + break; + } else { + fullOutput.extend(o); + } + prevIndex = upper; + prevBound = currBound; + } + return fullOutput.length === 1 ? null : bytesToHex3(fullOutput.unwrap()); + } + splitRange(lower, upper, upperBound, o) { + let numElems = upper - lower; + let buckets = 16; + if (numElems < buckets * 2) { + o.extend(this.encodeBound(upperBound)); + o.extend(encodeVarInt(Mode.IdList)); + o.extend(encodeVarInt(numElems)); + this.storage.iterate(lower, upper, (item) => { + o.extend(item.id); + return true; + }); + } else { + let itemsPerBucket = Math.floor(numElems / buckets); + let bucketsWithExtra = numElems % buckets; + let curr = lower; + for (let i2 = 0; i2 < buckets; i2++) { + let bucketSize = itemsPerBucket + (i2 < bucketsWithExtra ? 1 : 0); + let ourFingerprint = this.storage.fingerprint(curr, curr + bucketSize); + curr += bucketSize; + let nextBound; + if (curr === upper) { + nextBound = upperBound; + } else { + let prevItem; + let currItem; + this.storage.iterate(curr - 1, curr + 1, (item, index) => { + if (index === curr - 1) + prevItem = item; + else + currItem = item; + return true; + }); + nextBound = this.getMinimalBound(prevItem, currItem); + } + o.extend(this.encodeBound(nextBound)); + o.extend(encodeVarInt(Mode.Fingerprint)); + o.extend(ourFingerprint); + } + } + } + exceededFrameSizeLimit(n) { + return n > this.frameSizeLimit - 200; + } + decodeTimestampIn(encoded) { + let timestamp = decodeVarInt(encoded); + timestamp = timestamp === 0 ? Number.MAX_VALUE : timestamp - 1; + if (this.lastTimestampIn === Number.MAX_VALUE || timestamp === Number.MAX_VALUE) { + this.lastTimestampIn = Number.MAX_VALUE; + return Number.MAX_VALUE; + } + timestamp += this.lastTimestampIn; + this.lastTimestampIn = timestamp; + return timestamp; + } + decodeBound(encoded) { + let timestamp = this.decodeTimestampIn(encoded); + let len = decodeVarInt(encoded); + if (len > ID_SIZE) + throw Error("bound key too long"); + let id = getBytes(encoded, len); + return { timestamp, id }; + } + encodeTimestampOut(timestamp) { + if (timestamp === Number.MAX_VALUE) { + this.lastTimestampOut = Number.MAX_VALUE; + return encodeVarInt(0); + } + let temp = timestamp; + timestamp -= this.lastTimestampOut; + this.lastTimestampOut = temp; + return encodeVarInt(timestamp + 1); + } + encodeBound(key) { + let output4 = new WrappedBuffer(); + output4.extend(this.encodeTimestampOut(key.timestamp)); + output4.extend(encodeVarInt(key.id.length)); + output4.extend(key.id); + return output4; + } + getMinimalBound(prev, curr) { + if (curr.timestamp !== prev.timestamp) { + return this._bound(curr.timestamp); + } else { + let sharedPrefixBytes = 0; + let currKey = curr.id; + let prevKey = prev.id; + for (let i2 = 0; i2 < ID_SIZE; i2++) { + if (currKey[i2] !== prevKey[i2]) + break; + sharedPrefixBytes++; + } + return this._bound(curr.timestamp, curr.id.subarray(0, sharedPrefixBytes + 1)); + } + } + }; + function compareUint8Array(a, b) { + for (let i2 = 0; i2 < a.byteLength; i2++) { + if (a[i2] < b[i2]) + return -1; + if (a[i2] > b[i2]) + return 1; + } + if (a.byteLength > b.byteLength) + return 1; + if (a.byteLength < b.byteLength) + return -1; + return 0; + } + function itemCompare(a, b) { + if (a.timestamp === b.timestamp) { + return compareUint8Array(a.id, b.id); + } + return a.timestamp - b.timestamp; + } + var NegentropySync = class { + relay; + storage; + neg; + filter; + subscription; + onhave; + onneed; + constructor(relay, storage, filter, params = {}) { + this.relay = relay; + this.storage = storage; + this.neg = new Negentropy(storage); + this.onhave = params.onhave; + this.onneed = params.onneed; + this.filter = filter; + this.subscription = this.relay.prepareSubscription([{}], { label: params.label || "negentropy" }); + this.subscription.oncustom = (data) => { + switch (data[0]) { + case "NEG-MSG": { + if (data.length < 3) { + console.warn(`got invalid NEG-MSG from ${this.relay.url}: ${data}`); + } + try { + const response = this.neg.reconcile(data[2], this.onhave, this.onneed); + if (response) { + this.relay.send(`["NEG-MSG", "${this.subscription.id}", "${response}"]`); + } else { + this.close(); + params.onclose?.(); + } + } catch (error) { + console.error("negentropy reconcile error:", error); + params?.onclose?.(`reconcile error: ${error}`); + } + break; + } + case "NEG-CLOSE": { + const reason = data[2]; + console.warn("negentropy error:", reason); + params.onclose?.(reason); + break; + } + case "NEG-ERR": { + params.onclose?.(); + } + } + }; + } + async start() { + const initMsg = this.neg.initiate(); + this.relay.send(`["NEG-OPEN","${this.subscription.id}",${JSON.stringify(this.filter)},"${initMsg}"]`); + } + close() { + this.relay.send(`["NEG-CLOSE","${this.subscription.id}"]`); + this.subscription.close(); + } + }; // nip98.ts var nip98_exports = {}; diff --git a/lnbits/static/vendor/qrcode.vue.browser.js b/lnbits/static/vendor/qrcode.vue.browser.js index 92679e9f..0c792c6d 100644 --- a/lnbits/static/vendor/qrcode.vue.browser.js +++ b/lnbits/static/vendor/qrcode.vue.browser.js @@ -1,1099 +1,1259 @@ /*! - * qrcode.vue v3.4.1 - * A Vue.js component to generate QRCode. - * © 2017-2023 @scopewu(https://github.com/scopewu) + * qrcode.vue v3.6.0 + * A Vue.js component to generate QRCode. Both support Vue 2 and Vue 3 + * © 2017-PRESENT @scopewu(https://github.com/scopewu) * MIT License. */ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('vue')) : - typeof define === 'function' && define.amd ? define(['vue'], factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.QrcodeVue = factory(global.Vue)); -})(this, (function (vue) { 'use strict'; +typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue')) : +typeof define === 'function' && define.amd ? define(['exports', 'vue'], factory) : +(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.QrcodeVue = {}, global.Vue)); +})(this, (function (exports, vue) { 'use strict'; - /****************************************************************************** - Copyright (c) Microsoft Corporation. +/****************************************************************************** +Copyright (c) Microsoft Corporation. - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted. +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** */ - /* global Reflect, Promise, SuppressedError, Symbol */ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ +/* global Reflect, Promise, SuppressedError, Symbol, Iterator */ - var __assign = function() { - __assign = Object.assign || function __assign(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); +var __assign = function() { + __assign = Object.assign || function __assign(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; + } + return t; }; + return __assign.apply(this, arguments); +}; - typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) { - var e = new Error(message); - return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; - }; +typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) { + var e = new Error(message); + return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; +}; +/* + * QR Code generator library (TypeScript) + * + * Copyright (c) Project Nayuki. (MIT License) + * https://www.nayuki.io/page/qr-code-generator-library + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + * the Software, and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * - The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * - The Software is provided "as is", without warranty of any kind, express or + * implied, including but not limited to the warranties of merchantability, + * fitness for a particular purpose and noninfringement. In no event shall the + * authors or copyright holders be liable for any claim, damages or other + * liability, whether in an action of contract, tort or otherwise, arising from, + * out of or in connection with the Software or the use or other dealings in the + * Software. + */ +var qrcodegen; +(function (qrcodegen) { + /*---- QR Code symbol class ----*/ /* - * QR Code generator library (TypeScript) + * A QR Code symbol, which is a type of two-dimension barcode. + * Invented by Denso Wave and described in the ISO/IEC 18004 standard. + * Instances of this class represent an immutable square grid of dark and light cells. + * The class provides static factory functions to create a QR Code from text or binary data. + * The class covers the QR Code Model 2 specification, supporting all versions (sizes) + * from 1 to 40, all 4 error correction levels, and 4 character encoding modes. * - * Copyright (c) Project Nayuki. (MIT License) - * https://www.nayuki.io/page/qr-code-generator-library - * - * Permission is hereby granted, free of charge, to any person obtaining a copy of - * this software and associated documentation files (the "Software"), to deal in - * the Software without restriction, including without limitation the rights to - * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of - * the Software, and to permit persons to whom the Software is furnished to do so, - * subject to the following conditions: - * - The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - The Software is provided "as is", without warranty of any kind, express or - * implied, including but not limited to the warranties of merchantability, - * fitness for a particular purpose and noninfringement. In no event shall the - * authors or copyright holders be liable for any claim, damages or other - * liability, whether in an action of contract, tort or otherwise, arising from, - * out of or in connection with the Software or the use or other dealings in the - * Software. + * Ways to create a QR Code object: + * - High level: Take the payload data and call QrCode.encodeText() or QrCode.encodeBinary(). + * - Mid level: Custom-make the list of segments and call QrCode.encodeSegments(). + * - Low level: Custom-make the array of data codeword bytes (including + * segment headers and final padding, excluding error correction codewords), + * supply the appropriate version number, and call the QrCode() constructor. + * (Note that all ways require supplying the desired error correction level.) */ - var qrcodegen; - (function (qrcodegen) { - /*---- QR Code symbol class ----*/ - /* - * A QR Code symbol, which is a type of two-dimension barcode. - * Invented by Denso Wave and described in the ISO/IEC 18004 standard. - * Instances of this class represent an immutable square grid of dark and light cells. - * The class provides static factory functions to create a QR Code from text or binary data. - * The class covers the QR Code Model 2 specification, supporting all versions (sizes) - * from 1 to 40, all 4 error correction levels, and 4 character encoding modes. - * - * Ways to create a QR Code object: - * - High level: Take the payload data and call QrCode.encodeText() or QrCode.encodeBinary(). - * - Mid level: Custom-make the list of segments and call QrCode.encodeSegments(). - * - Low level: Custom-make the array of data codeword bytes (including - * segment headers and final padding, excluding error correction codewords), - * supply the appropriate version number, and call the QrCode() constructor. - * (Note that all ways require supplying the desired error correction level.) - */ - var QrCode = /** @class */ (function () { - /*-- Constructor (low level) and fields --*/ - // Creates a new QR Code with the given version number, - // error correction level, data codeword bytes, and mask number. - // This is a low-level API that most users should not use directly. - // A mid-level API is the encodeSegments() function. - function QrCode( - // The version number of this QR Code, which is between 1 and 40 (inclusive). - // This determines the size of this barcode. - version, - // The error correction level used in this QR Code. - errorCorrectionLevel, dataCodewords, msk) { - this.version = version; - this.errorCorrectionLevel = errorCorrectionLevel; - // The modules of this QR Code (false = light, true = dark). - // Immutable after constructor finishes. Accessed through getModule(). - this.modules = []; - // Indicates function modules that are not subjected to masking. Discarded when constructor finishes. - this.isFunction = []; - // Check scalar arguments - if (version < QrCode.MIN_VERSION || version > QrCode.MAX_VERSION) - throw new RangeError("Version value out of range"); - if (msk < -1 || msk > 7) - throw new RangeError("Mask value out of range"); - this.size = version * 4 + 17; - // Initialize both grids to be size*size arrays of Boolean false - var row = []; - for (var i = 0; i < this.size; i++) - row.push(false); - for (var i = 0; i < this.size; i++) { - this.modules.push(row.slice()); // Initially all light - this.isFunction.push(row.slice()); - } - // Compute ECC, draw modules - this.drawFunctionPatterns(); - var allCodewords = this.addEccAndInterleave(dataCodewords); - this.drawCodewords(allCodewords); - // Do masking - if (msk == -1) { // Automatically choose best mask - var minPenalty = 1000000000; - for (var i = 0; i < 8; i++) { - this.applyMask(i); - this.drawFormatBits(i); - var penalty = this.getPenaltyScore(); - if (penalty < minPenalty) { - msk = i; - minPenalty = penalty; - } - this.applyMask(i); // Undoes the mask due to XOR - } - } - assert(0 <= msk && msk <= 7); - this.mask = msk; - this.applyMask(msk); // Apply the final choice of mask - this.drawFormatBits(msk); // Overwrite old format bits - this.isFunction = []; + var QrCode = /** @class */ (function () { + /*-- Constructor (low level) and fields --*/ + // Creates a new QR Code with the given version number, + // error correction level, data codeword bytes, and mask number. + // This is a low-level API that most users should not use directly. + // A mid-level API is the encodeSegments() function. + function QrCode( + // The version number of this QR Code, which is between 1 and 40 (inclusive). + // This determines the size of this barcode. + version, + // The error correction level used in this QR Code. + errorCorrectionLevel, dataCodewords, msk) { + this.version = version; + this.errorCorrectionLevel = errorCorrectionLevel; + // The modules of this QR Code (false = light, true = dark). + // Immutable after constructor finishes. Accessed through getModule(). + this.modules = []; + // Indicates function modules that are not subjected to masking. Discarded when constructor finishes. + this.isFunction = []; + // Check scalar arguments + if (version < QrCode.MIN_VERSION || version > QrCode.MAX_VERSION) + throw new RangeError("Version value out of range"); + if (msk < -1 || msk > 7) + throw new RangeError("Mask value out of range"); + this.size = version * 4 + 17; + // Initialize both grids to be size*size arrays of Boolean false + var row = []; + for (var i = 0; i < this.size; i++) + row.push(false); + for (var i = 0; i < this.size; i++) { + this.modules.push(row.slice()); // Initially all light + this.isFunction.push(row.slice()); } - /*-- Static factory functions (high level) --*/ - // Returns a QR Code representing the given Unicode text string at the given error correction level. - // As a conservative upper bound, this function is guaranteed to succeed for strings that have 738 or fewer - // Unicode code points (not UTF-16 code units) if the low error correction level is used. The smallest possible - // QR Code version is automatically chosen for the output. The ECC level of the result may be higher than the - // ecl argument if it can be done without increasing the version. - QrCode.encodeText = function (text, ecl) { - var segs = qrcodegen.QrSegment.makeSegments(text); - return QrCode.encodeSegments(segs, ecl); - }; - // Returns a QR Code representing the given binary data at the given error correction level. - // This function always encodes using the binary segment mode, not any text mode. The maximum number of - // bytes allowed is 2953. The smallest possible QR Code version is automatically chosen for the output. - // The ECC level of the result may be higher than the ecl argument if it can be done without increasing the version. - QrCode.encodeBinary = function (data, ecl) { - var seg = qrcodegen.QrSegment.makeBytes(data); - return QrCode.encodeSegments([seg], ecl); - }; - /*-- Static factory functions (mid level) --*/ - // Returns a QR Code representing the given segments with the given encoding parameters. - // The smallest possible QR Code version within the given range is automatically - // chosen for the output. Iff boostEcl is true, then the ECC level of the result - // may be higher than the ecl argument if it can be done without increasing the - // version. The mask number is either between 0 to 7 (inclusive) to force that - // mask, or -1 to automatically choose an appropriate mask (which may be slow). - // This function allows the user to create a custom sequence of segments that switches - // between modes (such as alphanumeric and byte) to encode text in less space. - // This is a mid-level API; the high-level API is encodeText() and encodeBinary(). - QrCode.encodeSegments = function (segs, ecl, minVersion, maxVersion, mask, boostEcl) { - if (minVersion === void 0) { minVersion = 1; } - if (maxVersion === void 0) { maxVersion = 40; } - if (mask === void 0) { mask = -1; } - if (boostEcl === void 0) { boostEcl = true; } - if (!(QrCode.MIN_VERSION <= minVersion && minVersion <= maxVersion && maxVersion <= QrCode.MAX_VERSION) - || mask < -1 || mask > 7) - throw new RangeError("Invalid value"); - // Find the minimal version number to use - var version; - var dataUsedBits; - for (version = minVersion;; version++) { - var dataCapacityBits_1 = QrCode.getNumDataCodewords(version, ecl) * 8; // Number of data bits available - var usedBits = QrSegment.getTotalBits(segs, version); - if (usedBits <= dataCapacityBits_1) { - dataUsedBits = usedBits; - break; // This version number is found to be suitable + // Compute ECC, draw modules + this.drawFunctionPatterns(); + var allCodewords = this.addEccAndInterleave(dataCodewords); + this.drawCodewords(allCodewords); + // Do masking + if (msk == -1) { // Automatically choose best mask + var minPenalty = 1000000000; + for (var i = 0; i < 8; i++) { + this.applyMask(i); + this.drawFormatBits(i); + var penalty = this.getPenaltyScore(); + if (penalty < minPenalty) { + msk = i; + minPenalty = penalty; } - if (version >= maxVersion) // All versions in the range could not fit the given data - throw new RangeError("Data too long"); + this.applyMask(i); // Undoes the mask due to XOR } - // Increase the error correction level while the data still fits in the current version number - for (var _i = 0, _a = [QrCode.Ecc.MEDIUM, QrCode.Ecc.QUARTILE, QrCode.Ecc.HIGH]; _i < _a.length; _i++) { // From low to high - var newEcl = _a[_i]; - if (boostEcl && dataUsedBits <= QrCode.getNumDataCodewords(version, newEcl) * 8) - ecl = newEcl; + } + assert(0 <= msk && msk <= 7); + this.mask = msk; + this.applyMask(msk); // Apply the final choice of mask + this.drawFormatBits(msk); // Overwrite old format bits + this.isFunction = []; + } + /*-- Static factory functions (high level) --*/ + // Returns a QR Code representing the given Unicode text string at the given error correction level. + // As a conservative upper bound, this function is guaranteed to succeed for strings that have 738 or fewer + // Unicode code points (not UTF-16 code units) if the low error correction level is used. The smallest possible + // QR Code version is automatically chosen for the output. The ECC level of the result may be higher than the + // ecl argument if it can be done without increasing the version. + QrCode.encodeText = function (text, ecl) { + var segs = qrcodegen.QrSegment.makeSegments(text); + return QrCode.encodeSegments(segs, ecl); + }; + // Returns a QR Code representing the given binary data at the given error correction level. + // This function always encodes using the binary segment mode, not any text mode. The maximum number of + // bytes allowed is 2953. The smallest possible QR Code version is automatically chosen for the output. + // The ECC level of the result may be higher than the ecl argument if it can be done without increasing the version. + QrCode.encodeBinary = function (data, ecl) { + var seg = qrcodegen.QrSegment.makeBytes(data); + return QrCode.encodeSegments([seg], ecl); + }; + /*-- Static factory functions (mid level) --*/ + // Returns a QR Code representing the given segments with the given encoding parameters. + // The smallest possible QR Code version within the given range is automatically + // chosen for the output. Iff boostEcl is true, then the ECC level of the result + // may be higher than the ecl argument if it can be done without increasing the + // version. The mask number is either between 0 to 7 (inclusive) to force that + // mask, or -1 to automatically choose an appropriate mask (which may be slow). + // This function allows the user to create a custom sequence of segments that switches + // between modes (such as alphanumeric and byte) to encode text in less space. + // This is a mid-level API; the high-level API is encodeText() and encodeBinary(). + QrCode.encodeSegments = function (segs, ecl, minVersion, maxVersion, mask, boostEcl) { + if (minVersion === void 0) { minVersion = 1; } + if (maxVersion === void 0) { maxVersion = 40; } + if (mask === void 0) { mask = -1; } + if (boostEcl === void 0) { boostEcl = true; } + if (!(QrCode.MIN_VERSION <= minVersion && minVersion <= maxVersion && maxVersion <= QrCode.MAX_VERSION) + || mask < -1 || mask > 7) + throw new RangeError("Invalid value"); + // Find the minimal version number to use + var version; + var dataUsedBits; + for (version = minVersion;; version++) { + var dataCapacityBits_1 = QrCode.getNumDataCodewords(version, ecl) * 8; // Number of data bits available + var usedBits = QrSegment.getTotalBits(segs, version); + if (usedBits <= dataCapacityBits_1) { + dataUsedBits = usedBits; + break; // This version number is found to be suitable } - // Concatenate all segments to create the data bit string - var bb = []; - for (var _b = 0, segs_1 = segs; _b < segs_1.length; _b++) { - var seg = segs_1[_b]; - appendBits(seg.mode.modeBits, 4, bb); - appendBits(seg.numChars, seg.mode.numCharCountBits(version), bb); - for (var _c = 0, _d = seg.getData(); _c < _d.length; _c++) { - var b = _d[_c]; - bb.push(b); - } + if (version >= maxVersion) // All versions in the range could not fit the given data + throw new RangeError("Data too long"); + } + // Increase the error correction level while the data still fits in the current version number + for (var _i = 0, _a = [QrCode.Ecc.MEDIUM, QrCode.Ecc.QUARTILE, QrCode.Ecc.HIGH]; _i < _a.length; _i++) { // From low to high + var newEcl = _a[_i]; + if (boostEcl && dataUsedBits <= QrCode.getNumDataCodewords(version, newEcl) * 8) + ecl = newEcl; + } + // Concatenate all segments to create the data bit string + var bb = []; + for (var _b = 0, segs_1 = segs; _b < segs_1.length; _b++) { + var seg = segs_1[_b]; + appendBits(seg.mode.modeBits, 4, bb); + appendBits(seg.numChars, seg.mode.numCharCountBits(version), bb); + for (var _c = 0, _d = seg.getData(); _c < _d.length; _c++) { + var b = _d[_c]; + bb.push(b); } - assert(bb.length == dataUsedBits); - // Add terminator and pad up to a byte if applicable - var dataCapacityBits = QrCode.getNumDataCodewords(version, ecl) * 8; - assert(bb.length <= dataCapacityBits); - appendBits(0, Math.min(4, dataCapacityBits - bb.length), bb); - appendBits(0, (8 - bb.length % 8) % 8, bb); - assert(bb.length % 8 == 0); - // Pad with alternating bytes until data capacity is reached - for (var padByte = 0xEC; bb.length < dataCapacityBits; padByte ^= 0xEC ^ 0x11) - appendBits(padByte, 8, bb); - // Pack bits into bytes in big endian - var dataCodewords = []; - while (dataCodewords.length * 8 < bb.length) - dataCodewords.push(0); - bb.forEach(function (b, i) { - return dataCodewords[i >>> 3] |= b << (7 - (i & 7)); + } + assert(bb.length == dataUsedBits); + // Add terminator and pad up to a byte if applicable + var dataCapacityBits = QrCode.getNumDataCodewords(version, ecl) * 8; + assert(bb.length <= dataCapacityBits); + appendBits(0, Math.min(4, dataCapacityBits - bb.length), bb); + appendBits(0, (8 - bb.length % 8) % 8, bb); + assert(bb.length % 8 == 0); + // Pad with alternating bytes until data capacity is reached + for (var padByte = 0xEC; bb.length < dataCapacityBits; padByte ^= 0xEC ^ 0x11) + appendBits(padByte, 8, bb); + // Pack bits into bytes in big endian + var dataCodewords = []; + while (dataCodewords.length * 8 < bb.length) + dataCodewords.push(0); + bb.forEach(function (b, i) { + return dataCodewords[i >>> 3] |= b << (7 - (i & 7)); + }); + // Create the QR Code object + return new QrCode(version, ecl, dataCodewords, mask); + }; + /*-- Accessor methods --*/ + // Returns the color of the module (pixel) at the given coordinates, which is false + // for light or true for dark. The top left corner has the coordinates (x=0, y=0). + // If the given coordinates are out of bounds, then false (light) is returned. + QrCode.prototype.getModule = function (x, y) { + return 0 <= x && x < this.size && 0 <= y && y < this.size && this.modules[y][x]; + }; + QrCode.prototype.getModules = function () { + return this.modules; + }; + /*-- Private helper methods for constructor: Drawing function modules --*/ + // Reads this object's version field, and draws and marks all function modules. + QrCode.prototype.drawFunctionPatterns = function () { + // Draw horizontal and vertical timing patterns + for (var i = 0; i < this.size; i++) { + this.setFunctionModule(6, i, i % 2 == 0); + this.setFunctionModule(i, 6, i % 2 == 0); + } + // Draw 3 finder patterns (all corners except bottom right; overwrites some timing modules) + this.drawFinderPattern(3, 3); + this.drawFinderPattern(this.size - 4, 3); + this.drawFinderPattern(3, this.size - 4); + // Draw numerous alignment patterns + var alignPatPos = this.getAlignmentPatternPositions(); + var numAlign = alignPatPos.length; + for (var i = 0; i < numAlign; i++) { + for (var j = 0; j < numAlign; j++) { + // Don't draw on the three finder corners + if (!(i == 0 && j == 0 || i == 0 && j == numAlign - 1 || i == numAlign - 1 && j == 0)) + this.drawAlignmentPattern(alignPatPos[i], alignPatPos[j]); + } + } + // Draw configuration data + this.drawFormatBits(0); // Dummy mask value; overwritten later in the constructor + this.drawVersion(); + }; + // Draws two copies of the format bits (with its own error correction code) + // based on the given mask and this object's error correction level field. + QrCode.prototype.drawFormatBits = function (mask) { + // Calculate error correction code and pack bits + var data = this.errorCorrectionLevel.formatBits << 3 | mask; // errCorrLvl is uint2, mask is uint3 + var rem = data; + for (var i = 0; i < 10; i++) + rem = (rem << 1) ^ ((rem >>> 9) * 0x537); + var bits = (data << 10 | rem) ^ 0x5412; // uint15 + assert(bits >>> 15 == 0); + // Draw first copy + for (var i = 0; i <= 5; i++) + this.setFunctionModule(8, i, getBit(bits, i)); + this.setFunctionModule(8, 7, getBit(bits, 6)); + this.setFunctionModule(8, 8, getBit(bits, 7)); + this.setFunctionModule(7, 8, getBit(bits, 8)); + for (var i = 9; i < 15; i++) + this.setFunctionModule(14 - i, 8, getBit(bits, i)); + // Draw second copy + for (var i = 0; i < 8; i++) + this.setFunctionModule(this.size - 1 - i, 8, getBit(bits, i)); + for (var i = 8; i < 15; i++) + this.setFunctionModule(8, this.size - 15 + i, getBit(bits, i)); + this.setFunctionModule(8, this.size - 8, true); // Always dark + }; + // Draws two copies of the version bits (with its own error correction code), + // based on this object's version field, iff 7 <= version <= 40. + QrCode.prototype.drawVersion = function () { + if (this.version < 7) + return; + // Calculate error correction code and pack bits + var rem = this.version; // version is uint6, in the range [7, 40] + for (var i = 0; i < 12; i++) + rem = (rem << 1) ^ ((rem >>> 11) * 0x1F25); + var bits = this.version << 12 | rem; // uint18 + assert(bits >>> 18 == 0); + // Draw two copies + for (var i = 0; i < 18; i++) { + var color = getBit(bits, i); + var a = this.size - 11 + i % 3; + var b = Math.floor(i / 3); + this.setFunctionModule(a, b, color); + this.setFunctionModule(b, a, color); + } + }; + // Draws a 9*9 finder pattern including the border separator, + // with the center module at (x, y). Modules can be out of bounds. + QrCode.prototype.drawFinderPattern = function (x, y) { + for (var dy = -4; dy <= 4; dy++) { + for (var dx = -4; dx <= 4; dx++) { + var dist = Math.max(Math.abs(dx), Math.abs(dy)); // Chebyshev/infinity norm + var xx = x + dx; + var yy = y + dy; + if (0 <= xx && xx < this.size && 0 <= yy && yy < this.size) + this.setFunctionModule(xx, yy, dist != 2 && dist != 4); + } + } + }; + // Draws a 5*5 alignment pattern, with the center module + // at (x, y). All modules must be in bounds. + QrCode.prototype.drawAlignmentPattern = function (x, y) { + for (var dy = -2; dy <= 2; dy++) { + for (var dx = -2; dx <= 2; dx++) + this.setFunctionModule(x + dx, y + dy, Math.max(Math.abs(dx), Math.abs(dy)) != 1); + } + }; + // Sets the color of a module and marks it as a function module. + // Only used by the constructor. Coordinates must be in bounds. + QrCode.prototype.setFunctionModule = function (x, y, isDark) { + this.modules[y][x] = isDark; + this.isFunction[y][x] = true; + }; + /*-- Private helper methods for constructor: Codewords and masking --*/ + // Returns a new byte string representing the given data with the appropriate error correction + // codewords appended to it, based on this object's version and error correction level. + QrCode.prototype.addEccAndInterleave = function (data) { + var ver = this.version; + var ecl = this.errorCorrectionLevel; + if (data.length != QrCode.getNumDataCodewords(ver, ecl)) + throw new RangeError("Invalid argument"); + // Calculate parameter numbers + var numBlocks = QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver]; + var blockEccLen = QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver]; + var rawCodewords = Math.floor(QrCode.getNumRawDataModules(ver) / 8); + var numShortBlocks = numBlocks - rawCodewords % numBlocks; + var shortBlockLen = Math.floor(rawCodewords / numBlocks); + // Split data into blocks and append ECC to each block + var blocks = []; + var rsDiv = QrCode.reedSolomonComputeDivisor(blockEccLen); + for (var i = 0, k = 0; i < numBlocks; i++) { + var dat = data.slice(k, k + shortBlockLen - blockEccLen + (i < numShortBlocks ? 0 : 1)); + k += dat.length; + var ecc = QrCode.reedSolomonComputeRemainder(dat, rsDiv); + if (i < numShortBlocks) + dat.push(0); + blocks.push(dat.concat(ecc)); + } + // Interleave (not concatenate) the bytes from every block into a single sequence + var result = []; + var _loop_1 = function (i) { + blocks.forEach(function (block, j) { + // Skip the padding byte in short blocks + if (i != shortBlockLen - blockEccLen || j >= numShortBlocks) + result.push(block[i]); }); - // Create the QR Code object - return new QrCode(version, ecl, dataCodewords, mask); }; - /*-- Accessor methods --*/ - // Returns the color of the module (pixel) at the given coordinates, which is false - // for light or true for dark. The top left corner has the coordinates (x=0, y=0). - // If the given coordinates are out of bounds, then false (light) is returned. - QrCode.prototype.getModule = function (x, y) { - return 0 <= x && x < this.size && 0 <= y && y < this.size && this.modules[y][x]; - }; - QrCode.prototype.getModules = function () { - return this.modules; - }; - /*-- Private helper methods for constructor: Drawing function modules --*/ - // Reads this object's version field, and draws and marks all function modules. - QrCode.prototype.drawFunctionPatterns = function () { - // Draw horizontal and vertical timing patterns - for (var i = 0; i < this.size; i++) { - this.setFunctionModule(6, i, i % 2 == 0); - this.setFunctionModule(i, 6, i % 2 == 0); - } - // Draw 3 finder patterns (all corners except bottom right; overwrites some timing modules) - this.drawFinderPattern(3, 3); - this.drawFinderPattern(this.size - 4, 3); - this.drawFinderPattern(3, this.size - 4); - // Draw numerous alignment patterns - var alignPatPos = this.getAlignmentPatternPositions(); - var numAlign = alignPatPos.length; - for (var i = 0; i < numAlign; i++) { - for (var j = 0; j < numAlign; j++) { - // Don't draw on the three finder corners - if (!(i == 0 && j == 0 || i == 0 && j == numAlign - 1 || i == numAlign - 1 && j == 0)) - this.drawAlignmentPattern(alignPatPos[i], alignPatPos[j]); - } - } - // Draw configuration data - this.drawFormatBits(0); // Dummy mask value; overwritten later in the constructor - this.drawVersion(); - }; - // Draws two copies of the format bits (with its own error correction code) - // based on the given mask and this object's error correction level field. - QrCode.prototype.drawFormatBits = function (mask) { - // Calculate error correction code and pack bits - var data = this.errorCorrectionLevel.formatBits << 3 | mask; // errCorrLvl is uint2, mask is uint3 - var rem = data; - for (var i = 0; i < 10; i++) - rem = (rem << 1) ^ ((rem >>> 9) * 0x537); - var bits = (data << 10 | rem) ^ 0x5412; // uint15 - assert(bits >>> 15 == 0); - // Draw first copy - for (var i = 0; i <= 5; i++) - this.setFunctionModule(8, i, getBit(bits, i)); - this.setFunctionModule(8, 7, getBit(bits, 6)); - this.setFunctionModule(8, 8, getBit(bits, 7)); - this.setFunctionModule(7, 8, getBit(bits, 8)); - for (var i = 9; i < 15; i++) - this.setFunctionModule(14 - i, 8, getBit(bits, i)); - // Draw second copy - for (var i = 0; i < 8; i++) - this.setFunctionModule(this.size - 1 - i, 8, getBit(bits, i)); - for (var i = 8; i < 15; i++) - this.setFunctionModule(8, this.size - 15 + i, getBit(bits, i)); - this.setFunctionModule(8, this.size - 8, true); // Always dark - }; - // Draws two copies of the version bits (with its own error correction code), - // based on this object's version field, iff 7 <= version <= 40. - QrCode.prototype.drawVersion = function () { - if (this.version < 7) - return; - // Calculate error correction code and pack bits - var rem = this.version; // version is uint6, in the range [7, 40] - for (var i = 0; i < 12; i++) - rem = (rem << 1) ^ ((rem >>> 11) * 0x1F25); - var bits = this.version << 12 | rem; // uint18 - assert(bits >>> 18 == 0); - // Draw two copies - for (var i = 0; i < 18; i++) { - var color = getBit(bits, i); - var a = this.size - 11 + i % 3; - var b = Math.floor(i / 3); - this.setFunctionModule(a, b, color); - this.setFunctionModule(b, a, color); - } - }; - // Draws a 9*9 finder pattern including the border separator, - // with the center module at (x, y). Modules can be out of bounds. - QrCode.prototype.drawFinderPattern = function (x, y) { - for (var dy = -4; dy <= 4; dy++) { - for (var dx = -4; dx <= 4; dx++) { - var dist = Math.max(Math.abs(dx), Math.abs(dy)); // Chebyshev/infinity norm - var xx = x + dx; - var yy = y + dy; - if (0 <= xx && xx < this.size && 0 <= yy && yy < this.size) - this.setFunctionModule(xx, yy, dist != 2 && dist != 4); - } - } - }; - // Draws a 5*5 alignment pattern, with the center module - // at (x, y). All modules must be in bounds. - QrCode.prototype.drawAlignmentPattern = function (x, y) { - for (var dy = -2; dy <= 2; dy++) { - for (var dx = -2; dx <= 2; dx++) - this.setFunctionModule(x + dx, y + dy, Math.max(Math.abs(dx), Math.abs(dy)) != 1); - } - }; - // Sets the color of a module and marks it as a function module. - // Only used by the constructor. Coordinates must be in bounds. - QrCode.prototype.setFunctionModule = function (x, y, isDark) { - this.modules[y][x] = isDark; - this.isFunction[y][x] = true; - }; - /*-- Private helper methods for constructor: Codewords and masking --*/ - // Returns a new byte string representing the given data with the appropriate error correction - // codewords appended to it, based on this object's version and error correction level. - QrCode.prototype.addEccAndInterleave = function (data) { - var ver = this.version; - var ecl = this.errorCorrectionLevel; - if (data.length != QrCode.getNumDataCodewords(ver, ecl)) - throw new RangeError("Invalid argument"); - // Calculate parameter numbers - var numBlocks = QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver]; - var blockEccLen = QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver]; - var rawCodewords = Math.floor(QrCode.getNumRawDataModules(ver) / 8); - var numShortBlocks = numBlocks - rawCodewords % numBlocks; - var shortBlockLen = Math.floor(rawCodewords / numBlocks); - // Split data into blocks and append ECC to each block - var blocks = []; - var rsDiv = QrCode.reedSolomonComputeDivisor(blockEccLen); - for (var i = 0, k = 0; i < numBlocks; i++) { - var dat = data.slice(k, k + shortBlockLen - blockEccLen + (i < numShortBlocks ? 0 : 1)); - k += dat.length; - var ecc = QrCode.reedSolomonComputeRemainder(dat, rsDiv); - if (i < numShortBlocks) - dat.push(0); - blocks.push(dat.concat(ecc)); - } - // Interleave (not concatenate) the bytes from every block into a single sequence - var result = []; - var _loop_1 = function (i) { - blocks.forEach(function (block, j) { - // Skip the padding byte in short blocks - if (i != shortBlockLen - blockEccLen || j >= numShortBlocks) - result.push(block[i]); - }); - }; - for (var i = 0; i < blocks[0].length; i++) { - _loop_1(i); - } - assert(result.length == rawCodewords); - return result; - }; - // Draws the given sequence of 8-bit codewords (data and error correction) onto the entire - // data area of this QR Code. Function modules need to be marked off before this is called. - QrCode.prototype.drawCodewords = function (data) { - if (data.length != Math.floor(QrCode.getNumRawDataModules(this.version) / 8)) - throw new RangeError("Invalid argument"); - var i = 0; // Bit index into the data - // Do the funny zigzag scan - for (var right = this.size - 1; right >= 1; right -= 2) { // Index of right column in each column pair - if (right == 6) - right = 5; - for (var vert = 0; vert < this.size; vert++) { // Vertical counter - for (var j = 0; j < 2; j++) { - var x = right - j; // Actual x coordinate - var upward = ((right + 1) & 2) == 0; - var y = upward ? this.size - 1 - vert : vert; // Actual y coordinate - if (!this.isFunction[y][x] && i < data.length * 8) { - this.modules[y][x] = getBit(data[i >>> 3], 7 - (i & 7)); - i++; - } - // If this QR Code has any remainder bits (0 to 7), they were assigned as - // 0/false/light by the constructor and are left unchanged by this method - } - } - } - assert(i == data.length * 8); - }; - // XORs the codeword modules in this QR Code with the given mask pattern. - // The function modules must be marked and the codeword bits must be drawn - // before masking. Due to the arithmetic of XOR, calling applyMask() with - // the same mask value a second time will undo the mask. A final well-formed - // QR Code needs exactly one (not zero, two, etc.) mask applied. - QrCode.prototype.applyMask = function (mask) { - if (mask < 0 || mask > 7) - throw new RangeError("Mask value out of range"); - for (var y = 0; y < this.size; y++) { - for (var x = 0; x < this.size; x++) { - var invert = void 0; - switch (mask) { - case 0: - invert = (x + y) % 2 == 0; - break; - case 1: - invert = y % 2 == 0; - break; - case 2: - invert = x % 3 == 0; - break; - case 3: - invert = (x + y) % 3 == 0; - break; - case 4: - invert = (Math.floor(x / 3) + Math.floor(y / 2)) % 2 == 0; - break; - case 5: - invert = x * y % 2 + x * y % 3 == 0; - break; - case 6: - invert = (x * y % 2 + x * y % 3) % 2 == 0; - break; - case 7: - invert = ((x + y) % 2 + x * y % 3) % 2 == 0; - break; - default: throw new Error("Unreachable"); - } - if (!this.isFunction[y][x] && invert) - this.modules[y][x] = !this.modules[y][x]; - } - } - }; - // Calculates and returns the penalty score based on state of this QR Code's current modules. - // This is used by the automatic mask choice algorithm to find the mask pattern that yields the lowest score. - QrCode.prototype.getPenaltyScore = function () { - var result = 0; - // Adjacent modules in row having same color, and finder-like patterns - for (var y = 0; y < this.size; y++) { - var runColor = false; - var runX = 0; - var runHistory = [0, 0, 0, 0, 0, 0, 0]; - for (var x = 0; x < this.size; x++) { - if (this.modules[y][x] == runColor) { - runX++; - if (runX == 5) - result += QrCode.PENALTY_N1; - else if (runX > 5) - result++; - } - else { - this.finderPenaltyAddHistory(runX, runHistory); - if (!runColor) - result += this.finderPenaltyCountPatterns(runHistory) * QrCode.PENALTY_N3; - runColor = this.modules[y][x]; - runX = 1; - } - } - result += this.finderPenaltyTerminateAndCount(runColor, runX, runHistory) * QrCode.PENALTY_N3; - } - // Adjacent modules in column having same color, and finder-like patterns - for (var x = 0; x < this.size; x++) { - var runColor = false; - var runY = 0; - var runHistory = [0, 0, 0, 0, 0, 0, 0]; - for (var y = 0; y < this.size; y++) { - if (this.modules[y][x] == runColor) { - runY++; - if (runY == 5) - result += QrCode.PENALTY_N1; - else if (runY > 5) - result++; - } - else { - this.finderPenaltyAddHistory(runY, runHistory); - if (!runColor) - result += this.finderPenaltyCountPatterns(runHistory) * QrCode.PENALTY_N3; - runColor = this.modules[y][x]; - runY = 1; - } - } - result += this.finderPenaltyTerminateAndCount(runColor, runY, runHistory) * QrCode.PENALTY_N3; - } - // 2*2 blocks of modules having same color - for (var y = 0; y < this.size - 1; y++) { - for (var x = 0; x < this.size - 1; x++) { - var color = this.modules[y][x]; - if (color == this.modules[y][x + 1] && - color == this.modules[y + 1][x] && - color == this.modules[y + 1][x + 1]) - result += QrCode.PENALTY_N2; - } - } - // Balance of dark and light modules - var dark = 0; - for (var _i = 0, _a = this.modules; _i < _a.length; _i++) { - var row = _a[_i]; - dark = row.reduce(function (sum, color) { return sum + (color ? 1 : 0); }, dark); - } - var total = this.size * this.size; // Note that size is odd, so dark/total != 1/2 - // Compute the smallest integer k >= 0 such that (45-5k)% <= dark/total <= (55+5k)% - var k = Math.ceil(Math.abs(dark * 20 - total * 10) / total) - 1; - assert(0 <= k && k <= 9); - result += k * QrCode.PENALTY_N4; - assert(0 <= result && result <= 2568888); // Non-tight upper bound based on default values of PENALTY_N1, ..., N4 - return result; - }; - /*-- Private helper functions --*/ - // Returns an ascending list of positions of alignment patterns for this version number. - // Each position is in the range [0,177), and are used on both the x and y axes. - // This could be implemented as lookup table of 40 variable-length lists of integers. - QrCode.prototype.getAlignmentPatternPositions = function () { - if (this.version == 1) - return []; - else { - var numAlign = Math.floor(this.version / 7) + 2; - var step = (this.version == 32) ? 26 : - Math.ceil((this.version * 4 + 4) / (numAlign * 2 - 2)) * 2; - var result = [6]; - for (var pos = this.size - 7; result.length < numAlign; pos -= step) - result.splice(1, 0, pos); - return result; - } - }; - // Returns the number of data bits that can be stored in a QR Code of the given version number, after - // all function modules are excluded. This includes remainder bits, so it might not be a multiple of 8. - // The result is in the range [208, 29648]. This could be implemented as a 40-entry lookup table. - QrCode.getNumRawDataModules = function (ver) { - if (ver < QrCode.MIN_VERSION || ver > QrCode.MAX_VERSION) - throw new RangeError("Version number out of range"); - var result = (16 * ver + 128) * ver + 64; - if (ver >= 2) { - var numAlign = Math.floor(ver / 7) + 2; - result -= (25 * numAlign - 10) * numAlign - 55; - if (ver >= 7) - result -= 36; - } - assert(208 <= result && result <= 29648); - return result; - }; - // Returns the number of 8-bit data (i.e. not error correction) codewords contained in any - // QR Code of the given version number and error correction level, with remainder bits discarded. - // This stateless pure function could be implemented as a (40*4)-cell lookup table. - QrCode.getNumDataCodewords = function (ver, ecl) { - return Math.floor(QrCode.getNumRawDataModules(ver) / 8) - - QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver] * - QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver]; - }; - // Returns a Reed-Solomon ECC generator polynomial for the given degree. This could be - // implemented as a lookup table over all possible parameter values, instead of as an algorithm. - QrCode.reedSolomonComputeDivisor = function (degree) { - if (degree < 1 || degree > 255) - throw new RangeError("Degree out of range"); - // Polynomial coefficients are stored from highest to lowest power, excluding the leading term which is always 1. - // For example the polynomial x^3 + 255x^2 + 8x + 93 is stored as the uint8 array [255, 8, 93]. - var result = []; - for (var i = 0; i < degree - 1; i++) - result.push(0); - result.push(1); // Start off with the monomial x^0 - // Compute the product polynomial (x - r^0) * (x - r^1) * (x - r^2) * ... * (x - r^{degree-1}), - // and drop the highest monomial term which is always 1x^degree. - // Note that r = 0x02, which is a generator element of this field GF(2^8/0x11D). - var root = 1; - for (var i = 0; i < degree; i++) { - // Multiply the current product by (x - r^i) - for (var j = 0; j < result.length; j++) { - result[j] = QrCode.reedSolomonMultiply(result[j], root); - if (j + 1 < result.length) - result[j] ^= result[j + 1]; - } - root = QrCode.reedSolomonMultiply(root, 0x02); - } - return result; - }; - // Returns the Reed-Solomon error correction codeword for the given data and divisor polynomials. - QrCode.reedSolomonComputeRemainder = function (data, divisor) { - var result = divisor.map(function (_) { return 0; }); - var _loop_2 = function (b) { - var factor = b ^ result.shift(); - result.push(0); - divisor.forEach(function (coef, i) { - return result[i] ^= QrCode.reedSolomonMultiply(coef, factor); - }); - }; - for (var _i = 0, data_1 = data; _i < data_1.length; _i++) { - var b = data_1[_i]; - _loop_2(b); - } - return result; - }; - // Returns the product of the two given field elements modulo GF(2^8/0x11D). The arguments and result - // are unsigned 8-bit integers. This could be implemented as a lookup table of 256*256 entries of uint8. - QrCode.reedSolomonMultiply = function (x, y) { - if (x >>> 8 != 0 || y >>> 8 != 0) - throw new RangeError("Byte out of range"); - // Russian peasant multiplication - var z = 0; - for (var i = 7; i >= 0; i--) { - z = (z << 1) ^ ((z >>> 7) * 0x11D); - z ^= ((y >>> i) & 1) * x; - } - assert(z >>> 8 == 0); - return z; - }; - // Can only be called immediately after a light run is added, and - // returns either 0, 1, or 2. A helper function for getPenaltyScore(). - QrCode.prototype.finderPenaltyCountPatterns = function (runHistory) { - var n = runHistory[1]; - assert(n <= this.size * 3); - var core = n > 0 && runHistory[2] == n && runHistory[3] == n * 3 && runHistory[4] == n && runHistory[5] == n; - return (core && runHistory[0] >= n * 4 && runHistory[6] >= n ? 1 : 0) - + (core && runHistory[6] >= n * 4 && runHistory[0] >= n ? 1 : 0); - }; - // Must be called at the end of a line (row or column) of modules. A helper function for getPenaltyScore(). - QrCode.prototype.finderPenaltyTerminateAndCount = function (currentRunColor, currentRunLength, runHistory) { - if (currentRunColor) { // Terminate dark run - this.finderPenaltyAddHistory(currentRunLength, runHistory); - currentRunLength = 0; - } - currentRunLength += this.size; // Add light border to final run - this.finderPenaltyAddHistory(currentRunLength, runHistory); - return this.finderPenaltyCountPatterns(runHistory); - }; - // Pushes the given value to the front and drops the last value. A helper function for getPenaltyScore(). - QrCode.prototype.finderPenaltyAddHistory = function (currentRunLength, runHistory) { - if (runHistory[0] == 0) - currentRunLength += this.size; // Add light border to initial run - runHistory.pop(); - runHistory.unshift(currentRunLength); - }; - /*-- Constants and tables --*/ - // The minimum version number supported in the QR Code Model 2 standard. - QrCode.MIN_VERSION = 1; - // The maximum version number supported in the QR Code Model 2 standard. - QrCode.MAX_VERSION = 40; - // For use in getPenaltyScore(), when evaluating which mask is best. - QrCode.PENALTY_N1 = 3; - QrCode.PENALTY_N2 = 3; - QrCode.PENALTY_N3 = 40; - QrCode.PENALTY_N4 = 10; - QrCode.ECC_CODEWORDS_PER_BLOCK = [ - // Version: (note that index 0 is for padding, and is set to an illegal value) - //0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40 Error correction level - [-1, 7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30], - [-1, 10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28], - [-1, 13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30], - [-1, 17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30], // High - ]; - QrCode.NUM_ERROR_CORRECTION_BLOCKS = [ - // Version: (note that index 0 is for padding, and is set to an illegal value) - //0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40 Error correction level - [-1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 24, 25], - [-1, 1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, 38, 40, 43, 45, 47, 49], - [-1, 1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, 53, 56, 59, 62, 65, 68], - [-1, 1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, 60, 63, 66, 70, 74, 77, 81], // High - ]; - return QrCode; - }()); - qrcodegen.QrCode = QrCode; - // Appends the given number of low-order bits of the given value - // to the given buffer. Requires 0 <= len <= 31 and 0 <= val < 2^len. - function appendBits(val, len, bb) { - if (len < 0 || len > 31 || val >>> len != 0) - throw new RangeError("Value out of range"); - for (var i = len - 1; i >= 0; i--) // Append bit by bit - bb.push((val >>> i) & 1); - } - // Returns true iff the i'th bit of x is set to 1. - function getBit(x, i) { - return ((x >>> i) & 1) != 0; - } - // Throws an exception if the given condition is false. - function assert(cond) { - if (!cond) - throw new Error("Assertion error"); - } - /*---- Data segment class ----*/ - /* - * A segment of character/binary/control data in a QR Code symbol. - * Instances of this class are immutable. - * The mid-level way to create a segment is to take the payload data - * and call a static factory function such as QrSegment.makeNumeric(). - * The low-level way to create a segment is to custom-make the bit buffer - * and call the QrSegment() constructor with appropriate values. - * This segment class imposes no length restrictions, but QR Codes have restrictions. - * Even in the most favorable conditions, a QR Code can only hold 7089 characters of data. - * Any segment longer than this is meaningless for the purpose of generating QR Codes. - */ - var QrSegment = /** @class */ (function () { - /*-- Constructor (low level) and fields --*/ - // Creates a new QR Code segment with the given attributes and data. - // The character count (numChars) must agree with the mode and the bit buffer length, - // but the constraint isn't checked. The given bit buffer is cloned and stored. - function QrSegment( - // The mode indicator of this segment. - mode, - // The length of this segment's unencoded data. Measured in characters for - // numeric/alphanumeric/kanji mode, bytes for byte mode, and 0 for ECI mode. - // Always zero or positive. Not the same as the data's bit length. - numChars, - // The data bits of this segment. Accessed through getData(). - bitData) { - this.mode = mode; - this.numChars = numChars; - this.bitData = bitData; - if (numChars < 0) - throw new RangeError("Invalid argument"); - this.bitData = bitData.slice(); // Make defensive copy + for (var i = 0; i < blocks[0].length; i++) { + _loop_1(i); } - /*-- Static factory functions (mid level) --*/ - // Returns a segment representing the given binary data encoded in - // byte mode. All input byte arrays are acceptable. Any text string - // can be converted to UTF-8 bytes and encoded as a byte mode segment. - QrSegment.makeBytes = function (data) { - var bb = []; - for (var _i = 0, data_2 = data; _i < data_2.length; _i++) { - var b = data_2[_i]; - appendBits(b, 8, bb); - } - return new QrSegment(QrSegment.Mode.BYTE, data.length, bb); - }; - // Returns a segment representing the given string of decimal digits encoded in numeric mode. - QrSegment.makeNumeric = function (digits) { - if (!QrSegment.isNumeric(digits)) - throw new RangeError("String contains non-numeric characters"); - var bb = []; - for (var i = 0; i < digits.length;) { // Consume up to 3 digits per iteration - var n = Math.min(digits.length - i, 3); - appendBits(parseInt(digits.substring(i, i + n), 10), n * 3 + 1, bb); - i += n; - } - return new QrSegment(QrSegment.Mode.NUMERIC, digits.length, bb); - }; - // Returns a segment representing the given text string encoded in alphanumeric mode. - // The characters allowed are: 0 to 9, A to Z (uppercase only), space, - // dollar, percent, asterisk, plus, hyphen, period, slash, colon. - QrSegment.makeAlphanumeric = function (text) { - if (!QrSegment.isAlphanumeric(text)) - throw new RangeError("String contains unencodable characters in alphanumeric mode"); - var bb = []; - var i; - for (i = 0; i + 2 <= text.length; i += 2) { // Process groups of 2 - var temp = QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)) * 45; - temp += QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i + 1)); - appendBits(temp, 11, bb); - } - if (i < text.length) // 1 character remaining - appendBits(QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)), 6, bb); - return new QrSegment(QrSegment.Mode.ALPHANUMERIC, text.length, bb); - }; - // Returns a new mutable list of zero or more segments to represent the given Unicode text string. - // The result may use various segment modes and switch modes to optimize the length of the bit stream. - QrSegment.makeSegments = function (text) { - // Select the most efficient segment encoding automatically - if (text == "") - return []; - else if (QrSegment.isNumeric(text)) - return [QrSegment.makeNumeric(text)]; - else if (QrSegment.isAlphanumeric(text)) - return [QrSegment.makeAlphanumeric(text)]; - else - return [QrSegment.makeBytes(QrSegment.toUtf8ByteArray(text))]; - }; - // Returns a segment representing an Extended Channel Interpretation - // (ECI) designator with the given assignment value. - QrSegment.makeEci = function (assignVal) { - var bb = []; - if (assignVal < 0) - throw new RangeError("ECI assignment value out of range"); - else if (assignVal < (1 << 7)) - appendBits(assignVal, 8, bb); - else if (assignVal < (1 << 14)) { - appendBits(2, 2, bb); - appendBits(assignVal, 14, bb); - } - else if (assignVal < 1000000) { - appendBits(6, 3, bb); - appendBits(assignVal, 21, bb); - } - else - throw new RangeError("ECI assignment value out of range"); - return new QrSegment(QrSegment.Mode.ECI, 0, bb); - }; - // Tests whether the given string can be encoded as a segment in numeric mode. - // A string is encodable iff each character is in the range 0 to 9. - QrSegment.isNumeric = function (text) { - return QrSegment.NUMERIC_REGEX.test(text); - }; - // Tests whether the given string can be encoded as a segment in alphanumeric mode. - // A string is encodable iff each character is in the following set: 0 to 9, A to Z - // (uppercase only), space, dollar, percent, asterisk, plus, hyphen, period, slash, colon. - QrSegment.isAlphanumeric = function (text) { - return QrSegment.ALPHANUMERIC_REGEX.test(text); - }; - /*-- Methods --*/ - // Returns a new copy of the data bits of this segment. - QrSegment.prototype.getData = function () { - return this.bitData.slice(); // Make defensive copy - }; - // (Package-private) Calculates and returns the number of bits needed to encode the given segments at - // the given version. The result is infinity if a segment has too many characters to fit its length field. - QrSegment.getTotalBits = function (segs, version) { - var result = 0; - for (var _i = 0, segs_2 = segs; _i < segs_2.length; _i++) { - var seg = segs_2[_i]; - var ccbits = seg.mode.numCharCountBits(version); - if (seg.numChars >= (1 << ccbits)) - return Infinity; // The segment's length doesn't fit the field's bit width - result += 4 + ccbits + seg.bitData.length; - } - return result; - }; - // Returns a new array of bytes representing the given string encoded in UTF-8. - QrSegment.toUtf8ByteArray = function (str) { - str = encodeURI(str); - var result = []; - for (var i = 0; i < str.length; i++) { - if (str.charAt(i) != "%") - result.push(str.charCodeAt(i)); - else { - result.push(parseInt(str.substring(i + 1, i + 3), 16)); - i += 2; + assert(result.length == rawCodewords); + return result; + }; + // Draws the given sequence of 8-bit codewords (data and error correction) onto the entire + // data area of this QR Code. Function modules need to be marked off before this is called. + QrCode.prototype.drawCodewords = function (data) { + if (data.length != Math.floor(QrCode.getNumRawDataModules(this.version) / 8)) + throw new RangeError("Invalid argument"); + var i = 0; // Bit index into the data + // Do the funny zigzag scan + for (var right = this.size - 1; right >= 1; right -= 2) { // Index of right column in each column pair + if (right == 6) + right = 5; + for (var vert = 0; vert < this.size; vert++) { // Vertical counter + for (var j = 0; j < 2; j++) { + var x = right - j; // Actual x coordinate + var upward = ((right + 1) & 2) == 0; + var y = upward ? this.size - 1 - vert : vert; // Actual y coordinate + if (!this.isFunction[y][x] && i < data.length * 8) { + this.modules[y][x] = getBit(data[i >>> 3], 7 - (i & 7)); + i++; + } + // If this QR Code has any remainder bits (0 to 7), they were assigned as + // 0/false/light by the constructor and are left unchanged by this method } } + } + assert(i == data.length * 8); + }; + // XORs the codeword modules in this QR Code with the given mask pattern. + // The function modules must be marked and the codeword bits must be drawn + // before masking. Due to the arithmetic of XOR, calling applyMask() with + // the same mask value a second time will undo the mask. A final well-formed + // QR Code needs exactly one (not zero, two, etc.) mask applied. + QrCode.prototype.applyMask = function (mask) { + if (mask < 0 || mask > 7) + throw new RangeError("Mask value out of range"); + for (var y = 0; y < this.size; y++) { + for (var x = 0; x < this.size; x++) { + var invert = void 0; + switch (mask) { + case 0: + invert = (x + y) % 2 == 0; + break; + case 1: + invert = y % 2 == 0; + break; + case 2: + invert = x % 3 == 0; + break; + case 3: + invert = (x + y) % 3 == 0; + break; + case 4: + invert = (Math.floor(x / 3) + Math.floor(y / 2)) % 2 == 0; + break; + case 5: + invert = x * y % 2 + x * y % 3 == 0; + break; + case 6: + invert = (x * y % 2 + x * y % 3) % 2 == 0; + break; + case 7: + invert = ((x + y) % 2 + x * y % 3) % 2 == 0; + break; + default: throw new Error("Unreachable"); + } + if (!this.isFunction[y][x] && invert) + this.modules[y][x] = !this.modules[y][x]; + } + } + }; + // Calculates and returns the penalty score based on state of this QR Code's current modules. + // This is used by the automatic mask choice algorithm to find the mask pattern that yields the lowest score. + QrCode.prototype.getPenaltyScore = function () { + var result = 0; + // Adjacent modules in row having same color, and finder-like patterns + for (var y = 0; y < this.size; y++) { + var runColor = false; + var runX = 0; + var runHistory = [0, 0, 0, 0, 0, 0, 0]; + for (var x = 0; x < this.size; x++) { + if (this.modules[y][x] == runColor) { + runX++; + if (runX == 5) + result += QrCode.PENALTY_N1; + else if (runX > 5) + result++; + } + else { + this.finderPenaltyAddHistory(runX, runHistory); + if (!runColor) + result += this.finderPenaltyCountPatterns(runHistory) * QrCode.PENALTY_N3; + runColor = this.modules[y][x]; + runX = 1; + } + } + result += this.finderPenaltyTerminateAndCount(runColor, runX, runHistory) * QrCode.PENALTY_N3; + } + // Adjacent modules in column having same color, and finder-like patterns + for (var x = 0; x < this.size; x++) { + var runColor = false; + var runY = 0; + var runHistory = [0, 0, 0, 0, 0, 0, 0]; + for (var y = 0; y < this.size; y++) { + if (this.modules[y][x] == runColor) { + runY++; + if (runY == 5) + result += QrCode.PENALTY_N1; + else if (runY > 5) + result++; + } + else { + this.finderPenaltyAddHistory(runY, runHistory); + if (!runColor) + result += this.finderPenaltyCountPatterns(runHistory) * QrCode.PENALTY_N3; + runColor = this.modules[y][x]; + runY = 1; + } + } + result += this.finderPenaltyTerminateAndCount(runColor, runY, runHistory) * QrCode.PENALTY_N3; + } + // 2*2 blocks of modules having same color + for (var y = 0; y < this.size - 1; y++) { + for (var x = 0; x < this.size - 1; x++) { + var color = this.modules[y][x]; + if (color == this.modules[y][x + 1] && + color == this.modules[y + 1][x] && + color == this.modules[y + 1][x + 1]) + result += QrCode.PENALTY_N2; + } + } + // Balance of dark and light modules + var dark = 0; + for (var _i = 0, _a = this.modules; _i < _a.length; _i++) { + var row = _a[_i]; + dark = row.reduce(function (sum, color) { return sum + (color ? 1 : 0); }, dark); + } + var total = this.size * this.size; // Note that size is odd, so dark/total != 1/2 + // Compute the smallest integer k >= 0 such that (45-5k)% <= dark/total <= (55+5k)% + var k = Math.ceil(Math.abs(dark * 20 - total * 10) / total) - 1; + assert(0 <= k && k <= 9); + result += k * QrCode.PENALTY_N4; + assert(0 <= result && result <= 2568888); // Non-tight upper bound based on default values of PENALTY_N1, ..., N4 + return result; + }; + /*-- Private helper functions --*/ + // Returns an ascending list of positions of alignment patterns for this version number. + // Each position is in the range [0,177), and are used on both the x and y axes. + // This could be implemented as lookup table of 40 variable-length lists of integers. + QrCode.prototype.getAlignmentPatternPositions = function () { + if (this.version == 1) + return []; + else { + var numAlign = Math.floor(this.version / 7) + 2; + var step = Math.floor((this.version * 8 + numAlign * 3 + 5) / (numAlign * 4 - 4)) * 2; + var result = [6]; + for (var pos = this.size - 7; result.length < numAlign; pos -= step) + result.splice(1, 0, pos); return result; + } + }; + // Returns the number of data bits that can be stored in a QR Code of the given version number, after + // all function modules are excluded. This includes remainder bits, so it might not be a multiple of 8. + // The result is in the range [208, 29648]. This could be implemented as a 40-entry lookup table. + QrCode.getNumRawDataModules = function (ver) { + if (ver < QrCode.MIN_VERSION || ver > QrCode.MAX_VERSION) + throw new RangeError("Version number out of range"); + var result = (16 * ver + 128) * ver + 64; + if (ver >= 2) { + var numAlign = Math.floor(ver / 7) + 2; + result -= (25 * numAlign - 10) * numAlign - 55; + if (ver >= 7) + result -= 36; + } + assert(208 <= result && result <= 29648); + return result; + }; + // Returns the number of 8-bit data (i.e. not error correction) codewords contained in any + // QR Code of the given version number and error correction level, with remainder bits discarded. + // This stateless pure function could be implemented as a (40*4)-cell lookup table. + QrCode.getNumDataCodewords = function (ver, ecl) { + return Math.floor(QrCode.getNumRawDataModules(ver) / 8) - + QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver] * + QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver]; + }; + // Returns a Reed-Solomon ECC generator polynomial for the given degree. This could be + // implemented as a lookup table over all possible parameter values, instead of as an algorithm. + QrCode.reedSolomonComputeDivisor = function (degree) { + if (degree < 1 || degree > 255) + throw new RangeError("Degree out of range"); + // Polynomial coefficients are stored from highest to lowest power, excluding the leading term which is always 1. + // For example the polynomial x^3 + 255x^2 + 8x + 93 is stored as the uint8 array [255, 8, 93]. + var result = []; + for (var i = 0; i < degree - 1; i++) + result.push(0); + result.push(1); // Start off with the monomial x^0 + // Compute the product polynomial (x - r^0) * (x - r^1) * (x - r^2) * ... * (x - r^{degree-1}), + // and drop the highest monomial term which is always 1x^degree. + // Note that r = 0x02, which is a generator element of this field GF(2^8/0x11D). + var root = 1; + for (var i = 0; i < degree; i++) { + // Multiply the current product by (x - r^i) + for (var j = 0; j < result.length; j++) { + result[j] = QrCode.reedSolomonMultiply(result[j], root); + if (j + 1 < result.length) + result[j] ^= result[j + 1]; + } + root = QrCode.reedSolomonMultiply(root, 0x02); + } + return result; + }; + // Returns the Reed-Solomon error correction codeword for the given data and divisor polynomials. + QrCode.reedSolomonComputeRemainder = function (data, divisor) { + var result = divisor.map(function (_) { return 0; }); + var _loop_2 = function (b) { + var factor = b ^ result.shift(); + result.push(0); + divisor.forEach(function (coef, i) { + return result[i] ^= QrCode.reedSolomonMultiply(coef, factor); + }); + }; + for (var _i = 0, data_1 = data; _i < data_1.length; _i++) { + var b = data_1[_i]; + _loop_2(b); + } + return result; + }; + // Returns the product of the two given field elements modulo GF(2^8/0x11D). The arguments and result + // are unsigned 8-bit integers. This could be implemented as a lookup table of 256*256 entries of uint8. + QrCode.reedSolomonMultiply = function (x, y) { + if (x >>> 8 != 0 || y >>> 8 != 0) + throw new RangeError("Byte out of range"); + // Russian peasant multiplication + var z = 0; + for (var i = 7; i >= 0; i--) { + z = (z << 1) ^ ((z >>> 7) * 0x11D); + z ^= ((y >>> i) & 1) * x; + } + assert(z >>> 8 == 0); + return z; + }; + // Can only be called immediately after a light run is added, and + // returns either 0, 1, or 2. A helper function for getPenaltyScore(). + QrCode.prototype.finderPenaltyCountPatterns = function (runHistory) { + var n = runHistory[1]; + assert(n <= this.size * 3); + var core = n > 0 && runHistory[2] == n && runHistory[3] == n * 3 && runHistory[4] == n && runHistory[5] == n; + return (core && runHistory[0] >= n * 4 && runHistory[6] >= n ? 1 : 0) + + (core && runHistory[6] >= n * 4 && runHistory[0] >= n ? 1 : 0); + }; + // Must be called at the end of a line (row or column) of modules. A helper function for getPenaltyScore(). + QrCode.prototype.finderPenaltyTerminateAndCount = function (currentRunColor, currentRunLength, runHistory) { + if (currentRunColor) { // Terminate dark run + this.finderPenaltyAddHistory(currentRunLength, runHistory); + currentRunLength = 0; + } + currentRunLength += this.size; // Add light border to final run + this.finderPenaltyAddHistory(currentRunLength, runHistory); + return this.finderPenaltyCountPatterns(runHistory); + }; + // Pushes the given value to the front and drops the last value. A helper function for getPenaltyScore(). + QrCode.prototype.finderPenaltyAddHistory = function (currentRunLength, runHistory) { + if (runHistory[0] == 0) + currentRunLength += this.size; // Add light border to initial run + runHistory.pop(); + runHistory.unshift(currentRunLength); + }; + /*-- Constants and tables --*/ + // The minimum version number supported in the QR Code Model 2 standard. + QrCode.MIN_VERSION = 1; + // The maximum version number supported in the QR Code Model 2 standard. + QrCode.MAX_VERSION = 40; + // For use in getPenaltyScore(), when evaluating which mask is best. + QrCode.PENALTY_N1 = 3; + QrCode.PENALTY_N2 = 3; + QrCode.PENALTY_N3 = 40; + QrCode.PENALTY_N4 = 10; + QrCode.ECC_CODEWORDS_PER_BLOCK = [ + // Version: (note that index 0 is for padding, and is set to an illegal value) + //0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40 Error correction level + [-1, 7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30], // Low + [-1, 10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28], // Medium + [-1, 13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30], // Quartile + [-1, 17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30], // High + ]; + QrCode.NUM_ERROR_CORRECTION_BLOCKS = [ + // Version: (note that index 0 is for padding, and is set to an illegal value) + //0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40 Error correction level + [-1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 24, 25], // Low + [-1, 1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, 38, 40, 43, 45, 47, 49], // Medium + [-1, 1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, 53, 56, 59, 62, 65, 68], // Quartile + [-1, 1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, 60, 63, 66, 70, 74, 77, 81], // High + ]; + return QrCode; + }()); + qrcodegen.QrCode = QrCode; + // Appends the given number of low-order bits of the given value + // to the given buffer. Requires 0 <= len <= 31 and 0 <= val < 2^len. + function appendBits(val, len, bb) { + if (len < 0 || len > 31 || val >>> len != 0) + throw new RangeError("Value out of range"); + for (var i = len - 1; i >= 0; i--) // Append bit by bit + bb.push((val >>> i) & 1); + } + // Returns true iff the i'th bit of x is set to 1. + function getBit(x, i) { + return ((x >>> i) & 1) != 0; + } + // Throws an exception if the given condition is false. + function assert(cond) { + if (!cond) + throw new Error("Assertion error"); + } + /*---- Data segment class ----*/ + /* + * A segment of character/binary/control data in a QR Code symbol. + * Instances of this class are immutable. + * The mid-level way to create a segment is to take the payload data + * and call a static factory function such as QrSegment.makeNumeric(). + * The low-level way to create a segment is to custom-make the bit buffer + * and call the QrSegment() constructor with appropriate values. + * This segment class imposes no length restrictions, but QR Codes have restrictions. + * Even in the most favorable conditions, a QR Code can only hold 7089 characters of data. + * Any segment longer than this is meaningless for the purpose of generating QR Codes. + */ + var QrSegment = /** @class */ (function () { + /*-- Constructor (low level) and fields --*/ + // Creates a new QR Code segment with the given attributes and data. + // The character count (numChars) must agree with the mode and the bit buffer length, + // but the constraint isn't checked. The given bit buffer is cloned and stored. + function QrSegment( + // The mode indicator of this segment. + mode, + // The length of this segment's unencoded data. Measured in characters for + // numeric/alphanumeric/kanji mode, bytes for byte mode, and 0 for ECI mode. + // Always zero or positive. Not the same as the data's bit length. + numChars, + // The data bits of this segment. Accessed through getData(). + bitData) { + this.mode = mode; + this.numChars = numChars; + this.bitData = bitData; + if (numChars < 0) + throw new RangeError("Invalid argument"); + this.bitData = bitData.slice(); // Make defensive copy + } + /*-- Static factory functions (mid level) --*/ + // Returns a segment representing the given binary data encoded in + // byte mode. All input byte arrays are acceptable. Any text string + // can be converted to UTF-8 bytes and encoded as a byte mode segment. + QrSegment.makeBytes = function (data) { + var bb = []; + for (var _i = 0, data_2 = data; _i < data_2.length; _i++) { + var b = data_2[_i]; + appendBits(b, 8, bb); + } + return new QrSegment(QrSegment.Mode.BYTE, data.length, bb); + }; + // Returns a segment representing the given string of decimal digits encoded in numeric mode. + QrSegment.makeNumeric = function (digits) { + if (!QrSegment.isNumeric(digits)) + throw new RangeError("String contains non-numeric characters"); + var bb = []; + for (var i = 0; i < digits.length;) { // Consume up to 3 digits per iteration + var n = Math.min(digits.length - i, 3); + appendBits(parseInt(digits.substring(i, i + n), 10), n * 3 + 1, bb); + i += n; + } + return new QrSegment(QrSegment.Mode.NUMERIC, digits.length, bb); + }; + // Returns a segment representing the given text string encoded in alphanumeric mode. + // The characters allowed are: 0 to 9, A to Z (uppercase only), space, + // dollar, percent, asterisk, plus, hyphen, period, slash, colon. + QrSegment.makeAlphanumeric = function (text) { + if (!QrSegment.isAlphanumeric(text)) + throw new RangeError("String contains unencodable characters in alphanumeric mode"); + var bb = []; + var i; + for (i = 0; i + 2 <= text.length; i += 2) { // Process groups of 2 + var temp = QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)) * 45; + temp += QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i + 1)); + appendBits(temp, 11, bb); + } + if (i < text.length) // 1 character remaining + appendBits(QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)), 6, bb); + return new QrSegment(QrSegment.Mode.ALPHANUMERIC, text.length, bb); + }; + // Returns a new mutable list of zero or more segments to represent the given Unicode text string. + // The result may use various segment modes and switch modes to optimize the length of the bit stream. + QrSegment.makeSegments = function (text) { + // Select the most efficient segment encoding automatically + if (text == "") + return []; + else if (QrSegment.isNumeric(text)) + return [QrSegment.makeNumeric(text)]; + else if (QrSegment.isAlphanumeric(text)) + return [QrSegment.makeAlphanumeric(text)]; + else + return [QrSegment.makeBytes(QrSegment.toUtf8ByteArray(text))]; + }; + // Returns a segment representing an Extended Channel Interpretation + // (ECI) designator with the given assignment value. + QrSegment.makeEci = function (assignVal) { + var bb = []; + if (assignVal < 0) + throw new RangeError("ECI assignment value out of range"); + else if (assignVal < (1 << 7)) + appendBits(assignVal, 8, bb); + else if (assignVal < (1 << 14)) { + appendBits(2, 2, bb); + appendBits(assignVal, 14, bb); + } + else if (assignVal < 1000000) { + appendBits(6, 3, bb); + appendBits(assignVal, 21, bb); + } + else + throw new RangeError("ECI assignment value out of range"); + return new QrSegment(QrSegment.Mode.ECI, 0, bb); + }; + // Tests whether the given string can be encoded as a segment in numeric mode. + // A string is encodable iff each character is in the range 0 to 9. + QrSegment.isNumeric = function (text) { + return QrSegment.NUMERIC_REGEX.test(text); + }; + // Tests whether the given string can be encoded as a segment in alphanumeric mode. + // A string is encodable iff each character is in the following set: 0 to 9, A to Z + // (uppercase only), space, dollar, percent, asterisk, plus, hyphen, period, slash, colon. + QrSegment.isAlphanumeric = function (text) { + return QrSegment.ALPHANUMERIC_REGEX.test(text); + }; + /*-- Methods --*/ + // Returns a new copy of the data bits of this segment. + QrSegment.prototype.getData = function () { + return this.bitData.slice(); // Make defensive copy + }; + // (Package-private) Calculates and returns the number of bits needed to encode the given segments at + // the given version. The result is infinity if a segment has too many characters to fit its length field. + QrSegment.getTotalBits = function (segs, version) { + var result = 0; + for (var _i = 0, segs_2 = segs; _i < segs_2.length; _i++) { + var seg = segs_2[_i]; + var ccbits = seg.mode.numCharCountBits(version); + if (seg.numChars >= (1 << ccbits)) + return Infinity; // The segment's length doesn't fit the field's bit width + result += 4 + ccbits + seg.bitData.length; + } + return result; + }; + // Returns a new array of bytes representing the given string encoded in UTF-8. + QrSegment.toUtf8ByteArray = function (str) { + str = encodeURI(str); + var result = []; + for (var i = 0; i < str.length; i++) { + if (str.charAt(i) != "%") + result.push(str.charCodeAt(i)); + else { + result.push(parseInt(str.substring(i + 1, i + 3), 16)); + i += 2; + } + } + return result; + }; + /*-- Constants --*/ + // Describes precisely all strings that are encodable in numeric mode. + QrSegment.NUMERIC_REGEX = /^[0-9]*$/; + // Describes precisely all strings that are encodable in alphanumeric mode. + QrSegment.ALPHANUMERIC_REGEX = /^[A-Z0-9 $%*+.\/:-]*$/; + // The set of all legal characters in alphanumeric mode, + // where each character value maps to the index in the string. + QrSegment.ALPHANUMERIC_CHARSET = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:"; + return QrSegment; + }()); + qrcodegen.QrSegment = QrSegment; +})(qrcodegen || (qrcodegen = {})); +/*---- Public helper enumeration ----*/ +(function (qrcodegen) { + (function (QrCode) { + /* + * The error correction level in a QR Code symbol. Immutable. + */ + var Ecc = /** @class */ (function () { + /*-- Constructor and fields --*/ + function Ecc( + // In the range 0 to 3 (unsigned 2-bit integer). + ordinal, + // (Package-private) In the range 0 to 3 (unsigned 2-bit integer). + formatBits) { + this.ordinal = ordinal; + this.formatBits = formatBits; + } + /*-- Constants --*/ + Ecc.LOW = new Ecc(0, 1); // The QR Code can tolerate about 7% erroneous codewords + Ecc.MEDIUM = new Ecc(1, 0); // The QR Code can tolerate about 15% erroneous codewords + Ecc.QUARTILE = new Ecc(2, 3); // The QR Code can tolerate about 25% erroneous codewords + Ecc.HIGH = new Ecc(3, 2); // The QR Code can tolerate about 30% erroneous codewords + return Ecc; + }()); + QrCode.Ecc = Ecc; + })(qrcodegen.QrCode || (qrcodegen.QrCode = {})); +})(qrcodegen || (qrcodegen = {})); +/*---- Public helper enumeration ----*/ +(function (qrcodegen) { + (function (QrSegment) { + /* + * Describes how a segment's data bits are interpreted. Immutable. + */ + var Mode = /** @class */ (function () { + /*-- Constructor and fields --*/ + function Mode( + // The mode indicator bits, which is a uint4 value (range 0 to 15). + modeBits, + // Number of character count bits for three different version ranges. + numBitsCharCount) { + this.modeBits = modeBits; + this.numBitsCharCount = numBitsCharCount; + } + /*-- Method --*/ + // (Package-private) Returns the bit width of the character count field for a segment in + // this mode in a QR Code at the given version number. The result is in the range [0, 16]. + Mode.prototype.numCharCountBits = function (ver) { + return this.numBitsCharCount[Math.floor((ver + 7) / 17)]; }; /*-- Constants --*/ - // Describes precisely all strings that are encodable in numeric mode. - QrSegment.NUMERIC_REGEX = /^[0-9]*$/; - // Describes precisely all strings that are encodable in alphanumeric mode. - QrSegment.ALPHANUMERIC_REGEX = /^[A-Z0-9 $%*+.\/:-]*$/; - // The set of all legal characters in alphanumeric mode, - // where each character value maps to the index in the string. - QrSegment.ALPHANUMERIC_CHARSET = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:"; - return QrSegment; + Mode.NUMERIC = new Mode(0x1, [10, 12, 14]); + Mode.ALPHANUMERIC = new Mode(0x2, [9, 11, 13]); + Mode.BYTE = new Mode(0x4, [8, 16, 16]); + Mode.KANJI = new Mode(0x8, [8, 10, 12]); + Mode.ECI = new Mode(0x7, [0, 0, 0]); + return Mode; }()); - qrcodegen.QrSegment = QrSegment; - })(qrcodegen || (qrcodegen = {})); - /*---- Public helper enumeration ----*/ - (function (qrcodegen) { - (function (QrCode) { - /* - * The error correction level in a QR Code symbol. Immutable. - */ - var Ecc = /** @class */ (function () { - /*-- Constructor and fields --*/ - function Ecc( - // In the range 0 to 3 (unsigned 2-bit integer). - ordinal, - // (Package-private) In the range 0 to 3 (unsigned 2-bit integer). - formatBits) { - this.ordinal = ordinal; - this.formatBits = formatBits; - } - /*-- Constants --*/ - Ecc.LOW = new Ecc(0, 1); // The QR Code can tolerate about 7% erroneous codewords - Ecc.MEDIUM = new Ecc(1, 0); // The QR Code can tolerate about 15% erroneous codewords - Ecc.QUARTILE = new Ecc(2, 3); // The QR Code can tolerate about 25% erroneous codewords - Ecc.HIGH = new Ecc(3, 2); // The QR Code can tolerate about 30% erroneous codewords - return Ecc; - }()); - QrCode.Ecc = Ecc; - })(qrcodegen.QrCode || (qrcodegen.QrCode = {})); - })(qrcodegen || (qrcodegen = {})); - /*---- Public helper enumeration ----*/ - (function (qrcodegen) { - (function (QrSegment) { - /* - * Describes how a segment's data bits are interpreted. Immutable. - */ - var Mode = /** @class */ (function () { - /*-- Constructor and fields --*/ - function Mode( - // The mode indicator bits, which is a uint4 value (range 0 to 15). - modeBits, - // Number of character count bits for three different version ranges. - numBitsCharCount) { - this.modeBits = modeBits; - this.numBitsCharCount = numBitsCharCount; - } - /*-- Method --*/ - // (Package-private) Returns the bit width of the character count field for a segment in - // this mode in a QR Code at the given version number. The result is in the range [0, 16]. - Mode.prototype.numCharCountBits = function (ver) { - return this.numBitsCharCount[Math.floor((ver + 7) / 17)]; - }; - /*-- Constants --*/ - Mode.NUMERIC = new Mode(0x1, [10, 12, 14]); - Mode.ALPHANUMERIC = new Mode(0x2, [9, 11, 13]); - Mode.BYTE = new Mode(0x4, [8, 16, 16]); - Mode.KANJI = new Mode(0x8, [8, 10, 12]); - Mode.ECI = new Mode(0x7, [0, 0, 0]); - return Mode; - }()); - QrSegment.Mode = Mode; - })(qrcodegen.QrSegment || (qrcodegen.QrSegment = {})); - })(qrcodegen || (qrcodegen = {})); - var QR = qrcodegen; + QrSegment.Mode = Mode; + })(qrcodegen.QrSegment || (qrcodegen.QrSegment = {})); +})(qrcodegen || (qrcodegen = {})); +var QR = qrcodegen; - var defaultErrorCorrectLevel = 'H'; - var ErrorCorrectLevelMap = { - L: QR.QrCode.Ecc.LOW, - M: QR.QrCode.Ecc.MEDIUM, - Q: QR.QrCode.Ecc.QUARTILE, - H: QR.QrCode.Ecc.HIGH, - }; - // Thanks the `qrcode.react` - var SUPPORTS_PATH2D = (function () { - try { - new Path2D().addPath(new Path2D()); - } - catch (e) { - return false; - } - return true; - })(); - function validErrorCorrectLevel(level) { - return level in ErrorCorrectLevelMap; +var defaultErrorCorrectLevel = 'L'; +var ErrorCorrectLevelMap = { + L: QR.QrCode.Ecc.LOW, + M: QR.QrCode.Ecc.MEDIUM, + Q: QR.QrCode.Ecc.QUARTILE, + H: QR.QrCode.Ecc.HIGH, +}; +// Thanks the `qrcode.react` +var SUPPORTS_PATH2D = (function () { + try { + new Path2D().addPath(new Path2D()); } - function generatePath(modules, margin) { - if (margin === void 0) { margin = 0; } - var ops = []; - modules.forEach(function (row, y) { - var start = null; - row.forEach(function (cell, x) { - if (!cell && start !== null) { - // M0 0h7v1H0z injects the space with the move and drops the comma, - // saving a char per operation - ops.push("M".concat(start + margin, " ").concat(y + margin, "h").concat(x - start, "v1H").concat(start + margin, "z")); - start = null; - return; - } - // end of row, clean up or skip - if (x === row.length - 1) { - if (!cell) { - // We would have closed the op above already so this can only mean - // 2+ light modules in a row. - return; - } - if (start === null) { - // Just a single dark module. - ops.push("M".concat(x + margin, ",").concat(y + margin, " h1v1H").concat(x + margin, "z")); - } - else { - // Otherwise finish the current line. - ops.push("M".concat(start + margin, ",").concat(y + margin, " h").concat(x + 1 - start, "v1H").concat(start + margin, "z")); - } - return; - } - if (cell && start === null) { - start = x; - } - }); - }); - return ops.join(''); + catch (e) { + return false; } - var QRCodeProps = { - value: { - type: String, - required: true, - default: '', - }, - size: { - type: Number, - default: 100, - }, - level: { - type: String, - default: defaultErrorCorrectLevel, - validator: function (l) { return validErrorCorrectLevel(l); }, - }, - background: { - type: String, - default: '#fff', - }, - foreground: { - type: String, - default: '#000', - }, - margin: { - type: Number, - required: false, - default: 0, - }, - }; - var QRCodeVueProps = __assign(__assign({}, QRCodeProps), { renderAs: { - type: String, - required: false, - default: 'canvas', - validator: function (as) { return ['canvas', 'svg'].indexOf(as) > -1; }, - } }); - var QRCodeSvg = vue.defineComponent({ - name: 'QRCodeSvg', - props: QRCodeProps, - setup: function (props) { - var numCells = vue.ref(0); - var fgPath = vue.ref(''); - var generate = function () { - var value = props.value, level = props.level, margin = props.margin; - var cells = QR.QrCode.encodeText(value, ErrorCorrectLevelMap[level]).getModules(); - numCells.value = cells.length + margin * 2; - // Drawing strategy: instead of a rect per module, we're going to create a - // single path for the dark modules and layer that on top of a light rect, - // for a total of 2 DOM nodes. We pay a bit more in string concat but that's - // way faster than DOM ops. - // For level 1, 441 nodes -> 2 - // For level 40, 31329 -> 2 - fgPath.value = generatePath(cells, margin); - }; - generate(); - vue.onUpdated(generate); - return function () { return vue.h('svg', { - width: props.size, - height: props.size, - 'shape-rendering': "crispEdges", - xmlns: 'http://www.w3.org/2000/svg', - viewBox: "0 0 ".concat(numCells.value, " ").concat(numCells.value), - }, [ - vue.h('path', { - fill: props.background, - d: "M0,0 h".concat(numCells.value, "v").concat(numCells.value, "H0z"), - }), - vue.h('path', { fill: props.foreground, d: fgPath.value }), - ]); }; - }, - }); - var QRCodeCanvas = vue.defineComponent({ - name: 'QRCodeCanvas', - props: QRCodeProps, - setup: function (props) { - var canvasEl = vue.ref(null); - var generate = function () { - var value = props.value, level = props.level, size = props.size, margin = props.margin, background = props.background, foreground = props.foreground; - var canvas = canvasEl.value; - if (!canvas) { + return true; +})(); +function validErrorCorrectLevel(level) { + return level in ErrorCorrectLevelMap; +} +function generatePath(modules, margin) { + if (margin === void 0) { margin = 0; } + var ops = []; + modules.forEach(function (row, y) { + var start = null; + row.forEach(function (cell, x) { + if (!cell && start !== null) { + // M0 0h7v1H0z injects the space with the move and drops the comma, + // saving a char per operation + ops.push("M".concat(start + margin, " ").concat(y + margin, "h").concat(x - start, "v1H").concat(start + margin, "z")); + start = null; + return; + } + // end of row, clean up or skip + if (x === row.length - 1) { + if (!cell) { + // We would have closed the op above already so this can only mean + // 2+ light modules in a row. return; } - var ctx = canvas.getContext('2d'); - if (!ctx) { - return; - } - var cells = QR.QrCode.encodeText(value, ErrorCorrectLevelMap[level]).getModules(); - var numCells = cells.length + margin * 2; - var devicePixelRatio = window.devicePixelRatio || 1; - var scale = (size / numCells) * devicePixelRatio; - canvas.height = canvas.width = size * devicePixelRatio; - ctx.scale(scale, scale); - ctx.fillStyle = background; - ctx.fillRect(0, 0, numCells, numCells); - ctx.fillStyle = foreground; - if (SUPPORTS_PATH2D) { - ctx.fill(new Path2D(generatePath(cells, margin))); + if (start === null) { + // Just a single dark module. + ops.push("M".concat(x + margin, ",").concat(y + margin, " h1v1H").concat(x + margin, "z")); } else { - cells.forEach(function (row, rdx) { - row.forEach(function (cell, cdx) { - if (cell) { - ctx.fillRect(cdx + margin, rdx + margin, 1, 1); - } - }); - }); + // Otherwise finish the current line. + ops.push("M".concat(start + margin, ",").concat(y + margin, " h").concat(x + 1 - start, "v1H").concat(start + margin, "z")); } - }; - vue.onMounted(generate); - vue.onUpdated(generate); - return function () { return vue.h('canvas', { - ref: canvasEl, - style: { width: "".concat(props.size, "px"), height: "".concat(props.size, "px") }, - }); }; - }, + return; + } + if (cell && start === null) { + start = x; + } + }); }); - var QrcodeVue = vue.defineComponent({ - name: 'Qrcode', - render: function () { - var _a = this.$props, renderAs = _a.renderAs, value = _a.value, _size = _a.size, _margin = _a.margin, _level = _a.level, background = _a.background, foreground = _a.foreground; - var size = _size >>> 0; + return ops.join(''); +} +function getImageSettings(cells, size, margin, imageSettings) { + var width = imageSettings.width, height = imageSettings.height, imageX = imageSettings.x, imageY = imageSettings.y; + var numCells = cells.length + margin * 2; + var defaultSize = Math.floor(size * 0.1); + var scale = numCells / size; + var w = (width || defaultSize) * scale; + var h = (height || defaultSize) * scale; + var x = imageX == null ? cells.length / 2 - w / 2 : imageX * scale; + var y = imageY == null ? cells.length / 2 - h / 2 : imageY * scale; + var excavation = null; + if (imageSettings.excavate) { + var floorX = Math.floor(x); + var floorY = Math.floor(y); + var ceilW = Math.ceil(w + x - floorX); + var ceilH = Math.ceil(h + y - floorY); + excavation = { x: floorX, y: floorY, w: ceilW, h: ceilH }; + } + return { x: x, y: y, h: h, w: w, excavation: excavation }; +} +function excavateModules(modules, excavation) { + return modules.slice().map(function (row, y) { + if (y < excavation.y || y >= excavation.y + excavation.h) { + return row; + } + return row.map(function (cell, x) { + if (x < excavation.x || x >= excavation.x + excavation.w) { + return cell; + } + return false; + }); + }); +} +var QRCodeProps = { + value: { + type: String, + required: true, + default: '', + }, + size: { + type: Number, + default: 100, + }, + level: { + type: String, + default: defaultErrorCorrectLevel, + validator: function (l) { return validErrorCorrectLevel(l); }, + }, + background: { + type: String, + default: '#fff', + }, + foreground: { + type: String, + default: '#000', + }, + margin: { + type: Number, + required: false, + default: 0, + }, + imageSettings: { + type: Object, + required: false, + default: function () { return ({}); }, + }, + gradient: { + type: Boolean, + required: false, + default: false, + }, + gradientType: { + type: String, + required: false, + default: 'linear', + validator: function (t) { return ['linear', 'radial'].indexOf(t) > -1; }, + }, + gradientStartColor: { + type: String, + required: false, + default: '#000', + }, + gradientEndColor: { + type: String, + required: false, + default: '#fff', + }, +}; +var QRCodeVueProps = __assign(__assign({}, QRCodeProps), { renderAs: { + type: String, + required: false, + default: 'canvas', + validator: function (as) { return ['canvas', 'svg'].indexOf(as) > -1; }, + } }); +var QrcodeSvg = vue.defineComponent({ + name: 'QRCodeSvg', + props: QRCodeProps, + setup: function (props) { + var numCells = vue.ref(0); + var fgPath = vue.ref(''); + var imageProps; + var generate = function () { + var value = props.value, _level = props.level, _margin = props.margin; var margin = _margin >>> 0; var level = validErrorCorrectLevel(_level) ? _level : defaultErrorCorrectLevel; - return vue.h(renderAs === 'svg' ? QRCodeSvg : QRCodeCanvas, { value: value, size: size, margin: margin, level: level, background: background, foreground: foreground }); - }, - props: QRCodeVueProps, - }); + var cells = QR.QrCode.encodeText(value, ErrorCorrectLevelMap[level]).getModules(); + numCells.value = cells.length + margin * 2; + if (props.imageSettings.src) { + var imageSettings = getImageSettings(cells, props.size, margin, props.imageSettings); + imageProps = { + x: imageSettings.x + margin, + y: imageSettings.y + margin, + width: imageSettings.w, + height: imageSettings.h, + }; + if (imageSettings.excavation) { + cells = excavateModules(cells, imageSettings.excavation); + } + } + // Drawing strategy: instead of a rect per module, we're going to create a + // single path for the dark modules and layer that on top of a light rect, + // for a total of 2 DOM nodes. We pay a bit more in string concat but that's + // way faster than DOM ops. + // For level 1, 441 nodes -> 2 + // For level 40, 31329 -> 2 + fgPath.value = generatePath(cells, margin); + }; + var renderGradient = function () { + if (!props.gradient) + return null; + var gradientProps = props.gradientType === 'linear' + ? { + x1: '0%', + y1: '0%', + x2: '100%', + y2: '100%', + } + : { + cx: '50%', + cy: '50%', + r: '50%', + fx: '50%', + fy: '50%', + }; + return vue.h(props.gradientType === 'linear' ? 'linearGradient' : 'radialGradient', __assign({ id: 'qr-gradient' }, gradientProps), [ + vue.h('stop', { + offset: '0%', + style: { stopColor: props.gradientStartColor }, + }), + vue.h('stop', { + offset: '100%', + style: { stopColor: props.gradientEndColor }, + }), + ]); + }; + generate(); + vue.onUpdated(generate); + return function () { return vue.h('svg', { + width: props.size, + height: props.size, + 'shape-rendering': "crispEdges", + xmlns: 'http://www.w3.org/2000/svg', + viewBox: "0 0 ".concat(numCells.value, " ").concat(numCells.value), + }, [ + vue.h('defs', {}, [renderGradient()]), + vue.h('rect', { + width: '100%', + height: '100%', + fill: props.background, + }), + vue.h('path', { + fill: props.gradient ? 'url(#qr-gradient)' : props.foreground, + d: fgPath.value, + }), + props.imageSettings.src && vue.h('image', __assign({ href: props.imageSettings.src }, imageProps)), + ]); }; + }, +}); +var QrcodeCanvas = vue.defineComponent({ + name: 'QRCodeCanvas', + props: QRCodeProps, + setup: function (props, ctx) { + var canvasEl = vue.ref(null); + var imageRef = vue.ref(null); + var generate = function () { + var value = props.value, _level = props.level, size = props.size, _margin = props.margin, background = props.background, foreground = props.foreground, gradient = props.gradient, gradientType = props.gradientType, gradientStartColor = props.gradientStartColor, gradientEndColor = props.gradientEndColor; + var margin = _margin >>> 0; + var level = validErrorCorrectLevel(_level) ? _level : defaultErrorCorrectLevel; + var canvas = canvasEl.value; + if (!canvas) { + return; + } + var ctx = canvas.getContext('2d'); + if (!ctx) { + return; + } + var cells = QR.QrCode.encodeText(value, ErrorCorrectLevelMap[level]).getModules(); + var numCells = cells.length + margin * 2; + var image = imageRef.value; + var imageProps = { x: 0, y: 0, width: 0, height: 0 }; + var showImage = props.imageSettings.src && image != null && image.naturalWidth !== 0 && image.naturalHeight !== 0; + if (showImage) { + var imageSettings = getImageSettings(cells, props.size, margin, props.imageSettings); + imageProps = { + x: imageSettings.x + margin, + y: imageSettings.y + margin, + width: imageSettings.w, + height: imageSettings.h, + }; + if (imageSettings.excavation) { + cells = excavateModules(cells, imageSettings.excavation); + } + } + var devicePixelRatio = window.devicePixelRatio || 1; + var scale = (size / numCells) * devicePixelRatio; + canvas.height = canvas.width = size * devicePixelRatio; + ctx.scale(scale, scale); + ctx.fillStyle = background; + ctx.fillRect(0, 0, numCells, numCells); + if (gradient) { + var grad = void 0; + if (gradientType === 'linear') { + grad = ctx.createLinearGradient(0, 0, numCells, numCells); + } + else { + grad = ctx.createRadialGradient(numCells / 2, numCells / 2, 0, numCells / 2, numCells / 2, numCells / 2); + } + grad.addColorStop(0, gradientStartColor); + grad.addColorStop(1, gradientEndColor); + ctx.fillStyle = grad; + } + else { + ctx.fillStyle = foreground; + } + if (SUPPORTS_PATH2D) { + ctx.fill(new Path2D(generatePath(cells, margin))); + } + else { + cells.forEach(function (row, rdx) { + row.forEach(function (cell, cdx) { + if (cell) { + ctx.fillRect(cdx + margin, rdx + margin, 1, 1); + } + }); + }); + } + if (showImage) { + ctx.drawImage(image, imageProps.x, imageProps.y, imageProps.width, imageProps.height); + } + }; + vue.onMounted(generate); + vue.onUpdated(generate); + var style = ctx.attrs.style; + return function () { return vue.h(vue.Fragment, [ + vue.h('canvas', __assign(__assign({}, ctx.attrs), { ref: canvasEl, style: __assign(__assign({}, style), { width: "".concat(props.size, "px"), height: "".concat(props.size, "px") }) })), + props.imageSettings.src && vue.h('img', { + ref: imageRef, + src: props.imageSettings.src, + style: { display: 'none' }, + onLoad: generate, + }) + ]); }; + }, +}); +var QrcodeVue = vue.defineComponent({ + name: 'Qrcode', + render: function () { + var _a = this.$props, renderAs = _a.renderAs, value = _a.value, size = _a.size, margin = _a.margin, level = _a.level, background = _a.background, foreground = _a.foreground, imageSettings = _a.imageSettings, gradient = _a.gradient, gradientType = _a.gradientType, gradientStartColor = _a.gradientStartColor, gradientEndColor = _a.gradientEndColor; + return vue.h(renderAs === 'svg' ? QrcodeSvg : QrcodeCanvas, { + value: value, + size: size, + margin: margin, + level: level, + background: background, + foreground: foreground, + imageSettings: imageSettings, + gradient: gradient, + gradientType: gradientType, + gradientStartColor: gradientStartColor, + gradientEndColor: gradientEndColor, + }); + }, + props: QRCodeVueProps, +}); - return QrcodeVue; +exports.QrcodeCanvas = QrcodeCanvas; +exports.QrcodeSvg = QrcodeSvg; +exports.default = QrcodeVue; + +Object.defineProperty(exports, '__esModule', { value: true }); })); diff --git a/lnbits/static/vendor/quasar.css b/lnbits/static/vendor/quasar.css index bd77016b..8ce29694 100644 --- a/lnbits/static/vendor/quasar.css +++ b/lnbits/static/vendor/quasar.css @@ -1119,16 +1119,19 @@ body.desktop .q-checkbox--dense:not(.disabled):focus .q-checkbox__inner:before, .q-chip--colored .q-chip__icon, .q-chip--dark .q-chip__icon { color: inherit; } -.q-chip--outline { - background: transparent !important; - border: 1px solid currentColor; -} .q-chip .q-avatar { font-size: 2em; margin-left: -0.45em; margin-right: 0.2em; border-radius: 16px; } +.q-chip--outline { + background: transparent !important; + border: 1px solid currentColor; +} +.q-chip--outline .q-avatar { + margin-left: calc(-0.45em - 1px); +} .q-chip--selected .q-avatar { display: none; } @@ -1239,10 +1242,6 @@ body.desktop.body--dark .q-chip--clickable:focus { min-width: 180px; border-radius: 4px; box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2), 0 2px 2px rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12); - /* Saturation Tab */ - /* Tune Tab */ - /* Palette Tab */ - /* Generic */ } .q-color-picker .q-tab { padding: 0 !important; @@ -1310,6 +1309,9 @@ body.desktop.body--dark .q-chip--clickable:focus { .q-color-picker__footer .q-tab--inactive { background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.15) 25%, rgba(0, 0, 0, 0.1)); } +.q-color-picker { + /* Saturation Tab */ +} .q-color-picker__spectrum { width: 100%; height: 100%; @@ -1360,6 +1362,9 @@ body.desktop.body--dark .q-chip--clickable:focus { .q-color-picker__sliders .q-slider--active path { stroke-width: 3px; } +.q-color-picker { + /* Tune Tab */ +} .q-color-picker__tune-tab .q-slider { margin-left: 18px; margin-right: 18px; @@ -1370,6 +1375,9 @@ body.desktop.body--dark .q-chip--clickable:focus { border-radius: 4px; width: 3.5em; } +.q-color-picker { + /* Palette Tab */ +} .q-color-picker__palette-tab { padding: 0 !important; } @@ -1380,6 +1388,9 @@ body.desktop.body--dark .q-chip--clickable:focus { padding-bottom: 10%; width: 10% !important; } +.q-color-picker { + /* Generic */ +} .q-color-picker input { color: inherit; background: transparent; @@ -2208,12 +2219,6 @@ body.q-ios-padding .q-dialog__inner > div { -webkit-animation-name: q-autofill; -webkit-animation-fill-mode: both; } -.q-field__native:-webkit-autofill + .q-field__label, .q-field__input:-webkit-autofill + .q-field__label { - transform: translateY(-40%) scale(0.75); -} -.q-field__native[type=color] + .q-field__label, .q-field__native[type=date] + .q-field__label, .q-field__native[type=datetime-local] + .q-field__label, .q-field__native[type=month] + .q-field__label, .q-field__native[type=time] + .q-field__label, .q-field__native[type=week] + .q-field__label, .q-field__input[type=color] + .q-field__label, .q-field__input[type=date] + .q-field__label, .q-field__input[type=datetime-local] + .q-field__label, .q-field__input[type=month] + .q-field__label, .q-field__input[type=time] + .q-field__label, .q-field__input[type=week] + .q-field__label { - transform: translateY(-40%) scale(0.75); -} .q-field__native:invalid, .q-field__input:invalid { box-shadow: none; } @@ -2273,6 +2278,15 @@ body.q-ios-padding .q-dialog__inner > div { transition: transform 0.36s cubic-bezier(0.4, 0, 0.2, 1), max-width 0.324s cubic-bezier(0.4, 0, 0.2, 1); backface-visibility: hidden; } +.q-field__label:has(+ :is(.q-field__native, .q-field__input):is(:-webkit-autofill, +[type=color], +[type=date], +[type=datetime-local], +[type=month], +[type=time], +[type=week])) { + transform: translateY(-40%) scale(0.75); +} .q-field--float .q-field__label { max-width: 133%; transform: translateY(-40%) scale(0.75); @@ -2491,10 +2505,13 @@ body.q-ios-padding .q-dialog__inner > div { .q-field--dense.q-field--float .q-field__label { transform: translateY(-30%) scale(0.75); } -.q-field--dense .q-field__native:-webkit-autofill + .q-field__label, .q-field--dense .q-field__input:-webkit-autofill + .q-field__label { - transform: translateY(-30%) scale(0.75); -} -.q-field--dense .q-field__native[type=color] + .q-field__label, .q-field--dense .q-field__native[type=date] + .q-field__label, .q-field--dense .q-field__native[type=datetime-local] + .q-field__label, .q-field--dense .q-field__native[type=month] + .q-field__label, .q-field--dense .q-field__native[type=time] + .q-field__label, .q-field--dense .q-field__native[type=week] + .q-field__label, .q-field--dense .q-field__input[type=color] + .q-field__label, .q-field--dense .q-field__input[type=date] + .q-field__label, .q-field--dense .q-field__input[type=datetime-local] + .q-field__label, .q-field--dense .q-field__input[type=month] + .q-field__label, .q-field--dense .q-field__input[type=time] + .q-field__label, .q-field--dense .q-field__input[type=week] + .q-field__label { +.q-field--dense .q-field__label:has(+ :is(.q-field__native, .q-field__input):is(:-webkit-autofill, +[type=color], +[type=date], +[type=datetime-local], +[type=month], +[type=time], +[type=week])) { transform: translateY(-30%) scale(0.75); } .q-field--borderless .q-field__bottom, .q-field--borderless.q-field--dense .q-field__control, .q-field--standard .q-field__bottom, .q-field--standard.q-field--dense .q-field__control { @@ -3384,7 +3401,7 @@ body.desktop .q-radio--dense:not(.disabled):focus .q-radio__inner:before, body.d text-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); position: relative; opacity: 0.4; - transition: transform 0.2s ease-in, opacity 0.2s ease-in; + transition: transform 0.2s ease-in, opacity 0.2s ease-in, color 0.2s ease-in; } .q-rating__icon--hovered { transform: scale(1.3); @@ -4704,7 +4721,7 @@ body.desktop .q-slider.q-slider--enabled .q-slider__track-container:hover .q-sli /* * On light background * */ -.q-table__bottom { +.q-table__bottom:not(.q-table__bottom--nodata) { border-top: 1px solid rgba(0, 0, 0, 0.12); } @@ -11315,8 +11332,7 @@ p { } .text-justify { text-align: justify; - -webkit-hyphens: auto; - hyphens: auto; + hyphens: auto; } .text-italic { font-style: italic; diff --git a/lnbits/static/vendor/quasar.umd.prod.js b/lnbits/static/vendor/quasar.umd.prod.js index 89314595..118bb6ae 100644 --- a/lnbits/static/vendor/quasar.umd.prod.js +++ b/lnbits/static/vendor/quasar.umd.prod.js @@ -1,10 +1,10 @@ /*! - * Quasar Framework v2.17.0 + * Quasar Framework v2.18.6 * (c) 2015-present Razvan Stoenescu * Released under the MIT License. */ -(()=>{var uv=Object.defineProperty;var Ur=(e,t)=>{for(var o in t)uv(e,o,{get:t[o],enumerable:!0})};var{h:l,ref:q,computed:s,watch:Y,isRef:Pu,toRaw:co,unref:Au,reactive:Uo,shallowReactive:$u,nextTick:Ee,onActivated:Nt,onDeactivated:Pt,onBeforeMount:Hn,onMounted:je,onBeforeUnmount:ye,onUnmounted:Qn,onBeforeUpdate:Mo,onUpdated:Eu,inject:ht,provide:jt,getCurrentInstance:K,markRaw:Kr,Transition:st,TransitionGroup:Bu,KeepAlive:wi,Teleport:Lu,useSSRContext:l0,withDirectives:Et,vShow:ki,defineComponent:Fu,createApp:Du}=window.Vue;function ft(e,t,o,r){return Object.defineProperty(e,t,{get:o,set:r,enumerable:!0}),e}function qi(e,t){for(let o in t)ft(e,o,t[o]);return e}var xt=q(!1),xl;function sv(e,t){let o=/(edg|edge|edga|edgios)\/([\w.]+)/.exec(e)||/(opr)[\/]([\w.]+)/.exec(e)||/(vivaldi)[\/]([\w.]+)/.exec(e)||/(chrome|crios)[\/]([\w.]+)/.exec(e)||/(version)(applewebkit)[\/]([\w.]+).*(safari)[\/]([\w.]+)/.exec(e)||/(webkit)[\/]([\w.]+).*(version)[\/]([\w.]+).*(safari)[\/]([\w.]+)/.exec(e)||/(firefox|fxios)[\/]([\w.]+)/.exec(e)||/(webkit)[\/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[\/]([\w.]+)/.exec(e)||[];return{browser:o[5]||o[3]||o[1]||"",version:o[4]||o[2]||"0",platform:t[0]||""}}function cv(e){return/(ipad)/.exec(e)||/(ipod)/.exec(e)||/(windows phone)/.exec(e)||/(iphone)/.exec(e)||/(kindle)/.exec(e)||/(silk)/.exec(e)||/(android)/.exec(e)||/(win)/.exec(e)||/(mac)/.exec(e)||/(linux)/.exec(e)||/(cros)/.exec(e)||/(playbook)/.exec(e)||/(bb)/.exec(e)||/(blackberry)/.exec(e)||[]}var zu="ontouchstart"in window||window.navigator.maxTouchPoints>0;function dv(e){let t=e.toLowerCase(),o=cv(t),r=sv(t,o),n={mobile:!1,desktop:!1,cordova:!1,capacitor:!1,nativeMobile:!1,electron:!1,bex:!1,linux:!1,mac:!1,win:!1,cros:!1,chrome:!1,firefox:!1,opera:!1,safari:!1,vivaldi:!1,edge:!1,edgeChromium:!1,ie:!1,webkit:!1,android:!1,ios:!1,ipad:!1,iphone:!1,ipod:!1,kindle:!1,winphone:!1,blackberry:!1,playbook:!1,silk:!1};r.browser&&(n[r.browser]=!0,n.version=r.version,n.versionNumber=parseInt(r.version,10)),r.platform&&(n[r.platform]=!0);let i=n.android||n.ios||n.bb||n.blackberry||n.ipad||n.iphone||n.ipod||n.kindle||n.playbook||n.silk||n["windows phone"];if(i===!0||t.indexOf("mobile")!==-1?n.mobile=!0:n.desktop=!0,n["windows phone"]&&(n.winphone=!0,delete n["windows phone"]),n.edga||n.edgios||n.edg?(n.edge=!0,r.browser="edge"):n.crios?(n.chrome=!0,r.browser="chrome"):n.fxios&&(n.firefox=!0,r.browser="firefox"),(n.ipod||n.ipad||n.iphone)&&(n.ios=!0),n.vivaldi&&(r.browser="vivaldi",n.vivaldi=!0),(n.chrome||n.opr||n.safari||n.vivaldi||n.mobile===!0&&n.ios!==!0&&i!==!0)&&(n.webkit=!0),n.opr&&(r.browser="opera",n.opera=!0),n.safari&&(n.blackberry||n.bb?(r.browser="blackberry",n.blackberry=!0):n.playbook?(r.browser="playbook",n.playbook=!0):n.android?(r.browser="android",n.android=!0):n.kindle?(r.browser="kindle",n.kindle=!0):n.silk&&(r.browser="silk",n.silk=!0)),n.name=r.browser,n.platform=r.platform,t.indexOf("electron")!==-1)n.electron=!0;else if(document.location.href.indexOf("-extension://")!==-1)n.bex=!0;else{if(window.Capacitor!==void 0?(n.capacitor=!0,n.nativeMobile=!0,n.nativeMobileWrapper="capacitor"):(window._cordovaNative!==void 0||window.cordova!==void 0)&&(n.cordova=!0,n.nativeMobile=!0,n.nativeMobileWrapper="cordova"),xt.value===!0&&(xl={is:{...n}}),zu===!0&&n.mac===!0&&(n.desktop===!0&&n.safari===!0||n.nativeMobile===!0&&n.android!==!0&&n.ios!==!0&&n.ipad!==!0)){delete n.mac,delete n.desktop;let a=Math.min(window.innerHeight,window.innerWidth)>414?"ipad":"iphone";Object.assign(n,{mobile:!0,ios:!0,platform:a,[a]:!0})}n.mobile!==!0&&window.navigator.userAgentData&&window.navigator.userAgentData.mobile&&(delete n.desktop,n.mobile=!0)}return n}var Vu=navigator.userAgent||navigator.vendor||window.opera,fv={has:{touch:!1,webStorage:!1},within:{iframe:!1}},Pe={userAgent:Vu,is:dv(Vu),has:{touch:zu},within:{iframe:window.self!==window.top}},_l={install(e){let{$q:t}=e;xt.value===!0?(e.onSSRHydrated.push(()=>{Object.assign(t.platform,Pe),xt.value=!1}),t.platform=Uo(this)):t.platform=this}};{let e;ft(Pe.has,"webStorage",()=>{if(e!==void 0)return e;try{if(window.localStorage)return e=!0,!0}catch{}return e=!1,!1}),Object.assign(_l,Pe),xt.value===!0&&(Object.assign(_l,xl,fv),xl=null)}var Ro=_l;function A(e){return Kr(Fu(e))}function At(e){return Kr(e)}var Ut=(e,t)=>{let o=Uo(e);for(let r in e)ft(t,r,()=>o[r],n=>{o[r]=n});return t};var Ze={hasPassive:!1,passiveCapture:!0,notPassiveCapture:!0};try{let e=Object.defineProperty({},"passive",{get(){Object.assign(Ze,{hasPassive:!0,passive:{passive:!0},notPassive:{passive:!1},passiveCapture:{passive:!0,capture:!0},notPassiveCapture:{passive:!1,capture:!0}})}});window.addEventListener("qtest",null,e),window.removeEventListener("qtest",null,e)}catch{}function Ye(){}function Ko(e){return e.button===0}function mv(e){return e.button===1}function vv(e){return e.button===2}function _t(e){return e.touches&&e.touches[0]?e=e.touches[0]:e.changedTouches&&e.changedTouches[0]?e=e.changedTouches[0]:e.targetTouches&&e.targetTouches[0]&&(e=e.targetTouches[0]),{top:e.clientY,left:e.clientX}}function Cl(e){if(e.path)return e.path;if(e.composedPath)return e.composedPath();let t=[],o=e.target;for(;o;){if(t.push(o),o.tagName==="HTML")return t.push(document),t.push(window),t;o=o.parentElement}}var gv=40,hv=800;function pv(e){let t=e.deltaX,o=e.deltaY;if((t||o)&&e.deltaMode){let r=e.deltaMode===1?gv:hv;t*=r,o*=r}return e.shiftKey&&!t&&([o,t]=[t,o]),{x:t,y:o}}function at(e){e.stopPropagation()}function vt(e){e.cancelable!==!1&&e.preventDefault()}function ke(e){e.cancelable!==!1&&e.preventDefault(),e.stopPropagation()}function Wo(e,t){if(e===void 0||t===!0&&e.__dragPrevented===!0)return;let o=t===!0?r=>{r.__dragPrevented=!0,r.addEventListener("dragstart",vt,Ze.notPassiveCapture)}:r=>{delete r.__dragPrevented,r.removeEventListener("dragstart",vt,Ze.notPassiveCapture)};e.querySelectorAll("a, img").forEach(o)}function mt(e,t,o){let r=`__q_${t}_evt`;e[r]=e[r]!==void 0?e[r].concat(o):o,o.forEach(n=>{n[0].addEventListener(n[1],e[n[2]],Ze[n[3]])})}function qt(e,t){let o=`__q_${t}_evt`;e[o]!==void 0&&(e[o].forEach(r=>{r[0].removeEventListener(r[1],e[r[2]],Ze[r[3]])}),e[o]=void 0)}var Ou={listenOpts:Ze,leftClick:Ko,middleClick:mv,rightClick:vv,position:_t,getEventPath:Cl,getMouseWheelDistance:pv,stop:at,prevent:vt,stopAndPrevent:ke,preventDraggable:Wo};function Zt(e,t=250,o){let r=null;function n(){let i=arguments,a=()=>{r=null,o!==!0&&e.apply(this,i)};r!==null?clearTimeout(r):o===!0&&e.apply(this,i),r=setTimeout(a,t)}return n.cancel=()=>{r!==null&&clearTimeout(r)},n}var wl=["sm","md","lg","xl"],{passive:Iu}=Ze,Ti=Ut({width:0,height:0,name:"xs",sizes:{sm:600,md:1024,lg:1440,xl:1920},lt:{sm:!0,md:!0,lg:!0,xl:!0},gt:{xs:!1,sm:!1,md:!1,lg:!1},xs:!0,sm:!1,md:!1,lg:!1,xl:!1},{setSizes:Ye,setDebounce:Ye,install({$q:e,onSSRHydrated:t}){if(e.screen=this,this.__installed===!0){e.config.screen!==void 0&&(e.config.screen.bodyClasses===!1?document.body.classList.remove(`screen--${this.name}`):this.__update(!0));return}let{visualViewport:o}=window,r=o||window,n=document.scrollingElement||document.documentElement,i=o===void 0||Pe.is.mobile===!0?()=>[Math.max(window.innerWidth,n.clientWidth),Math.max(window.innerHeight,n.clientHeight)]:()=>[o.width*o.scale+window.innerWidth-n.clientWidth,o.height*o.scale+window.innerHeight-n.clientHeight],a=e.config.screen!==void 0&&e.config.screen.bodyClasses===!0;this.__update=h=>{let[g,m]=i();if(m!==this.height&&(this.height=m),g!==this.width)this.width=g;else if(h!==!0)return;let v=this.sizes;this.gt.xs=g>=v.sm,this.gt.sm=g>=v.md,this.gt.md=g>=v.lg,this.gt.lg=g>=v.xl,this.lt.sm=g{wl.forEach(g=>{h[g]!==void 0&&(c[g]=h[g])})},this.setDebounce=h=>{f=h};let d=()=>{let h=getComputedStyle(document.body);h.getPropertyValue("--q-size-sm")&&wl.forEach(g=>{this.sizes[g]=parseInt(h.getPropertyValue(`--q-size-${g}`),10)}),this.setSizes=g=>{wl.forEach(m=>{g[m]&&(this.sizes[m]=g[m])}),this.__update(!0)},this.setDebounce=g=>{u!==void 0&&r.removeEventListener("resize",u,Iu),u=g>0?Zt(this.__update,g):this.__update,r.addEventListener("resize",u,Iu)},this.setDebounce(f),Object.keys(c).length!==0?(this.setSizes(c),c=void 0):this.__update(),a===!0&&this.name==="xs"&&document.body.classList.add("screen--xs")};xt.value===!0?t.push(d):d()}});var Kt=Ut({isActive:!1,mode:!1},{__media:void 0,set(e){Kt.mode=e,e==="auto"?(Kt.__media===void 0&&(Kt.__media=window.matchMedia("(prefers-color-scheme: dark)"),Kt.__updateMedia=()=>{Kt.set("auto")},Kt.__media.addListener(Kt.__updateMedia)),e=Kt.__media.matches):Kt.__media!==void 0&&(Kt.__media.removeListener(Kt.__updateMedia),Kt.__media=void 0),Kt.isActive=e===!0,document.body.classList.remove(`body--${e===!0?"light":"dark"}`),document.body.classList.add(`body--${e===!0?"dark":"light"}`)},toggle(){Kt.set(Kt.isActive===!1)},install({$q:e,ssrContext:t}){let{dark:o}=e.config;e.dark=this,this.__installed!==!0&&this.set(o!==void 0?o:!1)}}),Mi=Kt;function Wr(e,t,o=document.body){if(typeof e!="string")throw new TypeError("Expected a string as propName");if(typeof t!="string")throw new TypeError("Expected a string as value");if(!(o instanceof Element))throw new TypeError("Expected a DOM element");o.style.setProperty(`--q-${e}`,t)}var Hu=!1;function Qu(e){Hu=e.isComposing===!0}function io(e){return Hu===!0||e!==Object(e)||e.isComposing===!0||e.qKeyEvent===!0}function Tt(e,t){return io(e)===!0?!1:[].concat(t).includes(e.keyCode)}function Nu(e){if(e.ios===!0)return"ios";if(e.android===!0)return"android"}function bv({is:e,has:t,within:o},r){let n=[e.desktop===!0?"desktop":"mobile",`${t.touch===!1?"no-":""}touch`];if(e.mobile===!0){let i=Nu(e);i!==void 0&&n.push("platform-"+i)}if(e.nativeMobile===!0){let i=e.nativeMobileWrapper;n.push(i),n.push("native-mobile"),e.ios===!0&&(r[i]===void 0||r[i].iosStatusBarPadding!==!1)&&n.push("q-ios-padding")}else e.electron===!0?n.push("electron"):e.bex===!0&&n.push("bex");return o.iframe===!0&&n.push("within-iframe"),n}function yv(){let{is:e}=Pe,t=document.body.className,o=new Set(t.replace(/ {2}/g," ").split(" "));if(e.nativeMobile!==!0&&e.electron!==!0&&e.bex!==!0){if(e.desktop===!0)o.delete("mobile"),o.delete("platform-ios"),o.delete("platform-android"),o.add("desktop");else if(e.mobile===!0){o.delete("desktop"),o.add("mobile"),o.delete("platform-ios"),o.delete("platform-android");let n=Nu(e);n!==void 0&&o.add(`platform-${n}`)}}Pe.has.touch===!0&&(o.delete("no-touch"),o.add("touch")),Pe.within.iframe===!0&&o.add("within-iframe");let r=Array.from(o).join(" ");t!==r&&(document.body.className=r)}function Sv(e){for(let t in e)Wr(t,e[t])}var ju={install(e){if(this.__installed!==!0){if(xt.value===!0)yv();else{let{$q:t}=e;t.config.brand!==void 0&&Sv(t.config.brand);let o=bv(Pe,t.config);document.body.classList.add.apply(document.body.classList,o)}Pe.is.ios===!0&&document.body.addEventListener("touchstart",Ye),window.addEventListener("keydown",Qu,!0)}}};var Uu=()=>!0;function xv(e){return typeof e=="string"&&e!==""&&e!=="/"&&e!=="#/"}function _v(e){return e.startsWith("#")===!0&&(e=e.substring(1)),e.startsWith("/")===!1&&(e="/"+e),e.endsWith("/")===!0&&(e=e.substring(0,e.length-1)),"#"+e}function Cv(e){if(e.backButtonExit===!1)return()=>!1;if(e.backButtonExit==="*")return Uu;let t=["#/"];return Array.isArray(e.backButtonExit)===!0&&t.push(...e.backButtonExit.filter(xv).map(_v)),()=>t.includes(window.location.hash)}var on={__history:[],add:Ye,remove:Ye,install({$q:e}){if(this.__installed===!0)return;let{cordova:t,capacitor:o}=Pe.is;if(t!==!0&&o!==!0)return;let r=e.config[t===!0?"cordova":"capacitor"];if(r!==void 0&&r.backButton===!1||o===!0&&(window.Capacitor===void 0||window.Capacitor.Plugins.App===void 0))return;this.add=a=>{a.condition===void 0&&(a.condition=Uu),this.__history.push(a)},this.remove=a=>{let u=this.__history.indexOf(a);u>=0&&this.__history.splice(u,1)};let n=Cv(Object.assign({backButtonExit:!0},r)),i=()=>{if(this.__history.length){let a=this.__history[this.__history.length-1];a.condition()===!0&&(this.__history.pop(),a.handler())}else n()===!0?navigator.app.exitApp():window.history.back()};t===!0?document.addEventListener("deviceready",()=>{document.addEventListener("backbutton",i,!1)}):window.Capacitor.Plugins.App.addListener("backButton",i)}};var Yr={isoName:"en-US",nativeName:"English (US)",label:{clear:"Clear",ok:"OK",cancel:"Cancel",close:"Close",set:"Set",select:"Select",reset:"Reset",remove:"Remove",update:"Update",create:"Create",search:"Search",filter:"Filter",refresh:"Refresh",expand:e=>e?`Expand "${e}"`:"Expand",collapse:e=>e?`Collapse "${e}"`:"Collapse"},date:{days:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),daysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),firstDayOfWeek:0,format24h:!1,pluralDay:"days"},table:{noData:"No data available",noResults:"No matching records found",loading:"Loading...",selectedRecords:e=>e===1?"1 record selected.":(e===0?"No":e)+" records selected.",recordsPerPage:"Records per page:",allRows:"All",pagination:(e,t,o)=>e+"-"+t+" of "+o,columns:"Columns"},editor:{url:"URL",bold:"Bold",italic:"Italic",strikethrough:"Strikethrough",underline:"Underline",unorderedList:"Unordered List",orderedList:"Ordered List",subscript:"Subscript",superscript:"Superscript",hyperlink:"Hyperlink",toggleFullscreen:"Toggle Fullscreen",quote:"Quote",left:"Left align",center:"Center align",right:"Right align",justify:"Justify align",print:"Print",outdent:"Decrease indentation",indent:"Increase indentation",removeFormat:"Remove formatting",formatting:"Formatting",fontSize:"Font Size",align:"Align",hr:"Insert Horizontal Rule",undo:"Undo",redo:"Redo",heading1:"Heading 1",heading2:"Heading 2",heading3:"Heading 3",heading4:"Heading 4",heading5:"Heading 5",heading6:"Heading 6",paragraph:"Paragraph",code:"Code",size1:"Very small",size2:"A bit small",size3:"Normal",size4:"Medium-large",size5:"Big",size6:"Very big",size7:"Maximum",defaultFont:"Default Font",viewSource:"View Source"},tree:{noNodes:"No nodes available",noResults:"No matching nodes found"}};function Ku(){let e=Array.isArray(navigator.languages)===!0&&navigator.languages.length!==0?navigator.languages[0]:navigator.language;if(typeof e=="string")return e.split(/[-_]/).map((t,o)=>o===0?t.toLowerCase():o>1||t.length<4?t.toUpperCase():t[0].toUpperCase()+t.slice(1).toLowerCase()).join("-")}var Sn=Ut({__qLang:{}},{getLocale:Ku,set(e=Yr,t){let o={...e,rtl:e.rtl===!0,getLocale:Ku};if(o.set=Sn.set,Sn.__langConfig===void 0||Sn.__langConfig.noHtmlAttrs!==!0){let r=document.documentElement;r.setAttribute("dir",o.rtl===!0?"rtl":"ltr"),r.setAttribute("lang",o.isoName)}Object.assign(Sn.__qLang,o)},install({$q:e,lang:t,ssrContext:o}){e.lang=Sn.__qLang,Sn.__langConfig=e.config.lang,this.__installed===!0?t!==void 0&&this.set(t):(this.props=new Proxy(this.__qLang,{get(){return Reflect.get(...arguments)},ownKeys(r){return Reflect.ownKeys(r).filter(n=>n!=="set"&&n!=="getLocale")}}),this.set(t||Yr))}}),Yo=Sn;var Wu={name:"material-icons",type:{positive:"check_circle",negative:"warning",info:"info",warning:"priority_high"},arrow:{up:"arrow_upward",right:"arrow_forward",down:"arrow_downward",left:"arrow_back",dropdown:"arrow_drop_down"},chevron:{left:"chevron_left",right:"chevron_right"},colorPicker:{spectrum:"gradient",tune:"tune",palette:"style"},pullToRefresh:{icon:"refresh"},carousel:{left:"chevron_left",right:"chevron_right",up:"keyboard_arrow_up",down:"keyboard_arrow_down",navigationIcon:"lens"},chip:{remove:"cancel",selected:"check"},datetime:{arrowLeft:"chevron_left",arrowRight:"chevron_right",now:"access_time",today:"today"},editor:{bold:"format_bold",italic:"format_italic",strikethrough:"strikethrough_s",underline:"format_underlined",unorderedList:"format_list_bulleted",orderedList:"format_list_numbered",subscript:"vertical_align_bottom",superscript:"vertical_align_top",hyperlink:"link",toggleFullscreen:"fullscreen",quote:"format_quote",left:"format_align_left",center:"format_align_center",right:"format_align_right",justify:"format_align_justify",print:"print",outdent:"format_indent_decrease",indent:"format_indent_increase",removeFormat:"format_clear",formatting:"text_format",fontSize:"format_size",align:"format_align_left",hr:"remove",undo:"undo",redo:"redo",heading:"format_size",code:"code",size:"format_size",font:"font_download",viewSource:"code"},expansionItem:{icon:"keyboard_arrow_down",denseIcon:"arrow_drop_down"},fab:{icon:"add",activeIcon:"close"},field:{clear:"cancel",error:"error"},pagination:{first:"first_page",prev:"keyboard_arrow_left",next:"keyboard_arrow_right",last:"last_page"},rating:{icon:"grade"},stepper:{done:"check",active:"edit",error:"warning"},tabs:{left:"chevron_left",right:"chevron_right",up:"keyboard_arrow_up",down:"keyboard_arrow_down"},table:{arrowUp:"arrow_upward",warning:"warning",firstPage:"first_page",prevPage:"chevron_left",nextPage:"chevron_right",lastPage:"last_page"},tree:{icon:"play_arrow"},uploader:{done:"done",clear:"clear",add:"add_box",upload:"cloud_upload",removeQueue:"clear_all",removeUploaded:"done_all"}};var kl=Ut({iconMapFn:null,__qIconSet:{}},{set(e,t){let o={...e};o.set=kl.set,Object.assign(kl.__qIconSet,o)},install({$q:e,iconSet:t,ssrContext:o}){e.config.iconMapFn!==void 0&&(this.iconMapFn=e.config.iconMapFn),e.iconSet=this.__qIconSet,ft(e,"iconMapFn",()=>this.iconMapFn,r=>{this.iconMapFn=r}),this.__installed===!0?t!==void 0&&this.set(t):(this.props=new Proxy(this.__qIconSet,{get(){return Reflect.get(...arguments)},ownKeys(r){return Reflect.ownKeys(r).filter(n=>n!=="set")}}),this.set(t||Wu))}}),Nn=kl;var Ri="_q_",Pi="_q_t_",Ai="_q_s_",Jt="_q_l_",$i="_q_pc_",Ei="_q_f_",Xo="_q_fo_",Bi="_q_tabs_",Li="_q_u_";function Ge(){}var jn={},ql=!1;function Yu(){ql=!0}function Wt(e,t){if(e===t)return!0;if(e!==null&&t!==null&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;let o,r;if(e.constructor===Array){if(o=e.length,o!==t.length)return!1;for(r=o;r--!==0;)if(Wt(e[r],t[r])!==!0)return!1;return!0}if(e.constructor===Map){if(e.size!==t.size)return!1;let i=e.entries();for(r=i.next();r.done!==!0;){if(t.has(r.value[0])!==!0)return!1;r=i.next()}for(i=e.entries(),r=i.next();r.done!==!0;){if(Wt(r.value[1],t.get(r.value[0]))!==!0)return!1;r=i.next()}return!0}if(e.constructor===Set){if(e.size!==t.size)return!1;let i=e.entries();for(r=i.next();r.done!==!0;){if(t.has(r.value[0])!==!0)return!1;r=i.next()}return!0}if(e.buffer!=null&&e.buffer.constructor===ArrayBuffer){if(o=e.length,o!==t.length)return!1;for(r=o;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();let n=Object.keys(e).filter(i=>e[i]!==void 0);if(o=n.length,o!==Object.keys(t).filter(i=>t[i]!==void 0).length)return!1;for(r=o;r--!==0;){let i=n[r];if(Wt(e[i],t[i])!==!0)return!1}return!0}return e!==e&&t!==t}function ct(e){return e!==null&&typeof e=="object"&&Array.isArray(e)!==!0}function Go(e){return Object.prototype.toString.call(e)==="[object Date]"}function Tl(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function fo(e){return typeof e=="number"&&isFinite(e)}var Xu={deepEqual:Wt,object:ct,date:Go,regexp:Tl,number:fo};var Gu=[Ro,ju,Mi,Ti,on,Yo,Nn];function nn(e,t){let o=Du(e);o.config.globalProperties=t.config.globalProperties;let{reload:r,...n}=t._context;return Object.assign(o._context,n),o}function Zu(e,t){t.forEach(o=>{o.install(e),o.__installed=!0})}function wv(e,t,o){e.config.globalProperties.$q=o.$q,e.provide(Ri,o.$q),Zu(o,Gu),t.components!==void 0&&Object.values(t.components).forEach(r=>{ct(r)===!0&&r.name!==void 0&&e.component(r.name,r)}),t.directives!==void 0&&Object.values(t.directives).forEach(r=>{ct(r)===!0&&r.name!==void 0&&e.directive(r.name,r)}),t.plugins!==void 0&&Zu(o,Object.values(t.plugins).filter(r=>typeof r.install=="function"&&Gu.includes(r)===!1)),xt.value===!0&&(o.$q.onSSRHydrated=()=>{o.onSSRHydrated.forEach(r=>{r()}),o.$q.onSSRHydrated=()=>{}})}var Ju=function(e,t={}){let o={version:"2.17.0"};ql===!1?(t.config!==void 0&&Object.assign(jn,t.config),o.config={...jn},Yu()):o.config=t.config||{},wv(e,t,{parentApp:e,$q:o,lang:t.lang,iconSet:t.iconSet,onSSRHydrated:[]})};var rl={};Ur(rl,{QAjaxBar:()=>Di,QAvatar:()=>zi,QBadge:()=>ss,QBanner:()=>cs,QBar:()=>ds,QBreadcrumbs:()=>vs,QBreadcrumbsEl:()=>bs,QBtn:()=>ze,QBtnDropdown:()=>Ji,QBtnGroup:()=>or,QBtnToggle:()=>zs,QCard:()=>hr,QCardActions:()=>ea,QCardSection:()=>xo,QCarousel:()=>Is,QCarouselControl:()=>Qs,QCarouselSlide:()=>Hs,QChatMessage:()=>Ns,QCheckbox:()=>zo,QChip:()=>qr,QCircularProgress:()=>Tr,QColor:()=>oc,QDate:()=>gc,QDialog:()=>Ho,QDrawer:()=>Cc,QEditor:()=>Ec,QExpansionItem:()=>Bc,QFab:()=>Lc,QFabAction:()=>Dc,QField:()=>Aa,QFile:()=>Oc,QFooter:()=>Ic,QForm:()=>Hc,QFormChildMixin:()=>Qc,QHeader:()=>Nc,QIcon:()=>Re,QImg:()=>jc,QInfiniteScroll:()=>Uc,QInnerLoading:()=>Kc,QInput:()=>Vr,QIntersection:()=>od,QItem:()=>Qo,QItemLabel:()=>Ln,QItemSection:()=>no,QKnob:()=>rd,QLayout:()=>ad,QLinearProgress:()=>Wa,QList:()=>Oa,QMarkupTable:()=>Ia,QMenu:()=>Lo,QNoSsr:()=>ld,QOptionGroup:()=>Na,QPage:()=>sd,QPageContainer:()=>cd,QPageScroller:()=>dd,QPageSticky:()=>fd,QPagination:()=>md,QParallax:()=>vd,QPopupEdit:()=>gd,QPopupProxy:()=>hd,QPullToRefresh:()=>bd,QRadio:()=>Ha,QRange:()=>yd,QRating:()=>Sd,QResizeObserver:()=>oo,QResponsive:()=>xd,QRouteTab:()=>$f,QScrollArea:()=>qd,QScrollObserver:()=>zr,QSelect:()=>Xa,QSeparator:()=>lo,QSkeleton:()=>Ad,QSlideItem:()=>Ed,QSlideTransition:()=>gn,QSlider:()=>Jo,QSpace:()=>Bd,QSpinner:()=>wt,QSpinnerAudio:()=>Ld,QSpinnerBall:()=>Fd,QSpinnerBars:()=>Dd,QSpinnerBox:()=>Vd,QSpinnerClock:()=>zd,QSpinnerComment:()=>Od,QSpinnerCube:()=>Id,QSpinnerDots:()=>Hd,QSpinnerFacebook:()=>Qd,QSpinnerGears:()=>Nd,QSpinnerGrid:()=>jd,QSpinnerHearts:()=>Ud,QSpinnerHourglass:()=>Kd,QSpinnerInfinity:()=>Wd,QSpinnerIos:()=>Yd,QSpinnerOrbit:()=>Xd,QSpinnerOval:()=>Gd,QSpinnerPie:()=>Zd,QSpinnerPuff:()=>Jd,QSpinnerRadio:()=>ef,QSpinnerRings:()=>tf,QSpinnerTail:()=>of,QSplitter:()=>nf,QStep:()=>lf,QStepper:()=>uf,QStepperNavigation:()=>sf,QTab:()=>cn,QTabPanel:()=>Rr,QTabPanels:()=>ma,QTable:()=>Rf,QTabs:()=>ai,QTd:()=>Af,QTh:()=>Za,QTime:()=>Ef,QTimeline:()=>Bf,QTimelineEntry:()=>Lf,QToggle:()=>Qa,QToolbar:()=>Ff,QToolbarTitle:()=>Df,QTooltip:()=>Ma,QTr:()=>Pf,QTree:()=>Vf,QUploader:()=>Qf,QUploaderAddTrigger:()=>Nf,QVideo:()=>jf,QVirtualScroll:()=>el});var es=["B","KB","MB","GB","TB","PB"];function Un(e,t=1){let o=0;for(;parseInt(e,10)>=1024&&o=t?r:new Array(t-r.length+1).join(o)+r}var ts={humanStorageSize:Un,capitalize:Ml,between:Je,normalizeToInterval:xn,pad:nt};var Rl=XMLHttpRequest,os=Rl.prototype.open,kv=["top","right","bottom","left"],Fi=[],Xr=0;function qv({p:e,pos:t,active:o,horiz:r,reverse:n,dir:i}){let a=1,u=1;return r===!0?(n===!0&&(a=-1),t==="bottom"&&(u=-1),{transform:`translate3d(${a*(e-100)}%,${o?0:u*-200}%,0)`}):(n===!0&&(u=-1),t==="right"&&(a=-1),{transform:`translate3d(${o?0:i*a*-200}%,${u*(e-100)}%,0)`})}function Tv(e,t){return typeof t!="number"&&(e<25?t=Math.random()*3+3:e<65?t=Math.random()*3:e<85?t=Math.random()*2:e<99?t=.6:t=0),Je(e+t,0,100)}function Mv(e){Xr++,Fi.push(e),!(Xr>1)&&(Rl.prototype.open=function(t,o){let r=[],n=()=>{Fi.forEach(a=>{(a.hijackFilter.value===null||a.hijackFilter.value(o)===!0)&&(a.start(),r.push(a.stop))})},i=()=>{r.forEach(a=>{a()})};this.addEventListener("loadstart",n,{once:!0}),this.addEventListener("loadend",i,{once:!0}),os.apply(this,arguments)})}function Rv(e){Fi=Fi.filter(t=>t.start!==e),Xr=Math.max(0,Xr-1),Xr===0&&(Rl.prototype.open=os)}var Di=A({name:"QAjaxBar",props:{position:{type:String,default:"top",validator:e=>kv.includes(e)},size:{type:String,default:"2px"},color:String,skipHijack:Boolean,reverse:Boolean,hijackFilter:Function},emits:["start","stop"],setup(e,{emit:t}){let{proxy:o}=K(),r=q(0),n=q(!1),i=q(!0),a=0,u=null,c,f=s(()=>`q-loading-bar q-loading-bar--${e.position}`+(e.color!==void 0?` bg-${e.color}`:"")+(i.value===!0?"":" no-transition")),d=s(()=>e.position==="top"||e.position==="bottom"),h=s(()=>d.value===!0?"height":"width"),g=s(()=>{let b=n.value,p=qv({p:r.value,pos:e.position,active:b,horiz:d.value,reverse:o.$q.lang.rtl===!0&&["top","bottom"].includes(e.position)?e.reverse===!1:e.reverse,dir:o.$q.lang.rtl===!0?-1:1});return p[h.value]=e.size,p.opacity=b?1:0,p}),m=s(()=>n.value===!0?{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":r.value}:{"aria-hidden":"true"});function v(b=300){let p=c;return c=Math.max(0,b)||0,a++,a>1?(p===0&&b>0?k():u!==null&&p>0&&b<=0&&(clearTimeout(u),u=null),a):(u!==null&&clearTimeout(u),t("start"),r.value=0,u=setTimeout(()=>{u=null,i.value=!0,b>0&&k()},n._value===!0?500:1),n._value!==!0&&(n.value=!0,i.value=!1),a)}function x(b){return a>0&&(r.value=Tv(r.value,b)),a}function y(){if(a=Math.max(0,a-1),a>0)return a;u!==null&&(clearTimeout(u),u=null),t("stop");let b=()=>{i.value=!0,r.value=100,u=setTimeout(()=>{u=null,n.value=!1},1e3)};return r.value===0?u=setTimeout(b,1):b(),a}function k(){r.value<100&&(u=setTimeout(()=>{u=null,x(),k()},c))}let S;return je(()=>{e.skipHijack!==!0&&(S=!0,Mv({start:v,stop:y,hijackFilter:s(()=>e.hijackFilter||null)}))}),ye(()=>{u!==null&&clearTimeout(u),S===!0&&Rv(v)}),Object.assign(o,{start:v,stop:y,increment:x}),()=>l("div",{class:f.value,style:g.value,...m.value})}});var Vi={xs:18,sm:24,md:32,lg:38,xl:46},Ft={size:String};function Dt(e,t=Vi){return s(()=>e.size!==void 0?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}function re(e,t){return e!==void 0&&e()||t}function Po(e,t){if(e!==void 0){let o=e();if(o!=null)return o.slice()}return t}function Xe(e,t){return e!==void 0?t.concat(e()):t}function Kn(e,t){return e===void 0?t:t!==void 0?t.concat(e()):e()}function Mt(e,t,o,r,n,i){t.key=r+n;let a=l(e,t,o);return n===!0?Et(a,i()):a}var ns="0 0 24 24",rs=e=>e,Pl=e=>`ionicons ${e}`,as={"mdi-":e=>`mdi ${e}`,"icon-":rs,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":Pl,"ion-ios":Pl,"ion-logo":Pl,"iconfont ":rs,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`},ls={o_:"-outlined",r_:"-round",s_:"-sharp"},us={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},Pv=new RegExp("^("+Object.keys(as).join("|")+")"),Av=new RegExp("^("+Object.keys(ls).join("|")+")"),is=new RegExp("^("+Object.keys(us).join("|")+")"),$v=/^[Mm]\s?[-+]?\.?\d/,Ev=/^img:/,Bv=/^svguse:/,Lv=/^ion-/,Fv=/^(fa-(classic|sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /,Re=A({name:"QIcon",props:{...Ft,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=Dt(e),n=s(()=>"q-icon"+(e.left===!0?" on-left":"")+(e.right===!0?" on-right":"")+(e.color!==void 0?` text-${e.color}`:"")),i=s(()=>{let a,u=e.name;if(u==="none"||!u)return{none:!0};if(o.iconMapFn!==null){let d=o.iconMapFn(u);if(d!==void 0)if(d.icon!==void 0){if(u=d.icon,u==="none"||!u)return{none:!0}}else return{cls:d.cls,content:d.content!==void 0?d.content:" "}}if($v.test(u)===!0){let[d,h=ns]=u.split("|");return{svg:!0,viewBox:h,nodes:d.split("&&").map(g=>{let[m,v,x]=g.split("@@");return l("path",{style:v,d:m,transform:x})})}}if(Ev.test(u)===!0)return{img:!0,src:u.substring(4)};if(Bv.test(u)===!0){let[d,h=ns]=u.split("|");return{svguse:!0,src:d.substring(7),viewBox:h}}let c=" ",f=u.match(Pv);if(f!==null)a=as[f[1]](u);else if(Fv.test(u)===!0)a=u;else if(Lv.test(u)===!0)a=`ionicons ion-${o.platform.is.ios===!0?"ios":"md"}${u.substring(3)}`;else if(is.test(u)===!0){a="notranslate material-symbols";let d=u.match(is);d!==null&&(u=u.substring(6),a+=us[d[1]]),c=u}else{a="notranslate material-icons";let d=u.match(Av);d!==null&&(u=u.substring(2),a+=ls[d[1]]),c=u}return{cls:a,content:c}});return()=>{let a={class:n.value,style:r.value,"aria-hidden":"true",role:"presentation"};return i.value.none===!0?l(e.tag,a,re(t.default)):i.value.img===!0?l(e.tag,a,Xe(t.default,[l("img",{src:i.value.src})])):i.value.svg===!0?l(e.tag,a,Xe(t.default,[l("svg",{viewBox:i.value.viewBox||"0 0 24 24"},i.value.nodes)])):i.value.svguse===!0?l(e.tag,a,Xe(t.default,[l("svg",{viewBox:i.value.viewBox},[l("use",{"xlink:href":i.value.src})])])):(i.value.cls!==void 0&&(a.class+=" "+i.value.cls),l(e.tag,a,Xe(t.default,[i.value.content])))}}});var zi=A({name:"QAvatar",props:{...Ft,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){let o=Dt(e),r=s(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(e.square===!0?" q-avatar--square":e.rounded===!0?" rounded-borders":"")),n=s(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{let i=e.icon!==void 0?[l(Re,{name:e.icon})]:void 0;return l("div",{class:r.value,style:o.value},[l("div",{class:"q-avatar__content row flex-center overflow-hidden",style:n.value},Kn(t.default,i))])}}});var Dv=["top","middle","bottom"],ss=A({name:"QBadge",props:{color:String,textColor:String,floating:Boolean,transparent:Boolean,multiLine:Boolean,outline:Boolean,rounded:Boolean,label:[Number,String],align:{type:String,validator:e=>Dv.includes(e)}},setup(e,{slots:t}){let o=s(()=>e.align!==void 0?{verticalAlign:e.align}:null),r=s(()=>{let n=e.outline===!0&&e.color||e.textColor;return`q-badge flex inline items-center no-wrap q-badge--${e.multiLine===!0?"multi":"single"}-line`+(e.outline===!0?" q-badge--outline":e.color!==void 0?` bg-${e.color}`:"")+(n!==void 0?` text-${n}`:"")+(e.floating===!0?" q-badge--floating":"")+(e.rounded===!0?" q-badge--rounded":"")+(e.transparent===!0?" q-badge--transparent":"")});return()=>l("div",{class:r.value,style:o.value,role:"status","aria-label":e.label},Xe(t.default,e.label!==void 0?[e.label]:[]))}});var Se={dark:{type:Boolean,default:null}};function xe(e,t){return s(()=>e.dark===null?t.dark.isActive:e.dark)}var cs=A({name:"QBanner",props:{...Se,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=xe(e,o),n=s(()=>"q-banner row items-center"+(e.dense===!0?" q-banner--dense":"")+(r.value===!0?" q-banner--dark q-dark":"")+(e.rounded===!0?" rounded-borders":"")),i=s(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?"auto":"all"}`);return()=>{let a=[l("div",{class:"q-banner__avatar col-auto row items-center self-start"},re(t.avatar)),l("div",{class:"q-banner__content col text-body2"},re(t.default))],u=re(t.action);return u!==void 0&&a.push(l("div",{class:i.value},u)),l("div",{class:n.value+(e.inlineActions===!1&&u!==void 0?" q-banner--top-padding":""),role:"alert"},a)}}});var ds=A({name:"QBar",props:{...Se,dense:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=xe(e,o),n=s(()=>`q-bar row no-wrap items-center q-bar--${e.dense===!0?"dense":"standard"} q-bar--${r.value===!0?"dark":"light"}`);return()=>l("div",{class:n.value,role:"toolbar"},re(t.default))}});var fs={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},Vv=Object.keys(fs),Wn={align:{type:String,validator:e=>Vv.includes(e)}};function Yn(e){return s(()=>{let t=e.align===void 0?e.vertical===!0?"stretch":"left":e.align;return`${e.vertical===!0?"items":"justify"}-${fs[t]}`})}function Gr(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function ms(e,t){typeof t.type=="symbol"?Array.isArray(t.children)===!0&&t.children.forEach(o=>{ms(e,o)}):e.add(t)}function Xn(e){let t=new Set;return e.forEach(o=>{ms(t,o)}),Array.from(t)}function Gn(e){return e.appContext.config.globalProperties.$router!==void 0}function Yt(e){return e.isUnmounted===!0||e.isDeactivated===!0}var zv=["",!0],vs=A({name:"QBreadcrumbs",props:{...Wn,separator:{type:String,default:"/"},separatorColor:String,activeColor:{type:String,default:"primary"},gutter:{type:String,validator:e=>["none","xs","sm","md","lg","xl"].includes(e),default:"sm"}},setup(e,{slots:t}){let o=Yn(e),r=s(()=>`flex items-center ${o.value}${e.gutter==="none"?"":` q-gutter-${e.gutter}`}`),n=s(()=>e.separatorColor?` text-${e.separatorColor}`:""),i=s(()=>` text-${e.activeColor}`);return()=>{if(t.default===void 0)return;let a=Xn(re(t.default));if(a.length===0)return;let u=1,c=[],f=a.filter(h=>h.type!==void 0&&h.type.name==="QBreadcrumbsEl").length,d=t.separator!==void 0?t.separator:()=>e.separator;return a.forEach(h=>{if(h.type!==void 0&&h.type.name==="QBreadcrumbsEl"){let g=ui!==n[a]))return!1}return!0}function ps(e,t){return Array.isArray(t)===!0?e.length===t.length&&e.every((o,r)=>o===t[r]):e.length===1&&e[0]===t}function Iv(e,t){return Array.isArray(e)===!0?ps(e,t):Array.isArray(t)===!0?ps(t,e):e===t}function Hv(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let o in e)if(Iv(e[o],t[o])===!1)return!1;return!0}var Al={to:[String,Object],replace:Boolean,href:String,target:String,disable:Boolean},Zo={...Al,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"}};function rn({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){let o=K(),{props:r,proxy:n,emit:i}=o,a=Gn(o),u=s(()=>r.disable!==!0&&r.href!==void 0),c=t===!0?s(()=>a===!0&&r.disable!==!0&&u.value!==!0&&r.to!==void 0&&r.to!==null&&r.to!==""):s(()=>a===!0&&u.value!==!0&&r.to!==void 0&&r.to!==null&&r.to!==""),f=s(()=>c.value===!0?S(r.to):null),d=s(()=>f.value!==null),h=s(()=>u.value===!0||d.value===!0),g=s(()=>r.type==="a"||h.value===!0?"a":r.tag||e||"div"),m=s(()=>u.value===!0?{href:r.href,target:r.target}:d.value===!0?{href:f.value.href,target:r.target}:{}),v=s(()=>{if(d.value===!1)return-1;let{matched:C}=f.value,{length:$}=C,L=C[$-1];if(L===void 0)return-1;let D=n.$route.matched;if(D.length===0)return-1;let B=D.findIndex(hs.bind(null,L));if(B!==-1)return B;let E=gs(C[$-2]);return $>1&&gs(L)===E&&D[D.length-1].path!==E?D.findIndex(hs.bind(null,C[$-2])):B}),x=s(()=>d.value===!0&&v.value!==-1&&Ov(n.$route.params,f.value.params)),y=s(()=>x.value===!0&&v.value===n.$route.matched.length-1&&Hv(n.$route.params,f.value.params)),k=s(()=>d.value===!0?y.value===!0?` ${r.exactActiveClass} ${r.activeClass}`:r.exact===!0?"":x.value===!0?` ${r.activeClass}`:"":"");function S(C){try{return n.$router.resolve(C)}catch{}return null}function b(C,{returnRouterError:$,to:L=r.to,replace:D=r.replace}={}){if(r.disable===!0)return C.preventDefault(),Promise.resolve(!1);if(C.metaKey||C.altKey||C.ctrlKey||C.shiftKey||C.button!==void 0&&C.button!==0||r.target==="_blank")return Promise.resolve(!1);C.preventDefault();let B=n.$router[D===!0?"replace":"push"](L);return $===!0?B:B.then(()=>{}).catch(()=>{})}function p(C){if(d.value===!0){let $=L=>b(C,L);i("click",C,$),C.defaultPrevented!==!0&&$()}else i("click",C)}return{hasRouterLink:d,hasHrefLink:u,hasLink:h,linkTag:g,resolvedLink:f,linkIsActive:x,linkIsExactActive:y,linkClass:k,linkAttrs:m,getLink:S,navigateToRouterLink:b,navigateOnClick:p}}var bs=A({name:"QBreadcrumbsEl",props:{...Zo,label:String,icon:String,tag:{type:String,default:"span"}},emits:["click"],setup(e,{slots:t}){let{linkTag:o,linkAttrs:r,linkClass:n,navigateOnClick:i}=rn(),a=s(()=>({class:"q-breadcrumbs__el q-link flex inline items-center relative-position "+(e.disable!==!0?"q-link--focusable"+n.value:"q-breadcrumbs__el--disable"),...r.value,onClick:i})),u=s(()=>"q-breadcrumbs__el-icon"+(e.label!==void 0?" q-breadcrumbs__el-icon--with-label":""));return()=>{let c=[];return e.icon!==void 0&&c.push(l(Re,{class:u.value,name:e.icon})),e.label!==void 0&&c.push(e.label),l(o.value,{...a.value},Xe(t.default,c))}}});var We={size:{type:[String,Number],default:"1em"},color:String};function Ue(e){return{cSize:s(()=>e.size in Vi?`${Vi[e.size]}px`:e.size),classes:s(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var wt=A({name:"QSpinner",props:{...We,thickness:{type:Number,default:5}},setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[l("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function _n(e){if(e===window)return{top:0,left:0};let{top:t,left:o}=e.getBoundingClientRect();return{top:t,left:o}}function Qv(e,t){return window.getComputedStyle(e).getPropertyValue(t)}function Ao(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function Nv(e){return e===window?window.innerWidth:e.getBoundingClientRect().width}function Cn(e,t){let o=e.style;for(let r in t)o[r]=t[r]}function jv(e,t){e.forEach(o=>Cn(o,t))}function Uv(e){if(typeof e=="function"){if(document.readyState!=="loading")return e();document.addEventListener("DOMContentLoaded",e,!1)}}function ys(e){if(e==null)return;if(typeof e=="string")try{return document.querySelector(e)||void 0}catch{return}let t=Au(e);if(t)return t.$el||t}function Oi(e,t){if(e==null||e.contains(t)===!0)return!0;for(let o=e.nextElementSibling;o!==null;o=o.nextElementSibling)if(o.contains(t))return!0;return!1}var Ss={offset:_n,style:Qv,height:Ao,width:Nv,css:Cn,cssBatch:jv,ready:Uv};function Zn(e,t=250){let o=!1,r;return function(){return o===!1&&(o=!0,setTimeout(()=>{o=!1},t),r=e.apply(this,arguments)),r}}function xs(e,t,o,r){o.modifiers.stop===!0&&at(e);let n=o.modifiers.color,i=o.modifiers.center;i=i===!0||r===!0;let a=document.createElement("span"),u=document.createElement("span"),c=_t(e),{left:f,top:d,width:h,height:g}=t.getBoundingClientRect(),m=Math.sqrt(h*h+g*g),v=m/2,x=`${(h-m)/2}px`,y=i?x:`${c.left-f-v}px`,k=`${(g-m)/2}px`,S=i?k:`${c.top-d-v}px`;u.className="q-ripple__inner",Cn(u,{height:`${m}px`,width:`${m}px`,transform:`translate3d(${y},${S},0) scale3d(.2,.2,1)`,opacity:0}),a.className=`q-ripple${n?" text-"+n:""}`,a.setAttribute("dir","ltr"),a.appendChild(u),t.appendChild(a);let b=()=>{a.remove(),clearTimeout(p)};o.abort.push(b);let p=setTimeout(()=>{u.classList.add("q-ripple__inner--enter"),u.style.transform=`translate3d(${x},${k},0) scale3d(1,1,1)`,u.style.opacity=.2,p=setTimeout(()=>{u.classList.remove("q-ripple__inner--enter"),u.classList.add("q-ripple__inner--leave"),u.style.opacity=0,p=setTimeout(()=>{a.remove(),o.abort.splice(o.abort.indexOf(b),1)},275)},250)},50)}function _s(e,{modifiers:t,value:o,arg:r}){let n=Object.assign({},e.cfg.ripple,t,o);e.modifiers={early:n.early===!0,stop:n.stop===!0,center:n.center===!0,color:n.color||r,keyCodes:[].concat(n.keyCodes||13)}}var $o=At({name:"ripple",beforeMount(e,t){let o=t.instance.$.appContext.config.globalProperties.$q.config||{};if(o.ripple===!1)return;let r={cfg:o,enabled:t.value!==!1,modifiers:{},abort:[],start(n){r.enabled===!0&&n.qSkipRipple!==!0&&n.type===(r.modifiers.early===!0?"pointerdown":"click")&&xs(n,e,r,n.qKeyEvent===!0)},keystart:Zn(n=>{r.enabled===!0&&n.qSkipRipple!==!0&&Tt(n,r.modifiers.keyCodes)===!0&&n.type===`key${r.modifiers.early===!0?"down":"up"}`&&xs(n,e,r,!0)},300)};_s(r,t),e.__qripple=r,mt(r,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){let o=e.__qripple;o!==void 0&&(o.enabled=t.value!==!1,o.enabled===!0&&Object(t.value)===t.value&&_s(o,t))}},beforeUnmount(e){let t=e.__qripple;t!==void 0&&(t.abort.forEach(o=>{o()}),qt(t,"main"),delete e._qripple)}});var Zr={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Kv={xs:8,sm:10,md:14,lg:20,xl:24},Wv=["button","submit","reset"],Yv=/[^\s]\/[^\s]/,$l=["flat","outline","push","unelevated"];function Ii(e,t){return e.flat===!0?"flat":e.outline===!0?"outline":e.push===!0?"push":e.unelevated===!0?"unelevated":t}function Hi(e){let t=Ii(e);return t!==void 0?{[t]:!0}:{}}var Qi={...Ft,...Al,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...$l.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Wn.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean},Cs={...Qi,round:Boolean};function ws(e){let t=Dt(e,Kv),o=Yn(e),{hasRouterLink:r,hasLink:n,linkTag:i,linkAttrs:a,navigateOnClick:u}=rn({fallbackTag:"button"}),c=s(()=>{let y=e.fab===!1&&e.fabMini===!1?t.value:{};return e.padding!==void 0?Object.assign({},y,{padding:e.padding.split(/\s+/).map(k=>k in Zr?Zr[k]+"px":k).join(" "),minWidth:"0",minHeight:"0"}):y}),f=s(()=>e.rounded===!0||e.fab===!0||e.fabMini===!0),d=s(()=>e.disable!==!0&&e.loading!==!0),h=s(()=>d.value===!0?e.tabindex||0:-1),g=s(()=>Ii(e,"standard")),m=s(()=>{let y={tabindex:h.value};return n.value===!0?Object.assign(y,a.value):Wv.includes(e.type)===!0&&(y.type=e.type),i.value==="a"?(e.disable===!0?y["aria-disabled"]="true":y.href===void 0&&(y.role="button"),r.value!==!0&&Yv.test(e.type)===!0&&(y.type=e.type)):e.disable===!0&&(y.disabled="",y["aria-disabled"]="true"),e.loading===!0&&e.percentage!==void 0&&Object.assign(y,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),y}),v=s(()=>{let y;e.color!==void 0?e.flat===!0||e.outline===!0?y=`text-${e.textColor||e.color}`:y=`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(y=`text-${e.textColor}`);let k=e.round===!0?"round":`rectangle${f.value===!0?" q-btn--rounded":e.square===!0?" q-btn--square":""}`;return`q-btn--${g.value} q-btn--${k}`+(y!==void 0?" "+y:"")+(d.value===!0?" q-btn--actionable q-focusable q-hoverable":e.disable===!0?" disabled":"")+(e.fab===!0?" q-btn--fab":e.fabMini===!0?" q-btn--fab-mini":"")+(e.noCaps===!0?" q-btn--no-uppercase":"")+(e.dense===!0?" q-btn--dense":"")+(e.stretch===!0?" no-border-radius self-stretch":"")+(e.glossy===!0?" glossy":"")+(e.square?" q-btn--square":"")}),x=s(()=>o.value+(e.stack===!0?" column":" row")+(e.noWrap===!0?" no-wrap text-no-wrap":"")+(e.loading===!0?" q-btn__content--hidden":""));return{classes:v,style:c,innerClasses:x,attributes:m,hasLink:n,linkTag:i,navigateOnClick:u,isActionable:d}}var{passiveCapture:mo}=Ze,Jn=null,er=null,tr=null,ze=A({name:"QBtn",props:{...Cs,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{classes:n,style:i,innerClasses:a,attributes:u,hasLink:c,linkTag:f,navigateOnClick:d,isActionable:h}=ws(e),g=q(null),m=q(null),v=null,x,y=null,k=s(()=>e.label!==void 0&&e.label!==null&&e.label!==""),S=s(()=>e.disable===!0||e.ripple===!1?!1:{keyCodes:c.value===!0?[13,32]:[13],...e.ripple===!0?{}:e.ripple}),b=s(()=>({center:e.round})),p=s(()=>{let _=Math.max(0,Math.min(100,e.percentage));return _>0?{transition:"transform 0.6s",transform:`translateX(${_-100}%)`}:{}}),C=s(()=>{if(e.loading===!0)return{onMousedown:T,onTouchstart:T,onClick:T,onKeydown:T,onKeyup:T};if(h.value===!0){let _={onClick:L,onKeydown:D,onMousedown:E};if(r.$q.platform.has.touch===!0){let F=e.onTouchstart!==void 0?"":"Passive";_[`onTouchstart${F}`]=B}return _}return{onClick:ke}}),$=s(()=>({ref:g,class:"q-btn q-btn-item non-selectable no-outline "+n.value,style:i.value,...u.value,...C.value}));function L(_){if(g.value!==null){if(_!==void 0){if(_.defaultPrevented===!0)return;let F=document.activeElement;if(e.type==="submit"&&F!==document.body&&g.value.contains(F)===!1&&F.contains(g.value)===!1){g.value.focus();let I=()=>{document.removeEventListener("keydown",ke,!0),document.removeEventListener("keyup",I,mo),g.value!==null&&g.value.removeEventListener("blur",I,mo)};document.addEventListener("keydown",ke,!0),document.addEventListener("keyup",I,mo),g.value.addEventListener("blur",I,mo)}}d(_)}}function D(_){g.value!==null&&(o("keydown",_),Tt(_,[13,32])===!0&&er!==g.value&&(er!==null&&M(),_.defaultPrevented!==!0&&(g.value.focus(),er=g.value,g.value.classList.add("q-btn--active"),document.addEventListener("keyup",V,!0),g.value.addEventListener("blur",V,mo)),ke(_)))}function B(_){g.value!==null&&(o("touchstart",_),_.defaultPrevented!==!0&&(Jn!==g.value&&(Jn!==null&&M(),Jn=g.value,v=_.target,v.addEventListener("touchcancel",V,mo),v.addEventListener("touchend",V,mo)),x=!0,y!==null&&clearTimeout(y),y=setTimeout(()=>{y=null,x=!1},200)))}function E(_){g.value!==null&&(_.qSkipRipple=x===!0,o("mousedown",_),_.defaultPrevented!==!0&&tr!==g.value&&(tr!==null&&M(),tr=g.value,g.value.classList.add("q-btn--active"),document.addEventListener("mouseup",V,mo)))}function V(_){if(g.value!==null&&!(_!==void 0&&_.type==="blur"&&document.activeElement===g.value)){if(_!==void 0&&_.type==="keyup"){if(er===g.value&&Tt(_,[13,32])===!0){let F=new MouseEvent("click",_);F.qKeyEvent=!0,_.defaultPrevented===!0&&vt(F),_.cancelBubble===!0&&at(F),g.value.dispatchEvent(F),ke(_),_.qKeyEvent=!0}o("keyup",_)}M()}}function M(_){let F=m.value;_!==!0&&(Jn===g.value||tr===g.value)&&F!==null&&F!==document.activeElement&&(F.setAttribute("tabindex",-1),F.focus()),Jn===g.value&&(v!==null&&(v.removeEventListener("touchcancel",V,mo),v.removeEventListener("touchend",V,mo)),Jn=v=null),tr===g.value&&(document.removeEventListener("mouseup",V,mo),tr=null),er===g.value&&(document.removeEventListener("keyup",V,!0),g.value!==null&&g.value.removeEventListener("blur",V,mo),er=null),g.value!==null&&g.value.classList.remove("q-btn--active")}function T(_){ke(_),_.qSkipRipple=!0}return ye(()=>{M(!0)}),Object.assign(r,{click:_=>{h.value===!0&&L(_)}}),()=>{let _=[];e.icon!==void 0&&_.push(l(Re,{name:e.icon,left:e.stack!==!0&&k.value===!0,role:"img"})),k.value===!0&&_.push(l("span",{class:"block"},[e.label])),_=Xe(t.default,_),e.iconRight!==void 0&&e.round===!1&&_.push(l(Re,{name:e.iconRight,right:e.stack!==!0&&k.value===!0,role:"img"}));let F=[l("span",{class:"q-focus-helper",ref:m})];return e.loading===!0&&e.percentage!==void 0&&F.push(l("span",{class:"q-btn__progress absolute-full overflow-hidden"+(e.darkPercentage===!0?" q-btn__progress--dark":"")},[l("span",{class:"q-btn__progress-indicator fit block",style:p.value})])),F.push(l("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+a.value},_)),e.loading!==null&&F.push(l(st,{name:"q-transition--fade"},()=>e.loading===!0?[l("span",{key:"loading",class:"absolute-full flex flex-center"},t.loading!==void 0?t.loading():[l(wt)])]:null)),Et(l(f.value,$.value,F),[[$o,S.value,void 0,b.value]])}}});var or=A({name:"QBtnGroup",props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){let o=s(()=>{let r=["unelevated","outline","flat","rounded","square","push","stretch","glossy"].filter(n=>e[n]===!0).map(n=>`q-btn-group--${n}`).join(" ");return`q-btn-group row no-wrap${r.length!==0?" "+r:""}`+(e.spread===!0?" q-btn-group--spread":" inline")});return()=>l("div",{class:o.value},re(t.default))}});function It(){if(window.getSelection!==void 0){let e=window.getSelection();e.empty!==void 0?e.empty():e.removeAllRanges!==void 0&&(e.removeAllRanges(),Ro.is.mobile!==!0&&e.addRange(document.createRange()))}else document.selection!==void 0&&document.selection.empty()}var El={target:{type:[Boolean,String,Element],default:!0},noParentEvent:Boolean},Ni={...El,contextMenu:Boolean};function nr({showing:e,avoidEmit:t,configureAnchorEl:o}){let{props:r,proxy:n,emit:i}=K(),a=q(null),u=null;function c(m){return a.value===null?!1:m===void 0||m.touches===void 0||m.touches.length<=1}let f={};o===void 0&&(Object.assign(f,{hide(m){n.hide(m)},toggle(m){n.toggle(m),m.qAnchorHandled=!0},toggleKey(m){Tt(m,13)===!0&&f.toggle(m)},contextClick(m){n.hide(m),vt(m),Ee(()=>{n.show(m),m.qAnchorHandled=!0})},prevent:vt,mobileTouch(m){if(f.mobileCleanup(m),c(m)!==!0)return;n.hide(m),a.value.classList.add("non-selectable");let v=m.target;mt(f,"anchor",[[v,"touchmove","mobileCleanup","passive"],[v,"touchend","mobileCleanup","passive"],[v,"touchcancel","mobileCleanup","passive"],[a.value,"contextmenu","prevent","notPassive"]]),u=setTimeout(()=>{u=null,n.show(m),m.qAnchorHandled=!0},300)},mobileCleanup(m){a.value.classList.remove("non-selectable"),u!==null&&(clearTimeout(u),u=null),e.value===!0&&m!==void 0&&It()}}),o=function(m=r.contextMenu){if(r.noParentEvent===!0||a.value===null)return;let v;m===!0?n.$q.platform.is.mobile===!0?v=[[a.value,"touchstart","mobileTouch","passive"]]:v=[[a.value,"mousedown","hide","passive"],[a.value,"contextmenu","contextClick","notPassive"]]:v=[[a.value,"click","toggle","passive"],[a.value,"keyup","toggleKey","passive"]],mt(f,"anchor",v)});function d(){qt(f,"anchor")}function h(m){for(a.value=m;a.value.classList.contains("q-anchor--skip");)a.value=a.value.parentNode;o()}function g(){if(r.target===!1||r.target===""||n.$el.parentNode===null)a.value=null;else if(r.target===!0)h(n.$el.parentNode);else{let m=r.target;if(typeof r.target=="string")try{m=document.querySelector(r.target)}catch{m=void 0}m!=null?(a.value=m.$el||m,o()):(a.value=null,console.error(`Anchor: target "${r.target}" not found`))}}return Y(()=>r.contextMenu,m=>{a.value!==null&&(d(),o(m))}),Y(()=>r.target,()=>{a.value!==null&&d(),g()}),Y(()=>r.noParentEvent,m=>{a.value!==null&&(m===!0?d():o())}),je(()=>{g(),t!==!0&&r.modelValue===!0&&a.value===null&&i("update:modelValue",!1)}),ye(()=>{u!==null&&clearTimeout(u),d()}),{anchorEl:a,canShow:c,anchorEvents:f}}function ji(e,t){let o=q(null),r;function n(u,c){let f=`${c!==void 0?"add":"remove"}EventListener`,d=c!==void 0?c:r;u!==window&&u[f]("scroll",d,Ze.passive),window[f]("scroll",d,Ze.passive),r=c}function i(){o.value!==null&&(n(o.value),o.value=null)}let a=Y(()=>e.noParentEvent,()=>{o.value!==null&&(i(),t())});return ye(a),{localScrollTarget:o,unconfigureScrollTarget:i,changeScrollEvent:n}}var vo={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},go=["beforeShow","show","beforeHide","hide"];function ho({showing:e,canShow:t,hideOnRouteChange:o,handleShow:r,handleHide:n,processOnMount:i}){let a=K(),{props:u,emit:c,proxy:f}=a,d;function h(S){e.value===!0?v(S):g(S)}function g(S){if(u.disable===!0||S!==void 0&&S.qAnchorHandled===!0||t!==void 0&&t(S)!==!0)return;let b=u["onUpdate:modelValue"]!==void 0;b===!0&&(c("update:modelValue",!0),d=S,Ee(()=>{d===S&&(d=void 0)})),(u.modelValue===null||b===!1)&&m(S)}function m(S){e.value!==!0&&(e.value=!0,c("beforeShow",S),r!==void 0?r(S):c("show",S))}function v(S){if(u.disable===!0)return;let b=u["onUpdate:modelValue"]!==void 0;b===!0&&(c("update:modelValue",!1),d=S,Ee(()=>{d===S&&(d=void 0)})),(u.modelValue===null||b===!1)&&x(S)}function x(S){e.value!==!1&&(e.value=!1,c("beforeHide",S),n!==void 0?n(S):c("hide",S))}function y(S){u.disable===!0&&S===!0?u["onUpdate:modelValue"]!==void 0&&c("update:modelValue",!1):S===!0!==e.value&&(S===!0?m:x)(d)}Y(()=>u.modelValue,y),o!==void 0&&Gn(a)===!0&&Y(()=>f.$route.fullPath,()=>{o.value===!0&&e.value===!0&&v()}),i===!0&&je(()=>{y(u.modelValue)});let k={show:g,hide:v,toggle:h};return Object.assign(f,k),k}var wn=[],Jr=[];function ks(e){Jr=Jr.filter(t=>t!==e)}function qs(e){ks(e),Jr.push(e)}function Bl(e){ks(e),Jr.length===0&&wn.length!==0&&(wn[wn.length-1](),wn=[])}function po(e){Jr.length===0?e():wn.push(e)}function Ts(e){wn=wn.filter(t=>t!==e)}var rr=[],ei=[],Xv=1,an=document.body;function Eo(e,t){let o=document.createElement("div");if(o.id=t!==void 0?`q-portal--${t}--${Xv++}`:e,jn.globalNodes!==void 0){let r=jn.globalNodes.class;r!==void 0&&(o.className=r)}return an.appendChild(o),rr.push(o),ei.push(t),o}function ir(e){let t=rr.indexOf(e);rr.splice(t,1),ei.splice(t,1),e.remove()}function Ms(e){if(e===an)return;if(an=e,an===document.body||ei.reduce((o,r)=>r==="dialog"?o+1:o,0)<2){rr.forEach(o=>{o.contains(an)===!1&&an.appendChild(o)});return}let t=ei.lastIndexOf("dialog");for(let o=0;ot.contentEl!==null&&t.contentEl.contains(e))}function Ll(e,t){do{if(e.$options.name==="QMenu"){if(e.hide(t),e.$props.separateClosePopup===!0)return Gr(e)}else if(e.__qPortal===!0){let o=Gr(e);return o!==void 0&&o.$options.name==="QPopupProxy"?(e.hide(t),o):e}e=Gr(e)}while(e!=null)}function Ps(e,t,o){for(;o!==0&&e!==void 0&&e!==null;){if(e.__qPortal===!0){if(o--,e.$options.name==="QMenu"){e=Ll(e,t);continue}e.hide(t)}e=Gr(e)}}var Gv=A({name:"QPortal",setup(e,{slots:t}){return()=>t.default()}});function Zv(e){for(e=e.parent;e!=null;){if(e.type.name==="QGlobalDialog")return!0;if(e.type.name==="QDialog"||e.type.name==="QMenu")return!1;e=e.parent}return!1}function ar(e,t,o,r){let n=q(!1),i=q(!1),a=null,u={},c=r==="dialog"&&Zv(e);function f(h){if(h===!0){Bl(u),i.value=!0;return}i.value=!1,n.value===!1&&(c===!1&&a===null&&(a=Eo(!1,r)),n.value=!0,ln.push(e.proxy),qs(u))}function d(h){if(i.value=!1,h!==!0)return;Bl(u),n.value=!1;let g=ln.indexOf(e.proxy);g!==-1&&ln.splice(g,1),a!==null&&(ir(a),a=null)}return Qn(()=>{d(!0)}),e.proxy.__qPortal=!0,ft(e.proxy,"contentEl",()=>t.value),{showPortal:f,hidePortal:d,portalIsActive:n,portalIsAccessible:i,renderPortal:()=>c===!0?o():n.value===!0?[l(Lu,{to:a},l(Gv,o))]:void 0}}var bo={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function un(e,t=()=>{},o=()=>{}){return{transitionProps:s(()=>{let r=`q-transition--${e.transitionShow||t()}`,n=`q-transition--${e.transitionHide||o()}`;return{appear:!0,enterFromClass:`${r}-enter-from`,enterActiveClass:`${r}-enter-active`,enterToClass:`${r}-enter-to`,leaveFromClass:`${n}-leave-from`,leaveActiveClass:`${n}-leave-active`,leaveToClass:`${n}-leave-to`}}),transitionStyle:s(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}function yo(){let e,t=K();function o(){e=void 0}return Pt(o),ye(o),{removeTick:o,registerTick(r){e=r,Ee(()=>{e===r&&(Yt(t)===!1&&e(),e=void 0)})}}}function Vt(){let e=null,t=K();function o(){e!==null&&(clearTimeout(e),e=null)}return Pt(o),ye(o),{removeTimeout:o,registerTimeout(r,n){o(e),Yt(t)===!1&&(e=setTimeout(()=>{e=null,r()},n))}}}var eo=[Element,String],Jv=[null,document,document.body,document.scrollingElement,document.documentElement];function Bt(e,t){let o=ys(t);if(o===void 0){if(e==null)return window;o=e.closest(".scroll,.scroll-y,.overflow-auto")}return Jv.includes(o)?window:o}function lr(e){return(e===window?document.body:e).scrollHeight}function eg(e){return(e===window?document.body:e).scrollWidth}function to(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function sn(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function Vl(e,t,o=0){let r=arguments[3]===void 0?performance.now():arguments[3],n=to(e);if(o<=0){n!==t&&Fl(e,t);return}requestAnimationFrame(i=>{let a=i-r,u=n+(t-n)/Math.max(a,o)*a;Fl(e,u),u!==t&&Vl(e,t,o-a,i)})}function zl(e,t,o=0){let r=arguments[3]===void 0?performance.now():arguments[3],n=sn(e);if(o<=0){n!==t&&Dl(e,t);return}requestAnimationFrame(i=>{let a=i-r,u=n+(t-n)/Math.max(a,o)*a;Dl(e,u),u!==t&&zl(e,t,o-a,i)})}function Fl(e,t){if(e===window){window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t);return}e.scrollTop=t}function Dl(e,t){if(e===window){window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0);return}e.scrollLeft=t}function Bo(e,t,o){if(o){Vl(e,t,o);return}Fl(e,t)}function ti(e,t,o){if(o){zl(e,t,o);return}Dl(e,t)}var Ui;function kn(){if(Ui!==void 0)return Ui;let e=document.createElement("p"),t=document.createElement("div");Cn(e,{width:"100%",height:"200px"}),Cn(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);let o=e.offsetWidth;t.style.overflow="scroll";let r=e.offsetWidth;return o===r&&(r=t.clientWidth),t.remove(),Ui=o-r,Ui}function Ol(e,t=!0){return!e||e.nodeType!==Node.ELEMENT_NODE?!1:t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"]))}var As={getScrollTarget:Bt,getScrollHeight:lr,getScrollWidth:eg,getVerticalScrollPosition:to,getHorizontalScrollPosition:sn,animVerticalScrollTo:Vl,animHorizontalScrollTo:zl,setVerticalScrollPosition:Bo,setHorizontalScrollPosition:ti,getScrollbarWidth:kn,hasScrollbar:Ol};var qn=[],ur;function tg(e){ur=e.keyCode===27}function og(){ur===!0&&(ur=!1)}function ng(e){ur===!0&&(ur=!1,Tt(e,27)===!0&&qn[qn.length-1](e))}function $s(e){window[e]("keydown",tg),window[e]("blur",og),window[e]("keyup",ng),ur=!1}function Ki(e){Pe.is.desktop===!0&&(qn.push(e),qn.length===1&&$s("addEventListener"))}function sr(e){let t=qn.indexOf(e);t!==-1&&(qn.splice(t,1),qn.length===0&&$s("removeEventListener"))}var Tn=[];function Es(e){Tn[Tn.length-1](e)}function cr(e){Pe.is.desktop===!0&&(Tn.push(e),Tn.length===1&&document.body.addEventListener("focusin",Es))}function Mn(e){let t=Tn.indexOf(e);t!==-1&&(Tn.splice(t,1),Tn.length===0&&document.body.removeEventListener("focusin",Es))}var dr=null,{notPassiveCapture:Wi}=Ze,Rn=[];function Yi(e){dr!==null&&(clearTimeout(dr),dr=null);let t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains("no-pointer-events")===!0)return;let o=ln.length-1;for(;o>=0;){let r=ln[o].$;if(r.type.name==="QTooltip"){o--;continue}if(r.type.name!=="QDialog")break;if(r.props.seamless!==!0)return;o--}for(let r=Rn.length-1;r>=0;r--){let n=Rn[r];if((n.anchorEl.value===null||n.anchorEl.value.contains(t)===!1)&&(t===document.body||n.innerRef.value!==null&&n.innerRef.value.contains(t)===!1))e.qClickOutside=!0,n.onClickOutside(e);else return}}function Xi(e){Rn.push(e),Rn.length===1&&(document.addEventListener("mousedown",Yi,Wi),document.addEventListener("touchstart",Yi,Wi))}function fr(e){let t=Rn.findIndex(o=>o===e);t!==-1&&(Rn.splice(t,1),Rn.length===0&&(dr!==null&&(clearTimeout(dr),dr=null),document.removeEventListener("mousedown",Yi,Wi),document.removeEventListener("touchstart",Yi,Wi)))}var Bs,Ls;function mr(e){let t=e.split(" ");return t.length!==2?!1:["top","center","bottom"].includes(t[0])!==!0?(console.error("Anchor/Self position must start with one of top/center/bottom"),!1):["left","middle","right","start","end"].includes(t[1])!==!0?(console.error("Anchor/Self position must end with one of left/middle/right/start/end"),!1):!0}function Gi(e){return e?!(e.length!==2||typeof e[0]!="number"||typeof e[1]!="number"):!0}var Hl={"start#ltr":"left","start#rtl":"right","end#ltr":"right","end#rtl":"left"};["left","middle","right"].forEach(e=>{Hl[`${e}#ltr`]=e,Hl[`${e}#rtl`]=e});function vr(e,t){let o=e.split(" ");return{vertical:o[0],horizontal:Hl[`${o[1]}#${t===!0?"rtl":"ltr"}`]}}function rg(e,t){let{top:o,left:r,right:n,bottom:i,width:a,height:u}=e.getBoundingClientRect();return t!==void 0&&(o-=t[1],r-=t[0],i+=t[1],n+=t[0],a+=t[0],u+=t[1]),{top:o,bottom:i,height:u,left:r,right:n,width:a,middle:r+(n-r)/2,center:o+(i-o)/2}}function ig(e,t,o){let{top:r,left:n}=e.getBoundingClientRect();return r+=t.top,n+=t.left,o!==void 0&&(r+=o[1],n+=o[0]),{top:r,bottom:r+1,height:1,left:n,right:n+1,width:1,middle:n,center:r}}function ag(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}function Fs(e,t,o,r){return{top:e[o.vertical]-t[r.vertical],left:e[o.horizontal]-t[r.horizontal]}}function oi(e,t=0){if(e.targetEl===null||e.anchorEl===null||t>5)return;if(e.targetEl.offsetHeight===0||e.targetEl.offsetWidth===0){setTimeout(()=>{oi(e,t+1)},10);return}let{targetEl:o,offset:r,anchorEl:n,anchorOrigin:i,selfOrigin:a,absoluteOffset:u,fit:c,cover:f,maxHeight:d,maxWidth:h}=e;if(Pe.is.ios===!0&&window.visualViewport!==void 0){let $=document.body.style,{offsetLeft:L,offsetTop:D}=window.visualViewport;L!==Bs&&($.setProperty("--q-pe-left",L+"px"),Bs=L),D!==Ls&&($.setProperty("--q-pe-top",D+"px"),Ls=D)}let{scrollLeft:g,scrollTop:m}=o,v=u===void 0?rg(n,f===!0?[0,0]:r):ig(n,u,r);Object.assign(o.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:h,maxHeight:d,visibility:"visible"});let{offsetWidth:x,offsetHeight:y}=o,{elWidth:k,elHeight:S}=c===!0||f===!0?{elWidth:Math.max(v.width,x),elHeight:f===!0?Math.max(v.height,y):y}:{elWidth:x,elHeight:y},b={maxWidth:h,maxHeight:d};(c===!0||f===!0)&&(b.minWidth=v.width+"px",f===!0&&(b.minHeight=v.height+"px")),Object.assign(o.style,b);let p=ag(k,S),C=Fs(v,p,i,a);if(u===void 0||r===void 0)Il(C,v,p,i,a);else{let{top:$,left:L}=C;Il(C,v,p,i,a);let D=!1;if(C.top!==$){D=!0;let B=2*r[1];v.center=v.top-=B,v.bottom-=B+2}if(C.left!==L){D=!0;let B=2*r[0];v.middle=v.left-=B,v.right-=B+2}D===!0&&(C=Fs(v,p,i,a),Il(C,v,p,i,a))}b={top:C.top+"px",left:C.left+"px"},C.maxHeight!==void 0&&(b.maxHeight=C.maxHeight+"px",v.height>C.maxHeight&&(b.minHeight=b.maxHeight)),C.maxWidth!==void 0&&(b.maxWidth=C.maxWidth+"px",v.width>C.maxWidth&&(b.minWidth=b.maxWidth)),Object.assign(o.style,b),o.scrollTop!==m&&(o.scrollTop=m),o.scrollLeft!==g&&(o.scrollLeft=g)}function Il(e,t,o,r,n){let i=o.bottom,a=o.right,u=kn(),c=window.innerHeight-u,f=document.body.clientWidth;if(e.top<0||e.top+i>c)if(n.vertical==="center")e.top=t[r.vertical]>c/2?Math.max(0,c-i):0,e.maxHeight=Math.min(i,c);else if(t[r.vertical]>c/2){let d=Math.min(c,r.vertical==="center"?t.center:r.vertical===n.vertical?t.bottom:t.top);e.maxHeight=Math.min(i,d),e.top=Math.max(0,d-i)}else e.top=Math.max(0,r.vertical==="center"?t.center:r.vertical===n.vertical?t.top:t.bottom),e.maxHeight=Math.min(i,c-e.top);if(e.left<0||e.left+a>f)if(e.maxWidth=Math.min(a,f),n.horizontal==="middle")e.left=t[r.horizontal]>f/2?Math.max(0,f-a):0;else if(t[r.horizontal]>f/2){let d=Math.min(f,r.horizontal==="middle"?t.middle:r.horizontal===n.horizontal?t.right:t.left);e.maxWidth=Math.min(a,d),e.left=Math.max(0,d-e.maxWidth)}else e.left=Math.max(0,r.horizontal==="middle"?t.middle:r.horizontal===n.horizontal?t.left:t.right),e.maxWidth=Math.min(a,f-e.left)}var Lo=A({name:"QMenu",inheritAttrs:!1,props:{...Ni,...vo,...Se,...bo,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:mr},self:{type:String,validator:mr},offset:{type:Array,validator:Gi},scrollTarget:eo,touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...go,"click","escapeKey"],setup(e,{slots:t,emit:o,attrs:r}){let n=null,i,a,u,c=K(),{proxy:f}=c,{$q:d}=f,h=q(null),g=q(!1),m=s(()=>e.persistent!==!0&&e.noRouteDismiss!==!0),v=xe(e,d),{registerTick:x,removeTick:y}=yo(),{registerTimeout:k}=Vt(),{transitionProps:S,transitionStyle:b}=un(e),{localScrollTarget:p,changeScrollEvent:C,unconfigureScrollTarget:$}=ji(e,X),{anchorEl:L,canShow:D}=nr({showing:g}),{hide:B}=ho({showing:g,canShow:D,handleShow:fe,handleHide:H,hideOnRouteChange:m,processOnMount:!0}),{showPortal:E,hidePortal:V,renderPortal:M}=ar(c,h,ae,"menu"),T={anchorEl:L,innerRef:h,onClickOutside(Q){if(e.persistent!==!0&&g.value===!0)return B(Q),(Q.type==="touchstart"||Q.target.classList.contains("q-dialog__backdrop"))&&ke(Q),!0}},_=s(()=>vr(e.anchor||(e.cover===!0?"center middle":"bottom start"),d.lang.rtl)),F=s(()=>e.cover===!0?_.value:vr(e.self||"top start",d.lang.rtl)),I=s(()=>(e.square===!0?" q-menu--square":"")+(v.value===!0?" q-menu--dark q-dark":"")),j=s(()=>e.autoClose===!0?{onClick:U}:{}),W=s(()=>g.value===!0&&e.persistent!==!0);Y(W,Q=>{Q===!0?(Ki(R),Xi(T)):(sr(R),fr(T))});function ee(){po(()=>{let Q=h.value;Q&&Q.contains(document.activeElement)!==!0&&(Q=Q.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||Q.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||Q.querySelector("[autofocus], [data-autofocus]")||Q,Q.focus({preventScroll:!0}))})}function fe(Q){if(n=e.noRefocus===!1?document.activeElement:null,cr(le),E(),X(),i=void 0,Q!==void 0&&(e.touchPosition||e.contextMenu)){let me=_t(Q);if(me.left!==void 0){let{top:qe,left:G}=L.value.getBoundingClientRect();i={left:me.left-G,top:me.top-qe}}}a===void 0&&(a=Y(()=>d.screen.width+"|"+d.screen.height+"|"+e.self+"|"+e.anchor+"|"+d.lang.rtl,z)),e.noFocus!==!0&&document.activeElement.blur(),x(()=>{z(),e.noFocus!==!0&&ee()}),k(()=>{d.platform.is.ios===!0&&(u=e.autoClose,h.value.click()),z(),E(!0),o("show",Q)},e.transitionDuration)}function H(Q){y(),V(),w(!0),n!==null&&(Q===void 0||Q.qClickOutside!==!0)&&(((Q&&Q.type.indexOf("key")===0?n.closest('[tabindex]:not([tabindex^="-"])'):void 0)||n).focus(),n=null),k(()=>{V(!0),o("hide",Q)},e.transitionDuration)}function w(Q){i=void 0,a!==void 0&&(a(),a=void 0),(Q===!0||g.value===!0)&&(Mn(le),$(),fr(T),sr(R)),Q!==!0&&(n=null)}function X(){(L.value!==null||e.scrollTarget!==void 0)&&(p.value=Bt(L.value,e.scrollTarget),C(p.value,z))}function U(Q){u!==!0?(Ll(f,Q),o("click",Q)):u=!1}function le(Q){W.value===!0&&e.noFocus!==!0&&Oi(h.value,Q.target)!==!0&&ee()}function R(Q){o("escapeKey"),B(Q)}function z(){oi({targetEl:h.value,offset:e.offset,anchorEl:L.value,anchorOrigin:_.value,selfOrigin:F.value,absoluteOffset:i,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function ae(){return l(st,S.value,()=>g.value===!0?l("div",{role:"menu",...r,ref:h,tabindex:-1,class:["q-menu q-position-engine scroll"+I.value,r.class],style:[r.style,b.value],...j.value},re(t.default)):null)}return ye(w),Object.assign(f,{focus:ee,updatePosition:z}),M}});var Ql,Zi=0,Ht=new Array(256);for(let e=0;e<256;e++)Ht[e]=(e+256).toString(16).substring(1);var lg=(()=>{let e=typeof crypto<"u"?crypto:typeof window<"u"?window.crypto||window.msCrypto:void 0;if(e!==void 0){if(e.randomBytes!==void 0)return e.randomBytes;if(e.getRandomValues!==void 0)return t=>{let o=new Uint8Array(t);return e.getRandomValues(o),o}}return t=>{let o=[];for(let r=t;r>0;r--)o.push(Math.floor(Math.random()*256));return o}})(),Ds=4096;function Fo(){(Ql===void 0||Zi+16>Ds)&&(Zi=0,Ql=lg(Ds));let e=Array.prototype.slice.call(Ql,Zi,Zi+=16);return e[6]=e[6]&15|64,e[8]=e[8]&63|128,Ht[e[0]]+Ht[e[1]]+Ht[e[2]]+Ht[e[3]]+"-"+Ht[e[4]]+Ht[e[5]]+"-"+Ht[e[6]]+Ht[e[7]]+"-"+Ht[e[8]]+Ht[e[9]]+"-"+Ht[e[10]]+Ht[e[11]]+Ht[e[12]]+Ht[e[13]]+Ht[e[14]]+Ht[e[15]]}function ug(e){return e??null}function Vs(e,t){return e??(t===!0?`f_${Fo()}`:null)}function Do({getValue:e,required:t=!0}={}){if(xt.value===!0){let o=e!==void 0?q(ug(e())):q(null);return t===!0&&o.value===null&&je(()=>{o.value=`f_${Fo()}`}),e!==void 0&&Y(e,r=>{o.value=Vs(r,t)}),o}return e!==void 0?s(()=>Vs(e(),t)):q(`f_${Fo()}`)}var sg=Object.keys(Qi);function cg(e){return sg.reduce((t,o)=>{let r=e[o];return r!==void 0&&(t[o]=r),t},{})}var Ji=A({name:"QBtnDropdown",props:{...Qi,...bo,modelValue:Boolean,split:Boolean,dropdownIcon:String,contentClass:[Array,String,Object],contentStyle:[Array,String,Object],cover:Boolean,persistent:Boolean,noRouteDismiss:Boolean,autoClose:Boolean,menuAnchor:{type:String,default:"bottom end"},menuSelf:{type:String,default:"top end"},menuOffset:Array,disableMainBtn:Boolean,disableDropdown:Boolean,noIconAnimation:Boolean,toggleAriaLabel:String},emits:["update:modelValue","click","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),n=q(e.modelValue),i=q(null),a=Do(),u=s(()=>{let p={"aria-expanded":n.value===!0?"true":"false","aria-haspopup":"true","aria-controls":a.value,"aria-label":e.toggleAriaLabel||r.$q.lang.label[n.value===!0?"collapse":"expand"](e.label)};return(e.disable===!0||e.split===!1&&e.disableMainBtn===!0||e.disableDropdown===!0)&&(p["aria-disabled"]="true"),p}),c=s(()=>"q-btn-dropdown__arrow"+(n.value===!0&&e.noIconAnimation===!1?" rotate-180":"")+(e.split===!1?" q-btn-dropdown__arrow-container":"")),f=s(()=>Hi(e)),d=s(()=>cg(e));Y(()=>e.modelValue,p=>{i.value!==null&&i.value[p?"show":"hide"]()}),Y(()=>e.split,b);function h(p){n.value=!0,o("beforeShow",p)}function g(p){o("show",p),o("update:modelValue",!0)}function m(p){n.value=!1,o("beforeHide",p)}function v(p){o("hide",p),o("update:modelValue",!1)}function x(p){o("click",p)}function y(p){at(p),b(),o("click",p)}function k(p){i.value!==null&&i.value.toggle(p)}function S(p){i.value!==null&&i.value.show(p)}function b(p){i.value!==null&&i.value.hide(p)}return Object.assign(r,{show:S,hide:b,toggle:k}),je(()=>{e.modelValue===!0&&S()}),()=>{let p=[l(Re,{class:c.value,name:e.dropdownIcon||r.$q.iconSet.arrow.dropdown})];return e.disableDropdown!==!0&&p.push(l(Lo,{ref:i,id:a.value,class:e.contentClass,style:e.contentStyle,cover:e.cover,fit:!0,persistent:e.persistent,noRouteDismiss:e.noRouteDismiss,autoClose:e.autoClose,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,separateClosePopup:!0,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:h,onShow:g,onBeforeHide:m,onHide:v},t.default)),e.split===!1?l(ze,{class:"q-btn-dropdown q-btn-dropdown--simple",...d.value,...u.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:x},{default:()=>re(t.label,[]).concat(p),loading:t.loading}):l(or,{class:"q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item",rounded:e.rounded,square:e.square,...f.value,glossy:e.glossy,stretch:e.stretch},()=>[l(ze,{class:"q-btn-dropdown--current",...d.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:y},{default:t.label,loading:t.loading}),l(ze,{class:"q-btn-dropdown__arrow-container q-anchor--skip",...u.value,...f.value,disable:e.disable===!0||e.disableDropdown===!0,rounded:e.rounded,color:e.color,textColor:e.textColor,dense:e.dense,size:e.size,padding:e.padding,ripple:e.ripple},()=>p)])}}});var kt={name:String};function Vo(e){return s(()=>({type:"hidden",name:e.name,value:e.modelValue}))}function Xt(e={}){return(t,o,r)=>{t[o](l("input",{class:"hidden"+(r||""),...e.value}))}}function gr(e){return s(()=>e.name||e.for)}var zs=A({name:"QBtnToggle",props:{...kt,modelValue:{required:!0},options:{type:Array,required:!0,validator:e=>e.every(t=>("label"in t||"icon"in t||"slot"in t)&&"value"in t)},color:String,textColor:String,toggleColor:{type:String,default:"primary"},toggleTextColor:String,outline:Boolean,flat:Boolean,unelevated:Boolean,rounded:Boolean,push:Boolean,glossy:Boolean,size:String,padding:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,readonly:Boolean,disable:Boolean,stack:Boolean,stretch:Boolean,spread:Boolean,clearable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","clear","click"],setup(e,{slots:t,emit:o}){let r=s(()=>e.options.find(g=>g.value===e.modelValue)!==void 0),n=s(()=>({type:"hidden",name:e.name,value:e.modelValue})),i=Xt(n),a=s(()=>Hi(e)),u=s(()=>({rounded:e.rounded,dense:e.dense,...a.value})),c=s(()=>e.options.map((g,m)=>{let{attrs:v,value:x,slot:y,...k}=g;return{slot:y,props:{key:m,"aria-pressed":x===e.modelValue?"true":"false",...v,...k,...u.value,disable:e.disable===!0||k.disable===!0,color:x===e.modelValue?d(k,"toggleColor"):d(k,"color"),textColor:x===e.modelValue?d(k,"toggleTextColor"):d(k,"textColor"),noCaps:d(k,"noCaps")===!0,noWrap:d(k,"noWrap")===!0,size:d(k,"size"),padding:d(k,"padding"),ripple:d(k,"ripple"),stack:d(k,"stack")===!0,stretch:d(k,"stretch")===!0,onClick(S){f(x,g,S)}}}}));function f(g,m,v){e.readonly!==!0&&(e.modelValue===g?e.clearable===!0&&(o("update:modelValue",null,null),o("clear")):o("update:modelValue",g,m),o("click",v))}function d(g,m){return g[m]===void 0?e[m]:g[m]}function h(){let g=c.value.map(m=>l(ze,m.props,m.slot!==void 0?t[m.slot]:void 0));return e.name!==void 0&&e.disable!==!0&&r.value===!0&&i(g,"push"),Xe(t.default,g)}return()=>l(or,{class:"q-btn-toggle",...a.value,rounded:e.rounded,stretch:e.stretch,glossy:e.glossy,spread:e.spread},h)}});var hr=A({name:"QCard",props:{...Se,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=xe(e,o),n=s(()=>"q-card"+(r.value===!0?" q-card--dark q-dark":"")+(e.bordered===!0?" q-card--bordered":"")+(e.square===!0?" q-card--square no-border-radius":"")+(e.flat===!0?" q-card--flat no-shadow":""));return()=>l(e.tag,{class:n.value},re(t.default))}});var xo=A({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){let o=s(()=>`q-card__section q-card__section--${e.horizontal===!0?"horiz row no-wrap":"vert"}`);return()=>l(e.tag,{class:o.value},re(t.default))}});var ea=A({name:"QCardActions",props:{...Wn,vertical:Boolean},setup(e,{slots:t}){let o=Yn(e),r=s(()=>`q-card__actions ${o.value} q-card__actions--${e.vertical===!0?"vert column":"horiz row"}`);return()=>l("div",{class:r.value},re(t.default))}});var Nl={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},dg=Object.keys(Nl);Nl.all=!0;function pr(e){let t={};for(let o of dg)e[o]===!0&&(t[o]=!0);return Object.keys(t).length===0?Nl:(t.horizontal===!0?t.left=t.right=!0:t.left===!0&&t.right===!0&&(t.horizontal=!0),t.vertical===!0?t.up=t.down=!0:t.up===!0&&t.down===!0&&(t.vertical=!0),t.horizontal===!0&&t.vertical===!0&&(t.all=!0),t)}var fg=["INPUT","TEXTAREA"];function br(e,t){return t.event===void 0&&e.target!==void 0&&e.target.draggable!==!0&&typeof t.handler=="function"&&fg.includes(e.target.nodeName.toUpperCase())===!1&&(e.qClonedBy===void 0||e.qClonedBy.indexOf(t.uid)===-1)}function mg(e){let t=[.06,6,50];return typeof e=="string"&&e.length&&e.split(":").forEach((o,r)=>{let n=parseFloat(o);n&&(t[r]=n)}),t}var ta=At({name:"touch-swipe",beforeMount(e,{value:t,arg:o,modifiers:r}){if(r.mouse!==!0&&Pe.has.touch!==!0)return;let n=r.mouseCapture===!0?"Capture":"",i={handler:t,sensitivity:mg(o),direction:pr(r),noop:Ye,mouseStart(a){br(a,i)&&Ko(a)&&(mt(i,"temp",[[document,"mousemove","move",`notPassive${n}`],[document,"mouseup","end","notPassiveCapture"]]),i.start(a,!0))},touchStart(a){if(br(a,i)){let u=a.target;mt(i,"temp",[[u,"touchmove","move","notPassiveCapture"],[u,"touchcancel","end","notPassiveCapture"],[u,"touchend","end","notPassiveCapture"]]),i.start(a)}},start(a,u){Pe.is.firefox===!0&&Wo(e,!0);let c=_t(a);i.event={x:c.left,y:c.top,time:Date.now(),mouse:u===!0,dir:!1}},move(a){if(i.event===void 0)return;if(i.event.dir!==!1){ke(a);return}let u=Date.now()-i.event.time;if(u===0)return;let c=_t(a),f=c.left-i.event.x,d=Math.abs(f),h=c.top-i.event.y,g=Math.abs(h);if(i.event.mouse!==!0){if(di.sensitivity[0]&&(i.event.dir=h<0?"up":"down"),i.direction.horizontal===!0&&d>g&&g<100&&m>i.sensitivity[0]&&(i.event.dir=f<0?"left":"right"),i.direction.up===!0&&di.sensitivity[0]&&(i.event.dir="up"),i.direction.down===!0&&d0&&d<100&&v>i.sensitivity[0]&&(i.event.dir="down"),i.direction.left===!0&&d>g&&f<0&&g<100&&m>i.sensitivity[0]&&(i.event.dir="left"),i.direction.right===!0&&d>g&&f>0&&g<100&&m>i.sensitivity[0]&&(i.event.dir="right"),i.event.dir!==!1?(ke(a),i.event.mouse===!0&&(document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),It(),i.styleCleanup=x=>{i.styleCleanup=void 0,document.body.classList.remove("non-selectable");let y=()=>{document.body.classList.remove("no-pointer-events--children")};x===!0?setTimeout(y,50):y()}),i.handler({evt:a,touch:i.event.mouse!==!0,mouse:i.event.mouse,direction:i.event.dir,duration:u,distance:{x:d,y:g}})):i.end(a)},end(a){i.event!==void 0&&(qt(i,"temp"),Pe.is.firefox===!0&&Wo(e,!1),i.styleCleanup!==void 0&&i.styleCleanup(!0),a!==void 0&&i.event.dir!==!1&&ke(a),i.event=void 0)}};if(e.__qtouchswipe=i,r.mouse===!0){let a=r.mouseCapture===!0||r.mousecapture===!0?"Capture":"";mt(i,"main",[[e,"mousedown","mouseStart",`passive${a}`]])}Pe.has.touch===!0&&mt(i,"main",[[e,"touchstart","touchStart",`passive${r.capture===!0?"Capture":""}`],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){let o=e.__qtouchswipe;o!==void 0&&(t.oldValue!==t.value&&(typeof t.value!="function"&&o.end(),o.handler=t.value),o.direction=pr(t.modifiers))},beforeUnmount(e){let t=e.__qtouchswipe;t!==void 0&&(qt(t,"main"),qt(t,"temp"),Pe.is.firefox===!0&&Wo(e,!1),t.styleCleanup!==void 0&&t.styleCleanup(),delete e.__qtouchswipe)}});function So(){let e=Object.create(null);return{getCache:(t,o)=>e[t]===void 0?e[t]=typeof o=="function"?o():o:e[t],setCache(t,o){e[t]=o},hasCache(t){return Object.hasOwnProperty.call(e,t)},clearCache(t){t!==void 0?delete e[t]:e=Object.create(null)}}}var yr={name:{required:!0},disable:Boolean},Os={setup(e,{slots:t}){return()=>l("div",{class:"q-panel scroll",role:"tabpanel"},re(t.default))}},Sr={modelValue:{required:!0},animated:Boolean,infinite:Boolean,swipeable:Boolean,vertical:Boolean,transitionPrev:String,transitionNext:String,transitionDuration:{type:[String,Number],default:300},keepAlive:Boolean,keepAliveInclude:[String,Array,RegExp],keepAliveExclude:[String,Array,RegExp],keepAliveMax:Number},xr=["update:modelValue","beforeTransition","transition"];function _r(){let{props:e,emit:t,proxy:o}=K(),{getCache:r}=So(),{registerTimeout:n}=Vt(),i,a,u=q(null),c=q(null);function f(_){let F=e.vertical===!0?"up":"left";D((o.$q.lang.rtl===!0?-1:1)*(_.direction===F?1:-1))}let d=s(()=>[[ta,f,void 0,{horizontal:e.vertical!==!0,vertical:e.vertical,mouse:!0}]]),h=s(()=>e.transitionPrev||`slide-${e.vertical===!0?"down":"right"}`),g=s(()=>e.transitionNext||`slide-${e.vertical===!0?"up":"left"}`),m=s(()=>`--q-transition-duration: ${e.transitionDuration}ms`),v=s(()=>typeof e.modelValue=="string"||typeof e.modelValue=="number"?e.modelValue:String(e.modelValue)),x=s(()=>({include:e.keepAliveInclude,exclude:e.keepAliveExclude,max:e.keepAliveMax})),y=s(()=>e.keepAliveInclude!==void 0||e.keepAliveExclude!==void 0);Y(()=>e.modelValue,(_,F)=>{let I=p(_)===!0?C(_):-1;a!==!0&&L(I===-1?0:I{t("transition",_,F)},e.transitionDuration))});function k(){D(1)}function S(){D(-1)}function b(_){t("update:modelValue",_)}function p(_){return _!=null&&_!==""}function C(_){return i.findIndex(F=>F.props.name===_&&F.props.disable!==""&&F.props.disable!==!0)}function $(){return i.filter(_=>_.props.disable!==""&&_.props.disable!==!0)}function L(_){let F=_!==0&&e.animated===!0&&u.value!==-1?"q-transition--"+(_===-1?h.value:g.value):null;c.value!==F&&(c.value=F)}function D(_,F=u.value){let I=F+_;for(;I!==-1&&I{a=!1});return}I+=_}e.infinite===!0&&i.length!==0&&F!==-1&&F!==i.length&&D(_,_===-1?i.length:-1)}function B(){let _=C(e.modelValue);return u.value!==_&&(u.value=_),!0}function E(){let _=p(e.modelValue)===!0&&B()&&i[u.value];return e.keepAlive===!0?[l(wi,x.value,[l(y.value===!0?r(v.value,()=>({...Os,name:v.value})):Os,{key:v.value,style:m.value},()=>_)])]:[l("div",{class:"q-panel scroll",style:m.value,key:v.value,role:"tabpanel"},[_])]}function V(){if(i.length!==0)return e.animated===!0?[l(st,{name:c.value},E)]:E()}function M(_){return i=Xn(re(_.default,[])).filter(F=>F.props!==null&&F.props.slot===void 0&&p(F.props.name)===!0),i.length}function T(){return i}return Object.assign(o,{next:k,previous:S,goTo:b}),{panelIndex:u,panelDirectives:d,updatePanelsList:M,updatePanelIndex:B,getPanelContent:V,getEnabledPanels:$,getPanels:T,isValidPanelName:p,keepAliveProps:x,needsUniqueKeepAliveWrapper:y,goToPanelByOffset:D,goToPanel:b,nextPanel:k,previousPanel:S}}var ni=0,Cr={fullscreen:Boolean,noRouteFullscreenExit:Boolean},wr=["update:fullscreen","fullscreen"];function kr(){let e=K(),{props:t,emit:o,proxy:r}=e,n,i,a,u=q(!1);Gn(e)===!0&&Y(()=>r.$route.fullPath,()=>{t.noRouteFullscreenExit!==!0&&d()}),Y(()=>t.fullscreen,h=>{u.value!==h&&c()}),Y(u,h=>{o("update:fullscreen",h),o("fullscreen",h)});function c(){u.value===!0?d():f()}function f(){u.value!==!0&&(u.value=!0,a=r.$el.parentNode,a.replaceChild(i,r.$el),document.body.appendChild(r.$el),ni++,ni===1&&document.body.classList.add("q-body--fullscreen-mixin"),n={handler:d},on.add(n))}function d(){u.value===!0&&(n!==void 0&&(on.remove(n),n=void 0),a.replaceChild(r.$el,i),u.value=!1,ni=Math.max(0,ni-1),ni===0&&(document.body.classList.remove("q-body--fullscreen-mixin"),r.$el.scrollIntoView!==void 0&&setTimeout(()=>{r.$el.scrollIntoView()})))}return Hn(()=>{i=document.createElement("span")}),je(()=>{t.fullscreen===!0&&f()}),ye(d),Object.assign(r,{toggleFullscreen:c,setFullscreen:f,exitFullscreen:d}),{inFullscreen:u,toggleFullscreen:c}}var vg=["top","right","bottom","left"],gg=["regular","flat","outline","push","unelevated"],Is=A({name:"QCarousel",props:{...Se,...Sr,...Cr,transitionPrev:{type:String,default:"fade"},transitionNext:{type:String,default:"fade"},height:String,padding:Boolean,controlColor:String,controlTextColor:String,controlType:{type:String,validator:e=>gg.includes(e),default:"flat"},autoplay:[Number,Boolean],arrows:Boolean,prevIcon:String,nextIcon:String,navigation:Boolean,navigationPosition:{type:String,validator:e=>vg.includes(e)},navigationIcon:String,navigationActiveIcon:String,thumbnails:Boolean},emits:[...wr,...xr],setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=xe(e,o),n=null,i,{updatePanelsList:a,getPanelContent:u,panelDirectives:c,goToPanel:f,previousPanel:d,nextPanel:h,getEnabledPanels:g,panelIndex:m}=_r(),{inFullscreen:v}=kr(),x=s(()=>v.value!==!0&&e.height!==void 0?{height:e.height}:{}),y=s(()=>e.vertical===!0?"vertical":"horizontal"),k=s(()=>e.navigationPosition||(e.vertical===!0?"right":"bottom")),S=s(()=>`q-carousel q-panel-parent q-carousel--with${e.padding===!0?"":"out"}-padding`+(v.value===!0?" fullscreen":"")+(r.value===!0?" q-carousel--dark q-dark":"")+(e.arrows===!0?` q-carousel--arrows-${y.value}`:"")+(e.navigation===!0?` q-carousel--navigation-${k.value}`:"")),b=s(()=>{let E=[e.prevIcon||o.iconSet.carousel[e.vertical===!0?"up":"left"],e.nextIcon||o.iconSet.carousel[e.vertical===!0?"down":"right"]];return e.vertical===!1&&o.lang.rtl===!0?E.reverse():E}),p=s(()=>e.navigationIcon||o.iconSet.carousel.navigationIcon),C=s(()=>e.navigationActiveIcon||p.value),$=s(()=>({color:e.controlColor,textColor:e.controlTextColor,round:!0,[e.controlType]:!0,dense:!0}));Y(()=>e.modelValue,()=>{e.autoplay&&L()}),Y(()=>e.autoplay,E=>{E?L():n!==null&&(clearTimeout(n),n=null)});function L(){let E=fo(e.autoplay)===!0?Math.abs(e.autoplay):5e3;n!==null&&clearTimeout(n),n=setTimeout(()=>{n=null,E>=0?h():d()},E)}je(()=>{e.autoplay&&L()}),ye(()=>{n!==null&&clearTimeout(n)});function D(E,V){return l("div",{class:`q-carousel__control q-carousel__navigation no-wrap absolute flex q-carousel__navigation--${E} q-carousel__navigation--${k.value}`+(e.controlColor!==void 0?` text-${e.controlColor}`:"")},[l("div",{class:"q-carousel__navigation-inner flex flex-center no-wrap"},g().map(V))])}function B(){let E=[];if(e.navigation===!0){let V=t["navigation-icon"]!==void 0?t["navigation-icon"]:T=>l(ze,{key:"nav"+T.name,class:`q-carousel__navigation-icon q-carousel__navigation-icon--${T.active===!0?"":"in"}active`,...T.btnProps,onClick:T.onClick}),M=i-1;E.push(D("buttons",(T,_)=>{let F=T.props.name,I=m.value===_;return V({index:_,maxIndex:M,name:F,active:I,btnProps:{icon:I===!0?C.value:p.value,size:"sm",...$.value},onClick:()=>{f(F)}})}))}else if(e.thumbnails===!0){let V=e.controlColor!==void 0?` text-${e.controlColor}`:"";E.push(D("thumbnails",M=>{let T=M.props;return l("img",{key:"tmb#"+T.name,class:`q-carousel__thumbnail q-carousel__thumbnail--${T.name===e.modelValue?"":"in"}active`+V,src:T.imgSrc||T["img-src"],onClick:()=>{f(T.name)}})}))}return e.arrows===!0&&m.value>=0&&((e.infinite===!0||m.value>0)&&E.push(l("div",{key:"prev",class:`q-carousel__control q-carousel__arrow q-carousel__prev-arrow q-carousel__prev-arrow--${y.value} absolute flex flex-center`},[l(ze,{icon:b.value[0],...$.value,onClick:d})])),(e.infinite===!0||m.value(i=a(t),l("div",{class:S.value,style:x.value},[Mt("div",{class:"q-carousel__slides-container"},u(),"sl-cont",e.swipeable,()=>c.value)].concat(B())))}});var Hs=A({name:"QCarouselSlide",props:{...yr,imgSrc:String},setup(e,{slots:t}){let o=s(()=>e.imgSrc?{backgroundImage:`url("${e.imgSrc}")`}:{});return()=>l("div",{class:"q-carousel__slide",style:o.value},re(t.default))}});var Qs=A({name:"QCarouselControl",props:{position:{type:String,default:"bottom-right",validator:e=>["top-right","top-left","bottom-right","bottom-left","top","right","bottom","left"].includes(e)},offset:{type:Array,default:()=>[18,18],validator:e=>e.length===2}},setup(e,{slots:t}){let o=s(()=>`q-carousel__control absolute absolute-${e.position}`),r=s(()=>({margin:`${e.offset[1]}px ${e.offset[0]}px`}));return()=>l("div",{class:o.value,style:r.value},re(t.default))}});var Ns=A({name:"QChatMessage",props:{sent:Boolean,label:String,bgColor:String,textColor:String,name:String,avatar:String,text:Array,stamp:String,size:String,labelHtml:Boolean,nameHtml:Boolean,textHtml:Boolean,stampHtml:Boolean},setup(e,{slots:t}){let o=s(()=>e.sent===!0?"sent":"received"),r=s(()=>`q-message-text-content q-message-text-content--${o.value}`+(e.textColor!==void 0?` text-${e.textColor}`:"")),n=s(()=>`q-message-text q-message-text--${o.value}`+(e.bgColor!==void 0?` text-${e.bgColor}`:"")),i=s(()=>"q-message-container row items-end no-wrap"+(e.sent===!0?" reverse":"")),a=s(()=>e.size!==void 0?`col-${e.size}`:""),u=s(()=>({msg:e.textHtml===!0?"innerHTML":"textContent",stamp:e.stampHtml===!0?"innerHTML":"textContent",name:e.nameHtml===!0?"innerHTML":"textContent",label:e.labelHtml===!0?"innerHTML":"textContent"}));function c(d){return t.stamp!==void 0?[d,l("div",{class:"q-message-stamp"},t.stamp())]:e.stamp?[d,l("div",{class:"q-message-stamp",[u.value.stamp]:e.stamp})]:[d]}function f(d,h){let g=h===!0?d.length>1?m=>m:m=>l("div",[m]):m=>l("div",{[u.value.msg]:m});return d.map((m,v)=>l("div",{key:v,class:n.value},[l("div",{class:r.value},c(g(m)))]))}return()=>{let d=[];t.avatar!==void 0?d.push(t.avatar()):e.avatar!==void 0&&d.push(l("img",{class:`q-message-avatar q-message-avatar--${o.value}`,src:e.avatar,"aria-hidden":"true"}));let h=[];t.name!==void 0?h.push(l("div",{class:`q-message-name q-message-name--${o.value}`},t.name())):e.name!==void 0&&h.push(l("div",{class:`q-message-name q-message-name--${o.value}`,[u.value.name]:e.name})),t.default!==void 0?h.push(f(Xn(t.default()),!0)):e.text!==void 0&&h.push(f(e.text)),d.push(l("div",{class:a.value},h));let g=[];return t.label!==void 0?g.push(l("div",{class:"q-message-label"},t.label())):e.label!==void 0&&g.push(l("div",{class:"q-message-label",[u.value.label]:e.label})),g.push(l("div",{class:i.value},d)),l("div",{class:`q-message q-message-${o.value}`},g)}}});function oa(e,t){let o=q(null),r=s(()=>e.disable===!0?null:l("span",{ref:o,class:"no-outline",tabindex:-1}));function n(i){let a=t.value;i!==void 0&&i.type.indexOf("key")===0?a!==null&&document.activeElement!==a&&a.contains(document.activeElement)===!0&&a.focus():o.value!==null&&(i===void 0||a!==null&&a.contains(i.target)===!0)&&o.value.focus()}return{refocusTargetEl:r,refocusTarget:n}}var na={xs:30,sm:35,md:40,lg:50,xl:60};var ra={...Se,...Ft,...kt,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>e==="tf"||e==="ft"},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},ia=["update:modelValue"];function aa(e,t){let{props:o,slots:r,emit:n,proxy:i}=K(),{$q:a}=i,u=xe(o,a),c=q(null),{refocusTargetEl:f,refocusTarget:d}=oa(o,c),h=Dt(o,na),g=s(()=>o.val!==void 0&&Array.isArray(o.modelValue)),m=s(()=>{let M=co(o.val);return g.value===!0?o.modelValue.findIndex(T=>co(T)===M):-1}),v=s(()=>g.value===!0?m.value!==-1:co(o.modelValue)===co(o.trueValue)),x=s(()=>g.value===!0?m.value===-1:co(o.modelValue)===co(o.falseValue)),y=s(()=>v.value===!1&&x.value===!1),k=s(()=>o.disable===!0?-1:o.tabindex||0),S=s(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(o.disable===!0?" disabled":"")+(u.value===!0?` q-${e}--dark`:"")+(o.dense===!0?` q-${e}--dense`:"")+(o.leftLabel===!0?" reverse":"")),b=s(()=>{let M=v.value===!0?"truthy":x.value===!0?"falsy":"indet",T=o.color!==void 0&&(o.keepColor===!0||(e==="toggle"?v.value===!0:x.value!==!0))?` text-${o.color}`:"";return`q-${e}__inner relative-position non-selectable q-${e}__inner--${M}${T}`}),p=s(()=>{let M={type:"checkbox"};return o.name!==void 0&&Object.assign(M,{".checked":v.value,"^checked":v.value===!0?"checked":void 0,name:o.name,value:g.value===!0?o.val:o.trueValue}),M}),C=Xt(p),$=s(()=>{let M={tabindex:k.value,role:e==="toggle"?"switch":"checkbox","aria-label":o.label,"aria-checked":y.value===!0?"mixed":v.value===!0?"true":"false"};return o.disable===!0&&(M["aria-disabled"]="true"),M});function L(M){M!==void 0&&(ke(M),d(M)),o.disable!==!0&&n("update:modelValue",D(),M)}function D(){if(g.value===!0){if(v.value===!0){let M=o.modelValue.slice();return M.splice(m.value,1),M}return o.modelValue.concat([o.val])}if(v.value===!0){if(o.toggleOrder!=="ft"||o.toggleIndeterminate===!1)return o.falseValue}else if(x.value===!0){if(o.toggleOrder==="ft"||o.toggleIndeterminate===!1)return o.trueValue}else return o.toggleOrder!=="ft"?o.trueValue:o.falseValue;return o.indeterminateValue}function B(M){(M.keyCode===13||M.keyCode===32)&&ke(M)}function E(M){(M.keyCode===13||M.keyCode===32)&&L(M)}let V=t(v,y);return Object.assign(i,{toggle:L}),()=>{let M=V();o.disable!==!0&&C(M,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);let T=[l("div",{class:b.value,style:h.value,"aria-hidden":"true"},M)];f.value!==null&&T.push(f.value);let _=o.label!==void 0?Xe(r.default,[o.label]):re(r.default);return _!==void 0&&T.push(l("div",{class:`q-${e}__label q-anchor--skip`},_)),l("div",{ref:c,class:S.value,...$.value,onClick:L,onKeydown:B,onKeyup:E},T)}}var hg=()=>l("div",{key:"svg",class:"q-checkbox__bg absolute"},[l("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[l("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),l("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]),zo=A({name:"QCheckbox",props:ra,emits:ia,setup(e){let t=hg();function o(r,n){let i=s(()=>(r.value===!0?e.checkedIcon:n.value===!0?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>i.value!==null?[l("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[l(Re,{class:"q-checkbox__icon",name:i.value})])]:[t]}return aa("checkbox",o)}});var pg={xs:8,sm:10,md:14,lg:20,xl:24},qr=A({name:"QChip",props:{...Se,...Ft,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=xe(e,r),i=Dt(e,pg),a=s(()=>e.selected===!0||e.icon!==void 0),u=s(()=>e.selected===!0?e.iconSelected||r.iconSet.chip.selected:e.icon),c=s(()=>e.iconRemove||r.iconSet.chip.remove),f=s(()=>e.disable===!1&&(e.clickable===!0||e.selected!==null)),d=s(()=>{let y=e.outline===!0&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(e.outline===!1&&e.color!==void 0?` bg-${e.color}`:"")+(y?` text-${y} q-chip--colored`:"")+(e.disable===!0?" disabled":"")+(e.dense===!0?" q-chip--dense":"")+(e.outline===!0?" q-chip--outline":"")+(e.selected===!0?" q-chip--selected":"")+(f.value===!0?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(e.square===!0?" q-chip--square":"")+(n.value===!0?" q-chip--dark q-dark":"")}),h=s(()=>{let y=e.disable===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0},k={...y,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||r.lang.label.remove};return{chip:y,remove:k}});function g(y){y.keyCode===13&&m(y)}function m(y){e.disable||(o("update:selected",!e.selected),o("click",y))}function v(y){(y.keyCode===void 0||y.keyCode===13)&&(ke(y),e.disable===!1&&(o("update:modelValue",!1),o("remove")))}function x(){let y=[];f.value===!0&&y.push(l("div",{class:"q-focus-helper"})),a.value===!0&&y.push(l(Re,{class:"q-chip__icon q-chip__icon--left",name:u.value}));let k=e.label!==void 0?[l("div",{class:"ellipsis"},[e.label])]:void 0;return y.push(l("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},Kn(t.default,k))),e.iconRight&&y.push(l(Re,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),e.removable===!0&&y.push(l(Re,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:c.value,...h.value.remove,onClick:v,onKeyup:v})),y}return()=>{if(e.modelValue===!1)return;let y={class:d.value,style:i.value};return f.value===!0&&Object.assign(y,h.value.chip,{onClick:m,onKeyup:g}),Mt("div",y,x(),"ripple",e.ripple!==!1&&e.disable!==!0,()=>[[$o,e.ripple]])}}});var ri={...Ft,min:{type:Number,default:0},max:{type:Number,default:100},color:String,centerColor:String,trackColor:String,fontSize:String,rounded:Boolean,thickness:{type:Number,default:.2,validator:e=>e>=0&&e<=1},angle:{type:Number,default:0},showValue:Boolean,reverse:Boolean,instantFeedback:Boolean};var jl=50,js=2*jl,Us=js*Math.PI,bg=Math.round(Us*1e3)/1e3,Tr=A({name:"QCircularProgress",props:{...ri,value:{type:Number,default:0},animationSpeed:{type:[String,Number],default:600},indeterminate:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=Dt(e),n=s(()=>{let m=(o.lang.rtl===!0?-1:1)*e.angle;return{transform:e.reverse!==(o.lang.rtl===!0)?`scale3d(-1, 1, 1) rotate3d(0, 0, 1, ${-90-m}deg)`:`rotate3d(0, 0, 1, ${m-90}deg)`}}),i=s(()=>e.instantFeedback!==!0&&e.indeterminate!==!0?{transition:`stroke-dashoffset ${e.animationSpeed}ms ease 0s, stroke ${e.animationSpeed}ms ease`}:""),a=s(()=>js/(1-e.thickness/2)),u=s(()=>`${a.value/2} ${a.value/2} ${a.value} ${a.value}`),c=s(()=>Je(e.value,e.min,e.max)),f=s(()=>e.max-e.min),d=s(()=>e.thickness/2*a.value),h=s(()=>{let m=(e.max-c.value)/f.value,v=e.rounded===!0&&c.value{let m=[];e.centerColor!==void 0&&e.centerColor!=="transparent"&&m.push(l("circle",{class:`q-circular-progress__center text-${e.centerColor}`,fill:"currentColor",r:jl-d.value/2,cx:a.value,cy:a.value})),e.trackColor!==void 0&&e.trackColor!=="transparent"&&m.push(g({cls:"track",thickness:d.value,offset:0,color:e.trackColor})),m.push(g({cls:"circle",thickness:d.value,offset:h.value,color:e.color,rounded:e.rounded===!0?"round":void 0}));let v=[l("svg",{class:"q-circular-progress__svg",style:n.value,viewBox:u.value,"aria-hidden":"true"},m)];return e.showValue===!0&&v.push(l("div",{class:"q-circular-progress__text absolute-full row flex-center content-center",style:{fontSize:e.fontSize}},t.default!==void 0?t.default():[l("div",c.value)])),l("div",{class:`q-circular-progress q-circular-progress--${e.indeterminate===!0?"in":""}determinate`,style:r.value,role:"progressbar","aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":e.indeterminate===!0?void 0:c.value},Kn(t.internal,v))}}});function Ul(e,t,o){let r=_t(e),n,i=r.left-t.event.x,a=r.top-t.event.y,u=Math.abs(i),c=Math.abs(a),f=t.direction;f.horizontal===!0&&f.vertical!==!0?n=i<0?"left":"right":f.horizontal!==!0&&f.vertical===!0?n=a<0?"up":"down":f.up===!0&&a<0?(n="up",u>c&&(f.left===!0&&i<0?n="left":f.right===!0&&i>0&&(n="right"))):f.down===!0&&a>0?(n="down",u>c&&(f.left===!0&&i<0?n="left":f.right===!0&&i>0&&(n="right"))):f.left===!0&&i<0?(n="left",u0&&(n="down"))):f.right===!0&&i>0&&(n="right",u0&&(n="down")));let d=!1;if(n===void 0&&o===!1){if(t.event.isFirst===!0||t.event.lastDir===void 0)return{};n=t.event.lastDir,d=!0,n==="left"||n==="right"?(r.left-=i,u=0,i=0):(r.top-=a,c=0,a=0)}return{synthetic:d,payload:{evt:e,touch:t.event.mouse!==!0,mouse:t.event.mouse===!0,position:r,direction:n,isFirst:t.event.isFirst,isFinal:o===!0,duration:Date.now()-t.event.time,distance:{x:u,y:c},offset:{x:i,y:a},delta:{x:r.left-t.event.lastX,y:r.top-t.event.lastY}}}}var yg=0,Rt=At({name:"touch-pan",beforeMount(e,{value:t,modifiers:o}){if(o.mouse!==!0&&Pe.has.touch!==!0)return;function r(i,a){o.mouse===!0&&a===!0?ke(i):(o.stop===!0&&at(i),o.prevent===!0&&vt(i))}let n={uid:"qvtp_"+yg++,handler:t,modifiers:o,direction:pr(o),noop:Ye,mouseStart(i){br(i,n)&&Ko(i)&&(mt(n,"temp",[[document,"mousemove","move","notPassiveCapture"],[document,"mouseup","end","passiveCapture"]]),n.start(i,!0))},touchStart(i){if(br(i,n)){let a=i.target;mt(n,"temp",[[a,"touchmove","move","notPassiveCapture"],[a,"touchcancel","end","passiveCapture"],[a,"touchend","end","passiveCapture"]]),n.start(i)}},start(i,a){if(Pe.is.firefox===!0&&Wo(e,!0),n.lastEvt=i,a===!0||o.stop===!0){if(n.direction.all!==!0&&(a!==!0||n.modifiers.mouseAllDir!==!0&&n.modifiers.mousealldir!==!0)){let f=i.type.indexOf("mouse")!==-1?new MouseEvent(i.type,i):new TouchEvent(i.type,i);i.defaultPrevented===!0&&vt(f),i.cancelBubble===!0&&at(f),Object.assign(f,{qKeyEvent:i.qKeyEvent,qClickOutside:i.qClickOutside,qAnchorHandled:i.qAnchorHandled,qClonedBy:i.qClonedBy===void 0?[n.uid]:i.qClonedBy.concat(n.uid)}),n.initialEvent={target:i.target,event:f}}at(i)}let{left:u,top:c}=_t(i);n.event={x:u,y:c,time:Date.now(),mouse:a===!0,detected:!1,isFirst:!0,isFinal:!1,lastX:u,lastY:c}},move(i){if(n.event===void 0)return;let a=_t(i),u=a.left-n.event.x,c=a.top-n.event.y;if(u===0&&c===0)return;n.lastEvt=i;let f=n.event.mouse===!0,d=()=>{r(i,f);let m;o.preserveCursor!==!0&&o.preservecursor!==!0&&(m=document.documentElement.style.cursor||"",document.documentElement.style.cursor="grabbing"),f===!0&&document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),It(),n.styleCleanup=v=>{if(n.styleCleanup=void 0,m!==void 0&&(document.documentElement.style.cursor=m),document.body.classList.remove("non-selectable"),f===!0){let x=()=>{document.body.classList.remove("no-pointer-events--children")};v!==void 0?setTimeout(()=>{x(),v()},50):x()}else v!==void 0&&v()}};if(n.event.detected===!0){n.event.isFirst!==!0&&r(i,n.event.mouse);let{payload:m,synthetic:v}=Ul(i,n,!1);m!==void 0&&(n.handler(m)===!1?n.end(i):(n.styleCleanup===void 0&&n.event.isFirst===!0&&d(),n.event.lastX=m.position.left,n.event.lastY=m.position.top,n.event.lastDir=v===!0?void 0:m.direction,n.event.isFirst=!1));return}if(n.direction.all===!0||f===!0&&(n.modifiers.mouseAllDir===!0||n.modifiers.mousealldir===!0)){d(),n.event.detected=!0,n.move(i);return}let h=Math.abs(u),g=Math.abs(c);h!==g&&(n.direction.horizontal===!0&&h>g||n.direction.vertical===!0&&h0||n.direction.left===!0&&h>g&&u<0||n.direction.right===!0&&h>g&&u>0?(n.event.detected=!0,n.move(i)):n.end(i,!0))},end(i,a){if(n.event!==void 0){if(qt(n,"temp"),Pe.is.firefox===!0&&Wo(e,!1),a===!0)n.styleCleanup!==void 0&&n.styleCleanup(),n.event.detected!==!0&&n.initialEvent!==void 0&&n.initialEvent.target.dispatchEvent(n.initialEvent.event);else if(n.event.detected===!0){n.event.isFirst===!0&&n.handler(Ul(i===void 0?n.lastEvt:i,n).payload);let{payload:u}=Ul(i===void 0?n.lastEvt:i,n,!0),c=()=>{n.handler(u)};n.styleCleanup!==void 0?n.styleCleanup(c):c()}n.event=void 0,n.initialEvent=void 0,n.lastEvt=void 0}}};if(e.__qtouchpan=n,o.mouse===!0){let i=o.mouseCapture===!0||o.mousecapture===!0?"Capture":"";mt(n,"main",[[e,"mousedown","mouseStart",`passive${i}`]])}Pe.has.touch===!0&&mt(n,"main",[[e,"touchstart","touchStart",`passive${o.capture===!0?"Capture":""}`],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){let o=e.__qtouchpan;o!==void 0&&(t.oldValue!==t.value&&(typeof value!="function"&&o.end(),o.handler=t.value),o.direction=pr(t.modifiers))},beforeUnmount(e){let t=e.__qtouchpan;t!==void 0&&(t.event!==void 0&&t.end(),qt(t,"main"),qt(t,"temp"),Pe.is.firefox===!0&&Wo(e,!1),t.styleCleanup!==void 0&&t.styleCleanup(),delete e.__qtouchpan)}});var Ks="q-slider__marker-labels",Sg=e=>({value:e}),xg=({marker:e})=>l("div",{key:e.value,style:e.style,class:e.classes},e.label),ii=[34,37,40,33,39,38],la={...Se,...kt,min:{type:Number,default:0},max:{type:Number,default:100},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},snap:Boolean,vertical:Boolean,reverse:Boolean,color:String,markerLabelsClass:String,label:Boolean,labelColor:String,labelTextColor:String,labelAlways:Boolean,switchLabelSide:Boolean,markers:[Boolean,Number],markerLabels:[Boolean,Array,Object,Function],switchMarkerLabelsSide:Boolean,trackImg:String,trackColor:String,innerTrackImg:String,innerTrackColor:String,selectionColor:String,selectionImg:String,thumbSize:{type:String,default:"20px"},trackSize:{type:String,default:"4px"},disable:Boolean,readonly:Boolean,dense:Boolean,tabindex:[String,Number],thumbColor:String,thumbPath:{type:String,default:"M 4, 10 a 6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"}},ua=["pan","update:modelValue","change"];function sa({updateValue:e,updatePosition:t,getDragging:o,formAttrs:r}){let{props:n,emit:i,slots:a,proxy:{$q:u}}=K(),c=xe(n,u),f=Xt(r),d=q(!1),h=q(!1),g=q(!1),m=q(!1),v=s(()=>n.vertical===!0?"--v":"--h"),x=s(()=>"-"+(n.switchLabelSide===!0?"switched":"standard")),y=s(()=>n.vertical===!0?n.reverse===!0:n.reverse!==(u.lang.rtl===!0)),k=s(()=>isNaN(n.innerMin)===!0||n.innerMinisNaN(n.innerMax)===!0||n.innerMax>n.max?n.max:n.innerMax),b=s(()=>n.disable!==!0&&n.readonly!==!0&&k.value{if(n.step===0)return se=>se;let J=(String(n.step).trim().split(".")[1]||"").length;return se=>parseFloat(se.toFixed(J))}),C=s(()=>n.step===0?1:n.step),$=s(()=>b.value===!0?n.tabindex||0:-1),L=s(()=>n.max-n.min),D=s(()=>S.value-k.value),B=s(()=>qe(k.value)),E=s(()=>qe(S.value)),V=s(()=>n.vertical===!0?y.value===!0?"bottom":"top":y.value===!0?"right":"left"),M=s(()=>n.vertical===!0?"height":"width"),T=s(()=>n.vertical===!0?"width":"height"),_=s(()=>n.vertical===!0?"vertical":"horizontal"),F=s(()=>{let J={role:"slider","aria-valuemin":k.value,"aria-valuemax":S.value,"aria-orientation":_.value,"data-step":n.step};return n.disable===!0?J["aria-disabled"]="true":n.readonly===!0&&(J["aria-readonly"]="true"),J}),I=s(()=>`q-slider q-slider${v.value} q-slider--${d.value===!0?"":"in"}active inline no-wrap `+(n.vertical===!0?"row":"column")+(n.disable===!0?" disabled":" q-slider--enabled"+(b.value===!0?" q-slider--editable":""))+(g.value==="both"?" q-slider--focus":"")+(n.label||n.labelAlways===!0?" q-slider--label":"")+(n.labelAlways===!0?" q-slider--label-always":"")+(c.value===!0?" q-slider--dark":"")+(n.dense===!0?" q-slider--dense q-slider--dense"+v.value:""));function j(J){let se="q-slider__"+J;return`${se} ${se}${v.value} ${se}${v.value}${x.value}`}function W(J){let se="q-slider__"+J;return`${se} ${se}${v.value}`}let ee=s(()=>{let J=n.selectionColor||n.color;return"q-slider__selection absolute"+(J!==void 0?` text-${J}`:"")}),fe=s(()=>W("markers")+" absolute overflow-hidden"),H=s(()=>W("track-container")),w=s(()=>j("pin")),X=s(()=>j("label")),U=s(()=>j("text-container")),le=s(()=>j("marker-labels-container")+(n.markerLabelsClass!==void 0?` ${n.markerLabelsClass}`:"")),R=s(()=>"q-slider__track relative-position no-outline"+(n.trackColor!==void 0?` bg-${n.trackColor}`:"")),z=s(()=>{let J={[T.value]:n.trackSize};return n.trackImg!==void 0&&(J.backgroundImage=`url(${n.trackImg}) !important`),J}),ae=s(()=>"q-slider__inner absolute"+(n.innerTrackColor!==void 0?` bg-${n.innerTrackColor}`:"")),Q=s(()=>{let J=E.value-B.value,se={[V.value]:`${100*B.value}%`,[M.value]:J===0?"2px":`${100*J}%`};return n.innerTrackImg!==void 0&&(se.backgroundImage=`url(${n.innerTrackImg}) !important`),se});function me(J){let{min:se,max:Ce,step:Ke}=n,we=se+J*(Ce-se);if(Ke>0){let et=(we-k.value)%Ke;we+=(Math.abs(et)>=Ke/2?(et<0?-1:1)*Ke:0)-et}return we=p.value(we),Je(we,k.value,S.value)}function qe(J){return L.value===0?0:(J-n.min)/L.value}function G(J,se){let Ce=_t(J),Ke=n.vertical===!0?Je((Ce.top-se.top)/se.height,0,1):Je((Ce.left-se.left)/se.width,0,1);return Je(y.value===!0?1-Ke:Ke,B.value,E.value)}let ce=s(()=>fo(n.markers)===!0?n.markers:C.value),ge=s(()=>{let J=[],se=ce.value,Ce=n.max,Ke=n.min;do J.push(Ke),Ke+=se;while(Ke{let J=` ${Ks}${v.value}-`;return Ks+`${J}${n.switchMarkerLabelsSide===!0?"switched":"standard"}${J}${y.value===!0?"rtl":"ltr"}`}),Be=s(()=>n.markerLabels===!1?null:He(n.markerLabels).map((J,se)=>({index:se,value:J.value,label:J.label||J.value,classes:_e.value+(J.classes!==void 0?" "+J.classes:""),style:{...Qe(J.value),...J.style||{}}}))),de=s(()=>({markerList:Be.value,markerMap:ot.value,classes:_e.value,getStyle:Qe})),Le=s(()=>{let J=D.value===0?"2px":100*ce.value/D.value;return{...Q.value,backgroundSize:n.vertical===!0?`2px ${J}%`:`${J}% 2px`}});function He(J){if(J===!1)return null;if(J===!0)return ge.value.map(Sg);if(typeof J=="function")return ge.value.map(Ce=>{let Ke=J(Ce);return ct(Ke)===!0?{...Ke,value:Ce}:{value:Ce,label:Ke}});let se=({value:Ce})=>Ce>=n.min&&Ce<=n.max;return Array.isArray(J)===!0?J.map(Ce=>ct(Ce)===!0?Ce:{value:Ce}).filter(se):Object.keys(J).map(Ce=>{let Ke=J[Ce],we=Number(Ce);return ct(Ke)===!0?{...Ke,value:we}:{value:we,label:Ke}}).filter(se)}function Qe(J){return{[V.value]:`${100*(J-n.min)/L.value}%`}}let ot=s(()=>{if(n.markerLabels===!1)return null;let J={};return Be.value.forEach(se=>{J[se.value]=se}),J});function ie(){if(a["marker-label-group"]!==void 0)return a["marker-label-group"](de.value);let J=a["marker-label"]||xg;return Be.value.map(se=>J({marker:se,...de.value}))}let Z=s(()=>[[Rt,ve,void 0,{[_.value]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function ve(J){J.isFinal===!0?(m.value!==void 0&&(t(J.evt),J.touch===!0&&e(!0),m.value=void 0,i("pan","end")),d.value=!1,g.value=!1):J.isFirst===!0?(m.value=o(J.evt),t(J.evt),e(),d.value=!0,i("pan","start")):(t(J.evt),e())}function Fe(){g.value=!1}function Ie(J){t(J,o(J)),e(),h.value=!0,d.value=!0,document.addEventListener("mouseup",Ve,!0)}function Ve(){h.value=!1,d.value=!1,e(!0),Fe(),document.removeEventListener("mouseup",Ve,!0)}function Oe(J){t(J,o(J)),e(!0)}function lt(J){ii.includes(J.keyCode)&&e(!0)}function ut(J){if(n.vertical===!0)return null;let se=u.lang.rtl!==n.reverse?1-J:J;return{transform:`translateX(calc(${2*se-1} * ${n.thumbSize} / 2 + ${50-100*se}%))`}}function oe(J){let se=s(()=>h.value===!1&&(g.value===J.focusValue||g.value==="both")?" q-slider--focus":""),Ce=s(()=>`q-slider__thumb q-slider__thumb${v.value} q-slider__thumb${v.value}-${y.value===!0?"rtl":"ltr"} absolute non-selectable`+se.value+(J.thumbColor.value!==void 0?` text-${J.thumbColor.value}`:"")),Ke=s(()=>({width:n.thumbSize,height:n.thumbSize,[V.value]:`${100*J.ratio.value}%`,zIndex:g.value===J.focusValue?2:void 0})),we=s(()=>J.labelColor.value!==void 0?` text-${J.labelColor.value}`:""),et=s(()=>ut(J.ratio.value)),pt=s(()=>"q-slider__text"+(J.labelTextColor.value!==void 0?` text-${J.labelTextColor.value}`:""));return()=>{let yt=[l("svg",{class:"q-slider__thumb-shape absolute-full",viewBox:"0 0 20 20","aria-hidden":"true"},[l("path",{d:n.thumbPath})]),l("div",{class:"q-slider__focus-ring fit"})];return(n.label===!0||n.labelAlways===!0)&&(yt.push(l("div",{class:w.value+" absolute fit no-pointer-events"+we.value},[l("div",{class:X.value,style:{minWidth:n.thumbSize}},[l("div",{class:U.value,style:et.value},[l("span",{class:pt.value},J.label.value)])])])),n.name!==void 0&&n.disable!==!0&&f(yt,"push")),l("div",{class:Ce.value,style:Ke.value,...J.getNodeData()},yt)}}function ue(J,se,Ce,Ke){let we=[];n.innerTrackColor!=="transparent"&&we.push(l("div",{key:"inner",class:ae.value,style:Q.value})),n.selectionColor!=="transparent"&&we.push(l("div",{key:"selection",class:ee.value,style:J.value})),n.markers!==!1&&we.push(l("div",{key:"marker",class:fe.value,style:Le.value})),Ke(we);let et=[Mt("div",{key:"trackC",class:H.value,tabindex:se.value,...Ce.value},[l("div",{class:R.value,style:z.value},we)],"slide",b.value,()=>Z.value)];if(n.markerLabels!==!1){let pt=n.switchMarkerLabelsSide===!0?"unshift":"push";et[pt](l("div",{key:"markerL",class:le.value},ie()))}return et}return ye(()=>{document.removeEventListener("mouseup",Ve,!0)}),{state:{active:d,focus:g,preventFocus:h,dragging:m,editable:b,classes:I,tabindex:$,attributes:F,roundValueFn:p,keyStep:C,trackLen:L,innerMin:k,innerMinRatio:B,innerMax:S,innerMaxRatio:E,positionProp:V,sizeProp:M,isReversed:y},methods:{onActivate:Ie,onMobileClick:Oe,onBlur:Fe,onKeyup:lt,getContent:ue,getThumbRenderFn:oe,convertRatioToModel:me,convertModelToRatio:qe,getDraggingRatio:G}}}var _g=()=>({}),Jo=A({name:"QSlider",props:{...la,modelValue:{required:!0,default:null,validator:e=>typeof e=="number"||e===null},labelValue:[String,Number]},emits:ua,setup(e,{emit:t}){let{proxy:{$q:o}}=K(),{state:r,methods:n}=sa({updateValue:v,updatePosition:y,getDragging:x,formAttrs:Vo(e)}),i=q(null),a=q(0),u=q(0);function c(){u.value=e.modelValue===null?r.innerMin.value:Je(e.modelValue,r.innerMin.value,r.innerMax.value)}Y(()=>`${e.modelValue}|${r.innerMin.value}|${r.innerMax.value}`,c),c();let f=s(()=>n.convertModelToRatio(u.value)),d=s(()=>r.active.value===!0?a.value:f.value),h=s(()=>{let b={[r.positionProp.value]:`${100*r.innerMinRatio.value}%`,[r.sizeProp.value]:`${100*(d.value-r.innerMinRatio.value)}%`};return e.selectionImg!==void 0&&(b.backgroundImage=`url(${e.selectionImg}) !important`),b}),g=n.getThumbRenderFn({focusValue:!0,getNodeData:_g,ratio:d,label:s(()=>e.labelValue!==void 0?e.labelValue:u.value),thumbColor:s(()=>e.thumbColor||e.color),labelColor:s(()=>e.labelColor),labelTextColor:s(()=>e.labelTextColor)}),m=s(()=>r.editable.value!==!0?{}:o.platform.is.mobile===!0?{onClick:n.onMobileClick}:{onMousedown:n.onActivate,onFocus:k,onBlur:n.onBlur,onKeydown:S,onKeyup:n.onKeyup});function v(b){u.value!==e.modelValue&&t("update:modelValue",u.value),b===!0&&t("change",u.value)}function x(){return i.value.getBoundingClientRect()}function y(b,p=r.dragging.value){let C=n.getDraggingRatio(b,p);u.value=n.convertRatioToModel(C),a.value=e.snap!==!0||e.step===0?C:n.convertModelToRatio(u.value)}function k(){r.focus.value=!0}function S(b){if(!ii.includes(b.keyCode))return;ke(b);let p=([34,33].includes(b.keyCode)?10:1)*r.keyStep.value,C=([34,37,40].includes(b.keyCode)?-1:1)*(r.isReversed.value===!0?-1:1)*(e.vertical===!0?-1:1)*p;u.value=Je(r.roundValueFn.value(u.value+C),r.innerMin.value,r.innerMax.value),v()}return()=>{let b=n.getContent(h,r.tabindex,m,p=>{p.push(g())});return l("div",{ref:i,class:r.classes.value+(e.modelValue===null?" q-slider--no-value":""),...r.attributes.value,"aria-valuenow":e.modelValue},b)}}});function Mr(){let e=q(!xt.value);return e.value===!1&&je(()=>{e.value=!0}),{isHydrated:e}}var Ys=typeof ResizeObserver<"u",Ws=Ys===!0?{}:{style:"display:block;position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1;",url:"about:blank"},oo=A({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(e,{emit:t}){let o=null,r,n={width:-1,height:-1};function i(c){c===!0||e.debounce===0||e.debounce==="0"?a():o===null&&(o=setTimeout(a,e.debounce))}function a(){if(o!==null&&(clearTimeout(o),o=null),r){let{offsetWidth:c,offsetHeight:f}=r;(c!==n.width||f!==n.height)&&(n={width:c,height:f},t("resize",n))}}let{proxy:u}=K();if(u.trigger=i,Ys===!0){let c,f=d=>{r=u.$el.parentNode,r?(c=new ResizeObserver(i),c.observe(r),a()):d!==!0&&Ee(()=>{f(!0)})};return je(()=>{f()}),ye(()=>{o!==null&&clearTimeout(o),c!==void 0&&(c.disconnect!==void 0?c.disconnect():r&&c.unobserve(r))}),Ye}else{let d=function(){o!==null&&(clearTimeout(o),o=null),f!==void 0&&(f.removeEventListener!==void 0&&f.removeEventListener("resize",i,Ze.passive),f=void 0)},h=function(){d(),r&&r.contentDocument&&(f=r.contentDocument.defaultView,f.addEventListener("resize",i,Ze.passive),a())},{isHydrated:c}=Mr(),f;return je(()=>{Ee(()=>{r=u.$el,r&&h()})}),ye(d),()=>{if(c.value===!0)return l("object",{class:"q--avoid-card-border",style:Ws.style,tabindex:-1,type:"text/html",data:Ws.url,"aria-hidden":"true",onLoad:h})}}}});var Pn=!1;{let e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});let t=document.createElement("div");Object.assign(t.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(t),e.scrollLeft=-1e3,Pn=e.scrollLeft>=0,e.remove()}function Cg(e,t,o){let r=o===!0?["left","right"]:["top","bottom"];return`absolute-${t===!0?r[0]:r[1]}${e?` text-${e}`:""}`}var wg=["left","center","right","justify"],ai=A({name:"QTabs",props:{modelValue:[Number,String],align:{type:String,default:"center",validator:e=>wg.includes(e)},breakpoint:{type:[String,Number],default:600},vertical:Boolean,shrink:Boolean,stretch:Boolean,activeClass:String,activeColor:String,activeBgColor:String,indicatorColor:String,leftIcon:String,rightIcon:String,outsideArrows:Boolean,mobileArrows:Boolean,switchIndicator:Boolean,narrowIndicator:Boolean,inlineLabel:Boolean,noCaps:Boolean,dense:Boolean,contentClass:String,"onUpdate:modelValue":[Function,Array]},setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,{registerTick:i}=yo(),{registerTick:a}=yo(),{registerTick:u}=yo(),{registerTimeout:c,removeTimeout:f}=Vt(),{registerTimeout:d,removeTimeout:h}=Vt(),g=q(null),m=q(null),v=q(e.modelValue),x=q(!1),y=q(!0),k=q(!1),S=q(!1),b=[],p=q(0),C=q(!1),$=null,L=null,D,B=s(()=>({activeClass:e.activeClass,activeColor:e.activeColor,activeBgColor:e.activeBgColor,indicatorClass:Cg(e.indicatorColor,e.switchIndicator,e.vertical),narrowIndicator:e.narrowIndicator,inlineLabel:e.inlineLabel,noCaps:e.noCaps})),E=s(()=>{let ie=p.value,Z=v.value;for(let ve=0;ve`q-tabs__content--align-${x.value===!0?"left":S.value===!0?"justify":e.align}`),M=s(()=>`q-tabs row no-wrap items-center q-tabs--${x.value===!0?"":"not-"}scrollable q-tabs--${e.vertical===!0?"vertical":"horizontal"} q-tabs__arrows--${e.outsideArrows===!0?"outside":"inside"} q-tabs--mobile-with${e.mobileArrows===!0?"":"out"}-arrows`+(e.dense===!0?" q-tabs--dense":"")+(e.shrink===!0?" col-shrink":"")+(e.stretch===!0?" self-stretch":"")),T=s(()=>"q-tabs__content scroll--mobile row no-wrap items-center self-stretch hide-scrollbar relative-position "+V.value+(e.contentClass!==void 0?` ${e.contentClass}`:"")),_=s(()=>e.vertical===!0?{container:"height",content:"offsetHeight",scroll:"scrollHeight"}:{container:"width",content:"offsetWidth",scroll:"scrollWidth"}),F=s(()=>e.vertical!==!0&&n.lang.rtl===!0),I=s(()=>Pn===!1&&F.value===!0);Y(F,w),Y(()=>e.modelValue,ie=>{j({name:ie,setCurrent:!0,skipEmit:!0})}),Y(()=>e.outsideArrows,W);function j({name:ie,setCurrent:Z,skipEmit:ve}){v.value!==ie&&(ve!==!0&&e["onUpdate:modelValue"]!==void 0&&o("update:modelValue",ie),(Z===!0||e["onUpdate:modelValue"]===void 0)&&(fe(v.value,ie),v.value=ie))}function W(){i(()=>{ee({width:g.value.offsetWidth,height:g.value.offsetHeight})})}function ee(ie){if(_.value===void 0||m.value===null)return;let Z=ie[_.value.container],ve=Math.min(m.value[_.value.scroll],Array.prototype.reduce.call(m.value.children,(Ie,Ve)=>Ie+(Ve[_.value.content]||0),0)),Fe=Z>0&&ve>Z;x.value=Fe,Fe===!0&&a(w),S.value=ZIe.name.value===ie):null,Fe=Z!=null&&Z!==""?b.find(Ie=>Ie.name.value===Z):null;if(ot===!0)ot=!1;else if(ve&&Fe){let Ie=ve.tabIndicatorRef.value,Ve=Fe.tabIndicatorRef.value;$!==null&&(clearTimeout($),$=null),Ie.style.transition="none",Ie.style.transform="none",Ve.style.transition="none",Ve.style.transform="none";let Oe=Ie.getBoundingClientRect(),lt=Ve.getBoundingClientRect();Ve.style.transform=e.vertical===!0?`translate3d(0,${Oe.top-lt.top}px,0) scale3d(1,${lt.height?Oe.height/lt.height:1},1)`:`translate3d(${Oe.left-lt.left}px,0,0) scale3d(${lt.width?Oe.width/lt.width:1},1,1)`,u(()=>{$=setTimeout(()=>{$=null,Ve.style.transition="transform .25s cubic-bezier(.4, 0, .2, 1)",Ve.style.transform="none"},70)})}Fe&&x.value===!0&&H(Fe.rootRef.value)}function H(ie){let{left:Z,width:ve,top:Fe,height:Ie}=m.value.getBoundingClientRect(),Ve=ie.getBoundingClientRect(),Oe=e.vertical===!0?Ve.top-Fe:Ve.left-Z;if(Oe<0){m.value[e.vertical===!0?"scrollTop":"scrollLeft"]+=Math.floor(Oe),w();return}Oe+=e.vertical===!0?Ve.height-Ie:Ve.width-ve,Oe>0&&(m.value[e.vertical===!0?"scrollTop":"scrollLeft"]+=Math.ceil(Oe),w())}function w(){let ie=m.value;if(ie===null)return;let Z=ie.getBoundingClientRect(),ve=e.vertical===!0?ie.scrollTop:Math.abs(ie.scrollLeft);F.value===!0?(y.value=Math.ceil(ve+Z.width)0):(y.value=ve>0,k.value=e.vertical===!0?Math.ceil(ve+Z.height){Q(ie)===!0&&R()},5)}function U(){X(I.value===!0?Number.MAX_SAFE_INTEGER:0)}function le(){X(I.value===!0?0:Number.MAX_SAFE_INTEGER)}function R(){L!==null&&(clearInterval(L),L=null)}function z(ie,Z){let ve=Array.prototype.filter.call(m.value.children,lt=>lt===Z||lt.matches&<.matches(".q-tab.q-focusable")===!0),Fe=ve.length;if(Fe===0)return;if(ie===36)return H(ve[0]),ve[0].focus(),!0;if(ie===35)return H(ve[Fe-1]),ve[Fe-1].focus(),!0;let Ie=ie===(e.vertical===!0?38:37),Ve=ie===(e.vertical===!0?40:39),Oe=Ie===!0?-1:Ve===!0?1:void 0;if(Oe!==void 0){let lt=F.value===!0?-1:1,ut=ve.indexOf(Z)+Oe*lt;return ut>=0&&utI.value===!0?{get:ie=>Math.abs(ie.scrollLeft),set:(ie,Z)=>{ie.scrollLeft=-Z}}:e.vertical===!0?{get:ie=>ie.scrollTop,set:(ie,Z)=>{ie.scrollTop=Z}}:{get:ie=>ie.scrollLeft,set:(ie,Z)=>{ie.scrollLeft=Z}});function Q(ie){let Z=m.value,{get:ve,set:Fe}=ae.value,Ie=!1,Ve=ve(Z),Oe=ie=ie)&&(Ie=!0,Ve=ie),Fe(Z,Ve),w(),Ie}function me(ie,Z){for(let ve in ie)if(ie[ve]!==Z[ve])return!1;return!0}function qe(){let ie=null,Z={matchedLen:0,queryDiff:9999,hrefLen:0},ve=b.filter(Oe=>Oe.routeData!==void 0&&Oe.routeData.hasRouterLink.value===!0),{hash:Fe,query:Ie}=r.$route,Ve=Object.keys(Ie).length;for(let Oe of ve){let lt=Oe.routeData.exact.value===!0;if(Oe.routeData[lt===!0?"linkIsExactActive":"linkIsActive"].value!==!0)continue;let{hash:ut,query:oe,matched:ue,href:J}=Oe.routeData.resolvedLink.value,se=Object.keys(oe).length;if(lt===!0){if(ut!==Fe||se!==Ve||me(Ie,oe)===!1)continue;ie=Oe.name.value;break}if(ut!==""&&ut!==Fe||se!==0&&me(oe,Ie)===!1)continue;let Ce={matchedLen:ue.length,queryDiff:Ve-se,hrefLen:J.length-ut.length};if(Ce.matchedLen>Z.matchedLen){ie=Oe.name.value,Z=Ce;continue}else if(Ce.matchedLen!==Z.matchedLen)continue;if(Ce.queryDiffZ.hrefLen&&(ie=Oe.name.value,Z=Ce)}if(ie===null&&b.some(Oe=>Oe.routeData===void 0&&Oe.name.value===v.value)===!0){ot=!1;return}j({name:ie,setCurrent:!0})}function G(ie){if(f(),C.value!==!0&&g.value!==null&&ie.target&&typeof ie.target.closest=="function"){let Z=ie.target.closest(".q-tab");Z&&g.value.contains(Z)===!0&&(C.value=!0,x.value===!0&&H(Z))}}function ce(){c(()=>{C.value=!1},30)}function ge(){Le.avoidRouteWatcher===!1?d(qe):h()}function _e(){if(D===void 0){let ie=Y(()=>r.$route.fullPath,ge);D=()=>{ie(),D=void 0}}}function Be(ie){b.push(ie),p.value++,W(),ie.routeData===void 0||r.$route===void 0?d(()=>{if(x.value===!0){let Z=v.value,ve=Z!=null&&Z!==""?b.find(Fe=>Fe.name.value===Z):null;ve&&H(ve.rootRef.value)}}):(_e(),ie.routeData.hasRouterLink.value===!0&&ge())}function de(ie){b.splice(b.indexOf(ie),1),p.value--,W(),D!==void 0&&ie.routeData!==void 0&&(b.every(Z=>Z.routeData===void 0)===!0&&D(),ge())}let Le={currentModel:v,tabProps:B,hasFocus:C,hasActiveTab:E,registerTab:Be,unregisterTab:de,verifyRouteModel:ge,updateModel:j,onKbdNavigate:z,avoidRouteWatcher:!1};jt(Bi,Le);function He(){$!==null&&clearTimeout($),R(),D!==void 0&&D()}let Qe,ot;return ye(He),Pt(()=>{Qe=D!==void 0,He()}),Nt(()=>{Qe===!0&&(_e(),ot=!0,ge()),W()}),()=>l("div",{ref:g,class:M.value,role:"tablist",onFocusin:G,onFocusout:ce},[l(oo,{onResize:ee}),l("div",{ref:m,class:T.value,onScroll:w},re(t.default)),l(Re,{class:"q-tabs__arrow q-tabs__arrow--left absolute q-tab__icon"+(y.value===!0?"":" q-tabs__arrow--faded"),name:e.leftIcon||n.iconSet.tabs[e.vertical===!0?"up":"left"],onMousedownPassive:U,onTouchstartPassive:U,onMouseupPassive:R,onMouseleavePassive:R,onTouchendPassive:R}),l(Re,{class:"q-tabs__arrow q-tabs__arrow--right absolute q-tab__icon"+(k.value===!0?"":" q-tabs__arrow--faded"),name:e.rightIcon||n.iconSet.tabs[e.vertical===!0?"down":"right"],onMousedownPassive:le,onTouchstartPassive:le,onMouseupPassive:R,onMouseleavePassive:R,onTouchendPassive:R})])}});var kg=0,ca=["click","keydown"],da={icon:String,label:[Number,String],alert:[Boolean,String],alertIcon:String,name:{type:[Number,String],default:()=>`t_${kg++}`},noCaps:Boolean,tabindex:[String,Number],disable:Boolean,contentClass:String,ripple:{type:[Boolean,Object],default:!0}};function fa(e,t,o,r){let n=ht(Bi,Ge);if(n===Ge)return console.error("QTab/QRouteTab component needs to be child of QTabs"),Ge;let{proxy:i}=K(),a=q(null),u=q(null),c=q(null),f=s(()=>e.disable===!0||e.ripple===!1?!1:Object.assign({keyCodes:[13,32],early:!0},e.ripple===!0?{}:e.ripple)),d=s(()=>n.currentModel.value===e.name),h=s(()=>"q-tab relative-position self-stretch flex flex-center text-center"+(d.value===!0?" q-tab--active"+(n.tabProps.value.activeClass?" "+n.tabProps.value.activeClass:"")+(n.tabProps.value.activeColor?` text-${n.tabProps.value.activeColor}`:"")+(n.tabProps.value.activeBgColor?` bg-${n.tabProps.value.activeBgColor}`:""):" q-tab--inactive")+(e.icon&&e.label&&n.tabProps.value.inlineLabel===!1?" q-tab--full":"")+(e.noCaps===!0||n.tabProps.value.noCaps===!0?" q-tab--no-caps":"")+(e.disable===!0?" disabled":" q-focusable q-hoverable cursor-pointer")+(r!==void 0?r.linkClass.value:"")),g=s(()=>"q-tab__content self-stretch flex-center relative-position q-anchor--skip non-selectable "+(n.tabProps.value.inlineLabel===!0?"row no-wrap q-tab__content--inline":"column")+(e.contentClass!==void 0?` ${e.contentClass}`:"")),m=s(()=>e.disable===!0||n.hasFocus.value===!0||d.value===!1&&n.hasActiveTab.value===!0?-1:e.tabindex||0);function v(b,p){if(p!==!0&&a.value!==null&&a.value.focus(),e.disable===!0){r!==void 0&&r.hasRouterLink.value===!0&&ke(b);return}if(r===void 0){n.updateModel({name:e.name}),o("click",b);return}if(r.hasRouterLink.value===!0){let C=($={})=>{let L,D=$.to===void 0||Wt($.to,e.to)===!0?n.avoidRouteWatcher=Fo():null;return r.navigateToRouterLink(b,{...$,returnRouterError:!0}).catch(B=>{L=B}).then(B=>{if(D===n.avoidRouteWatcher&&(n.avoidRouteWatcher=!1,L===void 0&&(B===void 0||B.message!==void 0&&B.message.startsWith("Avoided redundant navigation")===!0)&&n.updateModel({name:e.name})),$.returnRouterError===!0)return L!==void 0?Promise.reject(L):B})};o("click",b,C),b.defaultPrevented!==!0&&C();return}o("click",b)}function x(b){Tt(b,[13,32])?v(b,!0):io(b)!==!0&&b.keyCode>=35&&b.keyCode<=40&&b.altKey!==!0&&b.metaKey!==!0&&n.onKbdNavigate(b.keyCode,i.$el)===!0&&ke(b),o("keydown",b)}function y(){let b=n.tabProps.value.narrowIndicator,p=[],C=l("div",{ref:c,class:["q-tab__indicator",n.tabProps.value.indicatorClass]});e.icon!==void 0&&p.push(l(Re,{class:"q-tab__icon",name:e.icon})),e.label!==void 0&&p.push(l("div",{class:"q-tab__label"},e.label)),e.alert!==!1&&p.push(e.alertIcon!==void 0?l(Re,{class:"q-tab__alert-icon",color:e.alert!==!0?e.alert:void 0,name:e.alertIcon}):l("div",{class:"q-tab__alert"+(e.alert!==!0?` text-${e.alert}`:"")})),b===!0&&p.push(C);let $=[l("div",{class:"q-focus-helper",tabindex:-1,ref:a}),l("div",{class:g.value},Xe(t.default,p))];return b===!1&&$.push(C),$}let k={name:s(()=>e.name),rootRef:u,tabIndicatorRef:c,routeData:r};ye(()=>{n.unregisterTab(k)}),je(()=>{n.registerTab(k)});function S(b,p){let C={ref:u,class:h.value,tabindex:m.value,role:"tab","aria-selected":d.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:v,onKeydown:x,...p};return Et(l(b,C,y()),[[$o,f.value]])}return{renderTab:S,$tabs:n}}var cn=A({name:"QTab",props:da,emits:ca,setup(e,{slots:t,emit:o}){let{renderTab:r}=fa(e,t,o);return()=>r("div")}});var ma=A({name:"QTabPanels",props:{...Sr,...Se},emits:xr,setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),{updatePanelsList:n,getPanelContent:i,panelDirectives:a}=_r(),u=s(()=>"q-tab-panels q-panel-parent"+(r.value===!0?" q-tab-panels--dark q-dark":""));return()=>(n(t),Mt("div",{class:u.value},i(),"pan",e.swipeable,()=>a.value))}});var Rr=A({name:"QTabPanel",props:yr,setup(e,{slots:t}){return()=>l("div",{class:"q-tab-panel",role:"tabpanel"},re(t.default))}});var Xs=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,Gs=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,Zs=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,va=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,ga=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,An={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>Xs.test(e),hexaColor:e=>Gs.test(e),hexOrHexaColor:e=>Zs.test(e),rgbColor:e=>va.test(e),rgbaColor:e=>ga.test(e),rgbOrRgbaColor:e=>va.test(e)||ga.test(e),hexOrRgbColor:e=>Xs.test(e)||va.test(e),hexaOrRgbaColor:e=>Gs.test(e)||ga.test(e),anyColor:e=>Zs.test(e)||va.test(e)||ga.test(e)},Js={testPattern:An};var qg=/^rgb(a)?\((\d{1,3}),(\d{1,3}),(\d{1,3}),?([01]?\.?\d*?)?\)$/;function $n({r:e,g:t,b:o,a:r}){let n=r!==void 0;if(e=Math.round(e),t=Math.round(t),o=Math.round(o),e>255||t>255||o>255||n&&r>100)throw new TypeError("Expected 3 numbers below 256 (and optionally one below 100)");return r=n?(Math.round(255*r/100)|256).toString(16).slice(1):"","#"+(o|t<<8|e<<16|1<<24).toString(16).slice(1)+r}function Kl({r:e,g:t,b:o,a:r}){return`rgb${r!==void 0?"a":""}(${e},${t},${o}${r!==void 0?","+r/100:""})`}function ha(e){if(typeof e!="string")throw new TypeError("Expected a string");e=e.replace(/^#/,""),e.length===3?e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]:e.length===4&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);let t=parseInt(e,16);return e.length>6?{r:t>>24&255,g:t>>16&255,b:t>>8&255,a:Math.round((t&255)/2.55)}:{r:t>>16,g:t>>8&255,b:t&255}}function pa({h:e,s:t,v:o,a:r}){let n,i,a;t=t/100,o=o/100,e=e/360;let u=Math.floor(e*6),c=e*6-u,f=o*(1-t),d=o*(1-c*t),h=o*(1-(1-c)*t);switch(u%6){case 0:n=o,i=h,a=f;break;case 1:n=d,i=o,a=f;break;case 2:n=f,i=o,a=h;break;case 3:n=f,i=d,a=o;break;case 4:n=h,i=f,a=o;break;case 5:n=o,i=f,a=d;break}return{r:Math.round(n*255),g:Math.round(i*255),b:Math.round(a*255),a:r}}function li({r:e,g:t,b:o,a:r}){let n=Math.max(e,t,o),i=Math.min(e,t,o),a=n-i,u=n===0?0:a/n,c=n/255,f;switch(n){case i:f=0;break;case e:f=t-o+a*(t1)throw new TypeError("Expected offset to be between -1 and 1");let{r:o,g:r,b:n,a:i}=Oo(e),a=i!==void 0?i/100:0;return $n({r:o,g:r,b:n,a:Math.round(Math.min(1,Math.max(0,a+t))*100)})}function Ag(e){if(typeof e!="string")throw new TypeError("Expected a string as color");let t=document.createElement("div");t.className=`text-${e} invisible fixed no-pointer-events`,document.body.appendChild(t);let o=getComputedStyle(t).getPropertyValue("color");return t.remove(),$n(Oo(o))}var ec={rgbToHex:$n,hexToRgb:ha,hsvToRgb:pa,rgbToHsv:li,textToRgb:Oo,lighten:Tg,luminosity:Wl,brightness:Mg,blend:Rg,changeAlpha:Pg,getPaletteColor:Ag};var $g=["rgb(255,204,204)","rgb(255,230,204)","rgb(255,255,204)","rgb(204,255,204)","rgb(204,255,230)","rgb(204,255,255)","rgb(204,230,255)","rgb(204,204,255)","rgb(230,204,255)","rgb(255,204,255)","rgb(255,153,153)","rgb(255,204,153)","rgb(255,255,153)","rgb(153,255,153)","rgb(153,255,204)","rgb(153,255,255)","rgb(153,204,255)","rgb(153,153,255)","rgb(204,153,255)","rgb(255,153,255)","rgb(255,102,102)","rgb(255,179,102)","rgb(255,255,102)","rgb(102,255,102)","rgb(102,255,179)","rgb(102,255,255)","rgb(102,179,255)","rgb(102,102,255)","rgb(179,102,255)","rgb(255,102,255)","rgb(255,51,51)","rgb(255,153,51)","rgb(255,255,51)","rgb(51,255,51)","rgb(51,255,153)","rgb(51,255,255)","rgb(51,153,255)","rgb(51,51,255)","rgb(153,51,255)","rgb(255,51,255)","rgb(255,0,0)","rgb(255,128,0)","rgb(255,255,0)","rgb(0,255,0)","rgb(0,255,128)","rgb(0,255,255)","rgb(0,128,255)","rgb(0,0,255)","rgb(128,0,255)","rgb(255,0,255)","rgb(245,0,0)","rgb(245,123,0)","rgb(245,245,0)","rgb(0,245,0)","rgb(0,245,123)","rgb(0,245,245)","rgb(0,123,245)","rgb(0,0,245)","rgb(123,0,245)","rgb(245,0,245)","rgb(214,0,0)","rgb(214,108,0)","rgb(214,214,0)","rgb(0,214,0)","rgb(0,214,108)","rgb(0,214,214)","rgb(0,108,214)","rgb(0,0,214)","rgb(108,0,214)","rgb(214,0,214)","rgb(163,0,0)","rgb(163,82,0)","rgb(163,163,0)","rgb(0,163,0)","rgb(0,163,82)","rgb(0,163,163)","rgb(0,82,163)","rgb(0,0,163)","rgb(82,0,163)","rgb(163,0,163)","rgb(92,0,0)","rgb(92,46,0)","rgb(92,92,0)","rgb(0,92,0)","rgb(0,92,46)","rgb(0,92,92)","rgb(0,46,92)","rgb(0,0,92)","rgb(46,0,92)","rgb(92,0,92)","rgb(255,255,255)","rgb(205,205,205)","rgb(178,178,178)","rgb(153,153,153)","rgb(127,127,127)","rgb(102,102,102)","rgb(76,76,76)","rgb(51,51,51)","rgb(25,25,25)","rgb(0,0,0)"],tc="M5 5 h10 v10 h-10 v-10 z",Eg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==",oc=A({name:"QColor",props:{...Se,...kt,modelValue:String,defaultValue:String,defaultView:{type:String,default:"spectrum",validator:e=>["spectrum","tune","palette"].includes(e)},formatModel:{type:String,default:"auto",validator:e=>["auto","hex","rgb","hexa","rgba"].includes(e)},palette:Array,noHeader:Boolean,noHeaderTabs:Boolean,noFooter:Boolean,square:Boolean,flat:Boolean,bordered:Boolean,disable:Boolean,readonly:Boolean},emits:["update:modelValue","change"],setup(e,{emit:t}){let{proxy:o}=K(),{$q:r}=o,n=xe(e,r),{getCache:i}=So(),a=q(null),u=q(null),c=s(()=>e.formatModel==="auto"?null:e.formatModel.indexOf("hex")!==-1),f=s(()=>e.formatModel==="auto"?null:e.formatModel.indexOf("a")!==-1),d=q(e.formatModel==="auto"?e.modelValue===void 0||e.modelValue===null||e.modelValue===""||e.modelValue.startsWith("#")?"hex":"rgb":e.formatModel.startsWith("hex")?"hex":"rgb"),h=q(e.defaultView),g=q(M(e.modelValue||e.defaultValue)),m=s(()=>e.disable!==!0&&e.readonly!==!0),v=s(()=>e.modelValue===void 0||e.modelValue===null||e.modelValue===""||e.modelValue.startsWith("#")),x=s(()=>c.value!==null?c.value:v.value),y=s(()=>({type:"hidden",name:e.name,value:g.value[x.value===!0?"hex":"rgb"]})),k=Xt(y),S=s(()=>f.value!==null?f.value:g.value.a!==void 0),b=s(()=>({backgroundColor:g.value.rgb||"#000"})),p=s(()=>`q-color-picker__header-content q-color-picker__header-content--${(g.value.a!==void 0&&g.value.a<65?!0:Wl(g.value)>.4)?"light":"dark"}`),C=s(()=>({background:`hsl(${g.value.h},100%,50%)`})),$=s(()=>({top:`${100-g.value.v}%`,[r.lang.rtl===!0?"right":"left"]:`${g.value.s}%`})),L=s(()=>e.palette!==void 0&&e.palette.length!==0?e.palette:$g),D=s(()=>"q-color-picker"+(e.bordered===!0?" q-color-picker--bordered":"")+(e.square===!0?" q-color-picker--square no-border-radius":"")+(e.flat===!0?" q-color-picker--flat no-shadow":"")+(e.disable===!0?" disabled":"")+(n.value===!0?" q-color-picker--dark q-dark":"")),B=s(()=>e.disable===!0?{"aria-disabled":"true"}:{}),E=s(()=>[[Rt,ee,void 0,{prevent:!0,stop:!0,mouse:!0}]]);Y(()=>e.modelValue,G=>{let ce=M(G||e.defaultValue);ce.hex!==g.value.hex&&(g.value=ce)}),Y(()=>e.defaultValue,G=>{if(!e.modelValue&&G){let ce=M(G);ce.hex!==g.value.hex&&(g.value=ce)}});function V(G,ce){g.value.hex=$n(G),g.value.rgb=Kl(G),g.value.r=G.r,g.value.g=G.g,g.value.b=G.b,g.value.a=G.a;let ge=g.value[x.value===!0?"hex":"rgb"];t("update:modelValue",ge),ce===!0&&t("change",ge)}function M(G){let ce=f.value!==void 0?f.value:e.formatModel==="auto"?null:e.formatModel.indexOf("a")!==-1;if(typeof G!="string"||G.length===0||An.anyColor(G.replace(/ /g,""))!==!0)return{h:0,s:0,v:0,r:0,g:0,b:0,a:ce===!0?100:void 0,hex:void 0,rgb:void 0};let ge=Oo(G);return ce===!0&&ge.a===void 0&&(ge.a=100),ge.hex=$n(ge),ge.rgb=Kl(ge),Object.assign(ge,li(ge))}function T(G,ce,ge){let _e=a.value;if(_e===null)return;let Be=_e.clientWidth,de=_e.clientHeight,Le=_e.getBoundingClientRect(),He=Math.min(Be,Math.max(0,G-Le.left));r.lang.rtl===!0&&(He=Be-He);let Qe=Math.min(de,Math.max(0,ce-Le.top)),ot=Math.round(100*He/Be),ie=Math.round(100*Math.max(0,Math.min(1,-(Qe/de)+1))),Z=pa({h:g.value.h,s:ot,v:ie,a:S.value===!0?g.value.a:void 0});g.value.s=ot,g.value.v=ie,V(Z,ge)}function _(G,ce){let ge=Math.round(G),_e=pa({h:ge,s:g.value.s,v:g.value.v,a:S.value===!0?g.value.a:void 0});g.value.h=ge,V(_e,ce)}function F(G){_(G,!0)}function I(G,ce,ge,_e,Be){if(_e!==void 0&&at(_e),!/^[0-9]+$/.test(G)){Be===!0&&o.$forceUpdate();return}let de=Math.floor(Number(G));if(de<0||de>ge){Be===!0&&o.$forceUpdate();return}let Le={r:ce==="r"?de:g.value.r,g:ce==="g"?de:g.value.g,b:ce==="b"?de:g.value.b,a:S.value===!0?ce==="a"?de:g.value.a:void 0};if(ce!=="a"){let He=li(Le);g.value.h=He.h,g.value.s=He.s,g.value.v=He.v}if(V(Le,Be),_e!==void 0&&Be!==!0&&_e.target.selectionEnd!==void 0){let He=_e.target.selectionEnd;Ee(()=>{_e.target.setSelectionRange(He,He)})}}function j(G,ce){let ge,_e=G.target.value;if(at(G),d.value==="hex"){if(_e.length!==(S.value===!0?9:7)||!/^#[0-9A-Fa-f]+$/.test(_e))return!0;ge=ha(_e)}else{let de;if(_e.endsWith(")"))if(S.value!==!0&&_e.startsWith("rgb(")){if(de=_e.substring(4,_e.length-1).split(",").map(Le=>parseInt(Le,10)),de.length!==3||!/^rgb\([0-9]{1,3},[0-9]{1,3},[0-9]{1,3}\)$/.test(_e))return!0}else if(S.value===!0&&_e.startsWith("rgba(")){if(de=_e.substring(5,_e.length-1).split(","),de.length!==4||!/^rgba\([0-9]{1,3},[0-9]{1,3},[0-9]{1,3},(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/.test(_e))return!0;for(let He=0;He<3;He++){let Qe=parseInt(de[He],10);if(Qe<0||Qe>255)return!0;de[He]=Qe}let Le=parseFloat(de[3]);if(Le<0||Le>1)return!0;de[3]=Le}else return!0;else return!0;if(de[0]<0||de[0]>255||de[1]<0||de[1]>255||de[2]<0||de[2]>255||S.value===!0&&(de[3]<0||de[3]>1))return!0;ge={r:de[0],g:de[1],b:de[2],a:S.value===!0?de[3]*100:void 0}}let Be=li(ge);if(g.value.h=Be.h,g.value.s=Be.s,g.value.v=Be.v,V(ge,ce),ce!==!0){let de=G.target.selectionEnd;Ee(()=>{G.target.setSelectionRange(de,de)})}}function W(G){let ce=M(G),ge={r:ce.r,g:ce.g,b:ce.b,a:ce.a};ge.a===void 0&&(ge.a=g.value.a),g.value.h=ce.h,g.value.s=ce.s,g.value.v=ce.v,V(ge,!0)}function ee(G){G.isFinal?T(G.position.left,G.position.top,!0):fe(G)}let fe=Zn(G=>{T(G.position.left,G.position.top)},20);function H(G){T(G.pageX-window.pageXOffset,G.pageY-window.pageYOffset,!0)}function w(G){T(G.pageX-window.pageXOffset,G.pageY-window.pageYOffset)}function X(G){u.value!==null&&(u.value.$el.style.opacity=G?1:0)}function U(G){d.value=G}function le(){let G=[];return e.noHeaderTabs!==!0&&G.push(l(ai,{class:"q-color-picker__header-tabs",modelValue:d.value,dense:!0,align:"justify","onUpdate:modelValue":U},()=>[l(cn,{label:"HEX"+(S.value===!0?"A":""),name:"hex",ripple:!1}),l(cn,{label:"RGB"+(S.value===!0?"A":""),name:"rgb",ripple:!1})])),G.push(l("div",{class:"q-color-picker__header-banner row flex-center no-wrap"},[l("input",{class:"fit",value:g.value[d.value],...m.value!==!0?{readonly:!0}:{},...i("topIn",{onInput:ce=>{X(j(ce)===!0)},onChange:at,onBlur:ce=>{j(ce,!0)===!0&&o.$forceUpdate(),X(!1)}})}),l(Re,{ref:u,class:"q-color-picker__error-icon absolute no-pointer-events",name:r.iconSet.type.negative})])),l("div",{class:"q-color-picker__header relative-position overflow-hidden"},[l("div",{class:"q-color-picker__header-bg absolute-full"}),l("div",{class:p.value,style:b.value},G)])}function R(){return l(ma,{modelValue:h.value,animated:!0},()=>[l(Rr,{class:"q-color-picker__spectrum-tab overflow-hidden",name:"spectrum"},Q),l(Rr,{class:"q-pa-md q-color-picker__tune-tab",name:"tune"},me),l(Rr,{class:"q-color-picker__palette-tab",name:"palette"},qe)])}function z(G){h.value=G}function ae(){return l("div",{class:"q-color-picker__footer relative-position overflow-hidden"},[l(ai,{class:"absolute-full",modelValue:h.value,dense:!0,align:"justify","onUpdate:modelValue":z},()=>[l(cn,{icon:r.iconSet.colorPicker.spectrum,name:"spectrum",ripple:!1}),l(cn,{icon:r.iconSet.colorPicker.tune,name:"tune",ripple:!1}),l(cn,{icon:r.iconSet.colorPicker.palette,name:"palette",ripple:!1})])])}function Q(){let G={ref:a,class:"q-color-picker__spectrum non-selectable relative-position cursor-pointer"+(m.value!==!0?" readonly":""),style:C.value,...m.value===!0?{onClick:H,onMousedown:w}:{}},ce=[l("div",{style:{paddingBottom:"100%"}}),l("div",{class:"q-color-picker__spectrum-white absolute-full"}),l("div",{class:"q-color-picker__spectrum-black absolute-full"}),l("div",{class:"absolute",style:$.value},[g.value.hex!==void 0?l("div",{class:"q-color-picker__spectrum-circle"}):null])],ge=[l(Jo,{class:"q-color-picker__hue non-selectable",modelValue:g.value.h,min:0,max:360,trackSize:"8px",innerTrackColor:"transparent",selectionColor:"transparent",readonly:m.value!==!0,thumbPath:tc,"onUpdate:modelValue":_,onChange:F})];return S.value===!0&&ge.push(l(Jo,{class:"q-color-picker__alpha non-selectable",modelValue:g.value.a,min:0,max:100,trackSize:"8px",trackColor:"white",innerTrackColor:"transparent",selectionColor:"transparent",trackImg:Eg,readonly:m.value!==!0,hideSelection:!0,thumbPath:tc,...i("alphaSlide",{"onUpdate:modelValue":_e=>I(_e,"a",100),onChange:_e=>I(_e,"a",100,void 0,!0)})})),[Mt("div",G,ce,"spec",m.value,()=>E.value),l("div",{class:"q-color-picker__sliders"},ge)]}function me(){return[l("div",{class:"row items-center no-wrap"},[l("div","R"),l(Jo,{modelValue:g.value.r,min:0,max:255,color:"red",dark:n.value,readonly:m.value!==!0,...i("rSlide",{"onUpdate:modelValue":G=>I(G,"r",255),onChange:G=>I(G,"r",255,void 0,!0)})}),l("input",{value:g.value.r,maxlength:3,readonly:m.value!==!0,onChange:at,...i("rIn",{onInput:G=>I(G.target.value,"r",255,G),onBlur:G=>I(G.target.value,"r",255,G,!0)})})]),l("div",{class:"row items-center no-wrap"},[l("div","G"),l(Jo,{modelValue:g.value.g,min:0,max:255,color:"green",dark:n.value,readonly:m.value!==!0,...i("gSlide",{"onUpdate:modelValue":G=>I(G,"g",255),onChange:G=>I(G,"g",255,void 0,!0)})}),l("input",{value:g.value.g,maxlength:3,readonly:m.value!==!0,onChange:at,...i("gIn",{onInput:G=>I(G.target.value,"g",255,G),onBlur:G=>I(G.target.value,"g",255,G,!0)})})]),l("div",{class:"row items-center no-wrap"},[l("div","B"),l(Jo,{modelValue:g.value.b,min:0,max:255,color:"blue",readonly:m.value!==!0,dark:n.value,...i("bSlide",{"onUpdate:modelValue":G=>I(G,"b",255),onChange:G=>I(G,"b",255,void 0,!0)})}),l("input",{value:g.value.b,maxlength:3,readonly:m.value!==!0,onChange:at,...i("bIn",{onInput:G=>I(G.target.value,"b",255,G),onBlur:G=>I(G.target.value,"b",255,G,!0)})})]),S.value===!0?l("div",{class:"row items-center no-wrap"},[l("div","A"),l(Jo,{modelValue:g.value.a,color:"grey",readonly:m.value!==!0,dark:n.value,...i("aSlide",{"onUpdate:modelValue":G=>I(G,"a",100),onChange:G=>I(G,"a",100,void 0,!0)})}),l("input",{value:g.value.a,maxlength:3,readonly:m.value!==!0,onChange:at,...i("aIn",{onInput:G=>I(G.target.value,"a",100,G),onBlur:G=>I(G.target.value,"a",100,G,!0)})})]):null]}function qe(){let G=ce=>l("div",{class:"q-color-picker__cube col-auto",style:{backgroundColor:ce},...m.value===!0?i("palette#"+ce,{onClick:()=>{W(ce)}}):{}});return[l("div",{class:"row items-center q-color-picker__palette-rows"+(m.value===!0?" q-color-picker__palette-rows--editable":"")},L.value.map(G))]}return()=>{let G=[R()];return e.name!==void 0&&e.disable!==!0&&k(G,"push"),e.noHeader!==!0&&G.unshift(le()),e.noFooter!==!0&&G.push(ae()),l("div",{class:D.value,...B.value},G)}}});var dn=[-61,9,38,199,426,686,756,818,1111,1181,1210,1635,2060,2097,2192,2262,2324,2394,2456,3178];function nc(e,t,o){return Object.prototype.toString.call(e)==="[object Date]"&&(o=e.getDate(),t=e.getMonth()+1,e=e.getFullYear()),Dg(Xl(e,t,o))}function Yl(e,t,o){return ic(Fg(e,t,o))}function Bg(e){return Lg(e)===0}function Pr(e,t){return t<=6?31:t<=11||Bg(e)?30:29}function Lg(e){let t=dn.length,o=dn[0],r,n,i,a,u;if(e=dn[t-1])throw new Error("Invalid Jalaali year "+e);for(u=1;u=dn[o-1])throw new Error("Invalid Jalaali year "+e);for(d=1;d=0){if(i<=185)return n=1+Ct(i,31),r=ao(i,31)+1,{jy:o,jm:n,jd:r};i-=186}else o-=1,i+=179,a.leap===1&&(i+=1);return n=7+Ct(i,30),r=ao(i,30)+1,{jy:o,jm:n,jd:r}}function Xl(e,t,o){let r=Ct((e+Ct(t-8,6)+100100)*1461,4)+Ct(153*ao(t+9,12)+2,5)+o-34840408;return r=r-Ct(Ct(e+100100+Ct(t-8,6),100)*3,4)+752,r}function ic(e){let t=4*e+139361631;t=t+Ct(Ct(4*e+183187720,146097)*3,4)*4-3908;let o=Ct(ao(t,1461),4)*5+308,r=Ct(ao(o,153),5)+1,n=ao(Ct(o,153),12)+1;return{gy:Ct(t,1461)-100100+Ct(8-n,6),gm:n,gd:r}}function Ct(e,t){return~~(e/t)}function ao(e,t){return e-~~(e/t)*t}var Vg=["gregorian","persian"],Ar={mask:{type:String},locale:Object,calendar:{type:String,validator:e=>Vg.includes(e),default:"gregorian"},landscape:Boolean,color:String,textColor:String,square:Boolean,flat:Boolean,bordered:Boolean,readonly:Boolean,disable:Boolean},ba=["update:modelValue"];function _o(e){return e.year+"/"+nt(e.month)+"/"+nt(e.day)}function ya(e,t){let o=s(()=>e.disable!==!0&&e.readonly!==!0),r=s(()=>o.value===!0?0:-1),n=s(()=>{let u=[];return e.color!==void 0&&u.push(`bg-${e.color}`),e.textColor!==void 0&&u.push(`text-${e.textColor}`),u.join(" ")});function i(){return e.locale!==void 0?{...t.lang.date,...e.locale}:t.lang.date}function a(u){let c=new Date,f=u===!0?null:0;if(e.calendar==="persian"){let d=nc(c);return{year:d.jy,month:d.jm,day:d.jd}}return{year:c.getFullYear(),month:c.getMonth()+1,day:c.getDate(),hour:f,minute:f,second:f,millisecond:f}}return{editable:o,tabindex:r,headerClass:n,getLocale:i,getCurrentDate:a}}var uc=864e5,zg=36e5,Jl=6e4,sc="YYYY-MM-DDTHH:mm:ss.SSSZ",Og=/\[((?:[^\]\\]|\\]|\\)*)\]|do|d{1,4}|Mo|M{1,4}|m{1,2}|wo|w{1,2}|Qo|Do|DDDo|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]/g,Ig=/(\[[^\]]*\])|do|d{1,4}|Mo|M{1,4}|m{1,2}|wo|w{1,2}|Qo|Do|DDDo|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]|([.*+:?^,\s${}()|\\]+)/g,Gl={};function Hg(e,t){let o="("+t.days.join("|")+")",r=e+o;if(Gl[r]!==void 0)return Gl[r];let n="("+t.daysShort.join("|")+")",i="("+t.months.join("|")+")",a="("+t.monthsShort.join("|")+")",u={},c=0,f=e.replace(Ig,h=>{switch(c++,h){case"YY":return u.YY=c,"(-?\\d{1,2})";case"YYYY":return u.YYYY=c,"(-?\\d{1,4})";case"M":return u.M=c,"(\\d{1,2})";case"Mo":return u.M=c++,"(\\d{1,2}(st|nd|rd|th))";case"MM":return u.M=c,"(\\d{2})";case"MMM":return u.MMM=c,a;case"MMMM":return u.MMMM=c,i;case"D":return u.D=c,"(\\d{1,2})";case"Do":return u.D=c++,"(\\d{1,2}(st|nd|rd|th))";case"DD":return u.D=c,"(\\d{2})";case"H":return u.H=c,"(\\d{1,2})";case"HH":return u.H=c,"(\\d{2})";case"h":return u.h=c,"(\\d{1,2})";case"hh":return u.h=c,"(\\d{2})";case"m":return u.m=c,"(\\d{1,2})";case"mm":return u.m=c,"(\\d{2})";case"s":return u.s=c,"(\\d{1,2})";case"ss":return u.s=c,"(\\d{2})";case"S":return u.S=c,"(\\d{1})";case"SS":return u.S=c,"(\\d{2})";case"SSS":return u.S=c,"(\\d{3})";case"A":return u.A=c,"(AM|PM)";case"a":return u.a=c,"(am|pm)";case"aa":return u.aa=c,"(a\\.m\\.|p\\.m\\.)";case"ddd":return n;case"dddd":return o;case"Q":case"d":case"E":return"(\\d{1})";case"do":return c++,"(\\d{1}(st|nd|rd|th))";case"Qo":return"(1st|2nd|3rd|4th)";case"DDD":case"DDDD":return"(\\d{1,3})";case"DDDo":return c++,"(\\d{1,3}(st|nd|rd|th))";case"w":return"(\\d{1,2})";case"wo":return c++,"(\\d{1,2}(st|nd|rd|th))";case"ww":return"(\\d{2})";case"Z":return u.Z=c,"(Z|[+-]\\d{2}:\\d{2})";case"ZZ":return u.ZZ=c,"(Z|[+-]\\d{2}\\d{2})";case"X":return u.X=c,"(-?\\d+)";case"x":return u.x=c,"(-?\\d{4,})";default:return c--,h[0]==="["&&(h=h.substring(1,h.length-1)),h.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}}),d={map:u,regex:new RegExp("^"+f)};return Gl[r]=d,d}function cc(e,t){return e!==void 0?e:t!==void 0?t.date:Yr.date}function ac(e,t=""){let o=e>0?"-":"+",r=Math.abs(e),n=Math.floor(r/60),i=r%60;return o+nt(n)+t+nt(i)}function Qg(e,t,o){let r=e.getFullYear(),n=e.getMonth(),i=e.getDate();return t.year!==void 0&&(r+=o*t.year,delete t.year),t.month!==void 0&&(n+=o*t.month,delete t.month),e.setDate(1),e.setMonth(2),e.setFullYear(r),e.setMonth(n),e.setDate(Math.min(i,tu(e))),t.date!==void 0&&(e.setDate(e.getDate()+o*t.date),delete t.date),e}function Ng(e,t,o){let r=t.year!==void 0?t.year:e[`get${o}FullYear`](),n=t.month!==void 0?t.month-1:e[`get${o}Month`](),i=new Date(r,n+1,0).getDate(),a=Math.min(i,t.date!==void 0?t.date:e[`get${o}Date`]());return e[`set${o}Date`](1),e[`set${o}Month`](2),e[`set${o}FullYear`](r),e[`set${o}Month`](n),e[`set${o}Date`](a),delete t.year,delete t.month,delete t.date,e}function eu(e,t,o){let r=dc(t),n=new Date(e),i=r.year!==void 0||r.month!==void 0||r.date!==void 0?Qg(n,r,o):n;for(let a in r){let u=Ml(a);i[`set${u}`](i[`get${u}`]()+o*r[a])}return i}function dc(e){let t={...e};return e.years!==void 0&&(t.year=e.years,delete t.years),e.months!==void 0&&(t.month=e.months,delete t.months),e.days!==void 0&&(t.date=e.days,delete t.days),e.day!==void 0&&(t.date=e.day,delete t.day),e.hour!==void 0&&(t.hours=e.hour,delete t.hour),e.minute!==void 0&&(t.minutes=e.minute,delete t.minute),e.second!==void 0&&(t.seconds=e.second,delete t.second),e.millisecond!==void 0&&(t.milliseconds=e.millisecond,delete t.millisecond),t}function fc(e,t,o){let r=dc(t),n=o===!0?"UTC":"",i=new Date(e),a=r.year!==void 0||r.month!==void 0||r.date!==void 0?Ng(i,r,n):i;for(let u in r){let c=u.charAt(0).toUpperCase()+u.slice(1);a[`set${n}${c}`](r[u])}return a}function jg(e,t,o){let r=fn(e,t,o),n=new Date(r.year,r.month===null?null:r.month-1,r.day===null?1:r.day,r.hour,r.minute,r.second,r.millisecond),i=n.getTimezoneOffset();return r.timezoneOffset===null||r.timezoneOffset===i?n:eu(n,{minutes:r.timezoneOffset-i},1)}function fn(e,t,o,r,n){let i={year:null,month:null,day:null,hour:null,minute:null,second:null,millisecond:null,timezoneOffset:null,dateHash:null,timeHash:null};if(n!==void 0&&Object.assign(i,n),e==null||e===""||typeof e!="string")return i;t===void 0&&(t=sc);let a=cc(o,Yo.props),u=a.months,c=a.monthsShort,{regex:f,map:d}=Hg(t,a),h=e.match(f);if(h===null)return i;let g="";if(d.X!==void 0||d.x!==void 0){let m=parseInt(h[d.X!==void 0?d.X:d.x],10);if(isNaN(m)===!0||m<0)return i;let v=new Date(m*(d.X!==void 0?1e3:1));i.year=v.getFullYear(),i.month=v.getMonth()+1,i.day=v.getDate(),i.hour=v.getHours(),i.minute=v.getMinutes(),i.second=v.getSeconds(),i.millisecond=v.getMilliseconds()}else{if(d.YYYY!==void 0)i.year=parseInt(h[d.YYYY],10);else if(d.YY!==void 0){let m=parseInt(h[d.YY],10);i.year=m<0?m:2e3+m}if(d.M!==void 0){if(i.month=parseInt(h[d.M],10),i.month<1||i.month>12)return i}else d.MMM!==void 0?i.month=c.indexOf(h[d.MMM])+1:d.MMMM!==void 0&&(i.month=u.indexOf(h[d.MMMM])+1);if(d.D!==void 0){if(i.day=parseInt(h[d.D],10),i.year===null||i.month===null||i.day<1)return i;let m=r!=="persian"?new Date(i.year,i.month,0).getDate():Pr(i.year,i.month);if(i.day>m)return i}d.H!==void 0?i.hour=parseInt(h[d.H],10)%24:d.h!==void 0&&(i.hour=parseInt(h[d.h],10)%12,(d.A&&h[d.A]==="PM"||d.a&&h[d.a]==="pm"||d.aa&&h[d.aa]==="p.m.")&&(i.hour+=12),i.hour=i.hour%24),d.m!==void 0&&(i.minute=parseInt(h[d.m],10)%60),d.s!==void 0&&(i.second=parseInt(h[d.s],10)%60),d.S!==void 0&&(i.millisecond=parseInt(h[d.S],10)*10**(3-h[d.S].length)),(d.Z!==void 0||d.ZZ!==void 0)&&(g=d.Z!==void 0?h[d.Z].replace(":",""):h[d.ZZ],i.timezoneOffset=(g[0]==="+"?-1:1)*(60*g.slice(1,3)+1*g.slice(3,5)))}return i.dateHash=nt(i.year,6)+"/"+nt(i.month)+"/"+nt(i.day),i.timeHash=nt(i.hour)+":"+nt(i.minute)+":"+nt(i.second)+g,i}function Ug(e){return typeof e=="number"?!0:isNaN(Date.parse(e))===!1}function Kg(e,t){return fc(new Date,e,t)}function Wg(e){let t=new Date(e).getDay();return t===0?7:t}function xa(e){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate());t.setDate(t.getDate()-(t.getDay()+6)%7+3);let o=new Date(t.getFullYear(),0,4);o.setDate(o.getDate()-(o.getDay()+6)%7+3);let r=t.getTimezoneOffset()-o.getTimezoneOffset();t.setHours(t.getHours()-r);let n=(t-o)/(uc*7);return 1+Math.floor(n)}function Yg(e){return e.getFullYear()*1e4+e.getMonth()*100+e.getDate()}function Zl(e,t){let o=new Date(e);return t===!0?Yg(o):o.getTime()}function Xg(e,t,o,r={}){let n=Zl(t,r.onlyDate),i=Zl(o,r.onlyDate),a=Zl(e,r.onlyDate);return(a>n||r.inclusiveFrom===!0&&a===n)&&(a{t=Math.max(t,new Date(o))}),t}function th(e){let t=new Date(e);return Array.prototype.slice.call(arguments,1).forEach(o=>{t=Math.min(t,new Date(o))}),t}function Sa(e,t,o){return(e.getTime()-e.getTimezoneOffset()*Jl-(t.getTime()-t.getTimezoneOffset()*Jl))/o}function Ca(e,t,o="days"){let r=new Date(e),n=new Date(t);switch(o){case"years":case"year":return r.getFullYear()-n.getFullYear();case"months":case"month":return(r.getFullYear()-n.getFullYear())*12+r.getMonth()-n.getMonth();case"days":case"day":case"date":return Sa(Io(r,"day"),Io(n,"day"),uc);case"hours":case"hour":return Sa(Io(r,"hour"),Io(n,"hour"),zg);case"minutes":case"minute":return Sa(Io(r,"minute"),Io(n,"minute"),Jl);case"seconds":case"second":return Sa(Io(r,"second"),Io(n,"second"),1e3)}}function _a(e){return Ca(e,Io(e,"year"),"days")+1}function oh(e){return Go(e)===!0?"date":typeof e=="number"?"number":"string"}function nh(e,t,o){let r=new Date(e);if(t){let n=new Date(t);if(rn)return n}return r}function rh(e,t,o){let r=new Date(e),n=new Date(t);if(o===void 0)return r.getTime()===n.getTime();switch(o){case"second":case"seconds":if(r.getSeconds()!==n.getSeconds())return!1;case"minute":case"minutes":if(r.getMinutes()!==n.getMinutes())return!1;case"hour":case"hours":if(r.getHours()!==n.getHours())return!1;case"day":case"days":case"date":if(r.getDate()!==n.getDate())return!1;case"month":case"months":if(r.getMonth()!==n.getMonth())return!1;case"year":case"years":if(r.getFullYear()!==n.getFullYear())return!1;break;default:throw new Error(`date isSameDate unknown unit ${o}`)}return!0}function tu(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function $r(e){if(e>=11&&e<=13)return`${e}th`;switch(e%10){case 1:return`${e}st`;case 2:return`${e}nd`;case 3:return`${e}rd`}return`${e}th`}var lc={YY(e,t,o){let r=this.YYYY(e,t,o)%100;return r>=0?nt(r):"-"+nt(Math.abs(r))},YYYY(e,t,o){return o??e.getFullYear()},M(e){return e.getMonth()+1},Mo(e){return $r(e.getMonth()+1)},MM(e){return nt(e.getMonth()+1)},MMM(e,t){return t.monthsShort[e.getMonth()]},MMMM(e,t){return t.months[e.getMonth()]},Q(e){return Math.ceil((e.getMonth()+1)/3)},Qo(e){return $r(this.Q(e))},D(e){return e.getDate()},Do(e){return $r(e.getDate())},DD(e){return nt(e.getDate())},DDD(e){return _a(e)},DDDo(e){return $r(_a(e))},DDDD(e){return nt(_a(e),3)},d(e){return e.getDay()},do(e){return $r(e.getDay())},dd(e,t){return t.days[e.getDay()].slice(0,2)},ddd(e,t){return t.daysShort[e.getDay()]},dddd(e,t){return t.days[e.getDay()]},E(e){return e.getDay()||7},w(e){return xa(e)},wo(e){return $r(xa(e))},ww(e){return nt(xa(e))},H(e){return e.getHours()},HH(e){return nt(e.getHours())},h(e){let t=e.getHours();return t===0?12:t>12?t%12:t},hh(e){return nt(this.h(e))},m(e){return e.getMinutes()},mm(e){return nt(e.getMinutes())},s(e){return e.getSeconds()},ss(e){return nt(e.getSeconds())},S(e){return Math.floor(e.getMilliseconds()/100)},SS(e){return nt(Math.floor(e.getMilliseconds()/10))},SSS(e){return nt(e.getMilliseconds(),3)},A(e){return e.getHours()<12?"AM":"PM"},a(e){return e.getHours()<12?"am":"pm"},aa(e){return e.getHours()<12?"a.m.":"p.m."},Z(e,t,o,r){let n=r??e.getTimezoneOffset();return ac(n,":")},ZZ(e,t,o,r){let n=r??e.getTimezoneOffset();return ac(n)},X(e){return Math.floor(e.getTime()/1e3)},x(e){return e.getTime()}};function ui(e,t,o,r,n){if(e!==0&&!e||e===1/0||e===-1/0)return;let i=new Date(e);if(isNaN(i))return;t===void 0&&(t=sc);let a=cc(o,Yo.props);return t.replace(Og,(u,c)=>u in lc?lc[u](i,a,r,n):c===void 0?u:c.split("\\]").join("]"))}function ih(e){return Go(e)===!0?new Date(e.getTime()):e}var mc={isValid:Ug,extractDate:jg,buildDate:Kg,getDayOfWeek:Wg,getWeekOfYear:xa,isBetweenDates:Xg,addToDate:Gg,subtractFromDate:Zg,adjustDate:fc,startOfDate:Io,endOfDate:Jg,getMaxDate:eh,getMinDate:th,getDateDiff:Ca,getDayOfYear:_a,inferDateFormat:oh,getDateBetween:nh,isSameDate:rh,daysInMonth:tu,formatDate:ui,clone:ih};var En=20,ah=["Calendar","Years","Months"],vc=e=>ah.includes(e),ou=e=>/^-?[\d]+\/[0-1]\d$/.test(e),Er=" \u2014 ";function mn(e){return e.year+"/"+nt(e.month)}var gc=A({name:"QDate",props:{...Ar,...kt,...Se,modelValue:{required:!0,validator:e=>typeof e=="string"||Array.isArray(e)===!0||Object(e)===e||e===null},multiple:Boolean,range:Boolean,title:String,subtitle:String,mask:{...Ar.mask,default:"YYYY/MM/DD"},defaultYearMonth:{type:String,validator:ou},yearsInMonthView:Boolean,events:[Array,Function],eventColor:[String,Function],emitImmediately:Boolean,options:[Array,Function],navigationMinYearMonth:{type:String,validator:ou},navigationMaxYearMonth:{type:String,validator:ou},noUnset:Boolean,firstDayOfWeek:[String,Number],todayBtn:Boolean,minimal:Boolean,defaultView:{type:String,default:"Calendar",validator:vc}},emits:[...ba,"rangeStart","rangeEnd","navigation"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,i=xe(e,n),{getCache:a}=So(),{tabindex:u,headerClass:c,getLocale:f,getCurrentDate:d}=ya(e,n),h,g=Vo(e),m=Xt(g),v=q(null),x=q(Oe()),y=q(f()),k=s(()=>Oe()),S=s(()=>f()),b=s(()=>d()),p=q(ut(x.value,y.value)),C=q(e.defaultView),$=s(()=>n.lang.rtl===!0?"right":"left"),L=q($.value),D=q($.value),B=p.value.year,E=q(B-B%En-(B<0?En:0)),V=q(null),M=s(()=>{let P=e.landscape===!0?"landscape":"portrait";return`q-date q-date--${P} q-date--${P}-${e.minimal===!0?"minimal":"standard"}`+(i.value===!0?" q-date--dark q-dark":"")+(e.bordered===!0?" q-date--bordered":"")+(e.square===!0?" q-date--square no-border-radius":"")+(e.flat===!0?" q-date--flat no-shadow":"")+(e.disable===!0?" disabled":e.readonly===!0?" q-date--readonly":"")}),T=s(()=>e.color||"primary"),_=s(()=>e.textColor||"white"),F=s(()=>e.emitImmediately===!0&&e.multiple!==!0&&e.range!==!0),I=s(()=>Array.isArray(e.modelValue)===!0?e.modelValue:e.modelValue!==null&&e.modelValue!==void 0?[e.modelValue]:[]),j=s(()=>I.value.filter(P=>typeof P=="string").map(P=>lt(P,x.value,y.value)).filter(P=>P.dateHash!==null&&P.day!==null&&P.month!==null&&P.year!==null)),W=s(()=>{let P=N=>lt(N,x.value,y.value);return I.value.filter(N=>ct(N)===!0&&N.from!==void 0&&N.to!==void 0).map(N=>({from:P(N.from),to:P(N.to)})).filter(N=>N.from.dateHash!==null&&N.to.dateHash!==null&&N.from.dateHashe.calendar!=="persian"?P=>new Date(P.year,P.month-1,P.day):P=>{let N=Yl(P.year,P.month,P.day);return new Date(N.gy,N.gm-1,N.gd)}),fe=s(()=>e.calendar==="persian"?_o:(P,N,te)=>ui(new Date(P.year,P.month-1,P.day,P.hour,P.minute,P.second,P.millisecond),N===void 0?x.value:N,te===void 0?y.value:te,P.year,P.timezoneOffset)),H=s(()=>j.value.length+W.value.reduce((P,N)=>P+1+Ca(ee.value(N.to),ee.value(N.from)),0)),w=s(()=>{if(e.title!==void 0&&e.title!==null&&e.title.length!==0)return e.title;if(V.value!==null){let te=V.value.init,he=ee.value(te);return y.value.daysShort[he.getDay()]+", "+y.value.monthsShort[te.month-1]+" "+te.day+Er+"?"}if(H.value===0)return Er;if(H.value>1)return`${H.value} ${y.value.pluralDay}`;let P=j.value[0],N=ee.value(P);return isNaN(N.valueOf())===!0?Er:y.value.headerTitle!==void 0?y.value.headerTitle(N,P):y.value.daysShort[N.getDay()]+", "+y.value.monthsShort[P.month-1]+" "+P.day}),X=s(()=>j.value.concat(W.value.map(N=>N.from)).sort((N,te)=>N.year-te.year||N.month-te.month)[0]),U=s(()=>j.value.concat(W.value.map(N=>N.to)).sort((N,te)=>te.year-N.year||te.month-N.month)[0]),le=s(()=>{if(e.subtitle!==void 0&&e.subtitle!==null&&e.subtitle.length!==0)return e.subtitle;if(H.value===0)return Er;if(H.value>1){let P=X.value,N=U.value,te=y.value.monthsShort;return te[P.month-1]+(P.year!==N.year?" "+P.year+Er+te[N.month-1]+" ":P.month!==N.month?Er+te[N.month-1]:"")+" "+N.year}return j.value[0].year}),R=s(()=>{let P=[n.iconSet.datetime.arrowLeft,n.iconSet.datetime.arrowRight];return n.lang.rtl===!0?P.reverse():P}),z=s(()=>e.firstDayOfWeek!==void 0?Number(e.firstDayOfWeek):y.value.firstDayOfWeek),ae=s(()=>{let P=y.value.daysShort,N=z.value;return N>0?P.slice(N,7).concat(P.slice(0,N)):P}),Q=s(()=>{let P=p.value;return e.calendar!=="persian"?new Date(P.year,P.month,0).getDate():Pr(P.year,P.month)}),me=s(()=>typeof e.eventColor=="function"?e.eventColor:()=>e.eventColor),qe=s(()=>{if(e.navigationMinYearMonth===void 0)return null;let P=e.navigationMinYearMonth.split("/");return{year:parseInt(P[0],10),month:parseInt(P[1],10)}}),G=s(()=>{if(e.navigationMaxYearMonth===void 0)return null;let P=e.navigationMaxYearMonth.split("/");return{year:parseInt(P[0],10),month:parseInt(P[1],10)}}),ce=s(()=>{let P={month:{prev:!0,next:!0},year:{prev:!0,next:!0}};return qe.value!==null&&qe.value.year>=p.value.year&&(P.year.prev=!1,qe.value.year===p.value.year&&qe.value.month>=p.value.month&&(P.month.prev=!1)),G.value!==null&&G.value.year<=p.value.year&&(P.year.next=!1,G.value.year===p.value.year&&G.value.month<=p.value.month&&(P.month.next=!1)),P}),ge=s(()=>{let P={};return j.value.forEach(N=>{let te=mn(N);P[te]===void 0&&(P[te]=[]),P[te].push(N.day)}),P}),_e=s(()=>{let P={};return W.value.forEach(N=>{let te=mn(N.from),he=mn(N.to);if(P[te]===void 0&&(P[te]=[]),P[te].push({from:N.from.day,to:te===he?N.to.day:void 0,range:N}),te12&&(Ne.year++,Ne.month=1)}}),P}),Be=s(()=>{if(V.value===null)return;let{init:P,initHash:N,final:te,finalHash:he}=V.value,[be,it]=N<=he?[P,te]:[te,P],$e=mn(be),Ne=mn(it);if($e!==de.value&&Ne!==de.value)return;let dt={};return $e===de.value?(dt.from=be.day,dt.includeFrom=!0):dt.from=1,Ne===de.value?(dt.to=it.day,dt.includeTo=!0):dt.to=Q.value,dt}),de=s(()=>mn(p.value)),Le=s(()=>{let P={};if(e.options===void 0){for(let te=1;te<=Q.value;te++)P[te]=!0;return P}let N=typeof e.options=="function"?e.options:te=>e.options.includes(te);for(let te=1;te<=Q.value;te++){let he=de.value+"/"+nt(te);P[te]=N(he)}return P}),He=s(()=>{let P={};if(e.events===void 0)for(let N=1;N<=Q.value;N++)P[N]=!1;else{let N=typeof e.events=="function"?e.events:te=>e.events.includes(te);for(let te=1;te<=Q.value;te++){let he=de.value+"/"+nt(te);P[te]=N(he)===!0&&me.value(he)}}return P}),Qe=s(()=>{let P,N,{year:te,month:he}=p.value;if(e.calendar!=="persian")P=new Date(te,he-1,1),N=new Date(te,he-1,0).getDate();else{let be=Yl(te,he,1);P=new Date(be.gy,be.gm-1,be.gd);let it=he-1,$e=te;it===0&&(it=12,$e--),N=Pr($e,it)}return{days:P.getDay()-z.value-1,endDay:N}}),ot=s(()=>{let P=[],{days:N,endDay:te}=Qe.value,he=N<0?N+7:N;if(he<6)for(let $e=te-he;$e<=te;$e++)P.push({i:$e,fill:!0});let be=P.length;for(let $e=1;$e<=Q.value;$e++){let Ne={i:$e,event:He.value[$e],classes:[]};Le.value[$e]===!0&&(Ne.in=!0,Ne.flat=!0),P.push(Ne)}if(ge.value[de.value]!==void 0&&ge.value[de.value].forEach($e=>{let Ne=be+$e-1;Object.assign(P[Ne],{selected:!0,unelevated:!0,flat:!1,color:T.value,textColor:_.value})}),_e.value[de.value]!==void 0&&_e.value[de.value].forEach($e=>{if($e.from!==void 0){let Ne=be+$e.from-1,dt=be+($e.to||Q.value)-1;for(let ro=Ne;ro<=dt;ro++)Object.assign(P[ro],{range:$e.range,unelevated:!0,color:T.value,textColor:_.value});Object.assign(P[Ne],{rangeFrom:!0,flat:!1}),$e.to!==void 0&&Object.assign(P[dt],{rangeTo:!0,flat:!1})}else if($e.to!==void 0){let Ne=be+$e.to-1;for(let dt=be;dt<=Ne;dt++)Object.assign(P[dt],{range:$e.range,unelevated:!0,color:T.value,textColor:_.value});Object.assign(P[Ne],{flat:!1,rangeTo:!0})}else{let Ne=be+Q.value-1;for(let dt=be;dt<=Ne;dt++)Object.assign(P[dt],{range:$e.range,unelevated:!0,color:T.value,textColor:_.value})}}),Be.value!==void 0){let $e=be+Be.value.from-1,Ne=be+Be.value.to-1;for(let dt=$e;dt<=Ne;dt++)P[dt].color=T.value,P[dt].editRange=!0;Be.value.includeFrom===!0&&(P[$e].editRangeFrom=!0),Be.value.includeTo===!0&&(P[Ne].editRangeTo=!0)}p.value.year===b.value.year&&p.value.month===b.value.month&&(P[be+b.value.day-1].today=!0);let it=P.length%7;if(it>0){let $e=7-it;for(let Ne=1;Ne<=$e;Ne++)P.push({i:Ne,fill:!0})}return P.forEach($e=>{let Ne="q-date__calendar-item ";$e.fill===!0?Ne+="q-date__calendar-item--fill":(Ne+=`q-date__calendar-item--${$e.in===!0?"in":"out"}`,$e.range!==void 0&&(Ne+=` q-date__range${$e.rangeTo===!0?"-to":$e.rangeFrom===!0?"-from":""}`),$e.editRange===!0&&(Ne+=` q-date__edit-range${$e.editRangeFrom===!0?"-from":""}${$e.editRangeTo===!0?"-to":""}`),($e.range!==void 0||$e.editRange===!0)&&(Ne+=` text-${$e.color}`)),$e.classes=Ne}),P}),ie=s(()=>e.disable===!0?{"aria-disabled":"true"}:{});Y(()=>e.modelValue,P=>{if(h===P)h=0;else{let N=ut(x.value,y.value);et(N.year,N.month,N)}}),Y(C,()=>{v.value!==null&&r.$el.contains(document.activeElement)===!0&&v.value.focus()}),Y(()=>p.value.year+"|"+p.value.month,()=>{o("navigation",{year:p.value.year,month:p.value.month})}),Y(k,P=>{ne(P,y.value,"mask"),x.value=P}),Y(S,P=>{ne(x.value,P,"locale"),y.value=P});function Z(){let{year:P,month:N,day:te}=b.value,he={...p.value,year:P,month:N,day:te},be=ge.value[mn(he)];(be===void 0||be.includes(he.day)===!1)&&To(he),Ie(he.year,he.month)}function ve(P){vc(P)===!0&&(C.value=P)}function Fe(P,N){["month","year"].includes(P)&&(P==="month"?ue:J)(N===!0?-1:1)}function Ie(P,N){C.value="Calendar",et(P,N)}function Ve(P,N){if(e.range===!1||!P){V.value=null;return}let te=Object.assign({...p.value},P),he=N!==void 0?Object.assign({...p.value},N):te;V.value={init:te,initHash:_o(te),final:he,finalHash:_o(he)},Ie(te.year,te.month)}function Oe(){return e.calendar==="persian"?"YYYY/MM/DD":e.mask}function lt(P,N,te){return fn(P,N,te,e.calendar,{hour:0,minute:0,second:0,millisecond:0})}function ut(P,N){let te=Array.isArray(e.modelValue)===!0?e.modelValue:e.modelValue?[e.modelValue]:[];if(te.length===0)return oe();let he=te[te.length-1],be=lt(he.from!==void 0?he.from:he,P,N);return be.dateHash===null?oe():be}function oe(){let P,N;if(e.defaultYearMonth!==void 0){let te=e.defaultYearMonth.split("/");P=parseInt(te[0],10),N=parseInt(te[1],10)}else{let te=b.value!==void 0?b.value:d();P=te.year,N=te.month}return{year:P,month:N,day:1,hour:0,minute:0,second:0,millisecond:0,dateHash:P+"/"+nt(N)+"/01"}}function ue(P){let N=p.value.year,te=Number(p.value.month)+P;te===13?(te=1,N++):te===0&&(te=12,N--),et(N,te),F.value===!0&&yt("month")}function J(P){let N=Number(p.value.year)+P;et(N,p.value.month),F.value===!0&&yt("year")}function se(P){et(P,p.value.month),C.value=e.defaultView==="Years"?"Months":"Calendar",F.value===!0&&yt("year")}function Ce(P){et(p.value.year,P),C.value="Calendar",F.value===!0&&yt("month")}function Ke(P,N){let te=ge.value[N];(te!==void 0&&te.includes(P.day)===!0?jo:To)(P)}function we(P){return{year:P.year,month:P.month,day:P.day}}function et(P,N,te){if(qe.value!==null&&P<=qe.value.year&&((N=G.value.year&&((N>G.value.month||P>G.value.year)&&(N=G.value.month),P=G.value.year),te!==void 0){let{hour:be,minute:it,second:$e,millisecond:Ne,timezoneOffset:dt,timeHash:ro}=te;Object.assign(p.value,{hour:be,minute:it,second:$e,millisecond:Ne,timezoneOffset:dt,timeHash:ro})}let he=P+"/"+nt(N)+"/01";he!==p.value.dateHash&&(L.value=p.value.dateHash{E.value=P-P%En-(P<0?En:0),Object.assign(p.value,{year:P,month:N,day:1,dateHash:he})}))}function pt(P,N,te){let he=P!==null&&P.length===1&&e.multiple===!1?P[0]:P;h=he;let{reason:be,details:it}=Gt(N,te);o("update:modelValue",he,be,it)}function yt(P){let N=j.value[0]!==void 0&&j.value[0].dateHash!==null?{...j.value[0]}:{...p.value};Ee(()=>{N.year=p.value.year,N.month=p.value.month;let te=e.calendar!=="persian"?new Date(N.year,N.month,0).getDate():Pr(N.year,N.month);N.day=Math.min(Math.max(1,N.day),te);let he=so(N);h=he;let{details:be}=Gt("",N);o("update:modelValue",he,P,be)})}function Gt(P,N){return N.from!==void 0?{reason:`${P}-range`,details:{...we(N.target),from:we(N.from),to:we(N.to)}}:{reason:`${P}-day`,details:we(N)}}function so(P,N,te){return P.from!==void 0?{from:fe.value(P.from,N,te),to:fe.value(P.to,N,te)}:fe.value(P,N,te)}function To(P){let N;if(e.multiple===!0)if(P.from!==void 0){let te=_o(P.from),he=_o(P.to),be=j.value.filter($e=>$e.dateHashhe),it=W.value.filter(({from:$e,to:Ne})=>Ne.dateHashhe);N=be.concat(it).concat(P).map($e=>so($e))}else{let te=I.value.slice();te.push(so(P)),N=te}else N=so(P);pt(N,"add",P)}function jo(P){if(e.noUnset===!0)return;let N=null;if(e.multiple===!0&&Array.isArray(e.modelValue)===!0){let te=so(P);P.from!==void 0?N=e.modelValue.filter(he=>he.from!==void 0?he.from!==te.from&&he.to!==te.to:!0):N=e.modelValue.filter(he=>he!==te),N.length===0&&(N=null)}pt(N,"remove",P)}function ne(P,N,te){let he=j.value.concat(W.value).map(be=>so(be,P,N)).filter(be=>be.from!==void 0?be.from.dateHash!==null&&be.to.dateHash!==null:be.dateHash!==null);o("update:modelValue",(e.multiple===!0?he:he[0])||null,te)}function pe(){if(e.minimal!==!0)return l("div",{class:"q-date__header "+c.value},[l("div",{class:"relative-position"},[l(st,{name:"q-transition--fade"},()=>l("div",{key:"h-yr-"+le.value,class:"q-date__header-subtitle q-date__header-link "+(C.value==="Years"?"q-date__header-link--active":"cursor-pointer"),tabindex:u.value,...a("vY",{onClick(){C.value="Years"},onKeyup(P){P.keyCode===13&&(C.value="Years")}})},[le.value]))]),l("div",{class:"q-date__header-title relative-position flex no-wrap"},[l("div",{class:"relative-position col"},[l(st,{name:"q-transition--fade"},()=>l("div",{key:"h-sub"+w.value,class:"q-date__header-title-label q-date__header-link "+(C.value==="Calendar"?"q-date__header-link--active":"cursor-pointer"),tabindex:u.value,...a("vC",{onClick(){C.value="Calendar"},onKeyup(P){P.keyCode===13&&(C.value="Calendar")}})},[w.value]))]),e.todayBtn===!0?l(ze,{class:"q-date__header-today self-start",icon:n.iconSet.datetime.today,flat:!0,size:"sm",round:!0,tabindex:u.value,onClick:Z}):null])])}function Ae({label:P,type:N,key:te,dir:he,goTo:be,boundaries:it,cls:$e}){return[l("div",{class:"row items-center q-date__arrow"},[l(ze,{round:!0,dense:!0,size:"sm",flat:!0,icon:R.value[0],tabindex:u.value,disable:it.prev===!1,...a("go-#"+N,{onClick(){be(-1)}})})]),l("div",{class:"relative-position overflow-hidden flex flex-center"+$e},[l(st,{name:"q-transition--jump-"+he},()=>l("div",{key:te},[l(ze,{flat:!0,dense:!0,noCaps:!0,label:P,tabindex:u.value,...a("view#"+N,{onClick:()=>{C.value=N}})})]))]),l("div",{class:"row items-center q-date__arrow"},[l(ze,{round:!0,dense:!0,size:"sm",flat:!0,icon:R.value[1],tabindex:u.value,disable:it.next===!1,...a("go+#"+N,{onClick(){be(1)}})})])]}let De={Calendar:()=>[l("div",{key:"calendar-view",class:"q-date__view q-date__calendar"},[l("div",{class:"q-date__navigation row items-center no-wrap"},Ae({label:y.value.months[p.value.month-1],type:"Months",key:p.value.month,dir:L.value,goTo:ue,boundaries:ce.value.month,cls:" col"}).concat(Ae({label:p.value.year,type:"Years",key:p.value.year,dir:D.value,goTo:J,boundaries:ce.value.year,cls:""}))),l("div",{class:"q-date__calendar-weekdays row items-center no-wrap"},ae.value.map(P=>l("div",{class:"q-date__calendar-item"},[l("div",P)]))),l("div",{class:"q-date__calendar-days-container relative-position overflow-hidden"},[l(st,{name:"q-transition--slide-"+L.value},()=>l("div",{key:de.value,class:"q-date__calendar-days fit"},ot.value.map(P=>l("div",{class:P.classes},[P.in===!0?l(ze,{class:P.today===!0?"q-date__today":"",dense:!0,flat:P.flat,unelevated:P.unelevated,color:P.color,textColor:P.textColor,label:P.i,tabindex:u.value,...a("day#"+P.i,{onClick:()=>{tt(P.i)},onMouseover:()=>{St(P.i)}})},P.event!==!1?()=>l("div",{class:"q-date__event bg-"+P.event}):null):l("div",""+P.i)]))))])])],Months(){let P=p.value.year===b.value.year,N=he=>qe.value!==null&&p.value.year===qe.value.year&&qe.value.month>he||G.value!==null&&p.value.year===G.value.year&&G.value.month{let it=p.value.month===be+1;return l("div",{class:"q-date__months-item flex flex-center"},[l(ze,{class:P===!0&&b.value.month===be+1?"q-date__today":null,flat:it!==!0,label:he,unelevated:it,color:it===!0?T.value:null,textColor:it===!0?_.value:null,tabindex:u.value,disable:N(be+1),...a("month#"+be,{onClick:()=>{Ce(be+1)}})})])});return e.yearsInMonthView===!0&&te.unshift(l("div",{class:"row no-wrap full-width"},[Ae({label:p.value.year,type:"Years",key:p.value.year,dir:D.value,goTo:J,boundaries:ce.value.year,cls:" col"})])),l("div",{key:"months-view",class:"q-date__view q-date__months flex flex-center"},te)},Years(){let P=E.value,N=P+En,te=[],he=be=>qe.value!==null&&qe.value.year>be||G.value!==null&&G.value.year{se(be)}})})]))}return l("div",{class:"q-date__view q-date__years flex flex-center"},[l("div",{class:"col-auto"},[l(ze,{round:!0,dense:!0,flat:!0,icon:R.value[0],tabindex:u.value,disable:he(P),...a("y-",{onClick:()=>{E.value-=En}})})]),l("div",{class:"q-date__years-content col self-stretch row items-center"},te),l("div",{class:"col-auto"},[l(ze,{round:!0,dense:!0,flat:!0,icon:R.value[1],tabindex:u.value,disable:he(N),...a("y+",{onClick:()=>{E.value+=En}})})])])}};function tt(P){let N={...p.value,day:P};if(e.range===!1){Ke(N,de.value);return}if(V.value===null){let te=ot.value.find(be=>be.fill!==!0&&be.i===P);if(e.noUnset!==!0&&te.range!==void 0){jo({target:N,from:te.range.from,to:te.range.to});return}if(te.selected===!0){jo(N);return}let he=_o(N);V.value={init:N,initHash:he,final:N,finalHash:he},o("rangeStart",we(N))}else{let te=V.value.initHash,he=_o(N),be=te<=he?{from:V.value.init,to:N}:{from:N,to:V.value.init};V.value=null,To(te===he?N:{target:N,...be}),o("rangeEnd",{from:we(be.from),to:we(be.to)})}}function St(P){if(V.value!==null){let N={...p.value,day:P};Object.assign(V.value,{final:N,finalHash:_o(N)})}}return Object.assign(r,{setToday:Z,setView:ve,offsetCalendar:Fe,setCalendarTo:Ie,setEditingRange:Ve}),()=>{let P=[l("div",{class:"q-date__content col relative-position"},[l(st,{name:"q-transition--fade"},De[C.value])])],N=re(t.default);return N!==void 0&&P.push(l("div",{class:"q-date__actions"},N)),e.name!==void 0&&e.disable!==!0&&m(P,"push"),l("div",{class:M.value,...ie.value},[pe(),l("div",{ref:v,class:"q-date__main col column",tabindex:-1},P)])}}});function wa(e,t,o){let r;function n(){r!==void 0&&(on.remove(r),r=void 0)}return ye(()=>{e.value===!0&&n()}),{removeFromHistory:n,addToHistory(){r={condition:()=>o.value===!0,handler:t},on.add(r)}}}var si=0,nu,ru,ci,iu=!1,hc,pc,bc,Bn=null;function lh(e){uh(e)&&ke(e)}function uh(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;let t=Cl(e),o=e.shiftKey&&!e.deltaX,r=!o&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),n=o||r?e.deltaY:e.deltaX;for(let i=0;i0&&a.scrollTop+a.clientHeight===a.scrollHeight:n<0&&a.scrollLeft===0?!0:n>0&&a.scrollLeft+a.clientWidth===a.scrollWidth}return!0}function yc(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function ka(e){iu!==!0&&(iu=!0,requestAnimationFrame(()=>{iu=!1;let{height:t}=e.target,{clientHeight:o,scrollTop:r}=document.scrollingElement;(ci===void 0||t!==window.innerHeight)&&(ci=o-t,document.scrollingElement.scrollTop=r),r>ci&&(document.scrollingElement.scrollTop-=Math.ceil((r-ci)/8))}))}function Sc(e){let t=document.body,o=window.visualViewport!==void 0;if(e==="add"){let{overflowY:r,overflowX:n}=window.getComputedStyle(t);nu=sn(window),ru=to(window),hc=t.style.left,pc=t.style.top,bc=window.location.href,t.style.left=`-${nu}px`,t.style.top=`-${ru}px`,n!=="hidden"&&(n==="scroll"||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),r!=="hidden"&&(r==="scroll"||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,Pe.is.ios===!0&&(o===!0?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",ka,Ze.passiveCapture),window.visualViewport.addEventListener("scroll",ka,Ze.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",yc,Ze.passiveCapture))}Pe.is.desktop===!0&&Pe.is.mac===!0&&window[`${e}EventListener`]("wheel",lh,Ze.notPassive),e==="remove"&&(Pe.is.ios===!0&&(o===!0?(window.visualViewport.removeEventListener("resize",ka,Ze.passiveCapture),window.visualViewport.removeEventListener("scroll",ka,Ze.passiveCapture)):window.removeEventListener("scroll",yc,Ze.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=hc,t.style.top=pc,window.location.href===bc&&window.scrollTo(nu,ru),ci=void 0)}function di(e){let t="add";if(e===!0){if(si++,Bn!==null){clearTimeout(Bn),Bn=null;return}if(si>1)return}else{if(si===0||(si--,si>0))return;if(t="remove",Pe.is.ios===!0&&Pe.is.nativeMobile===!0){Bn!==null&&clearTimeout(Bn),Bn=setTimeout(()=>{Sc(t),Bn=null},100);return}}Sc(t)}function qa(){let e;return{preventBodyScroll(t){t!==e&&(e!==void 0||t===!0)&&(e=t,di(t))}}}var Ta=0,sh={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},xc={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]},Ho=A({name:"QDialog",inheritAttrs:!1,props:{...vo,...bo,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,backdropFilter:String,position:{type:String,default:"standard",validator:e=>["standard","top","bottom","left","right"].includes(e)}},emits:[...go,"shake","click","escapeKey"],setup(e,{slots:t,emit:o,attrs:r}){let n=K(),i=q(null),a=q(!1),u=q(!1),c=null,f=null,d,h,g=s(()=>e.persistent!==!0&&e.noRouteDismiss!==!0&&e.seamless!==!0),{preventBodyScroll:m}=qa(),{registerTimeout:v}=Vt(),{registerTick:x,removeTick:y}=yo(),{transitionProps:k,transitionStyle:S}=un(e,()=>xc[e.position][0],()=>xc[e.position][1]),b=s(()=>S.value+(e.backdropFilter!==void 0?`;backdrop-filter:${e.backdropFilter};-webkit-backdrop-filter:${e.backdropFilter}`:"")),{showPortal:p,hidePortal:C,portalIsAccessible:$,renderPortal:L}=ar(n,i,le,"dialog"),{hide:D}=ho({showing:a,hideOnRouteChange:g,handleShow:F,handleHide:I,processOnMount:!0}),{addToHistory:B,removeFromHistory:E}=wa(a,D,g),V=s(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${e.maximized===!0?"maximized":"minimized"} q-dialog__inner--${e.position} ${sh[e.position]}`+(u.value===!0?" q-dialog__inner--animating":"")+(e.fullWidth===!0?" q-dialog__inner--fullwidth":"")+(e.fullHeight===!0?" q-dialog__inner--fullheight":"")+(e.square===!0?" q-dialog__inner--square":"")),M=s(()=>a.value===!0&&e.seamless!==!0),T=s(()=>e.autoClose===!0?{onClick:w}:{}),_=s(()=>[`q-dialog fullscreen no-pointer-events q-dialog--${M.value===!0?"modal":"seamless"}`,r.class]);Y(()=>e.maximized,R=>{a.value===!0&&H(R)}),Y(M,R=>{m(R),R===!0?(cr(U),Ki(ee)):(Mn(U),sr(ee))});function F(R){B(),f=e.noRefocus===!1&&document.activeElement!==null?document.activeElement:null,H(e.maximized),p(),u.value=!0,e.noFocus!==!0?(document.activeElement!==null&&document.activeElement.blur(),x(j)):y(),v(()=>{if(n.proxy.$q.platform.is.ios===!0){if(e.seamless!==!0&&document.activeElement){let{top:z,bottom:ae}=document.activeElement.getBoundingClientRect(),{innerHeight:Q}=window,me=window.visualViewport!==void 0?window.visualViewport.height:Q;z>0&&ae>me/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-me,ae>=Q?1/0:Math.ceil(document.scrollingElement.scrollTop+ae-me/2))),document.activeElement.scrollIntoView()}h=!0,i.value.click(),h=!1}p(!0),u.value=!1,o("show",R)},e.transitionDuration)}function I(R){y(),E(),fe(!0),u.value=!0,C(),f!==null&&(((R&&R.type.indexOf("key")===0?f.closest('[tabindex]:not([tabindex^="-"])'):void 0)||f).focus(),f=null),v(()=>{C(!0),u.value=!1,o("hide",R)},e.transitionDuration)}function j(R){po(()=>{let z=i.value;if(z!==null){if(R!==void 0){let ae=z.querySelector(R);if(ae!==null){ae.focus({preventScroll:!0});return}}z.contains(document.activeElement)!==!0&&(z=z.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||z.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||z.querySelector("[autofocus], [data-autofocus]")||z,z.focus({preventScroll:!0}))}})}function W(R){R&&typeof R.focus=="function"?R.focus({preventScroll:!0}):j(),o("shake");let z=i.value;z!==null&&(z.classList.remove("q-animate--scale"),z.classList.add("q-animate--scale"),c!==null&&clearTimeout(c),c=setTimeout(()=>{c=null,i.value!==null&&(z.classList.remove("q-animate--scale"),j())},170))}function ee(){e.seamless!==!0&&(e.persistent===!0||e.noEscDismiss===!0?e.maximized!==!0&&e.noShake!==!0&&W():(o("escapeKey"),D()))}function fe(R){c!==null&&(clearTimeout(c),c=null),(R===!0||a.value===!0)&&(H(!1),e.seamless!==!0&&(m(!1),Mn(U),sr(ee))),R!==!0&&(f=null)}function H(R){R===!0?d!==!0&&(Ta<1&&document.body.classList.add("q-body--dialog"),Ta++,d=!0):d===!0&&(Ta<2&&document.body.classList.remove("q-body--dialog"),Ta--,d=!1)}function w(R){h!==!0&&(D(R),o("click",R))}function X(R){e.persistent!==!0&&e.noBackdropDismiss!==!0?D(R):e.noShake!==!0&&W()}function U(R){e.allowFocusOutside!==!0&&$.value===!0&&Oi(i.value,R.target)!==!0&&j('[tabindex]:not([tabindex="-1"])')}Object.assign(n.proxy,{focus:j,shake:W,__updateRefocusTarget(R){f=R||null}}),ye(fe);function le(){return l("div",{role:"dialog","aria-modal":M.value===!0?"true":"false",...r,class:_.value},[l(st,{name:"q-transition--fade",appear:!0},()=>M.value===!0?l("div",{class:"q-dialog__backdrop fixed-full",style:b.value,"aria-hidden":"true",tabindex:-1,onClick:X}):null),l(st,k.value,()=>a.value===!0?l("div",{ref:i,class:V.value,style:S.value,tabindex:-1,...T.value},re(t.default)):null)])}return L}});var _c=150,Cc=A({name:"QDrawer",inheritAttrs:!1,props:{...vo,...Se,side:{type:String,default:"left",validator:e=>["left","right"].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>["default","desktop","mobile"].includes(e),default:"default"},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...go,"onLayout","miniState"],setup(e,{slots:t,emit:o,attrs:r}){let n=K(),{proxy:{$q:i}}=n,a=xe(e,i),{preventBodyScroll:u}=qa(),{registerTimeout:c,removeTimeout:f}=Vt(),d=ht(Jt,Ge);if(d===Ge)return console.error("QDrawer needs to be child of QLayout"),Ge;let h,g=null,m,v=q(e.behavior==="mobile"||e.behavior!=="desktop"&&d.totalWidth.value<=e.breakpoint),x=s(()=>e.mini===!0&&v.value!==!0),y=s(()=>x.value===!0?e.miniWidth:e.width),k=q(e.showIfAbove===!0&&v.value===!1?!0:e.modelValue===!0),S=s(()=>e.persistent!==!0&&(v.value===!0||fe.value===!0));function b(Z,ve){if(L(),Z!==!1&&d.animate(),ce(0),v.value===!0){let Fe=d.instances[I.value];Fe!==void 0&&Fe.belowBreakpoint===!0&&Fe.hide(!1),ge(1),d.isContainer.value!==!0&&u(!0)}else ge(0),Z!==!1&&_e(!1);c(()=>{Z!==!1&&_e(!0),ve!==!0&&o("show",Z)},_c)}function p(Z,ve){D(),Z!==!1&&d.animate(),ge(0),ce(V.value*y.value),He(),ve!==!0?c(()=>{o("hide",Z)},_c):f()}let{show:C,hide:$}=ho({showing:k,hideOnRouteChange:S,handleShow:b,handleHide:p}),{addToHistory:L,removeFromHistory:D}=wa(k,$,S),B={belowBreakpoint:v,hide:$},E=s(()=>e.side==="right"),V=s(()=>(i.lang.rtl===!0?-1:1)*(E.value===!0?1:-1)),M=q(0),T=q(!1),_=q(!1),F=q(y.value*V.value),I=s(()=>E.value===!0?"left":"right"),j=s(()=>k.value===!0&&v.value===!1&&e.overlay===!1?e.miniToOverlay===!0?e.miniWidth:y.value:0),W=s(()=>e.overlay===!0||e.miniToOverlay===!0||d.view.value.indexOf(E.value?"R":"L")!==-1||i.platform.is.ios===!0&&d.isContainer.value===!0),ee=s(()=>e.overlay===!1&&k.value===!0&&v.value===!1),fe=s(()=>e.overlay===!0&&k.value===!0&&v.value===!1),H=s(()=>"fullscreen q-drawer__backdrop"+(k.value===!1&&T.value===!1?" hidden":"")),w=s(()=>({backgroundColor:`rgba(0,0,0,${M.value*.4})`})),X=s(()=>E.value===!0?d.rows.value.top[2]==="r":d.rows.value.top[0]==="l"),U=s(()=>E.value===!0?d.rows.value.bottom[2]==="r":d.rows.value.bottom[0]==="l"),le=s(()=>{let Z={};return d.header.space===!0&&X.value===!1&&(W.value===!0?Z.top=`${d.header.offset}px`:d.header.space===!0&&(Z.top=`${d.header.size}px`)),d.footer.space===!0&&U.value===!1&&(W.value===!0?Z.bottom=`${d.footer.offset}px`:d.footer.space===!0&&(Z.bottom=`${d.footer.size}px`)),Z}),R=s(()=>{let Z={width:`${y.value}px`,transform:`translateX(${F.value}px)`};return v.value===!0?Z:Object.assign(Z,le.value)}),z=s(()=>"q-drawer__content fit "+(d.isContainer.value!==!0?"scroll":"overflow-auto")),ae=s(()=>`q-drawer q-drawer--${e.side}`+(_.value===!0?" q-drawer--mini-animate":"")+(e.bordered===!0?" q-drawer--bordered":"")+(a.value===!0?" q-drawer--dark q-dark":"")+(T.value===!0?" no-transition":k.value===!0?"":" q-layout--prevent-focus")+(v.value===!0?" fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding":` q-drawer--${x.value===!0?"mini":"standard"}`+(W.value===!0||ee.value!==!0?" fixed":"")+(e.overlay===!0||e.miniToOverlay===!0?" q-drawer--on-top":"")+(X.value===!0?" q-drawer--top-padding":""))),Q=s(()=>{let Z=i.lang.rtl===!0?e.side:I.value;return[[Rt,de,void 0,{[Z]:!0,mouse:!0}]]}),me=s(()=>{let Z=i.lang.rtl===!0?I.value:e.side;return[[Rt,Le,void 0,{[Z]:!0,mouse:!0}]]}),qe=s(()=>{let Z=i.lang.rtl===!0?I.value:e.side;return[[Rt,Le,void 0,{[Z]:!0,mouse:!0,mouseAllDir:!0}]]});function G(){ot(v,e.behavior==="mobile"||e.behavior!=="desktop"&&d.totalWidth.value<=e.breakpoint)}Y(v,Z=>{Z===!0?(h=k.value,k.value===!0&&$(!1)):e.overlay===!1&&e.behavior!=="mobile"&&h!==!1&&(k.value===!0?(ce(0),ge(0),He()):C(!1))}),Y(()=>e.side,(Z,ve)=>{d.instances[ve]===B&&(d.instances[ve]=void 0,d[ve].space=!1,d[ve].offset=0),d.instances[Z]=B,d[Z].size=y.value,d[Z].space=ee.value,d[Z].offset=j.value}),Y(d.totalWidth,()=>{(d.isContainer.value===!0||document.qScrollPrevented!==!0)&&G()}),Y(()=>e.behavior+e.breakpoint,G),Y(d.isContainer,Z=>{k.value===!0&&u(Z!==!0),Z===!0&&G()}),Y(d.scrollbarWidth,()=>{ce(k.value===!0?0:void 0)}),Y(j,Z=>{Qe("offset",Z)}),Y(ee,Z=>{o("onLayout",Z),Qe("space",Z)}),Y(E,()=>{ce()}),Y(y,Z=>{ce(),ie(e.miniToOverlay,Z)}),Y(()=>e.miniToOverlay,Z=>{ie(Z,y.value)}),Y(()=>i.lang.rtl,()=>{ce()}),Y(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue===!0&&(Be(),d.animate())}),Y(x,Z=>{o("miniState",Z)});function ce(Z){Z===void 0?Ee(()=>{Z=k.value===!0?0:y.value,ce(V.value*Z)}):(d.isContainer.value===!0&&E.value===!0&&(v.value===!0||Math.abs(Z)===y.value)&&(Z+=V.value*d.scrollbarWidth.value),F.value=Z)}function ge(Z){M.value=Z}function _e(Z){let ve=Z===!0?"remove":d.isContainer.value!==!0?"add":"";ve!==""&&document.body.classList[ve]("q-body--drawer-toggle")}function Be(){g!==null&&clearTimeout(g),n.proxy&&n.proxy.$el&&n.proxy.$el.classList.add("q-drawer--mini-animate"),_.value=!0,g=setTimeout(()=>{g=null,_.value=!1,n&&n.proxy&&n.proxy.$el&&n.proxy.$el.classList.remove("q-drawer--mini-animate")},150)}function de(Z){if(k.value!==!1)return;let ve=y.value,Fe=Je(Z.distance.x,0,ve);if(Z.isFinal===!0){Fe>=Math.min(75,ve)===!0?C():(d.animate(),ge(0),ce(V.value*ve)),T.value=!1;return}ce((i.lang.rtl===!0?E.value!==!0:E.value)?Math.max(ve-Fe,0):Math.min(0,Fe-ve)),ge(Je(Fe/ve,0,1)),Z.isFirst===!0&&(T.value=!0)}function Le(Z){if(k.value!==!0)return;let ve=y.value,Fe=Z.direction===e.side,Ie=(i.lang.rtl===!0?Fe!==!0:Fe)?Je(Z.distance.x,0,ve):0;if(Z.isFinal===!0){Math.abs(Ie){o("onLayout",ee.value),o("miniState",x.value),h=e.showIfAbove===!0;let Z=()=>{(k.value===!0?b:p)(!1,!0)};if(d.totalWidth.value!==0){Ee(Z);return}m=Y(d.totalWidth,()=>{m(),m=void 0,k.value===!1&&e.showIfAbove===!0&&v.value===!1?C(!1):Z()})}),ye(()=>{m!==void 0&&m(),g!==null&&(clearTimeout(g),g=null),k.value===!0&&He(),d.instances[e.side]===B&&(d.instances[e.side]=void 0,Qe("size",0),Qe("offset",0),Qe("space",!1))}),()=>{let Z=[];v.value===!0&&(e.noSwipeOpen===!1&&Z.push(Et(l("div",{key:"open",class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":"true"}),Q.value)),Z.push(Mt("div",{ref:"backdrop",class:H.value,style:w.value,"aria-hidden":"true",onClick:$},void 0,"backdrop",e.noSwipeBackdrop!==!0&&k.value===!0,()=>qe.value)));let ve=x.value===!0&&t.mini!==void 0,Fe=[l("div",{...r,key:""+ve,class:[z.value,r.class]},ve===!0?t.mini():re(t.default))];return e.elevated===!0&&k.value===!0&&Fe.push(l("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),Z.push(Mt("aside",{ref:"content",class:ae.value,style:R.value},Fe,"contentclose",e.noSwipeClose!==!0&&v.value===!0,()=>me.value)),l("div",{class:"q-drawer-container"},Z)}}});function wc(e,t){if(t&&e===t)return null;let o=e.nodeName.toLowerCase();if(["div","li","ul","ol","blockquote"].includes(o)===!0)return e;let r=window.getComputedStyle?window.getComputedStyle(e):e.currentStyle,n=r.display;return n==="block"||n==="table"?e:wc(e.parentNode)}function au(e,t,o){return!e||e===document.body?!1:o===!0&&e===t||(t===document?document.body:t).contains(e.parentNode)}function kc(e,t,o){if(o||(o=document.createRange(),o.selectNode(e),o.setStart(e,0)),t.count===0)o.setEnd(e,t.count);else if(t.count>0)if(e.nodeType===Node.TEXT_NODE)e.textContent.length0&&this.savedPos{var sv=Object.defineProperty;var jr=(e,t)=>{for(var o in t)sv(e,o,{get:t[o],enumerable:!0})};var{h:i,ref:T,computed:s,watch:Y,isRef:Pu,toRaw:fo,unref:Au,reactive:Uo,shallowReactive:$u,nextTick:Be,onActivated:Ut,onDeactivated:At,onBeforeMount:Hn,onMounted:Qe,onBeforeUnmount:be,onUnmounted:Nn,onBeforeUpdate:Mo,onUpdated:Eu,inject:pt,provide:Kt,getCurrentInstance:K,markRaw:Ur,Transition:st,TransitionGroup:Bu,KeepAlive:wa,Teleport:Fu,useSSRContext:m0,withDirectives:Bt,vShow:ka,defineComponent:Lu,createApp:Du}=window.Vue;function ft(e,t,o,r){return Object.defineProperty(e,t,{get:o,set:r,enumerable:!0}),e}function qa(e,t){for(let o in t)ft(e,o,t[o]);return e}var xt=T(!1),yl;function cv(e,t){let o=/(edg|edge|edga|edgios)\/([\w.]+)/.exec(e)||/(opr)[\/]([\w.]+)/.exec(e)||/(vivaldi)[\/]([\w.]+)/.exec(e)||/(chrome|crios)[\/]([\w.]+)/.exec(e)||/(version)(applewebkit)[\/]([\w.]+).*(safari)[\/]([\w.]+)/.exec(e)||/(webkit)[\/]([\w.]+).*(version)[\/]([\w.]+).*(safari)[\/]([\w.]+)/.exec(e)||/(firefox|fxios)[\/]([\w.]+)/.exec(e)||/(webkit)[\/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[\/]([\w.]+)/.exec(e)||[];return{browser:o[5]||o[3]||o[1]||"",version:o[4]||o[2]||"0",platform:t[0]||""}}function dv(e){return/(ipad)/.exec(e)||/(ipod)/.exec(e)||/(windows phone)/.exec(e)||/(iphone)/.exec(e)||/(kindle)/.exec(e)||/(silk)/.exec(e)||/(android)/.exec(e)||/(win)/.exec(e)||/(mac)/.exec(e)||/(linux)/.exec(e)||/(cros)/.exec(e)||/(playbook)/.exec(e)||/(bb)/.exec(e)||/(blackberry)/.exec(e)||[]}var Vu="ontouchstart"in window||window.navigator.maxTouchPoints>0;function fv(e){let t=e.toLowerCase(),o=dv(t),r=cv(t,o),n={mobile:!1,desktop:!1,cordova:!1,capacitor:!1,nativeMobile:!1,electron:!1,bex:!1,linux:!1,mac:!1,win:!1,cros:!1,chrome:!1,firefox:!1,opera:!1,safari:!1,vivaldi:!1,edge:!1,edgeChromium:!1,ie:!1,webkit:!1,android:!1,ios:!1,ipad:!1,iphone:!1,ipod:!1,kindle:!1,winphone:!1,blackberry:!1,playbook:!1,silk:!1};r.browser&&(n[r.browser]=!0,n.version=r.version,n.versionNumber=parseInt(r.version,10)),r.platform&&(n[r.platform]=!0);let a=n.android||n.ios||n.bb||n.blackberry||n.ipad||n.iphone||n.ipod||n.kindle||n.playbook||n.silk||n["windows phone"];if(a===!0||t.indexOf("mobile")!==-1?n.mobile=!0:n.desktop=!0,n["windows phone"]&&(n.winphone=!0,delete n["windows phone"]),n.edga||n.edgios||n.edg?(n.edge=!0,r.browser="edge"):n.crios?(n.chrome=!0,r.browser="chrome"):n.fxios&&(n.firefox=!0,r.browser="firefox"),(n.ipod||n.ipad||n.iphone)&&(n.ios=!0),n.vivaldi&&(r.browser="vivaldi",n.vivaldi=!0),(n.chrome||n.opr||n.safari||n.vivaldi||n.mobile===!0&&n.ios!==!0&&a!==!0)&&(n.webkit=!0),n.opr&&(r.browser="opera",n.opera=!0),n.safari&&(n.blackberry||n.bb?(r.browser="blackberry",n.blackberry=!0):n.playbook?(r.browser="playbook",n.playbook=!0):n.android?(r.browser="android",n.android=!0):n.kindle?(r.browser="kindle",n.kindle=!0):n.silk&&(r.browser="silk",n.silk=!0)),n.name=r.browser,n.platform=r.platform,t.indexOf("electron")!==-1)n.electron=!0;else if(document.location.href.indexOf("-extension://")!==-1)n.bex=!0;else{if(window.Capacitor!==void 0?(n.capacitor=!0,n.nativeMobile=!0,n.nativeMobileWrapper="capacitor"):(window._cordovaNative!==void 0||window.cordova!==void 0)&&(n.cordova=!0,n.nativeMobile=!0,n.nativeMobileWrapper="cordova"),xt.value===!0&&(yl={is:{...n}}),Vu===!0&&n.mac===!0&&(n.desktop===!0&&n.safari===!0||n.nativeMobile===!0&&n.android!==!0&&n.ios!==!0&&n.ipad!==!0)){delete n.mac,delete n.desktop;let l=Math.min(window.innerHeight,window.innerWidth)>414?"ipad":"iphone";Object.assign(n,{mobile:!0,ios:!0,platform:l,[l]:!0})}n.mobile!==!0&&window.navigator.userAgentData&&window.navigator.userAgentData.mobile&&(delete n.desktop,n.mobile=!0)}return n}var Ou=navigator.userAgent||navigator.vendor||window.opera,mv={has:{touch:!1,webStorage:!1},within:{iframe:!1}},Ae={userAgent:Ou,is:fv(Ou),has:{touch:Vu},within:{iframe:window.self!==window.top}},Sl={install(e){let{$q:t}=e;xt.value===!0?(e.onSSRHydrated.push(()=>{Object.assign(t.platform,Ae),xt.value=!1}),t.platform=Uo(this)):t.platform=this}};{let e;ft(Ae.has,"webStorage",()=>{if(e!==void 0)return e;try{if(window.localStorage)return e=!0,!0}catch{}return e=!1,!1}),Object.assign(Sl,Ae),xt.value===!0&&(Object.assign(Sl,yl,mv),yl=null)}var Ro=Sl;function P(e){return Ur(Lu(e))}function $t(e){return Ur(e)}var Wt=(e,t)=>{let o=Uo(e);for(let r in e)ft(t,r,()=>o[r],n=>{o[r]=n});return t};var et={hasPassive:!1,passiveCapture:!0,notPassiveCapture:!0};try{let e=Object.defineProperty({},"passive",{get(){Object.assign(et,{hasPassive:!0,passive:{passive:!0},notPassive:{passive:!1},passiveCapture:{passive:!0,capture:!0},notPassiveCapture:{passive:!1,capture:!0}})}});window.addEventListener("qtest",null,e),window.removeEventListener("qtest",null,e)}catch{}function Ye(){}function Ko(e){return e.button===0}function vv(e){return e.button===1}function gv(e){return e.button===2}function _t(e){return e.touches&&e.touches[0]?e=e.touches[0]:e.changedTouches&&e.changedTouches[0]?e=e.changedTouches[0]:e.targetTouches&&e.targetTouches[0]&&(e=e.targetTouches[0]),{top:e.clientY,left:e.clientX}}function xl(e){if(e.path)return e.path;if(e.composedPath)return e.composedPath();let t=[],o=e.target;for(;o;){if(t.push(o),o.tagName==="HTML")return t.push(document),t.push(window),t;o=o.parentElement}}var hv=40,pv=800;function bv(e){let t=e.deltaX,o=e.deltaY;if((t||o)&&e.deltaMode){let r=e.deltaMode===1?hv:pv;t*=r,o*=r}return e.shiftKey&&!t&&([o,t]=[t,o]),{x:t,y:o}}function it(e){e.stopPropagation()}function gt(e){e.cancelable!==!1&&e.preventDefault()}function _e(e){e.cancelable!==!1&&e.preventDefault(),e.stopPropagation()}function Wo(e,t){if(e===void 0||t===!0&&e.__dragPrevented===!0)return;let o=t===!0?r=>{r.__dragPrevented=!0,r.addEventListener("dragstart",gt,et.notPassiveCapture)}:r=>{delete r.__dragPrevented,r.removeEventListener("dragstart",gt,et.notPassiveCapture)};e.querySelectorAll("a, img").forEach(o)}function vt(e,t,o){let r=`__q_${t}_evt`;e[r]=e[r]!==void 0?e[r].concat(o):o,o.forEach(n=>{n[0].addEventListener(n[1],e[n[2]],et[n[3]])})}function Tt(e,t){let o=`__q_${t}_evt`;e[o]!==void 0&&(e[o].forEach(r=>{r[0].removeEventListener(r[1],e[r[2]],et[r[3]])}),e[o]=void 0)}var zu={listenOpts:et,leftClick:Ko,middleClick:vv,rightClick:gv,position:_t,getEventPath:xl,getMouseWheelDistance:bv,stop:it,prevent:gt,stopAndPrevent:_e,preventDraggable:Wo};function Jt(e,t=250,o){let r=null;function n(){let a=arguments,l=()=>{r=null,o!==!0&&e.apply(this,a)};r!==null?clearTimeout(r):o===!0&&e.apply(this,a),r=setTimeout(l,t)}return n.cancel=()=>{r!==null&&clearTimeout(r)},n}var _l=["sm","md","lg","xl"],{passive:Iu}=et,Ta=Wt({width:0,height:0,name:"xs",sizes:{sm:600,md:1024,lg:1440,xl:1920},lt:{sm:!0,md:!0,lg:!0,xl:!0},gt:{xs:!1,sm:!1,md:!1,lg:!1},xs:!0,sm:!1,md:!1,lg:!1,xl:!1},{setSizes:Ye,setDebounce:Ye,install({$q:e,onSSRHydrated:t}){if(e.screen=this,this.__installed===!0){e.config.screen!==void 0&&(e.config.screen.bodyClasses===!1?document.body.classList.remove(`screen--${this.name}`):this.__update(!0));return}let{visualViewport:o}=window,r=o||window,n=document.scrollingElement||document.documentElement,a=o===void 0||Ae.is.mobile===!0?()=>[Math.max(window.innerWidth,n.clientWidth),Math.max(window.innerHeight,n.clientHeight)]:()=>[o.width*o.scale+window.innerWidth-n.clientWidth,o.height*o.scale+window.innerHeight-n.clientHeight],l=e.config.screen?.bodyClasses===!0;this.__update=p=>{let[g,m]=a();if(m!==this.height&&(this.height=m),g!==this.width)this.width=g;else if(p!==!0)return;let v=this.sizes;this.gt.xs=g>=v.sm,this.gt.sm=g>=v.md,this.gt.md=g>=v.lg,this.gt.lg=g>=v.xl,this.lt.sm=g{_l.forEach(g=>{p[g]!==void 0&&(c[g]=p[g])})},this.setDebounce=p=>{f=p};let d=()=>{let p=getComputedStyle(document.body);p.getPropertyValue("--q-size-sm")&&_l.forEach(g=>{this.sizes[g]=parseInt(p.getPropertyValue(`--q-size-${g}`),10)}),this.setSizes=g=>{_l.forEach(m=>{g[m]&&(this.sizes[m]=g[m])}),this.__update(!0)},this.setDebounce=g=>{u!==void 0&&r.removeEventListener("resize",u,Iu),u=g>0?Jt(this.__update,g):this.__update,r.addEventListener("resize",u,Iu)},this.setDebounce(f),Object.keys(c).length!==0?(this.setSizes(c),c=void 0):this.__update(),l===!0&&this.name==="xs"&&document.body.classList.add("screen--xs")};xt.value===!0?t.push(d):d()}});var Yt=Wt({isActive:!1,mode:!1},{__media:void 0,set(e){Yt.mode=e,e==="auto"?(Yt.__media===void 0&&(Yt.__media=window.matchMedia("(prefers-color-scheme: dark)"),Yt.__updateMedia=()=>{Yt.set("auto")},Yt.__media.addListener(Yt.__updateMedia)),e=Yt.__media.matches):Yt.__media!==void 0&&(Yt.__media.removeListener(Yt.__updateMedia),Yt.__media=void 0),Yt.isActive=e===!0,document.body.classList.remove(`body--${e===!0?"light":"dark"}`),document.body.classList.add(`body--${e===!0?"dark":"light"}`)},toggle(){Yt.set(Yt.isActive===!1)},install({$q:e,ssrContext:t}){let o=e.config.dark;e.dark=this,this.__installed!==!0&&this.set(o!==void 0?o:!1)}}),Ma=Yt;function Kr(e,t,o=document.body){if(typeof e!="string")throw new TypeError("Expected a string as propName");if(typeof t!="string")throw new TypeError("Expected a string as value");if(!(o instanceof Element))throw new TypeError("Expected a DOM element");o.style.setProperty(`--q-${e}`,t)}var Hu=!1;function Nu(e){Hu=e.isComposing===!0}function io(e){return Hu===!0||e!==Object(e)||e.isComposing===!0||e.qKeyEvent===!0}function Mt(e,t){return io(e)===!0?!1:[].concat(t).includes(e.keyCode)}function Qu(e){if(e.ios===!0)return"ios";if(e.android===!0)return"android"}function yv({is:e,has:t,within:o},r){let n=[e.desktop===!0?"desktop":"mobile",`${t.touch===!1?"no-":""}touch`];if(e.mobile===!0){let a=Qu(e);a!==void 0&&n.push("platform-"+a)}if(e.nativeMobile===!0){let a=e.nativeMobileWrapper;n.push(a),n.push("native-mobile"),e.ios===!0&&(r[a]===void 0||r[a].iosStatusBarPadding!==!1)&&n.push("q-ios-padding")}else e.electron===!0?n.push("electron"):e.bex===!0&&n.push("bex");return o.iframe===!0&&n.push("within-iframe"),n}function Sv(){let{is:e}=Ae,t=document.body.className,o=new Set(t.replace(/ {2}/g," ").split(" "));if(e.nativeMobile!==!0&&e.electron!==!0&&e.bex!==!0){if(e.desktop===!0)o.delete("mobile"),o.delete("platform-ios"),o.delete("platform-android"),o.add("desktop");else if(e.mobile===!0){o.delete("desktop"),o.add("mobile"),o.delete("platform-ios"),o.delete("platform-android");let n=Qu(e);n!==void 0&&o.add(`platform-${n}`)}}Ae.has.touch===!0&&(o.delete("no-touch"),o.add("touch")),Ae.within.iframe===!0&&o.add("within-iframe");let r=Array.from(o).join(" ");t!==r&&(document.body.className=r)}function xv(e){for(let t in e)Kr(t,e[t])}var ju={install(e){if(this.__installed!==!0){if(xt.value===!0)Sv();else{let{$q:t}=e;t.config.brand!==void 0&&xv(t.config.brand);let o=yv(Ae,t.config);document.body.classList.add.apply(document.body.classList,o)}Ae.is.ios===!0&&document.body.addEventListener("touchstart",Ye),window.addEventListener("keydown",Nu,!0)}}};var Uu=()=>!0;function _v(e){return typeof e=="string"&&e!==""&&e!=="/"&&e!=="#/"}function Cv(e){return e.startsWith("#")===!0&&(e=e.substring(1)),e.startsWith("/")===!1&&(e="/"+e),e.endsWith("/")===!0&&(e=e.substring(0,e.length-1)),"#"+e}function wv(e){if(e.backButtonExit===!1)return()=>!1;if(e.backButtonExit==="*")return Uu;let t=["#/"];return Array.isArray(e.backButtonExit)===!0&&t.push(...e.backButtonExit.filter(_v).map(Cv)),()=>t.includes(window.location.hash)}var rn={__history:[],add:Ye,remove:Ye,install({$q:e}){if(this.__installed===!0)return;let{cordova:t,capacitor:o}=Ae.is;if(t!==!0&&o!==!0)return;let r=e.config[t===!0?"cordova":"capacitor"];if(r?.backButton===!1||o===!0&&(window.Capacitor===void 0||window.Capacitor.Plugins.App===void 0))return;this.add=l=>{l.condition===void 0&&(l.condition=Uu),this.__history.push(l)},this.remove=l=>{let u=this.__history.indexOf(l);u>=0&&this.__history.splice(u,1)};let n=wv(Object.assign({backButtonExit:!0},r)),a=()=>{if(this.__history.length){let l=this.__history[this.__history.length-1];l.condition()===!0&&(this.__history.pop(),l.handler())}else n()===!0?navigator.app.exitApp():window.history.back()};t===!0?document.addEventListener("deviceready",()=>{document.addEventListener("backbutton",a,!1)}):window.Capacitor.Plugins.App.addListener("backButton",a)}};var Wr={isoName:"en-US",nativeName:"English (US)",label:{clear:"Clear",ok:"OK",cancel:"Cancel",close:"Close",set:"Set",select:"Select",reset:"Reset",remove:"Remove",update:"Update",create:"Create",search:"Search",filter:"Filter",refresh:"Refresh",expand:e=>e?`Expand "${e}"`:"Expand",collapse:e=>e?`Collapse "${e}"`:"Collapse"},date:{days:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),daysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),firstDayOfWeek:0,format24h:!1,pluralDay:"days",prevMonth:"Previous month",nextMonth:"Next month",prevYear:"Previous year",nextYear:"Next year",today:"Today",prevRangeYears:e=>`Previous ${e} years`,nextRangeYears:e=>`Next ${e} years`},table:{noData:"No data available",noResults:"No matching records found",loading:"Loading...",selectedRecords:e=>e===1?"1 record selected.":(e===0?"No":e)+" records selected.",recordsPerPage:"Records per page:",allRows:"All",pagination:(e,t,o)=>e+"-"+t+" of "+o,columns:"Columns"},pagination:{first:"First page",prev:"Previous page",next:"Next page",last:"Last page"},editor:{url:"URL",bold:"Bold",italic:"Italic",strikethrough:"Strikethrough",underline:"Underline",unorderedList:"Unordered List",orderedList:"Ordered List",subscript:"Subscript",superscript:"Superscript",hyperlink:"Hyperlink",toggleFullscreen:"Toggle Fullscreen",quote:"Quote",left:"Left align",center:"Center align",right:"Right align",justify:"Justify align",print:"Print",outdent:"Decrease indentation",indent:"Increase indentation",removeFormat:"Remove formatting",formatting:"Formatting",fontSize:"Font Size",align:"Align",hr:"Insert Horizontal Rule",undo:"Undo",redo:"Redo",heading1:"Heading 1",heading2:"Heading 2",heading3:"Heading 3",heading4:"Heading 4",heading5:"Heading 5",heading6:"Heading 6",paragraph:"Paragraph",code:"Code",size1:"Very small",size2:"A bit small",size3:"Normal",size4:"Medium-large",size5:"Big",size6:"Very big",size7:"Maximum",defaultFont:"Default Font",viewSource:"View Source"},tree:{noNodes:"No nodes available",noResults:"No matching nodes found"}};function Ku(){let e=Array.isArray(navigator.languages)===!0&&navigator.languages.length!==0?navigator.languages[0]:navigator.language;if(typeof e=="string")return e.split(/[-_]/).map((t,o)=>o===0?t.toLowerCase():o>1||t.length<4?t.toUpperCase():t[0].toUpperCase()+t.slice(1).toLowerCase()).join("-")}var _n=Wt({__qLang:{}},{getLocale:Ku,set(e=Wr,t){let o={...e,rtl:e.rtl===!0,getLocale:Ku};if(o.set=_n.set,_n.__langConfig===void 0||_n.__langConfig.noHtmlAttrs!==!0){let r=document.documentElement;r.setAttribute("dir",o.rtl===!0?"rtl":"ltr"),r.setAttribute("lang",o.isoName)}Object.assign(_n.__qLang,o)},install({$q:e,lang:t,ssrContext:o}){e.lang=_n.__qLang,_n.__langConfig=e.config.lang,this.__installed===!0?t!==void 0&&this.set(t):(this.props=new Proxy(this.__qLang,{get(){return Reflect.get(...arguments)},ownKeys(r){return Reflect.ownKeys(r).filter(n=>n!=="set"&&n!=="getLocale")}}),this.set(t||Wr))}}),Yo=_n;var Wu={name:"material-icons",type:{positive:"check_circle",negative:"warning",info:"info",warning:"priority_high"},arrow:{up:"arrow_upward",right:"arrow_forward",down:"arrow_downward",left:"arrow_back",dropdown:"arrow_drop_down"},chevron:{left:"chevron_left",right:"chevron_right"},colorPicker:{spectrum:"gradient",tune:"tune",palette:"style"},pullToRefresh:{icon:"refresh"},carousel:{left:"chevron_left",right:"chevron_right",up:"keyboard_arrow_up",down:"keyboard_arrow_down",navigationIcon:"lens"},chip:{remove:"cancel",selected:"check"},datetime:{arrowLeft:"chevron_left",arrowRight:"chevron_right",now:"access_time",today:"today"},editor:{bold:"format_bold",italic:"format_italic",strikethrough:"strikethrough_s",underline:"format_underlined",unorderedList:"format_list_bulleted",orderedList:"format_list_numbered",subscript:"vertical_align_bottom",superscript:"vertical_align_top",hyperlink:"link",toggleFullscreen:"fullscreen",quote:"format_quote",left:"format_align_left",center:"format_align_center",right:"format_align_right",justify:"format_align_justify",print:"print",outdent:"format_indent_decrease",indent:"format_indent_increase",removeFormat:"format_clear",formatting:"text_format",fontSize:"format_size",align:"format_align_left",hr:"remove",undo:"undo",redo:"redo",heading:"format_size",code:"code",size:"format_size",font:"font_download",viewSource:"code"},expansionItem:{icon:"keyboard_arrow_down",denseIcon:"arrow_drop_down"},fab:{icon:"add",activeIcon:"close"},field:{clear:"cancel",error:"error"},pagination:{first:"first_page",prev:"keyboard_arrow_left",next:"keyboard_arrow_right",last:"last_page"},rating:{icon:"grade"},stepper:{done:"check",active:"edit",error:"warning"},tabs:{left:"chevron_left",right:"chevron_right",up:"keyboard_arrow_up",down:"keyboard_arrow_down"},table:{arrowUp:"arrow_upward",warning:"warning",firstPage:"first_page",prevPage:"chevron_left",nextPage:"chevron_right",lastPage:"last_page"},tree:{icon:"play_arrow"},uploader:{done:"done",clear:"clear",add:"add_box",upload:"cloud_upload",removeQueue:"clear_all",removeUploaded:"done_all"}};var Cl=Wt({iconMapFn:null,__qIconSet:{}},{set(e,t){let o={...e};o.set=Cl.set,Object.assign(Cl.__qIconSet,o)},install({$q:e,iconSet:t,ssrContext:o}){e.config.iconMapFn!==void 0&&(this.iconMapFn=e.config.iconMapFn),e.iconSet=this.__qIconSet,ft(e,"iconMapFn",()=>this.iconMapFn,r=>{this.iconMapFn=r}),this.__installed===!0?t!==void 0&&this.set(t):(this.props=new Proxy(this.__qIconSet,{get(){return Reflect.get(...arguments)},ownKeys(r){return Reflect.ownKeys(r).filter(n=>n!=="set")}}),this.set(t||Wu))}}),Qn=Cl;var Ra="_q_t_",Pa="_q_s_",eo="_q_l_",Aa="_q_pc_",$a="_q_f_",Xo="_q_fo_",Ea="_q_tabs_",Ba="_q_u_";function Ze(){}var jn={},wl=!1;function Yu(){wl=!0}function Xt(e,t){if(e===t)return!0;if(e!==null&&t!==null&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;let o,r;if(e.constructor===Array){if(o=e.length,o!==t.length)return!1;for(r=o;r--!==0;)if(Xt(e[r],t[r])!==!0)return!1;return!0}if(e.constructor===Map){if(e.size!==t.size)return!1;let a=e.entries();for(r=a.next();r.done!==!0;){if(t.has(r.value[0])!==!0)return!1;r=a.next()}for(a=e.entries(),r=a.next();r.done!==!0;){if(Xt(r.value[1],t.get(r.value[0]))!==!0)return!1;r=a.next()}return!0}if(e.constructor===Set){if(e.size!==t.size)return!1;let a=e.entries();for(r=a.next();r.done!==!0;){if(t.has(r.value[0])!==!0)return!1;r=a.next()}return!0}if(e.buffer!=null&&e.buffer.constructor===ArrayBuffer){if(o=e.length,o!==t.length)return!1;for(r=o;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();let n=Object.keys(e).filter(a=>e[a]!==void 0);if(o=n.length,o!==Object.keys(t).filter(a=>t[a]!==void 0).length)return!1;for(r=o;r--!==0;){let a=n[r];if(Xt(e[a],t[a])!==!0)return!1}return!0}return e!==e&&t!==t}function ct(e){return e!==null&&typeof e=="object"&&Array.isArray(e)!==!0}function Go(e){return Object.prototype.toString.call(e)==="[object Date]"}function kl(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function mo(e){return typeof e=="number"&&isFinite(e)}var Xu={deepEqual:Xt,object:ct,date:Go,regexp:kl,number:mo};var Gu=[Ro,ju,Ma,Ta,rn,Yo,Qn];function an(e,t){let o=Du(e);o.config.globalProperties=t.config.globalProperties;let{reload:r,...n}=t._context;return Object.assign(o._context,n),o}function Zu(e,t){t.forEach(o=>{o.install(e),o.__installed=!0})}function kv(e,t,o){e.config.globalProperties.$q=o.$q,e.provide("_q_",o.$q),Zu(o,Gu),t.components!==void 0&&Object.values(t.components).forEach(r=>{ct(r)===!0&&r.name!==void 0&&e.component(r.name,r)}),t.directives!==void 0&&Object.values(t.directives).forEach(r=>{ct(r)===!0&&r.name!==void 0&&e.directive(r.name,r)}),t.plugins!==void 0&&Zu(o,Object.values(t.plugins).filter(r=>typeof r.install=="function"&&Gu.includes(r)===!1)),xt.value===!0&&(o.$q.onSSRHydrated=()=>{o.onSSRHydrated.forEach(r=>{r()}),o.$q.onSSRHydrated=()=>{}})}var Ju=function(e,t={}){let o={version:"2.18.6"};wl===!1?(t.config!==void 0&&Object.assign(jn,t.config),o.config={...jn},Yu()):o.config=t.config||{},kv(e,t,{parentApp:e,$q:o,lang:t.lang,iconSet:t.iconSet,onSSRHydrated:[]})};var ol={};jr(ol,{QAjaxBar:()=>La,QAvatar:()=>Oa,QBadge:()=>us,QBanner:()=>ss,QBar:()=>cs,QBreadcrumbs:()=>ms,QBreadcrumbsEl:()=>ps,QBtn:()=>Ve,QBtnDropdown:()=>Za,QBtnGroup:()=>or,QBtnToggle:()=>Os,QCard:()=>hr,QCardActions:()=>Ja,QCardSection:()=>_o,QCarousel:()=>zs,QCarouselControl:()=>Hs,QCarouselSlide:()=>Is,QChatMessage:()=>Ns,QCheckbox:()=>Vo,QChip:()=>qr,QCircularProgress:()=>Tr,QColor:()=>tc,QDate:()=>vc,QDialog:()=>Ho,QDrawer:()=>_c,QEditor:()=>$c,QExpansionItem:()=>Ec,QFab:()=>Bc,QFabAction:()=>Lc,QField:()=>Pi,QFile:()=>Vc,QFooter:()=>zc,QForm:()=>Ic,QFormChildMixin:()=>Hc,QHeader:()=>Nc,QIcon:()=>Re,QImg:()=>Qc,QInfiniteScroll:()=>jc,QInnerLoading:()=>Uc,QInput:()=>Or,QIntersection:()=>nd,QItem:()=>No,QItemLabel:()=>Ln,QItemSection:()=>ro,QKnob:()=>ad,QLayout:()=>ld,QLinearProgress:()=>Ui,QList:()=>Oi,QMarkupTable:()=>Vi,QMenu:()=>Fo,QNoSsr:()=>ud,QOptionGroup:()=>Hi,QPage:()=>cd,QPageContainer:()=>dd,QPageScroller:()=>fd,QPageSticky:()=>md,QPagination:()=>vd,QParallax:()=>gd,QPopupEdit:()=>hd,QPopupProxy:()=>pd,QPullToRefresh:()=>yd,QRadio:()=>zi,QRange:()=>Sd,QRating:()=>xd,QResizeObserver:()=>no,QResponsive:()=>_d,QRouteTab:()=>Ef,QScrollArea:()=>Td,QScrollObserver:()=>Vr,QSelect:()=>Wi,QSeparator:()=>uo,QSkeleton:()=>$d,QSlideItem:()=>Bd,QSlideTransition:()=>pn,QSlider:()=>Jo,QSpace:()=>Fd,QSpinner:()=>wt,QSpinnerAudio:()=>Ld,QSpinnerBall:()=>Dd,QSpinnerBars:()=>Od,QSpinnerBox:()=>Vd,QSpinnerClock:()=>zd,QSpinnerComment:()=>Id,QSpinnerCube:()=>Hd,QSpinnerDots:()=>Nd,QSpinnerFacebook:()=>Qd,QSpinnerGears:()=>jd,QSpinnerGrid:()=>Ud,QSpinnerHearts:()=>Kd,QSpinnerHourglass:()=>Wd,QSpinnerInfinity:()=>Yd,QSpinnerIos:()=>Xd,QSpinnerOrbit:()=>Gd,QSpinnerOval:()=>Zd,QSpinnerPie:()=>Jd,QSpinnerPuff:()=>ef,QSpinnerRadio:()=>tf,QSpinnerRings:()=>of,QSpinnerTail:()=>nf,QSplitter:()=>rf,QStep:()=>uf,QStepper:()=>sf,QStepperNavigation:()=>cf,QTab:()=>fn,QTabPanel:()=>Rr,QTabPanels:()=>fi,QTable:()=>Pf,QTabs:()=>aa,QTd:()=>$f,QTh:()=>Xi,QTime:()=>Bf,QTimeline:()=>Ff,QTimelineEntry:()=>Lf,QToggle:()=>Ii,QToolbar:()=>Df,QToolbarTitle:()=>Of,QTooltip:()=>Ti,QTr:()=>Af,QTree:()=>Vf,QUploader:()=>Qf,QUploaderAddTrigger:()=>jf,QVideo:()=>Uf,QVirtualScroll:()=>Zi});var es=["B","KB","MB","GB","TB","PB"];function Un(e,t=1){let o=0;for(;parseInt(e,10)>=1024&&o=t?r:new Array(t-r.length+1).join(o)+r}var ts={humanStorageSize:Un,capitalize:Tl,between:tt,normalizeToInterval:Cn,pad:rt};var Ml=XMLHttpRequest,os=Ml.prototype.open,qv=["top","right","bottom","left"],Fa=[],Yr=0;function Tv({p:e,pos:t,active:o,horiz:r,reverse:n,dir:a}){let l=1,u=1;return r===!0?(n===!0&&(l=-1),t==="bottom"&&(u=-1),{transform:`translate3d(${l*(e-100)}%,${o?0:u*-200}%,0)`}):(n===!0&&(u=-1),t==="right"&&(l=-1),{transform:`translate3d(${o?0:a*l*-200}%,${u*(e-100)}%,0)`})}function Mv(e,t){return typeof t!="number"&&(e<25?t=Math.random()*3+3:e<65?t=Math.random()*3:e<85?t=Math.random()*2:e<99?t=.6:t=0),tt(e+t,0,100)}function Rv(e){Yr++,Fa.push(e),!(Yr>1)&&(Ml.prototype.open=function(t,o){let r=[],n=()=>{Fa.forEach(l=>{(l.hijackFilter.value===null||l.hijackFilter.value(o)===!0)&&(l.start(),r.push(l.stop))})},a=()=>{r.forEach(l=>{l()})};this.addEventListener("loadstart",n,{once:!0}),this.addEventListener("loadend",a,{once:!0}),os.apply(this,arguments)})}function Pv(e){Fa=Fa.filter(t=>t.start!==e),Yr=Math.max(0,Yr-1),Yr===0&&(Ml.prototype.open=os)}var La=P({name:"QAjaxBar",props:{position:{type:String,default:"top",validator:e=>qv.includes(e)},size:{type:String,default:"2px"},color:String,skipHijack:Boolean,reverse:Boolean,hijackFilter:Function},emits:["start","stop"],setup(e,{emit:t}){let{proxy:o}=K(),r=T(0),n=T(!1),a=T(!0),l=0,u=null,c,f=s(()=>`q-loading-bar q-loading-bar--${e.position}`+(e.color!==void 0?` bg-${e.color}`:"")+(a.value===!0?"":" no-transition")),d=s(()=>e.position==="top"||e.position==="bottom"),p=s(()=>d.value===!0?"height":"width"),g=s(()=>{let b=n.value,h=Tv({p:r.value,pos:e.position,active:b,horiz:d.value,reverse:o.$q.lang.rtl===!0&&["top","bottom"].includes(e.position)?e.reverse===!1:e.reverse,dir:o.$q.lang.rtl===!0?-1:1});return h[p.value]=e.size,h.opacity=b?1:0,h}),m=s(()=>n.value===!0?{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":r.value}:{"aria-hidden":"true"});function v(b=300){let h=c;return c=Math.max(0,b)||0,l++,l>1?(h===0&&b>0?k():u!==null&&h>0&&b<=0&&(clearTimeout(u),u=null),l):(u!==null&&clearTimeout(u),t("start"),r.value=0,u=setTimeout(()=>{u=null,a.value=!0,b>0&&k()},n._value===!0?500:1),n._value!==!0&&(n.value=!0,a.value=!1),l)}function x(b){return l>0&&(r.value=Mv(r.value,b)),l}function y(){if(l=Math.max(0,l-1),l>0)return l;u!==null&&(clearTimeout(u),u=null),t("stop");let b=()=>{a.value=!0,r.value=100,u=setTimeout(()=>{u=null,n.value=!1},1e3)};return r.value===0?u=setTimeout(b,1):b(),l}function k(){r.value<100&&(u=setTimeout(()=>{u=null,x(),k()},c))}let S;return Qe(()=>{e.skipHijack!==!0&&(S=!0,Rv({start:v,stop:y,hijackFilter:s(()=>e.hijackFilter||null)}))}),be(()=>{u!==null&&clearTimeout(u),S===!0&&Pv(v)}),Object.assign(o,{start:v,stop:y,increment:x}),()=>i("div",{class:f.value,style:g.value,...m.value})}});var Da={xs:18,sm:24,md:32,lg:38,xl:46},Dt={size:String};function Ot(e,t=Da){return s(()=>e.size!==void 0?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}function re(e,t){return e!==void 0&&e()||t}function Po(e,t){if(e!==void 0){let o=e();if(o!=null)return o.slice()}return t}function Ge(e,t){return e!==void 0?t.concat(e()):t}function Kn(e,t){return e===void 0?t:t!==void 0?t.concat(e()):e()}function Rt(e,t,o,r,n,a){t.key=r+n;let l=i(e,t,o);return n===!0?Bt(l,a()):l}var ns="0 0 24 24",Rl=e=>e,Pl=e=>`ionicons ${e}`,as={"mdi-":e=>`mdi ${e}`,"icon-":Rl,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":Pl,"ion-ios":Pl,"ion-logo":Pl,"iconfont ":Rl,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`,"i-":Rl},is={o_:"-outlined",r_:"-round",s_:"-sharp"},ls={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},Av=new RegExp("^("+Object.keys(as).join("|")+")"),$v=new RegExp("^("+Object.keys(is).join("|")+")"),rs=new RegExp("^("+Object.keys(ls).join("|")+")"),Ev=/^[Mm]\s?[-+]?\.?\d/,Bv=/^img:/,Fv=/^svguse:/,Lv=/^ion-/,Dv=/^(fa-(classic|sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /,Re=P({name:"QIcon",props:{...Dt,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=Ot(e),n=s(()=>"q-icon"+(e.left===!0?" on-left":"")+(e.right===!0?" on-right":"")+(e.color!==void 0?` text-${e.color}`:"")),a=s(()=>{let l,u=e.name;if(u==="none"||!u)return{none:!0};if(o.iconMapFn!==null){let d=o.iconMapFn(u);if(d!==void 0)if(d.icon!==void 0){if(u=d.icon,u==="none"||!u)return{none:!0}}else return{cls:d.cls,content:d.content!==void 0?d.content:" "}}if(Ev.test(u)===!0){let[d,p=ns]=u.split("|");return{svg:!0,viewBox:p,nodes:d.split("&&").map(g=>{let[m,v,x]=g.split("@@");return i("path",{style:v,d:m,transform:x})})}}if(Bv.test(u)===!0)return{img:!0,src:u.substring(4)};if(Fv.test(u)===!0){let[d,p=ns]=u.split("|");return{svguse:!0,src:d.substring(7),viewBox:p}}let c=" ",f=u.match(Av);if(f!==null)l=as[f[1]](u);else if(Dv.test(u)===!0)l=u;else if(Lv.test(u)===!0)l=`ionicons ion-${o.platform.is.ios===!0?"ios":"md"}${u.substring(3)}`;else if(rs.test(u)===!0){l="notranslate material-symbols";let d=u.match(rs);d!==null&&(u=u.substring(6),l+=ls[d[1]]),c=u}else{l="notranslate material-icons";let d=u.match($v);d!==null&&(u=u.substring(2),l+=is[d[1]]),c=u}return{cls:l,content:c}});return()=>{let l={class:n.value,style:r.value,"aria-hidden":"true"};return a.value.none===!0?i(e.tag,l,re(t.default)):a.value.img===!0?i(e.tag,l,Ge(t.default,[i("img",{src:a.value.src})])):a.value.svg===!0?i(e.tag,l,Ge(t.default,[i("svg",{viewBox:a.value.viewBox||"0 0 24 24"},a.value.nodes)])):a.value.svguse===!0?i(e.tag,l,Ge(t.default,[i("svg",{viewBox:a.value.viewBox},[i("use",{"xlink:href":a.value.src})])])):(a.value.cls!==void 0&&(l.class+=" "+a.value.cls),i(e.tag,l,Ge(t.default,[a.value.content])))}}});var Oa=P({name:"QAvatar",props:{...Dt,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){let o=Ot(e),r=s(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(e.square===!0?" q-avatar--square":e.rounded===!0?" rounded-borders":"")),n=s(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{let a=e.icon!==void 0?[i(Re,{name:e.icon})]:void 0;return i("div",{class:r.value,style:o.value},[i("div",{class:"q-avatar__content row flex-center overflow-hidden",style:n.value},Kn(t.default,a))])}}});var Ov=["top","middle","bottom"],us=P({name:"QBadge",props:{color:String,textColor:String,floating:Boolean,transparent:Boolean,multiLine:Boolean,outline:Boolean,rounded:Boolean,label:[Number,String],align:{type:String,validator:e=>Ov.includes(e)}},setup(e,{slots:t}){let o=s(()=>e.align!==void 0?{verticalAlign:e.align}:null),r=s(()=>{let n=e.outline===!0&&e.color||e.textColor;return`q-badge flex inline items-center no-wrap q-badge--${e.multiLine===!0?"multi":"single"}-line`+(e.outline===!0?" q-badge--outline":e.color!==void 0?` bg-${e.color}`:"")+(n!==void 0?` text-${n}`:"")+(e.floating===!0?" q-badge--floating":"")+(e.rounded===!0?" q-badge--rounded":"")+(e.transparent===!0?" q-badge--transparent":"")});return()=>i("div",{class:r.value,style:o.value,role:"status","aria-label":e.label},Ge(t.default,e.label!==void 0?[e.label]:[]))}});var Se={dark:{type:Boolean,default:null}};function xe(e,t){return s(()=>e.dark===null?t.dark.isActive:e.dark)}var ss=P({name:"QBanner",props:{...Se,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=xe(e,o),n=s(()=>"q-banner row items-center"+(e.dense===!0?" q-banner--dense":"")+(r.value===!0?" q-banner--dark q-dark":"")+(e.rounded===!0?" rounded-borders":"")),a=s(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?"auto":"all"}`);return()=>{let l=[i("div",{class:"q-banner__avatar col-auto row items-center self-start"},re(t.avatar)),i("div",{class:"q-banner__content col text-body2"},re(t.default))],u=re(t.action);return u!==void 0&&l.push(i("div",{class:a.value},u)),i("div",{class:n.value+(e.inlineActions===!1&&u!==void 0?" q-banner--top-padding":""),role:"alert"},l)}}});var cs=P({name:"QBar",props:{...Se,dense:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=xe(e,o),n=s(()=>`q-bar row no-wrap items-center q-bar--${e.dense===!0?"dense":"standard"} q-bar--${r.value===!0?"dark":"light"}`);return()=>i("div",{class:n.value,role:"toolbar"},re(t.default))}});var ds={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},Vv=Object.keys(ds),Wn={align:{type:String,validator:e=>Vv.includes(e)}};function Yn(e){return s(()=>{let t=e.align===void 0?e.vertical===!0?"stretch":"left":e.align;return`${e.vertical===!0?"items":"justify"}-${ds[t]}`})}function Xr(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function fs(e,t){typeof t.type=="symbol"?Array.isArray(t.children)===!0&&t.children.forEach(o=>{fs(e,o)}):e.add(t)}function Xn(e){let t=new Set;return e.forEach(o=>{fs(t,o)}),Array.from(t)}function Gn(e){return e.appContext.config.globalProperties.$router!==void 0}function Gt(e){return e.isUnmounted===!0||e.isDeactivated===!0}var zv=["",!0],ms=P({name:"QBreadcrumbs",props:{...Wn,separator:{type:String,default:"/"},separatorColor:String,activeColor:{type:String,default:"primary"},gutter:{type:String,validator:e=>["none","xs","sm","md","lg","xl"].includes(e),default:"sm"}},setup(e,{slots:t}){let o=Yn(e),r=s(()=>`flex items-center ${o.value}${e.gutter==="none"?"":` q-gutter-${e.gutter}`}`),n=s(()=>e.separatorColor?` text-${e.separatorColor}`:""),a=s(()=>` text-${e.activeColor}`);return()=>{if(t.default===void 0)return;let l=Xn(re(t.default));if(l.length===0)return;let u=1,c=[],f=l.filter(p=>p.type?.name==="QBreadcrumbsEl").length,d=t.separator!==void 0?t.separator:()=>e.separator;return l.forEach(p=>{if(p.type?.name==="QBreadcrumbsEl"){let g=ua!==n[l]))return!1}return!0}function hs(e,t){return Array.isArray(t)===!0?e.length===t.length&&e.every((o,r)=>o===t[r]):e.length===1&&e[0]===t}function Hv(e,t){return Array.isArray(e)===!0?hs(e,t):Array.isArray(t)===!0?hs(t,e):e===t}function Nv(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let o in e)if(Hv(e[o],t[o])===!1)return!1;return!0}var Al={to:[String,Object],replace:Boolean,href:String,target:String,disable:Boolean},Zo={...Al,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"}};function ln({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){let o=K(),{props:r,proxy:n,emit:a}=o,l=Gn(o),u=s(()=>r.disable!==!0&&r.href!==void 0),c=t===!0?s(()=>l===!0&&r.disable!==!0&&u.value!==!0&&r.to!==void 0&&r.to!==null&&r.to!==""):s(()=>l===!0&&u.value!==!0&&r.to!==void 0&&r.to!==null&&r.to!==""),f=s(()=>c.value===!0?S(r.to):null),d=s(()=>f.value!==null),p=s(()=>u.value===!0||d.value===!0),g=s(()=>r.type==="a"||p.value===!0?"a":r.tag||e||"div"),m=s(()=>u.value===!0?{href:r.href,target:r.target}:d.value===!0?{href:f.value.href,target:r.target}:{}),v=s(()=>{if(d.value===!1)return-1;let{matched:_}=f.value,{length:E}=_,L=_[E-1];if(L===void 0)return-1;let D=n.$route.matched;if(D.length===0)return-1;let Z=D.findIndex(gs.bind(null,L));if(Z!==-1)return Z;let B=vs(_[E-2]);return E>1&&vs(L)===B&&D[D.length-1].path!==B?D.findIndex(gs.bind(null,_[E-2])):Z}),x=s(()=>d.value===!0&&v.value!==-1&&Iv(n.$route.params,f.value.params)),y=s(()=>x.value===!0&&v.value===n.$route.matched.length-1&&Nv(n.$route.params,f.value.params)),k=s(()=>d.value===!0?y.value===!0?` ${r.exactActiveClass} ${r.activeClass}`:r.exact===!0?"":x.value===!0?` ${r.activeClass}`:"":"");function S(_){try{return n.$router.resolve(_)}catch{}return null}function b(_,{returnRouterError:E,to:L=r.to,replace:D=r.replace}={}){if(r.disable===!0)return _.preventDefault(),Promise.resolve(!1);if(_.metaKey||_.altKey||_.ctrlKey||_.shiftKey||_.button!==void 0&&_.button!==0||r.target==="_blank")return Promise.resolve(!1);_.preventDefault();let Z=n.$router[D===!0?"replace":"push"](L);return E===!0?Z:Z.then(()=>{}).catch(()=>{})}function h(_){if(d.value===!0){let E=L=>b(_,L);a("click",_,E),_.defaultPrevented!==!0&&E()}else a("click",_)}return{hasRouterLink:d,hasHrefLink:u,hasLink:p,linkTag:g,resolvedLink:f,linkIsActive:x,linkIsExactActive:y,linkClass:k,linkAttrs:m,getLink:S,navigateToRouterLink:b,navigateOnClick:h}}var ps=P({name:"QBreadcrumbsEl",props:{...Zo,label:String,icon:String,tag:{type:String,default:"span"}},emits:["click"],setup(e,{slots:t}){let{linkTag:o,linkAttrs:r,linkClass:n,navigateOnClick:a}=ln(),l=s(()=>({class:"q-breadcrumbs__el q-link flex inline items-center relative-position "+(e.disable!==!0?"q-link--focusable"+n.value:"q-breadcrumbs__el--disable"),...r.value,onClick:a})),u=s(()=>"q-breadcrumbs__el-icon"+(e.label!==void 0?" q-breadcrumbs__el-icon--with-label":""));return()=>{let c=[];return e.icon!==void 0&&c.push(i(Re,{class:u.value,name:e.icon})),e.label!==void 0&&c.push(e.label),i(o.value,{...l.value},Ge(t.default,c))}}});var We={size:{type:[String,Number],default:"1em"},color:String};function je(e){return{cSize:s(()=>e.size in Da?`${Da[e.size]}px`:e.size),classes:s(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var wt=P({name:"QSpinner",props:{...We,thickness:{type:Number,default:5}},setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[i("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function wn(e){if(e===window)return{top:0,left:0};let{top:t,left:o}=e.getBoundingClientRect();return{top:t,left:o}}function Qv(e,t){return window.getComputedStyle(e).getPropertyValue(t)}function Ao(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function jv(e){return e===window?window.innerWidth:e.getBoundingClientRect().width}function kn(e,t){let o=e.style;for(let r in t)o[r]=t[r]}function Uv(e,t){e.forEach(o=>kn(o,t))}function Kv(e){if(typeof e=="function"){if(document.readyState!=="loading")return e();document.addEventListener("DOMContentLoaded",e,!1)}}function bs(e){if(e==null)return;if(typeof e=="string")try{return document.querySelector(e)||void 0}catch{return}let t=Au(e);if(t)return t.$el||t}function Va(e,t){if(e==null||e.contains(t)===!0)return!0;for(let o=e.nextElementSibling;o!==null;o=o.nextElementSibling)if(o.contains(t))return!0;return!1}var ys={offset:wn,style:Qv,height:Ao,width:jv,css:kn,cssBatch:Uv,ready:Kv};function Zn(e,t=250){let o=!1,r;return function(){return o===!1&&(o=!0,setTimeout(()=>{o=!1},t),r=e.apply(this,arguments)),r}}function Ss(e,t,o,r){o.modifiers.stop===!0&&it(e);let n=o.modifiers.color,a=o.modifiers.center;a=a===!0||r===!0;let l=document.createElement("span"),u=document.createElement("span"),c=_t(e),{left:f,top:d,width:p,height:g}=t.getBoundingClientRect(),m=Math.sqrt(p*p+g*g),v=m/2,x=`${(p-m)/2}px`,y=a?x:`${c.left-f-v}px`,k=`${(g-m)/2}px`,S=a?k:`${c.top-d-v}px`;u.className="q-ripple__inner",kn(u,{height:`${m}px`,width:`${m}px`,transform:`translate3d(${y},${S},0) scale3d(.2,.2,1)`,opacity:0}),l.className=`q-ripple${n?" text-"+n:""}`,l.setAttribute("dir","ltr"),l.appendChild(u),t.appendChild(l);let b=()=>{l.remove(),clearTimeout(h)};o.abort.push(b);let h=setTimeout(()=>{u.classList.add("q-ripple__inner--enter"),u.style.transform=`translate3d(${x},${k},0) scale3d(1,1,1)`,u.style.opacity=.2,h=setTimeout(()=>{u.classList.remove("q-ripple__inner--enter"),u.classList.add("q-ripple__inner--leave"),u.style.opacity=0,h=setTimeout(()=>{l.remove(),o.abort.splice(o.abort.indexOf(b),1)},275)},250)},50)}function xs(e,{modifiers:t,value:o,arg:r}){let n=Object.assign({},e.cfg.ripple,t,o);e.modifiers={early:n.early===!0,stop:n.stop===!0,center:n.center===!0,color:n.color||r,keyCodes:[].concat(n.keyCodes||13)}}var $o=$t({name:"ripple",beforeMount(e,t){let o=t.instance.$.appContext.config.globalProperties.$q.config||{};if(o.ripple===!1)return;let r={cfg:o,enabled:t.value!==!1,modifiers:{},abort:[],start(n){r.enabled===!0&&n.qSkipRipple!==!0&&n.type===(r.modifiers.early===!0?"pointerdown":"click")&&Ss(n,e,r,n.qKeyEvent===!0)},keystart:Zn(n=>{r.enabled===!0&&n.qSkipRipple!==!0&&Mt(n,r.modifiers.keyCodes)===!0&&n.type===`key${r.modifiers.early===!0?"down":"up"}`&&Ss(n,e,r,!0)},300)};xs(r,t),e.__qripple=r,vt(r,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){let o=e.__qripple;o!==void 0&&(o.enabled=t.value!==!1,o.enabled===!0&&Object(t.value)===t.value&&xs(o,t))}},beforeUnmount(e){let t=e.__qripple;t!==void 0&&(t.abort.forEach(o=>{o()}),Tt(t,"main"),delete e._qripple)}});var Gr={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Wv={xs:8,sm:10,md:14,lg:20,xl:24},Yv=["button","submit","reset"],Xv=/[^\s]\/[^\s]/,$l=["flat","outline","push","unelevated"];function za(e,t){return e.flat===!0?"flat":e.outline===!0?"outline":e.push===!0?"push":e.unelevated===!0?"unelevated":t}function Ia(e){let t=za(e);return t!==void 0?{[t]:!0}:{}}var Ha={...Dt,...Al,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...$l.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Wn.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean},_s={...Ha,round:Boolean};function Cs(e){let t=Ot(e,Wv),o=Yn(e),{hasRouterLink:r,hasLink:n,linkTag:a,linkAttrs:l,navigateOnClick:u}=ln({fallbackTag:"button"}),c=s(()=>{let y=e.fab===!1&&e.fabMini===!1?t.value:{};return e.padding!==void 0?Object.assign({},y,{padding:e.padding.split(/\s+/).map(k=>k in Gr?Gr[k]+"px":k).join(" "),minWidth:"0",minHeight:"0"}):y}),f=s(()=>e.rounded===!0||e.fab===!0||e.fabMini===!0),d=s(()=>e.disable!==!0&&e.loading!==!0),p=s(()=>d.value===!0?e.tabindex||0:-1),g=s(()=>za(e,"standard")),m=s(()=>{let y={tabindex:p.value};return n.value===!0?Object.assign(y,l.value):Yv.includes(e.type)===!0&&(y.type=e.type),a.value==="a"?(e.disable===!0?y["aria-disabled"]="true":y.href===void 0&&(y.role="button"),r.value!==!0&&Xv.test(e.type)===!0&&(y.type=e.type)):e.disable===!0&&(y.disabled="",y["aria-disabled"]="true"),e.loading===!0&&e.percentage!==void 0&&Object.assign(y,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),y}),v=s(()=>{let y;e.color!==void 0?e.flat===!0||e.outline===!0?y=`text-${e.textColor||e.color}`:y=`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(y=`text-${e.textColor}`);let k=e.round===!0?"round":`rectangle${f.value===!0?" q-btn--rounded":e.square===!0?" q-btn--square":""}`;return`q-btn--${g.value} q-btn--${k}`+(y!==void 0?" "+y:"")+(d.value===!0?" q-btn--actionable q-focusable q-hoverable":e.disable===!0?" disabled":"")+(e.fab===!0?" q-btn--fab":e.fabMini===!0?" q-btn--fab-mini":"")+(e.noCaps===!0?" q-btn--no-uppercase":"")+(e.dense===!0?" q-btn--dense":"")+(e.stretch===!0?" no-border-radius self-stretch":"")+(e.glossy===!0?" glossy":"")+(e.square?" q-btn--square":"")}),x=s(()=>o.value+(e.stack===!0?" column":" row")+(e.noWrap===!0?" no-wrap text-no-wrap":"")+(e.loading===!0?" q-btn__content--hidden":""));return{classes:v,style:c,innerClasses:x,attributes:m,hasLink:n,linkTag:a,navigateOnClick:u,isActionable:d}}var{passiveCapture:vo}=et,Jn=null,er=null,tr=null,Ve=P({name:"QBtn",props:{..._s,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{classes:n,style:a,innerClasses:l,attributes:u,hasLink:c,linkTag:f,navigateOnClick:d,isActionable:p}=Cs(e),g=T(null),m=T(null),v=null,x,y=null,k=s(()=>e.label!==void 0&&e.label!==null&&e.label!==""),S=s(()=>e.disable===!0||e.ripple===!1?!1:{keyCodes:c.value===!0?[13,32]:[13],...e.ripple===!0?{}:e.ripple}),b=s(()=>({center:e.round})),h=s(()=>{let C=Math.max(0,Math.min(100,e.percentage));return C>0?{transition:"transform 0.6s",transform:`translateX(${C-100}%)`}:{}}),_=s(()=>{if(e.loading===!0)return{onMousedown:q,onTouchstart:q,onClick:q,onKeydown:q,onKeyup:q};if(p.value===!0){let C={onClick:L,onKeydown:D,onMousedown:B};if(r.$q.platform.has.touch===!0){let A=e.onTouchstart!==void 0?"":"Passive";C[`onTouchstart${A}`]=Z}return C}return{onClick:_e}}),E=s(()=>({ref:g,class:"q-btn q-btn-item non-selectable no-outline "+n.value,style:a.value,...u.value,..._.value}));function L(C){if(g.value!==null){if(C!==void 0){if(C.defaultPrevented===!0)return;let A=document.activeElement;if(e.type==="submit"&&A!==document.body&&g.value.contains(A)===!1&&A.contains(g.value)===!1){C.qAvoidFocus!==!0&&g.value.focus();let z=()=>{document.removeEventListener("keydown",_e,!0),document.removeEventListener("keyup",z,vo),g.value?.removeEventListener("blur",z,vo)};document.addEventListener("keydown",_e,!0),document.addEventListener("keyup",z,vo),g.value.addEventListener("blur",z,vo)}}d(C)}}function D(C){g.value!==null&&(o("keydown",C),Mt(C,[13,32])===!0&&er!==g.value&&(er!==null&&$(),C.defaultPrevented!==!0&&(C.qAvoidFocus!==!0&&g.value.focus(),er=g.value,g.value.classList.add("q-btn--active"),document.addEventListener("keyup",F,!0),g.value.addEventListener("blur",F,vo)),_e(C)))}function Z(C){g.value!==null&&(o("touchstart",C),C.defaultPrevented!==!0&&(Jn!==g.value&&(Jn!==null&&$(),Jn=g.value,v=C.target,v.addEventListener("touchcancel",F,vo),v.addEventListener("touchend",F,vo)),x=!0,y!==null&&clearTimeout(y),y=setTimeout(()=>{y=null,x=!1},200)))}function B(C){g.value!==null&&(C.qSkipRipple=x===!0,o("mousedown",C),C.defaultPrevented!==!0&&tr!==g.value&&(tr!==null&&$(),tr=g.value,g.value.classList.add("q-btn--active"),document.addEventListener("mouseup",F,vo)))}function F(C){if(g.value!==null&&!(C?.type==="blur"&&document.activeElement===g.value)){if(C?.type==="keyup"){if(er===g.value&&Mt(C,[13,32])===!0){let A=new MouseEvent("click",C);A.qKeyEvent=!0,C.defaultPrevented===!0&>(A),C.cancelBubble===!0&&it(A),g.value.dispatchEvent(A),_e(C),C.qKeyEvent=!0}o("keyup",C)}$()}}function $(C){let A=m.value;C!==!0&&(Jn===g.value||tr===g.value)&&A!==null&&A!==document.activeElement&&(A.setAttribute("tabindex",-1),A.focus()),Jn===g.value&&(v!==null&&(v.removeEventListener("touchcancel",F,vo),v.removeEventListener("touchend",F,vo)),Jn=v=null),tr===g.value&&(document.removeEventListener("mouseup",F,vo),tr=null),er===g.value&&(document.removeEventListener("keyup",F,!0),g.value?.removeEventListener("blur",F,vo),er=null),g.value?.classList.remove("q-btn--active")}function q(C){_e(C),C.qSkipRipple=!0}return be(()=>{$(!0)}),Object.assign(r,{click:C=>{p.value===!0&&L(C)}}),()=>{let C=[];e.icon!==void 0&&C.push(i(Re,{name:e.icon,left:e.stack!==!0&&k.value===!0,role:"img"})),k.value===!0&&C.push(i("span",{class:"block"},[e.label])),C=Ge(t.default,C),e.iconRight!==void 0&&e.round===!1&&C.push(i(Re,{name:e.iconRight,right:e.stack!==!0&&k.value===!0,role:"img"}));let A=[i("span",{class:"q-focus-helper",ref:m})];return e.loading===!0&&e.percentage!==void 0&&A.push(i("span",{class:"q-btn__progress absolute-full overflow-hidden"+(e.darkPercentage===!0?" q-btn__progress--dark":"")},[i("span",{class:"q-btn__progress-indicator fit block",style:h.value})])),A.push(i("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+l.value},C)),e.loading!==null&&A.push(i(st,{name:"q-transition--fade"},()=>e.loading===!0?[i("span",{key:"loading",class:"absolute-full flex flex-center"},t.loading!==void 0?t.loading():[i(wt)])]:null)),Bt(i(f.value,E.value,A),[[$o,S.value,void 0,b.value]])}}});var or=P({name:"QBtnGroup",props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){let o=s(()=>{let r=["unelevated","outline","flat","rounded","square","push","stretch","glossy"].filter(n=>e[n]===!0).map(n=>`q-btn-group--${n}`).join(" ");return`q-btn-group row no-wrap${r.length!==0?" "+r:""}`+(e.spread===!0?" q-btn-group--spread":" inline")});return()=>i("div",{class:o.value},re(t.default))}});function Ht(){if(window.getSelection!==void 0){let e=window.getSelection();e.empty!==void 0?e.empty():e.removeAllRanges!==void 0&&(e.removeAllRanges(),Ro.is.mobile!==!0&&e.addRange(document.createRange()))}else document.selection!==void 0&&document.selection.empty()}var El={target:{type:[Boolean,String,Element],default:!0},noParentEvent:Boolean},Na={...El,contextMenu:Boolean};function nr({showing:e,avoidEmit:t,configureAnchorEl:o}){let{props:r,proxy:n,emit:a}=K(),l=T(null),u=null;function c(m){return l.value===null?!1:m===void 0||m.touches===void 0||m.touches.length<=1}let f={};o===void 0&&(Object.assign(f,{hide(m){n.hide(m)},toggle(m){n.toggle(m),m.qAnchorHandled=!0},toggleKey(m){Mt(m,13)===!0&&f.toggle(m)},contextClick(m){n.hide(m),gt(m),Be(()=>{n.show(m),m.qAnchorHandled=!0})},prevent:gt,mobileTouch(m){if(f.mobileCleanup(m),c(m)!==!0)return;n.hide(m),l.value.classList.add("non-selectable");let v=m.target;vt(f,"anchor",[[v,"touchmove","mobileCleanup","passive"],[v,"touchend","mobileCleanup","passive"],[v,"touchcancel","mobileCleanup","passive"],[l.value,"contextmenu","prevent","notPassive"]]),u=setTimeout(()=>{u=null,n.show(m),m.qAnchorHandled=!0},300)},mobileCleanup(m){l.value.classList.remove("non-selectable"),u!==null&&(clearTimeout(u),u=null),e.value===!0&&m!==void 0&&Ht()}}),o=function(m=r.contextMenu){if(r.noParentEvent===!0||l.value===null)return;let v;m===!0?n.$q.platform.is.mobile===!0?v=[[l.value,"touchstart","mobileTouch","passive"]]:v=[[l.value,"mousedown","hide","passive"],[l.value,"contextmenu","contextClick","notPassive"]]:v=[[l.value,"click","toggle","passive"],[l.value,"keyup","toggleKey","passive"]],vt(f,"anchor",v)});function d(){Tt(f,"anchor")}function p(m){for(l.value=m;l.value.classList.contains("q-anchor--skip");)l.value=l.value.parentNode;o()}function g(){if(r.target===!1||r.target===""||n.$el.parentNode===null)l.value=null;else if(r.target===!0)p(n.$el.parentNode);else{let m=r.target;if(typeof r.target=="string")try{m=document.querySelector(r.target)}catch{m=void 0}m!=null?(l.value=m.$el||m,o()):(l.value=null,console.error(`Anchor: target "${r.target}" not found`))}}return Y(()=>r.contextMenu,m=>{l.value!==null&&(d(),o(m))}),Y(()=>r.target,()=>{l.value!==null&&d(),g()}),Y(()=>r.noParentEvent,m=>{l.value!==null&&(m===!0?d():o())}),Qe(()=>{g(),t!==!0&&r.modelValue===!0&&l.value===null&&a("update:modelValue",!1)}),be(()=>{u!==null&&clearTimeout(u),d()}),{anchorEl:l,canShow:c,anchorEvents:f}}function Qa(e,t){let o=T(null),r;function n(u,c){let f=`${c!==void 0?"add":"remove"}EventListener`,d=c!==void 0?c:r;u!==window&&u[f]("scroll",d,et.passive),window[f]("scroll",d,et.passive),r=c}function a(){o.value!==null&&(n(o.value),o.value=null)}let l=Y(()=>e.noParentEvent,()=>{o.value!==null&&(a(),t())});return be(l),{localScrollTarget:o,unconfigureScrollTarget:a,changeScrollEvent:n}}var go={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},ho=["beforeShow","show","beforeHide","hide"];function po({showing:e,canShow:t,hideOnRouteChange:o,handleShow:r,handleHide:n,processOnMount:a}){let l=K(),{props:u,emit:c,proxy:f}=l,d;function p(S){e.value===!0?v(S):g(S)}function g(S){if(u.disable===!0||S?.qAnchorHandled===!0||t!==void 0&&t(S)!==!0)return;let b=u["onUpdate:modelValue"]!==void 0;b===!0&&(c("update:modelValue",!0),d=S,Be(()=>{d===S&&(d=void 0)})),(u.modelValue===null||b===!1)&&m(S)}function m(S){e.value!==!0&&(e.value=!0,c("beforeShow",S),r!==void 0?r(S):c("show",S))}function v(S){if(u.disable===!0)return;let b=u["onUpdate:modelValue"]!==void 0;b===!0&&(c("update:modelValue",!1),d=S,Be(()=>{d===S&&(d=void 0)})),(u.modelValue===null||b===!1)&&x(S)}function x(S){e.value!==!1&&(e.value=!1,c("beforeHide",S),n!==void 0?n(S):c("hide",S))}function y(S){u.disable===!0&&S===!0?u["onUpdate:modelValue"]!==void 0&&c("update:modelValue",!1):S===!0!==e.value&&(S===!0?m:x)(d)}Y(()=>u.modelValue,y),o!==void 0&&Gn(l)===!0&&Y(()=>f.$route.fullPath,()=>{o.value===!0&&e.value===!0&&v()}),a===!0&&Qe(()=>{y(u.modelValue)});let k={show:g,hide:v,toggle:p};return Object.assign(f,k),k}var qn=[],Zr=[];function ws(e){Zr=Zr.filter(t=>t!==e)}function ks(e){ws(e),Zr.push(e)}function Bl(e){ws(e),Zr.length===0&&qn.length!==0&&(qn[qn.length-1](),qn=[])}function bo(e){Zr.length===0?e():qn.push(e)}function qs(e){qn=qn.filter(t=>t!==e)}var rr=[],Jr=[],Gv=1,un=document.body;function Eo(e,t){let o=document.createElement("div");if(o.id=t!==void 0?`q-portal--${t}--${Gv++}`:e,jn.globalNodes!==void 0){let r=jn.globalNodes.class;r!==void 0&&(o.className=r)}return un.appendChild(o),rr.push(o),Jr.push(t),o}function ar(e){let t=rr.indexOf(e);rr.splice(t,1),Jr.splice(t,1),e.remove()}function Ts(e){if(e===un)return;if(un=e,un===document.body||Jr.reduce((o,r)=>r==="dialog"?o+1:o,0)<2){rr.forEach(o=>{o.contains(un)===!1&&un.appendChild(o)});return}let t=Jr.lastIndexOf("dialog");for(let o=0;ot.contentEl!==null&&t.contentEl.contains(e))}function Fl(e,t){do{if(e.$options.name==="QMenu"){if(e.hide(t),e.$props.separateClosePopup===!0)return Xr(e)}else if(e.__qPortal===!0){let o=Xr(e);return o?.$options.name==="QPopupProxy"?(e.hide(t),o):e}e=Xr(e)}while(e!=null)}function Rs(e,t,o){for(;o!==0&&e!==void 0&&e!==null;){if(e.__qPortal===!0){if(o--,e.$options.name==="QMenu"){e=Fl(e,t);continue}e.hide(t)}e=Xr(e)}}var Zv=P({name:"QPortal",setup(e,{slots:t}){return()=>t.default()}});function Jv(e){for(e=e.parent;e!=null;){if(e.type.name==="QGlobalDialog")return!0;if(e.type.name==="QDialog"||e.type.name==="QMenu")return!1;e=e.parent}return!1}function ir(e,t,o,r){let n=T(!1),a=T(!1),l=null,u={},c=r==="dialog"&&Jv(e);function f(p){if(p===!0){Bl(u),a.value=!0;return}a.value=!1,n.value===!1&&(c===!1&&l===null&&(l=Eo(!1,r)),n.value=!0,sn.push(e.proxy),ks(u))}function d(p){if(a.value=!1,p!==!0)return;Bl(u),n.value=!1;let g=sn.indexOf(e.proxy);g!==-1&&sn.splice(g,1),l!==null&&(ar(l),l=null)}return Nn(()=>{d(!0)}),e.proxy.__qPortal=!0,ft(e.proxy,"contentEl",()=>t.value),{showPortal:f,hidePortal:d,portalIsActive:n,portalIsAccessible:a,renderPortal:()=>c===!0?o():n.value===!0?[i(Fu,{to:l},i(Zv,o))]:void 0}}var yo={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function cn(e,t=()=>{},o=()=>{}){return{transitionProps:s(()=>{let r=`q-transition--${e.transitionShow||t()}`,n=`q-transition--${e.transitionHide||o()}`;return{appear:!0,enterFromClass:`${r}-enter-from`,enterActiveClass:`${r}-enter-active`,enterToClass:`${r}-enter-to`,leaveFromClass:`${n}-leave-from`,leaveActiveClass:`${n}-leave-active`,leaveToClass:`${n}-leave-to`}}),transitionStyle:s(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}function So(){let e,t=K();function o(){e=void 0}return At(o),be(o),{removeTick:o,registerTick(r){e=r,Be(()=>{e===r&&(Gt(t)===!1&&e(),e=void 0)})}}}function Vt(){let e=null,t=K();function o(){e!==null&&(clearTimeout(e),e=null)}return At(o),be(o),{removeTimeout:o,registerTimeout(r,n){o(),Gt(t)===!1&&(e=setTimeout(()=>{e=null,r()},n))}}}var to=[Element,String],eg=[null,document,document.body,document.scrollingElement,document.documentElement];function Ft(e,t){let o=bs(t);if(o===void 0){if(e==null)return window;o=e.closest(".scroll,.scroll-y,.overflow-auto")}return eg.includes(o)?window:o}function lr(e){return(e===window?document.body:e).scrollHeight}function tg(e){return(e===window?document.body:e).scrollWidth}function oo(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function dn(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function Ol(e,t,o=0){let r=arguments[3]===void 0?performance.now():arguments[3],n=oo(e);if(o<=0){n!==t&&Ll(e,t);return}requestAnimationFrame(a=>{let l=a-r,u=n+(t-n)/Math.max(l,o)*l;Ll(e,u),u!==t&&Ol(e,t,o-l,a)})}function Vl(e,t,o=0){let r=arguments[3]===void 0?performance.now():arguments[3],n=dn(e);if(o<=0){n!==t&&Dl(e,t);return}requestAnimationFrame(a=>{let l=a-r,u=n+(t-n)/Math.max(l,o)*l;Dl(e,u),u!==t&&Vl(e,t,o-l,a)})}function Ll(e,t){if(e===window){window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t);return}e.scrollTop=t}function Dl(e,t){if(e===window){window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0);return}e.scrollLeft=t}function Bo(e,t,o){if(o){Ol(e,t,o);return}Ll(e,t)}function ea(e,t,o){if(o){Vl(e,t,o);return}Dl(e,t)}var ja;function Tn(){if(ja!==void 0)return ja;let e=document.createElement("p"),t=document.createElement("div");kn(e,{width:"100%",height:"200px"}),kn(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);let o=e.offsetWidth;t.style.overflow="scroll";let r=e.offsetWidth;return o===r&&(r=t.clientWidth),t.remove(),ja=o-r,ja}function zl(e,t=!0){return!e||e.nodeType!==Node.ELEMENT_NODE?!1:t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"]))}var Ps={getScrollTarget:Ft,getScrollHeight:lr,getScrollWidth:tg,getVerticalScrollPosition:oo,getHorizontalScrollPosition:dn,animVerticalScrollTo:Ol,animHorizontalScrollTo:Vl,setVerticalScrollPosition:Bo,setHorizontalScrollPosition:ea,getScrollbarWidth:Tn,hasScrollbar:zl};var Mn=[],ur;function og(e){ur=e.keyCode===27}function ng(){ur===!0&&(ur=!1)}function rg(e){ur===!0&&(ur=!1,Mt(e,27)===!0&&Mn[Mn.length-1](e))}function As(e){window[e]("keydown",og),window[e]("blur",ng),window[e]("keyup",rg),ur=!1}function Ua(e){Ae.is.desktop===!0&&(Mn.push(e),Mn.length===1&&As("addEventListener"))}function sr(e){let t=Mn.indexOf(e);t!==-1&&(Mn.splice(t,1),Mn.length===0&&As("removeEventListener"))}var Rn=[];function $s(e){Rn[Rn.length-1](e)}function cr(e){Ae.is.desktop===!0&&(Rn.push(e),Rn.length===1&&document.body.addEventListener("focusin",$s))}function Pn(e){let t=Rn.indexOf(e);t!==-1&&(Rn.splice(t,1),Rn.length===0&&document.body.removeEventListener("focusin",$s))}var dr=null,{notPassiveCapture:Ka}=et,An=[];function Wa(e){dr!==null&&(clearTimeout(dr),dr=null);let t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains("no-pointer-events")===!0)return;let o=sn.length-1;for(;o>=0;){let r=sn[o].$;if(r.type.name==="QTooltip"){o--;continue}if(r.type.name!=="QDialog")break;if(r.props.seamless!==!0)return;o--}for(let r=An.length-1;r>=0;r--){let n=An[r];if((n.anchorEl.value===null||n.anchorEl.value.contains(t)===!1)&&(t===document.body||n.innerRef.value!==null&&n.innerRef.value.contains(t)===!1))e.qClickOutside=!0,n.onClickOutside(e);else return}}function Ya(e){An.push(e),An.length===1&&(document.addEventListener("mousedown",Wa,Ka),document.addEventListener("touchstart",Wa,Ka))}function fr(e){let t=An.findIndex(o=>o===e);t!==-1&&(An.splice(t,1),An.length===0&&(dr!==null&&(clearTimeout(dr),dr=null),document.removeEventListener("mousedown",Wa,Ka),document.removeEventListener("touchstart",Wa,Ka)))}var Es,Bs;function mr(e){let t=e.split(" ");return t.length!==2?!1:["top","center","bottom"].includes(t[0])!==!0?(console.error("Anchor/Self position must start with one of top/center/bottom"),!1):["left","middle","right","start","end"].includes(t[1])!==!0?(console.error("Anchor/Self position must end with one of left/middle/right/start/end"),!1):!0}function Xa(e){return e?!(e.length!==2||typeof e[0]!="number"||typeof e[1]!="number"):!0}var Hl={"start#ltr":"left","start#rtl":"right","end#ltr":"right","end#rtl":"left"};["left","middle","right"].forEach(e=>{Hl[`${e}#ltr`]=e,Hl[`${e}#rtl`]=e});function vr(e,t){let o=e.split(" ");return{vertical:o[0],horizontal:Hl[`${o[1]}#${t===!0?"rtl":"ltr"}`]}}function ag(e,t){let{top:o,left:r,right:n,bottom:a,width:l,height:u}=e.getBoundingClientRect();return t!==void 0&&(o-=t[1],r-=t[0],a+=t[1],n+=t[0],l+=t[0],u+=t[1]),{top:o,bottom:a,height:u,left:r,right:n,width:l,middle:r+(n-r)/2,center:o+(a-o)/2}}function ig(e,t,o){let{top:r,left:n}=e.getBoundingClientRect();return r+=t.top,n+=t.left,o!==void 0&&(r+=o[1],n+=o[0]),{top:r,bottom:r+1,height:1,left:n,right:n+1,width:1,middle:n,center:r}}function lg(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}function Fs(e,t,o,r){return{top:e[o.vertical]-t[r.vertical],left:e[o.horizontal]-t[r.horizontal]}}function ta(e,t=0){if(e.targetEl===null||e.anchorEl===null||t>5)return;if(e.targetEl.offsetHeight===0||e.targetEl.offsetWidth===0){setTimeout(()=>{ta(e,t+1)},10);return}let{targetEl:o,offset:r,anchorEl:n,anchorOrigin:a,selfOrigin:l,absoluteOffset:u,fit:c,cover:f,maxHeight:d,maxWidth:p}=e;if(Ae.is.ios===!0&&window.visualViewport!==void 0){let E=document.body.style,{offsetLeft:L,offsetTop:D}=window.visualViewport;L!==Es&&(E.setProperty("--q-pe-left",L+"px"),Es=L),D!==Bs&&(E.setProperty("--q-pe-top",D+"px"),Bs=D)}let{scrollLeft:g,scrollTop:m}=o,v=u===void 0?ag(n,f===!0?[0,0]:r):ig(n,u,r);Object.assign(o.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:p,maxHeight:d,visibility:"visible"});let{offsetWidth:x,offsetHeight:y}=o,{elWidth:k,elHeight:S}=c===!0||f===!0?{elWidth:Math.max(v.width,x),elHeight:f===!0?Math.max(v.height,y):y}:{elWidth:x,elHeight:y},b={maxWidth:p,maxHeight:d};(c===!0||f===!0)&&(b.minWidth=v.width+"px",f===!0&&(b.minHeight=v.height+"px")),Object.assign(o.style,b);let h=lg(k,S),_=Fs(v,h,a,l);if(u===void 0||r===void 0)Il(_,v,h,a,l);else{let{top:E,left:L}=_;Il(_,v,h,a,l);let D=!1;if(_.top!==E){D=!0;let Z=2*r[1];v.center=v.top-=Z,v.bottom-=Z+2}if(_.left!==L){D=!0;let Z=2*r[0];v.middle=v.left-=Z,v.right-=Z+2}D===!0&&(_=Fs(v,h,a,l),Il(_,v,h,a,l))}b={top:_.top+"px",left:_.left+"px"},_.maxHeight!==void 0&&(b.maxHeight=_.maxHeight+"px",v.height>_.maxHeight&&(b.minHeight=b.maxHeight)),_.maxWidth!==void 0&&(b.maxWidth=_.maxWidth+"px",v.width>_.maxWidth&&(b.minWidth=b.maxWidth)),Object.assign(o.style,b),o.scrollTop!==m&&(o.scrollTop=m),o.scrollLeft!==g&&(o.scrollLeft=g)}function Il(e,t,o,r,n){let a=o.bottom,l=o.right,u=Tn(),c=window.innerHeight-u,f=document.body.clientWidth;if(e.top<0||e.top+a>c)if(n.vertical==="center")e.top=t[r.vertical]>c/2?Math.max(0,c-a):0,e.maxHeight=Math.min(a,c);else if(t[r.vertical]>c/2){let d=Math.min(c,r.vertical==="center"?t.center:r.vertical===n.vertical?t.bottom:t.top);e.maxHeight=Math.min(a,d),e.top=Math.max(0,d-a)}else e.top=Math.max(0,r.vertical==="center"?t.center:r.vertical===n.vertical?t.top:t.bottom),e.maxHeight=Math.min(a,c-e.top);if(e.left<0||e.left+l>f)if(e.maxWidth=Math.min(l,f),n.horizontal==="middle")e.left=t[r.horizontal]>f/2?Math.max(0,f-l):0;else if(t[r.horizontal]>f/2){let d=Math.min(f,r.horizontal==="middle"?t.middle:r.horizontal===n.horizontal?t.right:t.left);e.maxWidth=Math.min(l,d),e.left=Math.max(0,d-e.maxWidth)}else e.left=Math.max(0,r.horizontal==="middle"?t.middle:r.horizontal===n.horizontal?t.left:t.right),e.maxWidth=Math.min(l,f-e.left)}var Fo=P({name:"QMenu",inheritAttrs:!1,props:{...Na,...go,...Se,...yo,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noEscDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:mr},self:{type:String,validator:mr},offset:{type:Array,validator:Xa},scrollTarget:to,touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...ho,"click","escapeKey"],setup(e,{slots:t,emit:o,attrs:r}){let n=null,a,l,u,c=K(),{proxy:f}=c,{$q:d}=f,p=T(null),g=T(!1),m=s(()=>e.persistent!==!0&&e.noRouteDismiss!==!0),v=xe(e,d),{registerTick:x,removeTick:y}=So(),{registerTimeout:k}=Vt(),{transitionProps:S,transitionStyle:b}=cn(e),{localScrollTarget:h,changeScrollEvent:_,unconfigureScrollTarget:E}=Qa(e,W),{anchorEl:L,canShow:D}=nr({showing:g}),{hide:Z}=po({showing:g,canShow:D,handleShow:ve,handleHide:O,hideOnRouteChange:m,processOnMount:!0}),{showPortal:B,hidePortal:F,renderPortal:$}=ir(c,p,ae,"menu"),q={anchorEl:L,innerRef:p,onClickOutside(j){if(e.persistent!==!0&&g.value===!0)return Z(j),(j.type==="touchstart"||j.target.classList.contains("q-dialog__backdrop"))&&_e(j),!0}},C=s(()=>vr(e.anchor||(e.cover===!0?"center middle":"bottom start"),d.lang.rtl)),A=s(()=>e.cover===!0?C.value:vr(e.self||"top start",d.lang.rtl)),z=s(()=>(e.square===!0?" q-menu--square":"")+(v.value===!0?" q-menu--dark q-dark":"")),H=s(()=>e.autoClose===!0?{onClick:U}:{}),Q=s(()=>g.value===!0&&e.persistent!==!0);Y(Q,j=>{j===!0?(Ua(M),Ya(q)):(sr(M),fr(q))});function ee(){bo(()=>{let j=p.value;j&&j.contains(document.activeElement)!==!0&&(j=j.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||j.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||j.querySelector("[autofocus], [data-autofocus]")||j,j.focus({preventScroll:!0}))})}function ve(j){if(n=e.noRefocus===!1?document.activeElement:null,cr(le),B(),W(),a=void 0,j!==void 0&&(e.touchPosition||e.contextMenu)){let fe=_t(j);if(fe.left!==void 0){let{top:ke,left:X}=L.value.getBoundingClientRect();a={left:fe.left-X,top:fe.top-ke}}}l===void 0&&(l=Y(()=>d.screen.width+"|"+d.screen.height+"|"+e.self+"|"+e.anchor+"|"+d.lang.rtl,V)),e.noFocus!==!0&&document.activeElement.blur(),x(()=>{V(),e.noFocus!==!0&&ee()}),k(()=>{d.platform.is.ios===!0&&(u=e.autoClose,p.value.click()),V(),B(!0),o("show",j)},e.transitionDuration)}function O(j){y(),F(),w(!0),n!==null&&(j===void 0||j.qClickOutside!==!0)&&(((j?.type.indexOf("key")===0?n.closest('[tabindex]:not([tabindex^="-"])'):void 0)||n).focus(),n=null),k(()=>{F(!0),o("hide",j)},e.transitionDuration)}function w(j){a=void 0,l!==void 0&&(l(),l=void 0),(j===!0||g.value===!0)&&(Pn(le),E(),fr(q),sr(M)),j!==!0&&(n=null)}function W(){(L.value!==null||e.scrollTarget!==void 0)&&(h.value=Ft(L.value,e.scrollTarget),_(h.value,V))}function U(j){u!==!0?(Fl(f,j),o("click",j)):u=!1}function le(j){Q.value===!0&&e.noFocus!==!0&&Va(p.value,j.target)!==!0&&ee()}function M(j){e.noEscDismiss!==!0&&(o("escapeKey"),Z(j))}function V(){ta({targetEl:p.value,offset:e.offset,anchorEl:L.value,anchorOrigin:C.value,selfOrigin:A.value,absoluteOffset:a,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function ae(){return i(st,S.value,()=>g.value===!0?i("div",{role:"menu",...r,ref:p,tabindex:-1,class:["q-menu q-position-engine scroll"+z.value,r.class],style:[r.style,b.value],...H.value},re(t.default)):null)}return be(w),Object.assign(f,{focus:ee,updatePosition:V}),$}});var Nl,Ga=0,Nt=new Array(256);for(let e=0;e<256;e++)Nt[e]=(e+256).toString(16).substring(1);var ug=(()=>{let e=typeof crypto<"u"?crypto:typeof window<"u"?window.crypto||window.msCrypto:void 0;if(e!==void 0){if(e.randomBytes!==void 0)return e.randomBytes;if(e.getRandomValues!==void 0)return t=>{let o=new Uint8Array(t);return e.getRandomValues(o),o}}return t=>{let o=[];for(let r=t;r>0;r--)o.push(Math.floor(Math.random()*256));return o}})(),Ls=4096;function Lo(){(Nl===void 0||Ga+16>Ls)&&(Ga=0,Nl=ug(Ls));let e=Array.prototype.slice.call(Nl,Ga,Ga+=16);return e[6]=e[6]&15|64,e[8]=e[8]&63|128,Nt[e[0]]+Nt[e[1]]+Nt[e[2]]+Nt[e[3]]+"-"+Nt[e[4]]+Nt[e[5]]+"-"+Nt[e[6]]+Nt[e[7]]+"-"+Nt[e[8]]+Nt[e[9]]+"-"+Nt[e[10]]+Nt[e[11]]+Nt[e[12]]+Nt[e[13]]+Nt[e[14]]+Nt[e[15]]}function sg(e){return e??null}function Ds(e,t){return e??(t===!0?`f_${Lo()}`:null)}function Do({getValue:e,required:t=!0}={}){if(xt.value===!0){let o=e!==void 0?T(sg(e())):T(null);return t===!0&&o.value===null&&Qe(()=>{o.value=`f_${Lo()}`}),e!==void 0&&Y(e,r=>{o.value=Ds(r,t)}),o}return e!==void 0?s(()=>Ds(e(),t)):T(`f_${Lo()}`)}var cg=Object.keys(Ha);function dg(e){return cg.reduce((t,o)=>{let r=e[o];return r!==void 0&&(t[o]=r),t},{})}var Za=P({name:"QBtnDropdown",props:{...Ha,...yo,modelValue:Boolean,split:Boolean,dropdownIcon:String,contentClass:[Array,String,Object],contentStyle:[Array,String,Object],cover:Boolean,persistent:Boolean,noEscDismiss:Boolean,noRouteDismiss:Boolean,autoClose:Boolean,noRefocus:Boolean,noFocus:Boolean,menuAnchor:{type:String,default:"bottom end"},menuSelf:{type:String,default:"top end"},menuOffset:Array,disableMainBtn:Boolean,disableDropdown:Boolean,noIconAnimation:Boolean,toggleAriaLabel:String},emits:["update:modelValue","click","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),n=T(e.modelValue),a=T(null),l=Do(),u=s(()=>{let h={"aria-expanded":n.value===!0?"true":"false","aria-haspopup":"true","aria-controls":l.value,"aria-label":e.toggleAriaLabel||r.$q.lang.label[n.value===!0?"collapse":"expand"](e.label)};return(e.disable===!0||e.split===!1&&e.disableMainBtn===!0||e.disableDropdown===!0)&&(h["aria-disabled"]="true"),h}),c=s(()=>"q-btn-dropdown__arrow"+(n.value===!0&&e.noIconAnimation===!1?" rotate-180":"")+(e.split===!1?" q-btn-dropdown__arrow-container":"")),f=s(()=>Ia(e)),d=s(()=>dg(e));Y(()=>e.modelValue,h=>{a.value?.[h?"show":"hide"]()}),Y(()=>e.split,b);function p(h){n.value=!0,o("beforeShow",h)}function g(h){o("show",h),o("update:modelValue",!0)}function m(h){n.value=!1,o("beforeHide",h)}function v(h){o("hide",h),o("update:modelValue",!1)}function x(h){o("click",h)}function y(h){it(h),b(),o("click",h)}function k(h){a.value?.toggle(h)}function S(h){a.value?.show(h)}function b(h){a.value?.hide(h)}return Object.assign(r,{show:S,hide:b,toggle:k}),Qe(()=>{e.modelValue===!0&&S()}),()=>{let h=[i(Re,{class:c.value,name:e.dropdownIcon||r.$q.iconSet.arrow.dropdown})];return e.disableDropdown!==!0&&h.push(i(Fo,{ref:a,id:l.value,class:e.contentClass,style:e.contentStyle,cover:e.cover,fit:!0,persistent:e.persistent,noEscDismiss:e.noEscDismiss,noRouteDismiss:e.noRouteDismiss,autoClose:e.autoClose,noFocus:e.noFocus,noRefocus:e.noRefocus,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,separateClosePopup:!0,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:p,onShow:g,onBeforeHide:m,onHide:v},t.default)),e.split===!1?i(Ve,{class:"q-btn-dropdown q-btn-dropdown--simple",...d.value,...u.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:x},{default:()=>re(t.label,[]).concat(h),loading:t.loading}):i(or,{class:"q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item",rounded:e.rounded,square:e.square,...f.value,glossy:e.glossy,stretch:e.stretch},()=>[i(Ve,{class:"q-btn-dropdown--current",...d.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:y},{default:t.label,loading:t.loading}),i(Ve,{class:"q-btn-dropdown__arrow-container q-anchor--skip",...u.value,...f.value,disable:e.disable===!0||e.disableDropdown===!0,rounded:e.rounded,color:e.color,textColor:e.textColor,dense:e.dense,size:e.size,padding:e.padding,ripple:e.ripple},()=>h)])}}});var kt={name:String};function Oo(e){return s(()=>({type:"hidden",name:e.name,value:e.modelValue}))}function Zt(e={}){return(t,o,r)=>{t[o](i("input",{class:"hidden"+(r||""),...e.value}))}}function gr(e){return s(()=>e.name||e.for)}var Os=P({name:"QBtnToggle",props:{...kt,modelValue:{required:!0},options:{type:Array,required:!0,validator:e=>e.every(t=>("label"in t||"icon"in t||"slot"in t)&&"value"in t)},color:String,textColor:String,toggleColor:{type:String,default:"primary"},toggleTextColor:String,outline:Boolean,flat:Boolean,unelevated:Boolean,rounded:Boolean,push:Boolean,glossy:Boolean,size:String,padding:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,readonly:Boolean,disable:Boolean,stack:Boolean,stretch:Boolean,spread:Boolean,clearable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","clear","click"],setup(e,{slots:t,emit:o}){let r=s(()=>e.options.find(g=>g.value===e.modelValue)!==void 0),n=s(()=>({type:"hidden",name:e.name,value:e.modelValue})),a=Zt(n),l=s(()=>Ia(e)),u=s(()=>({rounded:e.rounded,dense:e.dense,...l.value})),c=s(()=>e.options.map((g,m)=>{let{attrs:v,value:x,slot:y,...k}=g;return{slot:y,props:{key:m,"aria-pressed":x===e.modelValue?"true":"false",...v,...k,...u.value,disable:e.disable===!0||k.disable===!0,color:x===e.modelValue?d(k,"toggleColor"):d(k,"color"),textColor:x===e.modelValue?d(k,"toggleTextColor"):d(k,"textColor"),noCaps:d(k,"noCaps")===!0,noWrap:d(k,"noWrap")===!0,size:d(k,"size"),padding:d(k,"padding"),ripple:d(k,"ripple"),stack:d(k,"stack")===!0,stretch:d(k,"stretch")===!0,onClick(S){f(x,g,S)}}}}));function f(g,m,v){e.readonly!==!0&&(e.modelValue===g?e.clearable===!0&&(o("update:modelValue",null,null),o("clear")):o("update:modelValue",g,m),o("click",v))}function d(g,m){return g[m]===void 0?e[m]:g[m]}function p(){let g=c.value.map(m=>i(Ve,m.props,m.slot!==void 0?t[m.slot]:void 0));return e.name!==void 0&&e.disable!==!0&&r.value===!0&&a(g,"push"),Ge(t.default,g)}return()=>i(or,{class:"q-btn-toggle",...l.value,rounded:e.rounded,stretch:e.stretch,glossy:e.glossy,spread:e.spread},p)}});var hr=P({name:"QCard",props:{...Se,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=xe(e,o),n=s(()=>"q-card"+(r.value===!0?" q-card--dark q-dark":"")+(e.bordered===!0?" q-card--bordered":"")+(e.square===!0?" q-card--square no-border-radius":"")+(e.flat===!0?" q-card--flat no-shadow":""));return()=>i(e.tag,{class:n.value},re(t.default))}});var _o=P({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){let o=s(()=>`q-card__section q-card__section--${e.horizontal===!0?"horiz row no-wrap":"vert"}`);return()=>i(e.tag,{class:o.value},re(t.default))}});var Ja=P({name:"QCardActions",props:{...Wn,vertical:Boolean},setup(e,{slots:t}){let o=Yn(e),r=s(()=>`q-card__actions ${o.value} q-card__actions--${e.vertical===!0?"vert column":"horiz row"}`);return()=>i("div",{class:r.value},re(t.default))}});var Ql={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},fg=Object.keys(Ql);Ql.all=!0;function pr(e){let t={};for(let o of fg)e[o]===!0&&(t[o]=!0);return Object.keys(t).length===0?Ql:(t.horizontal===!0?t.left=t.right=!0:t.left===!0&&t.right===!0&&(t.horizontal=!0),t.vertical===!0?t.up=t.down=!0:t.up===!0&&t.down===!0&&(t.vertical=!0),t.horizontal===!0&&t.vertical===!0&&(t.all=!0),t)}var mg=["INPUT","TEXTAREA"];function br(e,t){return t.event===void 0&&e.target!==void 0&&e.target.draggable!==!0&&typeof t.handler=="function"&&mg.includes(e.target.nodeName.toUpperCase())===!1&&(e.qClonedBy===void 0||e.qClonedBy.indexOf(t.uid)===-1)}function vg(e){let t=[.06,6,50];return typeof e=="string"&&e.length&&e.split(":").forEach((o,r)=>{let n=parseFloat(o);n&&(t[r]=n)}),t}var ei=$t({name:"touch-swipe",beforeMount(e,{value:t,arg:o,modifiers:r}){if(r.mouse!==!0&&Ae.has.touch!==!0)return;let n=r.mouseCapture===!0?"Capture":"",a={handler:t,sensitivity:vg(o),direction:pr(r),noop:Ye,mouseStart(l){br(l,a)&&Ko(l)&&(vt(a,"temp",[[document,"mousemove","move",`notPassive${n}`],[document,"mouseup","end","notPassiveCapture"]]),a.start(l,!0))},touchStart(l){if(br(l,a)){let u=l.target;vt(a,"temp",[[u,"touchmove","move","notPassiveCapture"],[u,"touchcancel","end","notPassiveCapture"],[u,"touchend","end","notPassiveCapture"]]),a.start(l)}},start(l,u){Ae.is.firefox===!0&&Wo(e,!0);let c=_t(l);a.event={x:c.left,y:c.top,time:Date.now(),mouse:u===!0,dir:!1}},move(l){if(a.event===void 0)return;if(a.event.dir!==!1){_e(l);return}let u=Date.now()-a.event.time;if(u===0)return;let c=_t(l),f=c.left-a.event.x,d=Math.abs(f),p=c.top-a.event.y,g=Math.abs(p);if(a.event.mouse!==!0){if(da.sensitivity[0]&&(a.event.dir=p<0?"up":"down"),a.direction.horizontal===!0&&d>g&&g<100&&m>a.sensitivity[0]&&(a.event.dir=f<0?"left":"right"),a.direction.up===!0&&da.sensitivity[0]&&(a.event.dir="up"),a.direction.down===!0&&d0&&d<100&&v>a.sensitivity[0]&&(a.event.dir="down"),a.direction.left===!0&&d>g&&f<0&&g<100&&m>a.sensitivity[0]&&(a.event.dir="left"),a.direction.right===!0&&d>g&&f>0&&g<100&&m>a.sensitivity[0]&&(a.event.dir="right"),a.event.dir!==!1?(_e(l),a.event.mouse===!0&&(document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),Ht(),a.styleCleanup=x=>{a.styleCleanup=void 0,document.body.classList.remove("non-selectable");let y=()=>{document.body.classList.remove("no-pointer-events--children")};x===!0?setTimeout(y,50):y()}),a.handler({evt:l,touch:a.event.mouse!==!0,mouse:a.event.mouse,direction:a.event.dir,duration:u,distance:{x:d,y:g}})):a.end(l)},end(l){a.event!==void 0&&(Tt(a,"temp"),Ae.is.firefox===!0&&Wo(e,!1),a.styleCleanup?.(!0),l!==void 0&&a.event.dir!==!1&&_e(l),a.event=void 0)}};if(e.__qtouchswipe=a,r.mouse===!0){let l=r.mouseCapture===!0||r.mousecapture===!0?"Capture":"";vt(a,"main",[[e,"mousedown","mouseStart",`passive${l}`]])}Ae.has.touch===!0&&vt(a,"main",[[e,"touchstart","touchStart",`passive${r.capture===!0?"Capture":""}`],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){let o=e.__qtouchswipe;o!==void 0&&(t.oldValue!==t.value&&(typeof t.value!="function"&&o.end(),o.handler=t.value),o.direction=pr(t.modifiers))},beforeUnmount(e){let t=e.__qtouchswipe;t!==void 0&&(Tt(t,"main"),Tt(t,"temp"),Ae.is.firefox===!0&&Wo(e,!1),t.styleCleanup?.(),delete e.__qtouchswipe)}});function xo(){let e=Object.create(null);return{getCache:(t,o)=>e[t]===void 0?e[t]=typeof o=="function"?o():o:e[t],setCache(t,o){e[t]=o},hasCache(t){return Object.hasOwnProperty.call(e,t)},clearCache(t){t!==void 0?delete e[t]:e=Object.create(null)}}}var yr={name:{required:!0},disable:Boolean},Vs={setup(e,{slots:t}){return()=>i("div",{class:"q-panel scroll",role:"tabpanel"},re(t.default))}},Sr={modelValue:{required:!0},animated:Boolean,infinite:Boolean,swipeable:Boolean,vertical:Boolean,transitionPrev:String,transitionNext:String,transitionDuration:{type:[String,Number],default:300},keepAlive:Boolean,keepAliveInclude:[String,Array,RegExp],keepAliveExclude:[String,Array,RegExp],keepAliveMax:Number},xr=["update:modelValue","beforeTransition","transition"];function _r(){let{props:e,emit:t,proxy:o}=K(),{getCache:r}=xo(),{registerTimeout:n}=Vt(),a,l,u=T(null),c={value:null};function f(C){let A=e.vertical===!0?"up":"left";D((o.$q.lang.rtl===!0?-1:1)*(C.direction===A?1:-1))}let d=s(()=>[[ei,f,void 0,{horizontal:e.vertical!==!0,vertical:e.vertical,mouse:!0}]]),p=s(()=>e.transitionPrev||`slide-${e.vertical===!0?"down":"right"}`),g=s(()=>e.transitionNext||`slide-${e.vertical===!0?"up":"left"}`),m=s(()=>`--q-transition-duration: ${e.transitionDuration}ms`),v=s(()=>typeof e.modelValue=="string"||typeof e.modelValue=="number"?e.modelValue:String(e.modelValue)),x=s(()=>({include:e.keepAliveInclude,exclude:e.keepAliveExclude,max:e.keepAliveMax})),y=s(()=>e.keepAliveInclude!==void 0||e.keepAliveExclude!==void 0);Y(()=>e.modelValue,(C,A)=>{let z=h(C)===!0?_(C):-1;l!==!0&&L(z===-1?0:z<_(A)?-1:1),c.value!==z&&(c.value=z,t("beforeTransition",C,A),n(()=>{t("transition",C,A)},e.transitionDuration))});function k(){D(1)}function S(){D(-1)}function b(C){t("update:modelValue",C)}function h(C){return C!=null&&C!==""}function _(C){return a.findIndex(A=>A.props.name===C&&A.props.disable!==""&&A.props.disable!==!0)}function E(){return a.filter(C=>C.props.disable!==""&&C.props.disable!==!0)}function L(C){let A=C!==0&&e.animated===!0&&c.value!==-1?"q-transition--"+(C===-1?p.value:g.value):null;u.value!==A&&(u.value=A)}function D(C,A=c.value){let z=A+C;for(;z!==-1&&z{l=!1});return}z+=C}e.infinite===!0&&a.length!==0&&A!==-1&&A!==a.length&&D(C,C===-1?a.length:-1)}function Z(){let C=_(e.modelValue);return c.value!==C&&(c.value=C),!0}function B(){let C=h(e.modelValue)===!0&&Z()&&a[c.value];return e.keepAlive===!0?[i(wa,x.value,[i(y.value===!0?r(v.value,()=>({...Vs,name:v.value})):Vs,{key:v.value,style:m.value},()=>C)])]:[i("div",{class:"q-panel scroll",style:m.value,key:v.value,role:"tabpanel"},[C])]}function F(){if(a.length!==0)return e.animated===!0?[i(st,{name:u.value},B)]:B()}function $(C){return a=Xn(re(C.default,[])).filter(A=>A.props!==null&&A.props.slot===void 0&&h(A.props.name)===!0),a.length}function q(){return a}return Object.assign(o,{next:k,previous:S,goTo:b}),{panelIndex:c,panelDirectives:d,updatePanelsList:$,updatePanelIndex:Z,getPanelContent:F,getEnabledPanels:E,getPanels:q,isValidPanelName:h,keepAliveProps:x,needsUniqueKeepAliveWrapper:y,goToPanelByOffset:D,goToPanel:b,nextPanel:k,previousPanel:S}}var oa=0,Cr={fullscreen:Boolean,noRouteFullscreenExit:Boolean},wr=["update:fullscreen","fullscreen"];function kr(){let e=K(),{props:t,emit:o,proxy:r}=e,n,a,l,u=T(!1);Gn(e)===!0&&Y(()=>r.$route.fullPath,()=>{t.noRouteFullscreenExit!==!0&&d()}),Y(()=>t.fullscreen,p=>{u.value!==p&&c()}),Y(u,p=>{o("update:fullscreen",p),o("fullscreen",p)});function c(){u.value===!0?d():f()}function f(){u.value!==!0&&(u.value=!0,l=r.$el.parentNode,l.replaceChild(a,r.$el),document.body.appendChild(r.$el),oa++,oa===1&&document.body.classList.add("q-body--fullscreen-mixin"),n={handler:d},rn.add(n))}function d(){u.value===!0&&(n!==void 0&&(rn.remove(n),n=void 0),l.replaceChild(r.$el,a),u.value=!1,oa=Math.max(0,oa-1),oa===0&&(document.body.classList.remove("q-body--fullscreen-mixin"),r.$el.scrollIntoView!==void 0&&setTimeout(()=>{r.$el.scrollIntoView()})))}return Hn(()=>{a=document.createElement("span")}),Qe(()=>{t.fullscreen===!0&&f()}),be(d),Object.assign(r,{toggleFullscreen:c,setFullscreen:f,exitFullscreen:d}),{inFullscreen:u,toggleFullscreen:c}}var gg=["top","right","bottom","left"],hg=["regular","flat","outline","push","unelevated"],zs=P({name:"QCarousel",props:{...Se,...Sr,...Cr,transitionPrev:{type:String,default:"fade"},transitionNext:{type:String,default:"fade"},height:String,padding:Boolean,controlColor:String,controlTextColor:String,controlType:{type:String,validator:e=>hg.includes(e),default:"flat"},autoplay:[Number,Boolean],arrows:Boolean,prevIcon:String,nextIcon:String,navigation:Boolean,navigationPosition:{type:String,validator:e=>gg.includes(e)},navigationIcon:String,navigationActiveIcon:String,thumbnails:Boolean},emits:[...wr,...xr],setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=xe(e,o),n=null,a,{updatePanelsList:l,getPanelContent:u,panelDirectives:c,goToPanel:f,previousPanel:d,nextPanel:p,getEnabledPanels:g,panelIndex:m}=_r(),{inFullscreen:v}=kr(),x=s(()=>v.value!==!0&&e.height!==void 0?{height:e.height}:{}),y=s(()=>e.vertical===!0?"vertical":"horizontal"),k=s(()=>e.navigationPosition||(e.vertical===!0?"right":"bottom")),S=s(()=>`q-carousel q-panel-parent q-carousel--with${e.padding===!0?"":"out"}-padding`+(v.value===!0?" fullscreen":"")+(r.value===!0?" q-carousel--dark q-dark":"")+(e.arrows===!0?` q-carousel--arrows-${y.value}`:"")+(e.navigation===!0?` q-carousel--navigation-${k.value}`:"")),b=s(()=>{let B=[e.prevIcon||o.iconSet.carousel[e.vertical===!0?"up":"left"],e.nextIcon||o.iconSet.carousel[e.vertical===!0?"down":"right"]];return e.vertical===!1&&o.lang.rtl===!0?B.reverse():B}),h=s(()=>e.navigationIcon||o.iconSet.carousel.navigationIcon),_=s(()=>e.navigationActiveIcon||h.value),E=s(()=>({color:e.controlColor,textColor:e.controlTextColor,round:!0,[e.controlType]:!0,dense:!0}));Y(()=>e.modelValue,()=>{e.autoplay&&L()}),Y(()=>e.autoplay,B=>{B?L():n!==null&&(clearTimeout(n),n=null)});function L(){let B=mo(e.autoplay)===!0?Math.abs(e.autoplay):5e3;n!==null&&clearTimeout(n),n=setTimeout(()=>{n=null,B>=0?p():d()},B)}Qe(()=>{e.autoplay&&L()}),be(()=>{n!==null&&clearTimeout(n)});function D(B,F){return i("div",{class:`q-carousel__control q-carousel__navigation no-wrap absolute flex q-carousel__navigation--${B} q-carousel__navigation--${k.value}`+(e.controlColor!==void 0?` text-${e.controlColor}`:"")},[i("div",{class:"q-carousel__navigation-inner flex flex-center no-wrap"},g().map(F))])}function Z(){let B=[];if(e.navigation===!0){let F=t["navigation-icon"]!==void 0?t["navigation-icon"]:q=>i(Ve,{key:"nav"+q.name,class:`q-carousel__navigation-icon q-carousel__navigation-icon--${q.active===!0?"":"in"}active`,...q.btnProps,onClick:q.onClick}),$=a-1;B.push(D("buttons",(q,C)=>{let A=q.props.name,z=m.value===C;return F({index:C,maxIndex:$,name:A,active:z,btnProps:{icon:z===!0?_.value:h.value,size:"sm",...E.value},onClick:()=>{f(A)}})}))}else if(e.thumbnails===!0){let F=e.controlColor!==void 0?` text-${e.controlColor}`:"";B.push(D("thumbnails",$=>{let q=$.props;return i("img",{key:"tmb#"+q.name,class:`q-carousel__thumbnail q-carousel__thumbnail--${q.name===e.modelValue?"":"in"}active`+F,src:q.imgSrc||q["img-src"],onClick:()=>{f(q.name)}})}))}return e.arrows===!0&&m.value>=0&&((e.infinite===!0||m.value>0)&&B.push(i("div",{key:"prev",class:`q-carousel__control q-carousel__arrow q-carousel__prev-arrow q-carousel__prev-arrow--${y.value} absolute flex flex-center`},[i(Ve,{icon:b.value[0],...E.value,onClick:d})])),(e.infinite===!0||m.value(a=l(t),i("div",{class:S.value,style:x.value},[Rt("div",{class:"q-carousel__slides-container"},u(),"sl-cont",e.swipeable,()=>c.value)].concat(Z())))}});var Is=P({name:"QCarouselSlide",props:{...yr,imgSrc:String},setup(e,{slots:t}){let o=s(()=>e.imgSrc?{backgroundImage:`url("${e.imgSrc}")`}:{});return()=>i("div",{class:"q-carousel__slide",style:o.value},re(t.default))}});var Hs=P({name:"QCarouselControl",props:{position:{type:String,default:"bottom-right",validator:e=>["top-right","top-left","bottom-right","bottom-left","top","right","bottom","left"].includes(e)},offset:{type:Array,default:()=>[18,18],validator:e=>e.length===2}},setup(e,{slots:t}){let o=s(()=>`q-carousel__control absolute absolute-${e.position}`),r=s(()=>({margin:`${e.offset[1]}px ${e.offset[0]}px`}));return()=>i("div",{class:o.value,style:r.value},re(t.default))}});var Ns=P({name:"QChatMessage",props:{sent:Boolean,label:String,bgColor:String,textColor:String,name:String,avatar:String,text:Array,stamp:String,size:String,labelHtml:Boolean,nameHtml:Boolean,textHtml:Boolean,stampHtml:Boolean},setup(e,{slots:t}){let o=s(()=>e.sent===!0?"sent":"received"),r=s(()=>`q-message-text-content q-message-text-content--${o.value}`+(e.textColor!==void 0?` text-${e.textColor}`:"")),n=s(()=>`q-message-text q-message-text--${o.value}`+(e.bgColor!==void 0?` text-${e.bgColor}`:"")),a=s(()=>"q-message-container row items-end no-wrap"+(e.sent===!0?" reverse":"")),l=s(()=>e.size!==void 0?`col-${e.size}`:""),u=s(()=>({msg:e.textHtml===!0?"innerHTML":"textContent",stamp:e.stampHtml===!0?"innerHTML":"textContent",name:e.nameHtml===!0?"innerHTML":"textContent",label:e.labelHtml===!0?"innerHTML":"textContent"}));function c(d){return t.stamp!==void 0?[d,i("div",{class:"q-message-stamp"},t.stamp())]:e.stamp?[d,i("div",{class:"q-message-stamp",[u.value.stamp]:e.stamp})]:[d]}function f(d,p){let g=p===!0?d.length>1?m=>m:m=>i("div",[m]):m=>i("div",{[u.value.msg]:m});return d.map((m,v)=>i("div",{key:v,class:n.value},[i("div",{class:r.value},c(g(m)))]))}return()=>{let d=[];t.avatar!==void 0?d.push(t.avatar()):e.avatar!==void 0&&d.push(i("img",{class:`q-message-avatar q-message-avatar--${o.value}`,src:e.avatar,"aria-hidden":"true"}));let p=[];t.name!==void 0?p.push(i("div",{class:`q-message-name q-message-name--${o.value}`},t.name())):e.name!==void 0&&p.push(i("div",{class:`q-message-name q-message-name--${o.value}`,[u.value.name]:e.name})),t.default!==void 0?p.push(f(Xn(t.default()),!0)):e.text!==void 0&&p.push(f(e.text)),d.push(i("div",{class:l.value},p));let g=[];return t.label!==void 0?g.push(i("div",{class:"q-message-label"},t.label())):e.label!==void 0&&g.push(i("div",{class:"q-message-label",[u.value.label]:e.label})),g.push(i("div",{class:a.value},d)),i("div",{class:`q-message q-message-${o.value}`},g)}}});function ti(e,t){let o=T(null),r=s(()=>e.disable===!0?null:i("span",{ref:o,class:"no-outline",tabindex:-1}));function n(a){let l=t.value;a?.qAvoidFocus!==!0&&(a?.type.indexOf("key")===0?document.activeElement!==l&&l?.contains(document.activeElement)===!0&&l.focus():o.value!==null&&(a===void 0||l?.contains(a.target)===!0)&&o.value.focus())}return{refocusTargetEl:r,refocusTarget:n}}var oi={xs:30,sm:35,md:40,lg:50,xl:60};var ni={...Se,...Dt,...kt,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>e==="tf"||e==="ft"},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},ri=["update:modelValue"];function ai(e,t){let{props:o,slots:r,emit:n,proxy:a}=K(),{$q:l}=a,u=xe(o,l),c=T(null),{refocusTargetEl:f,refocusTarget:d}=ti(o,c),p=Ot(o,oi),g=s(()=>o.val!==void 0&&Array.isArray(o.modelValue)),m=s(()=>{let $=fo(o.val);return g.value===!0?o.modelValue.findIndex(q=>fo(q)===$):-1}),v=s(()=>g.value===!0?m.value!==-1:fo(o.modelValue)===fo(o.trueValue)),x=s(()=>g.value===!0?m.value===-1:fo(o.modelValue)===fo(o.falseValue)),y=s(()=>v.value===!1&&x.value===!1),k=s(()=>o.disable===!0?-1:o.tabindex||0),S=s(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(o.disable===!0?" disabled":"")+(u.value===!0?` q-${e}--dark`:"")+(o.dense===!0?` q-${e}--dense`:"")+(o.leftLabel===!0?" reverse":"")),b=s(()=>{let $=v.value===!0?"truthy":x.value===!0?"falsy":"indet",q=o.color!==void 0&&(o.keepColor===!0||(e==="toggle"?v.value===!0:x.value!==!0))?` text-${o.color}`:"";return`q-${e}__inner relative-position non-selectable q-${e}__inner--${$}${q}`}),h=s(()=>{let $={type:"checkbox"};return o.name!==void 0&&Object.assign($,{".checked":v.value,"^checked":v.value===!0?"checked":void 0,name:o.name,value:g.value===!0?o.val:o.trueValue}),$}),_=Zt(h),E=s(()=>{let $={tabindex:k.value,role:e==="toggle"?"switch":"checkbox","aria-label":o.label,"aria-checked":y.value===!0?"mixed":v.value===!0?"true":"false"};return o.disable===!0&&($["aria-disabled"]="true"),$});function L($){$!==void 0&&(_e($),d($)),o.disable!==!0&&n("update:modelValue",D(),$)}function D(){if(g.value===!0){if(v.value===!0){let $=o.modelValue.slice();return $.splice(m.value,1),$}return o.modelValue.concat([o.val])}if(v.value===!0){if(o.toggleOrder!=="ft"||o.toggleIndeterminate===!1)return o.falseValue}else if(x.value===!0){if(o.toggleOrder==="ft"||o.toggleIndeterminate===!1)return o.trueValue}else return o.toggleOrder!=="ft"?o.trueValue:o.falseValue;return o.indeterminateValue}function Z($){($.keyCode===13||$.keyCode===32)&&_e($)}function B($){($.keyCode===13||$.keyCode===32)&&L($)}let F=t(v,y);return Object.assign(a,{toggle:L}),()=>{let $=F();o.disable!==!0&&_($,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);let q=[i("div",{class:b.value,style:p.value,"aria-hidden":"true"},$)];f.value!==null&&q.push(f.value);let C=o.label!==void 0?Ge(r.default,[o.label]):re(r.default);return C!==void 0&&q.push(i("div",{class:`q-${e}__label q-anchor--skip`},C)),i("div",{ref:c,class:S.value,...E.value,onClick:L,onKeydown:Z,onKeyup:B},q)}}var pg=()=>i("div",{key:"svg",class:"q-checkbox__bg absolute"},[i("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[i("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),i("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]),Vo=P({name:"QCheckbox",props:ni,emits:ri,setup(e){let t=pg();function o(r,n){let a=s(()=>(r.value===!0?e.checkedIcon:n.value===!0?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>a.value!==null?[i("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[i(Re,{class:"q-checkbox__icon",name:a.value})])]:[t]}return ai("checkbox",o)}});var bg={xs:8,sm:10,md:14,lg:20,xl:24},qr=P({name:"QChip",props:{...Se,...Dt,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=xe(e,r),a=Ot(e,bg),l=s(()=>e.selected===!0||e.icon!==void 0),u=s(()=>e.selected===!0?e.iconSelected||r.iconSet.chip.selected:e.icon),c=s(()=>e.iconRemove||r.iconSet.chip.remove),f=s(()=>e.disable===!1&&(e.clickable===!0||e.selected!==null)),d=s(()=>{let y=e.outline===!0&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(e.outline===!1&&e.color!==void 0?` bg-${e.color}`:"")+(y?` text-${y} q-chip--colored`:"")+(e.disable===!0?" disabled":"")+(e.dense===!0?" q-chip--dense":"")+(e.outline===!0?" q-chip--outline":"")+(e.selected===!0?" q-chip--selected":"")+(f.value===!0?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(e.square===!0?" q-chip--square":"")+(n.value===!0?" q-chip--dark q-dark":"")}),p=s(()=>{let y=e.disable===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0},k={...y,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||r.lang.label.remove};return{chip:y,remove:k}});function g(y){y.keyCode===13&&m(y)}function m(y){e.disable||(o("update:selected",!e.selected),o("click",y))}function v(y){(y.keyCode===void 0||y.keyCode===13)&&(_e(y),e.disable===!1&&(o("update:modelValue",!1),o("remove")))}function x(){let y=[];f.value===!0&&y.push(i("div",{class:"q-focus-helper"})),l.value===!0&&y.push(i(Re,{class:"q-chip__icon q-chip__icon--left",name:u.value}));let k=e.label!==void 0?[i("div",{class:"ellipsis"},[e.label])]:void 0;return y.push(i("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},Kn(t.default,k))),e.iconRight&&y.push(i(Re,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),e.removable===!0&&y.push(i(Re,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:c.value,...p.value.remove,onClick:v,onKeyup:v})),y}return()=>{if(e.modelValue===!1)return;let y={class:d.value,style:a.value};return f.value===!0&&Object.assign(y,p.value.chip,{onClick:m,onKeyup:g}),Rt("div",y,x(),"ripple",e.ripple!==!1&&e.disable!==!0,()=>[[$o,e.ripple]])}}});var na={...Dt,min:{type:Number,default:0},max:{type:Number,default:100},color:String,centerColor:String,trackColor:String,fontSize:String,rounded:Boolean,thickness:{type:Number,default:.2,validator:e=>e>=0&&e<=1},angle:{type:Number,default:0},showValue:Boolean,reverse:Boolean,instantFeedback:Boolean};var jl=50,Qs=2*jl,js=Qs*Math.PI,yg=Math.round(js*1e3)/1e3,Tr=P({name:"QCircularProgress",props:{...na,value:{type:Number,default:0},animationSpeed:{type:[String,Number],default:600},indeterminate:Boolean},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=Ot(e),n=s(()=>{let m=(o.lang.rtl===!0?-1:1)*e.angle;return{transform:e.reverse!==(o.lang.rtl===!0)?`scale3d(-1, 1, 1) rotate3d(0, 0, 1, ${-90-m}deg)`:`rotate3d(0, 0, 1, ${m-90}deg)`}}),a=s(()=>e.instantFeedback!==!0&&e.indeterminate!==!0?{transition:`stroke-dashoffset ${e.animationSpeed}ms ease 0s, stroke ${e.animationSpeed}ms ease`}:""),l=s(()=>Qs/(1-e.thickness/2)),u=s(()=>`${l.value/2} ${l.value/2} ${l.value} ${l.value}`),c=s(()=>tt(e.value,e.min,e.max)),f=s(()=>e.max-e.min),d=s(()=>e.thickness/2*l.value),p=s(()=>{let m=(e.max-c.value)/f.value,v=e.rounded===!0&&c.value{let m=[];e.centerColor!==void 0&&e.centerColor!=="transparent"&&m.push(i("circle",{class:`q-circular-progress__center text-${e.centerColor}`,fill:"currentColor",r:jl-d.value/2,cx:l.value,cy:l.value})),e.trackColor!==void 0&&e.trackColor!=="transparent"&&m.push(g({cls:"track",thickness:d.value,offset:0,color:e.trackColor})),m.push(g({cls:"circle",thickness:d.value,offset:p.value,color:e.color,rounded:e.rounded===!0?"round":void 0}));let v=[i("svg",{class:"q-circular-progress__svg",style:n.value,viewBox:u.value,"aria-hidden":"true"},m)];return e.showValue===!0&&v.push(i("div",{class:"q-circular-progress__text absolute-full row flex-center content-center",style:{fontSize:e.fontSize}},t.default!==void 0?t.default():[i("div",c.value)])),i("div",{class:`q-circular-progress q-circular-progress--${e.indeterminate===!0?"in":""}determinate`,style:r.value,role:"progressbar","aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":e.indeterminate===!0?void 0:c.value},Kn(t.internal,v))}}});function Ul(e,t,o){let r=_t(e),n,a=r.left-t.event.x,l=r.top-t.event.y,u=Math.abs(a),c=Math.abs(l),f=t.direction;f.horizontal===!0&&f.vertical!==!0?n=a<0?"left":"right":f.horizontal!==!0&&f.vertical===!0?n=l<0?"up":"down":f.up===!0&&l<0?(n="up",u>c&&(f.left===!0&&a<0?n="left":f.right===!0&&a>0&&(n="right"))):f.down===!0&&l>0?(n="down",u>c&&(f.left===!0&&a<0?n="left":f.right===!0&&a>0&&(n="right"))):f.left===!0&&a<0?(n="left",u0&&(n="down"))):f.right===!0&&a>0&&(n="right",u0&&(n="down")));let d=!1;if(n===void 0&&o===!1){if(t.event.isFirst===!0||t.event.lastDir===void 0)return{};n=t.event.lastDir,d=!0,n==="left"||n==="right"?(r.left-=a,u=0,a=0):(r.top-=l,c=0,l=0)}return{synthetic:d,payload:{evt:e,touch:t.event.mouse!==!0,mouse:t.event.mouse===!0,position:r,direction:n,isFirst:t.event.isFirst,isFinal:o===!0,duration:Date.now()-t.event.time,distance:{x:u,y:c},offset:{x:a,y:l},delta:{x:r.left-t.event.lastX,y:r.top-t.event.lastY}}}}var Sg=0,Pt=$t({name:"touch-pan",beforeMount(e,{value:t,modifiers:o}){if(o.mouse!==!0&&Ae.has.touch!==!0)return;function r(a,l){o.mouse===!0&&l===!0?_e(a):(o.stop===!0&&it(a),o.prevent===!0&>(a))}let n={uid:"qvtp_"+Sg++,handler:t,modifiers:o,direction:pr(o),noop:Ye,mouseStart(a){br(a,n)&&Ko(a)&&(vt(n,"temp",[[document,"mousemove","move","notPassiveCapture"],[document,"mouseup","end","passiveCapture"]]),n.start(a,!0))},touchStart(a){if(br(a,n)){let l=a.target;vt(n,"temp",[[l,"touchmove","move","notPassiveCapture"],[l,"touchcancel","end","passiveCapture"],[l,"touchend","end","passiveCapture"]]),n.start(a)}},start(a,l){if(Ae.is.firefox===!0&&Wo(e,!0),n.lastEvt=a,l===!0||o.stop===!0){if(n.direction.all!==!0&&(l!==!0||n.modifiers.mouseAllDir!==!0&&n.modifiers.mousealldir!==!0)){let f=a.type.indexOf("mouse")!==-1?new MouseEvent(a.type,a):new TouchEvent(a.type,a);a.defaultPrevented===!0&>(f),a.cancelBubble===!0&&it(f),Object.assign(f,{qKeyEvent:a.qKeyEvent,qClickOutside:a.qClickOutside,qAnchorHandled:a.qAnchorHandled,qClonedBy:a.qClonedBy===void 0?[n.uid]:a.qClonedBy.concat(n.uid)}),n.initialEvent={target:a.target,event:f}}it(a)}let{left:u,top:c}=_t(a);n.event={x:u,y:c,time:Date.now(),mouse:l===!0,detected:!1,isFirst:!0,isFinal:!1,lastX:u,lastY:c}},move(a){if(n.event===void 0)return;let l=_t(a),u=l.left-n.event.x,c=l.top-n.event.y;if(u===0&&c===0)return;n.lastEvt=a;let f=n.event.mouse===!0,d=()=>{r(a,f);let m;o.preserveCursor!==!0&&o.preservecursor!==!0&&(m=document.documentElement.style.cursor||"",document.documentElement.style.cursor="grabbing"),f===!0&&document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),Ht(),n.styleCleanup=v=>{if(n.styleCleanup=void 0,m!==void 0&&(document.documentElement.style.cursor=m),document.body.classList.remove("non-selectable"),f===!0){let x=()=>{document.body.classList.remove("no-pointer-events--children")};v!==void 0?setTimeout(()=>{x(),v()},50):x()}else v!==void 0&&v()}};if(n.event.detected===!0){n.event.isFirst!==!0&&r(a,n.event.mouse);let{payload:m,synthetic:v}=Ul(a,n,!1);m!==void 0&&(n.handler(m)===!1?n.end(a):(n.styleCleanup===void 0&&n.event.isFirst===!0&&d(),n.event.lastX=m.position.left,n.event.lastY=m.position.top,n.event.lastDir=v===!0?void 0:m.direction,n.event.isFirst=!1));return}if(n.direction.all===!0||f===!0&&(n.modifiers.mouseAllDir===!0||n.modifiers.mousealldir===!0)){d(),n.event.detected=!0,n.move(a);return}let p=Math.abs(u),g=Math.abs(c);p!==g&&(n.direction.horizontal===!0&&p>g||n.direction.vertical===!0&&p0||n.direction.left===!0&&p>g&&u<0||n.direction.right===!0&&p>g&&u>0?(n.event.detected=!0,n.move(a)):n.end(a,!0))},end(a,l){if(n.event!==void 0){if(Tt(n,"temp"),Ae.is.firefox===!0&&Wo(e,!1),l===!0)n.styleCleanup?.(),n.event.detected!==!0&&n.initialEvent!==void 0&&n.initialEvent.target.dispatchEvent(n.initialEvent.event);else if(n.event.detected===!0){n.event.isFirst===!0&&n.handler(Ul(a===void 0?n.lastEvt:a,n).payload);let{payload:u}=Ul(a===void 0?n.lastEvt:a,n,!0),c=()=>{n.handler(u)};n.styleCleanup!==void 0?n.styleCleanup(c):c()}n.event=void 0,n.initialEvent=void 0,n.lastEvt=void 0}}};if(e.__qtouchpan=n,o.mouse===!0){let a=o.mouseCapture===!0||o.mousecapture===!0?"Capture":"";vt(n,"main",[[e,"mousedown","mouseStart",`passive${a}`]])}Ae.has.touch===!0&&vt(n,"main",[[e,"touchstart","touchStart",`passive${o.capture===!0?"Capture":""}`],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){let o=e.__qtouchpan;o!==void 0&&(t.oldValue!==t.value&&(typeof value!="function"&&o.end(),o.handler=t.value),o.direction=pr(t.modifiers))},beforeUnmount(e){let t=e.__qtouchpan;t!==void 0&&(t.event!==void 0&&t.end(),Tt(t,"main"),Tt(t,"temp"),Ae.is.firefox===!0&&Wo(e,!1),t.styleCleanup?.(),delete e.__qtouchpan)}});var Us="q-slider__marker-labels",xg=e=>({value:e}),_g=({marker:e})=>i("div",{key:e.value,style:e.style,class:e.classes},e.label),ra=[34,37,40,33,39,38],ii={...Se,...kt,min:{type:Number,default:0},max:{type:Number,default:100},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},snap:Boolean,vertical:Boolean,reverse:Boolean,color:String,markerLabelsClass:String,label:Boolean,labelColor:String,labelTextColor:String,labelAlways:Boolean,switchLabelSide:Boolean,markers:[Boolean,Number],markerLabels:[Boolean,Array,Object,Function],switchMarkerLabelsSide:Boolean,trackImg:String,trackColor:String,innerTrackImg:String,innerTrackColor:String,selectionColor:String,selectionImg:String,thumbSize:{type:String,default:"20px"},trackSize:{type:String,default:"4px"},disable:Boolean,readonly:Boolean,dense:Boolean,tabindex:[String,Number],thumbColor:String,thumbPath:{type:String,default:"M 4, 10 a 6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"}},li=["pan","update:modelValue","change"];function ui({updateValue:e,updatePosition:t,getDragging:o,formAttrs:r}){let{props:n,emit:a,slots:l,proxy:{$q:u}}=K(),c=xe(n,u),f=Zt(r),d=T(!1),p=T(!1),g=T(!1),m=T(!1),v=s(()=>n.vertical===!0?"--v":"--h"),x=s(()=>"-"+(n.switchLabelSide===!0?"switched":"standard")),y=s(()=>n.vertical===!0?n.reverse===!0:n.reverse!==(u.lang.rtl===!0)),k=s(()=>isNaN(n.innerMin)===!0||n.innerMinisNaN(n.innerMax)===!0||n.innerMax>n.max?n.max:n.innerMax),b=s(()=>n.disable!==!0&&n.readonly!==!0&&k.value{if(n.step===0)return ue=>ue;let J=(String(n.step).trim().split(".")[1]||"").length;return ue=>parseFloat(ue.toFixed(J))}),_=s(()=>n.step===0?1:n.step),E=s(()=>b.value===!0?n.tabindex||0:-1),L=s(()=>n.max-n.min),D=s(()=>S.value-k.value),Z=s(()=>ke(k.value)),B=s(()=>ke(S.value)),F=s(()=>n.vertical===!0?y.value===!0?"bottom":"top":y.value===!0?"right":"left"),$=s(()=>n.vertical===!0?"height":"width"),q=s(()=>n.vertical===!0?"width":"height"),C=s(()=>n.vertical===!0?"vertical":"horizontal"),A=s(()=>{let J={role:"slider","aria-valuemin":k.value,"aria-valuemax":S.value,"aria-orientation":C.value,"data-step":n.step};return n.disable===!0?J["aria-disabled"]="true":n.readonly===!0&&(J["aria-readonly"]="true"),J}),z=s(()=>`q-slider q-slider${v.value} q-slider--${d.value===!0?"":"in"}active inline no-wrap `+(n.vertical===!0?"row":"column")+(n.disable===!0?" disabled":" q-slider--enabled"+(b.value===!0?" q-slider--editable":""))+(g.value==="both"?" q-slider--focus":"")+(n.label||n.labelAlways===!0?" q-slider--label":"")+(n.labelAlways===!0?" q-slider--label-always":"")+(c.value===!0?" q-slider--dark":"")+(n.dense===!0?" q-slider--dense q-slider--dense"+v.value:""));function H(J){let ue="q-slider__"+J;return`${ue} ${ue}${v.value} ${ue}${v.value}${x.value}`}function Q(J){let ue="q-slider__"+J;return`${ue} ${ue}${v.value}`}let ee=s(()=>{let J=n.selectionColor||n.color;return"q-slider__selection absolute"+(J!==void 0?` text-${J}`:"")}),ve=s(()=>Q("markers")+" absolute overflow-hidden"),O=s(()=>Q("track-container")),w=s(()=>H("pin")),W=s(()=>H("label")),U=s(()=>H("text-container")),le=s(()=>H("marker-labels-container")+(n.markerLabelsClass!==void 0?` ${n.markerLabelsClass}`:"")),M=s(()=>"q-slider__track relative-position no-outline"+(n.trackColor!==void 0?` bg-${n.trackColor}`:"")),V=s(()=>{let J={[q.value]:n.trackSize};return n.trackImg!==void 0&&(J.backgroundImage=`url(${n.trackImg}) !important`),J}),ae=s(()=>"q-slider__inner absolute"+(n.innerTrackColor!==void 0?` bg-${n.innerTrackColor}`:"")),j=s(()=>{let J=B.value-Z.value,ue={[F.value]:`${100*Z.value}%`,[$.value]:J===0?"2px":`${100*J}%`};return n.innerTrackImg!==void 0&&(ue.backgroundImage=`url(${n.innerTrackImg}) !important`),ue});function fe(J){let{min:ue,max:we,step:Ke}=n,Pe=ue+J*(we-ue);if(Ke>0){let Je=(Pe-k.value)%Ke;Pe+=(Math.abs(Je)>=Ke/2?(Je<0?-1:1)*Ke:0)-Je}return Pe=h.value(Pe),tt(Pe,k.value,S.value)}function ke(J){return L.value===0?0:(J-n.min)/L.value}function X(J,ue){let we=_t(J),Ke=n.vertical===!0?tt((we.top-ue.top)/ue.height,0,1):tt((we.left-ue.left)/ue.width,0,1);return tt(y.value===!0?1-Ke:Ke,Z.value,B.value)}let ce=s(()=>mo(n.markers)===!0?n.markers:_.value),ge=s(()=>{let J=[],ue=ce.value,we=n.max,Ke=n.min;do J.push(Ke),Ke+=ue;while(Ke{let J=` ${Us}${v.value}-`;return Us+`${J}${n.switchMarkerLabelsSide===!0?"switched":"standard"}${J}${y.value===!0?"rtl":"ltr"}`}),Fe=s(()=>n.markerLabels===!1?null:ze(n.markerLabels).map((J,ue)=>({index:ue,value:J.value,label:J.label||J.value,classes:Ce.value+(J.classes!==void 0?" "+J.classes:""),style:{...Ie(J.value),...J.style||{}}}))),de=s(()=>({markerList:Fe.value,markerMap:nt.value,classes:Ce.value,getStyle:Ie})),Le=s(()=>{let J=D.value===0?"2px":100*ce.value/D.value;return{...j.value,backgroundSize:n.vertical===!0?`2px ${J}%`:`${J}% 2px`}});function ze(J){if(J===!1)return null;if(J===!0)return ge.value.map(xg);if(typeof J=="function")return ge.value.map(we=>{let Ke=J(we);return ct(Ke)===!0?{...Ke,value:we}:{value:we,label:Ke}});let ue=({value:we})=>we>=n.min&&we<=n.max;return Array.isArray(J)===!0?J.map(we=>ct(we)===!0?we:{value:we}).filter(ue):Object.keys(J).map(we=>{let Ke=J[we],Pe=Number(we);return ct(Ke)===!0?{...Ke,value:Pe}:{value:Pe,label:Ke}}).filter(ue)}function Ie(J){return{[F.value]:`${100*(J-n.min)/L.value}%`}}let nt=s(()=>{if(n.markerLabels===!1)return null;let J={};return Fe.value.forEach(ue=>{J[ue.value]=ue}),J});function ie(){if(l["marker-label-group"]!==void 0)return l["marker-label-group"](de.value);let J=l["marker-label"]||_g;return Fe.value.map(ue=>J({marker:ue,...de.value}))}let G=s(()=>[[Pt,me,void 0,{[C.value]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function me(J){J.isFinal===!0?(m.value!==void 0&&(t(J.evt),J.touch===!0&&e(!0),m.value=void 0,a("pan","end")),d.value=!1,g.value=!1):J.isFirst===!0?(m.value=o(J.evt),t(J.evt),e(),d.value=!0,a("pan","start")):(t(J.evt),e())}function De(){g.value=!1}function Ue(J){t(J,o(J)),e(),p.value=!0,d.value=!0,document.addEventListener("mouseup",Oe,!0)}function Oe(){p.value=!1,d.value=!1,e(!0),De(),document.removeEventListener("mouseup",Oe,!0)}function He(J){t(J,o(J)),e(!0)}function dt(J){ra.includes(J.keyCode)&&e(!0)}function lt(J){if(n.vertical===!0)return null;let ue=u.lang.rtl!==n.reverse?1-J:J;return{transform:`translateX(calc(${2*ue-1} * ${n.thumbSize} / 2 + ${50-100*ue}%))`}}function te(J){let ue=s(()=>p.value===!1&&(g.value===J.focusValue||g.value==="both")?" q-slider--focus":""),we=s(()=>`q-slider__thumb q-slider__thumb${v.value} q-slider__thumb${v.value}-${y.value===!0?"rtl":"ltr"} absolute non-selectable`+ue.value+(J.thumbColor.value!==void 0?` text-${J.thumbColor.value}`:"")),Ke=s(()=>({width:n.thumbSize,height:n.thumbSize,[F.value]:`${100*J.ratio.value}%`,zIndex:g.value===J.focusValue?2:void 0})),Pe=s(()=>J.labelColor.value!==void 0?` text-${J.labelColor.value}`:""),Je=s(()=>lt(J.ratio.value)),mt=s(()=>"q-slider__text"+(J.labelTextColor.value!==void 0?` text-${J.labelTextColor.value}`:""));return()=>{let qt=[i("svg",{class:"q-slider__thumb-shape absolute-full",viewBox:"0 0 20 20","aria-hidden":"true"},[i("path",{d:n.thumbPath})]),i("div",{class:"q-slider__focus-ring fit"})];return(n.label===!0||n.labelAlways===!0)&&(qt.push(i("div",{class:w.value+" absolute fit no-pointer-events"+Pe.value},[i("div",{class:W.value,style:{minWidth:n.thumbSize}},[i("div",{class:U.value,style:Je.value},[i("span",{class:mt.value},J.label.value)])])])),n.name!==void 0&&n.disable!==!0&&f(qt,"push")),i("div",{class:we.value,style:Ke.value,...J.getNodeData()},qt)}}function se(J,ue,we,Ke){let Pe=[];n.innerTrackColor!=="transparent"&&Pe.push(i("div",{key:"inner",class:ae.value,style:j.value})),n.selectionColor!=="transparent"&&Pe.push(i("div",{key:"selection",class:ee.value,style:J.value})),n.markers!==!1&&Pe.push(i("div",{key:"marker",class:ve.value,style:Le.value})),Ke(Pe);let Je=[Rt("div",{key:"trackC",class:O.value,tabindex:ue.value,...we.value},[i("div",{class:M.value,style:V.value},Pe)],"slide",b.value,()=>G.value)];if(n.markerLabels!==!1){let mt=n.switchMarkerLabelsSide===!0?"unshift":"push";Je[mt](i("div",{key:"markerL",class:le.value},ie()))}return Je}return be(()=>{document.removeEventListener("mouseup",Oe,!0)}),{state:{active:d,focus:g,preventFocus:p,dragging:m,editable:b,classes:z,tabindex:E,attributes:A,roundValueFn:h,keyStep:_,trackLen:L,innerMin:k,innerMinRatio:Z,innerMax:S,innerMaxRatio:B,positionProp:F,sizeProp:$,isReversed:y},methods:{onActivate:Ue,onMobileClick:He,onBlur:De,onKeyup:dt,getContent:se,getThumbRenderFn:te,convertRatioToModel:fe,convertModelToRatio:ke,getDraggingRatio:X}}}var Cg=()=>({}),Jo=P({name:"QSlider",props:{...ii,modelValue:{required:!0,default:null,validator:e=>typeof e=="number"||e===null},labelValue:[String,Number]},emits:li,setup(e,{emit:t}){let{proxy:{$q:o}}=K(),{state:r,methods:n}=ui({updateValue:v,updatePosition:y,getDragging:x,formAttrs:Oo(e)}),a=T(null),l=T(0),u=T(0);function c(){u.value=e.modelValue===null?r.innerMin.value:tt(e.modelValue,r.innerMin.value,r.innerMax.value)}Y(()=>`${e.modelValue}|${r.innerMin.value}|${r.innerMax.value}`,c),c();let f=s(()=>n.convertModelToRatio(u.value)),d=s(()=>r.active.value===!0?l.value:f.value),p=s(()=>{let b={[r.positionProp.value]:`${100*r.innerMinRatio.value}%`,[r.sizeProp.value]:`${100*(d.value-r.innerMinRatio.value)}%`};return e.selectionImg!==void 0&&(b.backgroundImage=`url(${e.selectionImg}) !important`),b}),g=n.getThumbRenderFn({focusValue:!0,getNodeData:Cg,ratio:d,label:s(()=>e.labelValue!==void 0?e.labelValue:u.value),thumbColor:s(()=>e.thumbColor||e.color),labelColor:s(()=>e.labelColor),labelTextColor:s(()=>e.labelTextColor)}),m=s(()=>r.editable.value!==!0?{}:o.platform.is.mobile===!0?{onClick:n.onMobileClick}:{onMousedown:n.onActivate,onFocus:k,onBlur:n.onBlur,onKeydown:S,onKeyup:n.onKeyup});function v(b){u.value!==e.modelValue&&t("update:modelValue",u.value),b===!0&&t("change",u.value)}function x(){return a.value.getBoundingClientRect()}function y(b,h=r.dragging.value){let _=n.getDraggingRatio(b,h);u.value=n.convertRatioToModel(_),l.value=e.snap!==!0||e.step===0?_:n.convertModelToRatio(u.value)}function k(){r.focus.value=!0}function S(b){if(ra.includes(b.keyCode)===!1)return;_e(b);let h=([34,33].includes(b.keyCode)?10:1)*r.keyStep.value,_=([34,37,40].includes(b.keyCode)?-1:1)*(r.isReversed.value===!0?-1:1)*(e.vertical===!0?-1:1)*h;u.value=tt(r.roundValueFn.value(u.value+_),r.innerMin.value,r.innerMax.value),v()}return()=>{let b=n.getContent(p,r.tabindex,m,h=>{h.push(g())});return i("div",{ref:a,class:r.classes.value+(e.modelValue===null?" q-slider--no-value":""),...r.attributes.value,"aria-valuenow":e.modelValue},b)}}});function Mr(){let e=T(!xt.value);return e.value===!1&&Qe(()=>{e.value=!0}),{isHydrated:e}}var Ws=typeof ResizeObserver<"u",Ks=Ws===!0?{}:{style:"display:block;position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1;",url:"about:blank"},no=P({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(e,{emit:t}){let o=null,r,n={width:-1,height:-1};function a(c){c===!0||e.debounce===0||e.debounce==="0"?l():o===null&&(o=setTimeout(l,e.debounce))}function l(){if(o!==null&&(clearTimeout(o),o=null),r){let{offsetWidth:c,offsetHeight:f}=r;(c!==n.width||f!==n.height)&&(n={width:c,height:f},t("resize",n))}}let{proxy:u}=K();if(u.trigger=a,Ws===!0){let c,f=d=>{r=u.$el.parentNode,r?(c=new ResizeObserver(a),c.observe(r),l()):d!==!0&&Be(()=>{f(!0)})};return Qe(()=>{f()}),be(()=>{o!==null&&clearTimeout(o),c!==void 0&&(c.disconnect!==void 0?c.disconnect():r&&c.unobserve(r))}),Ye}else{let d=function(){o!==null&&(clearTimeout(o),o=null),f!==void 0&&(f.removeEventListener!==void 0&&f.removeEventListener("resize",a,et.passive),f=void 0)},p=function(){d(),r?.contentDocument&&(f=r.contentDocument.defaultView,f.addEventListener("resize",a,et.passive),l())},{isHydrated:c}=Mr(),f;return Qe(()=>{Be(()=>{r=u.$el,r&&p()})}),be(d),()=>{if(c.value===!0)return i("object",{class:"q--avoid-card-border",style:Ks.style,tabindex:-1,type:"text/html",data:Ks.url,"aria-hidden":"true",onLoad:p})}}}});var $n=!1;{let e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});let t=document.createElement("div");Object.assign(t.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(t),e.scrollLeft=-1e3,$n=e.scrollLeft>=0,e.remove()}function wg(e,t,o){let r=o===!0?["left","right"]:["top","bottom"];return`absolute-${t===!0?r[0]:r[1]}${e?` text-${e}`:""}`}var kg=["left","center","right","justify"],aa=P({name:"QTabs",props:{modelValue:[Number,String],align:{type:String,default:"center",validator:e=>kg.includes(e)},breakpoint:{type:[String,Number],default:600},vertical:Boolean,shrink:Boolean,stretch:Boolean,activeClass:String,activeColor:String,activeBgColor:String,indicatorColor:String,leftIcon:String,rightIcon:String,outsideArrows:Boolean,mobileArrows:Boolean,switchIndicator:Boolean,narrowIndicator:Boolean,inlineLabel:Boolean,noCaps:Boolean,dense:Boolean,contentClass:String,"onUpdate:modelValue":[Function,Array]},setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,{registerTick:a}=So(),{registerTick:l}=So(),{registerTick:u}=So(),{registerTimeout:c,removeTimeout:f}=Vt(),{registerTimeout:d,removeTimeout:p}=Vt(),g=T(null),m=T(null),v=T(e.modelValue),x=T(!1),y=T(!0),k=T(!1),S=T(!1),b=[],h=T(0),_=T(!1),E=null,L=null,D,Z=s(()=>({activeClass:e.activeClass,activeColor:e.activeColor,activeBgColor:e.activeBgColor,indicatorClass:wg(e.indicatorColor,e.switchIndicator,e.vertical),narrowIndicator:e.narrowIndicator,inlineLabel:e.inlineLabel,noCaps:e.noCaps})),B=s(()=>{let ie=h.value,G=v.value;for(let me=0;me`q-tabs__content--align-${x.value===!0?"left":S.value===!0?"justify":e.align}`),$=s(()=>`q-tabs row no-wrap items-center q-tabs--${x.value===!0?"":"not-"}scrollable q-tabs--${e.vertical===!0?"vertical":"horizontal"} q-tabs__arrows--${e.outsideArrows===!0?"outside":"inside"} q-tabs--mobile-with${e.mobileArrows===!0?"":"out"}-arrows`+(e.dense===!0?" q-tabs--dense":"")+(e.shrink===!0?" col-shrink":"")+(e.stretch===!0?" self-stretch":"")),q=s(()=>"q-tabs__content scroll--mobile row no-wrap items-center self-stretch hide-scrollbar relative-position "+F.value+(e.contentClass!==void 0?` ${e.contentClass}`:"")),C=s(()=>e.vertical===!0?{container:"height",content:"offsetHeight",scroll:"scrollHeight"}:{container:"width",content:"offsetWidth",scroll:"scrollWidth"}),A=s(()=>e.vertical!==!0&&n.lang.rtl===!0),z=s(()=>$n===!1&&A.value===!0);Y(A,w),Y(()=>e.modelValue,ie=>{H({name:ie,setCurrent:!0,skipEmit:!0})}),Y(()=>e.outsideArrows,Q);function H({name:ie,setCurrent:G,skipEmit:me}){v.value!==ie&&(me!==!0&&e["onUpdate:modelValue"]!==void 0&&o("update:modelValue",ie),(G===!0||e["onUpdate:modelValue"]===void 0)&&(ve(v.value,ie),v.value=ie))}function Q(){a(()=>{g.value&&ee({width:g.value.offsetWidth,height:g.value.offsetHeight})})}function ee(ie){if(C.value===void 0||m.value===null)return;let G=ie[C.value.container],me=Math.min(m.value[C.value.scroll],Array.prototype.reduce.call(m.value.children,(Ue,Oe)=>Ue+(Oe[C.value.content]||0),0)),De=G>0&&me>G;x.value=De,De===!0&&l(w),S.value=GUe.name.value===ie):null,De=G!=null&&G!==""?b.find(Ue=>Ue.name.value===G):null;if(nt===!0)nt=!1;else if(me&&De){let Ue=me.tabIndicatorRef.value,Oe=De.tabIndicatorRef.value;E!==null&&(clearTimeout(E),E=null),Ue.style.transition="none",Ue.style.transform="none",Oe.style.transition="none",Oe.style.transform="none";let He=Ue.getBoundingClientRect(),dt=Oe.getBoundingClientRect();Oe.style.transform=e.vertical===!0?`translate3d(0,${He.top-dt.top}px,0) scale3d(1,${dt.height?He.height/dt.height:1},1)`:`translate3d(${He.left-dt.left}px,0,0) scale3d(${dt.width?He.width/dt.width:1},1,1)`,u(()=>{E=setTimeout(()=>{E=null,Oe.style.transition="transform .25s cubic-bezier(.4, 0, .2, 1)",Oe.style.transform="none"},70)})}De&&x.value===!0&&O(De.rootRef.value)}function O(ie){let{left:G,width:me,top:De,height:Ue}=m.value.getBoundingClientRect(),Oe=ie.getBoundingClientRect(),He=e.vertical===!0?Oe.top-De:Oe.left-G;if(He<0){m.value[e.vertical===!0?"scrollTop":"scrollLeft"]+=Math.floor(He),w();return}He+=e.vertical===!0?Oe.height-Ue:Oe.width-me,He>0&&(m.value[e.vertical===!0?"scrollTop":"scrollLeft"]+=Math.ceil(He),w())}function w(){let ie=m.value;if(ie===null)return;let G=ie.getBoundingClientRect(),me=e.vertical===!0?ie.scrollTop:Math.abs(ie.scrollLeft);A.value===!0?(y.value=Math.ceil(me+G.width)0):(y.value=me>0,k.value=e.vertical===!0?Math.ceil(me+G.height){j(ie)===!0&&M()},5)}function U(){W(z.value===!0?Number.MAX_SAFE_INTEGER:0)}function le(){W(z.value===!0?0:Number.MAX_SAFE_INTEGER)}function M(){L!==null&&(clearInterval(L),L=null)}function V(ie,G){let me=Array.prototype.filter.call(m.value.children,dt=>dt===G||dt.matches&&dt.matches(".q-tab.q-focusable")===!0),De=me.length;if(De===0)return;if(ie===36)return O(me[0]),me[0].focus(),!0;if(ie===35)return O(me[De-1]),me[De-1].focus(),!0;let Ue=ie===(e.vertical===!0?38:37),Oe=ie===(e.vertical===!0?40:39),He=Ue===!0?-1:Oe===!0?1:void 0;if(He!==void 0){let dt=A.value===!0?-1:1,lt=me.indexOf(G)+He*dt;return lt>=0&<z.value===!0?{get:ie=>Math.abs(ie.scrollLeft),set:(ie,G)=>{ie.scrollLeft=-G}}:e.vertical===!0?{get:ie=>ie.scrollTop,set:(ie,G)=>{ie.scrollTop=G}}:{get:ie=>ie.scrollLeft,set:(ie,G)=>{ie.scrollLeft=G}});function j(ie){let G=m.value,{get:me,set:De}=ae.value,Ue=!1,Oe=me(G),He=ie=ie)&&(Ue=!0,Oe=ie),De(G,Oe),w(),Ue}function fe(ie,G){for(let me in ie)if(ie[me]!==G[me])return!1;return!0}function ke(){let ie=null,G={matchedLen:0,queryDiff:9999,hrefLen:0},me=b.filter(He=>He.routeData?.hasRouterLink.value===!0),{hash:De,query:Ue}=r.$route,Oe=Object.keys(Ue).length;for(let He of me){let dt=He.routeData.exact.value===!0;if(He.routeData[dt===!0?"linkIsExactActive":"linkIsActive"].value!==!0)continue;let{hash:lt,query:te,matched:se,href:J}=He.routeData.resolvedLink.value,ue=Object.keys(te).length;if(dt===!0){if(lt!==De||ue!==Oe||fe(Ue,te)===!1)continue;ie=He.name.value;break}if(lt!==""&<!==De||ue!==0&&fe(te,Ue)===!1)continue;let we={matchedLen:se.length,queryDiff:Oe-ue,hrefLen:J.length-lt.length};if(we.matchedLen>G.matchedLen){ie=He.name.value,G=we;continue}else if(we.matchedLen!==G.matchedLen)continue;if(we.queryDiffG.hrefLen&&(ie=He.name.value,G=we)}if(ie===null&&b.some(He=>He.routeData===void 0&&He.name.value===v.value)===!0){nt=!1;return}H({name:ie,setCurrent:!0})}function X(ie){if(f(),_.value!==!0&&g.value!==null&&ie.target&&typeof ie.target.closest=="function"){let G=ie.target.closest(".q-tab");G&&g.value.contains(G)===!0&&(_.value=!0,x.value===!0&&O(G))}}function ce(){c(()=>{_.value=!1},30)}function ge(){Le.avoidRouteWatcher===!1?d(ke):p()}function Ce(){if(D===void 0){let ie=Y(()=>r.$route.fullPath,ge);D=()=>{ie(),D=void 0}}}function Fe(ie){b.push(ie),h.value++,Q(),ie.routeData===void 0||r.$route===void 0?d(()=>{if(x.value===!0){let G=v.value,me=G!=null&&G!==""?b.find(De=>De.name.value===G):null;me&&O(me.rootRef.value)}}):(Ce(),ie.routeData.hasRouterLink.value===!0&&ge())}function de(ie){b.splice(b.indexOf(ie),1),h.value--,Q(),D!==void 0&&ie.routeData!==void 0&&(b.every(G=>G.routeData===void 0)===!0&&D(),ge())}let Le={currentModel:v,tabProps:Z,hasFocus:_,hasActiveTab:B,registerTab:Fe,unregisterTab:de,verifyRouteModel:ge,updateModel:H,onKbdNavigate:V,avoidRouteWatcher:!1};Kt(Ea,Le);function ze(){E!==null&&clearTimeout(E),M(),D?.()}let Ie,nt;return be(ze),At(()=>{Ie=D!==void 0,ze()}),Ut(()=>{Ie===!0&&(Ce(),nt=!0,ge()),Q()}),()=>i("div",{ref:g,class:$.value,role:"tablist",onFocusin:X,onFocusout:ce},[i(no,{onResize:ee}),i("div",{ref:m,class:q.value,onScroll:w},re(t.default)),i(Re,{class:"q-tabs__arrow q-tabs__arrow--left absolute q-tab__icon"+(y.value===!0?"":" q-tabs__arrow--faded"),name:e.leftIcon||n.iconSet.tabs[e.vertical===!0?"up":"left"],onMousedownPassive:U,onTouchstartPassive:U,onMouseupPassive:M,onMouseleavePassive:M,onTouchendPassive:M}),i(Re,{class:"q-tabs__arrow q-tabs__arrow--right absolute q-tab__icon"+(k.value===!0?"":" q-tabs__arrow--faded"),name:e.rightIcon||n.iconSet.tabs[e.vertical===!0?"down":"right"],onMousedownPassive:le,onTouchstartPassive:le,onMouseupPassive:M,onMouseleavePassive:M,onTouchendPassive:M})])}});var qg=0,si=["click","keydown"],ci={icon:String,label:[Number,String],alert:[Boolean,String],alertIcon:String,name:{type:[Number,String],default:()=>`t_${qg++}`},noCaps:Boolean,tabindex:[String,Number],disable:Boolean,contentClass:String,ripple:{type:[Boolean,Object],default:!0}};function di(e,t,o,r){let n=pt(Ea,Ze);if(n===Ze)return console.error("QTab/QRouteTab component needs to be child of QTabs"),Ze;let{proxy:a}=K(),l=T(null),u=T(null),c=T(null),f=s(()=>e.disable===!0||e.ripple===!1?!1:Object.assign({keyCodes:[13,32],early:!0},e.ripple===!0?{}:e.ripple)),d=s(()=>n.currentModel.value===e.name),p=s(()=>"q-tab relative-position self-stretch flex flex-center text-center"+(d.value===!0?" q-tab--active"+(n.tabProps.value.activeClass?" "+n.tabProps.value.activeClass:"")+(n.tabProps.value.activeColor?` text-${n.tabProps.value.activeColor}`:"")+(n.tabProps.value.activeBgColor?` bg-${n.tabProps.value.activeBgColor}`:""):" q-tab--inactive")+(e.icon&&e.label&&n.tabProps.value.inlineLabel===!1?" q-tab--full":"")+(e.noCaps===!0||n.tabProps.value.noCaps===!0?" q-tab--no-caps":"")+(e.disable===!0?" disabled":" q-focusable q-hoverable cursor-pointer")+(r!==void 0?r.linkClass.value:"")),g=s(()=>"q-tab__content self-stretch flex-center relative-position q-anchor--skip non-selectable "+(n.tabProps.value.inlineLabel===!0?"row no-wrap q-tab__content--inline":"column")+(e.contentClass!==void 0?` ${e.contentClass}`:"")),m=s(()=>e.disable===!0||n.hasFocus.value===!0||d.value===!1&&n.hasActiveTab.value===!0?-1:e.tabindex||0);function v(b,h){if(h!==!0&&b?.qAvoidFocus!==!0&&l.value?.focus(),e.disable===!0){r?.hasRouterLink.value===!0&&_e(b);return}if(r===void 0){n.updateModel({name:e.name}),o("click",b);return}if(r.hasRouterLink.value===!0){let _=(E={})=>{let L,D=E.to===void 0||Xt(E.to,e.to)===!0?n.avoidRouteWatcher=Lo():null;return r.navigateToRouterLink(b,{...E,returnRouterError:!0}).catch(Z=>{L=Z}).then(Z=>{if(D===n.avoidRouteWatcher&&(n.avoidRouteWatcher=!1,L===void 0&&(Z===void 0||Z.message?.startsWith("Avoided redundant navigation")===!0)&&n.updateModel({name:e.name})),E.returnRouterError===!0)return L!==void 0?Promise.reject(L):Z})};o("click",b,_),b.defaultPrevented!==!0&&_();return}o("click",b)}function x(b){Mt(b,[13,32])?v(b,!0):io(b)!==!0&&b.keyCode>=35&&b.keyCode<=40&&b.altKey!==!0&&b.metaKey!==!0&&n.onKbdNavigate(b.keyCode,a.$el)===!0&&_e(b),o("keydown",b)}function y(){let b=n.tabProps.value.narrowIndicator,h=[],_=i("div",{ref:c,class:["q-tab__indicator",n.tabProps.value.indicatorClass]});e.icon!==void 0&&h.push(i(Re,{class:"q-tab__icon",name:e.icon})),e.label!==void 0&&h.push(i("div",{class:"q-tab__label"},e.label)),e.alert!==!1&&h.push(e.alertIcon!==void 0?i(Re,{class:"q-tab__alert-icon",color:e.alert!==!0?e.alert:void 0,name:e.alertIcon}):i("div",{class:"q-tab__alert"+(e.alert!==!0?` text-${e.alert}`:"")})),b===!0&&h.push(_);let E=[i("div",{class:"q-focus-helper",tabindex:-1,ref:l}),i("div",{class:g.value},Ge(t.default,h))];return b===!1&&E.push(_),E}let k={name:s(()=>e.name),rootRef:u,tabIndicatorRef:c,routeData:r};be(()=>{n.unregisterTab(k)}),Qe(()=>{n.registerTab(k)});function S(b,h){let _={ref:u,class:p.value,tabindex:m.value,role:"tab","aria-selected":d.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:v,onKeydown:x,...h};return Bt(i(b,_,y()),[[$o,f.value]])}return{renderTab:S,$tabs:n}}var fn=P({name:"QTab",props:ci,emits:si,setup(e,{slots:t,emit:o}){let{renderTab:r}=di(e,t,o);return()=>r("div")}});var fi=P({name:"QTabPanels",props:{...Sr,...Se},emits:xr,setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),{updatePanelsList:n,getPanelContent:a,panelDirectives:l}=_r(),u=s(()=>"q-tab-panels q-panel-parent"+(r.value===!0?" q-tab-panels--dark q-dark":""));return()=>(n(t),Rt("div",{class:u.value},a(),"pan",e.swipeable,()=>l.value))}});var Rr=P({name:"QTabPanel",props:yr,setup(e,{slots:t}){return()=>i("div",{class:"q-tab-panel",role:"tabpanel"},re(t.default))}});var Ys=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,Xs=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,Gs=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,mi=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,vi=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,En={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>Ys.test(e),hexaColor:e=>Xs.test(e),hexOrHexaColor:e=>Gs.test(e),rgbColor:e=>mi.test(e),rgbaColor:e=>vi.test(e),rgbOrRgbaColor:e=>mi.test(e)||vi.test(e),hexOrRgbColor:e=>Ys.test(e)||mi.test(e),hexaOrRgbaColor:e=>Xs.test(e)||vi.test(e),anyColor:e=>Gs.test(e)||mi.test(e)||vi.test(e)},Zs={testPattern:En};var Tg=/^rgb(a)?\((\d{1,3}),(\d{1,3}),(\d{1,3}),?([01]?\.?\d*?)?\)$/;function Bn({r:e,g:t,b:o,a:r}){let n=r!==void 0;if(e=Math.round(e),t=Math.round(t),o=Math.round(o),e>255||t>255||o>255||n&&r>100)throw new TypeError("Expected 3 numbers below 256 (and optionally one below 100)");return r=n?(Math.round(255*r/100)|256).toString(16).slice(1):"","#"+(o|t<<8|e<<16|1<<24).toString(16).slice(1)+r}function Kl({r:e,g:t,b:o,a:r}){return`rgb${r!==void 0?"a":""}(${e},${t},${o}${r!==void 0?","+r/100:""})`}function gi(e){if(typeof e!="string")throw new TypeError("Expected a string");e=e.replace(/^#/,""),e.length===3?e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]:e.length===4&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);let t=parseInt(e,16);return e.length>6?{r:t>>24&255,g:t>>16&255,b:t>>8&255,a:Math.round((t&255)/2.55)}:{r:t>>16,g:t>>8&255,b:t&255}}function hi({h:e,s:t,v:o,a:r}){let n,a,l;t=t/100,o=o/100,e=e/360;let u=Math.floor(e*6),c=e*6-u,f=o*(1-t),d=o*(1-c*t),p=o*(1-(1-c)*t);switch(u%6){case 0:n=o,a=p,l=f;break;case 1:n=d,a=o,l=f;break;case 2:n=f,a=o,l=p;break;case 3:n=f,a=d,l=o;break;case 4:n=p,a=f,l=o;break;case 5:n=o,a=f,l=d;break}return{r:Math.round(n*255),g:Math.round(a*255),b:Math.round(l*255),a:r}}function ia({r:e,g:t,b:o,a:r}){let n=Math.max(e,t,o),a=Math.min(e,t,o),l=n-a,u=n===0?0:l/n,c=n/255,f;switch(n){case a:f=0;break;case e:f=t-o+l*(t1)throw new TypeError("Expected offset to be between -1 and 1");let{r:o,g:r,b:n,a}=zo(e),l=a!==void 0?a/100:0;return Bn({r:o,g:r,b:n,a:Math.round(Math.min(1,Math.max(0,l+t))*100)})}function $g(e){if(typeof e!="string")throw new TypeError("Expected a string as color");let t=document.createElement("div");t.className=`text-${e} invisible fixed no-pointer-events`,document.body.appendChild(t);let o=getComputedStyle(t).getPropertyValue("color");return t.remove(),Bn(zo(o))}var Js={rgbToHex:Bn,hexToRgb:gi,hsvToRgb:hi,rgbToHsv:ia,textToRgb:zo,lighten:Mg,luminosity:Wl,brightness:Rg,blend:Pg,changeAlpha:Ag,getPaletteColor:$g};var Eg=["rgb(255,204,204)","rgb(255,230,204)","rgb(255,255,204)","rgb(204,255,204)","rgb(204,255,230)","rgb(204,255,255)","rgb(204,230,255)","rgb(204,204,255)","rgb(230,204,255)","rgb(255,204,255)","rgb(255,153,153)","rgb(255,204,153)","rgb(255,255,153)","rgb(153,255,153)","rgb(153,255,204)","rgb(153,255,255)","rgb(153,204,255)","rgb(153,153,255)","rgb(204,153,255)","rgb(255,153,255)","rgb(255,102,102)","rgb(255,179,102)","rgb(255,255,102)","rgb(102,255,102)","rgb(102,255,179)","rgb(102,255,255)","rgb(102,179,255)","rgb(102,102,255)","rgb(179,102,255)","rgb(255,102,255)","rgb(255,51,51)","rgb(255,153,51)","rgb(255,255,51)","rgb(51,255,51)","rgb(51,255,153)","rgb(51,255,255)","rgb(51,153,255)","rgb(51,51,255)","rgb(153,51,255)","rgb(255,51,255)","rgb(255,0,0)","rgb(255,128,0)","rgb(255,255,0)","rgb(0,255,0)","rgb(0,255,128)","rgb(0,255,255)","rgb(0,128,255)","rgb(0,0,255)","rgb(128,0,255)","rgb(255,0,255)","rgb(245,0,0)","rgb(245,123,0)","rgb(245,245,0)","rgb(0,245,0)","rgb(0,245,123)","rgb(0,245,245)","rgb(0,123,245)","rgb(0,0,245)","rgb(123,0,245)","rgb(245,0,245)","rgb(214,0,0)","rgb(214,108,0)","rgb(214,214,0)","rgb(0,214,0)","rgb(0,214,108)","rgb(0,214,214)","rgb(0,108,214)","rgb(0,0,214)","rgb(108,0,214)","rgb(214,0,214)","rgb(163,0,0)","rgb(163,82,0)","rgb(163,163,0)","rgb(0,163,0)","rgb(0,163,82)","rgb(0,163,163)","rgb(0,82,163)","rgb(0,0,163)","rgb(82,0,163)","rgb(163,0,163)","rgb(92,0,0)","rgb(92,46,0)","rgb(92,92,0)","rgb(0,92,0)","rgb(0,92,46)","rgb(0,92,92)","rgb(0,46,92)","rgb(0,0,92)","rgb(46,0,92)","rgb(92,0,92)","rgb(255,255,255)","rgb(205,205,205)","rgb(178,178,178)","rgb(153,153,153)","rgb(127,127,127)","rgb(102,102,102)","rgb(76,76,76)","rgb(51,51,51)","rgb(25,25,25)","rgb(0,0,0)"],ec="M5 5 h10 v10 h-10 v-10 z",Bg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==",tc=P({name:"QColor",props:{...Se,...kt,modelValue:String,defaultValue:String,defaultView:{type:String,default:"spectrum",validator:e=>["spectrum","tune","palette"].includes(e)},formatModel:{type:String,default:"auto",validator:e=>["auto","hex","rgb","hexa","rgba"].includes(e)},palette:Array,noHeader:Boolean,noHeaderTabs:Boolean,noFooter:Boolean,square:Boolean,flat:Boolean,bordered:Boolean,disable:Boolean,readonly:Boolean},emits:["update:modelValue","change"],setup(e,{emit:t}){let{proxy:o}=K(),{$q:r}=o,n=xe(e,r),{getCache:a}=xo(),l=T(null),u=T(null),c=s(()=>e.formatModel==="auto"?null:e.formatModel.indexOf("hex")!==-1),f=s(()=>e.formatModel==="auto"?null:e.formatModel.indexOf("a")!==-1),d=T(e.formatModel==="auto"?e.modelValue===void 0||e.modelValue===null||e.modelValue===""||e.modelValue.startsWith("#")?"hex":"rgb":e.formatModel.startsWith("hex")?"hex":"rgb"),p=T(e.defaultView),g=T($(e.modelValue||e.defaultValue)),m=s(()=>e.disable!==!0&&e.readonly!==!0),v=s(()=>e.modelValue===void 0||e.modelValue===null||e.modelValue===""||e.modelValue.startsWith("#")),x=s(()=>c.value!==null?c.value:v.value),y=s(()=>({type:"hidden",name:e.name,value:g.value[x.value===!0?"hex":"rgb"]})),k=Zt(y),S=s(()=>f.value!==null?f.value:g.value.a!==void 0),b=s(()=>({backgroundColor:g.value.rgb||"#000"})),h=s(()=>`q-color-picker__header-content q-color-picker__header-content--${(g.value.a!==void 0&&g.value.a<65?!0:Wl(g.value)>.4)?"light":"dark"}`),_=s(()=>({background:`hsl(${g.value.h},100%,50%)`})),E=s(()=>({top:`${100-g.value.v}%`,[r.lang.rtl===!0?"right":"left"]:`${g.value.s}%`})),L=s(()=>e.palette!==void 0&&e.palette.length!==0?e.palette:Eg),D=s(()=>"q-color-picker"+(e.bordered===!0?" q-color-picker--bordered":"")+(e.square===!0?" q-color-picker--square no-border-radius":"")+(e.flat===!0?" q-color-picker--flat no-shadow":"")+(e.disable===!0?" disabled":"")+(n.value===!0?" q-color-picker--dark q-dark":"")),Z=s(()=>e.disable===!0?{"aria-disabled":"true"}:{}),B=s(()=>[[Pt,ee,void 0,{prevent:!0,stop:!0,mouse:!0}]]);Y(()=>e.modelValue,X=>{let ce=$(X||e.defaultValue);ce.hex!==g.value.hex&&(g.value=ce)}),Y(()=>e.defaultValue,X=>{if(!e.modelValue&&X){let ce=$(X);ce.hex!==g.value.hex&&(g.value=ce)}});function F(X,ce){g.value.hex=Bn(X),g.value.rgb=Kl(X),g.value.r=X.r,g.value.g=X.g,g.value.b=X.b,g.value.a=X.a;let ge=g.value[x.value===!0?"hex":"rgb"];t("update:modelValue",ge),ce===!0&&t("change",ge)}function $(X){let ce=f.value!==void 0?f.value:e.formatModel==="auto"?null:e.formatModel.indexOf("a")!==-1;if(typeof X!="string"||X.length===0||En.anyColor(X.replace(/ /g,""))!==!0)return{h:0,s:0,v:0,r:0,g:0,b:0,a:ce===!0?100:void 0,hex:void 0,rgb:void 0};let ge=zo(X);return ce===!0&&ge.a===void 0&&(ge.a=100),ge.hex=Bn(ge),ge.rgb=Kl(ge),Object.assign(ge,ia(ge))}function q(X,ce,ge){let Ce=l.value;if(Ce===null)return;let Fe=Ce.clientWidth,de=Ce.clientHeight,Le=Ce.getBoundingClientRect(),ze=Math.min(Fe,Math.max(0,X-Le.left));r.lang.rtl===!0&&(ze=Fe-ze);let Ie=Math.min(de,Math.max(0,ce-Le.top)),nt=Math.round(100*ze/Fe),ie=Math.round(100*Math.max(0,Math.min(1,-(Ie/de)+1))),G=hi({h:g.value.h,s:nt,v:ie,a:S.value===!0?g.value.a:void 0});g.value.s=nt,g.value.v=ie,F(G,ge)}function C(X,ce){let ge=Math.round(X),Ce=hi({h:ge,s:g.value.s,v:g.value.v,a:S.value===!0?g.value.a:void 0});g.value.h=ge,F(Ce,ce)}function A(X){C(X,!0)}function z(X,ce,ge,Ce,Fe){if(Ce!==void 0&&it(Ce),!/^[0-9]+$/.test(X)){Fe===!0&&o.$forceUpdate();return}let de=Math.floor(Number(X));if(de<0||de>ge){Fe===!0&&o.$forceUpdate();return}let Le={r:ce==="r"?de:g.value.r,g:ce==="g"?de:g.value.g,b:ce==="b"?de:g.value.b,a:S.value===!0?ce==="a"?de:g.value.a:void 0};if(ce!=="a"){let ze=ia(Le);g.value.h=ze.h,g.value.s=ze.s,g.value.v=ze.v}if(F(Le,Fe),Fe!==!0&&Ce?.target.selectionEnd!==void 0){let ze=Ce.target.selectionEnd;Be(()=>{Ce.target.setSelectionRange(ze,ze)})}}function H(X,ce){let ge,Ce=X.target.value;if(it(X),d.value==="hex"){if(Ce.length!==(S.value===!0?9:7)||!/^#[0-9A-Fa-f]+$/.test(Ce))return!0;ge=gi(Ce)}else{let de;if(Ce.endsWith(")"))if(S.value!==!0&&Ce.startsWith("rgb(")){if(de=Ce.substring(4,Ce.length-1).split(",").map(Le=>parseInt(Le,10)),de.length!==3||!/^rgb\([0-9]{1,3},[0-9]{1,3},[0-9]{1,3}\)$/.test(Ce))return!0}else if(S.value===!0&&Ce.startsWith("rgba(")){if(de=Ce.substring(5,Ce.length-1).split(","),de.length!==4||!/^rgba\([0-9]{1,3},[0-9]{1,3},[0-9]{1,3},(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/.test(Ce))return!0;for(let ze=0;ze<3;ze++){let Ie=parseInt(de[ze],10);if(Ie<0||Ie>255)return!0;de[ze]=Ie}let Le=parseFloat(de[3]);if(Le<0||Le>1)return!0;de[3]=Le}else return!0;else return!0;if(de[0]<0||de[0]>255||de[1]<0||de[1]>255||de[2]<0||de[2]>255||S.value===!0&&(de[3]<0||de[3]>1))return!0;ge={r:de[0],g:de[1],b:de[2],a:S.value===!0?de[3]*100:void 0}}let Fe=ia(ge);if(g.value.h=Fe.h,g.value.s=Fe.s,g.value.v=Fe.v,F(ge,ce),ce!==!0){let de=X.target.selectionEnd;Be(()=>{X.target.setSelectionRange(de,de)})}}function Q(X){let ce=$(X),ge={r:ce.r,g:ce.g,b:ce.b,a:ce.a};ge.a===void 0&&(ge.a=g.value.a),g.value.h=ce.h,g.value.s=ce.s,g.value.v=ce.v,F(ge,!0)}function ee(X){X.isFinal?q(X.position.left,X.position.top,!0):ve(X)}let ve=Zn(X=>{q(X.position.left,X.position.top)},20);function O(X){q(X.pageX-window.pageXOffset,X.pageY-window.pageYOffset,!0)}function w(X){q(X.pageX-window.pageXOffset,X.pageY-window.pageYOffset)}function W(X){u.value!==null&&(u.value.$el.style.opacity=X?1:0)}function U(X){d.value=X}function le(){let X=[];return e.noHeaderTabs!==!0&&X.push(i(aa,{class:"q-color-picker__header-tabs",modelValue:d.value,dense:!0,align:"justify","onUpdate:modelValue":U},()=>[i(fn,{label:"HEX"+(S.value===!0?"A":""),name:"hex",ripple:!1}),i(fn,{label:"RGB"+(S.value===!0?"A":""),name:"rgb",ripple:!1})])),X.push(i("div",{class:"q-color-picker__header-banner row flex-center no-wrap"},[i("input",{class:"fit",value:g.value[d.value],...m.value!==!0?{readonly:!0}:{},...a("topIn",{onInput:ce=>{W(H(ce)===!0)},onChange:it,onBlur:ce=>{H(ce,!0)===!0&&o.$forceUpdate(),W(!1)}})}),i(Re,{ref:u,class:"q-color-picker__error-icon absolute no-pointer-events",name:r.iconSet.type.negative})])),i("div",{class:"q-color-picker__header relative-position overflow-hidden"},[i("div",{class:"q-color-picker__header-bg absolute-full"}),i("div",{class:h.value,style:b.value},X)])}function M(){return i(fi,{modelValue:p.value,animated:!0},()=>[i(Rr,{class:"q-color-picker__spectrum-tab overflow-hidden",name:"spectrum"},j),i(Rr,{class:"q-pa-md q-color-picker__tune-tab",name:"tune"},fe),i(Rr,{class:"q-color-picker__palette-tab",name:"palette"},ke)])}function V(X){p.value=X}function ae(){return i("div",{class:"q-color-picker__footer relative-position overflow-hidden"},[i(aa,{class:"absolute-full",modelValue:p.value,dense:!0,align:"justify","onUpdate:modelValue":V},()=>[i(fn,{icon:r.iconSet.colorPicker.spectrum,name:"spectrum",ripple:!1}),i(fn,{icon:r.iconSet.colorPicker.tune,name:"tune",ripple:!1}),i(fn,{icon:r.iconSet.colorPicker.palette,name:"palette",ripple:!1})])])}function j(){let X={ref:l,class:"q-color-picker__spectrum non-selectable relative-position cursor-pointer"+(m.value!==!0?" readonly":""),style:_.value,...m.value===!0?{onClick:O,onMousedown:w}:{}},ce=[i("div",{style:{paddingBottom:"100%"}}),i("div",{class:"q-color-picker__spectrum-white absolute-full"}),i("div",{class:"q-color-picker__spectrum-black absolute-full"}),i("div",{class:"absolute",style:E.value},[g.value.hex!==void 0?i("div",{class:"q-color-picker__spectrum-circle"}):null])],ge=[i(Jo,{class:"q-color-picker__hue non-selectable",modelValue:g.value.h,min:0,max:360,trackSize:"8px",innerTrackColor:"transparent",selectionColor:"transparent",readonly:m.value!==!0,thumbPath:ec,"onUpdate:modelValue":C,onChange:A})];return S.value===!0&&ge.push(i(Jo,{class:"q-color-picker__alpha non-selectable",modelValue:g.value.a,min:0,max:100,trackSize:"8px",trackColor:"white",innerTrackColor:"transparent",selectionColor:"transparent",trackImg:Bg,readonly:m.value!==!0,hideSelection:!0,thumbPath:ec,...a("alphaSlide",{"onUpdate:modelValue":Ce=>z(Ce,"a",100),onChange:Ce=>z(Ce,"a",100,void 0,!0)})})),[Rt("div",X,ce,"spec",m.value,()=>B.value),i("div",{class:"q-color-picker__sliders"},ge)]}function fe(){return[i("div",{class:"row items-center no-wrap"},[i("div","R"),i(Jo,{modelValue:g.value.r,min:0,max:255,color:"red",dark:n.value,readonly:m.value!==!0,...a("rSlide",{"onUpdate:modelValue":X=>z(X,"r",255),onChange:X=>z(X,"r",255,void 0,!0)})}),i("input",{value:g.value.r,maxlength:3,readonly:m.value!==!0,onChange:it,...a("rIn",{onInput:X=>z(X.target.value,"r",255,X),onBlur:X=>z(X.target.value,"r",255,X,!0)})})]),i("div",{class:"row items-center no-wrap"},[i("div","G"),i(Jo,{modelValue:g.value.g,min:0,max:255,color:"green",dark:n.value,readonly:m.value!==!0,...a("gSlide",{"onUpdate:modelValue":X=>z(X,"g",255),onChange:X=>z(X,"g",255,void 0,!0)})}),i("input",{value:g.value.g,maxlength:3,readonly:m.value!==!0,onChange:it,...a("gIn",{onInput:X=>z(X.target.value,"g",255,X),onBlur:X=>z(X.target.value,"g",255,X,!0)})})]),i("div",{class:"row items-center no-wrap"},[i("div","B"),i(Jo,{modelValue:g.value.b,min:0,max:255,color:"blue",readonly:m.value!==!0,dark:n.value,...a("bSlide",{"onUpdate:modelValue":X=>z(X,"b",255),onChange:X=>z(X,"b",255,void 0,!0)})}),i("input",{value:g.value.b,maxlength:3,readonly:m.value!==!0,onChange:it,...a("bIn",{onInput:X=>z(X.target.value,"b",255,X),onBlur:X=>z(X.target.value,"b",255,X,!0)})})]),S.value===!0?i("div",{class:"row items-center no-wrap"},[i("div","A"),i(Jo,{modelValue:g.value.a,color:"grey",readonly:m.value!==!0,dark:n.value,...a("aSlide",{"onUpdate:modelValue":X=>z(X,"a",100),onChange:X=>z(X,"a",100,void 0,!0)})}),i("input",{value:g.value.a,maxlength:3,readonly:m.value!==!0,onChange:it,...a("aIn",{onInput:X=>z(X.target.value,"a",100,X),onBlur:X=>z(X.target.value,"a",100,X,!0)})})]):null]}function ke(){let X=ce=>i("div",{class:"q-color-picker__cube col-auto",style:{backgroundColor:ce},...m.value===!0?a("palette#"+ce,{onClick:()=>{Q(ce)}}):{}});return[i("div",{class:"row items-center q-color-picker__palette-rows"+(m.value===!0?" q-color-picker__palette-rows--editable":"")},L.value.map(X))]}return()=>{let X=[M()];return e.name!==void 0&&e.disable!==!0&&k(X,"push"),e.noHeader!==!0&&X.unshift(le()),e.noFooter!==!0&&X.push(ae()),i("div",{class:D.value,...Z.value},X)}}});var mn=[-61,9,38,199,426,686,756,818,1111,1181,1210,1635,2060,2097,2192,2262,2324,2394,2456,3178];function oc(e,t,o){return Object.prototype.toString.call(e)==="[object Date]"&&(o=e.getDate(),t=e.getMonth()+1,e=e.getFullYear()),Og(Xl(e,t,o))}function Yl(e,t,o){return rc(Dg(e,t,o))}function Fg(e){return Lg(e)===0}function Pr(e,t){return t<=6?31:t<=11||Fg(e)?30:29}function Lg(e){let t=mn.length,o=mn[0],r,n,a,l,u;if(e=mn[t-1])throw new Error("Invalid Jalaali year "+e);for(u=1;u=mn[o-1])throw new Error("Invalid Jalaali year "+e);for(d=1;d=0){if(a<=185)return n=1+Ct(a,31),r=lo(a,31)+1,{jy:o,jm:n,jd:r};a-=186}else o-=1,a+=179,l.leap===1&&(a+=1);return n=7+Ct(a,30),r=lo(a,30)+1,{jy:o,jm:n,jd:r}}function Xl(e,t,o){let r=Ct((e+Ct(t-8,6)+100100)*1461,4)+Ct(153*lo(t+9,12)+2,5)+o-34840408;return r=r-Ct(Ct(e+100100+Ct(t-8,6),100)*3,4)+752,r}function rc(e){let t=4*e+139361631;t=t+Ct(Ct(4*e+183187720,146097)*3,4)*4-3908;let o=Ct(lo(t,1461),4)*5+308,r=Ct(lo(o,153),5)+1,n=lo(Ct(o,153),12)+1;return{gy:Ct(t,1461)-100100+Ct(8-n,6),gm:n,gd:r}}function Ct(e,t){return~~(e/t)}function lo(e,t){return e-~~(e/t)*t}var Vg=["gregorian","persian"],Ar={mask:{type:String},locale:Object,calendar:{type:String,validator:e=>Vg.includes(e),default:"gregorian"},landscape:Boolean,color:String,textColor:String,square:Boolean,flat:Boolean,bordered:Boolean,readonly:Boolean,disable:Boolean},pi=["update:modelValue"];function Co(e){return e.year+"/"+rt(e.month)+"/"+rt(e.day)}function bi(e,t){let o=s(()=>e.disable!==!0&&e.readonly!==!0),r=s(()=>o.value===!0?0:-1),n=s(()=>{let u=[];return e.color!==void 0&&u.push(`bg-${e.color}`),e.textColor!==void 0&&u.push(`text-${e.textColor}`),u.join(" ")});function a(){return e.locale!==void 0?{...t.lang.date,...e.locale}:t.lang.date}function l(u){let c=new Date,f=u===!0?null:0;if(e.calendar==="persian"){let d=oc(c);return{year:d.jy,month:d.jm,day:d.jd}}return{year:c.getFullYear(),month:c.getMonth()+1,day:c.getDate(),hour:f,minute:f,second:f,millisecond:f}}return{editable:o,tabindex:r,headerClass:n,getLocale:a,getCurrentDate:l}}var lc=864e5,zg=36e5,Jl=6e4,uc="YYYY-MM-DDTHH:mm:ss.SSSZ",Ig=/\[((?:[^\]\\]|\\]|\\)*)\]|do|d{1,4}|Mo|M{1,4}|m{1,2}|wo|w{1,2}|Qo|Do|DDDo|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]/g,Hg=/(\[[^\]]*\])|do|d{1,4}|Mo|M{1,4}|m{1,2}|wo|w{1,2}|Qo|Do|DDDo|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]|([.*+:?^,\s${}()|\\]+)/g,Gl={};function Ng(e,t){let o="("+t.days.join("|")+")",r=e+o;if(Gl[r]!==void 0)return Gl[r];let n="("+t.daysShort.join("|")+")",a="("+t.months.join("|")+")",l="("+t.monthsShort.join("|")+")",u={},c=0,f=e.replace(Hg,p=>{switch(c++,p){case"YY":return u.YY=c,"(-?\\d{1,2})";case"YYYY":return u.YYYY=c,"(-?\\d{1,4})";case"M":return u.M=c,"(\\d{1,2})";case"Mo":return u.M=c++,"(\\d{1,2}(st|nd|rd|th))";case"MM":return u.M=c,"(\\d{2})";case"MMM":return u.MMM=c,l;case"MMMM":return u.MMMM=c,a;case"D":return u.D=c,"(\\d{1,2})";case"Do":return u.D=c++,"(\\d{1,2}(st|nd|rd|th))";case"DD":return u.D=c,"(\\d{2})";case"H":return u.H=c,"(\\d{1,2})";case"HH":return u.H=c,"(\\d{2})";case"h":return u.h=c,"(\\d{1,2})";case"hh":return u.h=c,"(\\d{2})";case"m":return u.m=c,"(\\d{1,2})";case"mm":return u.m=c,"(\\d{2})";case"s":return u.s=c,"(\\d{1,2})";case"ss":return u.s=c,"(\\d{2})";case"S":return u.S=c,"(\\d{1})";case"SS":return u.S=c,"(\\d{2})";case"SSS":return u.S=c,"(\\d{3})";case"A":return u.A=c,"(AM|PM)";case"a":return u.a=c,"(am|pm)";case"aa":return u.aa=c,"(a\\.m\\.|p\\.m\\.)";case"ddd":return n;case"dddd":return o;case"Q":case"d":case"E":return"(\\d{1})";case"do":return c++,"(\\d{1}(st|nd|rd|th))";case"Qo":return"(1st|2nd|3rd|4th)";case"DDD":case"DDDD":return"(\\d{1,3})";case"DDDo":return c++,"(\\d{1,3}(st|nd|rd|th))";case"w":return"(\\d{1,2})";case"wo":return c++,"(\\d{1,2}(st|nd|rd|th))";case"ww":return"(\\d{2})";case"Z":return u.Z=c,"(Z|[+-]\\d{2}:\\d{2})";case"ZZ":return u.ZZ=c,"(Z|[+-]\\d{2}\\d{2})";case"X":return u.X=c,"(-?\\d+)";case"x":return u.x=c,"(-?\\d{4,})";default:return c--,p[0]==="["&&(p=p.substring(1,p.length-1)),p.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}}),d={map:u,regex:new RegExp("^"+f)};return Gl[r]=d,d}function sc(e,t){return e!==void 0?e:t!==void 0?t.date:Wr.date}function ac(e,t=""){let o=e>0?"-":"+",r=Math.abs(e),n=Math.floor(r/60),a=r%60;return o+rt(n)+t+rt(a)}function Qg(e,t,o){let r=e.getFullYear(),n=e.getMonth(),a=e.getDate();return t.year!==void 0&&(r+=o*t.year,delete t.year),t.month!==void 0&&(n+=o*t.month,delete t.month),e.setDate(1),e.setMonth(2),e.setFullYear(r),e.setMonth(n),e.setDate(Math.min(a,tu(e))),t.date!==void 0&&(e.setDate(e.getDate()+o*t.date),delete t.date),e}function jg(e,t,o){let r=t.year!==void 0?t.year:e[`get${o}FullYear`](),n=t.month!==void 0?t.month-1:e[`get${o}Month`](),a=new Date(r,n+1,0).getDate(),l=Math.min(a,t.date!==void 0?t.date:e[`get${o}Date`]());return e[`set${o}Date`](1),e[`set${o}Month`](2),e[`set${o}FullYear`](r),e[`set${o}Month`](n),e[`set${o}Date`](l),delete t.year,delete t.month,delete t.date,e}function eu(e,t,o){let r=cc(t),n=new Date(e),a=r.year!==void 0||r.month!==void 0||r.date!==void 0?Qg(n,r,o):n;for(let l in r){let u=Tl(l);a[`set${u}`](a[`get${u}`]()+o*r[l])}return a}function cc(e){let t={...e};return e.years!==void 0&&(t.year=e.years,delete t.years),e.months!==void 0&&(t.month=e.months,delete t.months),e.days!==void 0&&(t.date=e.days,delete t.days),e.day!==void 0&&(t.date=e.day,delete t.day),e.hour!==void 0&&(t.hours=e.hour,delete t.hour),e.minute!==void 0&&(t.minutes=e.minute,delete t.minute),e.second!==void 0&&(t.seconds=e.second,delete t.second),e.millisecond!==void 0&&(t.milliseconds=e.millisecond,delete t.millisecond),t}function dc(e,t,o){let r=cc(t),n=o===!0?"UTC":"",a=new Date(e),l=r.year!==void 0||r.month!==void 0||r.date!==void 0?jg(a,r,n):a;for(let u in r){let c=u.charAt(0).toUpperCase()+u.slice(1);l[`set${n}${c}`](r[u])}return l}function Ug(e,t,o){let r=vn(e,t,o),n=new Date(r.year,r.month===null?null:r.month-1,r.day===null?1:r.day,r.hour,r.minute,r.second,r.millisecond),a=n.getTimezoneOffset();return r.timezoneOffset===null||r.timezoneOffset===a?n:eu(n,{minutes:r.timezoneOffset-a},1)}function vn(e,t,o,r,n){let a={year:null,month:null,day:null,hour:null,minute:null,second:null,millisecond:null,timezoneOffset:null,dateHash:null,timeHash:null};if(n!==void 0&&Object.assign(a,n),e==null||e===""||typeof e!="string")return a;t===void 0&&(t=uc);let l=sc(o,Yo.props),u=l.months,c=l.monthsShort,{regex:f,map:d}=Ng(t,l),p=e.match(f);if(p===null)return a;let g="";if(d.X!==void 0||d.x!==void 0){let m=parseInt(p[d.X!==void 0?d.X:d.x],10);if(isNaN(m)===!0||m<0)return a;let v=new Date(m*(d.X!==void 0?1e3:1));a.year=v.getFullYear(),a.month=v.getMonth()+1,a.day=v.getDate(),a.hour=v.getHours(),a.minute=v.getMinutes(),a.second=v.getSeconds(),a.millisecond=v.getMilliseconds()}else{if(d.YYYY!==void 0)a.year=parseInt(p[d.YYYY],10);else if(d.YY!==void 0){let m=parseInt(p[d.YY],10);a.year=m<0?m:2e3+m}if(d.M!==void 0){if(a.month=parseInt(p[d.M],10),a.month<1||a.month>12)return a}else d.MMM!==void 0?a.month=c.indexOf(p[d.MMM])+1:d.MMMM!==void 0&&(a.month=u.indexOf(p[d.MMMM])+1);if(d.D!==void 0){if(a.day=parseInt(p[d.D],10),a.year===null||a.month===null||a.day<1)return a;let m=r!=="persian"?new Date(a.year,a.month,0).getDate():Pr(a.year,a.month);if(a.day>m)return a}d.H!==void 0?a.hour=parseInt(p[d.H],10)%24:d.h!==void 0&&(a.hour=parseInt(p[d.h],10)%12,(d.A&&p[d.A]==="PM"||d.a&&p[d.a]==="pm"||d.aa&&p[d.aa]==="p.m.")&&(a.hour+=12),a.hour=a.hour%24),d.m!==void 0&&(a.minute=parseInt(p[d.m],10)%60),d.s!==void 0&&(a.second=parseInt(p[d.s],10)%60),d.S!==void 0&&(a.millisecond=parseInt(p[d.S],10)*10**(3-p[d.S].length)),(d.Z!==void 0||d.ZZ!==void 0)&&(g=d.Z!==void 0?p[d.Z].replace(":",""):p[d.ZZ],a.timezoneOffset=(g[0]==="+"?-1:1)*(60*g.slice(1,3)+1*g.slice(3,5)))}return a.dateHash=rt(a.year,4)+"/"+rt(a.month)+"/"+rt(a.day),a.timeHash=rt(a.hour)+":"+rt(a.minute)+":"+rt(a.second)+g,a}function Kg(e){return typeof e=="number"?!0:isNaN(Date.parse(e))===!1}function Wg(e,t){return dc(new Date,e,t)}function Yg(e){let t=new Date(e).getDay();return t===0?7:t}function Si(e){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate());t.setDate(t.getDate()-(t.getDay()+6)%7+3);let o=new Date(t.getFullYear(),0,4);o.setDate(o.getDate()-(o.getDay()+6)%7+3);let r=t.getTimezoneOffset()-o.getTimezoneOffset();t.setHours(t.getHours()-r);let n=(t-o)/(lc*7);return 1+Math.floor(n)}function Xg(e){return e.getFullYear()*1e4+e.getMonth()*100+e.getDate()}function Zl(e,t){let o=new Date(e);return t===!0?Xg(o):o.getTime()}function Gg(e,t,o,r={}){let n=Zl(t,r.onlyDate),a=Zl(o,r.onlyDate),l=Zl(e,r.onlyDate);return(l>n||r.inclusiveFrom===!0&&l===n)&&(l{t=Math.max(t,new Date(o))}),t}function oh(e){let t=new Date(e);return Array.prototype.slice.call(arguments,1).forEach(o=>{t=Math.min(t,new Date(o))}),t}function yi(e,t,o){return(e.getTime()-e.getTimezoneOffset()*Jl-(t.getTime()-t.getTimezoneOffset()*Jl))/o}function _i(e,t,o="days"){let r=new Date(e),n=new Date(t);switch(o){case"years":case"year":return r.getFullYear()-n.getFullYear();case"months":case"month":return(r.getFullYear()-n.getFullYear())*12+r.getMonth()-n.getMonth();case"days":case"day":case"date":return yi(Io(r,"day"),Io(n,"day"),lc);case"hours":case"hour":return yi(Io(r,"hour"),Io(n,"hour"),zg);case"minutes":case"minute":return yi(Io(r,"minute"),Io(n,"minute"),Jl);case"seconds":case"second":return yi(Io(r,"second"),Io(n,"second"),1e3)}}function xi(e){return _i(e,Io(e,"year"),"days")+1}function nh(e){return Go(e)===!0?"date":typeof e=="number"?"number":"string"}function rh(e,t,o){let r=new Date(e);if(t){let n=new Date(t);if(rn)return n}return r}function ah(e,t,o){let r=new Date(e),n=new Date(t);if(o===void 0)return r.getTime()===n.getTime();switch(o){case"second":case"seconds":if(r.getSeconds()!==n.getSeconds())return!1;case"minute":case"minutes":if(r.getMinutes()!==n.getMinutes())return!1;case"hour":case"hours":if(r.getHours()!==n.getHours())return!1;case"day":case"days":case"date":if(r.getDate()!==n.getDate())return!1;case"month":case"months":if(r.getMonth()!==n.getMonth())return!1;case"year":case"years":if(r.getFullYear()!==n.getFullYear())return!1;break;default:throw new Error(`date isSameDate unknown unit ${o}`)}return!0}function tu(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function $r(e){if(e>=11&&e<=13)return`${e}th`;switch(e%10){case 1:return`${e}st`;case 2:return`${e}nd`;case 3:return`${e}rd`}return`${e}th`}var ic={YY(e,t,o){let r=this.YYYY(e,t,o)%100;return r>=0?rt(r):"-"+rt(Math.abs(r))},YYYY(e,t,o){return o??e.getFullYear()},M(e){return e.getMonth()+1},Mo(e){return $r(e.getMonth()+1)},MM(e){return rt(e.getMonth()+1)},MMM(e,t){return t.monthsShort[e.getMonth()]},MMMM(e,t){return t.months[e.getMonth()]},Q(e){return Math.ceil((e.getMonth()+1)/3)},Qo(e){return $r(this.Q(e))},D(e){return e.getDate()},Do(e){return $r(e.getDate())},DD(e){return rt(e.getDate())},DDD(e){return xi(e)},DDDo(e){return $r(xi(e))},DDDD(e){return rt(xi(e),3)},d(e){return e.getDay()},do(e){return $r(e.getDay())},dd(e,t){return t.days[e.getDay()].slice(0,2)},ddd(e,t){return t.daysShort[e.getDay()]},dddd(e,t){return t.days[e.getDay()]},E(e){return e.getDay()||7},w(e){return Si(e)},wo(e){return $r(Si(e))},ww(e){return rt(Si(e))},H(e){return e.getHours()},HH(e){return rt(e.getHours())},h(e){let t=e.getHours();return t===0?12:t>12?t%12:t},hh(e){return rt(this.h(e))},m(e){return e.getMinutes()},mm(e){return rt(e.getMinutes())},s(e){return e.getSeconds()},ss(e){return rt(e.getSeconds())},S(e){return Math.floor(e.getMilliseconds()/100)},SS(e){return rt(Math.floor(e.getMilliseconds()/10))},SSS(e){return rt(e.getMilliseconds(),3)},A(e){return e.getHours()<12?"AM":"PM"},a(e){return e.getHours()<12?"am":"pm"},aa(e){return e.getHours()<12?"a.m.":"p.m."},Z(e,t,o,r){let n=r??e.getTimezoneOffset();return ac(n,":")},ZZ(e,t,o,r){let n=r??e.getTimezoneOffset();return ac(n)},X(e){return Math.floor(e.getTime()/1e3)},x(e){return e.getTime()}};function la(e,t,o,r,n){if(e!==0&&!e||e===1/0||e===-1/0)return;let a=new Date(e);if(isNaN(a))return;t===void 0&&(t=uc);let l=sc(o,Yo.props);return t.replace(Ig,(u,c)=>u in ic?ic[u](a,l,r,n):c===void 0?u:c.split("\\]").join("]"))}function ih(e){return Go(e)===!0?new Date(e.getTime()):e}var fc={isValid:Kg,extractDate:Ug,buildDate:Wg,getDayOfWeek:Yg,getWeekOfYear:Si,isBetweenDates:Gg,addToDate:Zg,subtractFromDate:Jg,adjustDate:dc,startOfDate:Io,endOfDate:eh,getMaxDate:th,getMinDate:oh,getDateDiff:_i,getDayOfYear:xi,inferDateFormat:nh,getDateBetween:rh,isSameDate:ah,daysInMonth:tu,formatDate:la,clone:ih};var en=20,lh=["Calendar","Years","Months"],mc=e=>lh.includes(e),ou=e=>/^-?[\d]+\/[0-1]\d$/.test(e),Er=" \u2014 ";function gn(e){return e.year+"/"+rt(e.month)}var vc=P({name:"QDate",props:{...Ar,...kt,...Se,modelValue:{required:!0,validator:e=>typeof e=="string"||Array.isArray(e)===!0||Object(e)===e||e===null},multiple:Boolean,range:Boolean,title:String,subtitle:String,mask:{...Ar.mask,default:"YYYY/MM/DD"},defaultYearMonth:{type:String,validator:ou},yearsInMonthView:Boolean,events:[Array,Function],eventColor:[String,Function],emitImmediately:Boolean,options:[Array,Function],navigationMinYearMonth:{type:String,validator:ou},navigationMaxYearMonth:{type:String,validator:ou},noUnset:Boolean,firstDayOfWeek:[String,Number],todayBtn:Boolean,minimal:Boolean,defaultView:{type:String,default:"Calendar",validator:mc}},emits:[...pi,"rangeStart","rangeEnd","navigation"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,a=xe(e,n),{getCache:l}=xo(),{tabindex:u,headerClass:c,getLocale:f,getCurrentDate:d}=bi(e,n),p,g=Oo(e),m=Zt(g),v=T(null),x=T(dt()),y=T(f()),k=s(()=>dt()),S=s(()=>f()),b=s(()=>d()),h=T(te(x.value,y.value)),_=T(e.defaultView),E=s(()=>n.lang.rtl===!0?"right":"left"),L=T(E.value),D=T(E.value),Z=h.value.year,B=T(Z-Z%en-(Z<0?en:0)),F=T(null),$=s(()=>{let R=e.landscape===!0?"landscape":"portrait";return`q-date q-date--${R} q-date--${R}-${e.minimal===!0?"minimal":"standard"}`+(a.value===!0?" q-date--dark q-dark":"")+(e.bordered===!0?" q-date--bordered":"")+(e.square===!0?" q-date--square no-border-radius":"")+(e.flat===!0?" q-date--flat no-shadow":"")+(e.disable===!0?" disabled":e.readonly===!0?" q-date--readonly":"")}),q=s(()=>e.color||"primary"),C=s(()=>e.textColor||"white"),A=s(()=>e.emitImmediately===!0&&e.multiple!==!0&&e.range!==!0),z=s(()=>Array.isArray(e.modelValue)===!0?e.modelValue:e.modelValue!==null&&e.modelValue!==void 0?[e.modelValue]:[]),H=s(()=>z.value.filter(R=>typeof R=="string").map(R=>lt(R,x.value,y.value)).filter(R=>R.dateHash!==null&&R.day!==null&&R.month!==null&&R.year!==null)),Q=s(()=>{let R=I=>lt(I,x.value,y.value);return z.value.filter(I=>ct(I)===!0&&I.from!==void 0&&I.to!==void 0).map(I=>({from:R(I.from),to:R(I.to)})).filter(I=>I.from.dateHash!==null&&I.to.dateHash!==null&&I.from.dateHashe.calendar!=="persian"?R=>new Date(R.year,R.month-1,R.day):R=>{let I=Yl(R.year,R.month,R.day);return new Date(I.gy,I.gm-1,I.gd)}),ve=s(()=>e.calendar==="persian"?Co:(R,I,ne)=>la(new Date(R.year,R.month-1,R.day,R.hour,R.minute,R.second,R.millisecond),I===void 0?x.value:I,ne===void 0?y.value:ne,R.year,R.timezoneOffset)),O=s(()=>H.value.length+Q.value.reduce((R,I)=>R+1+_i(ee.value(I.to),ee.value(I.from)),0)),w=s(()=>{if(e.title!==void 0&&e.title!==null&&e.title.length!==0)return e.title;if(F.value!==null){let ne=F.value.init,pe=ee.value(ne);return y.value.daysShort[pe.getDay()]+", "+y.value.monthsShort[ne.month-1]+" "+ne.day+Er+"?"}if(O.value===0)return Er;if(O.value>1)return`${O.value} ${y.value.pluralDay}`;let R=H.value[0],I=ee.value(R);return isNaN(I.valueOf())===!0?Er:y.value.headerTitle!==void 0?y.value.headerTitle(I,R):y.value.daysShort[I.getDay()]+", "+y.value.monthsShort[R.month-1]+" "+R.day}),W=s(()=>H.value.concat(Q.value.map(I=>I.from)).sort((I,ne)=>I.year-ne.year||I.month-ne.month)[0]),U=s(()=>H.value.concat(Q.value.map(I=>I.to)).sort((I,ne)=>ne.year-I.year||ne.month-I.month)[0]),le=s(()=>{if(e.subtitle!==void 0&&e.subtitle!==null&&e.subtitle.length!==0)return e.subtitle;if(O.value===0)return Er;if(O.value>1){let R=W.value,I=U.value,ne=y.value.monthsShort;return ne[R.month-1]+(R.year!==I.year?" "+R.year+Er+ne[I.month-1]+" ":R.month!==I.month?Er+ne[I.month-1]:"")+" "+I.year}return H.value[0].year}),M=s(()=>{let R=[n.iconSet.datetime.arrowLeft,n.iconSet.datetime.arrowRight];return n.lang.rtl===!0?R.reverse():R}),V=s(()=>e.firstDayOfWeek!==void 0?Number(e.firstDayOfWeek):y.value.firstDayOfWeek),ae=s(()=>{let R=y.value.daysShort,I=V.value;return I>0?R.slice(I,7).concat(R.slice(0,I)):R}),j=s(()=>{let R=h.value;return e.calendar!=="persian"?new Date(R.year,R.month,0).getDate():Pr(R.year,R.month)}),fe=s(()=>typeof e.eventColor=="function"?e.eventColor:()=>e.eventColor),ke=s(()=>{if(e.navigationMinYearMonth===void 0)return null;let R=e.navigationMinYearMonth.split("/");return{year:parseInt(R[0],10),month:parseInt(R[1],10)}}),X=s(()=>{if(e.navigationMaxYearMonth===void 0)return null;let R=e.navigationMaxYearMonth.split("/");return{year:parseInt(R[0],10),month:parseInt(R[1],10)}}),ce=s(()=>{let R={month:{prev:!0,next:!0},year:{prev:!0,next:!0}};return ke.value!==null&&ke.value.year>=h.value.year&&(R.year.prev=!1,ke.value.year===h.value.year&&ke.value.month>=h.value.month&&(R.month.prev=!1)),X.value!==null&&X.value.year<=h.value.year&&(R.year.next=!1,X.value.year===h.value.year&&X.value.month<=h.value.month&&(R.month.next=!1)),R}),ge=s(()=>{let R={};return H.value.forEach(I=>{let ne=gn(I);R[ne]===void 0&&(R[ne]=[]),R[ne].push(I.day)}),R}),Ce=s(()=>{let R={};return Q.value.forEach(I=>{let ne=gn(I.from),pe=gn(I.to);if(R[ne]===void 0&&(R[ne]=[]),R[ne].push({from:I.from.day,to:ne===pe?I.to.day:void 0,range:I}),ne12&&(Ne.year++,Ne.month=1)}}),R}),Fe=s(()=>{if(F.value===null)return;let{init:R,initHash:I,final:ne,finalHash:pe}=F.value,[ye,ot]=I<=pe?[R,ne]:[ne,R],Me=gn(ye),Ne=gn(ot);if(Me!==de.value&&Ne!==de.value)return;let ut={};return Me===de.value?(ut.from=ye.day,ut.includeFrom=!0):ut.from=1,Ne===de.value?(ut.to=ot.day,ut.includeTo=!0):ut.to=j.value,ut}),de=s(()=>gn(h.value)),Le=s(()=>{let R={};if(e.options===void 0){for(let ne=1;ne<=j.value;ne++)R[ne]=!0;return R}let I=typeof e.options=="function"?e.options:ne=>e.options.includes(ne);for(let ne=1;ne<=j.value;ne++){let pe=de.value+"/"+rt(ne);R[ne]=I(pe)}return R}),ze=s(()=>{let R={};if(e.events===void 0)for(let I=1;I<=j.value;I++)R[I]=!1;else{let I=typeof e.events=="function"?e.events:ne=>e.events.includes(ne);for(let ne=1;ne<=j.value;ne++){let pe=de.value+"/"+rt(ne);R[ne]=I(pe)===!0&&fe.value(pe)}}return R}),Ie=s(()=>{let R,I,{year:ne,month:pe}=h.value;if(e.calendar!=="persian")R=new Date(ne,pe-1,1),I=new Date(ne,pe-1,0).getDate();else{let ye=Yl(ne,pe,1);R=new Date(ye.gy,ye.gm-1,ye.gd);let ot=pe-1,Me=ne;ot===0&&(ot=12,Me--),I=Pr(Me,ot)}return{days:R.getDay()-V.value-1,endDay:I}}),nt=s(()=>{let R=[],{days:I,endDay:ne}=Ie.value,pe=I<0?I+7:I;if(pe<6)for(let Me=ne-pe;Me<=ne;Me++)R.push({i:Me,fill:!0});let ye=R.length;for(let Me=1;Me<=j.value;Me++){let Ne={i:Me,event:ze.value[Me],classes:[]};Le.value[Me]===!0&&(Ne.in=!0,Ne.flat=!0),R.push(Ne)}if(ge.value[de.value]!==void 0&&ge.value[de.value].forEach(Me=>{let Ne=ye+Me-1;Object.assign(R[Ne],{selected:!0,unelevated:!0,flat:!1,color:q.value,textColor:C.value})}),Ce.value[de.value]!==void 0&&Ce.value[de.value].forEach(Me=>{if(Me.from!==void 0){let Ne=ye+Me.from-1,ut=ye+(Me.to||j.value)-1;for(let co=Ne;co<=ut;co++)Object.assign(R[co],{range:Me.range,unelevated:!0,color:q.value,textColor:C.value});Object.assign(R[Ne],{rangeFrom:!0,flat:!1}),Me.to!==void 0&&Object.assign(R[ut],{rangeTo:!0,flat:!1})}else if(Me.to!==void 0){let Ne=ye+Me.to-1;for(let ut=ye;ut<=Ne;ut++)Object.assign(R[ut],{range:Me.range,unelevated:!0,color:q.value,textColor:C.value});Object.assign(R[Ne],{flat:!1,rangeTo:!0})}else{let Ne=ye+j.value-1;for(let ut=ye;ut<=Ne;ut++)Object.assign(R[ut],{range:Me.range,unelevated:!0,color:q.value,textColor:C.value})}}),Fe.value!==void 0){let Me=ye+Fe.value.from-1,Ne=ye+Fe.value.to-1;for(let ut=Me;ut<=Ne;ut++)R[ut].color=q.value,R[ut].editRange=!0;Fe.value.includeFrom===!0&&(R[Me].editRangeFrom=!0),Fe.value.includeTo===!0&&(R[Ne].editRangeTo=!0)}h.value.year===b.value.year&&h.value.month===b.value.month&&(R[ye+b.value.day-1].today=!0);let ot=R.length%7;if(ot>0){let Me=7-ot;for(let Ne=1;Ne<=Me;Ne++)R.push({i:Ne,fill:!0})}return R.forEach(Me=>{let Ne="q-date__calendar-item ";Me.fill===!0?Ne+="q-date__calendar-item--fill":(Ne+=`q-date__calendar-item--${Me.in===!0?"in":"out"}`,Me.range!==void 0&&(Ne+=` q-date__range${Me.rangeTo===!0?"-to":Me.rangeFrom===!0?"-from":""}`),Me.editRange===!0&&(Ne+=` q-date__edit-range${Me.editRangeFrom===!0?"-from":""}${Me.editRangeTo===!0?"-to":""}`),(Me.range!==void 0||Me.editRange===!0)&&(Ne+=` text-${Me.color}`)),Me.classes=Ne}),R}),ie=s(()=>e.disable===!0?{"aria-disabled":"true"}:{});Y(()=>e.modelValue,R=>{if(p===JSON.stringify(R))p=0;else{let I=te(x.value,y.value);mt(I.year,I.month,I)}}),Y(_,()=>{v.value!==null&&r.$el.contains(document.activeElement)===!0&&v.value.focus()}),Y(()=>h.value.year+"|"+h.value.month,()=>{o("navigation",{year:h.value.year,month:h.value.month})}),Y(k,R=>{he(R,y.value,"mask"),x.value=R}),Y(S,R=>{he(x.value,R,"locale"),y.value=R});function G(R){p=JSON.stringify(R)}function me(){let{year:R,month:I,day:ne}=b.value,pe={...h.value,year:R,month:I,day:ne},ye=ge.value[gn(pe)];(ye===void 0||ye.includes(pe.day)===!1)&&jo(pe),Oe(pe.year,pe.month)}function De(R){mc(R)===!0&&(_.value=R)}function Ue(R,I){["month","year"].includes(R)&&(R==="month"?J:ue)(I===!0?-1:1)}function Oe(R,I){_.value="Calendar",mt(R,I)}function He(R,I){if(e.range===!1||!R){F.value=null;return}let ne=Object.assign({...h.value},R),pe=I!==void 0?Object.assign({...h.value},I):ne;F.value={init:ne,initHash:Co(ne),final:pe,finalHash:Co(pe)},Oe(ne.year,ne.month)}function dt(){return e.calendar==="persian"?"YYYY/MM/DD":e.mask}function lt(R,I,ne){return vn(R,I,ne,e.calendar,{hour:0,minute:0,second:0,millisecond:0})}function te(R,I){let ne=Array.isArray(e.modelValue)===!0?e.modelValue:e.modelValue?[e.modelValue]:[];if(ne.length===0)return se();let pe=ne[ne.length-1],ye=lt(pe.from!==void 0?pe.from:pe,R,I);return ye.dateHash===null?se():ye}function se(){let R,I;if(e.defaultYearMonth!==void 0){let ne=e.defaultYearMonth.split("/");R=parseInt(ne[0],10),I=parseInt(ne[1],10)}else{let ne=b.value!==void 0?b.value:d();R=ne.year,I=ne.month}return{year:R,month:I,day:1,hour:0,minute:0,second:0,millisecond:0,dateHash:R+"/"+rt(I)+"/01"}}function J(R){let I=h.value.year,ne=Number(h.value.month)+R;ne===13?(ne=1,I++):ne===0&&(ne=12,I--),mt(I,ne),A.value===!0&&jt("month")}function ue(R){let I=Number(h.value.year)+R;mt(I,h.value.month),A.value===!0&&jt("year")}function we(R){mt(R,h.value.month),_.value=e.defaultView==="Years"?"Months":"Calendar",A.value===!0&&jt("year")}function Ke(R){mt(h.value.year,R),_.value="Calendar",A.value===!0&&jt("month")}function Pe(R,I){(ge.value[I]?.includes(R.day)===!0?oe:jo)(R)}function Je(R){return{year:R.year,month:R.month,day:R.day}}function mt(R,I,ne){if(ke.value!==null&&R<=ke.value.year&&((I=X.value.year&&((I>X.value.month||R>X.value.year)&&(I=X.value.month),R=X.value.year),ne!==void 0){let{hour:ye,minute:ot,second:Me,millisecond:Ne,timezoneOffset:ut,timeHash:co}=ne;Object.assign(h.value,{hour:ye,minute:ot,second:Me,millisecond:Ne,timezoneOffset:ut,timeHash:co})}let pe=R+"/"+rt(I)+"/01";pe!==h.value.dateHash&&(L.value=h.value.dateHash{B.value=R-R%en-(R<0?en:0),Object.assign(h.value,{year:R,month:I,day:1,dateHash:pe})}))}function qt(R,I,ne){let pe=R!==null&&R.length===1&&e.multiple===!1?R[0]:R,{reason:ye,details:ot}=nn(I,ne);G(pe),o("update:modelValue",pe,ye,ot)}function jt(R){let I=H.value[0]!==void 0&&H.value[0].dateHash!==null?{...H.value[0]}:{...h.value};Be(()=>{I.year=h.value.year,I.month=h.value.month;let ne=e.calendar!=="persian"?new Date(I.year,I.month,0).getDate():Pr(I.year,I.month);I.day=Math.min(Math.max(1,I.day),ne);let pe=ao(I),{details:ye}=nn("",I);G(pe),o("update:modelValue",pe,R,ye)})}function nn(R,I){return I.from!==void 0?{reason:`${R}-range`,details:{...Je(I.target),from:Je(I.from),to:Je(I.to)}}:{reason:`${R}-day`,details:Je(I)}}function ao(R,I,ne){return R.from!==void 0?{from:ve.value(R.from,I,ne),to:ve.value(R.to,I,ne)}:ve.value(R,I,ne)}function jo(R){let I;if(e.multiple===!0)if(R.from!==void 0){let ne=Co(R.from),pe=Co(R.to),ye=H.value.filter(Me=>Me.dateHashpe),ot=Q.value.filter(({from:Me,to:Ne})=>Ne.dateHashpe);I=ye.concat(ot).concat(R).map(Me=>ao(Me))}else{let ne=z.value.slice();ne.push(ao(R)),I=ne}else I=ao(R);qt(I,"add",R)}function oe(R){if(e.noUnset===!0)return;let I=null;if(e.multiple===!0&&Array.isArray(e.modelValue)===!0){let ne=ao(R);R.from!==void 0?I=e.modelValue.filter(pe=>pe.from!==void 0?pe.from!==ne.from&&pe.to!==ne.to:!0):I=e.modelValue.filter(pe=>pe!==ne),I.length===0&&(I=null)}qt(I,"remove",R)}function he(R,I,ne){let pe=H.value.concat(Q.value).map(ot=>ao(ot,R,I)).filter(ot=>ot.from!==void 0?ot.from.dateHash!==null&&ot.to.dateHash!==null:ot.dateHash!==null),ye=(e.multiple===!0?pe:pe[0])||null;G(ye),o("update:modelValue",ye,ne)}function Ee(){if(e.minimal!==!0)return i("div",{class:"q-date__header "+c.value},[i("div",{class:"relative-position"},[i(st,{name:"q-transition--fade"},()=>i("div",{key:"h-yr-"+le.value,class:"q-date__header-subtitle q-date__header-link "+(_.value==="Years"?"q-date__header-link--active":"cursor-pointer"),tabindex:u.value,...l("vY",{onClick(){_.value="Years"},onKeyup(R){R.keyCode===13&&(_.value="Years")}})},[le.value]))]),i("div",{class:"q-date__header-title relative-position flex no-wrap"},[i("div",{class:"relative-position col"},[i(st,{name:"q-transition--fade"},()=>i("div",{key:"h-sub"+w.value,class:"q-date__header-title-label q-date__header-link "+(_.value==="Calendar"?"q-date__header-link--active":"cursor-pointer"),tabindex:u.value,...l("vC",{onClick(){_.value="Calendar"},onKeyup(R){R.keyCode===13&&(_.value="Calendar")}})},[w.value]))]),e.todayBtn===!0?i(Ve,{class:"q-date__header-today self-start",icon:n.iconSet.datetime.today,"aria-label":n.lang.date.today,flat:!0,size:"sm",round:!0,tabindex:u.value,onClick:me}):null])])}function $e({label:R,type:I,key:ne,dir:pe,goTo:ye,boundaries:ot,cls:Me}){return[i("div",{class:"row items-center q-date__arrow"},[i(Ve,{round:!0,dense:!0,size:"sm",flat:!0,icon:M.value[0],"aria-label":I==="Years"?n.lang.date.prevYear:n.lang.date.prevMonth,tabindex:u.value,disable:ot.prev===!1,...l("go-#"+I,{onClick(){ye(-1)}})})]),i("div",{class:"relative-position overflow-hidden flex flex-center"+Me},[i(st,{name:"q-transition--jump-"+pe},()=>i("div",{key:ne},[i(Ve,{flat:!0,dense:!0,noCaps:!0,label:R,tabindex:u.value,...l("view#"+I,{onClick:()=>{_.value=I}})})]))]),i("div",{class:"row items-center q-date__arrow"},[i(Ve,{round:!0,dense:!0,size:"sm",flat:!0,icon:M.value[1],"aria-label":I==="Years"?n.lang.date.nextYear:n.lang.date.nextMonth,tabindex:u.value,disable:ot.next===!1,...l("go+#"+I,{onClick(){ye(1)}})})])]}let Xe={Calendar:()=>[i("div",{key:"calendar-view",class:"q-date__view q-date__calendar"},[i("div",{class:"q-date__navigation row items-center no-wrap"},$e({label:y.value.months[h.value.month-1],type:"Months",key:h.value.month,dir:L.value,goTo:J,boundaries:ce.value.month,cls:" col"}).concat($e({label:h.value.year,type:"Years",key:h.value.year,dir:D.value,goTo:ue,boundaries:ce.value.year,cls:""}))),i("div",{class:"q-date__calendar-weekdays row items-center no-wrap"},ae.value.map(R=>i("div",{class:"q-date__calendar-item"},[i("div",R)]))),i("div",{class:"q-date__calendar-days-container relative-position overflow-hidden"},[i(st,{name:"q-transition--slide-"+L.value},()=>i("div",{key:de.value,class:"q-date__calendar-days fit"},nt.value.map(R=>i("div",{class:R.classes},[R.in===!0?i(Ve,{class:R.today===!0?"q-date__today":"",dense:!0,flat:R.flat,unelevated:R.unelevated,color:R.color,textColor:R.textColor,label:R.i,tabindex:u.value,...l("day#"+R.i,{onClick:()=>{St(R.i)},onMouseover:()=>{bt(R.i)}})},R.event!==!1?()=>i("div",{class:"q-date__event bg-"+R.event}):null):i("div",""+R.i)]))))])])],Months(){let R=h.value.year===b.value.year,I=pe=>ke.value!==null&&h.value.year===ke.value.year&&ke.value.month>pe||X.value!==null&&h.value.year===X.value.year&&X.value.month{let ot=h.value.month===ye+1;return i("div",{class:"q-date__months-item flex flex-center"},[i(Ve,{class:R===!0&&b.value.month===ye+1?"q-date__today":null,flat:ot!==!0,label:pe,unelevated:ot,color:ot===!0?q.value:null,textColor:ot===!0?C.value:null,tabindex:u.value,disable:I(ye+1),...l("month#"+ye,{onClick:()=>{Ke(ye+1)}})})])});return e.yearsInMonthView===!0&&ne.unshift(i("div",{class:"row no-wrap full-width"},[$e({label:h.value.year,type:"Years",key:h.value.year,dir:D.value,goTo:ue,boundaries:ce.value.year,cls:" col"})])),i("div",{key:"months-view",class:"q-date__view q-date__months flex flex-center"},ne)},Years(){let R=B.value,I=R+en,ne=[],pe=ye=>ke.value!==null&&ke.value.year>ye||X.value!==null&&X.value.year{we(ye)}})})]))}return i("div",{class:"q-date__view q-date__years flex flex-center"},[i("div",{class:"col-auto"},[i(Ve,{round:!0,dense:!0,flat:!0,icon:M.value[0],"aria-label":n.lang.date.prevRangeYears(en),tabindex:u.value,disable:pe(R),...l("y-",{onClick:()=>{B.value-=en}})})]),i("div",{class:"q-date__years-content col self-stretch row items-center"},ne),i("div",{class:"col-auto"},[i(Ve,{round:!0,dense:!0,flat:!0,icon:M.value[1],"aria-label":n.lang.date.nextRangeYears(en),tabindex:u.value,disable:pe(I),...l("y+",{onClick:()=>{B.value+=en}})})])])}};function St(R){let I={...h.value,day:R};if(e.range===!1){Pe(I,de.value);return}if(F.value===null){let ne=nt.value.find(ye=>ye.fill!==!0&&ye.i===R);if(e.noUnset!==!0&&ne.range!==void 0){oe({target:I,from:ne.range.from,to:ne.range.to});return}if(ne.selected===!0){oe(I);return}let pe=Co(I);F.value={init:I,initHash:pe,final:I,finalHash:pe},o("rangeStart",Je(I))}else{let ne=F.value.initHash,pe=Co(I),ye=ne<=pe?{from:F.value.init,to:I}:{from:I,to:F.value.init};F.value=null,jo(ne===pe?I:{target:I,...ye}),o("rangeEnd",{from:Je(ye.from),to:Je(ye.to)})}}function bt(R){if(F.value!==null){let I={...h.value,day:R};Object.assign(F.value,{final:I,finalHash:Co(I)})}}return Object.assign(r,{setToday:me,setView:De,offsetCalendar:Ue,setCalendarTo:Oe,setEditingRange:He}),()=>{let R=[i("div",{class:"q-date__content col relative-position"},[i(st,{name:"q-transition--fade"},Xe[_.value])])],I=re(t.default);return I!==void 0&&R.push(i("div",{class:"q-date__actions"},I)),e.name!==void 0&&e.disable!==!0&&m(R,"push"),i("div",{class:$.value,...ie.value},[Ee(),i("div",{ref:v,class:"q-date__main col column",tabindex:-1},R)])}}});function Ci(e,t,o){let r;function n(){r!==void 0&&(rn.remove(r),r=void 0)}return be(()=>{e.value===!0&&n()}),{removeFromHistory:n,addToHistory(){r={condition:()=>o.value===!0,handler:t},rn.add(r)}}}var ua=0,nu,ru,sa,au=!1,gc,hc,pc,Fn=null;function uh(e){sh(e)&&_e(e)}function sh(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;let t=xl(e),o=e.shiftKey&&!e.deltaX,r=!o&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),n=o||r?e.deltaY:e.deltaX;for(let a=0;a0&&l.scrollTop+l.clientHeight===l.scrollHeight:n<0&&l.scrollLeft===0?!0:n>0&&l.scrollLeft+l.clientWidth===l.scrollWidth}return!0}function bc(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function wi(e){au!==!0&&(au=!0,requestAnimationFrame(()=>{au=!1;let{height:t}=e.target,{clientHeight:o,scrollTop:r}=document.scrollingElement;(sa===void 0||t!==window.innerHeight)&&(sa=o-t,document.scrollingElement.scrollTop=r),r>sa&&(document.scrollingElement.scrollTop-=Math.ceil((r-sa)/8))}))}function yc(e){let t=document.body,o=window.visualViewport!==void 0;if(e==="add"){let{overflowY:r,overflowX:n}=window.getComputedStyle(t);nu=dn(window),ru=oo(window),gc=t.style.left,hc=t.style.top,pc=window.location.href,t.style.left=`-${nu}px`,t.style.top=`-${ru}px`,n!=="hidden"&&(n==="scroll"||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),r!=="hidden"&&(r==="scroll"||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,Ae.is.ios===!0&&(o===!0?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",wi,et.passiveCapture),window.visualViewport.addEventListener("scroll",wi,et.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",bc,et.passiveCapture))}Ae.is.desktop===!0&&Ae.is.mac===!0&&window[`${e}EventListener`]("wheel",uh,et.notPassive),e==="remove"&&(Ae.is.ios===!0&&(o===!0?(window.visualViewport.removeEventListener("resize",wi,et.passiveCapture),window.visualViewport.removeEventListener("scroll",wi,et.passiveCapture)):window.removeEventListener("scroll",bc,et.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=gc,t.style.top=hc,window.location.href===pc&&window.scrollTo(nu,ru),sa=void 0)}function ca(e){let t="add";if(e===!0){if(ua++,Fn!==null){clearTimeout(Fn),Fn=null;return}if(ua>1)return}else{if(ua===0||(ua--,ua>0))return;if(t="remove",Ae.is.ios===!0&&Ae.is.nativeMobile===!0){Fn!==null&&clearTimeout(Fn),Fn=setTimeout(()=>{yc(t),Fn=null},100);return}}yc(t)}function ki(){let e;return{preventBodyScroll(t){t!==e&&(e!==void 0||t===!0)&&(e=t,ca(t))}}}var qi=0,ch={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},Sc={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]},Ho=P({name:"QDialog",inheritAttrs:!1,props:{...go,...yo,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,backdropFilter:String,position:{type:String,default:"standard",validator:e=>["standard","top","bottom","left","right"].includes(e)}},emits:[...ho,"shake","click","escapeKey"],setup(e,{slots:t,emit:o,attrs:r}){let n=K(),a=T(null),l=T(!1),u=T(!1),c=null,f=null,d,p,g=s(()=>e.persistent!==!0&&e.noRouteDismiss!==!0&&e.seamless!==!0),{preventBodyScroll:m}=ki(),{registerTimeout:v}=Vt(),{registerTick:x,removeTick:y}=So(),{transitionProps:k,transitionStyle:S}=cn(e,()=>Sc[e.position][0],()=>Sc[e.position][1]),b=s(()=>S.value+(e.backdropFilter!==void 0?`;backdrop-filter:${e.backdropFilter};-webkit-backdrop-filter:${e.backdropFilter}`:"")),{showPortal:h,hidePortal:_,portalIsAccessible:E,renderPortal:L}=ir(n,a,le,"dialog"),{hide:D}=po({showing:l,hideOnRouteChange:g,handleShow:A,handleHide:z,processOnMount:!0}),{addToHistory:Z,removeFromHistory:B}=Ci(l,D,g),F=s(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${e.maximized===!0?"maximized":"minimized"} q-dialog__inner--${e.position} ${ch[e.position]}`+(u.value===!0?" q-dialog__inner--animating":"")+(e.fullWidth===!0?" q-dialog__inner--fullwidth":"")+(e.fullHeight===!0?" q-dialog__inner--fullheight":"")+(e.square===!0?" q-dialog__inner--square":"")),$=s(()=>l.value===!0&&e.seamless!==!0),q=s(()=>e.autoClose===!0?{onClick:w}:{}),C=s(()=>[`q-dialog fullscreen no-pointer-events q-dialog--${$.value===!0?"modal":"seamless"}`,r.class]);Y(()=>e.maximized,M=>{l.value===!0&&O(M)}),Y($,M=>{m(M),M===!0?(cr(U),Ua(ee)):(Pn(U),sr(ee))});function A(M){Z(),f=e.noRefocus===!1&&document.activeElement!==null?document.activeElement:null,O(e.maximized),h(),u.value=!0,e.noFocus!==!0?(document.activeElement?.blur(),x(H)):y(),v(()=>{if(n.proxy.$q.platform.is.ios===!0){if(e.seamless!==!0&&document.activeElement){let{top:V,bottom:ae}=document.activeElement.getBoundingClientRect(),{innerHeight:j}=window,fe=window.visualViewport!==void 0?window.visualViewport.height:j;V>0&&ae>fe/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-fe,ae>=j?1/0:Math.ceil(document.scrollingElement.scrollTop+ae-fe/2))),document.activeElement.scrollIntoView()}p=!0,a.value.click(),p=!1}h(!0),u.value=!1,o("show",M)},e.transitionDuration)}function z(M){y(),B(),ve(!0),u.value=!0,_(),f!==null&&(((M?.type.indexOf("key")===0?f.closest('[tabindex]:not([tabindex^="-"])'):void 0)||f).focus(),f=null),v(()=>{_(!0),u.value=!1,o("hide",M)},e.transitionDuration)}function H(M){bo(()=>{let V=a.value;if(V!==null){if(M!==void 0){let ae=V.querySelector(M);if(ae!==null){ae.focus({preventScroll:!0});return}}V.contains(document.activeElement)!==!0&&(V=V.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||V.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||V.querySelector("[autofocus], [data-autofocus]")||V,V.focus({preventScroll:!0}))}})}function Q(M){M&&typeof M.focus=="function"?M.focus({preventScroll:!0}):H(),o("shake");let V=a.value;V!==null&&(V.classList.remove("q-animate--scale"),V.classList.add("q-animate--scale"),c!==null&&clearTimeout(c),c=setTimeout(()=>{c=null,a.value!==null&&(V.classList.remove("q-animate--scale"),H())},170))}function ee(){e.seamless!==!0&&(e.persistent===!0||e.noEscDismiss===!0?e.maximized!==!0&&e.noShake!==!0&&Q():(o("escapeKey"),D()))}function ve(M){c!==null&&(clearTimeout(c),c=null),(M===!0||l.value===!0)&&(O(!1),e.seamless!==!0&&(m(!1),Pn(U),sr(ee))),M!==!0&&(f=null)}function O(M){M===!0?d!==!0&&(qi<1&&document.body.classList.add("q-body--dialog"),qi++,d=!0):d===!0&&(qi<2&&document.body.classList.remove("q-body--dialog"),qi--,d=!1)}function w(M){p!==!0&&(D(M),o("click",M))}function W(M){e.persistent!==!0&&e.noBackdropDismiss!==!0?D(M):e.noShake!==!0&&Q()}function U(M){e.allowFocusOutside!==!0&&E.value===!0&&Va(a.value,M.target)!==!0&&H('[tabindex]:not([tabindex="-1"])')}Object.assign(n.proxy,{focus:H,shake:Q,__updateRefocusTarget(M){f=M||null}}),be(ve);function le(){return i("div",{role:"dialog","aria-modal":$.value===!0?"true":"false",...r,class:C.value},[i(st,{name:"q-transition--fade",appear:!0},()=>$.value===!0?i("div",{class:"q-dialog__backdrop fixed-full",style:b.value,"aria-hidden":"true",tabindex:-1,onClick:W}):null),i(st,k.value,()=>l.value===!0?i("div",{ref:a,class:F.value,style:S.value,tabindex:-1,...q.value},re(t.default)):null)])}return L}});var xc=150,_c=P({name:"QDrawer",inheritAttrs:!1,props:{...go,...Se,side:{type:String,default:"left",validator:e=>["left","right"].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>["default","desktop","mobile"].includes(e),default:"default"},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...ho,"onLayout","miniState"],setup(e,{slots:t,emit:o,attrs:r}){let n=K(),{proxy:{$q:a}}=n,l=xe(e,a),{preventBodyScroll:u}=ki(),{registerTimeout:c,removeTimeout:f}=Vt(),d=pt(eo,Ze);if(d===Ze)return console.error("QDrawer needs to be child of QLayout"),Ze;let p,g=null,m,v=T(e.behavior==="mobile"||e.behavior!=="desktop"&&d.totalWidth.value<=e.breakpoint),x=s(()=>e.mini===!0&&v.value!==!0),y=s(()=>x.value===!0?e.miniWidth:e.width),k=T(e.showIfAbove===!0&&v.value===!1?!0:e.modelValue===!0),S=s(()=>e.persistent!==!0&&(v.value===!0||ve.value===!0));function b(G,me){if(L(),G!==!1&&d.animate(),ce(0),v.value===!0){let De=d.instances[z.value];De?.belowBreakpoint===!0&&De.hide(!1),ge(1),d.isContainer.value!==!0&&u(!0)}else ge(0),G!==!1&&Ce(!1);c(()=>{G!==!1&&Ce(!0),me!==!0&&o("show",G)},xc)}function h(G,me){D(),G!==!1&&d.animate(),ge(0),ce(F.value*y.value),ze(),me!==!0?c(()=>{o("hide",G)},xc):f()}let{show:_,hide:E}=po({showing:k,hideOnRouteChange:S,handleShow:b,handleHide:h}),{addToHistory:L,removeFromHistory:D}=Ci(k,E,S),Z={belowBreakpoint:v,hide:E},B=s(()=>e.side==="right"),F=s(()=>(a.lang.rtl===!0?-1:1)*(B.value===!0?1:-1)),$=T(0),q=T(!1),C=T(!1),A=T(y.value*F.value),z=s(()=>B.value===!0?"left":"right"),H=s(()=>k.value===!0&&v.value===!1&&e.overlay===!1?e.miniToOverlay===!0?e.miniWidth:y.value:0),Q=s(()=>e.overlay===!0||e.miniToOverlay===!0||d.view.value.indexOf(B.value?"R":"L")!==-1||a.platform.is.ios===!0&&d.isContainer.value===!0),ee=s(()=>e.overlay===!1&&k.value===!0&&v.value===!1),ve=s(()=>e.overlay===!0&&k.value===!0&&v.value===!1),O=s(()=>"fullscreen q-drawer__backdrop"+(k.value===!1&&q.value===!1?" hidden":"")),w=s(()=>({backgroundColor:`rgba(0,0,0,${$.value*.4})`})),W=s(()=>B.value===!0?d.rows.value.top[2]==="r":d.rows.value.top[0]==="l"),U=s(()=>B.value===!0?d.rows.value.bottom[2]==="r":d.rows.value.bottom[0]==="l"),le=s(()=>{let G={};return d.header.space===!0&&W.value===!1&&(Q.value===!0?G.top=`${d.header.offset}px`:d.header.space===!0&&(G.top=`${d.header.size}px`)),d.footer.space===!0&&U.value===!1&&(Q.value===!0?G.bottom=`${d.footer.offset}px`:d.footer.space===!0&&(G.bottom=`${d.footer.size}px`)),G}),M=s(()=>{let G={width:`${y.value}px`,transform:`translateX(${A.value}px)`};return v.value===!0?G:Object.assign(G,le.value)}),V=s(()=>"q-drawer__content fit "+(d.isContainer.value!==!0?"scroll":"overflow-auto")),ae=s(()=>`q-drawer q-drawer--${e.side}`+(C.value===!0?" q-drawer--mini-animate":"")+(e.bordered===!0?" q-drawer--bordered":"")+(l.value===!0?" q-drawer--dark q-dark":"")+(q.value===!0?" no-transition":k.value===!0?"":" q-layout--prevent-focus")+(v.value===!0?" fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding":` q-drawer--${x.value===!0?"mini":"standard"}`+(Q.value===!0||ee.value!==!0?" fixed":"")+(e.overlay===!0||e.miniToOverlay===!0?" q-drawer--on-top":"")+(W.value===!0?" q-drawer--top-padding":""))),j=s(()=>{let G=a.lang.rtl===!0?e.side:z.value;return[[Pt,de,void 0,{[G]:!0,mouse:!0}]]}),fe=s(()=>{let G=a.lang.rtl===!0?z.value:e.side;return[[Pt,Le,void 0,{[G]:!0,mouse:!0}]]}),ke=s(()=>{let G=a.lang.rtl===!0?z.value:e.side;return[[Pt,Le,void 0,{[G]:!0,mouse:!0,mouseAllDir:!0}]]});function X(){nt(v,e.behavior==="mobile"||e.behavior!=="desktop"&&d.totalWidth.value<=e.breakpoint)}Y(v,G=>{G===!0?(p=k.value,k.value===!0&&E(!1)):e.overlay===!1&&e.behavior!=="mobile"&&p!==!1&&(k.value===!0?(ce(0),ge(0),ze()):_(!1))}),Y(()=>e.side,(G,me)=>{d.instances[me]===Z&&(d.instances[me]=void 0,d[me].space=!1,d[me].offset=0),d.instances[G]=Z,d[G].size=y.value,d[G].space=ee.value,d[G].offset=H.value}),Y(d.totalWidth,()=>{(d.isContainer.value===!0||document.qScrollPrevented!==!0)&&X()}),Y(()=>e.behavior+e.breakpoint,X),Y(d.isContainer,G=>{k.value===!0&&u(G!==!0),G===!0&&X()}),Y(d.scrollbarWidth,()=>{ce(k.value===!0?0:void 0)}),Y(H,G=>{Ie("offset",G)}),Y(ee,G=>{o("onLayout",G),Ie("space",G)}),Y(B,()=>{ce()}),Y(y,G=>{ce(),ie(e.miniToOverlay,G)}),Y(()=>e.miniToOverlay,G=>{ie(G,y.value)}),Y(()=>a.lang.rtl,()=>{ce()}),Y(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue===!0&&(Fe(),d.animate())}),Y(x,G=>{o("miniState",G)});function ce(G){G===void 0?Be(()=>{G=k.value===!0?0:y.value,ce(F.value*G)}):(d.isContainer.value===!0&&B.value===!0&&(v.value===!0||Math.abs(G)===y.value)&&(G+=F.value*d.scrollbarWidth.value),A.value=G)}function ge(G){$.value=G}function Ce(G){let me=G===!0?"remove":d.isContainer.value!==!0?"add":"";me!==""&&document.body.classList[me]("q-body--drawer-toggle")}function Fe(){g!==null&&clearTimeout(g),n.proxy&&n.proxy.$el&&n.proxy.$el.classList.add("q-drawer--mini-animate"),C.value=!0,g=setTimeout(()=>{g=null,C.value=!1,n?.proxy?.$el?.classList.remove("q-drawer--mini-animate")},150)}function de(G){if(k.value!==!1)return;let me=y.value,De=tt(G.distance.x,0,me);if(G.isFinal===!0){De>=Math.min(75,me)===!0?_():(d.animate(),ge(0),ce(F.value*me)),q.value=!1;return}ce((a.lang.rtl===!0?B.value!==!0:B.value)?Math.max(me-De,0):Math.min(0,De-me)),ge(tt(De/me,0,1)),G.isFirst===!0&&(q.value=!0)}function Le(G){if(k.value!==!0)return;let me=y.value,De=G.direction===e.side,Ue=(a.lang.rtl===!0?De!==!0:De)?tt(G.distance.x,0,me):0;if(G.isFinal===!0){Math.abs(Ue){o("onLayout",ee.value),o("miniState",x.value),p=e.showIfAbove===!0;let G=()=>{(k.value===!0?b:h)(!1,!0)};if(d.totalWidth.value!==0){Be(G);return}m=Y(d.totalWidth,()=>{m(),m=void 0,k.value===!1&&e.showIfAbove===!0&&v.value===!1?_(!1):G()})}),be(()=>{m?.(),g!==null&&(clearTimeout(g),g=null),k.value===!0&&ze(),d.instances[e.side]===Z&&(d.instances[e.side]=void 0,Ie("size",0),Ie("offset",0),Ie("space",!1))}),()=>{let G=[];v.value===!0&&(e.noSwipeOpen===!1&&G.push(Bt(i("div",{key:"open",class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":"true"}),j.value)),G.push(Rt("div",{ref:"backdrop",class:O.value,style:w.value,"aria-hidden":"true",onClick:E},void 0,"backdrop",e.noSwipeBackdrop!==!0&&k.value===!0,()=>ke.value)));let me=x.value===!0&&t.mini!==void 0,De=[i("div",{...r,key:""+me,class:[V.value,r.class]},me===!0?t.mini():re(t.default))];return e.elevated===!0&&k.value===!0&&De.push(i("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),G.push(Rt("aside",{ref:"content",class:ae.value,style:M.value},De,"contentclose",e.noSwipeClose!==!0&&v.value===!0,()=>fe.value)),i("div",{class:"q-drawer-container"},G)}}});function Cc(e,t){if(t&&e===t)return null;let o=e.nodeName.toLowerCase();if(["div","li","ul","ol","blockquote"].includes(o)===!0)return e;let r=window.getComputedStyle?window.getComputedStyle(e):e.currentStyle,n=r.display;return n==="block"||n==="table"?e:Cc(e.parentNode)}function iu(e,t,o){return!e||e===document.body?!1:o===!0&&e===t||(t===document?document.body:t).contains(e.parentNode)}function wc(e,t,o){if(o||(o=document.createRange(),o.selectNode(e),o.setStart(e,0)),t.count===0)o.setEnd(e,t.count);else if(t.count>0)if(e.nodeType===Node.TEXT_NODE)e.textContent.length0&&this.savedPos @@ -14,33 +14,33 @@
${this.el.innerHTML}
- `),n.print(),n.close();return}else if(t==="link"){let n=this.getParentAttribute("href");if(n===null){let i=this.selectWord(this.selection),a=i?i.toString():"";if(!a.length&&(!this.range||!this.range.cloneContents().querySelector("img")))return;this.eVm.editLinkUrl.value=ch.test(a)?a:"https://",document.execCommand("createLink",!1,this.eVm.editLinkUrl.value),this.save(i.getRangeAt(0))}else this.eVm.editLinkUrl.value=n,this.range.selectNodeContents(this.parent),this.save();return}else if(t==="fullscreen"){this.eVm.toggleFullscreen(),r();return}else if(t==="viewsource"){this.eVm.isViewingSource.value=this.eVm.isViewingSource.value===!1,this.eVm.setContent(this.eVm.props.modelValue),r();return}document.execCommand(t,!1,o),r()}selectWord(t){if(t===null||t.isCollapsed!==!0||t.modify===void 0)return t;let o=document.createRange();o.setStart(t.anchorNode,t.anchorOffset),o.setEnd(t.focusNode,t.focusOffset);let r=o.collapsed?["backward","forward"]:["forward","backward"];o.detach();let n=t.focusNode,i=t.focusOffset;return t.collapse(t.anchorNode,t.anchorOffset),t.modify("move",r[0],"character"),t.modify("move",r[1],"word"),t.extend(n,i),t.modify("extend",r[1],"character"),t.modify("extend",r[0],"word"),t}};var Ma=A({name:"QTooltip",inheritAttrs:!1,props:{...El,...vo,...bo,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...bo.transitionShow,default:"jump-down"},transitionHide:{...bo.transitionHide,default:"jump-up"},anchor:{type:String,default:"bottom middle",validator:mr},self:{type:String,default:"top middle",validator:mr},offset:{type:Array,default:()=>[14,14],validator:Gi},scrollTarget:eo,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...go],setup(e,{slots:t,emit:o,attrs:r}){let n,i,a=K(),{proxy:{$q:u}}=a,c=q(null),f=q(!1),d=s(()=>vr(e.anchor,u.lang.rtl)),h=s(()=>vr(e.self,u.lang.rtl)),g=s(()=>e.persistent!==!0),{registerTick:m,removeTick:v}=yo(),{registerTimeout:x}=Vt(),{transitionProps:y,transitionStyle:k}=un(e),{localScrollTarget:S,changeScrollEvent:b,unconfigureScrollTarget:p}=ji(e,fe),{anchorEl:C,canShow:$,anchorEvents:L}=nr({showing:f,configureAnchorEl:ee}),{show:D,hide:B}=ho({showing:f,canShow:$,handleShow:T,handleHide:_,hideOnRouteChange:g,processOnMount:!0});Object.assign(L,{delayShow:j,delayHide:W});let{showPortal:E,hidePortal:V,renderPortal:M}=ar(a,c,w,"tooltip");if(u.platform.is.mobile===!0){let X={anchorEl:C,innerRef:c,onClickOutside(le){return B(le),le.target.classList.contains("q-dialog__backdrop")&&ke(le),!0}},U=s(()=>e.modelValue===null&&e.persistent!==!0&&f.value===!0);Y(U,le=>{(le===!0?Xi:fr)(X)}),ye(()=>{fr(X)})}function T(X){E(),m(()=>{i=new MutationObserver(()=>I()),i.observe(c.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),I(),fe()}),n===void 0&&(n=Y(()=>u.screen.width+"|"+u.screen.height+"|"+e.self+"|"+e.anchor+"|"+u.lang.rtl,I)),x(()=>{E(!0),o("show",X)},e.transitionDuration)}function _(X){v(),V(),F(),x(()=>{V(!0),o("hide",X)},e.transitionDuration)}function F(){i!==void 0&&(i.disconnect(),i=void 0),n!==void 0&&(n(),n=void 0),p(),qt(L,"tooltipTemp")}function I(){oi({targetEl:c.value,offset:e.offset,anchorEl:C.value,anchorOrigin:d.value,selfOrigin:h.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function j(X){if(u.platform.is.mobile===!0){It(),document.body.classList.add("non-selectable");let U=C.value,le=["touchmove","touchcancel","touchend","click"].map(R=>[U,R,"delayHide","passiveCapture"]);mt(L,"tooltipTemp",le)}x(()=>{D(X)},e.delay)}function W(X){u.platform.is.mobile===!0&&(qt(L,"tooltipTemp"),It(),setTimeout(()=>{document.body.classList.remove("non-selectable")},10)),x(()=>{B(X)},e.hideDelay)}function ee(){if(e.noParentEvent===!0||C.value===null)return;let X=u.platform.is.mobile===!0?[[C.value,"touchstart","delayShow","passive"]]:[[C.value,"mouseenter","delayShow","passive"],[C.value,"mouseleave","delayHide","passive"]];mt(L,"anchor",X)}function fe(){if(C.value!==null||e.scrollTarget!==void 0){S.value=Bt(C.value,e.scrollTarget);let X=e.noParentEvent===!0?I:B;b(S.value,X)}}function H(){return f.value===!0?l("div",{...r,ref:c,class:["q-tooltip q-tooltip--style q-position-engine no-pointer-events",r.class],style:[r.style,k.value],role:"tooltip"},re(t.default)):null}function w(){return l(st,y.value,H)}return ye(F),Object.assign(a.proxy,{updatePosition:I}),M}});var Qo=A({name:"QItem",props:{...Se,...Zo,tag:{type:String,default:"div"},active:{type:Boolean,default:null},clickable:Boolean,dense:Boolean,insetLevel:Number,tabindex:[String,Number],focused:Boolean,manualFocus:Boolean},emits:["click","keyup"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=xe(e,r),{hasLink:i,linkAttrs:a,linkClass:u,linkTag:c,navigateOnClick:f}=rn(),d=q(null),h=q(null),g=s(()=>e.clickable===!0||i.value===!0||e.tag==="label"),m=s(()=>e.disable!==!0&&g.value===!0),v=s(()=>"q-item q-item-type row no-wrap"+(e.dense===!0?" q-item--dense":"")+(n.value===!0?" q-item--dark":"")+(i.value===!0&&e.active===null?u.value:e.active===!0?` q-item--active${e.activeClass!==void 0?` ${e.activeClass}`:""}`:"")+(e.disable===!0?" disabled":"")+(m.value===!0?" q-item--clickable q-link cursor-pointer "+(e.manualFocus===!0?"q-manual-focusable":"q-focusable q-hoverable")+(e.focused===!0?" q-manual-focusable--focused":""):"")),x=s(()=>e.insetLevel===void 0?null:{["padding"+(r.lang.rtl===!0?"Right":"Left")]:16+e.insetLevel*56+"px"});function y(b){m.value===!0&&(h.value!==null&&(b.qKeyEvent!==!0&&document.activeElement===d.value?h.value.focus():document.activeElement===h.value&&d.value.focus()),f(b))}function k(b){if(m.value===!0&&Tt(b,[13,32])===!0){ke(b),b.qKeyEvent=!0;let p=new MouseEvent("click",b);p.qKeyEvent=!0,d.value.dispatchEvent(p)}o("keyup",b)}function S(){let b=Po(t.default,[]);return m.value===!0&&b.unshift(l("div",{class:"q-focus-helper",tabindex:-1,ref:h})),b}return()=>{let b={ref:d,class:v.value,style:x.value,role:"listitem",onClick:y,onKeyup:k};return m.value===!0?(b.tabindex=e.tabindex||"0",Object.assign(b,a.value)):g.value===!0&&(b["aria-disabled"]="true"),l(c.value,b,S())}}});var no=A({name:"QItemSection",props:{avatar:Boolean,thumbnail:Boolean,side:Boolean,top:Boolean,noWrap:Boolean},setup(e,{slots:t}){let o=s(()=>`q-item__section column q-item__section--${e.avatar===!0||e.side===!0||e.thumbnail===!0?"side":"main"}`+(e.top===!0?" q-item__section--top justify-start":" justify-center")+(e.avatar===!0?" q-item__section--avatar":"")+(e.thumbnail===!0?" q-item__section--thumbnail":"")+(e.noWrap===!0?" q-item__section--nowrap":""));return()=>l("div",{class:o.value},re(t.default))}});function qc(e,t,o){t.handler?t.handler(e,o,o.caret):o.runCmd(t.cmd,t.param)}function lu(e){return l("div",{class:"q-editor__toolbar-group"},e)}function Tc(e,t,o,r=!1){let n=r||(t.type==="toggle"?t.toggled?t.toggled(e):t.cmd&&e.caret.is(t.cmd,t.param):!1),i=[];if(t.tip&&e.$q.platform.is.desktop){let a=t.key?l("div",[l("small",`(CTRL + ${String.fromCharCode(t.key)})`)]):null;i.push(l(Ma,{delay:1e3},()=>[l("div",{innerHTML:t.tip}),a]))}return l(ze,{...e.buttonProps.value,icon:t.icon!==null?t.icon:void 0,color:n?t.toggleColor||e.props.toolbarToggleColor:t.color||e.props.toolbarColor,textColor:n&&!e.props.toolbarPush?null:t.textColor||e.props.toolbarTextColor,label:t.label,disable:t.disable?typeof t.disable=="function"?t.disable(e):!0:!1,size:"sm",onClick(a){o&&o(),qc(a,t,e)}},()=>i)}function dh(e,t){let o=t.list==="only-icons",r=t.label,n=t.icon!==null?t.icon:void 0,i,a;function u(){f.component.proxy.hide()}if(o)a=t.options.map(d=>{let h=d.type===void 0?e.caret.is(d.cmd,d.param):!1;return h&&(r=d.tip,n=d.icon!==null?d.icon:void 0),Tc(e,d,u,h)}),i=e.toolbarBackgroundClass.value,a=[lu(a)];else{let d=e.props.toolbarToggleColor!==void 0?`text-${e.props.toolbarToggleColor}`:null,h=e.props.toolbarTextColor!==void 0?`text-${e.props.toolbarTextColor}`:null,g=t.list==="no-icons";a=t.options.map(m=>{let v=m.disable?m.disable(e):!1,x=m.type===void 0?e.caret.is(m.cmd,m.param):!1;x&&(r=m.tip,n=m.icon!==null?m.icon:void 0);let y=m.htmlTip;return l(Qo,{active:x,activeClass:d,clickable:!0,disable:v,dense:!0,onClick(k){u(),e.contentRef.value!==null&&e.contentRef.value.focus(),e.caret.restore(),qc(k,m,e)}},()=>[g===!0?null:l(no,{class:x?d:h,side:!0},()=>l(Re,{name:m.icon!==null?m.icon:void 0})),l(no,y?()=>l("div",{class:"text-no-wrap",innerHTML:m.htmlTip}):m.tip?()=>l("div",{class:"text-no-wrap"},m.tip):void 0)])}),i=[e.toolbarBackgroundClass.value,h]}let c=t.highlight&&r!==t.label,f=l(Ji,{...e.buttonProps.value,noCaps:!0,noWrap:!0,color:c?e.props.toolbarToggleColor:e.props.toolbarColor,textColor:c&&!e.props.toolbarPush?null:e.props.toolbarTextColor,label:t.fixedLabel?t.label:r,icon:t.fixedIcon?t.icon!==null?t.icon:void 0:n,contentClass:i,onShow:d=>e.emit("dropdownShow",d),onHide:d=>e.emit("dropdownHide",d),onBeforeShow:d=>e.emit("dropdownBeforeShow",d),onBeforeHide:d=>e.emit("dropdownBeforeHide",d)},()=>a);return f}function Mc(e){if(e.caret)return e.buttons.value.filter(t=>!e.isViewingSource.value||t.find(o=>o.cmd==="viewsource")).map(t=>lu(t.map(o=>e.isViewingSource.value&&o.cmd!=="viewsource"?!1:o.type==="slot"?re(e.slots[o.slot]):o.type==="dropdown"?dh(e,o):Tc(e,o))))}function Rc(e,t,o,r={}){let n=Object.keys(r);if(n.length===0)return{};let i={default_font:{cmd:"fontName",param:e,icon:o,tip:t}};return n.forEach(a=>{let u=r[a];i[a]={cmd:"fontName",param:u,icon:o,tip:u,htmlTip:`${u}`}}),i}function Pc(e){if(e.caret){let t=e.props.toolbarColor||e.props.toolbarTextColor,o=e.editLinkUrl.value,r=()=>{e.caret.restore(),o!==e.editLinkUrl.value&&document.execCommand("createLink",!1,o===""?" ":o),e.editLinkUrl.value=null};return[l("div",{class:`q-mx-xs text-${t}`},`${e.$q.lang.editor.url}: `),l("input",{key:"qedt_btm_input",class:"col q-editor__link-input",value:o,onInput:n=>{at(n),o=n.target.value},onKeydown:n=>{if(io(n)!==!0)switch(n.keyCode){case 13:return vt(n),r();case 27:vt(n),e.caret.restore(),(!e.editLinkUrl.value||e.editLinkUrl.value==="https://")&&document.execCommand("unlink"),e.editLinkUrl.value=null;break}}}),lu([l(ze,{key:"qedt_btm_rem",tabindex:-1,...e.buttonProps.value,label:e.$q.lang.label.remove,noCaps:!0,onClick:()=>{e.caret.restore(),document.execCommand("unlink"),e.editLinkUrl.value=null}}),l(ze,{key:"qedt_btm_upd",...e.buttonProps.value,label:e.$q.lang.label.update,noCaps:!0,onClick:r})])]}}var Ac=/^on[A-Z]/;function Br(){let{attrs:e,vnode:t}=K(),o={listeners:q({}),attributes:q({})};function r(){let n={},i={};for(let a in e)a!=="class"&&a!=="style"&&Ac.test(a)===!1&&(n[a]=e[a]);for(let a in t.props)Ac.test(a)===!0&&(i[a]=t.props[a]);o.attributes.value=n,o.listeners.value=i}return Mo(r),r(),o}var fh=Object.prototype.toString,uu=Object.prototype.hasOwnProperty,mh=new Set(["Boolean","Number","String","Function","Array","Date","RegExp"].map(e=>"[object "+e+"]"));function $c(e){if(e!==Object(e)||mh.has(fh.call(e))===!0||e.constructor&&uu.call(e,"constructor")===!1&&uu.call(e.constructor.prototype,"isPrototypeOf")===!1)return!1;let t;for(t in e);return t===void 0||uu.call(e,t)}function vn(){let e,t,o,r,n,i,a=arguments[0]||{},u=1,c=!1,f=arguments.length;for(typeof a=="boolean"&&(c=a,a=arguments[1]||{},u=2),Object(a)!==a&&typeof a!="function"&&(a={}),f===u&&(a=this,u--);ue.length===0||e.every(t=>t.length),default:()=>[["left","center","right","justify"],["bold","italic","underline","strike"],["undo","redo"]]},toolbarColor:String,toolbarBg:String,toolbarTextColor:String,toolbarToggleColor:{type:String,default:"primary"},toolbarOutline:Boolean,toolbarPush:Boolean,toolbarRounded:Boolean,paragraphTag:{type:String,validator:e=>["div","p"].includes(e),default:"div"},contentStyle:Object,contentClass:[Object,Array,String],square:Boolean,flat:Boolean,dense:Boolean},emits:[...wr,"update:modelValue","keydown","click","focus","blur","dropdownShow","dropdownHide","dropdownBeforeShow","dropdownBeforeHide","linkShow","linkHide"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,i=xe(e,n),{inFullscreen:a,toggleFullscreen:u}=kr(),c=Br(),f=q(null),d=q(null),h=q(null),g=q(!1),m=s(()=>!e.readonly&&!e.disable),v,x,y=e.modelValue;document.execCommand("defaultParagraphSeparator",!1,e.paragraphTag),v=window.getComputedStyle(document.body).fontFamily;let k=s(()=>e.toolbarBg?` bg-${e.toolbarBg}`:""),S=s(()=>({type:"a",flat:e.toolbarOutline!==!0&&e.toolbarPush!==!0,noWrap:!0,outline:e.toolbarOutline,push:e.toolbarPush,rounded:e.toolbarRounded,dense:!0,color:e.toolbarColor,disable:!m.value,size:"sm"})),b=s(()=>{let R=n.lang.editor,z=n.iconSet.editor;return{bold:{cmd:"bold",icon:z.bold,tip:R.bold,key:66},italic:{cmd:"italic",icon:z.italic,tip:R.italic,key:73},strike:{cmd:"strikeThrough",icon:z.strikethrough,tip:R.strikethrough,key:83},underline:{cmd:"underline",icon:z.underline,tip:R.underline,key:85},unordered:{cmd:"insertUnorderedList",icon:z.unorderedList,tip:R.unorderedList},ordered:{cmd:"insertOrderedList",icon:z.orderedList,tip:R.orderedList},subscript:{cmd:"subscript",icon:z.subscript,tip:R.subscript,htmlTip:"x2"},superscript:{cmd:"superscript",icon:z.superscript,tip:R.superscript,htmlTip:"x2"},link:{cmd:"link",disable:ae=>ae.caret&&!ae.caret.can("link"),icon:z.hyperlink,tip:R.hyperlink,key:76},fullscreen:{cmd:"fullscreen",icon:z.toggleFullscreen,tip:R.toggleFullscreen,key:70},viewsource:{cmd:"viewsource",icon:z.viewSource,tip:R.viewSource},quote:{cmd:"formatBlock",param:"BLOCKQUOTE",icon:z.quote,tip:R.quote,key:81},left:{cmd:"justifyLeft",icon:z.left,tip:R.left},center:{cmd:"justifyCenter",icon:z.center,tip:R.center},right:{cmd:"justifyRight",icon:z.right,tip:R.right},justify:{cmd:"justifyFull",icon:z.justify,tip:R.justify},print:{type:"no-state",cmd:"print",icon:z.print,tip:R.print,key:80},outdent:{type:"no-state",disable:ae=>ae.caret&&!ae.caret.can("outdent"),cmd:"outdent",icon:z.outdent,tip:R.outdent},indent:{type:"no-state",disable:ae=>ae.caret&&!ae.caret.can("indent"),cmd:"indent",icon:z.indent,tip:R.indent},removeFormat:{type:"no-state",cmd:"removeFormat",icon:z.removeFormat,tip:R.removeFormat},hr:{type:"no-state",cmd:"insertHorizontalRule",icon:z.hr,tip:R.hr},undo:{type:"no-state",cmd:"undo",icon:z.undo,tip:R.undo,key:90},redo:{type:"no-state",cmd:"redo",icon:z.redo,tip:R.redo,key:89},h1:{cmd:"formatBlock",param:"H1",icon:z.heading1||z.heading,tip:R.heading1,htmlTip:`

${R.heading1}

`},h2:{cmd:"formatBlock",param:"H2",icon:z.heading2||z.heading,tip:R.heading2,htmlTip:`

${R.heading2}

`},h3:{cmd:"formatBlock",param:"H3",icon:z.heading3||z.heading,tip:R.heading3,htmlTip:`

${R.heading3}

`},h4:{cmd:"formatBlock",param:"H4",icon:z.heading4||z.heading,tip:R.heading4,htmlTip:`

${R.heading4}

`},h5:{cmd:"formatBlock",param:"H5",icon:z.heading5||z.heading,tip:R.heading5,htmlTip:`
${R.heading5}
`},h6:{cmd:"formatBlock",param:"H6",icon:z.heading6||z.heading,tip:R.heading6,htmlTip:`
${R.heading6}
`},p:{cmd:"formatBlock",param:e.paragraphTag,icon:z.heading,tip:R.paragraph},code:{cmd:"formatBlock",param:"PRE",icon:z.code,htmlTip:`${R.code}`},"size-1":{cmd:"fontSize",param:"1",icon:z.size1||z.size,tip:R.size1,htmlTip:`${R.size1}`},"size-2":{cmd:"fontSize",param:"2",icon:z.size2||z.size,tip:R.size2,htmlTip:`${R.size2}`},"size-3":{cmd:"fontSize",param:"3",icon:z.size3||z.size,tip:R.size3,htmlTip:`${R.size3}`},"size-4":{cmd:"fontSize",param:"4",icon:z.size4||z.size,tip:R.size4,htmlTip:`${R.size4}`},"size-5":{cmd:"fontSize",param:"5",icon:z.size5||z.size,tip:R.size5,htmlTip:`${R.size5}`},"size-6":{cmd:"fontSize",param:"6",icon:z.size6||z.size,tip:R.size6,htmlTip:`${R.size6}`},"size-7":{cmd:"fontSize",param:"7",icon:z.size7||z.size,tip:R.size7,htmlTip:`${R.size7}`}}}),p=s(()=>{let R=e.definitions||{},z=e.definitions||e.fonts?vn(!0,{},b.value,R,Rc(v,n.lang.editor.defaultFont,n.iconSet.editor.font,e.fonts)):b.value;return e.toolbar.map(ae=>ae.map(Q=>{if(Q.options)return{type:"dropdown",icon:Q.icon,label:Q.label,size:"sm",dense:!0,fixedLabel:Q.fixedLabel,fixedIcon:Q.fixedIcon,highlight:Q.highlight,list:Q.list,options:Q.options.map(qe=>z[qe])};let me=z[Q];return me?me.type==="no-state"||R[Q]&&(me.cmd===void 0||b.value[me.cmd]&&b.value[me.cmd].type==="no-state")?me:Object.assign({type:"toggle"},me):{type:"slot",slot:Q}}))}),C={$q:n,props:e,slots:t,emit:o,inFullscreen:a,toggleFullscreen:u,runCmd:w,isViewingSource:g,editLinkUrl:h,toolbarBackgroundClass:k,buttonProps:S,contentRef:d,buttons:p,setContent:H};Y(()=>e.modelValue,R=>{y!==R&&(y=R,H(R,!0))}),Y(h,R=>{o(`link${R?"Show":"Hide"}`)});let $=s(()=>e.toolbar&&e.toolbar.length!==0),L=s(()=>{let R={},z=ae=>{ae.key&&(R[ae.key]={cmd:ae.cmd,param:ae.param})};return p.value.forEach(ae=>{ae.forEach(Q=>{Q.options?Q.options.forEach(z):z(Q)})}),R}),D=s(()=>a.value?e.contentStyle:[{minHeight:e.minHeight,height:e.height,maxHeight:e.maxHeight},e.contentStyle]),B=s(()=>`q-editor q-editor--${g.value===!0?"source":"default"}`+(e.disable===!0?" disabled":"")+(a.value===!0?" fullscreen column":"")+(e.square===!0?" q-editor--square no-border-radius":"")+(e.flat===!0?" q-editor--flat":"")+(e.dense===!0?" q-editor--dense":"")+(i.value===!0?" q-editor--dark q-dark":"")),E=s(()=>[e.contentClass,"q-editor__content",{col:a.value,"overflow-auto":a.value||e.maxHeight}]),V=s(()=>e.disable===!0?{"aria-disabled":"true"}:{});function M(){if(d.value!==null){let R=`inner${g.value===!0?"Text":"HTML"}`,z=d.value[R];z!==e.modelValue&&(y=z,o("update:modelValue",z))}}function T(R){if(o("keydown",R),R.ctrlKey!==!0||io(R)===!0){X();return}let z=R.keyCode,ae=L.value[z];if(ae!==void 0){let{cmd:Q,param:me}=ae;ke(R),w(Q,me,!1)}}function _(R){X(),o("click",R)}function F(R){if(d.value!==null){let{scrollTop:z,scrollHeight:ae}=d.value;x=ae-z}C.caret.save(),o("blur",R)}function I(R){Ee(()=>{d.value!==null&&x!==void 0&&(d.value.scrollTop=d.value.scrollHeight-x)}),o("focus",R)}function j(R){let z=f.value;if(z!==null&&z.contains(R.target)===!0&&(R.relatedTarget===null||z.contains(R.relatedTarget)!==!0)){let ae=`inner${g.value===!0?"Text":"HTML"}`;C.caret.restorePosition(d.value[ae].length),X()}}function W(R){let z=f.value;z!==null&&z.contains(R.target)===!0&&(R.relatedTarget===null||z.contains(R.relatedTarget)!==!0)&&(C.caret.savePosition(),X())}function ee(){x=void 0}function fe(R){C.caret.save()}function H(R,z){if(d.value!==null){z===!0&&C.caret.savePosition();let ae=`inner${g.value===!0?"Text":"HTML"}`;d.value[ae]=R,z===!0&&(C.caret.restorePosition(d.value[ae].length),X())}}function w(R,z,ae=!0){U(),C.caret.restore(),C.caret.apply(R,z,()=>{U(),C.caret.save(),ae&&X()})}function X(){setTimeout(()=>{h.value=null,r.$forceUpdate()},1)}function U(){po(()=>{d.value!==null&&d.value.focus({preventScroll:!0})})}function le(){return d.value}return je(()=>{C.caret=r.caret=new fi(d.value,C),H(e.modelValue),X(),document.addEventListener("selectionchange",fe)}),ye(()=>{document.removeEventListener("selectionchange",fe)}),Object.assign(r,{runCmd:w,refreshToolbar:X,focus:U,getContentEl:le}),()=>{let R;if($.value){let z=[l("div",{key:"qedt_top",class:"q-editor__toolbar row no-wrap scroll-x"+k.value},Mc(C))];h.value!==null&&z.push(l("div",{key:"qedt_btm",class:"q-editor__toolbar row no-wrap items-center scroll-x"+k.value},Pc(C))),R=l("div",{key:"toolbar_ctainer",class:"q-editor__toolbars-container"},z)}return l("div",{ref:f,class:B.value,style:{height:a.value===!0?"100%":null},...V.value,onFocusin:j,onFocusout:W},[R,l("div",{ref:d,style:D.value,class:E.value,contenteditable:m.value,placeholder:e.placeholder,...c.listeners.value,onInput:M,onKeydown:T,onClick:_,onBlur:F,onFocus:I,onMousedown:ee,onTouchstartPassive:ee})])}}});var Ln=A({name:"QItemLabel",props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){let o=s(()=>parseInt(e.lines,10)),r=s(()=>"q-item__label"+(e.overline===!0?" q-item__label--overline text-overline":"")+(e.caption===!0?" q-item__label--caption text-caption":"")+(e.header===!0?" q-item__label--header":"")+(o.value===1?" ellipsis":"")),n=s(()=>e.lines!==void 0&&o.value>1?{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":o.value}:null);return()=>l("div",{style:n.value,class:r.value},re(t.default))}});var gn=A({name:"QSlideTransition",props:{appear:Boolean,duration:{type:Number,default:300}},emits:["show","hide"],setup(e,{slots:t,emit:o}){let r=!1,n,i,a=null,u=null,c,f;function d(){n&&n(),n=null,r=!1,a!==null&&(clearTimeout(a),a=null),u!==null&&(clearTimeout(u),u=null),i!==void 0&&i.removeEventListener("transitionend",c),c=null}function h(x,y,k){y!==void 0&&(x.style.height=`${y}px`),x.style.transition=`height ${e.duration}ms cubic-bezier(.25, .8, .50, 1)`,r=!0,n=k}function g(x,y){x.style.overflowY=null,x.style.height=null,x.style.transition=null,d(),y!==f&&o(y)}function m(x,y){let k=0;i=x,r===!0?(d(),k=x.offsetHeight===x.scrollHeight?0:void 0):(f="hide",x.style.overflowY="hidden"),h(x,k,y),a=setTimeout(()=>{a=null,x.style.height=`${x.scrollHeight}px`,c=S=>{u=null,(Object(S)!==S||S.target===x)&&g(x,"show")},x.addEventListener("transitionend",c),u=setTimeout(c,e.duration*1.1)},100)}function v(x,y){let k;i=x,r===!0?d():(f="show",x.style.overflowY="hidden",k=x.scrollHeight),h(x,k,y),a=setTimeout(()=>{a=null,x.style.height=0,c=S=>{u=null,(Object(S)!==S||S.target===x)&&g(x,"hide")},x.addEventListener("transitionend",c),u=setTimeout(c,e.duration*1.1)},100)}return ye(()=>{r===!0&&d()}),()=>l(st,{css:!1,appear:e.appear,onEnter:m,onLeave:v},t.default)}});var vh={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},su={xs:2,sm:4,md:8,lg:16,xl:24},lo=A({name:"QSeparator",props:{...Se,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){let t=K(),o=xe(e,t.proxy.$q),r=s(()=>e.vertical===!0?"vertical":"horizontal"),n=s(()=>` q-separator--${r.value}`),i=s(()=>e.inset!==!1?`${n.value}-${vh[e.inset]}`:""),a=s(()=>`q-separator${n.value}${i.value}`+(e.color!==void 0?` bg-${e.color}`:"")+(o.value===!0?" q-separator--dark":"")),u=s(()=>{let c={};if(e.size!==void 0&&(c[e.vertical===!0?"width":"height"]=e.size),e.spaced!==!1){let f=e.spaced===!0?`${su.md}px`:e.spaced in su?`${su[e.spaced]}px`:e.spaced,d=e.vertical===!0?["Left","Right"]:["Top","Bottom"];c[`margin${d[0]}`]=c[`margin${d[1]}`]=f}return c});return()=>l("hr",{class:a.value,style:u.value,"aria-orientation":r.value})}});var Fn=$u({}),gh=Object.keys(Zo),Bc=A({name:"QExpansionItem",props:{...Zo,...vo,...Se,icon:String,label:String,labelLines:[Number,String],caption:String,captionLines:[Number,String],dense:Boolean,toggleAriaLabel:String,expandIcon:String,expandedIcon:String,expandIconClass:[Array,String,Object],duration:{},headerInsetLevel:Number,contentInsetLevel:Number,expandSeparator:Boolean,defaultOpened:Boolean,hideExpandIcon:Boolean,expandIconToggle:Boolean,switchToggleSide:Boolean,denseToggle:Boolean,group:String,popup:Boolean,headerStyle:[Array,String,Object],headerClass:[Array,String,Object]},emits:[...go,"click","afterShow","afterHide"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=xe(e,r),i=q(e.modelValue!==null?e.modelValue:e.defaultOpened),a=q(null),u=Do(),{show:c,hide:f,toggle:d}=ho({showing:i}),h,g,m=s(()=>`q-expansion-item q-item-type q-expansion-item--${i.value===!0?"expanded":"collapsed"} q-expansion-item--${e.popup===!0?"popup":"standard"}`),v=s(()=>e.contentInsetLevel===void 0?null:{["padding"+(r.lang.rtl===!0?"Right":"Left")]:e.contentInsetLevel*56+"px"}),x=s(()=>e.disable!==!0&&(e.href!==void 0||e.to!==void 0&&e.to!==null&&e.to!=="")),y=s(()=>{let j={};return gh.forEach(W=>{j[W]=e[W]}),j}),k=s(()=>x.value===!0||e.expandIconToggle!==!0),S=s(()=>e.expandedIcon!==void 0&&i.value===!0?e.expandedIcon:e.expandIcon||r.iconSet.expansionItem[e.denseToggle===!0?"denseIcon":"icon"]),b=s(()=>e.disable!==!0&&(x.value===!0||e.expandIconToggle===!0)),p=s(()=>({expanded:i.value===!0,detailsId:u.value,toggle:d,show:c,hide:f})),C=s(()=>{let j=e.toggleAriaLabel!==void 0?e.toggleAriaLabel:r.lang.label[i.value===!0?"collapse":"expand"](e.label);return{role:"button","aria-expanded":i.value===!0?"true":"false","aria-controls":u.value,"aria-label":j}});Y(()=>e.group,j=>{g!==void 0&&g(),j!==void 0&&V()});function $(j){x.value!==!0&&d(j),o("click",j)}function L(j){j.keyCode===13&&D(j,!0)}function D(j,W){W!==!0&&a.value!==null&&a.value.focus(),d(j),ke(j)}function B(){o("afterShow")}function E(){o("afterHide")}function V(){h===void 0&&(h=Fo()),i.value===!0&&(Fn[e.group]=h);let j=Y(i,ee=>{ee===!0?Fn[e.group]=h:Fn[e.group]===h&&delete Fn[e.group]}),W=Y(()=>Fn[e.group],(ee,fe)=>{fe===h&&ee!==void 0&&ee!==h&&f()});g=()=>{j(),W(),Fn[e.group]===h&&delete Fn[e.group],g=void 0}}function M(){let j={class:[`q-focusable relative-position cursor-pointer${e.denseToggle===!0&&e.switchToggleSide===!0?" items-end":""}`,e.expandIconClass],side:e.switchToggleSide!==!0,avatar:e.switchToggleSide},W=[l(Re,{class:"q-expansion-item__toggle-icon"+(e.expandedIcon===void 0&&i.value===!0?" q-expansion-item__toggle-icon--rotated":""),name:S.value})];return b.value===!0&&(Object.assign(j,{tabindex:0,...C.value,onClick:D,onKeyup:L}),W.unshift(l("div",{ref:a,class:"q-expansion-item__toggle-focus q-icon q-focus-helper q-focus-helper--rounded",tabindex:-1}))),l(no,j,()=>W)}function T(){let j;return t.header!==void 0?j=[].concat(t.header(p.value)):(j=[l(no,()=>[l(Ln,{lines:e.labelLines},()=>e.label||""),e.caption?l(Ln,{lines:e.captionLines,caption:!0},()=>e.caption):null])],e.icon&&j[e.switchToggleSide===!0?"push":"unshift"](l(no,{side:e.switchToggleSide===!0,avatar:e.switchToggleSide!==!0},()=>l(Re,{name:e.icon})))),e.disable!==!0&&e.hideExpandIcon!==!0&&j[e.switchToggleSide===!0?"unshift":"push"](M()),j}function _(){let j={ref:"item",style:e.headerStyle,class:e.headerClass,dark:n.value,disable:e.disable,dense:e.dense,insetLevel:e.headerInsetLevel};return k.value===!0&&(j.clickable=!0,j.onClick=$,Object.assign(j,x.value===!0?y.value:C.value)),l(Qo,j,T)}function F(){return Et(l("div",{key:"e-content",class:"q-expansion-item__content relative-position",style:v.value,id:u.value},re(t.default)),[[ki,i.value]])}function I(){let j=[_(),l(gn,{duration:e.duration,onShow:B,onHide:E},F)];return e.expandSeparator===!0&&j.push(l(lo,{class:"q-expansion-item__border q-expansion-item__border--top absolute-top",dark:n.value}),l(lo,{class:"q-expansion-item__border q-expansion-item__border--bottom absolute-bottom",dark:n.value})),j}return e.group!==void 0&&V(),ye(()=>{g!==void 0&&g()}),()=>l("div",{class:m.value},[l("div",{class:"q-expansion-item__container relative-position"},I())])}});var hh=["top","right","bottom","left"],mi={type:{type:String,default:"a"},outline:Boolean,push:Boolean,flat:Boolean,unelevated:Boolean,color:String,textColor:String,glossy:Boolean,square:Boolean,padding:String,label:{type:[String,Number],default:""},labelPosition:{type:String,default:"right",validator:e=>hh.includes(e)},externalLabel:Boolean,hideLabel:{type:Boolean},labelClass:[Array,String,Object],labelStyle:[Array,String,Object],disable:Boolean,tabindex:[Number,String]};function Ra(e,t){return{formClass:s(()=>`q-fab--form-${e.square===!0?"square":"rounded"}`),stacked:s(()=>e.externalLabel===!1&&["top","bottom"].includes(e.labelPosition)),labelProps:s(()=>{if(e.externalLabel===!0){let o=e.hideLabel===null?t.value===!1:e.hideLabel;return{action:"push",data:{class:[e.labelClass,`q-fab__label q-tooltip--style q-fab__label--external q-fab__label--external-${e.labelPosition}`+(o===!0?" q-fab__label--external-hidden":"")],style:e.labelStyle}}}return{action:["left","top"].includes(e.labelPosition)?"unshift":"push",data:{class:[e.labelClass,`q-fab__label q-fab__label--internal q-fab__label--internal-${e.labelPosition}`+(e.hideLabel===!0?" q-fab__label--internal-hidden":"")],style:e.labelStyle}}})}}var ph=["up","right","down","left"],bh=["left","center","right"],Lc=A({name:"QFab",props:{...mi,...vo,icon:String,activeIcon:String,hideIcon:Boolean,hideLabel:{...mi.hideLabel,default:null},direction:{type:String,default:"right",validator:e=>ph.includes(e)},persistent:Boolean,verticalActionsAlign:{type:String,default:"center",validator:e=>bh.includes(e)}},emits:go,setup(e,{slots:t}){let o=q(null),r=q(e.modelValue===!0),n=Do(),{proxy:{$q:i}}=K(),{formClass:a,labelProps:u}=Ra(e,r),c=s(()=>e.persistent!==!0),{hide:f,toggle:d}=ho({showing:r,hideOnRouteChange:c}),h=s(()=>({opened:r.value})),g=s(()=>`q-fab z-fab row inline justify-center q-fab--align-${e.verticalActionsAlign} ${a.value}`+(r.value===!0?" q-fab--opened":" q-fab--closed")),m=s(()=>`q-fab__actions flex no-wrap inline q-fab__actions--${e.direction} q-fab__actions--${r.value===!0?"opened":"closed"}`),v=s(()=>{let S={id:n.value,role:"menu"};return r.value!==!0&&(S["aria-hidden"]="true"),S}),x=s(()=>`q-fab__icon-holder q-fab__icon-holder--${r.value===!0?"opened":"closed"}`);function y(S,b){let p=t[S],C=`q-fab__${S} absolute-full`;return p===void 0?l(Re,{class:C,name:e[b]||i.iconSet.fab[b]}):l("div",{class:C},p(h.value))}function k(){let S=[];return e.hideIcon!==!0&&S.push(l("div",{class:x.value},[y("icon","icon"),y("active-icon","activeIcon")])),(e.label!==""||t.label!==void 0)&&S[u.value.action](l("div",u.value.data,t.label!==void 0?t.label(h.value):[e.label])),Xe(t.tooltip,S)}return jt(Ei,{showing:r,onChildClick(S){f(S),o.value!==null&&o.value.$el.focus()}}),()=>l("div",{class:g.value},[l(ze,{ref:o,class:a.value,...e,noWrap:!0,stack:e.stacked,align:void 0,icon:void 0,label:void 0,noCaps:!0,fab:!0,"aria-expanded":r.value===!0?"true":"false","aria-haspopup":"true","aria-controls":n.value,onClick:d},k),l("div",{class:m.value,...v.value},re(t.default))])}});var Fc={start:"self-end",center:"self-center",end:"self-start"},yh=Object.keys(Fc),Dc=A({name:"QFabAction",props:{...mi,icon:{type:String,default:""},anchor:{type:String,validator:e=>yh.includes(e)},to:[String,Object],replace:Boolean},emits:["click"],setup(e,{slots:t,emit:o}){let r=ht(Ei,()=>({showing:{value:!0},onChildClick:Ye})),{formClass:n,labelProps:i}=Ra(e,r.showing),a=s(()=>{let h=Fc[e.anchor];return n.value+(h!==void 0?` ${h}`:"")}),u=s(()=>e.disable===!0||r.showing.value!==!0);function c(h){r.onChildClick(h),o("click",h)}function f(){let h=[];return t.icon!==void 0?h.push(t.icon()):e.icon!==""&&h.push(l(Re,{name:e.icon})),(e.label!==""||t.label!==void 0)&&h[i.value.action](l("div",i.value.data,t.label!==void 0?t.label():[e.label])),Xe(t.default,h)}let d=K();return Object.assign(d.proxy,{click:c}),()=>l(ze,{class:a.value,...e,noWrap:!0,stack:e.stacked,icon:void 0,label:void 0,noCaps:!0,fabMini:!0,disable:u.value,onClick:c},f)}});function Pa({validate:e,resetValidation:t,requiresQForm:o}){let r=ht(Xo,!1);if(r!==!1){let{props:n,proxy:i}=K();Object.assign(i,{validate:e,resetValidation:t}),Y(()=>n.disable,a=>{a===!0?(typeof t=="function"&&t(),r.unbindComponent(i)):r.bindComponent(i)}),je(()=>{n.disable!==!0&&r.bindComponent(i)}),ye(()=>{n.disable!==!0&&r.unbindComponent(i)})}else o===!0&&console.error("Parent QForm not found on useFormChild()!")}var Sh=[!0,!1,"ondemand"],Vc={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],default:!1,validator:e=>Sh.includes(e)}};function zc(e,t){let{props:o,proxy:r}=K(),n=q(!1),i=q(null),a=q(!1);Pa({validate:x,resetValidation:v});let u=0,c,f=s(()=>o.rules!==void 0&&o.rules!==null&&o.rules.length!==0),d=s(()=>o.disable!==!0&&f.value===!0&&t.value===!1),h=s(()=>o.error===!0||n.value===!0),g=s(()=>typeof o.errorMessage=="string"&&o.errorMessage.length!==0?o.errorMessage:i.value);Y(()=>o.modelValue,()=>{a.value=!0,d.value===!0&&o.lazyRules===!1&&y()});function m(){o.lazyRules!=="ondemand"&&d.value===!0&&a.value===!0&&y()}Y(()=>o.reactiveRules,k=>{k===!0?c===void 0&&(c=Y(()=>o.rules,m,{immediate:!0,deep:!0})):c!==void 0&&(c(),c=void 0)},{immediate:!0}),Y(()=>o.lazyRules,m),Y(e,k=>{k===!0?a.value=!0:d.value===!0&&o.lazyRules!=="ondemand"&&y()});function v(){u++,t.value=!1,a.value=!1,n.value=!1,i.value=null,y.cancel()}function x(k=o.modelValue){if(o.disable===!0||f.value===!1)return!0;let S=++u,b=t.value!==!0?()=>{a.value=!0}:()=>{},p=($,L)=>{$===!0&&b(),n.value=$,i.value=L||null,t.value=!1},C=[];for(let $=0;${if($===void 0||Array.isArray($)===!1||$.length===0)return S===u&&p(!1),!0;let L=$.find(D=>D===!1||typeof D=="string");return S===u&&p(L!==void 0,L),L===void 0},$=>(S===u&&(console.error($),p(!0)),!1)))}let y=Zt(x,0);return ye(()=>{c!==void 0&&c(),y.cancel()}),Object.assign(r,{resetValidation:v,validate:x}),ft(r,"hasError",()=>h.value),{isDirtyModel:a,hasRules:f,hasError:h,errorMessage:g,validate:x,resetValidation:v}}function No(e){return e!=null&&(""+e).length!==0}var cu={...Se,...Vc,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String},Dn={...cu,maxlength:[Number,String]},hn=["update:modelValue","clear","focus","blur"];function pn({requiredForAttr:e=!0,tagProp:t,changeEvent:o=!1}={}){let{props:r,proxy:n}=K(),i=xe(r,n.$q),a=Do({required:e,getValue:()=>r.for});return{requiredForAttr:e,changeEvent:o,tag:t===!0?s(()=>r.tag):{value:"label"},isDark:i,editable:s(()=>r.disable!==!0&&r.readonly!==!0),innerLoading:q(!1),focused:q(!1),hasPopupOpen:!1,splitAttrs:Br(),targetUid:a,rootRef:q(null),targetRef:q(null),controlRef:q(null)}}function bn(e){let{props:t,emit:o,slots:r,attrs:n,proxy:i}=K(),{$q:a}=i,u=null;e.hasValue===void 0&&(e.hasValue=s(()=>No(t.modelValue))),e.emitValue===void 0&&(e.emitValue=W=>{o("update:modelValue",W)}),e.controlEvents===void 0&&(e.controlEvents={onFocusin:B,onFocusout:E}),Object.assign(e,{clearValue:V,onControlFocusin:B,onControlFocusout:E,focus:L}),e.computedCounter===void 0&&(e.computedCounter=s(()=>{if(t.counter!==!1){let W=typeof t.modelValue=="string"||typeof t.modelValue=="number"?(""+t.modelValue).length:Array.isArray(t.modelValue)===!0?t.modelValue.length:0,ee=t.maxlength!==void 0?t.maxlength:t.maxValues;return W+(ee!==void 0?" / "+ee:"")}}));let{isDirtyModel:c,hasRules:f,hasError:d,errorMessage:h,resetValidation:g}=zc(e.focused,e.innerLoading),m=e.floatingLabel!==void 0?s(()=>t.stackLabel===!0||e.focused.value===!0||e.floatingLabel.value===!0):s(()=>t.stackLabel===!0||e.focused.value===!0||e.hasValue.value===!0),v=s(()=>t.bottomSlots===!0||t.hint!==void 0||f.value===!0||t.counter===!0||t.error!==null),x=s(()=>t.filled===!0?"filled":t.outlined===!0?"outlined":t.borderless===!0?"borderless":t.standout?"standout":"standard"),y=s(()=>`q-field row no-wrap items-start q-field--${x.value}`+(e.fieldClass!==void 0?` ${e.fieldClass.value}`:"")+(t.rounded===!0?" q-field--rounded":"")+(t.square===!0?" q-field--square":"")+(m.value===!0?" q-field--float":"")+(S.value===!0?" q-field--labeled":"")+(t.dense===!0?" q-field--dense":"")+(t.itemAligned===!0?" q-field--item-aligned q-item-type":"")+(e.isDark.value===!0?" q-field--dark":"")+(e.getControl===void 0?" q-field--auto-height":"")+(e.focused.value===!0?" q-field--focused":"")+(d.value===!0?" q-field--error":"")+(d.value===!0||e.focused.value===!0?" q-field--highlighted":"")+(t.hideBottomSpace!==!0&&v.value===!0?" q-field--with-bottom":"")+(t.disable===!0?" q-field--disabled":t.readonly===!0?" q-field--readonly":"")),k=s(()=>"q-field__control relative-position row no-wrap"+(t.bgColor!==void 0?` bg-${t.bgColor}`:"")+(d.value===!0?" text-negative":typeof t.standout=="string"&&t.standout.length!==0&&e.focused.value===!0?` ${t.standout}`:t.color!==void 0?` text-${t.color}`:"")),S=s(()=>t.labelSlot===!0||t.label!==void 0),b=s(()=>"q-field__label no-pointer-events absolute ellipsis"+(t.labelColor!==void 0&&d.value!==!0?` text-${t.labelColor}`:"")),p=s(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:m.value,modelValue:t.modelValue,emitValue:e.emitValue})),C=s(()=>{let W={};return e.targetUid.value&&(W.for=e.targetUid.value),t.disable===!0&&(W["aria-disabled"]="true"),W});function $(){let W=document.activeElement,ee=e.targetRef!==void 0&&e.targetRef.value;ee&&(W===null||W.id!==e.targetUid.value)&&(ee.hasAttribute("tabindex")===!0||(ee=ee.querySelector("[tabindex]")),ee&&ee!==W&&ee.focus({preventScroll:!0}))}function L(){po($)}function D(){Ts($);let W=document.activeElement;W!==null&&e.rootRef.value.contains(W)&&W.blur()}function B(W){u!==null&&(clearTimeout(u),u=null),e.editable.value===!0&&e.focused.value===!1&&(e.focused.value=!0,o("focus",W))}function E(W,ee){u!==null&&clearTimeout(u),u=setTimeout(()=>{u=null,!(document.hasFocus()===!0&&(e.hasPopupOpen===!0||e.controlRef===void 0||e.controlRef.value===null||e.controlRef.value.contains(document.activeElement)!==!1))&&(e.focused.value===!0&&(e.focused.value=!1,o("blur",W)),ee!==void 0&&ee())})}function V(W){ke(W),a.platform.is.mobile!==!0?(e.targetRef!==void 0&&e.targetRef.value||e.rootRef.value).focus():e.rootRef.value.contains(document.activeElement)===!0&&document.activeElement.blur(),t.type==="file"&&(e.inputRef.value.value=null),o("update:modelValue",null),e.changeEvent===!0&&o("change",null),o("clear",t.modelValue),Ee(()=>{let ee=c.value;g(),c.value=ee})}function M(W){[13,32].includes(W.keyCode)&&V(W)}function T(){let W=[];return r.prepend!==void 0&&W.push(l("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:vt},r.prepend())),W.push(l("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},_())),d.value===!0&&t.noErrorIcon===!1&&W.push(I("error",[l(Re,{name:a.iconSet.field.error,color:"negative"})])),t.loading===!0||e.innerLoading.value===!0?W.push(I("inner-loading-append",r.loading!==void 0?r.loading():[l(wt,{color:t.color})])):t.clearable===!0&&e.hasValue.value===!0&&e.editable.value===!0&&W.push(I("inner-clearable-append",[l(Re,{class:"q-field__focusable-action",name:t.clearIcon||a.iconSet.field.clear,tabindex:0,role:"button","aria-hidden":"false","aria-label":a.lang.label.clear,onKeyup:M,onClick:V})])),r.append!==void 0&&W.push(l("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:vt},r.append())),e.getInnerAppend!==void 0&&W.push(I("inner-append",e.getInnerAppend())),e.getControlChild!==void 0&&W.push(e.getControlChild()),W}function _(){let W=[];return t.prefix!==void 0&&t.prefix!==null&&W.push(l("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),e.getShadowControl!==void 0&&e.hasShadow.value===!0&&W.push(e.getShadowControl()),e.getControl!==void 0?W.push(e.getControl()):r.rawControl!==void 0?W.push(r.rawControl()):r.control!==void 0&&W.push(l("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0},r.control(p.value))),S.value===!0&&W.push(l("div",{class:b.value},re(r.label,t.label))),t.suffix!==void 0&&t.suffix!==null&&W.push(l("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),W.concat(re(r.default))}function F(){let W,ee;d.value===!0?h.value!==null?(W=[l("div",{role:"alert"},h.value)],ee=`q--slot-error-${h.value}`):(W=re(r.error),ee="q--slot-error"):(t.hideHint!==!0||e.focused.value===!0)&&(t.hint!==void 0?(W=[l("div",t.hint)],ee=`q--slot-hint-${t.hint}`):(W=re(r.hint),ee="q--slot-hint"));let fe=t.counter===!0||r.counter!==void 0;if(t.hideBottomSpace===!0&&fe===!1&&W===void 0)return;let H=l("div",{key:ee,class:"q-field__messages col"},W);return l("div",{class:"q-field__bottom row items-start q-field__bottom--"+(t.hideBottomSpace!==!0?"animated":"stale"),onClick:vt},[t.hideBottomSpace===!0?H:l(st,{name:"q-transition--field-message"},()=>H),fe===!0?l("div",{class:"q-field__counter"},r.counter!==void 0?r.counter():e.computedCounter.value):null])}function I(W,ee){return ee===null?null:l("div",{key:W,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},ee)}let j=!1;return Pt(()=>{j=!0}),Nt(()=>{j===!0&&t.autofocus===!0&&i.focus()}),t.autofocus===!0&&je(()=>{i.focus()}),ye(()=>{u!==null&&clearTimeout(u)}),Object.assign(i,{focus:L,blur:D}),function(){let ee=e.getControl===void 0&&r.control===void 0?{...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0,...C.value}:C.value;return l(e.tag.value,{ref:e.rootRef,class:[y.value,n.class],style:n.style,...ee},[r.before!==void 0?l("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:vt},r.before()):null,l("div",{class:"q-field__inner relative-position col self-stretch"},[l("div",{ref:e.controlRef,class:k.value,tabindex:-1,...e.controlEvents},T()),v.value===!0?F():null]),r.after!==void 0?l("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:vt},r.after()):null])}}var Aa=A({name:"QField",inheritAttrs:!1,props:{...Dn,tag:{type:String,default:"label"}},emits:hn,setup(){return bn(pn({tagProp:!0}))}});function Lr(e,t,o,r){let n=[];return e.forEach(i=>{r(i)===!0?n.push(i):t.push({failedPropValidation:o,file:i})}),n}function $a(e){e&&e.dataTransfer&&(e.dataTransfer.dropEffect="copy"),ke(e)}var Ea={multiple:Boolean,accept:String,capture:String,maxFileSize:[Number,String],maxTotalSize:[Number,String],maxFiles:[Number,String],filter:Function},Ba=["rejected"];function La({editable:e,dnd:t,getFileInput:o,addFilesToQueue:r}){let{props:n,emit:i,proxy:a}=K(),u=q(null),c=s(()=>n.accept!==void 0?n.accept.split(",").map(S=>(S=S.trim(),S==="*"?"*/":(S.endsWith("/*")&&(S=S.slice(0,S.length-1)),S.toUpperCase()))):null),f=s(()=>parseInt(n.maxFiles,10)),d=s(()=>parseInt(n.maxTotalSize,10));function h(S){if(e.value)if(S!==Object(S)&&(S={target:null}),S.target!==null&&S.target.matches('input[type="file"]')===!0)S.clientX===0&&S.clientY===0&&at(S);else{let b=o();b&&b!==S.target&&b.click(S)}}function g(S){e.value&&S&&r(null,S)}function m(S,b,p,C){let $=Array.from(b||S.target.files),L=[],D=()=>{L.length!==0&&i("rejected",L)};if(n.accept!==void 0&&c.value.indexOf("*/")===-1&&($=Lr($,L,"accept",B=>c.value.some(E=>B.type.toUpperCase().startsWith(E)||B.name.toUpperCase().endsWith(E))),$.length===0))return D();if(n.maxFileSize!==void 0){let B=parseInt(n.maxFileSize,10);if($=Lr($,L,"max-file-size",E=>E.size<=B),$.length===0)return D()}if(n.multiple!==!0&&$.length!==0&&($=[$[0]]),$.forEach(B=>{B.__key=B.webkitRelativePath+B.lastModified+B.name+B.size}),C===!0){let B=p.map(E=>E.__key);$=Lr($,L,"duplicate",E=>B.includes(E.__key)===!1)}if($.length===0)return D();if(n.maxTotalSize!==void 0){let B=C===!0?p.reduce((E,V)=>E+V.size,0):0;if($=Lr($,L,"max-total-size",E=>(B+=E.size,B<=d.value)),$.length===0)return D()}if(typeof n.filter=="function"){let B=n.filter($);$=Lr($,L,"filter",E=>B.includes(E))}if(n.maxFiles!==void 0){let B=C===!0?p.length:0;if($=Lr($,L,"max-files",()=>(B++,B<=f.value)),$.length===0)return D()}if(D(),$.length!==0)return $}function v(S){$a(S),t.value!==!0&&(t.value=!0)}function x(S){ke(S),(S.relatedTarget!==null||Pe.is.safari!==!0?S.relatedTarget!==u.value:document.elementsFromPoint(S.clientX,S.clientY).includes(u.value)===!1)===!0&&(t.value=!1)}function y(S){$a(S);let b=S.dataTransfer.files;b.length!==0&&r(null,b),t.value=!1}function k(S){if(t.value===!0)return l("div",{ref:u,class:`q-${S}__dnd absolute-full`,onDragenter:$a,onDragover:$a,onDragleave:x,onDrop:y})}return Object.assign(a,{pickFiles:h,addFiles:g}),{pickFiles:h,addFiles:g,onDragover:v,onDragleave:x,processFiles:m,getDndNode:k,maxFilesNumber:f,maxTotalSizeNumber:d}}function Fa(e,t){function o(){let r=e.modelValue;try{let n="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(r)===r&&("length"in r?Array.from(r):[r]).forEach(i=>{n.items.add(i)}),{files:n.files}}catch{return{files:void 0}}}return t===!0?s(()=>{if(e.type==="file")return o()}):s(o)}var Oc=A({name:"QFile",inheritAttrs:!1,props:{...cu,...kt,...Ea,modelValue:[File,FileList,Array],append:Boolean,useChips:Boolean,displayValue:[String,Number],tabindex:{type:[String,Number],default:0},counterLabel:Function,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...hn,...Ba],setup(e,{slots:t,emit:o,attrs:r}){let{proxy:n}=K(),i=pn(),a=q(null),u=q(!1),c=gr(e),{pickFiles:f,onDragover:d,onDragleave:h,processFiles:g,getDndNode:m}=La({editable:i.editable,dnd:u,getFileInput:M,addFilesToQueue:T}),v=Fa(e),x=s(()=>Object(e.modelValue)===e.modelValue?"length"in e.modelValue?Array.from(e.modelValue):[e.modelValue]:[]),y=s(()=>No(x.value)),k=s(()=>x.value.map(j=>j.name).join(", ")),S=s(()=>Un(x.value.reduce((j,W)=>j+W.size,0))),b=s(()=>({totalSize:S.value,filesNumber:x.value.length,maxFiles:e.maxFiles})),p=s(()=>({tabindex:-1,type:"file",title:"",accept:e.accept,capture:e.capture,name:c.value,...r,id:i.targetUid.value,disabled:i.editable.value!==!0})),C=s(()=>"q-file q-field--auto-height"+(u.value===!0?" q-file--dnd":"")),$=s(()=>e.multiple===!0&&e.append===!0);function L(j){let W=x.value.slice();W.splice(j,1),B(W)}function D(j){let W=x.value.indexOf(j);W!==-1&&L(W)}function B(j){o("update:modelValue",e.multiple===!0?j:j[0])}function E(j){j.keyCode===13&&vt(j)}function V(j){(j.keyCode===13||j.keyCode===32)&&f(j)}function M(){return a.value}function T(j,W){let ee=g(j,W,x.value,$.value),fe=M();fe!=null&&(fe.value=""),ee!==void 0&&((e.multiple===!0?e.modelValue&&ee.every(H=>x.value.includes(H)):e.modelValue===ee[0])||B($.value===!0?x.value.concat(ee):ee))}function _(){return[l("input",{class:[e.inputClass,"q-file__filler"],style:e.inputStyle})]}function F(){if(t.file!==void 0)return x.value.length===0?_():x.value.map((W,ee)=>t.file({index:ee,file:W,ref:this}));if(t.selected!==void 0)return x.value.length===0?_():t.selected({files:x.value,ref:this});if(e.useChips===!0)return x.value.length===0?_():x.value.map((W,ee)=>l(qr,{key:"file-"+ee,removable:i.editable.value,dense:!0,textColor:e.color,tabindex:e.tabindex,onRemove:()=>{L(ee)}},()=>l("span",{class:"ellipsis",textContent:W.name})));let j=e.displayValue!==void 0?e.displayValue:k.value;return j.length!==0?[l("div",{class:e.inputClass,style:e.inputStyle,textContent:j})]:_()}function I(){let j={ref:a,...p.value,...v.value,class:"q-field__input fit absolute-full cursor-pointer",onChange:T};return e.multiple===!0&&(j.multiple=!0),l("input",j)}return Object.assign(i,{fieldClass:C,emitValue:B,hasValue:y,inputRef:a,innerValue:x,floatingLabel:s(()=>y.value===!0||No(e.displayValue)),computedCounter:s(()=>{if(e.counterLabel!==void 0)return e.counterLabel(b.value);let j=e.maxFiles;return`${x.value.length}${j!==void 0?" / "+j:""} (${S.value})`}),getControlChild:()=>m("file"),getControl:()=>{let j={ref:i.targetRef,class:"q-field__native row items-center cursor-pointer",tabindex:e.tabindex};return i.editable.value===!0&&Object.assign(j,{onDragover:d,onDragleave:h,onKeydown:E,onKeyup:V}),l("div",j,[I()].concat(F()))}}),Object.assign(n,{removeAtIndex:L,removeFile:D,getNativeElement:()=>a.value}),ft(n,"nativeEl",()=>a.value),bn(i)}});var Ic=A({name:"QFooter",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=ht(Jt,Ge);if(n===Ge)return console.error("QFooter needs to be child of QLayout"),Ge;let i=q(parseInt(e.heightHint,10)),a=q(!0),u=q(xt.value===!0||n.isContainer.value===!0?0:window.innerHeight),c=s(()=>e.reveal===!0||n.view.value.indexOf("F")!==-1||r.platform.is.ios&&n.isContainer.value===!0),f=s(()=>n.isContainer.value===!0?n.containerHeight.value:u.value),d=s(()=>{if(e.modelValue!==!0)return 0;if(c.value===!0)return a.value===!0?i.value:0;let C=n.scroll.value.position+f.value+i.value-n.height.value;return C>0?C:0}),h=s(()=>e.modelValue!==!0||c.value===!0&&a.value!==!0),g=s(()=>e.modelValue===!0&&h.value===!0&&e.reveal===!0),m=s(()=>"q-footer q-layout__section--marginal "+(c.value===!0?"fixed":"absolute")+"-bottom"+(e.bordered===!0?" q-footer--bordered":"")+(h.value===!0?" q-footer--hidden":"")+(e.modelValue!==!0?" q-layout--prevent-focus"+(c.value!==!0?" hidden":""):"")),v=s(()=>{let C=n.rows.value.bottom,$={};return C[0]==="l"&&n.left.space===!0&&($[r.lang.rtl===!0?"right":"left"]=`${n.left.size}px`),C[2]==="r"&&n.right.space===!0&&($[r.lang.rtl===!0?"left":"right"]=`${n.right.size}px`),$});function x(C,$){n.update("footer",C,$)}function y(C,$){C.value!==$&&(C.value=$)}function k({height:C}){y(i,C),x("size",C)}function S(){if(e.reveal!==!0)return;let{direction:C,position:$,inflectionPoint:L}=n.scroll.value;y(a,C==="up"||$-L<100||n.height.value-f.value-$-i.value<300)}function b(C){g.value===!0&&y(a,!0),o("focusin",C)}Y(()=>e.modelValue,C=>{x("space",C),y(a,!0),n.animate()}),Y(d,C=>{x("offset",C)}),Y(()=>e.reveal,C=>{C===!1&&y(a,e.modelValue)}),Y(a,C=>{n.animate(),o("reveal",C)}),Y([i,n.scroll,n.height],S),Y(()=>r.screen.height,C=>{n.isContainer.value!==!0&&y(u,C)});let p={};return n.instances.footer=p,e.modelValue===!0&&x("size",i.value),x("space",e.modelValue),x("offset",d.value),ye(()=>{n.instances.footer===p&&(n.instances.footer=void 0,x("size",0),x("offset",0),x("space",!1))}),()=>{let C=Xe(t.default,[l(oo,{debounce:0,onResize:k})]);return e.elevated===!0&&C.push(l("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),l("footer",{class:m.value,style:v.value,onFocusin:b},C)}}});var Hc=A({name:"QForm",props:{autofocus:Boolean,noErrorFocus:Boolean,noResetFocus:Boolean,greedy:Boolean,onSubmit:Function},emits:["reset","validationSuccess","validationError"],setup(e,{slots:t,emit:o}){let r=K(),n=q(null),i=0,a=[];function u(m){let v=typeof m=="boolean"?m:e.noErrorFocus!==!0,x=++i,y=(b,p)=>{o(`validation${b===!0?"Success":"Error"}`,p)},k=b=>{let p=b.validate();return typeof p.then=="function"?p.then(C=>({valid:C,comp:b}),C=>({valid:!1,comp:b,err:C})):Promise.resolve({valid:p,comp:b})};return(e.greedy===!0?Promise.all(a.map(k)).then(b=>b.filter(p=>p.valid!==!0)):a.reduce((b,p)=>b.then(()=>k(p).then(C=>{if(C.valid===!1)return Promise.reject(C)})),Promise.resolve()).catch(b=>[b])).then(b=>{if(b===void 0||b.length===0)return x===i&&y(!0),!0;if(x===i){let{comp:p,err:C}=b[0];if(C!==void 0&&console.error(C),y(!1,p),v===!0){let $=b.find(({comp:L})=>typeof L.focus=="function"&&Yt(L.$)===!1);$!==void 0&&$.comp.focus()}}return!1})}function c(){i++,a.forEach(m=>{typeof m.resetValidation=="function"&&m.resetValidation()})}function f(m){m!==void 0&&ke(m);let v=i+1;u().then(x=>{v===i&&x===!0&&(e.onSubmit!==void 0?o("submit",m):m!==void 0&&m.target!==void 0&&typeof m.target.submit=="function"&&m.target.submit())})}function d(m){m!==void 0&&ke(m),o("reset"),Ee(()=>{c(),e.autofocus===!0&&e.noResetFocus!==!0&&h()})}function h(){po(()=>{if(n.value===null)return;let m=n.value.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||n.value.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||n.value.querySelector("[autofocus], [data-autofocus]")||Array.prototype.find.call(n.value.querySelectorAll("[tabindex]"),v=>v.tabIndex!==-1);m?.focus({preventScroll:!0})})}jt(Xo,{bindComponent(m){a.push(m)},unbindComponent(m){let v=a.indexOf(m);v!==-1&&a.splice(v,1)}});let g=!1;return Pt(()=>{g=!0}),Nt(()=>{g===!0&&e.autofocus===!0&&h()}),je(()=>{e.autofocus===!0&&h()}),Object.assign(r.proxy,{validate:u,resetValidation:c,submit:f,reset:d,focus:h,getValidationComponents:()=>a}),()=>l("form",{class:"q-form",ref:n,onSubmit:f,onReset:d},re(t.default))}});var Qc={inject:{[Xo]:{default:Ye}},watch:{disable(e){let t=this.$.provides[Xo];t!==void 0&&(e===!0?(this.resetValidation(),t.unbindComponent(this)):t.bindComponent(this))}},methods:{validate(){},resetValidation(){}},mounted(){let e=this.$.provides[Xo];e!==void 0&&this.disable!==!0&&e.bindComponent(this)},beforeUnmount(){let e=this.$.provides[Xo];e!==void 0&&this.disable!==!0&&e.unbindComponent(this)}};var Nc=A({name:"QHeader",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,revealOffset:{type:Number,default:250},bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=ht(Jt,Ge);if(n===Ge)return console.error("QHeader needs to be child of QLayout"),Ge;let i=q(parseInt(e.heightHint,10)),a=q(!0),u=s(()=>e.reveal===!0||n.view.value.indexOf("H")!==-1||r.platform.is.ios&&n.isContainer.value===!0),c=s(()=>{if(e.modelValue!==!0)return 0;if(u.value===!0)return a.value===!0?i.value:0;let S=i.value-n.scroll.value.position;return S>0?S:0}),f=s(()=>e.modelValue!==!0||u.value===!0&&a.value!==!0),d=s(()=>e.modelValue===!0&&f.value===!0&&e.reveal===!0),h=s(()=>"q-header q-layout__section--marginal "+(u.value===!0?"fixed":"absolute")+"-top"+(e.bordered===!0?" q-header--bordered":"")+(f.value===!0?" q-header--hidden":"")+(e.modelValue!==!0?" q-layout--prevent-focus":"")),g=s(()=>{let S=n.rows.value.top,b={};return S[0]==="l"&&n.left.space===!0&&(b[r.lang.rtl===!0?"right":"left"]=`${n.left.size}px`),S[2]==="r"&&n.right.space===!0&&(b[r.lang.rtl===!0?"left":"right"]=`${n.right.size}px`),b});function m(S,b){n.update("header",S,b)}function v(S,b){S.value!==b&&(S.value=b)}function x({height:S}){v(i,S),m("size",S)}function y(S){d.value===!0&&v(a,!0),o("focusin",S)}Y(()=>e.modelValue,S=>{m("space",S),v(a,!0),n.animate()}),Y(c,S=>{m("offset",S)}),Y(()=>e.reveal,S=>{S===!1&&v(a,e.modelValue)}),Y(a,S=>{n.animate(),o("reveal",S)}),Y(n.scroll,S=>{e.reveal===!0&&v(a,S.direction==="up"||S.position<=e.revealOffset||S.position-S.inflectionPoint<100)});let k={};return n.instances.header=k,e.modelValue===!0&&m("size",i.value),m("space",e.modelValue),m("offset",c.value),ye(()=>{n.instances.header===k&&(n.instances.header=void 0,m("size",0),m("offset",0),m("space",!1))}),()=>{let S=Po(t.default,[]);return e.elevated===!0&&S.push(l("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),S.push(l(oo,{debounce:0,onResize:x})),l("header",{class:h.value,style:g.value,onFocusin:y},S)}}});var Fr={ratio:[String,Number]};function Dr(e,t){return s(()=>{let o=Number(e.ratio||(t!==void 0?t.value:void 0));return isNaN(o)!==!0&&o>0?{paddingBottom:`${100/o}%`}:null})}var xh=1.7778,jc=A({name:"QImg",props:{...Fr,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},loadingShowDelay:{type:[Number,String],default:0},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:xh},placeholderSrc:String,errorSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:t,emit:o}){let r=q(e.initialRatio),n=Dr(e,r),i=K(),{registerTimeout:a,removeTimeout:u}=Vt(),{registerTimeout:c,removeTimeout:f}=Vt(),d=s(()=>e.placeholderSrc!==void 0?{src:e.placeholderSrc}:null),h=s(()=>e.errorSrc!==void 0?{src:e.errorSrc,__qerror:!0}:null),g=[q(null),q(d.value)],m=q(0),v=q(!1),x=q(!1),y=s(()=>`q-img q-img--${e.noNativeMenu===!0?"no-":""}menu`),k=s(()=>({width:e.width,height:e.height})),S=s(()=>`q-img__image ${e.imgClass!==void 0?e.imgClass+" ":""}q-img__image--with${e.noTransition===!0?"out":""}-transition q-img__image--`),b=s(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));function p(){if(f(),e.loadingShowDelay===0){v.value=!0;return}c(()=>{v.value=!0},e.loadingShowDelay)}function C(){f(),v.value=!1}function $({target:M}){Yt(i)===!1&&(u(),r.value=M.naturalHeight===0?.5:M.naturalWidth/M.naturalHeight,L(M,1))}function L(M,T){T===1e3||Yt(i)===!0||(M.complete===!0?D(M):a(()=>{L(M,T+1)},50))}function D(M){Yt(i)!==!0&&(m.value=m.value^1,g[m.value].value=null,C(),M.getAttribute("__qerror")!=="true"&&(x.value=!1),o("load",M.currentSrc||M.src))}function B(M){u(),C(),x.value=!0,g[m.value].value=h.value,g[m.value^1].value=d.value,o("error",M)}function E(M){let T=g[M].value,_={key:"img_"+M,class:S.value,style:b.value,alt:e.alt,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...T};return m.value===M?Object.assign(_,{class:_.class+"current",onLoad:$,onError:B}):_.class+="loaded",l("div",{class:"q-img__container absolute-full",key:"img"+M},l("img",_))}function V(){return v.value===!1?l("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},re(t[x.value===!0?"error":"default"])):l("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},t.loading!==void 0?t.loading():e.noSpinner===!0?void 0:[l(wt,{color:e.spinnerColor,size:e.spinnerSize})])}{let M=function(){Y(()=>e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null,T=>{u(),x.value=!1,T===null?(C(),g[m.value^1].value=d.value):p(),g[m.value].value=T},{immediate:!0})};xt.value===!0?je(M):M()}return()=>{let M=[];return n.value!==null&&M.push(l("div",{key:"filler",style:n.value})),g[0].value!==null&&M.push(E(0)),g[1].value!==null&&M.push(E(1)),M.push(l(st,{name:"q-transition--fade"},V)),l("div",{key:"main",class:y.value,style:k.value,role:"img","aria-label":e.alt},M)}}});var{passive:Vn}=Ze,Uc=A({name:"QInfiniteScroll",props:{offset:{type:Number,default:500},debounce:{type:[String,Number],default:100},scrollTarget:eo,initialIndex:{type:Number,default:0},disable:Boolean,reverse:Boolean},emits:["load"],setup(e,{slots:t,emit:o}){let r=q(!1),n=q(!0),i=q(null),a=q(null),u=e.initialIndex,c,f,d=s(()=>"q-infinite-scroll__loading"+(r.value===!0?"":" invisible"));function h(){if(e.disable===!0||r.value===!0||n.value===!1)return;let L=lr(c),D=to(c),B=Ao(c);e.reverse===!1?Math.round(D+B+e.offset)>=Math.round(L)&&g():Math.round(D)<=e.offset&&g()}function g(){if(e.disable===!0||r.value===!0||n.value===!1)return;u++,r.value=!0;let L=lr(c);o("load",u,D=>{n.value===!0&&(r.value=!1,Ee(()=>{if(e.reverse===!0){let B=lr(c),E=to(c),V=B-L;Bo(c,E+V)}D===!0?x():i.value&&i.value.closest("body")&&f()}))})}function m(){u=0}function v(){n.value===!1&&(n.value=!0,c.addEventListener("scroll",f,Vn)),h()}function x(){n.value===!0&&(n.value=!1,r.value=!1,c.removeEventListener("scroll",f,Vn),f!==void 0&&f.cancel!==void 0&&f.cancel())}function y(){if(c&&n.value===!0&&c.removeEventListener("scroll",f,Vn),c=Bt(i.value,e.scrollTarget),n.value===!0){if(c.addEventListener("scroll",f,Vn),e.reverse===!0){let L=lr(c),D=Ao(c);Bo(c,L-D)}h()}}function k(L){u=L}function S(L){L=parseInt(L,10);let D=f;f=L<=0?h:Zt(h,isNaN(L)===!0?100:L),c&&n.value===!0&&(D!==void 0&&c.removeEventListener("scroll",D,Vn),c.addEventListener("scroll",f,Vn))}function b(L){if(p.value===!0){if(a.value===null){L!==!0&&Ee(()=>{b(!0)});return}let D=`${r.value===!0?"un":""}pauseAnimations`;Array.from(a.value.getElementsByTagName("svg")).forEach(B=>{B[D]()})}}let p=s(()=>e.disable!==!0&&n.value===!0);Y([r,p],()=>{b()}),Y(()=>e.disable,L=>{L===!0?x():v()}),Y(()=>e.reverse,()=>{r.value===!1&&n.value===!0&&h()}),Y(()=>e.scrollTarget,y),Y(()=>e.debounce,S);let C=!1;Nt(()=>{C!==!1&&c&&Bo(c,C)}),Pt(()=>{C=c?to(c):!1}),ye(()=>{n.value===!0&&c.removeEventListener("scroll",f,Vn)}),je(()=>{S(e.debounce),y(),r.value===!1&&b()});let $=K();return Object.assign($.proxy,{poll:()=>{f!==void 0&&f()},trigger:g,stop:x,reset:m,resume:v,setIndex:k,updateScrollTarget:y}),()=>{let L=Po(t.default,[]);return p.value===!0&&L[e.reverse===!1?"push":"unshift"](l("div",{ref:a,class:d.value},re(t.loading))),l("div",{class:"q-infinite-scroll",ref:i},L)}}});var Kc=A({name:"QInnerLoading",props:{...Se,...bo,showing:Boolean,color:String,size:{type:[String,Number],default:"42px"},label:String,labelClass:String,labelStyle:[String,Array,Object]},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),{transitionProps:n,transitionStyle:i}=un(e),a=s(()=>"q-inner-loading q--avoid-card-border absolute-full column flex-center"+(r.value===!0?" q-inner-loading--dark":"")),u=s(()=>"q-inner-loading__label"+(e.labelClass!==void 0?` ${e.labelClass}`:""));function c(){let d=[l(wt,{size:e.size,color:e.color})];return e.label!==void 0&&d.push(l("div",{class:u.value,style:e.labelStyle},[e.label])),d}function f(){return e.showing===!0?l("div",{class:a.value,style:i.value},t.default!==void 0?t.default():c()):null}return()=>l(st,n.value,f)}});var Wc={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},Da={"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}},Xc=Object.keys(Da);Xc.forEach(e=>{Da[e].regex=new RegExp(Da[e].pattern)});var _h=new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+Xc.join("")+"])|(.)","g"),Yc=/[.*+?^${}()|[\]\\]/g,Lt="",Gc={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean};function Zc(e,t,o,r){let n,i,a,u,c,f,d=q(null),h=q(m());function g(){return e.autogrow===!0||["textarea","text","search","url","tel","password"].includes(e.type)}Y(()=>e.type+e.autogrow,x),Y(()=>e.mask,B=>{if(B!==void 0)y(h.value,!0);else{let E=L(h.value);x(),e.modelValue!==E&&t("update:modelValue",E)}}),Y(()=>e.fillMask+e.reverseFillMask,()=>{d.value===!0&&y(h.value,!0)}),Y(()=>e.unmaskedValue,()=>{d.value===!0&&y(h.value)});function m(){if(x(),d.value===!0){let B=C(L(e.modelValue));return e.fillMask!==!1?D(B):B}return e.modelValue}function v(B){if(B0;T--)E+=Lt;V=V.slice(0,M)+E+V.slice(M)}return V}function x(){if(d.value=e.mask!==void 0&&e.mask.length!==0&&g(),d.value===!1){u=void 0,n="",i="";return}let B=Wc[e.mask]===void 0?e.mask:Wc[e.mask],E=typeof e.fillMask=="string"&&e.fillMask.length!==0?e.fillMask.slice(0,1):"_",V=E.replace(Yc,"\\$&"),M=[],T=[],_=[],F=e.reverseFillMask===!0,I="",j="";B.replace(_h,(H,w,X,U,le)=>{if(U!==void 0){let R=Da[U];_.push(R),j=R.negate,F===!0&&(T.push("(?:"+j+"+)?("+R.pattern+"+)?(?:"+j+"+)?("+R.pattern+"+)?"),F=!1),T.push("(?:"+j+"+)?("+R.pattern+")?")}else if(X!==void 0)I="\\"+(X==="\\"?"":X),_.push(X),M.push("([^"+I+"]+)?"+I+"?");else{let R=w!==void 0?w:le;I=R==="\\"?"\\\\\\\\":R.replace(Yc,"\\\\$&"),_.push(R),M.push("([^"+I+"]+)?"+I+"?")}});let W=new RegExp("^"+M.join("")+"("+(I===""?".":"[^"+I+"]")+"+)?"+(I===""?"":"["+I+"]*")+"$"),ee=T.length-1,fe=T.map((H,w)=>w===0&&e.reverseFillMask===!0?new RegExp("^"+V+"*"+H):w===ee?new RegExp("^"+H+"("+(j===""?".":j)+"+)?"+(e.reverseFillMask===!0?"$":V+"*")):new RegExp("^"+H));a=_,u=H=>{let w=W.exec(e.reverseFillMask===!0?H:H.slice(0,_.length+1));w!==null&&(H=w.slice(1).join(""));let X=[],U=fe.length;for(let le=0,R=H;letypeof H=="string"?H:Lt).join(""),i=n.split(Lt).join(E)}function y(B,E,V){let M=r.value,T=M.selectionEnd,_=M.value.length-T,F=L(B);E===!0&&x();let I=C(F),j=e.fillMask!==!1?D(I):I,W=h.value!==j;M.value!==j&&(M.value=j),W===!0&&(h.value=j),document.activeElement===M&&Ee(()=>{if(j===i){let fe=e.reverseFillMask===!0?i.length:0;M.setSelectionRange(fe,fe,"forward");return}if(V==="insertFromPaste"&&e.reverseFillMask!==!0){let fe=M.selectionEnd,H=T-1;for(let w=c;w<=H&&wI.length?1:0:Math.max(0,j.length-(j===i?0:Math.min(I.length,_)+1))+1:T;M.setSelectionRange(fe,fe,"forward");return}if(e.reverseFillMask===!0)if(W===!0){let fe=Math.max(0,j.length-(j===i?0:Math.min(I.length,_+1)));fe===1&&T===1?M.setSelectionRange(fe,fe,"forward"):S.rightReverse(M,fe)}else{let fe=j.length-_;M.setSelectionRange(fe,fe,"backward")}else if(W===!0){let fe=Math.max(0,n.indexOf(Lt),Math.min(I.length,T)-1);S.right(M,fe)}else{let fe=T-1;S.right(M,fe)}});let ee=e.unmaskedValue===!0?L(j):j;String(e.modelValue)!==ee&&(e.modelValue!==null||ee!=="")&&o(ee,!0)}function k(B,E,V){let M=C(L(B.value));E=Math.max(0,n.indexOf(Lt),Math.min(M.length,E)),c=E,B.setSelectionRange(E,V,"forward")}let S={left(B,E){let V=n.slice(E-1).indexOf(Lt)===-1,M=Math.max(0,E-1);for(;M>=0;M--)if(n[M]===Lt){E=M,V===!0&&E++;break}if(M<0&&n[E]!==void 0&&n[E]!==Lt)return S.right(B,0);E>=0&&B.setSelectionRange(E,E,"backward")},right(B,E){let V=B.value.length,M=Math.min(V,E+1);for(;M<=V;M++)if(n[M]===Lt){E=M;break}else n[M-1]===Lt&&(E=M);if(M>V&&n[E-1]!==void 0&&n[E-1]!==Lt)return S.left(B,V);B.setSelectionRange(E,E,"forward")},leftReverse(B,E){let V=v(B.value.length),M=Math.max(0,E-1);for(;M>=0;M--)if(V[M-1]===Lt){E=M;break}else if(V[M]===Lt&&(E=M,M===0))break;if(M<0&&V[E]!==void 0&&V[E]!==Lt)return S.rightReverse(B,0);E>=0&&B.setSelectionRange(E,E,"backward")},rightReverse(B,E){let V=B.value.length,M=v(V),T=M.slice(0,E+1).indexOf(Lt)===-1,_=Math.min(V,E+1);for(;_<=V;_++)if(M[_-1]===Lt){E=_,E>0&&T===!0&&E--;break}if(_>V&&M[E-1]!==void 0&&M[E-1]!==Lt)return S.leftReverse(B,V);B.setSelectionRange(E,E,"forward")}};function b(B){t("click",B),f=void 0}function p(B){if(t("keydown",B),io(B)===!0||B.altKey===!0)return;let E=r.value,V=E.selectionStart,M=E.selectionEnd;if(B.shiftKey||(f=void 0),B.keyCode===37||B.keyCode===39){B.shiftKey&&f===void 0&&(f=E.selectionDirection==="forward"?V:M);let T=S[(B.keyCode===39?"right":"left")+(e.reverseFillMask===!0?"Reverse":"")];if(B.preventDefault(),T(E,f===V?M:V),B.shiftKey){let _=E.selectionStart;E.setSelectionRange(Math.min(f,_),Math.max(f,_),"forward")}}else B.keyCode===8&&e.reverseFillMask!==!0&&V===M?(S.left(E,V),E.setSelectionRange(E.selectionStart,M,"backward")):B.keyCode===46&&e.reverseFillMask===!0&&V===M&&(S.rightReverse(E,M),E.setSelectionRange(V,E.selectionEnd,"forward"))}function C(B){if(B==null||B==="")return"";if(e.reverseFillMask===!0)return $(B);let E=a,V=0,M="";for(let T=0;T=0&&M!==-1;_--){let F=E[_],I=B[M];if(typeof F=="string")T=F+T,I===F&&M--;else if(I!==void 0&&F.regex.test(I))do T=(F.transform!==void 0?F.transform(I):I)+T,M--,I=B[M];while(V===_&&I!==void 0&&F.regex.test(I));else return T}return T}function L(B){return typeof B!="string"||u===void 0?typeof B=="number"?u(""+B):B:u(B)}function D(B){return i.length-B.length<=0?B:e.reverseFillMask===!0&&B.length!==0?i.slice(0,-B.length)+B:B+i.slice(B.length)}return{innerValue:h,hasMask:d,moveCursorForPaste:k,updateMaskValue:y,onMaskedKeydown:p,onMaskedClick:b}}function Va(e){return function(o){if(o.type==="compositionend"||o.type==="change"){if(o.target.qComposing!==!0)return;o.target.qComposing=!1,e(o)}else o.type==="compositionstart"&&(o.target.qComposing=!0)}}var Vr=A({name:"QInput",inheritAttrs:!1,props:{...Dn,...Gc,...kt,modelValue:[String,Number,FileList],shadowText:String,type:{type:String,default:"text"},debounce:[String,Number],autogrow:Boolean,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...hn,"paste","change","keydown","click","animationend"],setup(e,{emit:t,attrs:o}){let{proxy:r}=K(),{$q:n}=r,i={},a=NaN,u,c,f=null,d,h=q(null),g=gr(e),{innerValue:m,hasMask:v,moveCursorForPaste:x,updateMaskValue:y,onMaskedKeydown:k,onMaskedClick:S}=Zc(e,t,I,h),b=Fa(e,!0),p=s(()=>No(m.value)),C=Va(_),$=pn({changeEvent:!0}),L=s(()=>e.type==="textarea"||e.autogrow===!0),D=s(()=>L.value===!0||["text","search","url","tel","password"].includes(e.type)),B=s(()=>{let w={...$.splitAttrs.listeners.value,onInput:_,onPaste:T,onChange:W,onBlur:ee,onFocus:at};return w.onCompositionstart=w.onCompositionupdate=w.onCompositionend=C,v.value===!0&&(w.onKeydown=k,w.onClick=S),e.autogrow===!0&&(w.onAnimationend=F),w}),E=s(()=>{let w={tabindex:0,"data-autofocus":e.autofocus===!0||void 0,rows:e.type==="textarea"?6:void 0,"aria-label":e.label,name:g.value,...$.splitAttrs.attributes.value,id:$.targetUid.value,maxlength:e.maxlength,disabled:e.disable===!0,readonly:e.readonly===!0};return L.value===!1&&(w.type=e.type),e.autogrow===!0&&(w.rows=1),w});Y(()=>e.type,()=>{h.value&&(h.value.value=e.modelValue)}),Y(()=>e.modelValue,w=>{if(v.value===!0){if(c===!0&&(c=!1,String(w)===a))return;y(w)}else m.value!==w&&(m.value=w,e.type==="number"&&i.hasOwnProperty("value")===!0&&(u===!0?u=!1:delete i.value));e.autogrow===!0&&Ee(j)}),Y(()=>e.autogrow,w=>{w===!0?Ee(j):h.value!==null&&o.rows>0&&(h.value.style.height="auto")}),Y(()=>e.dense,()=>{e.autogrow===!0&&Ee(j)});function V(){po(()=>{let w=document.activeElement;h.value!==null&&h.value!==w&&(w===null||w.id!==$.targetUid.value)&&h.value.focus({preventScroll:!0})})}function M(){h.value!==null&&h.value.select()}function T(w){if(v.value===!0&&e.reverseFillMask!==!0){let X=w.target;x(X,X.selectionStart,X.selectionEnd)}t("paste",w)}function _(w){if(!w||!w.target)return;if(e.type==="file"){t("update:modelValue",w.target.files);return}let X=w.target.value;if(w.target.qComposing===!0){i.value=X;return}if(v.value===!0)y(X,!1,w.inputType);else if(I(X),D.value===!0&&w.target===document.activeElement){let{selectionStart:U,selectionEnd:le}=w.target;U!==void 0&&le!==void 0&&Ee(()=>{w.target===document.activeElement&&X.indexOf(w.target.value)===0&&w.target.setSelectionRange(U,le)})}e.autogrow===!0&&j()}function F(w){t("animationend",w),j()}function I(w,X){d=()=>{f=null,e.type!=="number"&&i.hasOwnProperty("value")===!0&&delete i.value,e.modelValue!==w&&a!==w&&(a=w,X===!0&&(c=!0),t("update:modelValue",w),Ee(()=>{a===w&&(a=NaN)})),d=void 0},e.type==="number"&&(u=!0,i.value=w),e.debounce!==void 0?(f!==null&&clearTimeout(f),i.value=w,f=setTimeout(d,e.debounce)):d()}function j(){requestAnimationFrame(()=>{let w=h.value;if(w!==null){let X=w.parentNode.style,{scrollTop:U}=w,{overflowY:le,maxHeight:R}=n.platform.is.firefox===!0?{}:window.getComputedStyle(w),z=le!==void 0&&le!=="scroll";z===!0&&(w.style.overflowY="hidden"),X.marginBottom=w.scrollHeight-1+"px",w.style.height="1px",w.style.height=w.scrollHeight+"px",z===!0&&(w.style.overflowY=parseInt(R,10){h.value!==null&&(h.value.value=m.value!==void 0?m.value:"")})}function fe(){return i.hasOwnProperty("value")===!0?i.value:m.value!==void 0?m.value:""}ye(()=>{ee()}),je(()=>{e.autogrow===!0&&j()}),Object.assign($,{innerValue:m,fieldClass:s(()=>`q-${L.value===!0?"textarea":"input"}`+(e.autogrow===!0?" q-textarea--autogrow":"")),hasShadow:s(()=>e.type!=="file"&&typeof e.shadowText=="string"&&e.shadowText.length!==0),inputRef:h,emitValue:I,hasValue:p,floatingLabel:s(()=>p.value===!0&&(e.type!=="number"||isNaN(m.value)===!1)||No(e.displayValue)),getControl:()=>l(L.value===!0?"textarea":"input",{ref:h,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...E.value,...B.value,...e.type!=="file"?{value:fe()}:b.value}),getShadowControl:()=>l("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(L.value===!0?"":" text-no-wrap")},[l("span",{class:"invisible"},fe()),l("span",e.shadowText)])});let H=bn($);return Object.assign(r,{focus:V,select:M,getNativeElement:()=>h.value}),ft(r,"nativeEl",()=>h.value),H}});var Jc={threshold:0,root:null,rootMargin:"0px"};function ed(e,t,o){let r,n,i;typeof o=="function"?(r=o,n=Jc,i=t.cfg===void 0):(r=o.handler,n=Object.assign({},Jc,o.cfg),i=t.cfg===void 0||Wt(t.cfg,n)===!1),t.handler!==r&&(t.handler=r),i===!0&&(t.cfg=n,t.observer!==void 0&&t.observer.unobserve(e),t.observer=new IntersectionObserver(([a])=>{if(typeof t.handler=="function"){if(a.rootBounds===null&&document.body.contains(e)===!0){t.observer.unobserve(e),t.observer.observe(e);return}(t.handler(a,t.observer)===!1||t.once===!0&&a.isIntersecting===!0)&&td(e)}},n),t.observer.observe(e))}function td(e){let t=e.__qvisible;t!==void 0&&(t.observer!==void 0&&t.observer.unobserve(e),delete e.__qvisible)}var za=At({name:"intersection",mounted(e,{modifiers:t,value:o}){let r={once:t.once===!0};ed(e,r,o),e.__qvisible=r},updated(e,t){let o=e.__qvisible;o!==void 0&&ed(e,o,t.value)},beforeUnmount:td});var od=A({name:"QIntersection",props:{tag:{type:String,default:"div"},once:Boolean,transition:String,transitionDuration:{type:[String,Number],default:300},ssrPrerender:Boolean,margin:String,threshold:[Number,Array],root:{default:null},disable:Boolean,onVisibility:Function},setup(e,{slots:t,emit:o}){let r=q(xt.value===!0?e.ssrPrerender:!1),n=s(()=>e.root!==void 0||e.margin!==void 0||e.threshold!==void 0?{handler:c,cfg:{root:e.root,rootMargin:e.margin,threshold:e.threshold}}:c),i=s(()=>e.disable!==!0&&(xt.value!==!0||e.once!==!0||e.ssrPrerender!==!0)),a=s(()=>[[za,n.value,void 0,{once:e.once}]]),u=s(()=>`--q-transition-duration: ${e.transitionDuration}ms`);function c(d){r.value!==d.isIntersecting&&(r.value=d.isIntersecting,e.onVisibility!==void 0&&o("visibility",r.value))}function f(){if(r.value===!0)return[l("div",{key:"content",style:u.value},re(t.default))];if(t.hidden!==void 0)return[l("div",{key:"hidden",style:u.value},t.hidden())]}return()=>{let d=e.transition?[l(st,{name:"q-transition--"+e.transition},f)]:f();return Mt(e.tag,{class:"q-intersection"},d,"main",i.value,()=>a.value)}}});var Ch=["ul","ol"],Oa=A({name:"QList",props:{...Se,bordered:Boolean,dense:Boolean,separator:Boolean,padding:Boolean,tag:{type:String,default:"div"}},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),n=s(()=>Ch.includes(e.tag)?null:"list"),i=s(()=>"q-list"+(e.bordered===!0?" q-list--bordered":"")+(e.dense===!0?" q-list--dense":"")+(e.separator===!0?" q-list--separator":"")+(r.value===!0?" q-list--dark":"")+(e.padding===!0?" q-list--padding":""));return()=>l(e.tag,{class:i.value,role:n.value},re(t.default))}});var nd=[34,37,40,33,39,38],wh=Object.keys(ri),rd=A({name:"QKnob",props:{...kt,...ri,modelValue:{type:Number,required:!0},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},tabindex:{type:[Number,String],default:0},disable:Boolean,readonly:Boolean},emits:["update:modelValue","change","dragValue"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,i=q(e.modelValue),a=q(!1),u=s(()=>isNaN(e.innerMin)===!0||e.innerMinisNaN(e.innerMax)===!0||e.innerMax>e.max?e.max:e.innerMax),f;function d(){i.value=e.modelValue===null?u.value:Je(e.modelValue,u.value,c.value),V(!0)}Y(()=>`${e.modelValue}|${u.value}|${c.value}`,d),d();let h=s(()=>e.disable===!1&&e.readonly===!1),g=s(()=>"q-knob non-selectable"+(h.value===!0?" q-knob--editable":e.disable===!0?" disabled":"")),m=s(()=>(String(e.step).trim().split(".")[1]||"").length),v=s(()=>e.step===0?1:e.step),x=s(()=>e.instantFeedback===!0||a.value===!0),y=n.platform.is.mobile===!0?s(()=>h.value===!0?{onClick:L}:{}):s(()=>h.value===!0?{onMousedown:$,onClick:L,onKeydown:D,onKeyup:E}:{}),k=s(()=>h.value===!0?{tabindex:e.tabindex}:{[`aria-${e.disable===!0?"disabled":"readonly"}`]:"true"}),S=s(()=>{let _={};return wh.forEach(F=>{_[F]=e[F]}),_});function b(_){_.isFinal?(B(_.evt,!0),a.value=!1):(_.isFirst&&(C(),a.value=!0),B(_.evt))}let p=s(()=>[[Rt,b,void 0,{prevent:!0,stop:!0,mouse:!0}]]);function C(){let{top:_,left:F,width:I,height:j}=r.$el.getBoundingClientRect();f={top:_+j/2,left:F+I/2}}function $(_){C(),B(_)}function L(_){C(),B(_,!0)}function D(_){if(!nd.includes(_.keyCode))return;ke(_);let F=([34,33].includes(_.keyCode)?10:1)*v.value,I=[34,37,40].includes(_.keyCode)?-F:F;i.value=Je(parseFloat((i.value+I).toFixed(m.value)),u.value,c.value),V()}function B(_,F){let I=_t(_),j=Math.abs(I.top-f.top),W=Math.sqrt(j**2+Math.abs(I.left-f.left)**2),ee=Math.asin(j/W)*(180/Math.PI);I.top=v.value/2?(H<0?-1:1)*v.value:0),fe=parseFloat(fe.toFixed(m.value))}fe=Je(fe,u.value,c.value),o("dragValue",fe),i.value!==fe&&(i.value=fe),V(F)}function E(_){nd.includes(_.keyCode)&&V(!0)}function V(_){e.modelValue!==i.value&&o("update:modelValue",i.value),_===!0&&o("change",i.value)}let M=Vo(e);function T(){return l("input",M.value)}return()=>{let _={class:g.value,role:"slider","aria-valuemin":u.value,"aria-valuemax":c.value,"aria-valuenow":e.modelValue,...k.value,...S.value,value:i.value,instantFeedback:x.value,...y.value},F={default:t.default};return h.value===!0&&e.name!==void 0&&(F.internal=T),Mt(Tr,_,F,"knob",h.value,()=>p.value)}}});var{passive:id}=Ze,kh=["both","horizontal","vertical"],zr=A({name:"QScrollObserver",props:{axis:{type:String,validator:e=>kh.includes(e),default:"vertical"},debounce:[String,Number],scrollTarget:eo},emits:["scroll"],setup(e,{emit:t}){let o={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}},r=null,n,i;Y(()=>e.scrollTarget,()=>{c(),u()});function a(){r!==null&&r();let h=Math.max(0,to(n)),g=sn(n),m={top:h-o.position.top,left:g-o.position.left};if(e.axis==="vertical"&&m.top===0||e.axis==="horizontal"&&m.left===0)return;let v=Math.abs(m.top)>=Math.abs(m.left)?m.top<0?"up":"down":m.left<0?"left":"right";o.position={top:h,left:g},o.directionChanged=o.direction!==v,o.delta=m,o.directionChanged===!0&&(o.direction=v,o.inflectionPoint=o.position),t("scroll",{...o})}function u(){n=Bt(i,e.scrollTarget),n.addEventListener("scroll",f,id),f(!0)}function c(){n!==void 0&&(n.removeEventListener("scroll",f,id),n=void 0)}function f(h){if(h===!0||e.debounce===0||e.debounce==="0")a();else if(r===null){let[g,m]=e.debounce?[setTimeout(a,e.debounce),clearTimeout]:[requestAnimationFrame(a),cancelAnimationFrame];r=()=>{m(g),r=null}}}let{proxy:d}=K();return Y(()=>d.$q.lang.rtl,a),je(()=>{i=d.$el.parentNode,u()}),ye(()=>{r!==null&&r(),c()}),Object.assign(d,{trigger:f,getPosition:()=>o}),Ye}});var ad=A({name:"QLayout",props:{container:Boolean,view:{type:String,default:"hhh lpr fff",validator:e=>/^(h|l)h(h|r) lpr (f|l)f(f|r)$/.test(e.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=q(null),i=q(r.screen.height),a=q(e.container===!0?0:r.screen.width),u=q({position:0,direction:"down",inflectionPoint:0}),c=q(0),f=q(xt.value===!0?0:kn()),d=s(()=>"q-layout q-layout--"+(e.container===!0?"containerized":"standard")),h=s(()=>e.container===!1?{minHeight:r.screen.height+"px"}:null),g=s(()=>f.value!==0?{[r.lang.rtl===!0?"left":"right"]:`${f.value}px`}:null),m=s(()=>f.value!==0?{[r.lang.rtl===!0?"right":"left"]:0,[r.lang.rtl===!0?"left":"right"]:`-${f.value}px`,width:`calc(100% + ${f.value}px)`}:null);function v(p){if(e.container===!0||document.qScrollPrevented!==!0){let C={position:p.position.top,direction:p.direction,directionChanged:p.directionChanged,inflectionPoint:p.inflectionPoint.top,delta:p.delta.top};u.value=C,e.onScroll!==void 0&&o("scroll",C)}}function x(p){let{height:C,width:$}=p,L=!1;i.value!==C&&(L=!0,i.value=C,e.onScrollHeight!==void 0&&o("scrollHeight",C),k()),a.value!==$&&(L=!0,a.value=$),L===!0&&e.onResize!==void 0&&o("resize",p)}function y({height:p}){c.value!==p&&(c.value=p,k())}function k(){if(e.container===!0){let p=i.value>c.value?kn():0;f.value!==p&&(f.value=p)}}let S=null,b={instances:{},view:s(()=>e.view),isContainer:s(()=>e.container),rootRef:n,height:i,containerHeight:c,scrollbarWidth:f,totalWidth:s(()=>a.value+f.value),rows:s(()=>{let p=e.view.toLowerCase().split(" ");return{top:p[0].split(""),middle:p[1].split(""),bottom:p[2].split("")}}),header:Uo({size:0,offset:0,space:!1}),right:Uo({size:300,offset:0,space:!1}),footer:Uo({size:0,offset:0,space:!1}),left:Uo({size:300,offset:0,space:!1}),scroll:u,animate(){S!==null?clearTimeout(S):document.body.classList.add("q-body--layout-animate"),S=setTimeout(()=>{S=null,document.body.classList.remove("q-body--layout-animate")},155)},update(p,C,$){b[p][C]=$}};if(jt(Jt,b),kn()>0){let $=function(){p=null,C.classList.remove("hide-scrollbar")},L=function(){if(p===null){if(C.scrollHeight>r.screen.height)return;C.classList.add("hide-scrollbar")}else clearTimeout(p);p=setTimeout($,300)},D=function(B){p!==null&&B==="remove"&&(clearTimeout(p),$()),window[`${B}EventListener`]("resize",L)},p=null,C=document.body;Y(()=>e.container!==!0?"add":"remove",D),e.container!==!0&&D("add"),Qn(()=>{D("remove")})}return()=>{let p=Xe(t.default,[l(zr,{onScroll:v}),l(oo,{onResize:x})]),C=l("div",{class:d.value,style:h.value,ref:e.container===!0?void 0:n,tabindex:-1},p);return e.container===!0?l("div",{class:"q-layout-container overflow-hidden",ref:n},[l(oo,{onResize:y}),l("div",{class:"absolute-full",style:g.value},[l("div",{class:"scroll",style:m.value},[C])])]):C}}});var qh=["horizontal","vertical","cell","none"],Ia=A({name:"QMarkupTable",props:{...Se,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,wrapCells:Boolean,separator:{type:String,default:"horizontal",validator:e=>qh.includes(e)}},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),n=s(()=>`q-markup-table q-table__container q-table__card q-table--${e.separator}-separator`+(r.value===!0?" q-table--dark q-table__card--dark q-dark":"")+(e.dense===!0?" q-table--dense":"")+(e.flat===!0?" q-table--flat":"")+(e.bordered===!0?" q-table--bordered":"")+(e.square===!0?" q-table--square":"")+(e.wrapCells===!1?" q-table--no-wrap":""));return()=>l("div",{class:n.value},[l("table",{class:"q-table"},re(t.default))])}});var ld=A({name:"QNoSsr",props:{tag:{type:String,default:"div"},placeholder:String},setup(e,{slots:t}){let{isHydrated:o}=Mr();return()=>{if(o.value===!0){let i=re(t.default);return i===void 0?i:i.length>1?l(e.tag,{},i):i[0]}let r={class:"q-no-ssr-placeholder"},n=re(t.placeholder);if(n!==void 0)return n.length>1?l(e.tag,r,n):n[0];if(e.placeholder!==void 0)return l(e.tag,r,e.placeholder)}}});var Th=()=>l("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[l("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),l("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]),Ha=A({name:"QRadio",props:{...Se,...Ft,...kt,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),n=xe(e,r.$q),i=Dt(e,na),a=q(null),{refocusTargetEl:u,refocusTarget:c}=oa(e,a),f=s(()=>co(e.modelValue)===co(e.val)),d=s(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(e.disable===!0?" disabled":"")+(n.value===!0?" q-radio--dark":"")+(e.dense===!0?" q-radio--dense":"")+(e.leftLabel===!0?" reverse":"")),h=s(()=>{let p=e.color!==void 0&&(e.keepColor===!0||f.value===!0)?` text-${e.color}`:"";return`q-radio__inner relative-position q-radio__inner--${f.value===!0?"truthy":"falsy"}${p}`}),g=s(()=>(f.value===!0?e.checkedIcon:e.uncheckedIcon)||null),m=s(()=>e.disable===!0?-1:e.tabindex||0),v=s(()=>{let p={type:"radio"};return e.name!==void 0&&Object.assign(p,{".checked":f.value===!0,"^checked":f.value===!0?"checked":void 0,name:e.name,value:e.val}),p}),x=Xt(v);function y(p){p!==void 0&&(ke(p),c(p)),e.disable!==!0&&f.value!==!0&&o("update:modelValue",e.val,p)}function k(p){(p.keyCode===13||p.keyCode===32)&&ke(p)}function S(p){(p.keyCode===13||p.keyCode===32)&&y(p)}Object.assign(r,{set:y});let b=Th();return()=>{let p=g.value!==null?[l("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[l(Re,{class:"q-radio__icon",name:g.value})])]:[b];e.disable!==!0&&x(p,"unshift"," q-radio__native q-ma-none q-pa-none");let C=[l("div",{class:h.value,style:i.value,"aria-hidden":"true"},p)];u.value!==null&&C.push(u.value);let $=e.label!==void 0?Xe(t.default,[e.label]):re(t.default);return $!==void 0&&C.push(l("div",{class:"q-radio__label q-anchor--skip"},$)),l("div",{ref:a,class:d.value,tabindex:m.value,role:"radio","aria-label":e.label,"aria-checked":f.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:y,onKeydown:k,onKeyup:S},C)}}});var Qa=A({name:"QToggle",props:{...ra,icon:String,iconColor:String},emits:ia,setup(e){function t(o,r){let n=s(()=>(o.value===!0?e.checkedIcon:r.value===!0?e.indeterminateIcon:e.uncheckedIcon)||e.icon),i=s(()=>o.value===!0?e.iconColor:null);return()=>[l("div",{class:"q-toggle__track"}),l("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},n.value!==void 0?[l(Re,{name:n.value,color:i.value})]:void 0)]}return aa("toggle",t)}});var ud={radio:Ha,checkbox:zo,toggle:Qa},Mh=Object.keys(ud);function du(e,t){if(typeof e=="function")return e;let o=e!==void 0?e:t;return r=>r[o]}var Na=A({name:"QOptionGroup",props:{...Se,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(ct),default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],name:String,type:{type:String,default:"radio",validator:e=>Mh.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:o}){let{proxy:{$q:r}}=K(),n=Array.isArray(e.modelValue);e.type==="radio"?n===!0&&console.error("q-option-group: model should not be array"):n===!1&&console.error("q-option-group: model should be array in your case");let i=xe(e,r),a=s(()=>ud[e.type]),u=s(()=>du(e.optionValue,"value")),c=s(()=>du(e.optionLabel,"label")),f=s(()=>du(e.optionDisable,"disable")),d=s(()=>e.options.map(v=>({val:u.value(v),name:v.name===void 0?e.name:v.name,disable:e.disable||f.value(v),leftLabel:v.leftLabel===void 0?e.leftLabel:v.leftLabel,color:v.color===void 0?e.color:v.color,checkedIcon:v.checkedIcon,uncheckedIcon:v.uncheckedIcon,dark:v.dark===void 0?i.value:v.dark,size:v.size===void 0?e.size:v.size,dense:e.dense,keepColor:v.keepColor===void 0?e.keepColor:v.keepColor}))),h=s(()=>"q-option-group q-gutter-x-sm"+(e.inline===!0?" q-option-group--inline":"")),g=s(()=>{let v={role:"group"};return e.type==="radio"&&(v.role="radiogroup",e.disable===!0&&(v["aria-disabled"]="true")),v});function m(v){t("update:modelValue",v)}return()=>l("div",{class:h.value,...g.value},e.options.map((v,x)=>{let y=o["label-"+x]!==void 0?()=>o["label-"+x](v):o.label!==void 0?()=>o.label(v):void 0;return l("div",[l(a.value,{label:y===void 0?c.value(v):null,modelValue:e.modelValue,"onUpdate:modelValue":m,...d.value[x]},y)])}))}});var sd=A({name:"QPage",props:{padding:Boolean,styleFn:Function},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=ht(Jt,Ge);if(r===Ge)return console.error("QPage needs to be a deep child of QLayout"),Ge;if(ht($i,Ge)===Ge)return console.error("QPage needs to be child of QPageContainer"),Ge;let i=s(()=>{let u=(r.header.space===!0?r.header.size:0)+(r.footer.space===!0?r.footer.size:0);if(typeof e.styleFn=="function"){let c=r.isContainer.value===!0?r.containerHeight.value:o.screen.height;return e.styleFn(u,c)}return{minHeight:r.isContainer.value===!0?r.containerHeight.value-u+"px":o.screen.height===0?u!==0?`calc(100vh - ${u}px)`:"100vh":o.screen.height-u+"px"}}),a=s(()=>`q-page${e.padding===!0?" q-layout-padding":""}`);return()=>l("main",{class:a.value,style:i.value},re(t.default))}});var cd=A({name:"QPageContainer",setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=ht(Jt,Ge);if(r===Ge)return console.error("QPageContainer needs to be child of QLayout"),Ge;jt($i,!0);let n=s(()=>{let i={};return r.header.space===!0&&(i.paddingTop=`${r.header.size}px`),r.right.space===!0&&(i[`padding${o.lang.rtl===!0?"Left":"Right"}`]=`${r.right.size}px`),r.footer.space===!0&&(i.paddingBottom=`${r.footer.size}px`),r.left.space===!0&&(i[`padding${o.lang.rtl===!0?"Right":"Left"}`]=`${r.left.size}px`),i});return()=>l("div",{class:"q-page-container",style:n.value},re(t.default))}});var vi={position:{type:String,default:"bottom-right",validator:e=>["top-right","top-left","bottom-right","bottom-left","top","right","bottom","left"].includes(e)},offset:{type:Array,validator:e=>e.length===2},expand:Boolean};function ja(){let{props:e,proxy:{$q:t}}=K(),o=ht(Jt,Ge);if(o===Ge)return console.error("QPageSticky needs to be child of QLayout"),Ge;let r=s(()=>{let h=e.position;return{top:h.indexOf("top")!==-1,right:h.indexOf("right")!==-1,bottom:h.indexOf("bottom")!==-1,left:h.indexOf("left")!==-1,vertical:h==="top"||h==="bottom",horizontal:h==="left"||h==="right"}}),n=s(()=>o.header.offset),i=s(()=>o.right.offset),a=s(()=>o.footer.offset),u=s(()=>o.left.offset),c=s(()=>{let h=0,g=0,m=r.value,v=t.lang.rtl===!0?-1:1;m.top===!0&&n.value!==0?g=`${n.value}px`:m.bottom===!0&&a.value!==0&&(g=`${-a.value}px`),m.left===!0&&u.value!==0?h=`${v*u.value}px`:m.right===!0&&i.value!==0&&(h=`${-v*i.value}px`);let x={transform:`translate(${h}, ${g})`};return e.offset&&(x.margin=`${e.offset[1]}px ${e.offset[0]}px`),m.vertical===!0?(u.value!==0&&(x[t.lang.rtl===!0?"right":"left"]=`${u.value}px`),i.value!==0&&(x[t.lang.rtl===!0?"left":"right"]=`${i.value}px`)):m.horizontal===!0&&(n.value!==0&&(x.top=`${n.value}px`),a.value!==0&&(x.bottom=`${a.value}px`)),x}),f=s(()=>`q-page-sticky row flex-center fixed-${e.position} q-page-sticky--${e.expand===!0?"expand":"shrink"}`);function d(h){let g=re(h.default);return l("div",{class:f.value,style:c.value},e.expand===!0?g:[l("div",g)])}return{$layout:o,getStickyContent:d}}var dd=A({name:"QPageScroller",props:{...vi,scrollOffset:{type:Number,default:1e3},reverse:Boolean,duration:{type:Number,default:300},offset:{...vi.offset,default:()=>[18,18]}},emits:["click"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),{$layout:n,getStickyContent:i}=ja(),a=q(null),u,c=s(()=>n.height.value-(n.isContainer.value===!0?n.containerHeight.value:r.screen.height));function f(){return e.reverse===!0?c.value-n.scroll.value.position>e.scrollOffset:n.scroll.value.position>e.scrollOffset}let d=q(f());function h(){let y=f();d.value!==y&&(d.value=y)}function g(){e.reverse===!0?u===void 0&&(u=Y(c,h)):m()}Y(n.scroll,h),Y(()=>e.reverse,g);function m(){u!==void 0&&(u(),u=void 0)}function v(y){let k=Bt(n.isContainer.value===!0?a.value:n.rootRef.value);Bo(k,e.reverse===!0?n.height.value:0,e.duration),o("click",y)}function x(){return d.value===!0?l("div",{ref:a,class:"q-page-scroller",onClick:v},i(t)):null}return g(),ye(m),()=>l(st,{name:"q-transition--fade"},x)}});var fd=A({name:"QPageSticky",props:vi,setup(e,{slots:t}){let{getStickyContent:o}=ja();return()=>o(t)}});function Ua(e,t){return[!0,!1].includes(e)?e:t}var md=A({name:"QPagination",props:{...Se,modelValue:{type:Number,required:!0},min:{type:[Number,String],default:1},max:{type:[Number,String],required:!0},maxPages:{type:[Number,String],default:0,validator:e=>(typeof e=="string"?parseInt(e,10):e)>=0},inputStyle:[Array,String,Object],inputClass:[Array,String,Object],size:String,disable:Boolean,input:Boolean,iconPrev:String,iconNext:String,iconFirst:String,iconLast:String,toFn:Function,boundaryLinks:{type:Boolean,default:null},boundaryNumbers:{type:Boolean,default:null},directionLinks:{type:Boolean,default:null},ellipses:{type:Boolean,default:null},ripple:{type:[Boolean,Object],default:null},round:Boolean,rounded:Boolean,flat:Boolean,outline:Boolean,unelevated:Boolean,push:Boolean,glossy:Boolean,color:{type:String,default:"primary"},textColor:String,activeDesign:{type:String,default:"",values:e=>e===""||$l.includes(e)},activeColor:String,activeTextColor:String,gutter:String,padding:{type:String,default:"3px 2px"}},emits:["update:modelValue"],setup(e,{emit:t}){let{proxy:o}=K(),{$q:r}=o,n=xe(e,r),i=s(()=>parseInt(e.min,10)),a=s(()=>parseInt(e.max,10)),u=s(()=>parseInt(e.maxPages,10)),c=s(()=>v.value+" / "+a.value),f=s(()=>Ua(e.boundaryLinks,e.input)),d=s(()=>Ua(e.boundaryNumbers,!e.input)),h=s(()=>Ua(e.directionLinks,e.input)),g=s(()=>Ua(e.ellipses,!e.input)),m=q(null),v=s({get:()=>e.modelValue,set:T=>{if(T=parseInt(T,10),e.disable||isNaN(T))return;let _=Je(T,i.value,a.value);e.modelValue!==_&&t("update:modelValue",_)}});Y(()=>`${i.value}|${a.value}`,()=>{v.value=e.modelValue});let x=s(()=>"q-pagination row no-wrap items-center"+(e.disable===!0?" disabled":"")),y=s(()=>e.gutter in Zr?`${Zr[e.gutter]}px`:e.gutter||null),k=s(()=>y.value!==null?`--q-pagination-gutter-parent:-${y.value};--q-pagination-gutter-child:${y.value}`:null),S=s(()=>{let T=[e.iconFirst||r.iconSet.pagination.first,e.iconPrev||r.iconSet.pagination.prev,e.iconNext||r.iconSet.pagination.next,e.iconLast||r.iconSet.pagination.last];return r.lang.rtl===!0?T.reverse():T}),b=s(()=>({"aria-disabled":e.disable===!0?"true":"false",role:"navigation"})),p=s(()=>Ii(e,"flat")),C=s(()=>({[p.value]:!0,round:e.round,rounded:e.rounded,padding:e.padding,color:e.color,textColor:e.textColor,size:e.size,ripple:e.ripple!==null?e.ripple:!0})),$=s(()=>{let T={[p.value]:!1};return e.activeDesign!==""&&(T[e.activeDesign]=!0),T}),L=s(()=>({...$.value,color:e.activeColor||e.color,textColor:e.activeTextColor||e.textColor})),D=s(()=>{let T=Math.max(u.value,1+(g.value?2:0)+(d.value?2:0)),_={pgFrom:i.value,pgTo:a.value,ellipsesStart:!1,ellipsesEnd:!1,boundaryStart:!1,boundaryEnd:!1,marginalStyle:{minWidth:`${Math.max(2,String(a.value).length)}em`}};return u.value&&Ti.value+(d.value?1:0)&&(_.ellipsesStart=!0,_.pgFrom++),d.value&&(_.boundaryEnd=!0,_.pgTo--),g.value&&_.pgTo{function T(){v.value=m.value,m.value=null}return{"onUpdate:modelValue":_=>{m.value=_},onKeyup:_=>{Tt(_,13)===!0&&T()},onBlur:T}});function M(T,_,F){let I={"aria-label":_,"aria-current":"false",...C.value,...T};return F===!0&&Object.assign(I,{"aria-current":"true",...L.value}),_!==void 0&&(e.toFn!==void 0?I.to=e.toFn(_):I.onClick=()=>{B(_)}),l(ze,I)}return Object.assign(o,{set:B,setByOffset:E}),()=>{let T=[],_=[],F;if(f.value===!0&&(T.push(M({key:"bls",disable:e.disable||e.modelValue<=i.value,icon:S.value[0]},i.value)),_.unshift(M({key:"ble",disable:e.disable||e.modelValue>=a.value,icon:S.value[3]},a.value))),h.value===!0&&(T.push(M({key:"bdp",disable:e.disable||e.modelValue<=i.value,icon:S.value[1]},e.modelValue-1)),_.unshift(M({key:"bdn",disable:e.disable||e.modelValue>=a.value,icon:S.value[2]},e.modelValue+1))),e.input!==!0){F=[];let{pgFrom:I,pgTo:j,marginalStyle:W}=D.value;if(D.value.boundaryStart===!0){let ee=i.value===e.modelValue;T.push(M({key:"bns",style:W,disable:e.disable,label:i.value},i.value,ee))}if(D.value.boundaryEnd===!0){let ee=a.value===e.modelValue;_.unshift(M({key:"bne",style:W,disable:e.disable,label:a.value},a.value,ee))}D.value.ellipsesStart===!0&&T.push(M({key:"bes",style:W,disable:e.disable,label:"\u2026",ripple:!1},I-1)),D.value.ellipsesEnd===!0&&_.unshift(M({key:"bee",style:W,disable:e.disable,label:"\u2026",ripple:!1},j+1));for(let ee=I;ee<=j;ee++)F.push(M({key:`bpg${ee}`,style:W,disable:e.disable,label:ee},ee,ee===e.modelValue))}return l("div",{class:x.value,...b.value},[l("div",{class:"q-pagination__content row no-wrap items-center",style:k.value},[...T,e.input===!0?l(Vr,{class:"inline",style:{width:`${c.value.length/1.5}em`},type:"number",dense:!0,value:m.value,disable:e.disable,dark:n.value,borderless:!0,inputClass:e.inputClass,inputStyle:e.inputStyle,placeholder:c.value,min:i.value,max:a.value,...V.value}):l("div",{class:"q-pagination__middle row justify-center"},F),..._])])}}});function Or(e){let t=!1,o,r;function n(){r=arguments,t!==!0&&(t=!0,o=window.requestAnimationFrame(()=>{e.apply(this,r),r=void 0,t=!1}))}return n.cancel=()=>{window.cancelAnimationFrame(o),t=!1},n}var{passive:Ka}=Ze,vd=A({name:"QParallax",props:{src:String,height:{type:Number,default:500},speed:{type:Number,default:1,validator:e=>e>=0&&e<=1},scrollTarget:eo,onScroll:Function},setup(e,{slots:t,emit:o}){let r=q(0),n=q(null),i=q(null),a=q(null),u,c,f,d,h,g;Y(()=>e.height,()=>{u===!0&&v()}),Y(()=>e.scrollTarget,()=>{u===!0&&(S(),k())});let m=b=>{r.value=b,e.onScroll!==void 0&&o("scroll",b)};function v(){let b,p,C;g===window?(b=0,C=p=window.innerHeight):(b=_n(g).top,p=Ao(g),C=b+p);let $=_n(n.value).top,L=$+e.height;if(h!==void 0||L>b&&${c.style.transform=`translate3d(-50%,${Math.round(b)}px,0)`};function y(){f=c.naturalHeight||c.videoHeight||Ao(c),u===!0&&v()}function k(){u=!0,g=Bt(n.value,e.scrollTarget),g.addEventListener("scroll",v,Ka),window.addEventListener("resize",d,Ka),v()}function S(){u===!0&&(u=!1,g.removeEventListener("scroll",v,Ka),window.removeEventListener("resize",d,Ka),g=void 0,x.cancel(),m.cancel(),d.cancel())}return je(()=>{x=Or(x),m=Or(m),d=Or(y),c=t.media!==void 0?i.value.children[0]:a.value,c.onload=c.onloadstart=c.loadedmetadata=y,y(),c.style.display="initial",window.IntersectionObserver!==void 0?(h=new IntersectionObserver(b=>{(b[0].isIntersecting===!0?k:S)()}),h.observe(n.value)):k()}),ye(()=>{S(),h!==void 0&&h.disconnect(),c.onload=c.onloadstart=c.loadedmetadata=null}),()=>l("div",{ref:n,class:"q-parallax",style:{height:`${e.height}px`}},[l("div",{ref:i,class:"q-parallax__media absolute-full"},t.media!==void 0?t.media():[l("img",{ref:a,src:e.src})]),l("div",{class:"q-parallax__content absolute-full column flex-center"},t.content!==void 0?t.content({percentScrolled:r.value}):re(t.default))])}});function en(e,t=new WeakMap){if(Object(e)!==e)return e;if(t.has(e))return t.get(e);let o=e instanceof Date?new Date(e):e instanceof RegExp?new RegExp(e.source,e.flags):e instanceof Set?new Set:e instanceof Map?new Map:typeof e.constructor!="function"?Object.create(null):e.prototype!==void 0&&typeof e.prototype.constructor=="function"?e:new e.constructor;if(typeof e.constructor=="function"&&typeof e.valueOf=="function"){let r=e.valueOf();if(Object(r)!==r){let n=new e.constructor(r);return t.set(e,n),n}}return t.set(e,o),e instanceof Set?e.forEach(r=>{o.add(en(r,t))}):e instanceof Map&&e.forEach((r,n)=>{o.set(n,en(r,t))}),Object.assign(o,...Object.keys(e).map(r=>({[r]:en(e[r],t)})))}var gd=A({name:"QPopupEdit",props:{modelValue:{required:!0},title:String,buttons:Boolean,labelSet:String,labelCancel:String,color:{type:String,default:"primary"},validate:{type:Function,default:()=>!0},autoSave:Boolean,cover:{type:Boolean,default:!0},disable:Boolean},emits:["update:modelValue","save","cancel","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,i=q(null),a=q(""),u=q(""),c=!1,f=s(()=>ft({initialValue:a.value,validate:e.validate,set:d,cancel:h,updatePosition:g},"value",()=>u.value,p=>{u.value=p}));function d(){e.validate(u.value)!==!1&&(m()===!0&&(o("save",u.value,a.value),o("update:modelValue",u.value)),v())}function h(){m()===!0&&o("cancel",u.value,a.value),v()}function g(){Ee(()=>{i.value.updatePosition()})}function m(){return Wt(u.value,a.value)===!1}function v(){c=!0,i.value.hide()}function x(){c=!1,a.value=en(e.modelValue),u.value=en(e.modelValue),o("beforeShow")}function y(){o("show")}function k(){c===!1&&m()===!0&&(e.autoSave===!0&&e.validate(u.value)===!0?(o("save",u.value,a.value),o("update:modelValue",u.value)):o("cancel",u.value,a.value)),o("beforeHide")}function S(){o("hide")}function b(){let p=t.default!==void 0?[].concat(t.default(f.value)):[];return e.title&&p.unshift(l("div",{class:"q-dialog__title q-mt-sm q-mb-sm"},e.title)),e.buttons===!0&&p.push(l("div",{class:"q-popup-edit__buttons row justify-center no-wrap"},[l(ze,{flat:!0,color:e.color,label:e.labelCancel||n.lang.label.cancel,onClick:h}),l(ze,{flat:!0,color:e.color,label:e.labelSet||n.lang.label.set,onClick:d})])),p}return Object.assign(r,{set:d,cancel:h,show(p){i.value!==null&&i.value.show(p)},hide(p){i.value!==null&&i.value.hide(p)},updatePosition:g}),()=>{if(e.disable!==!0)return l(Lo,{ref:i,class:"q-popup-edit",cover:e.cover,onBeforeShow:x,onShow:y,onBeforeHide:k,onHide:S,onEscapeKey:h},b)}}});var hd=A({name:"QPopupProxy",props:{...Ni,breakpoint:{type:[String,Number],default:450}},emits:["show","hide"],setup(e,{slots:t,emit:o,attrs:r}){let{proxy:n}=K(),{$q:i}=n,a=q(!1),u=q(null),c=s(()=>parseInt(e.breakpoint,10)),{canShow:f}=nr({showing:a});function d(){return i.screen.widthh.value==="menu"?{maxHeight:"99vh"}:{});Y(()=>d(),x=>{a.value!==!0&&(h.value=x)});function m(x){a.value=!0,o("show",x)}function v(x){a.value=!1,h.value=d(),o("hide",x)}return Object.assign(n,{show(x){f(x)===!0&&u.value.show(x)},hide(x){u.value.hide(x)},toggle(x){u.value.toggle(x)}}),ft(n,"currentComponent",()=>({type:h.value,ref:u.value})),()=>{let x={ref:u,...g.value,...r,onShow:m,onHide:v},y;return h.value==="dialog"?y=Ho:(y=Lo,Object.assign(x,{target:e.target,contextMenu:e.contextMenu,noParentEvent:!0,separateClosePopup:!0})),l(y,x,t.default)}}});var Rh={xs:2,sm:4,md:6,lg:10,xl:14};function pd(e,t,o){return{transform:t===!0?`translateX(${o.lang.rtl===!0?"-":""}100%) scale3d(${-e},1,1)`:`scale3d(${e},1,1)`}}var Wa=A({name:"QLinearProgress",props:{...Se,...Ft,value:{type:Number,default:0},buffer:Number,color:String,trackColor:String,reverse:Boolean,stripe:Boolean,indeterminate:Boolean,query:Boolean,rounded:Boolean,animationSpeed:{type:[String,Number],default:2100},instantFeedback:Boolean},setup(e,{slots:t}){let{proxy:o}=K(),r=xe(e,o.$q),n=Dt(e,Rh),i=s(()=>e.indeterminate===!0||e.query===!0),a=s(()=>e.reverse!==e.query),u=s(()=>({...n.value!==null?n.value:{},"--q-linear-progress-speed":`${e.animationSpeed}ms`})),c=s(()=>"q-linear-progress"+(e.color!==void 0?` text-${e.color}`:"")+(e.reverse===!0||e.query===!0?" q-linear-progress--reverse":"")+(e.rounded===!0?" rounded-borders":"")),f=s(()=>pd(e.buffer!==void 0?e.buffer:1,a.value,o.$q)),d=s(()=>`with${e.instantFeedback===!0?"out":""}-transition`),h=s(()=>`q-linear-progress__track absolute-full q-linear-progress__track--${d.value} q-linear-progress__track--${r.value===!0?"dark":"light"}`+(e.trackColor!==void 0?` bg-${e.trackColor}`:"")),g=s(()=>pd(i.value===!0?1:e.value,a.value,o.$q)),m=s(()=>`q-linear-progress__model absolute-full q-linear-progress__model--${d.value} q-linear-progress__model--${i.value===!0?"in":""}determinate`),v=s(()=>({width:`${e.value*100}%`})),x=s(()=>`q-linear-progress__stripe absolute-${e.reverse===!0?"right":"left"} q-linear-progress__stripe--${d.value}`);return()=>{let y=[l("div",{class:h.value,style:f.value}),l("div",{class:m.value,style:g.value})];return e.stripe===!0&&i.value===!1&&y.push(l("div",{class:x.value,style:v.value})),l("div",{class:c.value,style:u.value,role:"progressbar","aria-valuemin":0,"aria-valuemax":1,"aria-valuenow":e.indeterminate===!0?void 0:e.value},Xe(t.default,y))}}});var Ir=40,fu=20,bd=A({name:"QPullToRefresh",props:{color:String,bgColor:String,icon:String,noMouse:Boolean,disable:Boolean,scrollTarget:eo},emits:["refresh"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,i=q("pull"),a=q(0),u=q(!1),c=q(-Ir),f=q(!1),d=q({}),h=s(()=>({opacity:a.value,transform:`translateY(${c.value}px) rotate(${a.value*360}deg)`})),g=s(()=>"q-pull-to-refresh__puller row flex-center"+(f.value===!0?" q-pull-to-refresh__puller--animating":"")+(e.bgColor!==void 0?` bg-${e.bgColor}`:""));function m($){if($.isFinal===!0){u.value===!0&&(u.value=!1,i.value==="pulled"?(i.value="refreshing",p({pos:fu}),y()):i.value==="pull"&&p({pos:-Ir,ratio:0}));return}if(f.value===!0||i.value==="refreshing")return!1;if($.isFirst===!0){if(to(S)!==0||$.direction!=="down")return u.value===!0&&(u.value=!1,i.value="pull",p({pos:-Ir,ratio:0})),!1;u.value=!0;let{top:B,left:E}=k.getBoundingClientRect();d.value={top:B+"px",left:E+"px",width:window.getComputedStyle(k).getPropertyValue("width")}}vt($.evt);let L=Math.min(140,Math.max(0,$.distance.y));c.value=L-Ir,a.value=Je(L/(fu+Ir),0,1);let D=c.value>fu?"pulled":"pull";i.value!==D&&(i.value=D)}let v=s(()=>{let $={down:!0};return e.noMouse!==!0&&($.mouse=!0),[[Rt,m,void 0,$]]}),x=s(()=>`q-pull-to-refresh__content${u.value===!0?" no-pointer-events":""}`);function y(){o("refresh",()=>{p({pos:-Ir,ratio:0},()=>{i.value="pull"})})}let k,S,b=null;function p({pos:$,ratio:L},D){f.value=!0,c.value=$,L!==void 0&&(a.value=L),b!==null&&clearTimeout(b),b=setTimeout(()=>{b=null,f.value=!1,D&&D()},300)}function C(){S=Bt(k,e.scrollTarget)}return Y(()=>e.scrollTarget,C),je(()=>{k=r.$el,C()}),ye(()=>{b!==null&&clearTimeout(b)}),Object.assign(r,{trigger:y,updateScrollTarget:C}),()=>{let $=[l("div",{class:x.value},re(t.default)),l("div",{class:"q-pull-to-refresh__puller-container fixed row flex-center no-pointer-events z-top",style:d.value},[l("div",{class:g.value,style:h.value},[i.value!=="refreshing"?l(Re,{name:e.icon||n.iconSet.pullToRefresh.icon,color:e.color,size:"32px"}):l(wt,{size:"24px",color:e.color})])])];return Mt("div",{class:"q-pull-to-refresh"},$,"main",e.disable===!1,()=>v.value)}}});var yn={MIN:0,RANGE:1,MAX:2},yd=A({name:"QRange",props:{...la,modelValue:{type:Object,default:()=>({min:null,max:null}),validator:e=>"min"in e&&"max"in e},dragRange:Boolean,dragOnlyRange:Boolean,leftLabelColor:String,leftLabelTextColor:String,rightLabelColor:String,rightLabelTextColor:String,leftLabelValue:[String,Number],rightLabelValue:[String,Number],leftThumbColor:String,rightThumbColor:String},emits:ua,setup(e,{emit:t}){let{proxy:{$q:o}}=K(),{state:r,methods:n}=sa({updateValue:D,updatePosition:E,getDragging:B,formAttrs:s(()=>({type:"hidden",name:e.name,value:`${e.modelValue.min}|${e.modelValue.max}`}))}),i=q(null),a=q(0),u=q(0),c=q({min:0,max:0});function f(){c.value.min=e.modelValue.min===null?r.innerMin.value:Je(e.modelValue.min,r.innerMin.value,r.innerMax.value),c.value.max=e.modelValue.max===null?r.innerMax.value:Je(e.modelValue.max,r.innerMin.value,r.innerMax.value)}Y(()=>`${e.modelValue.min}|${e.modelValue.max}|${r.innerMin.value}|${r.innerMax.value}`,f),f();let d=s(()=>n.convertModelToRatio(c.value.min)),h=s(()=>n.convertModelToRatio(c.value.max)),g=s(()=>r.active.value===!0?a.value:d.value),m=s(()=>r.active.value===!0?u.value:h.value),v=s(()=>{let M={[r.positionProp.value]:`${100*g.value}%`,[r.sizeProp.value]:`${100*(m.value-g.value)}%`};return e.selectionImg!==void 0&&(M.backgroundImage=`url(${e.selectionImg}) !important`),M}),x=s(()=>{if(r.editable.value!==!0)return{};if(o.platform.is.mobile===!0)return{onClick:n.onMobileClick};let M={onMousedown:n.onActivate};return(e.dragRange===!0||e.dragOnlyRange===!0)&&Object.assign(M,{onFocus:()=>{r.focus.value="both"},onBlur:n.onBlur,onKeydown:V,onKeyup:n.onKeyup}),M});function y(M){return o.platform.is.mobile!==!0&&r.editable.value===!0&&e.dragOnlyRange!==!0?{onFocus:()=>{r.focus.value=M},onBlur:n.onBlur,onKeydown:V,onKeyup:n.onKeyup}:{}}let k=s(()=>e.dragOnlyRange!==!0?r.tabindex.value:null),S=s(()=>o.platform.is.mobile!==!0&&(e.dragRange||e.dragOnlyRange===!0)?r.tabindex.value:null),b=q(null),p=s(()=>y("min")),C=n.getThumbRenderFn({focusValue:"min",getNodeData:()=>({ref:b,key:"tmin",...p.value,tabindex:k.value}),ratio:g,label:s(()=>e.leftLabelValue!==void 0?e.leftLabelValue:c.value.min),thumbColor:s(()=>e.leftThumbColor||e.thumbColor||e.color),labelColor:s(()=>e.leftLabelColor||e.labelColor),labelTextColor:s(()=>e.leftLabelTextColor||e.labelTextColor)}),$=s(()=>y("max")),L=n.getThumbRenderFn({focusValue:"max",getNodeData:()=>({...$.value,key:"tmax",tabindex:k.value}),ratio:m,label:s(()=>e.rightLabelValue!==void 0?e.rightLabelValue:c.value.max),thumbColor:s(()=>e.rightThumbColor||e.thumbColor||e.color),labelColor:s(()=>e.rightLabelColor||e.labelColor),labelTextColor:s(()=>e.rightLabelTextColor||e.labelTextColor)});function D(M){(c.value.min!==e.modelValue.min||c.value.max!==e.modelValue.max)&&t("update:modelValue",{...c.value}),M===!0&&t("change",{...c.value})}function B(M){let{left:T,top:_,width:F,height:I}=i.value.getBoundingClientRect(),j=e.dragOnlyRange===!0?0:e.vertical===!0?b.value.offsetHeight/(2*I):b.value.offsetWidth/(2*F),W={left:T,top:_,width:F,height:I,valueMin:c.value.min,valueMax:c.value.max,ratioMin:d.value,ratioMax:h.value},ee=n.getDraggingRatio(M,W);return e.dragOnlyRange!==!0&&ee=T.ratioMin?(_={minR:T.ratioMin,maxR:F,min:T.valueMin,max:I},r.focus.value="max"):(_={minR:F,maxR:T.ratioMin,min:I,max:T.valueMin},r.focus.value="min");break;case yn.RANGE:let j=F-T.offsetRatio,W=Je(T.ratioMin+j,r.innerMinRatio.value,r.innerMaxRatio.value-T.rangeRatio),ee=I-T.offsetModel,fe=Je(T.valueMin+ee,r.innerMin.value,r.innerMax.value-T.rangeValue);_={minR:W,maxR:W+T.rangeRatio,min:r.roundValueFn.value(fe),max:r.roundValueFn.value(fe+T.rangeValue)},r.focus.value="both";break}c.value=c.value.min===null||c.value.max===null?{min:_.min||e.min,max:_.max||e.max}:{min:_.min,max:_.max},e.snap!==!0||e.step===0?(a.value=_.minR,u.value=_.maxR):(a.value=n.convertModelToRatio(c.value.min),u.value=n.convertModelToRatio(c.value.max))}function V(M){if(!ii.includes(M.keyCode))return;ke(M);let T=([34,33].includes(M.keyCode)?10:1)*r.keyStep.value,_=([34,37,40].includes(M.keyCode)?-1:1)*(r.isReversed.value===!0?-1:1)*(e.vertical===!0?-1:1)*T;if(r.focus.value==="both"){let F=c.value.max-c.value.min,I=Je(r.roundValueFn.value(c.value.min+_),r.innerMin.value,r.innerMax.value-F);c.value={min:I,max:r.roundValueFn.value(I+F)}}else{if(r.focus.value===!1)return;{let F=r.focus.value;c.value={...c.value,[F]:Je(r.roundValueFn.value(c.value[F]+_),F==="min"?r.innerMin.value:c.value.min,F==="max"?r.innerMax.value:c.value.max)}}}D()}return()=>{let M=n.getContent(v,S,x,T=>{T.push(C(),L())});return l("div",{ref:i,class:"q-range "+r.classes.value+(e.modelValue.min===null||e.modelValue.max===null?" q-slider--no-value":""),...r.attributes.value,"aria-valuenow":e.modelValue.min+"|"+e.modelValue.max},M)}}});var Sd=A({name:"QRating",props:{...Ft,...kt,modelValue:{type:Number,required:!0},max:{type:[String,Number],default:5},icon:[String,Array],iconHalf:[String,Array],iconSelected:[String,Array],iconAriaLabel:[String,Array],color:[String,Array],colorHalf:[String,Array],colorSelected:[String,Array],noReset:Boolean,noDimming:Boolean,readonly:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=Dt(e),i=Vo(e),a=Xt(i),u=q(0),c={},f=s(()=>e.readonly!==!0&&e.disable!==!0),d=s(()=>`q-rating row inline items-center q-rating--${f.value===!0?"":"non-"}editable`+(e.noDimming===!0?" q-rating--no-dimming":"")+(e.disable===!0?" disabled":"")+(e.color!==void 0&&Array.isArray(e.color)===!1?` text-${e.color}`:"")),h=s(()=>{let b=Array.isArray(e.icon)===!0?e.icon.length:0,p=Array.isArray(e.iconSelected)===!0?e.iconSelected.length:0,C=Array.isArray(e.iconHalf)===!0?e.iconHalf.length:0,$=Array.isArray(e.color)===!0?e.color.length:0,L=Array.isArray(e.colorSelected)===!0?e.colorSelected.length:0,D=Array.isArray(e.colorHalf)===!0?e.colorHalf.length:0;return{iconLen:b,icon:b>0?e.icon[b-1]:e.icon,selIconLen:p,selIcon:p>0?e.iconSelected[p-1]:e.iconSelected,halfIconLen:C,halfIcon:C>0?e.iconHalf[p-1]:e.iconHalf,colorLen:$,color:$>0?e.color[$-1]:e.color,selColorLen:L,selColor:L>0?e.colorSelected[L-1]:e.colorSelected,halfColorLen:D,halfColor:D>0?e.colorHalf[D-1]:e.colorHalf}}),g=s(()=>{if(typeof e.iconAriaLabel=="string"){let b=e.iconAriaLabel.length!==0?`${e.iconAriaLabel} `:"";return p=>`${b}${p}`}if(Array.isArray(e.iconAriaLabel)===!0){let b=e.iconAriaLabel.length;if(b>0)return p=>e.iconAriaLabel[Math.min(p,b)-1]}return(b,p)=>`${p} ${b}`}),m=s(()=>{let b=[],p=h.value,C=Math.ceil(e.modelValue),$=f.value===!0?0:null,L=e.iconHalf===void 0||C===e.modelValue?-1:C;for(let D=1;D<=e.max;D++){let B=u.value===0&&e.modelValue>=D||u.value>0&&u.value>=D,E=L===D&&u.value0&&(E===!0?C:e.modelValue)>=D&&u.value{let b={role:"radiogroup"};return e.disable===!0&&(b["aria-disabled"]="true"),e.readonly===!0&&(b["aria-readonly"]="true"),b});function x(b){if(f.value===!0){let p=Je(parseInt(b,10),1,parseInt(e.max,10)),C=e.noReset!==!0&&e.modelValue===p?0:p;C!==e.modelValue&&o("update:modelValue",C),u.value=0}}function y(b){f.value===!0&&(u.value=b)}function k(b,p){switch(b.keyCode){case 13:case 32:return x(p),ke(b);case 37:case 40:return c[`rt${p-1}`]&&c[`rt${p-1}`].focus(),ke(b);case 39:case 38:return c[`rt${p+1}`]&&c[`rt${p+1}`].focus(),ke(b)}}function S(){u.value=0}return Mo(()=>{c={}}),()=>{let b=[];return m.value.forEach(({iconClass:p,name:C,attrs:$},L)=>{let D=L+1;b.push(l("div",{key:D,ref:B=>{c[`rt${D}`]=B},class:"q-rating__icon-container flex flex-center",...$,onClick(){x(D)},onMouseover(){y(D)},onMouseout:S,onFocus(){y(D)},onBlur:S,onKeyup(B){k(B,D)}},Xe(t[`tip-${D}`],[l(Re,{class:p,name:C})])))}),e.name!==void 0&&e.disable!==!0&&a(b,"push"),l("div",{class:d.value,style:n.value,...v.value},b)}}});var xd=A({name:"QResponsive",props:Fr,setup(e,{slots:t}){let o=Dr(e);return()=>l("div",{class:"q-responsive"},[l("div",{class:"q-responsive__filler overflow-hidden"},[l("div",{style:o.value})]),l("div",{class:"q-responsive__content absolute-full fit"},re(t.default))])}});var _d=A({props:["store","barStyle","verticalBarStyle","horizontalBarStyle"],setup(e){return()=>[l("div",{class:e.store.scroll.vertical.barClass.value,style:[e.barStyle,e.verticalBarStyle],"aria-hidden":"true",onMousedown:e.store.onVerticalMousedown}),l("div",{class:e.store.scroll.horizontal.barClass.value,style:[e.barStyle,e.horizontalBarStyle],"aria-hidden":"true",onMousedown:e.store.onHorizontalMousedown}),Et(l("div",{ref:e.store.scroll.vertical.ref,class:e.store.scroll.vertical.thumbClass.value,style:e.store.scroll.vertical.style.value,"aria-hidden":"true"}),e.store.thumbVertDir),Et(l("div",{ref:e.store.scroll.horizontal.ref,class:e.store.scroll.horizontal.thumbClass.value,style:e.store.scroll.horizontal.style.value,"aria-hidden":"true"}),e.store.thumbHorizDir)]}});var Cd=["vertical","horizontal"],mu={vertical:{offset:"offsetY",scroll:"scrollTop",dir:"down",dist:"y"},horizontal:{offset:"offsetX",scroll:"scrollLeft",dir:"right",dist:"x"}},wd={prevent:!0,mouse:!0,mouseAllDir:!0},kd=e=>e>=250?50:Math.ceil(e/5),qd=A({name:"QScrollArea",props:{...Se,thumbStyle:Object,verticalThumbStyle:Object,horizontalThumbStyle:Object,barStyle:[Array,String,Object],verticalBarStyle:[Array,String,Object],horizontalBarStyle:[Array,String,Object],verticalOffset:{type:Array,default:[0,0]},horizontalOffset:{type:Array,default:[0,0]},contentStyle:[Array,String,Object],contentActiveStyle:[Array,String,Object],delay:{type:[String,Number],default:1e3},visible:{type:Boolean,default:null},tabindex:[String,Number],onScroll:Function},setup(e,{slots:t,emit:o}){let r=q(!1),n=q(!1),i=q(!1),a={vertical:q(0),horizontal:q(0)},u={vertical:{ref:q(null),position:q(0),size:q(0)},horizontal:{ref:q(null),position:q(0),size:q(0)}},{proxy:c}=K(),f=xe(e,c.$q),d=null,h,g=q(null),m=s(()=>"q-scrollarea"+(f.value===!0?" q-scrollarea--dark":""));Object.assign(a,{verticalInner:s(()=>a.vertical.value-e.verticalOffset[0]-e.verticalOffset[1]),horizontalInner:s(()=>a.horizontal.value-e.horizontalOffset[0]-e.horizontalOffset[1])}),u.vertical.percentage=s(()=>{let _=u.vertical.size.value-a.vertical.value;if(_<=0)return 0;let F=Je(u.vertical.position.value/_,0,1);return Math.round(F*1e4)/1e4}),u.vertical.thumbHidden=s(()=>(e.visible===null?i.value:e.visible)!==!0&&r.value===!1&&n.value===!1||u.vertical.size.value<=a.vertical.value+1),u.vertical.thumbStart=s(()=>e.verticalOffset[0]+u.vertical.percentage.value*(a.verticalInner.value-u.vertical.thumbSize.value)),u.vertical.thumbSize=s(()=>Math.round(Je(a.verticalInner.value*a.verticalInner.value/u.vertical.size.value,kd(a.verticalInner.value),a.verticalInner.value))),u.vertical.style=s(()=>({...e.thumbStyle,...e.verticalThumbStyle,top:`${u.vertical.thumbStart.value}px`,height:`${u.vertical.thumbSize.value}px`,right:`${e.horizontalOffset[1]}px`})),u.vertical.thumbClass=s(()=>"q-scrollarea__thumb q-scrollarea__thumb--v absolute-right"+(u.vertical.thumbHidden.value===!0?" q-scrollarea__thumb--invisible":"")),u.vertical.barClass=s(()=>"q-scrollarea__bar q-scrollarea__bar--v absolute-right"+(u.vertical.thumbHidden.value===!0?" q-scrollarea__bar--invisible":"")),u.horizontal.percentage=s(()=>{let _=u.horizontal.size.value-a.horizontal.value;if(_<=0)return 0;let F=Je(Math.abs(u.horizontal.position.value)/_,0,1);return Math.round(F*1e4)/1e4}),u.horizontal.thumbHidden=s(()=>(e.visible===null?i.value:e.visible)!==!0&&r.value===!1&&n.value===!1||u.horizontal.size.value<=a.horizontal.value+1),u.horizontal.thumbStart=s(()=>e.horizontalOffset[0]+u.horizontal.percentage.value*(a.horizontalInner.value-u.horizontal.thumbSize.value)),u.horizontal.thumbSize=s(()=>Math.round(Je(a.horizontalInner.value*a.horizontalInner.value/u.horizontal.size.value,kd(a.horizontalInner.value),a.horizontalInner.value))),u.horizontal.style=s(()=>({...e.thumbStyle,...e.horizontalThumbStyle,[c.$q.lang.rtl===!0?"right":"left"]:`${u.horizontal.thumbStart.value}px`,width:`${u.horizontal.thumbSize.value}px`,bottom:`${e.verticalOffset[1]}px`})),u.horizontal.thumbClass=s(()=>"q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom"+(u.horizontal.thumbHidden.value===!0?" q-scrollarea__thumb--invisible":"")),u.horizontal.barClass=s(()=>"q-scrollarea__bar q-scrollarea__bar--h absolute-bottom"+(u.horizontal.thumbHidden.value===!0?" q-scrollarea__bar--invisible":""));let v=s(()=>u.vertical.thumbHidden.value===!0&&u.horizontal.thumbHidden.value===!0?e.contentStyle:e.contentActiveStyle);function x(){let _={};return Cd.forEach(F=>{let I=u[F];Object.assign(_,{[F+"Position"]:I.position.value,[F+"Percentage"]:I.percentage.value,[F+"Size"]:I.size.value,[F+"ContainerSize"]:a[F].value,[F+"ContainerInnerSize"]:a[F+"Inner"].value})}),_}let y=Zt(()=>{let _=x();_.ref=c,o("scroll",_)},0);function k(_,F,I){if(Cd.includes(_)===!1){console.error("[QScrollArea]: wrong first param of setScrollPosition (vertical/horizontal)");return}(_==="vertical"?Bo:ti)(g.value,F,I)}function S({height:_,width:F}){let I=!1;a.vertical.value!==_&&(a.vertical.value=_,I=!0),a.horizontal.value!==F&&(a.horizontal.value=F,I=!0),I===!0&&L()}function b({position:_}){let F=!1;u.vertical.position.value!==_.top&&(u.vertical.position.value=_.top,F=!0),u.horizontal.position.value!==_.left&&(u.horizontal.position.value=_.left,F=!0),F===!0&&L()}function p({height:_,width:F}){u.horizontal.size.value!==F&&(u.horizontal.size.value=F,L()),u.vertical.size.value!==_&&(u.vertical.size.value=_,L())}function C(_,F){let I=u[F];if(_.isFirst===!0){if(I.thumbHidden.value===!0)return;h=I.position.value,n.value=!0}else if(n.value!==!0)return;_.isFinal===!0&&(n.value=!1);let j=mu[F],W=(I.size.value-a[F].value)/(a[F+"Inner"].value-I.thumbSize.value),ee=_.distance[j.dist],fe=h+(_.direction===j.dir?1:-1)*ee*W;D(fe,F)}function $(_,F){let I=u[F];if(I.thumbHidden.value!==!0){let j=F==="vertical"?e.verticalOffset[0]:e.horizontalOffset[0],W=_[mu[F].offset]-j,ee=I.thumbStart.value-j;if(Wee+I.thumbSize.value){let fe=W-I.thumbSize.value/2,H=Je(fe/(a[F+"Inner"].value-I.thumbSize.value),0,1);D(H*Math.max(0,I.size.value-a[F].value),F)}I.ref.value!==null&&I.ref.value.dispatchEvent(new MouseEvent(_.type,_))}}function L(){r.value=!0,d!==null&&clearTimeout(d),d=setTimeout(()=>{d=null,r.value=!1},e.delay),e.onScroll!==void 0&&y()}function D(_,F){g.value[mu[F].scroll]=_}let B=null;function E(){B!==null&&clearTimeout(B),B=setTimeout(()=>{B=null,i.value=!0},c.$q.platform.is.ios?50:0)}function V(){B!==null&&(clearTimeout(B),B=null),i.value=!1}let M=null;Y(()=>c.$q.lang.rtl,_=>{g.value!==null&&ti(g.value,Math.abs(u.horizontal.position.value)*(_===!0?-1:1))}),Pt(()=>{M={top:u.vertical.position.value,left:u.horizontal.position.value}}),Nt(()=>{if(M===null)return;let _=g.value;_!==null&&(ti(_,M.left),Bo(_,M.top))}),ye(y.cancel),Object.assign(c,{getScrollTarget:()=>g.value,getScroll:x,getScrollPosition:()=>({top:u.vertical.position.value,left:u.horizontal.position.value}),getScrollPercentage:()=>({top:u.vertical.percentage.value,left:u.horizontal.percentage.value}),setScrollPosition:k,setScrollPercentage(_,F,I){k(_,F*(u[_].size.value-a[_].value)*(_==="horizontal"&&c.$q.lang.rtl===!0?-1:1),I)}});let T={scroll:u,thumbVertDir:[[Rt,_=>{C(_,"vertical")},void 0,{vertical:!0,...wd}]],thumbHorizDir:[[Rt,_=>{C(_,"horizontal")},void 0,{horizontal:!0,...wd}]],onVerticalMousedown(_){$(_,"vertical")},onHorizontalMousedown(_){$(_,"horizontal")}};return()=>l("div",{class:m.value,onMouseenter:E,onMouseleave:V},[l("div",{ref:g,class:"q-scrollarea__container scroll relative-position fit hide-scrollbar",tabindex:e.tabindex!==void 0?e.tabindex:void 0},[l("div",{class:"q-scrollarea__content absolute",style:v.value},Xe(t.default,[l(oo,{debounce:0,onResize:p})])),l(zr,{axis:"both",onScroll:b})]),l(oo,{debounce:0,onResize:S}),l(_d,{store:T,barStyle:e.barStyle,verticalBarStyle:e.verticalBarStyle,horizontalBarStyle:e.horizontalBarStyle})])}});var Co=1e3,Ph=["start","center","end","start-force","center-force","end-force"],Md=Array.prototype.filter,Ah=window.getComputedStyle(document.body).overflowAnchor===void 0?Ye:function(e,t){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;let o=e.children||[];Md.call(o,n=>n.dataset&&n.dataset.qVsAnchor!==void 0).forEach(n=>{delete n.dataset.qVsAnchor});let r=o[t];r&&r.dataset&&(r.dataset.qVsAnchor="")}))};function Hr(e,t){return e+t}function vu(e,t,o,r,n,i,a,u){let c=e===window?document.scrollingElement||document.documentElement:e,f=n===!0?"offsetWidth":"offsetHeight",d={scrollStart:0,scrollViewSize:-a-u,scrollMaxSize:0,offsetStart:-a,offsetEnd:-u};if(n===!0?(e===window?(d.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,d.scrollViewSize+=document.documentElement.clientWidth):(d.scrollStart=c.scrollLeft,d.scrollViewSize+=c.clientWidth),d.scrollMaxSize=c.scrollWidth,i===!0&&(d.scrollStart=(Pn===!0?d.scrollMaxSize-d.scrollViewSize:0)-d.scrollStart)):(e===window?(d.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,d.scrollViewSize+=document.documentElement.clientHeight):(d.scrollStart=c.scrollTop,d.scrollViewSize+=c.clientHeight),d.scrollMaxSize=c.scrollHeight),o!==null)for(let h=o.previousElementSibling;h!==null;h=h.previousElementSibling)h.classList.contains("q-virtual-scroll--skip")===!1&&(d.offsetStart+=h[f]);if(r!==null)for(let h=r.nextElementSibling;h!==null;h=h.nextElementSibling)h.classList.contains("q-virtual-scroll--skip")===!1&&(d.offsetEnd+=h[f]);if(t!==e){let h=c.getBoundingClientRect(),g=t.getBoundingClientRect();n===!0?(d.offsetStart+=g.left-h.left,d.offsetEnd-=g.width):(d.offsetStart+=g.top-h.top,d.offsetEnd-=g.height),e!==window&&(d.offsetStart+=d.scrollStart),d.offsetEnd+=d.scrollMaxSize-d.offsetStart}return d}function Td(e,t,o,r){t==="end"&&(t=(e===window?document.body:e)[o===!0?"scrollWidth":"scrollHeight"]),e===window?o===!0?(r===!0&&(t=(Pn===!0?document.body.scrollWidth-document.documentElement.clientWidth:0)-t),window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t):o===!0?(r===!0&&(t=(Pn===!0?e.scrollWidth-e.offsetWidth:0)-t),e.scrollLeft=t):e.scrollTop=t}function gi(e,t,o,r){if(o>=r)return 0;let n=t.length,i=Math.floor(o/Co),a=Math.floor((r-1)/Co)+1,u=e.slice(i,a).reduce(Hr,0);return o%Co!==0&&(u-=t.slice(i*Co,o).reduce(Hr,0)),r%Co!==0&&r!==n&&(u-=t.slice(r,a*Co).reduce(Hr,0)),u}var Rd={virtualScrollSliceSize:{type:[Number,String],default:10},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},gu=Object.keys(Rd),hi={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...Rd};function Ya({virtualScrollLength:e,getVirtualScrollTarget:t,getVirtualScrollEl:o,virtualScrollItemSizeComputed:r}){let n=K(),{props:i,emit:a,proxy:u}=n,{$q:c}=u,f,d,h,g=[],m,v=q(0),x=q(0),y=q({}),k=q(null),S=q(null),b=q(null),p=q({from:0,to:0}),C=s(()=>i.tableColspan!==void 0?i.tableColspan:100);r===void 0&&(r=s(()=>i.virtualScrollItemSize));let $=s(()=>r.value+";"+i.virtualScrollHorizontal),L=s(()=>$.value+";"+i.virtualScrollSliceRatioBefore+";"+i.virtualScrollSliceRatioAfter);Y(L,()=>{I()}),Y($,D);function D(){F(d,!0)}function B(H){F(H===void 0?d:H)}function E(H,w){let X=t();if(X==null||X.nodeType===8)return;let U=vu(X,o(),k.value,S.value,i.virtualScrollHorizontal,c.lang.rtl,i.virtualScrollStickySizeStart,i.virtualScrollStickySizeEnd);h!==U.scrollViewSize&&I(U.scrollViewSize),M(X,U,Math.min(e.value-1,Math.max(0,parseInt(H,10)||0)),0,Ph.indexOf(w)!==-1?w:d!==-1&&H>d?"end":"start")}function V(){let H=t();if(H==null||H.nodeType===8)return;let w=vu(H,o(),k.value,S.value,i.virtualScrollHorizontal,c.lang.rtl,i.virtualScrollStickySizeStart,i.virtualScrollStickySizeEnd),X=e.value-1,U=w.scrollMaxSize-w.offsetStart-w.offsetEnd-x.value;if(f===w.scrollStart)return;if(w.scrollMaxSize<=0){M(H,w,0,0);return}h!==w.scrollViewSize&&I(w.scrollViewSize),T(p.value.from);let le=Math.floor(w.scrollMaxSize-Math.max(w.scrollViewSize,w.offsetEnd)-Math.min(m[X],w.scrollViewSize/2));if(le>0&&Math.ceil(w.scrollStart)>=le){M(H,w,X,w.scrollMaxSize-w.offsetEnd-g.reduce(Hr,0));return}let R=0,z=w.scrollStart-w.offsetStart,ae=z;if(z<=U&&z+w.scrollViewSize>=v.value)z-=v.value,R=p.value.from,ae=z;else for(let Q=0;z>=g[Q]&&R0&&R-w.scrollViewSize?(R++,ae=z):ae=m[R]+z;M(H,w,R,ae)}function M(H,w,X,U,le){let R=typeof le=="string"&&le.indexOf("-force")!==-1,z=R===!0?le.replace("-force",""):le,ae=z!==void 0?z:"start",Q=Math.max(0,X-y.value[ae]),me=Q+y.value.total;me>e.value&&(me=e.value,Q=Math.max(0,me-y.value.total)),f=w.scrollStart;let qe=Q!==p.value.from||me!==p.value.to;if(qe===!1&&z===void 0){W(X);return}let{activeElement:G}=document,ce=b.value;qe===!0&&ce!==null&&ce!==G&&ce.contains(G)===!0&&(ce.addEventListener("focusout",_),setTimeout(()=>{ce!==null&&ce.removeEventListener("focusout",_)})),Ah(ce,X-Q);let ge=z!==void 0?m.slice(Q,X).reduce(Hr,0):0;if(qe===!0){let _e=me>=p.value.from&&Q<=p.value.to?p.value.to:me;p.value={from:Q,to:_e},v.value=gi(g,m,0,Q),x.value=gi(g,m,me,e.value),requestAnimationFrame(()=>{p.value.to!==me&&f===w.scrollStart&&(p.value={from:p.value.from,to:me},x.value=gi(g,m,me,e.value))})}requestAnimationFrame(()=>{if(f!==w.scrollStart)return;qe===!0&&T(Q);let _e=m.slice(Q,X).reduce(Hr,0),Be=_e+w.offsetStart+v.value,de=Be+m[X],Le=Be+U;if(z!==void 0){let He=_e-ge,Qe=w.scrollStart+He;Le=R!==!0&&QeQ.classList&&Q.classList.contains("q-virtual-scroll--skip")===!1),U=X.length,le=i.virtualScrollHorizontal===!0?Q=>Q.getBoundingClientRect().width:Q=>Q.offsetHeight,R=H,z,ae;for(let Q=0;Q=U;R--)m[R]=X;let le=Math.floor((e.value-1)/Co);g=[];for(let R=0;R<=le;R++){let z=0,ae=Math.min((R+1)*Co,e.value);for(let Q=R*Co;Q=0?(T(p.value.from),Ee(()=>{E(H)})):ee()}function I(H){if(H===void 0&&typeof window<"u"){let z=t();z!=null&&z.nodeType!==8&&(H=vu(z,o(),k.value,S.value,i.virtualScrollHorizontal,c.lang.rtl,i.virtualScrollStickySizeStart,i.virtualScrollStickySizeEnd).scrollViewSize)}h=H;let w=parseFloat(i.virtualScrollSliceRatioBefore)||0,X=parseFloat(i.virtualScrollSliceRatioAfter)||0,U=1+w+X,le=H===void 0||H<=0?1:Math.ceil(H/r.value),R=Math.max(1,le,Math.ceil((i.virtualScrollSliceSize>0?i.virtualScrollSliceSize:10)/U));y.value={total:Math.ceil(R*U),start:Math.ceil(R*w),center:Math.ceil(R*(.5+w)),end:Math.ceil(R*(1+w)),view:le}}function j(H,w){let X=i.virtualScrollHorizontal===!0?"width":"height",U={["--q-virtual-scroll-item-"+X]:r.value+"px"};return[H==="tbody"?l(H,{class:"q-virtual-scroll__padding",key:"before",ref:k},[l("tr",[l("td",{style:{[X]:`${v.value}px`,...U},colspan:C.value})])]):l(H,{class:"q-virtual-scroll__padding",key:"before",ref:k,style:{[X]:`${v.value}px`,...U}}),l(H,{class:"q-virtual-scroll__content",key:"content",ref:b,tabindex:-1},w.flat()),H==="tbody"?l(H,{class:"q-virtual-scroll__padding",key:"after",ref:S},[l("tr",[l("td",{style:{[X]:`${x.value}px`,...U},colspan:C.value})])]):l(H,{class:"q-virtual-scroll__padding",key:"after",ref:S,style:{[X]:`${x.value}px`,...U}})]}function W(H){d!==H&&(i.onVirtualScroll!==void 0&&a("virtualScroll",{index:H,from:p.value.from,to:p.value.to-1,direction:H{I()});let fe=!1;return Pt(()=>{fe=!0}),Nt(()=>{if(fe!==!0)return;let H=t();f!==void 0&&H!==void 0&&H!==null&&H.nodeType!==8?Td(H,f,i.virtualScrollHorizontal,c.lang.rtl):E(d)}),ye(()=>{ee.cancel()}),Object.assign(u,{scrollTo:E,reset:D,refresh:B}),{virtualScrollSliceRange:p,virtualScrollSliceSizeComputed:y,setVirtualScrollSize:I,onVirtualScrollEvt:ee,localResetVirtualScroll:F,padVirtualScroll:j,scrollTo:E,reset:D,refresh:B}}var Pd=e=>["add","add-unique","toggle"].includes(e),$h=".*+?^${}()|[]\\",Eh=Object.keys(Dn);function hu(e,t){if(typeof e=="function")return e;let o=e!==void 0?e:t;return r=>r!==null&&typeof r=="object"&&o in r?r[o]:r}var Xa=A({name:"QSelect",inheritAttrs:!1,props:{...hi,...kt,...Dn,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],popupNoRouteDismiss:Boolean,useInput:Boolean,useChips:Boolean,newValueMode:{type:String,validator:Pd},mapOptions:Boolean,emitValue:Boolean,disableTabSelection:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:{},transitionHide:{},transitionDuration:{},behavior:{type:String,validator:e=>["default","menu","dialog"].includes(e),default:"default"},virtualScrollItemSize:hi.virtualScrollItemSize.type,onNewValue:Function,onFilter:Function},emits:[...hn,"add","remove","inputValue","keyup","keypress","keydown","popupShow","popupHide","filterAbort"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,i=q(!1),a=q(!1),u=q(-1),c=q(""),f=q(!1),d=q(!1),h=null,g=null,m,v,x,y=null,k,S,b,p,C=q(null),$=q(null),L=q(null),D=q(null),B=q(null),E=gr(e),V=Va(ne),M=s(()=>e.options.length),T=s(()=>e.virtualScrollItemSize===void 0?e.optionsDense===!0?24:48:e.virtualScrollItemSize),{virtualScrollSliceRange:_,virtualScrollSliceSizeComputed:F,localResetVirtualScroll:I,padVirtualScroll:j,onVirtualScrollEvt:W,scrollTo:ee,setVirtualScrollSize:fe}=Ya({virtualScrollLength:M,getVirtualScrollTarget:Gt,getVirtualScrollEl:yt,virtualScrollItemSizeComputed:T}),H=pn(),w=s(()=>{let O=e.mapOptions===!0&&e.multiple!==!0,Te=e.modelValue!==void 0&&(e.modelValue!==null||O===!0)?e.multiple===!0&&Array.isArray(e.modelValue)?e.modelValue:[e.modelValue]:[];if(e.mapOptions===!0){let Me=e.mapOptions===!0&&m!==void 0?m:[],rt=Te.map(bt=>J(bt,Me));return e.modelValue===null&&O===!0?rt.filter(bt=>bt!==null):rt}return Te}),X=s(()=>{let O={};return Eh.forEach(Te=>{let Me=e[Te];Me!==void 0&&(O[Te]=Me)}),O}),U=s(()=>e.optionsDark===null?H.isDark.value:e.optionsDark),le=s(()=>No(w.value)),R=s(()=>{let O="q-field__input q-placeholder col";return e.hideSelected===!0||w.value.length===0?[O,e.inputClass]:(O+=" q-field__input--padding",e.inputClass===void 0?O:[O,e.inputClass])}),z=s(()=>(e.virtualScrollHorizontal===!0?"q-virtual-scroll--horizontal":"")+(e.popupContentClass?" "+e.popupContentClass:"")),ae=s(()=>M.value===0),Q=s(()=>w.value.map(O=>ie.value(O)).join(", ")),me=s(()=>e.displayValue!==void 0?e.displayValue:Q.value),qe=s(()=>e.optionsHtml===!0?()=>!0:O=>O!=null&&O.html===!0),G=s(()=>e.displayValueHtml===!0||e.displayValue===void 0&&(e.optionsHtml===!0||w.value.some(qe.value))),ce=s(()=>H.focused.value===!0?e.tabindex:-1),ge=s(()=>{let O={tabindex:e.tabindex,role:"combobox","aria-label":e.label,"aria-readonly":e.readonly===!0?"true":"false","aria-autocomplete":e.useInput===!0?"list":"none","aria-expanded":i.value===!0?"true":"false","aria-controls":`${H.targetUid.value}_lb`};return u.value>=0&&(O["aria-activedescendant"]=`${H.targetUid.value}_${u.value}`),O}),_e=s(()=>({id:`${H.targetUid.value}_lb`,role:"listbox","aria-multiselectable":e.multiple===!0?"true":"false"})),Be=s(()=>w.value.map((O,Te)=>({index:Te,opt:O,html:qe.value(O),selected:!0,removeAtIndex:Oe,toggleOption:ut,tabindex:ce.value}))),de=s(()=>{if(M.value===0)return[];let{from:O,to:Te}=_.value;return e.options.slice(O,Te).map((Me,rt)=>{let bt=Z.value(Me)===!0,gt=se(Me)===!0,Ot=O+rt,$t={clickable:!0,active:gt,activeClass:Qe.value,manualFocus:!0,focused:!1,disable:bt,tabindex:-1,dense:e.optionsDense,dark:U.value,role:"option","aria-selected":gt===!0?"true":"false",id:`${H.targetUid.value}_${Ot}`,onClick:()=>{ut(Me)}};return bt!==!0&&(u.value===Ot&&($t.focused=!0),n.platform.is.desktop===!0&&($t.onMousemove=()=>{i.value===!0&&oe(Ot)})),{index:Ot,opt:Me,html:qe.value(Me),label:ie.value(Me),selected:$t.active,focused:$t.focused,toggleOption:ut,setOptionIndex:oe,itemProps:$t}})}),Le=s(()=>e.dropdownIcon!==void 0?e.dropdownIcon:n.iconSet.arrow.dropdown),He=s(()=>e.optionsCover===!1&&e.outlined!==!0&&e.standout!==!0&&e.borderless!==!0&&e.rounded!==!0),Qe=s(()=>e.optionsSelectedClass!==void 0?e.optionsSelectedClass:e.color!==void 0?`text-${e.color}`:""),ot=s(()=>hu(e.optionValue,"value")),ie=s(()=>hu(e.optionLabel,"label")),Z=s(()=>hu(e.optionDisable,"disable")),ve=s(()=>w.value.map(ot.value)),Fe=s(()=>{let O={onInput:ne,onChange:V,onKeydown:pt,onKeyup:we,onKeypress:et,onFocus:Ce,onClick(Te){v===!0&&at(Te)}};return O.onCompositionstart=O.onCompositionupdate=O.onCompositionend=V,O});Y(w,O=>{m=O,e.useInput===!0&&e.fillInput===!0&&e.multiple!==!0&&H.innerLoading.value!==!0&&(a.value!==!0&&i.value!==!0||le.value!==!0)&&(x!==!0&&In(),(a.value===!0||i.value===!0)&&De(""))},{immediate:!0}),Y(()=>e.fillInput,In),Y(i,yl),Y(M,lv);function Ie(O){return e.emitValue===!0?ot.value(O):O}function Ve(O){if(O!==-1&&O=e.maxValues)return;let rt=e.modelValue.slice();o("add",{index:rt.length,value:Me}),rt.push(Me),o("update:modelValue",rt)}function ut(O,Te){if(H.editable.value!==!0||O===void 0||Z.value(O)===!0)return;let Me=ot.value(O);if(e.multiple!==!0){Te!==!0&&(Ae(e.fillInput===!0?ie.value(O):"",!0,!0),ro()),$.value!==null&&$.value.focus(),(w.value.length===0||Wt(ot.value(w.value[0]),Me)!==!0)&&o("update:modelValue",e.emitValue===!0?Me:O);return}if((v!==!0||f.value===!0)&&H.focus(),Ce(),w.value.length===0){let gt=e.emitValue===!0?Me:O;o("add",{index:0,value:gt}),o("update:modelValue",e.multiple===!0?[gt]:gt);return}let rt=e.modelValue.slice(),bt=ve.value.findIndex(gt=>Wt(gt,Me));if(bt!==-1)o("remove",{index:bt,value:rt.splice(bt,1)[0]});else{if(e.maxValues!==void 0&&rt.length>=e.maxValues)return;let gt=e.emitValue===!0?Me:O;o("add",{index:rt.length,value:gt}),rt.push(gt)}o("update:modelValue",rt)}function oe(O){if(n.platform.is.desktop!==!0)return;let Te=O!==-1&&O=0?ie.value(e.options[Me]):k,!0))}}function J(O,Te){let Me=rt=>Wt(ot.value(rt),O);return e.options.find(Me)||Te.find(Me)||O}function se(O){let Te=ot.value(O);return ve.value.find(Me=>Wt(Me,Te))!==void 0}function Ce(O){e.useInput===!0&&$.value!==null&&(O===void 0||$.value===O.target&&O.target.value===Q.value)&&$.value.select()}function Ke(O){Tt(O,27)===!0&&i.value===!0&&(at(O),ro(),In()),o("keyup",O)}function we(O){let{value:Te}=O.target;if(O.keyCode!==void 0){Ke(O);return}if(O.target.value="",h!==null&&(clearTimeout(h),h=null),g!==null&&(clearTimeout(g),g=null),In(),typeof Te=="string"&&Te.length!==0){let Me=Te.toLocaleLowerCase(),rt=gt=>{let Ot=e.options.find($t=>gt.value($t).toLocaleLowerCase()===Me);return Ot===void 0?!1:(w.value.indexOf(Ot)===-1?ut(Ot):ro(),!0)},bt=gt=>{rt(ot)!==!0&&(rt(ie)===!0||gt===!0||De(Te,!0,()=>bt(!0)))};bt()}else H.clearValue(O)}function et(O){o("keypress",O)}function pt(O){if(o("keydown",O),io(O)===!0)return;let Te=c.value.length!==0&&(e.newValueMode!==void 0||e.onNewValue!==void 0),Me=O.shiftKey!==!0&&e.disableTabSelection!==!0&&e.multiple!==!0&&(u.value!==-1||Te===!0);if(O.keyCode===27){vt(O);return}if(O.keyCode===9&&Me===!1){Ne();return}if(O.target===void 0||O.target.id!==H.targetUid.value||H.editable.value!==!0)return;if(O.keyCode===40&&H.innerLoading.value!==!0&&i.value===!1){ke(O),dt();return}if(O.keyCode===8&&(e.useChips===!0||e.clearable===!0)&&e.hideSelected!==!0&&c.value.length===0){e.multiple===!0&&Array.isArray(e.modelValue)===!0?Ve(e.modelValue.length-1):e.multiple!==!0&&e.modelValue!==null&&o("update:modelValue",null);return}(O.keyCode===35||O.keyCode===36)&&(typeof c.value!="string"||c.value.length===0)&&(ke(O),u.value=-1,ue(O.keyCode===36?1:-1,e.multiple)),(O.keyCode===33||O.keyCode===34)&&F.value!==void 0&&(ke(O),u.value=Math.max(-1,Math.min(M.value,u.value+(O.keyCode===33?-1:1)*F.value.view)),ue(O.keyCode===33?1:-1,e.multiple)),(O.keyCode===38||O.keyCode===40)&&(ke(O),ue(O.keyCode===38?-1:1,e.multiple));let rt=M.value;if((b===void 0||p0&&e.useInput!==!0&&O.key!==void 0&&O.key.length===1&&O.altKey===!1&&O.ctrlKey===!1&&O.metaKey===!1&&(O.keyCode!==32||b.length!==0)){i.value!==!0&&dt(O);let bt=O.key.toLocaleLowerCase(),gt=b.length===1&&b[0]===bt;p=Date.now()+1500,gt===!1&&(ke(O),b+=bt);let Ot=new RegExp("^"+b.split("").map(Sl=>$h.indexOf(Sl)!==-1?"\\"+Sl:Sl).join(".*"),"i"),$t=u.value;if(gt===!0||$t<0||Ot.test(ie.value(e.options[$t]))!==!0)do $t=xn($t+1,-1,rt-1);while($t!==u.value&&(Z.value(e.options[$t])===!0||Ot.test(ie.value(e.options[$t]))!==!0));u.value!==$t&&Ee(()=>{oe($t),ee($t),$t>=0&&e.useInput===!0&&e.fillInput===!0&&pe(ie.value(e.options[$t]),!0)});return}if(!(O.keyCode!==13&&(O.keyCode!==32||e.useInput===!0||b!=="")&&(O.keyCode!==9||Me===!1))){if(O.keyCode!==9&&ke(O),u.value!==-1&&u.value{if(Ot){if(Pd(Ot)!==!0)return}else Ot=e.newValueMode;if(Ae("",e.multiple!==!0,!0),gt==null)return;(Ot==="toggle"?ut:lt)(gt,Ot==="add-unique"),e.multiple!==!0&&($.value!==null&&$.value.focus(),ro())};if(e.onNewValue!==void 0?o("newValue",c.value,bt):bt(c.value),e.multiple!==!0)return}i.value===!0?Ne():H.innerLoading.value!==!0&&dt()}}function yt(){return v===!0?B.value:L.value!==null&&L.value.contentEl!==null?L.value.contentEl:void 0}function Gt(){return yt()}function so(){return e.hideSelected===!0?[]:t["selected-item"]!==void 0?Be.value.map(O=>t["selected-item"](O)).slice():t.selected!==void 0?[].concat(t.selected()):e.useChips===!0?Be.value.map((O,Te)=>l(qr,{key:"option-"+Te,removable:H.editable.value===!0&&Z.value(O.opt)!==!0,dense:!0,textColor:e.color,tabindex:ce.value,onRemove(){O.removeAtIndex(Te)}},()=>l("span",{class:"ellipsis",[O.html===!0?"innerHTML":"textContent"]:ie.value(O.opt)}))):[l("span",{[G.value===!0?"innerHTML":"textContent"]:me.value})]}function To(){if(ae.value===!0)return t["no-option"]!==void 0?t["no-option"]({inputValue:c.value}):void 0;let O=t.option!==void 0?t.option:Me=>l(Qo,{key:Me.index,...Me.itemProps},()=>l(no,()=>l(Ln,()=>l("span",{[Me.html===!0?"innerHTML":"textContent"]:Me.label})))),Te=j("div",de.value.map(O));return t["before-options"]!==void 0&&(Te=t["before-options"]().concat(Te)),Xe(t["after-options"],Te)}function jo(O,Te){let Me=Te===!0?{...ge.value,...H.splitAttrs.attributes.value}:void 0,rt={ref:Te===!0?$:void 0,key:"i_t",class:R.value,style:e.inputStyle,value:c.value!==void 0?c.value:"",type:"search",...Me,id:Te===!0?H.targetUid.value:void 0,maxlength:e.maxlength,autocomplete:e.autocomplete,"data-autofocus":O===!0||e.autofocus===!0||void 0,disabled:e.disable===!0,readonly:e.readonly===!0,...Fe.value};return O!==!0&&v===!0&&(Array.isArray(rt.class)===!0?rt.class=[...rt.class,"no-pointer-events"]:rt.class+=" no-pointer-events"),l("input",rt)}function ne(O){h!==null&&(clearTimeout(h),h=null),g!==null&&(clearTimeout(g),g=null),!(O&&O.target&&O.target.qComposing===!0)&&(pe(O.target.value||""),x=!0,k=c.value,H.focused.value!==!0&&(v!==!0||f.value===!0)&&H.focus(),e.onFilter!==void 0&&(h=setTimeout(()=>{h=null,De(c.value)},e.inputDebounce)))}function pe(O,Te){c.value!==O&&(c.value=O,Te===!0||e.inputDebounce===0||e.inputDebounce==="0"?o("inputValue",O):g=setTimeout(()=>{g=null,o("inputValue",O)},e.inputDebounce))}function Ae(O,Te,Me){x=Me!==!0,e.useInput===!0&&(pe(O,!0),(Te===!0||Me!==!0)&&(k=O),Te!==!0&&De(O))}function De(O,Te,Me){if(e.onFilter===void 0||Te!==!0&&H.focused.value!==!0)return;H.innerLoading.value===!0?o("filterAbort"):(H.innerLoading.value=!0,d.value=!0),O!==""&&e.multiple!==!0&&w.value.length!==0&&x!==!0&&O===ie.value(w.value[0])&&(O="");let rt=setTimeout(()=>{i.value===!0&&(i.value=!1)},10);y!==null&&clearTimeout(y),y=rt,o("filter",O,(bt,gt)=>{(Te===!0||H.focused.value===!0)&&y===rt&&(clearTimeout(y),typeof bt=="function"&&bt(),d.value=!1,Ee(()=>{H.innerLoading.value=!1,H.editable.value===!0&&(Te===!0?i.value===!0&&ro():i.value===!0?yl(!0):i.value=!0),typeof gt=="function"&&Ee(()=>{gt(r)}),typeof Me=="function"&&Ee(()=>{Me(r)})}))},()=>{H.focused.value===!0&&y===rt&&(clearTimeout(y),H.innerLoading.value=!1,d.value=!1),i.value===!0&&(i.value=!1)})}function tt(){return l(Lo,{ref:L,class:z.value,style:e.popupContentStyle,modelValue:i.value,fit:e.menuShrink!==!0,cover:e.optionsCover===!0&&ae.value!==!0&&e.useInput!==!0,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,dark:U.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,noRouteDismiss:e.popupNoRouteDismiss,square:He.value,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,separateClosePopup:!0,..._e.value,onScrollPassive:W,onBeforeShow:Tu,onBeforeHide:St,onShow:P},To)}function St(O){Mu(O),Ne()}function P(){fe()}function N(O){at(O),$.value!==null&&$.value.focus(),f.value=!0,window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,0)}function te(O){at(O),Ee(()=>{f.value=!1})}function he(){let O=[l(Aa,{class:`col-auto ${H.fieldClass.value}`,...X.value,for:H.targetUid.value,dark:U.value,square:!0,loading:d.value,itemAligned:!1,filled:!0,stackLabel:c.value.length!==0,...H.splitAttrs.listeners.value,onFocus:N,onBlur:te},{...t,rawControl:()=>H.getControl(!0),before:void 0,after:void 0})];return i.value===!0&&O.push(l("div",{ref:B,class:z.value+" scroll",style:e.popupContentStyle,..._e.value,onClick:vt,onScrollPassive:W},To())),l(Ho,{ref:D,modelValue:a.value,position:e.useInput===!0?"top":void 0,transitionShow:S,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,noRouteDismiss:e.popupNoRouteDismiss,onBeforeShow:Tu,onBeforeHide:be,onHide:it,onShow:$e},()=>l("div",{class:"q-select__dialog"+(U.value===!0?" q-select__dialog--dark q-dark":"")+(f.value===!0?" q-select__dialog--focused":"")},O))}function be(O){Mu(O),D.value!==null&&D.value.__updateRefocusTarget(H.rootRef.value.querySelector(".q-field__native > [tabindex]:last-child")),H.focused.value=!1}function it(O){ro(),H.focused.value===!1&&o("blur",O),In()}function $e(){let O=document.activeElement;(O===null||O.id!==H.targetUid.value)&&$.value!==null&&$.value!==O&&$.value.focus(),fe()}function Ne(){a.value!==!0&&(u.value=-1,i.value===!0&&(i.value=!1),H.focused.value===!1&&(y!==null&&(clearTimeout(y),y=null),H.innerLoading.value===!0&&(o("filterAbort"),H.innerLoading.value=!1,d.value=!1)))}function dt(O){H.editable.value===!0&&(v===!0?(H.onControlFocusin(O),a.value=!0,Ee(()=>{H.focus()})):H.focus(),e.onFilter!==void 0?De(c.value):(ae.value!==!0||t["no-option"]!==void 0)&&(i.value=!0))}function ro(){a.value=!1,Ne()}function In(){e.useInput===!0&&Ae(e.multiple!==!0&&e.fillInput===!0&&w.value.length!==0&&ie.value(w.value[0])||"",!0,!0)}function yl(O){let Te=-1;if(O===!0){if(w.value.length!==0){let Me=ot.value(w.value[0]);Te=e.options.findIndex(rt=>Wt(ot.value(rt),Me))}I(Te)}oe(Te)}function lv(O,Te){i.value===!0&&H.innerLoading.value===!1&&(I(-1,!0),Ee(()=>{i.value===!0&&H.innerLoading.value===!1&&(O>Te?I():yl(!0))}))}function qu(){a.value===!1&&L.value!==null&&L.value.updatePosition()}function Tu(O){O!==void 0&&at(O),o("popupShow",O),H.hasPopupOpen=!0,H.onControlFocusin(O)}function Mu(O){O!==void 0&&at(O),o("popupHide",O),H.hasPopupOpen=!1,H.onControlFocusout(O)}function Ru(){v=n.platform.is.mobile!==!0&&e.behavior!=="dialog"?!1:e.behavior!=="menu"&&(e.useInput===!0?t["no-option"]!==void 0||e.onFilter!==void 0||ae.value===!1:!0),S=n.platform.is.ios===!0&&v===!0&&e.useInput===!0?"fade":e.transitionShow}return Mo(Ru),Eu(qu),Ru(),ye(()=>{h!==null&&clearTimeout(h),g!==null&&clearTimeout(g)}),Object.assign(r,{showPopup:dt,hidePopup:ro,removeAtIndex:Ve,add:lt,toggleOption:ut,getOptionIndex:()=>u.value,setOptionIndex:oe,moveOptionSelection:ue,filter:De,updateMenuPosition:qu,updateInputValue:Ae,isOptionSelected:se,getEmittingOptionValue:Ie,isOptionDisabled:(...O)=>Z.value.apply(null,O)===!0,getOptionValue:(...O)=>ot.value.apply(null,O),getOptionLabel:(...O)=>ie.value.apply(null,O)}),Object.assign(H,{innerValue:w,fieldClass:s(()=>`q-select q-field--auto-height q-select--with${e.useInput!==!0?"out":""}-input q-select--with${e.useChips!==!0?"out":""}-chips q-select--${e.multiple===!0?"multiple":"single"}`),inputRef:C,targetRef:$,hasValue:le,showPopup:dt,floatingLabel:s(()=>e.hideSelected!==!0&&le.value===!0||typeof c.value=="number"||c.value.length!==0||No(e.displayValue)),getControlChild:()=>{if(H.editable.value!==!1&&(a.value===!0||ae.value!==!0||t["no-option"]!==void 0))return v===!0?he():tt();H.hasPopupOpen===!0&&(H.hasPopupOpen=!1)},controlEvents:{onFocusin(O){H.onControlFocusin(O)},onFocusout(O){H.onControlFocusout(O,()=>{In(),Ne()})},onClick(O){if(vt(O),v!==!0&&i.value===!0){Ne(),$.value!==null&&$.value.focus();return}dt(O)}},getControl:O=>{let Te=so(),Me=O===!0||a.value!==!0||v!==!0;if(e.useInput===!0)Te.push(jo(O,Me));else if(H.editable.value===!0){let bt=Me===!0?ge.value:void 0;Te.push(l("input",{ref:Me===!0?$:void 0,key:"d_t",class:"q-select__focus-target",id:Me===!0?H.targetUid.value:void 0,value:me.value,readonly:!0,"data-autofocus":O===!0||e.autofocus===!0||void 0,...bt,onKeydown:pt,onKeyup:Ke,onKeypress:et})),Me===!0&&typeof e.autocomplete=="string"&&e.autocomplete.length!==0&&Te.push(l("input",{class:"q-select__autocomplete-input",autocomplete:e.autocomplete,tabindex:-1,onKeyup:we}))}if(E.value!==void 0&&e.disable!==!0&&ve.value.length!==0){let bt=ve.value.map(gt=>l("option",{value:gt,selected:!0}));Te.push(l("select",{class:"hidden",name:E.value,multiple:e.multiple},bt))}let rt=e.useInput===!0||Me!==!0?void 0:H.splitAttrs.attributes.value;return l("div",{class:"q-field__native row items-center",...rt,...H.splitAttrs.listeners.value},Te)},getInnerAppend:()=>e.loading!==!0&&d.value!==!0&&e.hideDropdownIcon!==!0?[l(Re,{class:"q-select__dropdown-icon"+(i.value===!0?" rotate-180":""),name:Le.value})]:null}),bn(H)}});var Bh=["text","rect","circle","QBtn","QBadge","QChip","QToolbar","QCheckbox","QRadio","QToggle","QSlider","QRange","QInput","QAvatar"],Lh=["wave","pulse","pulse-x","pulse-y","fade","blink","none"],Ad=A({name:"QSkeleton",props:{...Se,tag:{type:String,default:"div"},type:{type:String,validator:e=>Bh.includes(e),default:"rect"},animation:{type:String,validator:e=>Lh.includes(e),default:"wave"},animationSpeed:{type:[String,Number],default:1500},square:Boolean,bordered:Boolean,size:String,width:String,height:String},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),n=s(()=>{let a=e.size!==void 0?[e.size,e.size]:[e.width,e.height];return{"--q-skeleton-speed":`${e.animationSpeed}ms`,width:a[0],height:a[1]}}),i=s(()=>`q-skeleton q-skeleton--${r.value===!0?"dark":"light"} q-skeleton--type-${e.type}`+(e.animation!=="none"?` q-skeleton--anim q-skeleton--anim-${e.animation}`:"")+(e.square===!0?" q-skeleton--square":"")+(e.bordered===!0?" q-skeleton--bordered":""));return()=>l(e.tag,{class:i.value,style:n.value},re(t.default))}});var $d=[["left","center","start","width"],["right","center","end","width"],["top","start","center","height"],["bottom","end","center","height"]],Ed=A({name:"QSlideItem",props:{...Se,leftColor:String,rightColor:String,topColor:String,bottomColor:String,onSlide:Function},emits:["action","top","right","bottom","left"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,i=xe(e,n),{getCache:a}=So(),u=q(null),c=null,f={},d={},h={},g=s(()=>n.lang.rtl===!0?{left:"right",right:"left"}:{left:"left",right:"right"}),m=s(()=>"q-slide-item q-item-type overflow-hidden"+(i.value===!0?" q-slide-item--dark q-dark":""));function v(){u.value.style.transform="translate(0,0)"}function x(k,S,b){e.onSlide!==void 0&&o("slide",{side:k,ratio:S,isReset:b})}function y(k){let S=u.value;if(k.isFirst)f={dir:null,size:{left:0,right:0,top:0,bottom:0},scale:0},S.classList.add("no-transition"),$d.forEach($=>{if(t[$[0]]!==void 0){let L=h[$[0]];L.style.transform="scale(1)",f.size[$[0]]=L.getBoundingClientRect()[$[3]]}}),f.axis=k.direction==="up"||k.direction==="down"?"Y":"X";else if(k.isFinal){S.classList.remove("no-transition"),f.scale===1?(S.style.transform=`translate${f.axis}(${f.dir*100}%)`,c!==null&&clearTimeout(c),c=setTimeout(()=>{c=null,o(f.showing,{reset:v}),o("action",{side:f.showing,reset:v})},230)):(S.style.transform="translate(0,0)",x(f.showing,0,!0));return}else k.direction=f.axis==="X"?k.offset.x<0?"left":"right":k.offset.y<0?"up":"down";if(t.left===void 0&&k.direction===g.value.right||t.right===void 0&&k.direction===g.value.left||t.top===void 0&&k.direction==="down"||t.bottom===void 0&&k.direction==="up"){S.style.transform="translate(0,0)";return}let b,p,C;f.axis==="X"?(p=k.direction==="left"?-1:1,b=p===1?g.value.left:g.value.right,C=k.distance.x):(p=k.direction==="up"?-2:2,b=p===2?"top":"bottom",C=k.distance.y),!(f.dir!==null&&Math.abs(p)!==Math.abs(f.dir))&&(f.dir!==p&&(["left","right","top","bottom"].forEach($=>{d[$]&&(d[$].style.visibility=b===$?"visible":"hidden")}),f.showing=b,f.dir=p),f.scale=Math.max(0,Math.min(1,(C-40)/f.size[b])),S.style.transform=`translate${f.axis}(${C*p/Math.abs(p)}px)`,h[b].style.transform=`scale(${f.scale})`,x(b,f.scale,!1))}return Mo(()=>{d={},h={}}),ye(()=>{c!==null&&clearTimeout(c)}),Object.assign(r,{reset:v}),()=>{let k=[],S={left:t[g.value.right]!==void 0,right:t[g.value.left]!==void 0,up:t.bottom!==void 0,down:t.top!==void 0},b=Object.keys(S).filter(C=>S[C]===!0);$d.forEach(C=>{let $=C[0];t[$]!==void 0&&k.push(l("div",{key:$,ref:L=>{d[$]=L},class:`q-slide-item__${$} absolute-full row no-wrap items-${C[1]} justify-${C[2]}`+(e[$+"Color"]!==void 0?` bg-${e[$+"Color"]}`:"")},[l("div",{ref:L=>{h[$]=L}},t[$]())]))});let p=l("div",{key:`${b.length===0?"only-":""} content`,ref:u,class:"q-slide-item__content"},re(t.default));return b.length===0?k.push(p):k.push(Et(p,a("dir#"+b.join(""),()=>{let C={prevent:!0,stop:!0,mouse:!0};return b.forEach($=>{C[$]=!0}),[[Rt,y,void 0,C]]}))),l("div",{class:m.value},k)}}});var Bd=A({name:"QSpace",setup(){let e=l("div",{class:"q-space"});return()=>e}});var Fh='',Ld=A({name:"QSpinnerAudio",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 55 80",xmlns:"http://www.w3.org/2000/svg",innerHTML:Fh})}});var Dh='',Fd=A({name:"QSpinnerBall",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 57 57",xmlns:"http://www.w3.org/2000/svg",innerHTML:Dh})}});var Vh='',Dd=A({name:"QSpinnerBars",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 135 140",xmlns:"http://www.w3.org/2000/svg",innerHTML:Vh})}});var zh='',Vd=A({name:"QSpinnerBox",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:zh})}});var Oh='',zd=A({name:"QSpinnerClock",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:Oh})}});var Ih='',Od=A({name:"QSpinnerComment",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:Ih})}});var Hh='',Id=A({name:"QSpinnerCube",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:Hh})}});var Qh='',Hd=A({name:"QSpinnerDots",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 120 30",xmlns:"http://www.w3.org/2000/svg",innerHTML:Qh})}});var Nh='',Qd=A({name:"QSpinnerFacebook",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",innerHTML:Nh})}});var jh='',Nd=A({name:"QSpinnerGears",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:jh})}});var Uh='',jd=A({name:"QSpinnerGrid",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 105 105",xmlns:"http://www.w3.org/2000/svg",innerHTML:Uh})}});var Kh='',Ud=A({name:"QSpinnerHearts",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 140 64",xmlns:"http://www.w3.org/2000/svg",innerHTML:Kh})}});var Wh='',Kd=A({name:"QSpinnerHourglass",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:Wh})}});var Yh='',Wd=A({name:"QSpinnerInfinity",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:Yh})}});var Xh='',Yd=A({name:"QSpinnerIos",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,stroke:"currentColor",fill:"currentColor",viewBox:"0 0 64 64",innerHTML:Xh})}});var Gh='',Xd=A({name:"QSpinnerOrbit",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:Gh})}});var Zh='',Gd=A({name:"QSpinnerOval",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",innerHTML:Zh})}});var Jh='',Zd=A({name:"QSpinnerPie",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:Jh})}});var ep='',Jd=A({name:"QSpinnerPuff",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg",innerHTML:ep})}});var tp='',ef=A({name:"QSpinnerRadio",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:tp})}});var op='',tf=A({name:"QSpinnerRings",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",innerHTML:op})}});var np='',of=A({name:"QSpinnerTail",props:We,setup(e){let{cSize:t,classes:o}=Ue(e);return()=>l("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",innerHTML:np})}});var nf=A({name:"QSplitter",props:{...Se,modelValue:{type:Number,required:!0},reverse:Boolean,unit:{type:String,default:"%",validator:e=>["%","px"].includes(e)},limits:{type:Array,validator:e=>e.length!==2||typeof e[0]!="number"||typeof e[1]!="number"?!1:e[0]>=0&&e[0]<=e[1]},emitImmediately:Boolean,horizontal:Boolean,disable:Boolean,beforeClass:[Array,String,Object],afterClass:[Array,String,Object],separatorClass:[Array,String,Object],separatorStyle:[Array,String,Object]},emits:["update:modelValue"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=xe(e,r),i=q(null),a={before:q(null),after:q(null)},u=s(()=>`q-splitter no-wrap ${e.horizontal===!0?"q-splitter--horizontal column":"q-splitter--vertical row"} q-splitter--${e.disable===!0?"disabled":"workable"}`+(n.value===!0?" q-splitter--dark":"")),c=s(()=>e.horizontal===!0?"height":"width"),f=s(()=>e.reverse!==!0?"before":"after"),d=s(()=>e.limits!==void 0?e.limits:e.unit==="%"?[10,90]:[50,1/0]);function h(C){return(e.unit==="%"?C:Math.round(C))+e.unit}let g=s(()=>({[f.value]:{[c.value]:h(e.modelValue)}})),m,v,x,y,k;function S(C){if(C.isFirst===!0){let L=i.value.getBoundingClientRect()[c.value];m=e.horizontal===!0?"up":"left",v=e.unit==="%"?100:L,x=Math.min(v,d.value[1],Math.max(d.value[0],e.modelValue)),y=(e.reverse!==!0?1:-1)*(e.horizontal===!0?1:r.lang.rtl===!0?-1:1)*(e.unit==="%"?L===0?0:100/L:1),i.value.classList.add("q-splitter--active");return}if(C.isFinal===!0){k!==e.modelValue&&o("update:modelValue",k),i.value.classList.remove("q-splitter--active");return}let $=x+y*(C.direction===m?-1:1)*C.distance[e.horizontal===!0?"y":"x"];k=Math.min(v,d.value[1],Math.max(d.value[0],$)),a[f.value].value.style[c.value]=h(k),e.emitImmediately===!0&&e.modelValue!==k&&o("update:modelValue",k)}let b=s(()=>[[Rt,S,void 0,{[e.horizontal===!0?"vertical":"horizontal"]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function p(C,$){C<$[0]?o("update:modelValue",$[0]):C>$[1]&&o("update:modelValue",$[1])}return Y(()=>e.modelValue,C=>{p(C,d.value)}),Y(()=>e.limits,()=>{Ee(()=>{p(e.modelValue,d.value)})}),()=>{let C=[l("div",{ref:a.before,class:["q-splitter__panel q-splitter__before"+(e.reverse===!0?" col":""),e.beforeClass],style:g.value.before},re(t.before)),l("div",{class:["q-splitter__separator",e.separatorClass],style:e.separatorStyle,"aria-disabled":e.disable===!0?"true":void 0},[Mt("div",{class:"q-splitter__separator-area absolute-full"},re(t.separator),"sep",e.disable!==!0,()=>b.value)]),l("div",{ref:a.after,class:["q-splitter__panel q-splitter__after"+(e.reverse===!0?"":" col"),e.afterClass],style:g.value.after},re(t.after))];return l("div",{class:u.value,ref:i},Xe(t.default,C))}}});var Ga=A({name:"StepHeader",props:{stepper:{},step:{},goToPanel:Function},setup(e,{attrs:t}){let{proxy:{$q:o}}=K(),r=q(null),n=s(()=>e.stepper.modelValue===e.step.name),i=s(()=>{let y=e.step.disable;return y===!0||y===""}),a=s(()=>{let y=e.step.error;return y===!0||y===""}),u=s(()=>{let y=e.step.done;return i.value===!1&&(y===!0||y==="")}),c=s(()=>{let y=e.step.headerNav,k=y===!0||y===""||y===void 0;return i.value===!1&&e.stepper.headerNav&&k}),f=s(()=>e.step.prefix&&(n.value===!1||e.stepper.activeIcon==="none")&&(a.value===!1||e.stepper.errorIcon==="none")&&(u.value===!1||e.stepper.doneIcon==="none")),d=s(()=>{let y=e.step.icon||e.stepper.inactiveIcon;if(n.value===!0){let k=e.step.activeIcon||e.stepper.activeIcon;return k==="none"?y:k||o.iconSet.stepper.active}if(a.value===!0){let k=e.step.errorIcon||e.stepper.errorIcon;return k==="none"?y:k||o.iconSet.stepper.error}if(i.value===!1&&u.value===!0){let k=e.step.doneIcon||e.stepper.doneIcon;return k==="none"?y:k||o.iconSet.stepper.done}return y}),h=s(()=>{let y=a.value===!0?e.step.errorColor||e.stepper.errorColor:void 0;if(n.value===!0){let k=e.step.activeColor||e.stepper.activeColor||e.step.color;return k!==void 0?k:y}return y!==void 0?y:i.value===!1&&u.value===!0?e.step.doneColor||e.stepper.doneColor||e.step.color||e.stepper.inactiveColor:e.step.color||e.stepper.inactiveColor}),g=s(()=>"q-stepper__tab col-grow flex items-center no-wrap relative-position"+(h.value!==void 0?` text-${h.value}`:"")+(a.value===!0?" q-stepper__tab--error q-stepper__tab--error-with-"+(f.value===!0?"prefix":"icon"):"")+(n.value===!0?" q-stepper__tab--active":"")+(u.value===!0?" q-stepper__tab--done":"")+(c.value===!0?" q-stepper__tab--navigation q-focusable q-hoverable":"")+(i.value===!0?" q-stepper__tab--disabled":"")),m=s(()=>e.stepper.headerNav!==!0?!1:c.value);function v(){r.value!==null&&r.value.focus(),n.value===!1&&e.goToPanel(e.step.name)}function x(y){y.keyCode===13&&n.value===!1&&e.goToPanel(e.step.name)}return()=>{let y={class:g.value};c.value===!0&&(y.onClick=v,y.onKeyup=x,Object.assign(y,i.value===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:t.tabindex||0}));let k=[l("div",{class:"q-focus-helper",tabindex:-1,ref:r}),l("div",{class:"q-stepper__dot row flex-center q-stepper__line relative-position"},[l("span",{class:"row flex-center"},[f.value===!0?e.step.prefix:l(Re,{name:d.value})])])];if(e.step.title!==void 0&&e.step.title!==null){let S=[l("div",{class:"q-stepper__title"},e.step.title)];e.step.caption!==void 0&&e.step.caption!==null&&S.push(l("div",{class:"q-stepper__caption"},e.step.caption)),k.push(l("div",{class:"q-stepper__label q-stepper__line relative-position"},S))}return Et(l("div",y,k),[[$o,m.value]])}}});function af(e){return l("div",{class:"q-stepper__step-content"},[l("div",{class:"q-stepper__step-inner"},re(e.default))])}var rf={setup(e,{slots:t}){return()=>af(t)}},lf=A({name:"QStep",props:{...yr,icon:String,color:String,title:{type:String,required:!0},caption:String,prefix:[String,Number],doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String,headerNav:{type:Boolean,default:!0},done:Boolean,error:Boolean,onScroll:[Function,Array]},setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=ht(Ai,Ge);if(n===Ge)return console.error("QStep needs to be a child of QStepper"),Ge;let{getCache:i}=So(),a=q(null),u=s(()=>n.value.modelValue===e.name),c=s(()=>r.platform.is.ios!==!0&&r.platform.is.chrome===!0||u.value!==!0||n.value.vertical!==!0?{}:{onScroll(h){let{target:g}=h;g.scrollTop>0&&(g.scrollTop=0),e.onScroll!==void 0&&o("scroll",h)}}),f=s(()=>typeof e.name=="string"||typeof e.name=="number"?e.name:String(e.name));function d(){let h=n.value.vertical;return h===!0&&n.value.keepAlive===!0?l(wi,n.value.keepAliveProps.value,u.value===!0?[l(n.value.needsUniqueKeepAliveWrapper.value===!0?i(f.value,()=>({...rf,name:f.value})):rf,{key:f.value},t.default)]:void 0):h!==!0||u.value===!0?af(t):void 0}return()=>l("div",{ref:a,class:"q-stepper__step",role:"tabpanel",...c.value},n.value.vertical===!0?[l(Ga,{stepper:n.value,step:e,goToPanel:n.value.goToPanel}),n.value.animated===!0?l(gn,d):d()]:[d()])}});var rp=/(-\w)/g;function ip(e){let t={};for(let o in e){let r=o.replace(rp,n=>n[1].toUpperCase());t[r]=e[o]}return t}var uf=A({name:"QStepper",props:{...Se,...Sr,flat:Boolean,bordered:Boolean,alternativeLabels:Boolean,headerNav:Boolean,contracted:Boolean,headerClass:String,inactiveColor:String,inactiveIcon:String,doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String},emits:xr,setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),{updatePanelsList:n,isValidPanelName:i,updatePanelIndex:a,getPanelContent:u,getPanels:c,panelDirectives:f,goToPanel:d,keepAliveProps:h,needsUniqueKeepAliveWrapper:g}=_r();jt(Ai,s(()=>({goToPanel:d,keepAliveProps:h,needsUniqueKeepAliveWrapper:g,...e})));let m=s(()=>`q-stepper q-stepper--${e.vertical===!0?"vertical":"horizontal"}`+(e.flat===!0?" q-stepper--flat":"")+(e.bordered===!0?" q-stepper--bordered":"")+(r.value===!0?" q-stepper--dark q-dark":"")),v=s(()=>`q-stepper__header row items-stretch justify-between q-stepper__header--${e.alternativeLabels===!0?"alternative":"standard"}-labels`+(e.flat===!1||e.bordered===!0?" q-stepper__header--border":"")+(e.contracted===!0?" q-stepper__header--contracted":"")+(e.headerClass!==void 0?` ${e.headerClass}`:""));function x(){let y=re(t.message,[]);if(e.vertical===!0){i(e.modelValue)&&a();let k=l("div",{class:"q-stepper__content"},re(t.default));return y===void 0?[k]:y.concat(k)}return[l("div",{class:v.value},c().map(k=>{let S=ip(k.props);return l(Ga,{key:S.name,stepper:e,step:S,goToPanel:d})})),y,Mt("div",{class:"q-stepper__content q-panel-parent"},u(),"cont",e.swipeable,()=>f.value)]}return()=>(n(t),l("div",{class:m.value},Xe(t.navigation,x())))}});var sf=A({name:"QStepperNavigation",setup(e,{slots:t}){return()=>l("div",{class:"q-stepper__nav"},re(t.default))}});var Za=A({name:"QTh",props:{props:Object,autoWidth:Boolean},emits:["click"],setup(e,{slots:t,emit:o}){let r=K(),{proxy:{$q:n}}=r,i=a=>{o("click",a)};return()=>{if(e.props===void 0)return l("th",{class:e.autoWidth===!0?"q-table--col-auto-width":"",onClick:i},re(t.default));let a,u,c=r.vnode.key;if(c){if(a=e.props.colsMap[c],a===void 0)return}else a=e.props.col;if(a.sortable===!0){let d=a.align==="right"?"unshift":"push";u=Po(t.default,[]),u[d](l(Re,{class:a.__iconClass,name:n.iconSet.table.arrowUp}))}else u=re(t.default);let f={class:a.__thClass+(e.autoWidth===!0?" q-table--col-auto-width":""),style:a.headerStyle,onClick:d=>{a.sortable===!0&&e.props.sort(a),i(d)}};return l("th",f,u)}}});function Ja(e,t){return l("div",e,[l("table",{class:"q-table"},t)])}var ap={list:Oa,table:Ia},lp=["list","table","__qtable"],el=A({name:"QVirtualScroll",props:{...hi,type:{type:String,default:"list",validator:e=>lp.includes(e)},items:{type:Array,default:()=>[]},itemsFn:Function,itemsSize:Number,scrollTarget:eo},setup(e,{slots:t,attrs:o}){let r,n=q(null),i=s(()=>e.itemsSize>=0&&e.itemsFn!==void 0?parseInt(e.itemsSize,10):Array.isArray(e.items)?e.items.length:0),{virtualScrollSliceRange:a,localResetVirtualScroll:u,padVirtualScroll:c,onVirtualScrollEvt:f}=Ya({virtualScrollLength:i,getVirtualScrollTarget:v,getVirtualScrollEl:m}),d=s(()=>{if(i.value===0)return[];let S=(b,p)=>({index:a.value.from+p,item:b});return e.itemsFn===void 0?e.items.slice(a.value.from,a.value.to).map(S):e.itemsFn(a.value.from,a.value.to-a.value.from).map(S)}),h=s(()=>"q-virtual-scroll q-virtual-scroll"+(e.virtualScrollHorizontal===!0?"--horizontal":"--vertical")+(e.scrollTarget!==void 0?"":" scroll")),g=s(()=>e.scrollTarget!==void 0?{}:{tabindex:0});Y(i,()=>{u()}),Y(()=>e.scrollTarget,()=>{y(),x()});function m(){return n.value.$el||n.value}function v(){return r}function x(){r=Bt(m(),e.scrollTarget),r.addEventListener("scroll",f,Ze.passive)}function y(){r!==void 0&&(r.removeEventListener("scroll",f,Ze.passive),r=void 0)}function k(){let S=c(e.type==="list"?"div":"tbody",d.value.map(t.default));return t.before!==void 0&&(S=t.before().concat(S)),Xe(t.after,S)}return Hn(()=>{u()}),je(()=>{x()}),Nt(()=>{x()}),Pt(()=>{y()}),ye(()=>{y()}),()=>{if(t.default===void 0){console.error("QVirtualScroll: default scoped slot is required for rendering");return}return e.type==="__qtable"?Ja({ref:n,class:"q-table__middle "+h.value},k()):l(ap[e.type],{...o,ref:n,class:[o.class,h.value],...g.value},k)}}});function cf(e,t){return new Date(e)-new Date(t)}var df={sortMethod:Function,binaryStateSort:Boolean,columnSortOrder:{type:String,validator:e=>e==="ad"||e==="da",default:"ad"}};function ff(e,t,o,r){let n=s(()=>{let{sortBy:u}=t.value;return u&&o.value.find(c=>c.name===u)||null}),i=s(()=>e.sortMethod!==void 0?e.sortMethod:(u,c,f)=>{let d=o.value.find(m=>m.name===c);if(d===void 0||d.field===void 0)return u;let h=f===!0?-1:1,g=typeof d.field=="function"?m=>d.field(m):m=>m[d.field];return u.sort((m,v)=>{let x=g(m),y=g(v);return d.rawSort!==void 0?d.rawSort(x,y,m,v)*h:x==null?-1*h:y==null?1*h:d.sort!==void 0?d.sort(x,y,m,v)*h:fo(x)===!0&&fo(y)===!0?(x-y)*h:Go(x)===!0&&Go(y)===!0?cf(x,y)*h:typeof x=="boolean"&&typeof y=="boolean"?(x-y)*h:([x,y]=[x,y].map(k=>(k+"").toLocaleString().toLowerCase()),xg.name===u);h!==void 0&&h.sortOrder&&(c=h.sortOrder)}let{sortBy:f,descending:d}=t.value;f!==u?(f=u,d=c==="da"):e.binaryStateSort===!0?d=!d:d===!0?c==="ad"?f=null:d=!1:c==="ad"?d=!0:f=null,r({sortBy:f,descending:d,page:1})}return{columnToSort:n,computedSortMethod:i,sort:a}}var mf={filter:[String,Object],filterMethod:Function};function vf(e,t){let o=s(()=>e.filterMethod!==void 0?e.filterMethod:(r,n,i,a)=>{let u=n?n.toLowerCase():"";return r.filter(c=>i.some(f=>{let d=a(f,c)+"";return(d==="undefined"||d==="null"?"":d.toLowerCase()).indexOf(u)!==-1}))});return Y(()=>e.filter,()=>{Ee(()=>{t({page:1},!0)})},{deep:!0}),{computedFilterMethod:o}}function up(e,t){for(let o in t)if(t[o]!==e[o])return!1;return!0}function gf(e){return e.page<1&&(e.page=1),e.rowsPerPage!==void 0&&e.rowsPerPage<1&&(e.rowsPerPage=0),e}var hf={pagination:Object,rowsPerPageOptions:{type:Array,default:()=>[5,7,10,15,20,25,50,0]},"onUpdate:pagination":[Function,Array]};function pf(e,t){let{props:o,emit:r}=e,n=q(Object.assign({sortBy:null,descending:!1,page:1,rowsPerPage:o.rowsPerPageOptions.length!==0?o.rowsPerPageOptions[0]:5},o.pagination)),i=s(()=>{let d=o["onUpdate:pagination"]!==void 0?{...n.value,...o.pagination}:n.value;return gf(d)}),a=s(()=>i.value.rowsNumber!==void 0);function u(d){c({pagination:d,filter:o.filter})}function c(d={}){Ee(()=>{r("request",{pagination:d.pagination||i.value,filter:d.filter||o.filter,getCellValue:t})})}function f(d,h){let g=gf({...i.value,...d});if(up(i.value,g)===!0){a.value===!0&&h===!0&&u(g);return}if(a.value===!0){u(g);return}o.pagination!==void 0&&o["onUpdate:pagination"]!==void 0?r("update:pagination",g):n.value=g}return{innerPagination:n,computedPagination:i,isServerSide:a,requestServerInteraction:c,setPagination:f}}function bf(e,t,o,r,n,i){let{props:a,emit:u,proxy:{$q:c}}=e,f=s(()=>r.value===!0?o.value.rowsNumber||0:i.value),d=s(()=>{let{page:p,rowsPerPage:C}=o.value;return(p-1)*C}),h=s(()=>{let{page:p,rowsPerPage:C}=o.value;return p*C}),g=s(()=>o.value.page===1),m=s(()=>o.value.rowsPerPage===0?1:Math.max(1,Math.ceil(f.value/o.value.rowsPerPage))),v=s(()=>h.value===0?!0:o.value.page>=m.value),x=s(()=>(a.rowsPerPageOptions.includes(t.value.rowsPerPage)?a.rowsPerPageOptions:[t.value.rowsPerPage].concat(a.rowsPerPageOptions)).map(C=>({label:C===0?c.lang.table.allRows:""+C,value:C})));Y(m,(p,C)=>{if(p===C)return;let $=o.value.page;p&&!$?n({page:1}):p<$&&n({page:p})});function y(){n({page:1})}function k(){let{page:p}=o.value;p>1&&n({page:p-1})}function S(){let{page:p,rowsPerPage:C}=o.value;h.value>0&&p*C["single","multiple","none"].includes(e)},selected:{type:Array,default:()=>[]}},Sf=["update:selected","selection"];function xf(e,t,o,r){let n=s(()=>{let v={};return e.selected.map(r.value).forEach(x=>{v[x]=!0}),v}),i=s(()=>e.selection!=="none"),a=s(()=>e.selection==="single"),u=s(()=>e.selection==="multiple"),c=s(()=>o.value.length!==0&&o.value.every(v=>n.value[r.value(v)]===!0)),f=s(()=>c.value!==!0&&o.value.some(v=>n.value[r.value(v)]===!0)),d=s(()=>e.selected.length);function h(v){return n.value[v]===!0}function g(){t("update:selected",[])}function m(v,x,y,k){t("selection",{rows:x,added:y,keys:v,evt:k});let S=a.value===!0?y===!0?x:[]:y===!0?e.selected.concat(x):e.selected.filter(b=>v.includes(r.value(b))===!1);t("update:selected",S)}return{hasSelectionMode:i,singleSelection:a,multipleSelection:u,allRowsSelected:c,someRowsSelected:f,rowsSelectedNumber:d,isRowSelected:h,clearSelection:g,updateSelection:m}}function _f(e){return Array.isArray(e)?e.slice():[]}var Cf={expanded:Array},wf=["update:expanded"];function kf(e,t){let o=q(_f(e.expanded));Y(()=>e.expanded,a=>{o.value=_f(a)});function r(a){return o.value.includes(a)}function n(a){e.expanded!==void 0?t("update:expanded",a):o.value=a}function i(a,u){let c=o.value.slice(),f=c.indexOf(a);u===!0?f===-1&&(c.push(a),n(c)):f!==-1&&(c.splice(f,1),n(c))}return{isRowExpanded:r,setExpanded:n,updateExpanded:i}}var qf={visibleColumns:Array};function Tf(e,t,o){let r=s(()=>{if(e.columns!==void 0)return e.columns;let u=e.rows[0];return u!==void 0?Object.keys(u).map(c=>({name:c,label:c.toUpperCase(),field:c,align:fo(u[c])?"right":"left",sortable:!0})):[]}),n=s(()=>{let{sortBy:u,descending:c}=t.value;return(e.visibleColumns!==void 0?r.value.filter(d=>d.required===!0||e.visibleColumns.includes(d.name)===!0):r.value).map(d=>{let h=d.align||"right",g=`text-${h}`;return{...d,align:h,__iconClass:`q-table__sort-icon q-table__sort-icon--${h}`,__thClass:g+(d.headerClasses!==void 0?" "+d.headerClasses:"")+(d.sortable===!0?" sortable":"")+(d.name===u?` sorted ${c===!0?"sort-desc":""}`:""),__tdStyle:d.style!==void 0?typeof d.style!="function"?()=>d.style:d.style:()=>null,__tdClass:d.classes!==void 0?typeof d.classes!="function"?()=>g+" "+d.classes:m=>g+" "+d.classes(m):()=>g}})}),i=s(()=>{let u={};return n.value.forEach(c=>{u[c.name]=c}),u}),a=s(()=>e.tableColspan!==void 0?e.tableColspan:n.value.length+(o.value===!0?1:0));return{colList:r,computedCols:n,computedColsMap:i,computedColspan:a}}var tl="q-table__bottom row items-center",Mf={};gu.forEach(e=>{Mf[e]={}});var Rf=A({name:"QTable",props:{rows:{type:Array,required:!0},rowKey:{type:[String,Function],default:"id"},columns:Array,loading:Boolean,iconFirstPage:String,iconPrevPage:String,iconNextPage:String,iconLastPage:String,title:String,hideHeader:Boolean,grid:Boolean,gridHeader:Boolean,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,separator:{type:String,default:"horizontal",validator:e=>["horizontal","vertical","cell","none"].includes(e)},wrapCells:Boolean,virtualScroll:Boolean,virtualScrollTarget:{},...Mf,noDataLabel:String,noResultsLabel:String,loadingLabel:String,selectedRowsLabel:Function,rowsPerPageLabel:String,paginationLabel:Function,color:{type:String,default:"grey-8"},titleClass:[String,Array,Object],tableStyle:[String,Array,Object],tableClass:[String,Array,Object],tableHeaderStyle:[String,Array,Object],tableHeaderClass:[String,Array,Object],cardContainerClass:[String,Array,Object],cardContainerStyle:[String,Array,Object],cardStyle:[String,Array,Object],cardClass:[String,Array,Object],hideBottom:Boolean,hideSelectedBanner:Boolean,hideNoData:Boolean,hidePagination:Boolean,onRowClick:Function,onRowDblclick:Function,onRowContextmenu:Function,...Se,...Cr,...qf,...mf,...hf,...Cf,...yf,...df},emits:["request","virtualScroll",...wr,...wf,...Sf],setup(e,{slots:t,emit:o}){let r=K(),{proxy:{$q:n}}=r,i=xe(e,n),{inFullscreen:a,toggleFullscreen:u}=kr(),c=s(()=>typeof e.rowKey=="function"?e.rowKey:ne=>ne[e.rowKey]),f=q(null),d=q(null),h=s(()=>e.grid!==!0&&e.virtualScroll===!0),g=s(()=>" q-table__card"+(i.value===!0?" q-table__card--dark q-dark":"")+(e.square===!0?" q-table--square":"")+(e.flat===!0?" q-table--flat":"")+(e.bordered===!0?" q-table--bordered":"")),m=s(()=>`q-table__container q-table--${e.separator}-separator column no-wrap`+(e.grid===!0?" q-table--grid":g.value)+(i.value===!0?" q-table--dark":"")+(e.dense===!0?" q-table--dense":"")+(e.wrapCells===!1?" q-table--no-wrap":"")+(a.value===!0?" fullscreen scroll":"")),v=s(()=>m.value+(e.loading===!0?" q-table--loading":""));Y(()=>e.tableStyle+e.tableClass+e.tableHeaderStyle+e.tableHeaderClass+m.value,()=>{h.value===!0&&d.value!==null&&d.value.reset()});let{innerPagination:x,computedPagination:y,isServerSide:k,requestServerInteraction:S,setPagination:b}=pf(r,oe),{computedFilterMethod:p}=vf(e,b),{isRowExpanded:C,setExpanded:$,updateExpanded:L}=kf(e,o),D=s(()=>{let ne=e.rows;if(k.value===!0||ne.length===0)return ne;let{sortBy:pe,descending:Ae}=y.value;return e.filter&&(ne=p.value(ne,e.filter,H.value,oe)),U.value!==null&&(ne=le.value(e.rows===ne?ne.slice():ne,pe,Ae)),ne}),B=s(()=>D.value.length),E=s(()=>{let ne=D.value;if(k.value===!0)return ne;let{rowsPerPage:pe}=y.value;return pe!==0&&(z.value===0&&e.rows!==ne?ne.length>ae.value&&(ne=ne.slice(0,ae.value)):ne=ne.slice(z.value,ae.value)),ne}),{hasSelectionMode:V,singleSelection:M,multipleSelection:T,allRowsSelected:_,someRowsSelected:F,rowsSelectedNumber:I,isRowSelected:j,clearSelection:W,updateSelection:ee}=xf(e,o,E,c),{colList:fe,computedCols:H,computedColsMap:w,computedColspan:X}=Tf(e,y,V),{columnToSort:U,computedSortMethod:le,sort:R}=ff(e,y,fe,b),{firstRowIndex:z,lastRowIndex:ae,isFirstPage:Q,isLastPage:me,pagesNumber:qe,computedRowsPerPageOptions:G,computedRowsNumber:ce,firstPage:ge,prevPage:_e,nextPage:Be,lastPage:de}=bf(r,x,y,k,b,B),Le=s(()=>E.value.length===0),He=s(()=>{let ne={};return gu.forEach(pe=>{ne[pe]=e[pe]}),ne.virtualScrollItemSize===void 0&&(ne.virtualScrollItemSize=e.dense===!0?28:48),ne});function Qe(){h.value===!0&&d.value.reset()}function ot(){if(e.grid===!0)return jo();let ne=e.hideHeader!==!0?Ce:null;if(h.value===!0){let Ae=t["top-row"],De=t["bottom-row"],tt={default:St=>Fe(St.item,t.body,St.index)};if(Ae!==void 0){let St=l("tbody",Ae({cols:H.value}));tt.before=ne===null?()=>St:()=>[ne()].concat(St)}else ne!==null&&(tt.before=ne);return De!==void 0&&(tt.after=()=>l("tbody",De({cols:H.value}))),l(el,{ref:d,class:e.tableClass,style:e.tableStyle,...He.value,scrollTarget:e.virtualScrollTarget,items:E.value,type:"__qtable",tableColspan:X.value,onVirtualScroll:Z},tt)}let pe=[Ie()];return ne!==null&&pe.unshift(ne()),Ja({class:["q-table__middle scroll",e.tableClass],style:e.tableStyle},pe)}function ie(ne,pe){if(d.value!==null){d.value.scrollTo(ne,pe);return}ne=parseInt(ne,10);let Ae=f.value.querySelector(`tbody tr:nth-of-type(${ne+1})`);if(Ae!==null){let De=f.value.querySelector(".q-table__middle.scroll"),tt=Ae.offsetTop-e.virtualScrollStickySizeStart,St=tt{let he=t[`body-cell-${te.name}`],be=he!==void 0?he:St;return be!==void 0?be(Oe({key:De,row:ne,pageIndex:Ae,col:te})):l("td",{class:te.__tdClass(ne),style:te.__tdStyle(ne)},oe(te,ne))});if(V.value===!0){let te=t["body-selection"],he=te!==void 0?te(lt({key:De,row:ne,pageIndex:Ae})):[l(zo,{modelValue:tt,color:e.color,dark:i.value,dense:e.dense,"onUpdate:modelValue":(be,it)=>{ee([De],[ne],be,it)}})];P.unshift(l("td",{class:"q-table--col-auto-width"},he))}let N={key:De,class:{selected:tt}};return e.onRowClick!==void 0&&(N.class["cursor-pointer"]=!0,N.onClick=te=>{o("rowClick",te,ne,Ae)}),e.onRowDblclick!==void 0&&(N.class["cursor-pointer"]=!0,N.onDblclick=te=>{o("rowDblclick",te,ne,Ae)}),e.onRowContextmenu!==void 0&&(N.class["cursor-pointer"]=!0,N.onContextmenu=te=>{o("rowContextmenu",te,ne,Ae)}),l("tr",N,P)}function Ie(){let ne=t.body,pe=t["top-row"],Ae=t["bottom-row"],De=E.value.map((tt,St)=>Fe(tt,ne,St));return pe!==void 0&&(De=pe({cols:H.value}).concat(De)),Ae!==void 0&&(De=De.concat(Ae({cols:H.value}))),l("tbody",De)}function Ve(ne){return ut(ne),ne.cols=ne.cols.map(pe=>ft({...pe},"value",()=>oe(pe,ne.row))),ne}function Oe(ne){return ut(ne),ft(ne,"value",()=>oe(ne.col,ne.row)),ne}function lt(ne){return ut(ne),ne}function ut(ne){Object.assign(ne,{cols:H.value,colsMap:w.value,sort:R,rowIndex:z.value+ne.pageIndex,color:e.color,dark:i.value,dense:e.dense}),V.value===!0&&ft(ne,"selected",()=>j(ne.key),(pe,Ae)=>{ee([ne.key],[ne.row],pe,Ae)}),ft(ne,"expand",()=>C(ne.key),pe=>{L(ne.key,pe)})}function oe(ne,pe){let Ae=typeof ne.field=="function"?ne.field(pe):pe[ne.field];return ne.format!==void 0?ne.format(Ae,pe):Ae}let ue=s(()=>({pagination:y.value,pagesNumber:qe.value,isFirstPage:Q.value,isLastPage:me.value,firstPage:ge,prevPage:_e,nextPage:Be,lastPage:de,inFullscreen:a.value,toggleFullscreen:u}));function J(){let ne=t.top,pe=t["top-left"],Ae=t["top-right"],De=t["top-selection"],tt=V.value===!0&&De!==void 0&&I.value>0,St="q-table__top relative-position row items-center";if(ne!==void 0)return l("div",{class:St},[ne(ue.value)]);let P;if(tt===!0?P=De(ue.value).slice():(P=[],pe!==void 0?P.push(l("div",{class:"q-table__control"},[pe(ue.value)])):e.title&&P.push(l("div",{class:"q-table__control"},[l("div",{class:["q-table__title",e.titleClass]},e.title)]))),Ae!==void 0&&(P.push(l("div",{class:"q-table__separator col"})),P.push(l("div",{class:"q-table__control"},[Ae(ue.value)]))),P.length!==0)return l("div",{class:St},P)}let se=s(()=>F.value===!0?null:_.value);function Ce(){let ne=Ke();return e.loading===!0&&t.loading===void 0&&ne.push(l("tr",{class:"q-table__progress"},[l("th",{class:"relative-position",colspan:X.value},ve())])),l("thead",ne)}function Ke(){let ne=t.header,pe=t["header-cell"];if(ne!==void 0)return ne(we({header:!0})).slice();let Ae=H.value.map(De=>{let tt=t[`header-cell-${De.name}`],St=tt!==void 0?tt:pe,P=we({col:De});return St!==void 0?St(P):l(Za,{key:De.name,props:P},()=>De.label)});if(M.value===!0&&e.grid!==!0)Ae.unshift(l("th",{class:"q-table--col-auto-width"}," "));else if(T.value===!0){let De=t["header-selection"],tt=De!==void 0?De(we({})):[l(zo,{color:e.color,modelValue:se.value,dark:i.value,dense:e.dense,"onUpdate:modelValue":et})];Ae.unshift(l("th",{class:"q-table--col-auto-width"},tt))}return[l("tr",{class:e.tableHeaderClass,style:e.tableHeaderStyle},Ae)]}function we(ne){return Object.assign(ne,{cols:H.value,sort:R,colsMap:w.value,color:e.color,dark:i.value,dense:e.dense}),T.value===!0&&ft(ne,"selected",()=>se.value,et),ne}function et(ne){F.value===!0&&(ne=!1),ee(E.value.map(c.value),E.value,ne)}let pt=s(()=>{let ne=[e.iconFirstPage||n.iconSet.table.firstPage,e.iconPrevPage||n.iconSet.table.prevPage,e.iconNextPage||n.iconSet.table.nextPage,e.iconLastPage||n.iconSet.table.lastPage];return n.lang.rtl===!0?ne.reverse():ne});function yt(){if(e.hideBottom===!0)return;if(Le.value===!0){if(e.hideNoData===!0)return;let Ae=e.loading===!0?e.loadingLabel||n.lang.table.loading:e.filter?e.noResultsLabel||n.lang.table.noResults:e.noDataLabel||n.lang.table.noData,De=t["no-data"],tt=De!==void 0?[De({message:Ae,icon:n.iconSet.table.warning,filter:e.filter})]:[l(Re,{class:"q-table__bottom-nodata-icon",name:n.iconSet.table.warning}),Ae];return l("div",{class:tl+" q-table__bottom--nodata"},tt)}let ne=t.bottom;if(ne!==void 0)return l("div",{class:tl},[ne(ue.value)]);let pe=e.hideSelectedBanner!==!0&&V.value===!0&&I.value>0?[l("div",{class:"q-table__control"},[l("div",[(e.selectedRowsLabel||n.lang.table.selectedRecords)(I.value)])])]:[];if(e.hidePagination!==!0)return l("div",{class:tl+" justify-end"},so(pe));if(pe.length!==0)return l("div",{class:tl},pe)}function Gt(ne){b({page:1,rowsPerPage:ne.value})}function so(ne){let pe,{rowsPerPage:Ae}=y.value,De=e.paginationLabel||n.lang.table.pagination,tt=t.pagination,St=e.rowsPerPageOptions.length>1;if(ne.push(l("div",{class:"q-table__separator col"})),St===!0&&ne.push(l("div",{class:"q-table__control"},[l("span",{class:"q-table__bottom-item"},[e.rowsPerPageLabel||n.lang.table.recordsPerPage]),l(Xa,{class:"q-table__select inline q-table__bottom-item",color:e.color,modelValue:Ae,options:G.value,displayValue:Ae===0?n.lang.table.allRows:Ae,dark:i.value,borderless:!0,dense:!0,optionsDense:!0,optionsCover:!0,"onUpdate:modelValue":Gt})])),tt!==void 0)pe=tt(ue.value);else if(pe=[l("span",Ae!==0?{class:"q-table__bottom-item"}:{},[Ae?De(z.value+1,Math.min(ae.value,ce.value),ce.value):De(1,B.value,ce.value)])],Ae!==0&&qe.value>1){let P={color:e.color,round:!0,dense:!0,flat:!0};e.dense===!0&&(P.size="sm"),qe.value>2&&pe.push(l(ze,{key:"pgFirst",...P,icon:pt.value[0],disable:Q.value,onClick:ge})),pe.push(l(ze,{key:"pgPrev",...P,icon:pt.value[1],disable:Q.value,onClick:_e}),l(ze,{key:"pgNext",...P,icon:pt.value[2],disable:me.value,onClick:Be})),qe.value>2&&pe.push(l(ze,{key:"pgLast",...P,icon:pt.value[3],disable:me.value,onClick:de}))}return ne.push(l("div",{class:"q-table__control"},pe)),ne}function To(){let ne=e.gridHeader===!0?[l("table",{class:"q-table"},[Ce(l)])]:e.loading===!0&&t.loading===void 0?ve(l):void 0;return l("div",{class:"q-table__middle"},ne)}function jo(){let ne=t.item!==void 0?t.item:pe=>{let Ae=pe.cols.map(tt=>l("div",{class:"q-table__grid-item-row"},[l("div",{class:"q-table__grid-item-title"},[tt.label]),l("div",{class:"q-table__grid-item-value"},[tt.value])]));if(V.value===!0){let tt=t["body-selection"],St=tt!==void 0?tt(pe):[l(zo,{modelValue:pe.selected,color:e.color,dark:i.value,dense:e.dense,"onUpdate:modelValue":(P,N)=>{ee([pe.key],[pe.row],P,N)}})];Ae.unshift(l("div",{class:"q-table__grid-item-row"},St),l(lo,{dark:i.value}))}let De={class:["q-table__grid-item-card"+g.value,e.cardClass],style:e.cardStyle};return(e.onRowClick!==void 0||e.onRowDblclick!==void 0)&&(De.class[0]+=" cursor-pointer",e.onRowClick!==void 0&&(De.onClick=tt=>{o("RowClick",tt,pe.row,pe.pageIndex)}),e.onRowDblclick!==void 0&&(De.onDblclick=tt=>{o("RowDblclick",tt,pe.row,pe.pageIndex)})),l("div",{class:"q-table__grid-item col-xs-12 col-sm-6 col-md-4 col-lg-3"+(pe.selected===!0?" q-table__grid-item--selected":"")},[l("div",De,Ae)])};return l("div",{class:["q-table__grid-content row",e.cardContainerClass],style:e.cardContainerStyle},E.value.map((pe,Ae)=>ne(Ve({key:c.value(pe),row:pe,pageIndex:Ae}))))}return Object.assign(r.proxy,{requestServerInteraction:S,setPagination:b,firstPage:ge,prevPage:_e,nextPage:Be,lastPage:de,isRowSelected:j,clearSelection:W,isRowExpanded:C,setExpanded:$,sort:R,resetVirtualScroll:Qe,scrollTo:ie,getCellValue:oe}),qi(r.proxy,{filteredSortedRows:()=>D.value,computedRows:()=>E.value,computedRowsNumber:()=>ce.value}),()=>{let ne=[J()],pe={ref:f,class:v.value};return e.grid===!0?ne.push(To()):Object.assign(pe,{class:[pe.class,e.cardClass],style:e.cardStyle}),ne.push(ot(),yt()),e.loading===!0&&t.loading!==void 0&&ne.push(t.loading()),l("div",pe,ne)}}});var Pf=A({name:"QTr",props:{props:Object,noHover:Boolean},setup(e,{slots:t}){let o=s(()=>"q-tr"+(e.props===void 0||e.props.header===!0?"":" "+e.props.__trClass)+(e.noHover===!0?" q-tr--no-hover":""));return()=>l("tr",{class:o.value},re(t.default))}});var Af=A({name:"QTd",props:{props:Object,autoWidth:Boolean,noHover:Boolean},setup(e,{slots:t}){let o=K(),r=s(()=>"q-td"+(e.autoWidth===!0?" q-table--col-auto-width":"")+(e.noHover===!0?" q-td--no-hover":"")+" ");return()=>{if(e.props===void 0)return l("td",{class:r.value},re(t.default));let n=o.vnode.key,i=(e.props.colsMap!==void 0?e.props.colsMap[n]:null)||e.props.col;if(i===void 0)return;let{row:a}=e.props;return l("td",{class:r.value+i.__tdClass(a),style:i.__tdStyle(a)},re(t.default))}}});var $f=A({name:"QRouteTab",props:{...Zo,...da},emits:ca,setup(e,{slots:t,emit:o}){let r=rn({useDisableForRouterLinkProps:!1}),{renderTab:n,$tabs:i}=fa(e,t,o,{exact:s(()=>e.exact),...r});return Y(()=>`${e.name} | ${e.exact} | ${(r.resolvedLink.value||{}).href}`,i.verifyRouteModel),()=>n(r.linkTag.value,r.linkAttrs.value)}});function sp(e,t){if(e.hour!==null){if(e.minute===null)return"minute";if(t===!0&&e.second===null)return"second"}return"hour"}function cp(){let e=new Date;return{hour:e.getHours(),minute:e.getMinutes(),second:e.getSeconds(),millisecond:e.getMilliseconds()}}var Ef=A({name:"QTime",props:{...Se,...kt,...Ar,modelValue:{required:!0,validator:e=>typeof e=="string"||e===null},mask:{...Ar.mask,default:null},format24h:{type:Boolean,default:null},defaultDate:{type:String,validator:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e)},options:Function,hourOptions:Array,minuteOptions:Array,secondOptions:Array,withSeconds:Boolean,nowBtn:Boolean},emits:ba,setup(e,{slots:t,emit:o}){let r=K(),{$q:n}=r.proxy,i=xe(e,n),{tabindex:a,headerClass:u,getLocale:c,getCurrentDate:f}=ya(e,n),d=Vo(e),h=Xt(d),g,m,v=q(null),x=s(()=>le()),y=s(()=>c()),k=s(()=>R()),S=fn(e.modelValue,x.value,y.value,e.calendar,k.value),b=q(sp(S)),p=q(S),C=q(S.hour===null||S.hour<12),$=s(()=>`q-time q-time--${e.landscape===!0?"landscape":"portrait"}`+(i.value===!0?" q-time--dark q-dark":"")+(e.disable===!0?" disabled":e.readonly===!0?" q-time--readonly":"")+(e.bordered===!0?" q-time--bordered":"")+(e.square===!0?" q-time--square no-border-radius":"")+(e.flat===!0?" q-time--flat no-shadow":"")),L=s(()=>{let oe=p.value;return{hour:oe.hour===null?"--":D.value===!0?nt(oe.hour):String(C.value===!0?oe.hour===0?12:oe.hour:oe.hour>12?oe.hour-12:oe.hour),minute:oe.minute===null?"--":nt(oe.minute),second:oe.second===null?"--":nt(oe.second)}}),D=s(()=>e.format24h!==null?e.format24h:n.lang.date.format24h),B=s(()=>{let oe=b.value==="hour",ue=oe===!0?12:60,J=p.value[b.value],Ce=`rotate(${Math.round(J*(360/ue))-180}deg) translateX(-50%)`;return oe===!0&&D.value===!0&&p.value.hour>=12&&(Ce+=" scale(.7)"),{transform:Ce}}),E=s(()=>p.value.hour!==null),V=s(()=>E.value===!0&&p.value.minute!==null),M=s(()=>e.hourOptions!==void 0?oe=>e.hourOptions.includes(oe):e.options!==void 0?oe=>e.options(oe,null,null):null),T=s(()=>e.minuteOptions!==void 0?oe=>e.minuteOptions.includes(oe):e.options!==void 0?oe=>e.options(p.value.hour,oe,null):null),_=s(()=>e.secondOptions!==void 0?oe=>e.secondOptions.includes(oe):e.options!==void 0?oe=>e.options(p.value.hour,p.value.minute,oe):null),F=s(()=>{if(M.value===null)return null;let oe=w(0,11,M.value),ue=w(12,11,M.value);return{am:oe,pm:ue,values:oe.values.concat(ue.values)}}),I=s(()=>T.value!==null?w(0,59,T.value):null),j=s(()=>_.value!==null?w(0,59,_.value):null),W=s(()=>{switch(b.value){case"hour":return F.value;case"minute":return I.value;case"second":return j.value}}),ee=s(()=>{let oe,ue,J=0,se=1,Ce=W.value!==null?W.value.values:void 0;b.value==="hour"?D.value===!0?(oe=0,ue=23):(oe=0,ue=11,C.value===!1&&(J=12)):(oe=0,ue=55,se=5);let Ke=[];for(let we=oe,et=oe;we<=ue;we+=se,et++){let pt=we+J,yt=Ce!==void 0&&Ce.includes(pt)===!1,Gt=b.value==="hour"&&we===0?D.value===!0?"00":"12":we;Ke.push({val:pt,index:et,disable:yt,label:Gt})}return Ke}),fe=s(()=>[[Rt,Q,void 0,{stop:!0,prevent:!0,mouse:!0}]]);Y(()=>e.modelValue,oe=>{let ue=fn(oe,x.value,y.value,e.calendar,k.value);(ue.dateHash!==p.value.dateHash||ue.timeHash!==p.value.timeHash)&&(p.value=ue,ue.hour===null?b.value="hour":C.value=ue.hour<12)}),Y([x,y],()=>{Ee(()=>{Oe()})});function H(){let oe={...f(),...cp()};Oe(oe),Object.assign(p.value,oe),b.value="hour"}function w(oe,ue,J){let se=Array.apply(null,{length:ue+1}).map((Ce,Ke)=>{let we=Ke+oe;return{index:we,val:J(we)===!0}}).filter(Ce=>Ce.val===!0).map(Ce=>Ce.index);return{min:se[0],max:se[se.length-1],values:se,threshold:ue+1}}function X(oe,ue,J){let se=Math.abs(oe-ue);return Math.min(se,J-se)}function U(oe,{min:ue,max:J,values:se,threshold:Ce}){if(oe===ue)return ue;if(oeJ)return X(oe,ue,Ce)<=X(oe,J,Ce)?ue:J;let Ke=se.findIndex(pt=>oe<=pt),we=se[Ke-1],et=se[Ke];return oe-we<=et-oe?we:et}function le(){return e.calendar!=="persian"&&e.mask!==null?e.mask:`HH:mm${e.withSeconds===!0?":ss":""}`}function R(){if(typeof e.defaultDate!="string"){let oe=f(!0);return oe.dateHash=_o(oe),oe}return fn(e.defaultDate,"YYYY/MM/DD",void 0,e.calendar)}function z(){return Yt(r)===!0||W.value!==null&&(W.value.values.length===0||b.value==="hour"&&D.value!==!0&&F.value[C.value===!0?"am":"pm"].values.length===0)}function ae(){let oe=v.value,{top:ue,left:J,width:se}=oe.getBoundingClientRect(),Ce=se/2;return{top:ue+Ce,left:J+Ce,dist:Ce*.7}}function Q(oe){if(z()!==!0){if(oe.isFirst===!0){g=ae(),m=qe(oe.evt,g);return}m=qe(oe.evt,g,m),oe.isFinal===!0&&(g=!1,m=null,me())}}function me(){b.value==="hour"?b.value="minute":e.withSeconds&&b.value==="minute"&&(b.value="second")}function qe(oe,ue,J){let se=_t(oe),Ce=Math.abs(se.top-ue.top),Ke=Math.sqrt(Math.pow(Math.abs(se.top-ue.top),2)+Math.pow(Math.abs(se.left-ue.left),2)),we,et=Math.asin(Ce/Ke)*(180/Math.PI);if(se.top=ue.dist:F.value.am.values.length!==0;we=U(we+(pt===!0?0:12),F.value[pt===!0?"am":"pm"])}else we=Math.round(we),D.value===!0?Kel("div",{key:"clock"+b.value,class:"q-time__container-parent absolute-full"},[l("div",{ref:v,class:"q-time__container-child fit overflow-hidden"},[Et(l("div",{class:"q-time__clock cursor-pointer non-selectable",onClick:_e,onMousedown:Be},[l("div",{class:"q-time__clock-circle fit"},[l("div",{class:"q-time__clock-pointer"+(p.value[b.value]===null?" hidden":e.color!==void 0?` text-${e.color}`:""),style:B.value}),ee.value.map(ue=>l("div",{class:`q-time__clock-position row flex-center q-time__clock-pos-${ue.index}`+(ue.val===oe?" q-time__clock-position--active "+u.value:ue.disable===!0?" q-time__clock-position--disable":"")},[l("span",ue.label)]))])]),fe.value)])])),e.nowBtn===!0?l(ze,{class:"q-time__now-button absolute",icon:n.iconSet.datetime.now,unelevated:!0,size:"sm",round:!0,color:e.color,textColor:e.textColor,tabindex:a.value,onClick:H}):null])}return r.proxy.setNow=H,()=>{let oe=[ut()],ue=re(t.default);return ue!==void 0&&oe.push(l("div",{class:"q-time__actions"},ue)),e.name!==void 0&&e.disable!==!0&&h(oe,"push"),l("div",{class:$.value,tabindex:-1},[lt(),l("div",{class:"q-time__main col overflow-auto"},oe)])}}});var Bf=A({name:"QTimeline",props:{...Se,color:{type:String,default:"primary"},side:{type:String,default:"right",validator:e=>["left","right"].includes(e)},layout:{type:String,default:"dense",validator:e=>["dense","comfortable","loose"].includes(e)}},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q);jt(Pi,e);let n=s(()=>`q-timeline q-timeline--${e.layout} q-timeline--${e.layout}--${e.side}`+(r.value===!0?" q-timeline--dark":""));return()=>l("ul",{class:n.value},re(t.default))}});var Lf=A({name:"QTimelineEntry",props:{heading:Boolean,tag:{type:String,default:"h3"},side:{type:String,default:"right",validator:e=>["left","right"].includes(e)},icon:String,avatar:String,color:String,title:String,subtitle:String,body:String},setup(e,{slots:t}){let o=ht(Pi,Ge);if(o===Ge)return console.error("QTimelineEntry needs to be child of QTimeline"),Ge;let r=s(()=>`q-timeline__entry q-timeline__entry--${e.side}`+(e.icon!==void 0||e.avatar!==void 0?" q-timeline__entry--icon":"")),n=s(()=>`q-timeline__dot text-${e.color||o.color}`),i=s(()=>o.layout==="comfortable"&&o.side==="left");return()=>{let a=Po(t.default,[]);if(e.body!==void 0&&a.unshift(e.body),e.heading===!0){let f=[l("div"),l("div"),l(e.tag,{class:"q-timeline__heading-title"},a)];return l("div",{class:"q-timeline__heading"},i.value===!0?f.reverse():f)}let u;e.icon!==void 0?u=[l(Re,{class:"row items-center justify-center",name:e.icon})]:e.avatar!==void 0&&(u=[l("img",{class:"q-timeline__dot-img",src:e.avatar})]);let c=[l("div",{class:"q-timeline__subtitle"},[l("span",{},re(t.subtitle,[e.subtitle]))]),l("div",{class:n.value},u),l("div",{class:"q-timeline__content"},[l("h6",{class:"q-timeline__title"},re(t.title,[e.title]))].concat(a))];return l("li",{class:r.value},i.value===!0?c.reverse():c)}}});var Ff=A({name:"QToolbar",props:{inset:Boolean},setup(e,{slots:t}){let o=s(()=>"q-toolbar row no-wrap items-center"+(e.inset===!0?" q-toolbar--inset":""));return()=>l("div",{class:o.value,role:"toolbar"},re(t.default))}});var Df=A({name:"QToolbarTitle",props:{shrink:Boolean},setup(e,{slots:t}){let o=s(()=>"q-toolbar__title ellipsis"+(e.shrink===!0?" col-shrink":""));return()=>l("div",{class:o.value},re(t.default))}});var dp=["none","strict","leaf","leaf-filtered"],Vf=A({name:"QTree",props:{...Se,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:"label"},childrenKey:{type:String,default:"children"},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:"none",validator:e=>dp.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{},noConnectors:Boolean,noTransition:Boolean,noNodesLabel:String,noResultsLabel:String},emits:["update:expanded","update:ticked","update:selected","lazyLoad","afterShow","afterHide"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,i=xe(e,n),a=q({}),u=q(e.ticked||[]),c=q(e.expanded||[]),f={};Mo(()=>{f={}});let d=s(()=>`q-tree q-tree--${e.dense===!0?"dense":"standard"}`+(e.noConnectors===!0?" q-tree--no-connectors":"")+(i.value===!0?" q-tree--dark":"")+(e.color!==void 0?` text-${e.color}`:"")),h=s(()=>e.selected!==void 0),g=s(()=>e.icon||n.iconSet.tree.icon),m=s(()=>e.controlColor||e.color),v=s(()=>e.textColor!==void 0?` text-${e.textColor}`:""),x=s(()=>{let w=e.selectedColor||e.color;return w?` text-${w}`:""}),y=s(()=>e.filterMethod!==void 0?e.filterMethod:(w,X)=>{let U=X.toLowerCase();return w[e.labelKey]&&w[e.labelKey].toLowerCase().indexOf(U)!==-1}),k=s(()=>{let w={},X=(U,le)=>{let R=U.tickStrategy||(le?le.tickStrategy:e.tickStrategy),z=U[e.nodeKey],ae=U[e.childrenKey]&&Array.isArray(U[e.childrenKey])&&U[e.childrenKey].length!==0,Q=U.disabled!==!0&&h.value===!0&&U.selectable!==!1,me=U.disabled!==!0&&U.expandable!==!1,qe=R!=="none",G=R==="strict",ce=R==="leaf-filtered",ge=R==="leaf"||R==="leaf-filtered",_e=U.disabled!==!0&&U.tickable!==!1;ge===!0&&_e===!0&&le&&le.tickable!==!0&&(_e=!1);let Be=U.lazy;Be===!0&&a.value[z]!==void 0&&Array.isArray(U[e.childrenKey])===!0&&(Be=a.value[z]);let de={key:z,parent:le,isParent:ae,lazy:Be,disabled:U.disabled,link:U.disabled!==!0&&(Q===!0||me===!0&&(ae===!0||Be===!0)),children:[],matchesFilter:e.filter?y.value(U,e.filter):!0,selected:z===e.selected&&Q===!0,selectable:Q,expanded:ae===!0?c.value.includes(z):!1,expandable:me,noTick:U.noTick===!0||G!==!0&&Be&&Be!=="loaded",tickable:_e,tickStrategy:R,hasTicking:qe,strictTicking:G,leafFilteredTicking:ce,leafTicking:ge,ticked:G===!0?u.value.includes(z):ae===!0?!1:u.value.includes(z)};if(w[z]=de,ae===!0&&(de.children=U[e.childrenKey].map(Le=>X(Le,de)),e.filter&&(de.matchesFilter!==!0?de.matchesFilter=de.children.some(Le=>Le.matchesFilter):de.noTick!==!0&&de.disabled!==!0&&de.tickable===!0&&ce===!0&&de.children.every(Le=>Le.matchesFilter!==!0||Le.noTick===!0||Le.tickable!==!0)===!0&&(de.tickable=!1)),de.matchesFilter===!0&&(de.noTick!==!0&&G!==!0&&de.children.every(Le=>Le.noTick)===!0&&(de.noTick=!0),ge))){if(de.ticked=!1,de.indeterminate=de.children.some(Le=>Le.indeterminate===!0),de.tickable=de.tickable===!0&&de.children.some(Le=>Le.tickable),de.indeterminate!==!0){let Le=de.children.reduce((He,Qe)=>Qe.ticked===!0?He+1:He,0);Le===de.children.length?de.ticked=!0:Le>0&&(de.indeterminate=!0)}de.indeterminate===!0&&(de.indeterminateNextState=de.children.every(Le=>Le.tickable!==!0||Le.ticked!==!0))}return de};return e.nodes.forEach(U=>X(U,null)),w});Y(()=>e.ticked,w=>{u.value=w}),Y(()=>e.expanded,w=>{c.value=w});function S(w){let X=[].reduce,U=(le,R)=>{if(le||!R)return le;if(Array.isArray(R)===!0)return X.call(Object(R),U,le);if(R[e.nodeKey]===w)return R;if(R[e.childrenKey])return U(null,R[e.childrenKey])};return U(null,e.nodes)}function b(){return u.value.map(w=>S(w))}function p(){return c.value.map(w=>S(w))}function C(w){return w&&k.value[w]?k.value[w].expanded:!1}function $(){e.expanded!==void 0?o("update:expanded",[]):c.value=[]}function L(){let w=[],X=U=>{U[e.childrenKey]&&U[e.childrenKey].length!==0&&U.expandable!==!1&&U.disabled!==!0&&(w.push(U[e.nodeKey]),U[e.childrenKey].forEach(X))};e.nodes.forEach(X),e.expanded!==void 0?o("update:expanded",w):c.value=w}function D(w,X,U=S(w),le=k.value[w]){if(le.lazy&&le.lazy!=="loaded"){if(le.lazy==="loading")return;a.value[w]="loading",Array.isArray(U[e.childrenKey])!==!0&&(U[e.childrenKey]=[]),o("lazyLoad",{node:U,key:w,done:R=>{a.value[w]="loaded",U[e.childrenKey]=Array.isArray(R)===!0?R:[],Ee(()=>{let z=k.value[w];z&&z.isParent===!0&&B(w,!0)})},fail:()=>{delete a.value[w],U[e.childrenKey].length===0&&delete U[e.childrenKey]}})}else le.isParent===!0&&le.expandable===!0&&B(w,X)}function B(w,X){let U=c.value,le=e.expanded!==void 0;if(le===!0&&(U=U.slice()),X){if(e.accordion&&k.value[w]){let R=[];k.value[w].parent?k.value[w].parent.children.forEach(z=>{z.key!==w&&z.expandable===!0&&R.push(z.key)}):e.nodes.forEach(z=>{let ae=z[e.nodeKey];ae!==w&&R.push(ae)}),R.length!==0&&(U=U.filter(z=>R.includes(z)===!1))}U=U.concat([w]).filter((R,z,ae)=>ae.indexOf(R)===z)}else U=U.filter(R=>R!==w);le===!0?o("update:expanded",U):c.value=U}function E(w){return w&&k.value[w]?k.value[w].ticked:!1}function V(w,X){let U=u.value,le=e.ticked!==void 0;le===!0&&(U=U.slice()),X?U=U.concat(w).filter((R,z,ae)=>ae.indexOf(R)===z):U=U.filter(R=>w.includes(R)===!1),le===!0&&o("update:ticked",U)}function M(w,X,U){let le={tree:r,node:w,key:U,color:e.color,dark:i.value};return ft(le,"expanded",()=>X.expanded,R=>{R!==X.expanded&&D(U,R)}),ft(le,"ticked",()=>X.ticked,R=>{R!==X.ticked&&V([U],R)}),le}function T(w){return(e.filter?w.filter(X=>k.value[X[e.nodeKey]].matchesFilter):w).map(X=>j(X))}function _(w){if(w.icon!==void 0)return l(Re,{class:"q-tree__icon q-mr-sm",name:w.icon,color:w.iconColor});let X=w.img||w.avatar;if(X)return l("img",{class:`q-tree__${w.img?"img":"avatar"} q-mr-sm`,src:X})}function F(){o("afterShow")}function I(){o("afterHide")}function j(w){let X=w[e.nodeKey],U=k.value[X],le=w.header&&t[`header-${w.header}`]||t["default-header"],R=U.isParent===!0?T(w[e.childrenKey]):[],z=R.length!==0||U.lazy&&U.lazy!=="loaded",ae=w.body&&t[`body-${w.body}`]||t["default-body"],Q=le!==void 0||ae!==void 0?M(w,U,X):null;return ae!==void 0&&(ae=l("div",{class:"q-tree__node-body relative-position"},[l("div",{class:v.value},[ae(Q)])])),l("div",{key:X,class:`q-tree__node relative-position q-tree__node--${z===!0?"parent":"child"}`},[l("div",{class:"q-tree__node-header relative-position row no-wrap items-center"+(U.link===!0?" q-tree__node--link q-hoverable q-focusable":"")+(U.selected===!0?" q-tree__node--selected":"")+(U.disabled===!0?" q-tree__node--disabled":""),tabindex:U.link===!0?0:-1,ariaExpanded:R.length>0?U.expanded:null,role:"treeitem",onClick:me=>{ee(w,U,me)},onKeypress(me){io(me)!==!0&&(me.keyCode===13?ee(w,U,me,!0):me.keyCode===32&&fe(w,U,me,!0))}},[l("div",{class:"q-focus-helper",tabindex:-1,ref:me=>{f[U.key]=me}}),U.lazy==="loading"?l(wt,{class:"q-tree__spinner",color:m.value}):z===!0?l(Re,{class:"q-tree__arrow"+(U.expanded===!0?" q-tree__arrow--rotate":""),name:g.value,onClick(me){fe(w,U,me)}}):null,U.hasTicking===!0&&U.noTick!==!0?l(zo,{class:"q-tree__tickbox",modelValue:U.indeterminate===!0?null:U.ticked,color:m.value,dark:i.value,dense:!0,keepColor:!0,disable:U.tickable!==!0,onKeydown:ke,"onUpdate:modelValue":me=>{H(U,me)}}):null,l("div",{class:"q-tree__node-header-content col row no-wrap items-center"+(U.selected===!0?x.value:v.value)},[le?le(Q):[_(w),l("div",w[e.labelKey])]])]),z===!0?e.noTransition===!0?U.expanded===!0?l("div",{class:"q-tree__node-collapsible"+v.value,key:`${X}__q`},[ae,l("div",{class:"q-tree__children"+(U.disabled===!0?" q-tree__node--disabled":""),role:"group"},R)]):null:l(gn,{duration:e.duration,onShow:F,onHide:I},()=>Et(l("div",{class:"q-tree__node-collapsible"+v.value,key:`${X}__q`},[ae,l("div",{class:"q-tree__children"+(U.disabled===!0?" q-tree__node--disabled":""),role:"group"},R)]),[[ki,U.expanded]])):ae])}function W(w){let X=f[w];X&&X.focus()}function ee(w,X,U,le){le!==!0&&X.selectable!==!1&&W(X.key),h.value&&X.selectable?e.noSelectionUnset===!1?o("update:selected",X.key!==e.selected?X.key:null):X.key!==e.selected&&o("update:selected",X.key===void 0?null:X.key):fe(w,X,U,le),typeof w.handler=="function"&&w.handler(w)}function fe(w,X,U,le){U!==void 0&&ke(U),le!==!0&&X.selectable!==!1&&W(X.key),D(X.key,!X.expanded,w,X)}function H(w,X){if(w.indeterminate===!0&&(X=w.indeterminateNextState),w.strictTicking)V([w.key],X);else if(w.leafTicking){let U=[],le=R=>{R.isParent?(X!==!0&&R.noTick!==!0&&R.tickable===!0&&U.push(R.key),R.leafTicking===!0&&R.children.forEach(le)):R.noTick!==!0&&R.tickable===!0&&(R.leafFilteredTicking!==!0||R.matchesFilter===!0)&&U.push(R.key)};le(w),V(U,X)}}return e.defaultExpandAll===!0&&L(),Object.assign(r,{getNodeByKey:S,getTickedNodes:b,getExpandedNodes:p,isExpanded:C,collapseAll:$,expandAll:L,setExpanded:D,isTicked:E,setTicked:V}),()=>{let w=T(e.nodes);return l("div",{class:d.value,role:"tree"},w.length===0?e.filter?e.noResultsLabel||n.lang.tree.noResults:e.noNodesLabel||n.lang.tree.noNodes:w)}}});function zf(e){return(e*100).toFixed(2)+"%"}var Of={...Se,...Ea,label:String,color:String,textColor:String,square:Boolean,flat:Boolean,bordered:Boolean,noThumbnails:Boolean,thumbnailFit:{type:String,default:"cover"},autoUpload:Boolean,hideUploadBtn:Boolean,disable:Boolean,readonly:Boolean},pu=[...Ba,"start","finish","added","removed"];function If(e,t){let o=K(),{props:r,slots:n,emit:i,proxy:a}=o,{$q:u}=a,c=xe(r,u);function f(Q,me,qe){if(Q.__status=me,me==="idle"){Q.__uploaded=0,Q.__progress=0,Q.__sizeLabel=Un(Q.size),Q.__progressLabel="0.00%";return}if(me==="failed"){a.$forceUpdate();return}Q.__uploaded=me==="uploaded"?Q.size:qe,Q.__progress=me==="uploaded"?1:Math.min(.9999,Q.__uploaded/Q.size),Q.__progressLabel=zf(Q.__progress),a.$forceUpdate()}let d=s(()=>r.disable!==!0&&r.readonly!==!0),h=q(!1),g=q(null),m=q(null),v={files:q([]),queuedFiles:q([]),uploadedFiles:q([]),uploadedSize:q(0),updateFileStatus:f,isAlive:()=>Yt(o)===!1},{pickFiles:x,addFiles:y,onDragover:k,onDragleave:S,processFiles:b,getDndNode:p,maxFilesNumber:C,maxTotalSizeNumber:$}=La({editable:d,dnd:h,getFileInput:H,addFilesToQueue:w});Object.assign(v,e({props:r,slots:n,emit:i,helpers:v,exposeApi:Q=>{Object.assign(v,Q)}})),v.isBusy===void 0&&(v.isBusy=q(!1));let L=q(0),D=s(()=>L.value===0?0:v.uploadedSize.value/L.value),B=s(()=>zf(D.value)),E=s(()=>Un(L.value)),V=s(()=>d.value===!0&&v.isUploading.value!==!0&&(r.multiple===!0||v.queuedFiles.value.length===0)&&(r.maxFiles===void 0||v.files.value.lengthd.value===!0&&v.isBusy.value!==!0&&v.isUploading.value!==!0&&v.queuedFiles.value.length!==0);jt(Li,le);let T=s(()=>"q-uploader column no-wrap"+(c.value===!0?" q-uploader--dark q-dark":"")+(r.bordered===!0?" q-uploader--bordered":"")+(r.square===!0?" q-uploader--square no-border-radius":"")+(r.flat===!0?" q-uploader--flat no-shadow":"")+(r.disable===!0?" disabled q-uploader--disable":"")+(h.value===!0?" q-uploader--dnd":"")),_=s(()=>"q-uploader__header"+(r.color!==void 0?` bg-${r.color}`:"")+(r.textColor!==void 0?` text-${r.textColor}`:""));Y(v.isUploading,(Q,me)=>{me===!1&&Q===!0?i("start"):me===!0&&Q===!1&&i("finish")});function F(){r.disable===!1&&(v.abort(),v.uploadedSize.value=0,L.value=0,fe(),v.files.value=[],v.queuedFiles.value=[],v.uploadedFiles.value=[])}function I(){r.disable===!1&&W(["uploaded"],()=>{v.uploadedFiles.value=[]})}function j(){W(["idle","failed"],({size:Q})=>{L.value-=Q,v.queuedFiles.value=[]})}function W(Q,me){if(r.disable===!0)return;let qe={files:[],size:0},G=v.files.value.filter(ce=>Q.indexOf(ce.__status)===-1?!0:(qe.size+=ce.size,qe.files.push(ce),ce.__img!==void 0&&window.URL.revokeObjectURL(ce.__img.src),!1));qe.files.length!==0&&(v.files.value=G,me(qe),i("removed",qe.files))}function ee(Q){r.disable||(Q.__status==="uploaded"?v.uploadedFiles.value=v.uploadedFiles.value.filter(me=>me.__key!==Q.__key):Q.__status==="uploading"?Q.__abort():L.value-=Q.size,v.files.value=v.files.value.filter(me=>me.__key!==Q.__key?!0:(me.__img!==void 0&&window.URL.revokeObjectURL(me.__img.src),!1)),v.queuedFiles.value=v.queuedFiles.value.filter(me=>me.__key!==Q.__key),i("removed",[Q]))}function fe(){v.files.value.forEach(Q=>{Q.__img!==void 0&&window.URL.revokeObjectURL(Q.__img.src)})}function H(){return m.value||g.value.getElementsByClassName("q-uploader__input")[0]}function w(Q,me){let qe=b(Q,me,v.files.value,!0),G=H();G!=null&&(G.value=""),qe!==void 0&&(qe.forEach(ce=>{if(v.updateFileStatus(ce,"idle"),L.value+=ce.size,r.noThumbnails!==!0&&ce.type.toUpperCase().startsWith("IMAGE")){let ge=new Image;ge.src=window.URL.createObjectURL(ce),ce.__img=ge}}),v.files.value=v.files.value.concat(qe),v.queuedFiles.value=v.queuedFiles.value.concat(qe),i("added",qe),r.autoUpload===!0&&v.upload())}function X(){M.value===!0&&v.upload()}function U(Q,me,qe){if(Q===!0){let G={type:"a",key:me,icon:u.iconSet.uploader[me],flat:!0,dense:!0},ce;return me==="add"?(G.onClick=x,ce=le):G.onClick=qe,l(ze,G,ce)}}function le(){return l("input",{ref:m,class:"q-uploader__input overflow-hidden absolute-full",tabindex:-1,type:"file",title:"",accept:r.accept,multiple:r.multiple===!0?"multiple":void 0,capture:r.capture,onMousedown:at,onClick:x,onChange:w})}function R(){return n.header!==void 0?n.header(ae):[l("div",{class:"q-uploader__header-content column"},[l("div",{class:"flex flex-center no-wrap q-gutter-xs"},[U(v.queuedFiles.value.length!==0,"removeQueue",j),U(v.uploadedFiles.value.length!==0,"removeUploaded",I),v.isUploading.value===!0?l(wt,{class:"q-uploader__spinner"}):null,l("div",{class:"col column justify-center"},[r.label!==void 0?l("div",{class:"q-uploader__title"},[r.label]):null,l("div",{class:"q-uploader__subtitle"},[E.value+" / "+B.value])]),U(V.value,"add"),U(r.hideUploadBtn===!1&&M.value===!0,"upload",v.upload),U(v.isUploading.value,"clear",v.abort)])])]}function z(){return n.list!==void 0?n.list(ae):v.files.value.map(Q=>l("div",{key:Q.__key,class:"q-uploader__file relative-position"+(r.noThumbnails!==!0&&Q.__img!==void 0?" q-uploader__file--img":"")+(Q.__status==="failed"?" q-uploader__file--failed":Q.__status==="uploaded"?" q-uploader__file--uploaded":""),style:r.noThumbnails!==!0&&Q.__img!==void 0?{backgroundImage:'url("'+Q.__img.src+'")',backgroundSize:r.thumbnailFit}:null},[l("div",{class:"q-uploader__file-header row flex-center no-wrap"},[Q.__status==="failed"?l(Re,{class:"q-uploader__file-status",name:u.iconSet.type.negative,color:"negative"}):null,l("div",{class:"q-uploader__file-header-content col"},[l("div",{class:"q-uploader__title"},[Q.name]),l("div",{class:"q-uploader__subtitle row items-center no-wrap"},[Q.__sizeLabel+" / "+Q.__progressLabel])]),Q.__status==="uploading"?l(Tr,{value:Q.__progress,min:0,max:1,indeterminate:Q.__progress===0}):l(ze,{round:!0,dense:!0,flat:!0,icon:u.iconSet.uploader[Q.__status==="uploaded"?"done":"clear"],onClick:()=>{ee(Q)}})])]))}ye(()=>{v.isUploading.value===!0&&v.abort(),v.files.value.length!==0&&fe()});let ae={};for(let Q in v)Pu(v[Q])===!0?ft(ae,Q,()=>v[Q].value):ae[Q]=v[Q];return Object.assign(ae,{upload:X,reset:F,removeUploadedFiles:I,removeQueuedFiles:j,removeFile:ee,pickFiles:x,addFiles:y}),qi(ae,{canAddFiles:()=>V.value,canUpload:()=>M.value,uploadSizeLabel:()=>E.value,uploadProgressLabel:()=>B.value}),t({...v,upload:X,reset:F,removeUploadedFiles:I,removeQueuedFiles:j,removeFile:ee,pickFiles:x,addFiles:y,canAddFiles:V,canUpload:M,uploadSizeLabel:E,uploadProgressLabel:B}),()=>{let Q=[l("div",{class:_.value},R()),l("div",{class:"q-uploader__list scroll"},z()),p("uploader")];v.isBusy.value===!0&&Q.push(l("div",{class:"q-uploader__overlay absolute-full flex flex-center"},[l(wt)]));let me={ref:g,class:T.value};return V.value===!0&&Object.assign(me,{onDragover:k,onDragleave:S}),l("div",me,Q)}}var fp=()=>!0;function ol(e){let t={};return e.forEach(o=>{t[o]=fp}),t}var mp=ol(pu),nl=({name:e,props:t,emits:o,injectPlugin:r})=>A({name:e,props:{...Of,...t},emits:ct(o)===!0?{...mp,...o}:[...pu,...o],setup(n,{expose:i}){return If(r,i)}});function tn(e){return typeof e=="function"?e:()=>e}var vp="QUploader",gp={url:[Function,String],method:{type:[Function,String],default:"POST"},fieldName:{type:[Function,String],default:()=>e=>e.name},headers:[Function,Array],formFields:[Function,Array],withCredentials:[Function,Boolean],sendRaw:[Function,Boolean],batch:[Function,Boolean],factory:Function},hp=["factoryFailed","uploaded","failed","uploading"];function pp({props:e,emit:t,helpers:o}){let r=q([]),n=q([]),i=q(0),a=s(()=>({url:tn(e.url),method:tn(e.method),headers:tn(e.headers),formFields:tn(e.formFields),fieldName:tn(e.fieldName),withCredentials:tn(e.withCredentials),sendRaw:tn(e.sendRaw),batch:tn(e.batch)})),u=s(()=>i.value>0),c=s(()=>n.value.length!==0),f;function d(){r.value.forEach(v=>{v.abort()}),n.value.length!==0&&(f=!0)}function h(){let v=o.queuedFiles.value.slice(0);o.queuedFiles.value=[],a.value.batch(v)?g(v):v.forEach(x=>{g([x])})}function g(v){if(i.value++,typeof e.factory!="function"){m(v,{});return}let x=e.factory(v);if(!x)t("factoryFailed",new Error("QUploader: factory() does not return properly"),v),i.value--;else if(typeof x.catch=="function"&&typeof x.then=="function"){n.value.push(x);let y=k=>{o.isAlive()===!0&&(n.value=n.value.filter(S=>S!==x),n.value.length===0&&(f=!1),o.queuedFiles.value=o.queuedFiles.value.concat(v),v.forEach(S=>{o.updateFileStatus(S,"failed")}),t("factoryFailed",k,v),i.value--)};x.then(k=>{f===!0?y(new Error("Aborted")):o.isAlive()===!0&&(n.value=n.value.filter(S=>S!==x),m(v,k))}).catch(y)}else m(v,x||{})}function m(v,x){let y=new FormData,k=new XMLHttpRequest,S=(M,T)=>x[M]!==void 0?tn(x[M])(T):a.value[M](T),b=S("url",v);if(!b){console.error("q-uploader: invalid or no URL specified"),i.value--;return}let p=S("formFields",v);p!==void 0&&p.forEach(M=>{y.append(M.name,M.value)});let C=0,$=0,L=0,D=0,B;k.upload.addEventListener("progress",M=>{if(B===!0)return;let T=Math.min(D,M.loaded);o.uploadedSize.value+=T-L,L=T;let _=L-$;for(let F=C;_>0&&FI.size)_-=I.size,C++,$+=I.size,o.updateFileStatus(I,"uploading",I.size);else{o.updateFileStatus(I,"uploading",_);return}}},!1),k.onreadystatechange=()=>{k.readyState<4||(k.status&&k.status<400?(o.uploadedFiles.value=o.uploadedFiles.value.concat(v),v.forEach(M=>{o.updateFileStatus(M,"uploaded")}),t("uploaded",{files:v,xhr:k})):(B=!0,o.uploadedSize.value-=L,o.queuedFiles.value=o.queuedFiles.value.concat(v),v.forEach(M=>{o.updateFileStatus(M,"failed")}),t("failed",{files:v,xhr:k})),i.value--,r.value=r.value.filter(M=>M!==k))},k.open(S("method",v),b),S("withCredentials",v)===!0&&(k.withCredentials=!0);let E=S("headers",v);E!==void 0&&E.forEach(M=>{k.setRequestHeader(M.name,M.value)});let V=S("sendRaw",v);v.forEach(M=>{o.updateFileStatus(M,"uploading",0),V!==!0&&y.append(S("fieldName",M),M,M.name),M.xhr=k,M.__abort=()=>{k.abort()},D+=M.size}),t("uploading",{files:v,xhr:k}),r.value.push(k),V===!0?k.send(new Blob(v)):k.send(y)}return{isUploading:u,isBusy:c,abort:d,upload:h}}var Hf={name:vp,props:gp,emits:hp,injectPlugin:pp};var Qf=nl(Hf);var Nf=A({name:"QUploaderAddTrigger",setup(){let e=ht(Li,Ge);return e===Ge&&console.error("QUploaderAddTrigger needs to be child of QUploader"),e}});var jf=A({name:"QVideo",props:{...Fr,src:{type:String,required:!0},title:String,fetchpriority:{type:String,default:"auto"},loading:{type:String,default:"eager"},referrerpolicy:{type:String,default:"strict-origin-when-cross-origin"}},setup(e){let t=Dr(e),o=s(()=>"q-video"+(e.ratio!==void 0?" q-video--responsive":""));return()=>l("div",{class:o.value,style:t.value},[l("iframe",{src:e.src,title:e.title,fetchpriority:e.fetchpriority,loading:e.loading,referrerpolicy:e.referrerpolicy,frameborder:"0",allowfullscreen:!0})])}});var ul={};Ur(ul,{ClosePopup:()=>Kf,Intersection:()=>za,Morph:()=>rm,Mutation:()=>lm,Ripple:()=>$o,Scroll:()=>dm,ScrollFire:()=>sm,TouchHold:()=>fm,TouchPan:()=>Rt,TouchRepeat:()=>vm,TouchSwipe:()=>ta});function Uf(e){if(e===!1)return 0;if(e===!0||e===void 0)return 1;let t=parseInt(e,10);return isNaN(t)?0:t}var Kf=At({name:"close-popup",beforeMount(e,{value:t}){let o={depth:Uf(t),handler(r){o.depth!==0&&setTimeout(()=>{let n=Rs(e);n!==void 0&&Ps(n,r,o.depth)})},handlerKey(r){Tt(r,13)===!0&&o.handler(r)}};e.__qclosepopup=o,e.addEventListener("click",o.handler),e.addEventListener("keyup",o.handlerKey)},updated(e,{value:t,oldValue:o}){t!==o&&(e.__qclosepopup.depth=Uf(t))},beforeUnmount(e){let t=e.__qclosepopup;e.removeEventListener("click",t.handler),e.removeEventListener("keyup",t.handlerKey),delete e.__qclosepopup}});var bp=0,pi;function Wf(e,t){pi===void 0&&(pi=document.createElement("div"),pi.style.cssText="position: absolute; left: 0; top: 0",document.body.appendChild(pi));let o=e.getBoundingClientRect(),r=pi.getBoundingClientRect(),{marginLeft:n,marginRight:i,marginTop:a,marginBottom:u}=window.getComputedStyle(e),c=parseInt(n,10)+parseInt(i,10),f=parseInt(a,10)+parseInt(u,10);return{left:o.left-r.left,top:o.top-r.top,width:o.right-o.left,height:o.bottom-o.top,widthM:o.right-o.left+(t===!0?0:c),heightM:o.bottom-o.top+(t===!0?0:f),marginH:t===!0?c:0,marginV:t===!0?f:0}}function il(e){return{width:e.scrollWidth,height:e.scrollHeight}}var Yf=["Top","Right","Bottom","Left"],Xf=["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],yp=/-block|-inline|block-|inline-/,Sp=/(-block|-inline|block-|inline-).*:/;function Gf(e,t){let o=window.getComputedStyle(e),r={};for(let n=0;nSp.test(a)!==!0).join(";"):r[i]=o[i]}return r}var xp=["absolute","fixed","relative","sticky"];function Zf(e){let t=e,o=0;for(;t!==null&&t!==document;){let{position:r,zIndex:n}=window.getComputedStyle(t),i=Number(n);i>o&&(t===e||xp.includes(r)===!0)&&(o=i),t=t.parentNode}return o}function _p(e){return{from:e.from,to:e.to!==void 0?e.to:e.from}}function Cp(e){return typeof e=="number"?e={duration:e}:typeof e=="function"&&(e={onEnd:e}),{...e,waitFor:e.waitFor===void 0?0:e.waitFor,duration:isNaN(e.duration)===!0?300:parseInt(e.duration,10),easing:typeof e.easing=="string"&&e.easing.length!==0?e.easing:"ease-in-out",delay:isNaN(e.delay)===!0?0:parseInt(e.delay,10),fill:typeof e.fill=="string"&&e.fill.length!==0?e.fill:"none",resize:e.resize===!0,useCSS:e.useCSS===!0||e.usecss===!0,hideFromClone:e.hideFromClone===!0||e.hidefromclone===!0,keepToClone:e.keepToClone===!0||e.keeptoclone===!0,tween:e.tween===!0,tweenFromOpacity:isNaN(e.tweenFromOpacity)===!0?.6:parseFloat(e.tweenFromOpacity),tweenToOpacity:isNaN(e.tweenToOpacity)===!0?.5:parseFloat(e.tweenToOpacity)}}function Jf(e){let t=typeof e;return t==="function"?e():t==="string"?document.querySelector(e):e}function em(e){return e&&e.ownerDocument===document&&e.parentNode!==null}function bi(e){let t=()=>!1,o=!1,r=!0,n=_p(e),i=Cp(e),a=Jf(n.from);if(em(a)!==!0)return t;typeof a.qMorphCancel=="function"&&a.qMorphCancel();let u,c,f,d,h=a.parentNode,g=a.nextElementSibling,m=Wf(a,i.resize),{width:v,height:x}=il(h),{borderWidth:y,borderStyle:k,borderColor:S,borderRadius:b,backgroundColor:p,transform:C,position:$,cssText:L}=Gf(a,["borderWidth","borderStyle","borderColor","borderRadius","backgroundColor","transform","position","cssText"]),D=a.classList.toString(),B=a.style.cssText,E=a.cloneNode(!0),V=i.tween===!0?a.cloneNode(!0):void 0;V!==void 0&&(V.className=V.classList.toString().split(" ").filter(T=>/^bg-/.test(T)===!1).join(" ")),i.hideFromClone===!0&&E.classList.add("q-morph--internal"),E.setAttribute("aria-hidden","true"),E.style.transition="none",E.style.animation="none",E.style.pointerEvents="none",h.insertBefore(E,g),a.qMorphCancel=()=>{o=!0,E.remove(),V!==void 0&&V.remove(),i.hideFromClone===!0&&E.classList.remove("q-morph--internal"),a.qMorphCancel=void 0};let M=()=>{let T=Jf(n.to);if(o===!0||em(T)!==!0){typeof a.qMorphCancel=="function"&&a.qMorphCancel();return}a!==T&&typeof T.qMorphCancel=="function"&&T.qMorphCancel(),i.keepToClone!==!0&&T.classList.add("q-morph--internal"),E.classList.add("q-morph--internal");let{width:_,height:F}=il(h),{width:I,height:j}=il(T.parentNode);i.hideFromClone!==!0&&E.classList.remove("q-morph--internal"),T.qMorphCancel=()=>{o=!0,E.remove(),V!==void 0&&V.remove(),i.hideFromClone===!0&&E.classList.remove("q-morph--internal"),i.keepToClone!==!0&&T.classList.remove("q-morph--internal"),a.qMorphCancel=void 0,T.qMorphCancel=void 0};let W=()=>{if(o===!0){typeof T.qMorphCancel=="function"&&T.qMorphCancel();return}i.hideFromClone!==!0&&(E.classList.add("q-morph--internal"),E.innerHTML="",E.style.left=0,E.style.right="unset",E.style.top=0,E.style.bottom="unset",E.style.transform="none"),i.keepToClone!==!0&&T.classList.remove("q-morph--internal");let ee=T.parentNode,{width:fe,height:H}=il(ee),w=T.cloneNode(i.keepToClone);w.setAttribute("aria-hidden","true"),i.keepToClone!==!0&&(w.style.left=0,w.style.right="unset",w.style.top=0,w.style.bottom="unset",w.style.transform="none",w.style.pointerEvents="none"),w.classList.add("q-morph--internal");let X=T===a&&h===ee?E:T.nextElementSibling;ee.insertBefore(w,X);let{borderWidth:U,borderStyle:le,borderColor:R,borderRadius:z,backgroundColor:ae,transform:Q,position:me,cssText:qe}=Gf(T,["borderWidth","borderStyle","borderColor","borderRadius","backgroundColor","transform","position","cssText"]),G=T.classList.toString(),ce=T.style.cssText;T.style.cssText=qe,T.style.transform="none",T.style.animation="none",T.style.transition="none",T.className=G.split(" ").filter(se=>/^bg-/.test(se)===!1).join(" ");let ge=Wf(T,i.resize),_e=m.left-ge.left,Be=m.top-ge.top,de=m.width/(ge.width>0?ge.width:10),Le=m.height/(ge.height>0?ge.height:100),He=v-_,Qe=x-F,ot=fe-I,ie=H-j,Z=Math.max(m.widthM,He),ve=Math.max(m.heightM,Qe),Fe=Math.max(ge.widthM,ot),Ie=Math.max(ge.heightM,ie),Ve=a===T&&["absolute","fixed"].includes(me)===!1&&["absolute","fixed"].includes($)===!1,Oe=me==="fixed",lt=ee;for(;Oe!==!0&<!==document;)Oe=window.getComputedStyle(lt).position==="fixed",lt=lt.parentNode;if(i.hideFromClone!==!0&&(E.style.display="block",E.style.flex="0 0 auto",E.style.opacity=0,E.style.minWidth="unset",E.style.maxWidth="unset",E.style.minHeight="unset",E.style.maxHeight="unset",E.classList.remove("q-morph--internal")),i.keepToClone!==!0&&(w.style.display="block",w.style.flex="0 0 auto",w.style.opacity=0,w.style.minWidth="unset",w.style.maxWidth="unset",w.style.minHeight="unset",w.style.maxHeight="unset"),w.classList.remove("q-morph--internal"),typeof i.classes=="string"&&(T.className+=" "+i.classes),typeof i.style=="string")T.style.cssText+=" "+i.style;else if(ct(i.style)===!0)for(let se in i.style)T.style[se]=i.style[se];let ut=Zf(E),oe=Zf(T),ue=Oe===!0?document.documentElement:{scrollLeft:0,scrollTop:0};T.style.position=Oe===!0?"fixed":"absolute",T.style.left=`${ge.left-ue.scrollLeft}px`,T.style.right="unset",T.style.top=`${ge.top-ue.scrollTop}px`,T.style.margin=0,i.resize===!0&&(T.style.minWidth="unset",T.style.maxWidth="unset",T.style.minHeight="unset",T.style.maxHeight="unset",T.style.overflow="hidden",T.style.overflowX="hidden",T.style.overflowY="hidden"),document.body.appendChild(T),V!==void 0&&(V.style.cssText=L,V.style.transform="none",V.style.animation="none",V.style.transition="none",V.style.position=T.style.position,V.style.left=`${m.left-ue.scrollLeft}px`,V.style.right="unset",V.style.top=`${m.top-ue.scrollTop}px`,V.style.margin=0,V.style.pointerEvents="none",i.resize===!0&&(V.style.minWidth="unset",V.style.maxWidth="unset",V.style.minHeight="unset",V.style.maxHeight="unset",V.style.overflow="hidden",V.style.overflowX="hidden",V.style.overflowY="hidden"),document.body.appendChild(V));let J=se=>{a===T&&r!==!0?(T.style.cssText=B,T.className=D):(T.style.cssText=ce,T.className=G),w.parentNode===ee&&ee.insertBefore(T,w),E.remove(),w.remove(),V!==void 0&&V.remove(),t=()=>!1,a.qMorphCancel=void 0,T.qMorphCancel=void 0,typeof i.onEnd=="function"&&i.onEnd(r===!0?"to":"from",se===!0)};if(i.useCSS!==!0&&typeof T.animate=="function"){let se=i.resize===!0?{transform:`translate(${_e}px, ${Be}px)`,width:`${Z}px`,height:`${ve}px`}:{transform:`translate(${_e}px, ${Be}px) scale(${de}, ${Le})`},Ce=i.resize===!0?{width:`${Fe}px`,height:`${Ie}px`}:{},Ke=i.resize===!0?{width:`${Z}px`,height:`${ve}px`}:{},we=i.resize===!0?{transform:`translate(${-1*_e}px, ${-1*Be}px)`,width:`${Fe}px`,height:`${Ie}px`}:{transform:`translate(${-1*_e}px, ${-1*Be}px) scale(${1/de}, ${1/Le})`},et=V!==void 0?{opacity:i.tweenToOpacity}:{backgroundColor:p},pt=V!==void 0?{opacity:1}:{backgroundColor:ae};d=T.animate([{margin:0,borderWidth:y,borderStyle:k,borderColor:S,borderRadius:b,zIndex:ut,transformOrigin:"0 0",...se,...et},{margin:0,borderWidth:U,borderStyle:le,borderColor:R,borderRadius:z,zIndex:oe,transformOrigin:"0 0",transform:Q,...Ce,...pt}],{duration:i.duration,easing:i.easing,fill:i.fill,delay:i.delay}),c=V===void 0?void 0:V.animate([{opacity:i.tweenFromOpacity,margin:0,borderWidth:y,borderStyle:k,borderColor:S,borderRadius:b,zIndex:ut,transformOrigin:"0 0",transform:C,...Ke},{opacity:0,margin:0,borderWidth:U,borderStyle:le,borderColor:R,borderRadius:z,zIndex:oe,transformOrigin:"0 0",...we}],{duration:i.duration,easing:i.easing,fill:i.fill,delay:i.delay}),u=i.hideFromClone===!0||Ve===!0?void 0:E.animate([{margin:`${Qe<0?Qe/2:0}px ${He<0?He/2:0}px`,width:`${Z+m.marginH}px`,height:`${ve+m.marginV}px`},{margin:0,width:0,height:0}],{duration:i.duration,easing:i.easing,fill:i.fill,delay:i.delay}),f=i.keepToClone===!0?void 0:w.animate([Ve===!0?{margin:`${Qe<0?Qe/2:0}px ${He<0?He/2:0}px`,width:`${Z+m.marginH}px`,height:`${ve+m.marginV}px`}:{margin:0,width:0,height:0},{margin:`${ie<0?ie/2:0}px ${ot<0?ot/2:0}px`,width:`${Fe+ge.marginH}px`,height:`${Ie+ge.marginV}px`}],{duration:i.duration,easing:i.easing,fill:i.fill,delay:i.delay});let yt=Gt=>{u!==void 0&&u.cancel(),c!==void 0&&c.cancel(),f!==void 0&&f.cancel(),d.cancel(),d.removeEventListener("finish",yt),d.removeEventListener("cancel",yt),J(Gt),u=void 0,c=void 0,f=void 0,d=void 0};a.qMorphCancel=()=>{a.qMorphCancel=void 0,o=!0,yt()},T.qMorphCancel=()=>{T.qMorphCancel=void 0,o=!0,yt()},d.addEventListener("finish",yt),d.addEventListener("cancel",yt),t=Gt=>o===!0||d===void 0?!1:Gt===!0?(yt(!0),!0):(r=r!==!0,u!==void 0&&u.reverse(),c!==void 0&&c.reverse(),f!==void 0&&f.reverse(),d.reverse(),!0)}else{let se=`q-morph-anim-${++bp}`,Ce=document.createElement("style"),Ke=i.resize===!0?` - transform: translate(${_e}px, ${Be}px); - width: ${Z}px; - height: ${ve}px; - `:`transform: translate(${_e}px, ${Be}px) scale(${de}, ${Le});`,we=i.resize===!0?` - width: ${Fe}px; - height: ${Ie}px; - `:"",et=i.resize===!0?` - width: ${Z}px; - height: ${ve}px; - `:"",pt=i.resize===!0?` - transform: translate(${-1*_e}px, ${-1*Be}px); - width: ${Fe}px; - height: ${Ie}px; - `:`transform: translate(${-1*_e}px, ${-1*Be}px) scale(${1/de}, ${1/Le});`,yt=V!==void 0?`opacity: ${i.tweenToOpacity};`:`background-color: ${p};`,Gt=V!==void 0?"opacity: 1;":`background-color: ${ae};`,so=V===void 0?"":` - @keyframes ${se}-from-tween { + `),n.print(),n.close();return}else if(t==="link"){let n=this.getParentAttribute("href");if(n===null){let a=this.selectWord(this.selection),l=a?a.toString():"";if(!l.length&&(!this.range||!this.range.cloneContents().querySelector("img")))return;this.eVm.editLinkUrl.value=dh.test(l)?l:"https://",document.execCommand("createLink",!1,this.eVm.editLinkUrl.value),this.save(a.getRangeAt(0))}else this.eVm.editLinkUrl.value=n,this.range.selectNodeContents(this.parent),this.save();return}else if(t==="fullscreen"){this.eVm.toggleFullscreen(),r();return}else if(t==="viewsource"){this.eVm.isViewingSource.value=this.eVm.isViewingSource.value===!1,this.eVm.setContent(this.eVm.props.modelValue),r();return}document.execCommand(t,!1,o),r()}selectWord(t){if(t===null||t.isCollapsed!==!0||t.modify===void 0)return t;let o=document.createRange();o.setStart(t.anchorNode,t.anchorOffset),o.setEnd(t.focusNode,t.focusOffset);let r=o.collapsed?["backward","forward"]:["forward","backward"];o.detach();let n=t.focusNode,a=t.focusOffset;return t.collapse(t.anchorNode,t.anchorOffset),t.modify("move",r[0],"character"),t.modify("move",r[1],"word"),t.extend(n,a),t.modify("extend",r[1],"character"),t.modify("extend",r[0],"word"),t}};var Ti=P({name:"QTooltip",inheritAttrs:!1,props:{...El,...go,...yo,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...yo.transitionShow,default:"jump-down"},transitionHide:{...yo.transitionHide,default:"jump-up"},anchor:{type:String,default:"bottom middle",validator:mr},self:{type:String,default:"top middle",validator:mr},offset:{type:Array,default:()=>[14,14],validator:Xa},scrollTarget:to,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...ho],setup(e,{slots:t,emit:o,attrs:r}){let n,a,l=K(),{proxy:{$q:u}}=l,c=T(null),f=T(!1),d=s(()=>vr(e.anchor,u.lang.rtl)),p=s(()=>vr(e.self,u.lang.rtl)),g=s(()=>e.persistent!==!0),{registerTick:m,removeTick:v}=So(),{registerTimeout:x}=Vt(),{transitionProps:y,transitionStyle:k}=cn(e),{localScrollTarget:S,changeScrollEvent:b,unconfigureScrollTarget:h}=Qa(e,ve),{anchorEl:_,canShow:E,anchorEvents:L}=nr({showing:f,configureAnchorEl:ee}),{show:D,hide:Z}=po({showing:f,canShow:E,handleShow:q,handleHide:C,hideOnRouteChange:g,processOnMount:!0});Object.assign(L,{delayShow:H,delayHide:Q});let{showPortal:B,hidePortal:F,renderPortal:$}=ir(l,c,w,"tooltip");if(u.platform.is.mobile===!0){let W={anchorEl:_,innerRef:c,onClickOutside(le){return Z(le),le.target.classList.contains("q-dialog__backdrop")&&_e(le),!0}},U=s(()=>e.modelValue===null&&e.persistent!==!0&&f.value===!0);Y(U,le=>{(le===!0?Ya:fr)(W)}),be(()=>{fr(W)})}function q(W){B(),m(()=>{a=new MutationObserver(()=>z()),a.observe(c.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),z(),ve()}),n===void 0&&(n=Y(()=>u.screen.width+"|"+u.screen.height+"|"+e.self+"|"+e.anchor+"|"+u.lang.rtl,z)),x(()=>{B(!0),o("show",W)},e.transitionDuration)}function C(W){v(),F(),A(),x(()=>{F(!0),o("hide",W)},e.transitionDuration)}function A(){a!==void 0&&(a.disconnect(),a=void 0),n!==void 0&&(n(),n=void 0),h(),Tt(L,"tooltipTemp")}function z(){ta({targetEl:c.value,offset:e.offset,anchorEl:_.value,anchorOrigin:d.value,selfOrigin:p.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function H(W){if(u.platform.is.mobile===!0){Ht(),document.body.classList.add("non-selectable");let U=_.value,le=["touchmove","touchcancel","touchend","click"].map(M=>[U,M,"delayHide","passiveCapture"]);vt(L,"tooltipTemp",le)}x(()=>{D(W)},e.delay)}function Q(W){u.platform.is.mobile===!0&&(Tt(L,"tooltipTemp"),Ht(),setTimeout(()=>{document.body.classList.remove("non-selectable")},10)),x(()=>{Z(W)},e.hideDelay)}function ee(){if(e.noParentEvent===!0||_.value===null)return;let W=u.platform.is.mobile===!0?[[_.value,"touchstart","delayShow","passive"]]:[[_.value,"mouseenter","delayShow","passive"],[_.value,"mouseleave","delayHide","passive"]];vt(L,"anchor",W)}function ve(){if(_.value!==null||e.scrollTarget!==void 0){S.value=Ft(_.value,e.scrollTarget);let W=e.noParentEvent===!0?z:Z;b(S.value,W)}}function O(){return f.value===!0?i("div",{...r,ref:c,class:["q-tooltip q-tooltip--style q-position-engine no-pointer-events",r.class],style:[r.style,k.value],role:"tooltip"},re(t.default)):null}function w(){return i(st,y.value,O)}return be(A),Object.assign(l.proxy,{updatePosition:z}),$}});var No=P({name:"QItem",props:{...Se,...Zo,tag:{type:String,default:"div"},active:{type:Boolean,default:null},clickable:Boolean,dense:Boolean,insetLevel:Number,tabindex:[String,Number],focused:Boolean,manualFocus:Boolean},emits:["click","keyup"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=xe(e,r),{hasLink:a,linkAttrs:l,linkClass:u,linkTag:c,navigateOnClick:f}=ln(),d=T(null),p=T(null),g=s(()=>e.clickable===!0||a.value===!0||e.tag==="label"),m=s(()=>e.disable!==!0&&g.value===!0),v=s(()=>"q-item q-item-type row no-wrap"+(e.dense===!0?" q-item--dense":"")+(n.value===!0?" q-item--dark":"")+(a.value===!0&&e.active===null?u.value:e.active===!0?` q-item--active${e.activeClass!==void 0?` ${e.activeClass}`:""}`:"")+(e.disable===!0?" disabled":"")+(m.value===!0?" q-item--clickable q-link cursor-pointer "+(e.manualFocus===!0?"q-manual-focusable":"q-focusable q-hoverable")+(e.focused===!0?" q-manual-focusable--focused":""):"")),x=s(()=>e.insetLevel===void 0?null:{["padding"+(r.lang.rtl===!0?"Right":"Left")]:16+e.insetLevel*56+"px"});function y(b){m.value===!0&&(p.value!==null&&b.qAvoidFocus!==!0&&(b.qKeyEvent!==!0&&document.activeElement===d.value?p.value.focus():document.activeElement===p.value&&d.value.focus()),f(b))}function k(b){if(m.value===!0&&Mt(b,[13,32])===!0){_e(b),b.qKeyEvent=!0;let h=new MouseEvent("click",b);h.qKeyEvent=!0,d.value.dispatchEvent(h)}o("keyup",b)}function S(){let b=Po(t.default,[]);return m.value===!0&&b.unshift(i("div",{class:"q-focus-helper",tabindex:-1,ref:p})),b}return()=>{let b={ref:d,class:v.value,style:x.value,role:"listitem",onClick:y,onKeyup:k};return m.value===!0?(b.tabindex=e.tabindex||"0",Object.assign(b,l.value)):g.value===!0&&(b["aria-disabled"]="true"),i(c.value,b,S())}}});var ro=P({name:"QItemSection",props:{avatar:Boolean,thumbnail:Boolean,side:Boolean,top:Boolean,noWrap:Boolean},setup(e,{slots:t}){let o=s(()=>`q-item__section column q-item__section--${e.avatar===!0||e.side===!0||e.thumbnail===!0?"side":"main"}`+(e.top===!0?" q-item__section--top justify-start":" justify-center")+(e.avatar===!0?" q-item__section--avatar":"")+(e.thumbnail===!0?" q-item__section--thumbnail":"")+(e.noWrap===!0?" q-item__section--nowrap":""));return()=>i("div",{class:o.value},re(t.default))}});function kc(e,t,o){t.handler?t.handler(e,o,o.caret):o.runCmd(t.cmd,t.param)}function lu(e){return i("div",{class:"q-editor__toolbar-group"},e)}function qc(e,t,o,r=!1){let n=r||(t.type==="toggle"?t.toggled?t.toggled(e):t.cmd&&e.caret.is(t.cmd,t.param):!1),a=[];if(e.$q.platform.is.desktop&&(t.tip||t.htmlTip)){let l=t.key?i("div",[i("small",`(CTRL + ${String.fromCharCode(t.key)})`)]):null;a.push(i(Ti,{delay:1e3},()=>[i("div",t.htmlTip?{innerHTML:t.htmlTip}:t.tip),l]))}return i(Ve,{...e.buttonProps.value,icon:t.icon!==null?t.icon:void 0,color:n?t.toggleColor||e.props.toolbarToggleColor:t.color||e.props.toolbarColor,textColor:n&&!e.props.toolbarPush?null:t.textColor||e.props.toolbarTextColor,label:t.label,"aria-label":t.label==null?t.tip:void 0,disable:t.disable?typeof t.disable=="function"?t.disable(e):!0:!1,size:"sm",onClick(l){o?.(),kc(l,t,e)}},()=>a)}function fh(e,t){let o=t.list==="only-icons",r=t.label,n=t.icon!==null?t.icon:void 0,a,l;function u(){f.component.proxy.hide()}if(o)l=t.options.map(d=>{let p=d.type===void 0?e.caret.is(d.cmd,d.param):!1;return p&&(r=d.tip,n=d.icon!==null?d.icon:void 0),qc(e,d,u,p)}),a=e.toolbarBackgroundClass.value,l=[lu(l)];else{let d=e.props.toolbarToggleColor!==void 0?`text-${e.props.toolbarToggleColor}`:null,p=e.props.toolbarTextColor!==void 0?`text-${e.props.toolbarTextColor}`:null,g=t.list==="no-icons";l=t.options.map(m=>{let v=m.disable?m.disable(e):!1,x=m.type===void 0?e.caret.is(m.cmd,m.param):!1;x&&(r=m.tip,n=m.icon!==null?m.icon:void 0);let y=m.htmlTip;return i(No,{active:x,activeClass:d,clickable:!0,disable:v,dense:!0,onClick(k){u(),k?.qAvoidFocus!==!0&&e.contentRef.value?.focus(),e.caret.restore(),kc(k,m,e)}},()=>[g===!0?null:i(ro,{class:x?d:p,side:!0},()=>i(Re,{name:m.icon!==null?m.icon:void 0})),i(ro,y?()=>i("div",{class:"text-no-wrap",innerHTML:m.htmlTip}):m.tip?()=>i("div",{class:"text-no-wrap"},m.tip):void 0)])}),a=[e.toolbarBackgroundClass.value,p]}let c=t.highlight&&r!==t.label,f=i(Za,{...e.buttonProps.value,noCaps:!0,noWrap:!0,color:c?e.props.toolbarToggleColor:e.props.toolbarColor,textColor:c&&!e.props.toolbarPush?null:e.props.toolbarTextColor,label:t.fixedLabel?t.label:r,icon:t.fixedIcon?t.icon!==null?t.icon:void 0:n,contentClass:a,onShow:d=>e.emit("dropdownShow",d),onHide:d=>e.emit("dropdownHide",d),onBeforeShow:d=>e.emit("dropdownBeforeShow",d),onBeforeHide:d=>e.emit("dropdownBeforeHide",d)},()=>l);return f}function Tc(e){if(e.caret)return e.buttons.value.filter(t=>!e.isViewingSource.value||t.find(o=>o.cmd==="viewsource")).map(t=>lu(t.map(o=>e.isViewingSource.value&&o.cmd!=="viewsource"?!1:o.type==="slot"?re(e.slots[o.slot]):o.type==="dropdown"?fh(e,o):qc(e,o))))}function Mc(e,t,o,r={}){let n=Object.keys(r);if(n.length===0)return{};let a={default_font:{cmd:"fontName",param:e,icon:o,tip:t}};return n.forEach(l=>{let u=r[l];a[l]={cmd:"fontName",param:u,icon:o,tip:u,htmlTip:`${u}`}}),a}function Rc(e){if(e.caret){let t=e.props.toolbarColor||e.props.toolbarTextColor,o=e.editLinkUrl.value,r=()=>{e.caret.restore(),o!==e.editLinkUrl.value&&document.execCommand("createLink",!1,o===""?" ":o),e.editLinkUrl.value=null};return[i("div",{class:`q-mx-xs text-${t}`},`${e.$q.lang.editor.url}: `),i("input",{key:"qedt_btm_input",class:"col q-editor__link-input",value:o,onInput:n=>{it(n),o=n.target.value},onKeydown:n=>{if(io(n)!==!0)switch(n.keyCode){case 13:return gt(n),r();case 27:gt(n),e.caret.restore(),(!e.editLinkUrl.value||e.editLinkUrl.value==="https://")&&document.execCommand("unlink"),e.editLinkUrl.value=null;break}}}),lu([i(Ve,{key:"qedt_btm_rem",...e.buttonProps.value,label:e.$q.lang.label.remove,noCaps:!0,onClick:()=>{e.caret.restore(),document.execCommand("unlink"),e.editLinkUrl.value=null}}),i(Ve,{key:"qedt_btm_upd",...e.buttonProps.value,label:e.$q.lang.label.update,noCaps:!0,onClick:r})])]}}var Pc=/^on[A-Z]/;function Br(){let{attrs:e,vnode:t}=K(),o={listeners:T({}),attributes:T({})};function r(){let n={},a={};for(let l in e)l!=="class"&&l!=="style"&&Pc.test(l)===!1&&(n[l]=e[l]);for(let l in t.props)Pc.test(l)===!0&&(a[l]=t.props[l]);o.attributes.value=n,o.listeners.value=a}return Mo(r),r(),o}var mh=Object.prototype.toString,uu=Object.prototype.hasOwnProperty,vh=new Set(["Boolean","Number","String","Function","Array","Date","RegExp"].map(e=>"[object "+e+"]"));function Ac(e){if(e!==Object(e)||vh.has(mh.call(e))===!0||e.constructor&&uu.call(e,"constructor")===!1&&uu.call(e.constructor.prototype,"isPrototypeOf")===!1)return!1;let t;for(t in e);return t===void 0||uu.call(e,t)}function hn(){let e,t,o,r,n,a,l=arguments[0]||{},u=1,c=!1,f=arguments.length;for(typeof l=="boolean"&&(c=l,l=arguments[1]||{},u=2),Object(l)!==l&&typeof l!="function"&&(l={}),f===u&&(l=this,u--);ue.length===0||e.every(t=>t.length),default:()=>[["left","center","right","justify"],["bold","italic","underline","strike"],["undo","redo"]]},toolbarColor:String,toolbarBg:String,toolbarTextColor:String,toolbarToggleColor:{type:String,default:"primary"},toolbarOutline:Boolean,toolbarPush:Boolean,toolbarRounded:Boolean,paragraphTag:{type:String,validator:e=>["div","p"].includes(e),default:"div"},contentStyle:Object,contentClass:[Object,Array,String],square:Boolean,flat:Boolean,dense:Boolean},emits:[...wr,"update:modelValue","keydown","click","focus","blur","dropdownShow","dropdownHide","dropdownBeforeShow","dropdownBeforeHide","linkShow","linkHide"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,a=xe(e,n),{inFullscreen:l,toggleFullscreen:u}=kr(),c=Br(),f=T(null),d=T(null),p=T(null),g=T(!1),m=s(()=>!e.readonly&&!e.disable),v,x,y=e.modelValue;document.execCommand("defaultParagraphSeparator",!1,e.paragraphTag),v=window.getComputedStyle(document.body).fontFamily;let k=s(()=>e.toolbarBg?` bg-${e.toolbarBg}`:""),S=s(()=>({type:"a",flat:e.toolbarOutline!==!0&&e.toolbarPush!==!0,noWrap:!0,outline:e.toolbarOutline,push:e.toolbarPush,rounded:e.toolbarRounded,dense:!0,color:e.toolbarColor,disable:!m.value,size:"sm"})),b=s(()=>{let M=n.lang.editor,V=n.iconSet.editor;return{bold:{cmd:"bold",icon:V.bold,tip:M.bold,key:66},italic:{cmd:"italic",icon:V.italic,tip:M.italic,key:73},strike:{cmd:"strikeThrough",icon:V.strikethrough,tip:M.strikethrough,key:83},underline:{cmd:"underline",icon:V.underline,tip:M.underline,key:85},unordered:{cmd:"insertUnorderedList",icon:V.unorderedList,tip:M.unorderedList},ordered:{cmd:"insertOrderedList",icon:V.orderedList,tip:M.orderedList},subscript:{cmd:"subscript",icon:V.subscript,tip:M.subscript,htmlTip:"x2"},superscript:{cmd:"superscript",icon:V.superscript,tip:M.superscript,htmlTip:"x2"},link:{cmd:"link",disable:ae=>ae.caret&&!ae.caret.can("link"),icon:V.hyperlink,tip:M.hyperlink,key:76},fullscreen:{cmd:"fullscreen",icon:V.toggleFullscreen,tip:M.toggleFullscreen,key:70},viewsource:{cmd:"viewsource",icon:V.viewSource,tip:M.viewSource},quote:{cmd:"formatBlock",param:"BLOCKQUOTE",icon:V.quote,tip:M.quote,key:81},left:{cmd:"justifyLeft",icon:V.left,tip:M.left},center:{cmd:"justifyCenter",icon:V.center,tip:M.center},right:{cmd:"justifyRight",icon:V.right,tip:M.right},justify:{cmd:"justifyFull",icon:V.justify,tip:M.justify},print:{type:"no-state",cmd:"print",icon:V.print,tip:M.print,key:80},outdent:{type:"no-state",disable:ae=>ae.caret&&!ae.caret.can("outdent"),cmd:"outdent",icon:V.outdent,tip:M.outdent},indent:{type:"no-state",disable:ae=>ae.caret&&!ae.caret.can("indent"),cmd:"indent",icon:V.indent,tip:M.indent},removeFormat:{type:"no-state",cmd:"removeFormat",icon:V.removeFormat,tip:M.removeFormat},hr:{type:"no-state",cmd:"insertHorizontalRule",icon:V.hr,tip:M.hr},undo:{type:"no-state",cmd:"undo",icon:V.undo,tip:M.undo,key:90},redo:{type:"no-state",cmd:"redo",icon:V.redo,tip:M.redo,key:89},h1:{cmd:"formatBlock",param:"H1",icon:V.heading1||V.heading,tip:M.heading1,htmlTip:`

${M.heading1}

`},h2:{cmd:"formatBlock",param:"H2",icon:V.heading2||V.heading,tip:M.heading2,htmlTip:`

${M.heading2}

`},h3:{cmd:"formatBlock",param:"H3",icon:V.heading3||V.heading,tip:M.heading3,htmlTip:`

${M.heading3}

`},h4:{cmd:"formatBlock",param:"H4",icon:V.heading4||V.heading,tip:M.heading4,htmlTip:`

${M.heading4}

`},h5:{cmd:"formatBlock",param:"H5",icon:V.heading5||V.heading,tip:M.heading5,htmlTip:`
${M.heading5}
`},h6:{cmd:"formatBlock",param:"H6",icon:V.heading6||V.heading,tip:M.heading6,htmlTip:`
${M.heading6}
`},p:{cmd:"formatBlock",param:e.paragraphTag,icon:V.heading,tip:M.paragraph},code:{cmd:"formatBlock",param:"PRE",icon:V.code,htmlTip:`${M.code}`},"size-1":{cmd:"fontSize",param:"1",icon:V.size1||V.size,tip:M.size1,htmlTip:`${M.size1}`},"size-2":{cmd:"fontSize",param:"2",icon:V.size2||V.size,tip:M.size2,htmlTip:`${M.size2}`},"size-3":{cmd:"fontSize",param:"3",icon:V.size3||V.size,tip:M.size3,htmlTip:`${M.size3}`},"size-4":{cmd:"fontSize",param:"4",icon:V.size4||V.size,tip:M.size4,htmlTip:`${M.size4}`},"size-5":{cmd:"fontSize",param:"5",icon:V.size5||V.size,tip:M.size5,htmlTip:`${M.size5}`},"size-6":{cmd:"fontSize",param:"6",icon:V.size6||V.size,tip:M.size6,htmlTip:`${M.size6}`},"size-7":{cmd:"fontSize",param:"7",icon:V.size7||V.size,tip:M.size7,htmlTip:`${M.size7}`}}}),h=s(()=>{let M=e.definitions||{},V=e.definitions||e.fonts?hn(!0,{},b.value,M,Mc(v,n.lang.editor.defaultFont,n.iconSet.editor.font,e.fonts)):b.value;return e.toolbar.map(ae=>ae.map(j=>{if(j.options)return{type:"dropdown",icon:j.icon,label:j.label,size:"sm",dense:!0,fixedLabel:j.fixedLabel,fixedIcon:j.fixedIcon,highlight:j.highlight,list:j.list,options:j.options.map(ke=>V[ke])};let fe=V[j];return fe?fe.type==="no-state"||M[j]&&(fe.cmd===void 0||b.value[fe.cmd]&&b.value[fe.cmd].type==="no-state")?fe:Object.assign({type:"toggle"},fe):{type:"slot",slot:j}}))}),_={$q:n,props:e,slots:t,emit:o,inFullscreen:l,toggleFullscreen:u,runCmd:w,isViewingSource:g,editLinkUrl:p,toolbarBackgroundClass:k,buttonProps:S,contentRef:d,buttons:h,setContent:O};Y(()=>e.modelValue,M=>{y!==M&&(y=M,O(M,!0))}),Y(p,M=>{o(`link${M?"Show":"Hide"}`)});let E=s(()=>e.toolbar&&e.toolbar.length!==0),L=s(()=>{let M={},V=ae=>{ae.key&&(M[ae.key]={cmd:ae.cmd,param:ae.param})};return h.value.forEach(ae=>{ae.forEach(j=>{j.options?j.options.forEach(V):V(j)})}),M}),D=s(()=>l.value?e.contentStyle:[{minHeight:e.minHeight,height:e.height,maxHeight:e.maxHeight},e.contentStyle]),Z=s(()=>`q-editor q-editor--${g.value===!0?"source":"default"}`+(e.disable===!0?" disabled":"")+(l.value===!0?" fullscreen column":"")+(e.square===!0?" q-editor--square no-border-radius":"")+(e.flat===!0?" q-editor--flat":"")+(e.dense===!0?" q-editor--dense":"")+(a.value===!0?" q-editor--dark q-dark":"")),B=s(()=>[e.contentClass,"q-editor__content",{col:l.value,"overflow-auto":l.value||e.maxHeight}]),F=s(()=>e.disable===!0?{"aria-disabled":"true"}:{});function $(){if(d.value!==null){let M=`inner${g.value===!0?"Text":"HTML"}`,V=d.value[M];V!==e.modelValue&&(y=V,o("update:modelValue",V))}}function q(M){if(o("keydown",M),M.ctrlKey!==!0||io(M)===!0){W();return}let V=M.keyCode,ae=L.value[V];if(ae!==void 0){let{cmd:j,param:fe}=ae;_e(M),w(j,fe,!1)}}function C(M){W(),o("click",M)}function A(M){if(d.value!==null){let{scrollTop:V,scrollHeight:ae}=d.value;x=ae-V}_.caret.save(),o("blur",M)}function z(M){Be(()=>{d.value!==null&&x!==void 0&&(d.value.scrollTop=d.value.scrollHeight-x)}),o("focus",M)}function H(M){let V=f.value;if(V!==null&&V.contains(M.target)===!0&&(M.relatedTarget===null||V.contains(M.relatedTarget)!==!0)){let ae=`inner${g.value===!0?"Text":"HTML"}`;_.caret.restorePosition(d.value[ae].length),W()}}function Q(M){let V=f.value;V!==null&&V.contains(M.target)===!0&&(M.relatedTarget===null||V.contains(M.relatedTarget)!==!0)&&(_.caret.savePosition(),W())}function ee(){x=void 0}function ve(M){_.caret.save()}function O(M,V){if(d.value!==null){V===!0&&_.caret.savePosition();let ae=`inner${g.value===!0?"Text":"HTML"}`;d.value[ae]=M,V===!0&&(_.caret.restorePosition(d.value[ae].length),W())}}function w(M,V,ae=!0){U(),_.caret.restore(),_.caret.apply(M,V,()=>{U(),_.caret.save(),ae&&W()})}function W(){setTimeout(()=>{p.value=null,r.$forceUpdate()},1)}function U(){bo(()=>{d.value?.focus({preventScroll:!0})})}function le(){return d.value}return Qe(()=>{_.caret=r.caret=new da(d.value,_),O(e.modelValue),W(),document.addEventListener("selectionchange",ve)}),be(()=>{document.removeEventListener("selectionchange",ve)}),Object.assign(r,{runCmd:w,refreshToolbar:W,focus:U,getContentEl:le}),()=>{let M;if(E.value){let V=[i("div",{key:"qedt_top",class:"q-editor__toolbar row no-wrap scroll-x"+k.value},Tc(_))];p.value!==null&&V.push(i("div",{key:"qedt_btm",class:"q-editor__toolbar row no-wrap items-center scroll-x"+k.value},Rc(_))),M=i("div",{key:"toolbar_ctainer",class:"q-editor__toolbars-container"},V)}return i("div",{ref:f,class:Z.value,style:{height:l.value===!0?"100%":null},...F.value,onFocusin:H,onFocusout:Q},[M,i("div",{ref:d,style:D.value,class:B.value,contenteditable:m.value,placeholder:e.placeholder,...c.listeners.value,onInput:$,onKeydown:q,onClick:C,onBlur:A,onFocus:z,onMousedown:ee,onTouchstartPassive:ee})])}}});var Ln=P({name:"QItemLabel",props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){let o=s(()=>parseInt(e.lines,10)),r=s(()=>"q-item__label"+(e.overline===!0?" q-item__label--overline text-overline":"")+(e.caption===!0?" q-item__label--caption text-caption":"")+(e.header===!0?" q-item__label--header":"")+(o.value===1?" ellipsis":"")),n=s(()=>e.lines!==void 0&&o.value>1?{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":o.value}:null);return()=>i("div",{style:n.value,class:r.value},re(t.default))}});var pn=P({name:"QSlideTransition",props:{appear:Boolean,duration:{type:Number,default:300}},emits:["show","hide"],setup(e,{slots:t,emit:o}){let r=!1,n,a,l=null,u=null,c,f;function d(){n?.(),n=null,r=!1,l!==null&&(clearTimeout(l),l=null),u!==null&&(clearTimeout(u),u=null),a?.removeEventListener("transitionend",c),c=null}function p(x,y,k){y!==void 0&&(x.style.height=`${y}px`),x.style.transition=`height ${e.duration}ms cubic-bezier(.25, .8, .50, 1)`,r=!0,n=k}function g(x,y){x.style.overflowY=null,x.style.height=null,x.style.transition=null,d(),y!==f&&o(y)}function m(x,y){let k=0;a=x,r===!0?(d(),k=x.offsetHeight===x.scrollHeight?0:void 0):(f="hide",x.style.overflowY="hidden"),p(x,k,y),l=setTimeout(()=>{l=null,x.style.height=`${x.scrollHeight}px`,c=S=>{u=null,(Object(S)!==S||S.target===x)&&g(x,"show")},x.addEventListener("transitionend",c),u=setTimeout(c,e.duration*1.1)},100)}function v(x,y){let k;a=x,r===!0?d():(f="show",x.style.overflowY="hidden",k=x.scrollHeight),p(x,k,y),l=setTimeout(()=>{l=null,x.style.height=0,c=S=>{u=null,(Object(S)!==S||S.target===x)&&g(x,"hide")},x.addEventListener("transitionend",c),u=setTimeout(c,e.duration*1.1)},100)}return be(()=>{r===!0&&d()}),()=>i(st,{css:!1,appear:e.appear,onEnter:m,onLeave:v},t.default)}});var gh={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},su={xs:2,sm:4,md:8,lg:16,xl:24},uo=P({name:"QSeparator",props:{...Se,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){let t=K(),o=xe(e,t.proxy.$q),r=s(()=>e.vertical===!0?"vertical":"horizontal"),n=s(()=>` q-separator--${r.value}`),a=s(()=>e.inset!==!1?`${n.value}-${gh[e.inset]}`:""),l=s(()=>`q-separator${n.value}${a.value}`+(e.color!==void 0?` bg-${e.color}`:"")+(o.value===!0?" q-separator--dark":"")),u=s(()=>{let c={};if(e.size!==void 0&&(c[e.vertical===!0?"width":"height"]=e.size),e.spaced!==!1){let f=e.spaced===!0?`${su.md}px`:e.spaced in su?`${su[e.spaced]}px`:e.spaced,d=e.vertical===!0?["Left","Right"]:["Top","Bottom"];c[`margin${d[0]}`]=c[`margin${d[1]}`]=f}return c});return()=>i("hr",{class:l.value,style:u.value,"aria-orientation":r.value})}});var Dn=$u({}),hh=Object.keys(Zo),Ec=P({name:"QExpansionItem",props:{...Zo,...go,...Se,icon:String,label:String,labelLines:[Number,String],caption:String,captionLines:[Number,String],dense:Boolean,toggleAriaLabel:String,expandIcon:String,expandedIcon:String,expandIconClass:[Array,String,Object],duration:{},headerInsetLevel:Number,contentInsetLevel:Number,expandSeparator:Boolean,defaultOpened:Boolean,hideExpandIcon:Boolean,expandIconToggle:Boolean,switchToggleSide:Boolean,denseToggle:Boolean,group:String,popup:Boolean,headerStyle:[Array,String,Object],headerClass:[Array,String,Object]},emits:[...ho,"click","afterShow","afterHide"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=xe(e,r),a=T(e.modelValue!==null?e.modelValue:e.defaultOpened),l=T(null),u=Do(),{show:c,hide:f,toggle:d}=po({showing:a}),p,g,m=s(()=>`q-expansion-item q-item-type q-expansion-item--${a.value===!0?"expanded":"collapsed"} q-expansion-item--${e.popup===!0?"popup":"standard"}`),v=s(()=>e.contentInsetLevel===void 0?null:{["padding"+(r.lang.rtl===!0?"Right":"Left")]:e.contentInsetLevel*56+"px"}),x=s(()=>e.disable!==!0&&(e.href!==void 0||e.to!==void 0&&e.to!==null&&e.to!=="")),y=s(()=>{let H={};return hh.forEach(Q=>{H[Q]=e[Q]}),H}),k=s(()=>x.value===!0||e.expandIconToggle!==!0),S=s(()=>e.expandedIcon!==void 0&&a.value===!0?e.expandedIcon:e.expandIcon||r.iconSet.expansionItem[e.denseToggle===!0?"denseIcon":"icon"]),b=s(()=>e.disable!==!0&&(x.value===!0||e.expandIconToggle===!0)),h=s(()=>({expanded:a.value===!0,detailsId:u.value,toggle:d,show:c,hide:f})),_=s(()=>{let H=e.toggleAriaLabel!==void 0?e.toggleAriaLabel:r.lang.label[a.value===!0?"collapse":"expand"](e.label);return{role:"button","aria-expanded":a.value===!0?"true":"false","aria-controls":u.value,"aria-label":H}});Y(()=>e.group,H=>{g?.(),H!==void 0&&F()});function E(H){x.value!==!0&&d(H),o("click",H)}function L(H){H.keyCode===13&&D(H,!0)}function D(H,Q){Q!==!0&&H.qAvoidFocus!==!0&&l.value?.focus(),d(H),_e(H)}function Z(){o("afterShow")}function B(){o("afterHide")}function F(){p===void 0&&(p=Lo()),a.value===!0&&(Dn[e.group]=p);let H=Y(a,ee=>{ee===!0?Dn[e.group]=p:Dn[e.group]===p&&delete Dn[e.group]}),Q=Y(()=>Dn[e.group],(ee,ve)=>{ve===p&&ee!==void 0&&ee!==p&&f()});g=()=>{H(),Q(),Dn[e.group]===p&&delete Dn[e.group],g=void 0}}function $(){let H={class:[`q-focusable relative-position cursor-pointer${e.denseToggle===!0&&e.switchToggleSide===!0?" items-end":""}`,e.expandIconClass],side:e.switchToggleSide!==!0,avatar:e.switchToggleSide},Q=[i(Re,{class:"q-expansion-item__toggle-icon"+(e.expandedIcon===void 0&&a.value===!0?" q-expansion-item__toggle-icon--rotated":""),name:S.value})];return b.value===!0&&(Object.assign(H,{tabindex:0,..._.value,onClick:D,onKeyup:L}),Q.unshift(i("div",{ref:l,class:"q-expansion-item__toggle-focus q-icon q-focus-helper q-focus-helper--rounded",tabindex:-1}))),i(ro,H,()=>Q)}function q(){let H;return t.header!==void 0?H=[].concat(t.header(h.value)):(H=[i(ro,()=>[i(Ln,{lines:e.labelLines},()=>e.label||""),e.caption?i(Ln,{lines:e.captionLines,caption:!0},()=>e.caption):null])],e.icon&&H[e.switchToggleSide===!0?"push":"unshift"](i(ro,{side:e.switchToggleSide===!0,avatar:e.switchToggleSide!==!0},()=>i(Re,{name:e.icon})))),e.disable!==!0&&e.hideExpandIcon!==!0&&H[e.switchToggleSide===!0?"unshift":"push"]($()),H}function C(){let H={ref:"item",style:e.headerStyle,class:e.headerClass,dark:n.value,disable:e.disable,dense:e.dense,insetLevel:e.headerInsetLevel};return k.value===!0&&(H.clickable=!0,H.onClick=E,Object.assign(H,x.value===!0?y.value:_.value)),i(No,H,q)}function A(){return Bt(i("div",{key:"e-content",class:"q-expansion-item__content relative-position",style:v.value,id:u.value},re(t.default)),[[ka,a.value]])}function z(){let H=[C(),i(pn,{duration:e.duration,onShow:Z,onHide:B},A)];return e.expandSeparator===!0&&H.push(i(uo,{class:"q-expansion-item__border q-expansion-item__border--top absolute-top",dark:n.value}),i(uo,{class:"q-expansion-item__border q-expansion-item__border--bottom absolute-bottom",dark:n.value})),H}return e.group!==void 0&&F(),be(()=>{g?.()}),()=>i("div",{class:m.value},[i("div",{class:"q-expansion-item__container relative-position"},z())])}});var ph=["top","right","bottom","left"],fa={type:{type:String,default:"a"},outline:Boolean,push:Boolean,flat:Boolean,unelevated:Boolean,color:String,textColor:String,glossy:Boolean,square:Boolean,padding:String,label:{type:[String,Number],default:""},labelPosition:{type:String,default:"right",validator:e=>ph.includes(e)},externalLabel:Boolean,hideLabel:{type:Boolean},labelClass:[Array,String,Object],labelStyle:[Array,String,Object],disable:Boolean,tabindex:[Number,String]};function Mi(e,t){return{formClass:s(()=>`q-fab--form-${e.square===!0?"square":"rounded"}`),stacked:s(()=>e.externalLabel===!1&&["top","bottom"].includes(e.labelPosition)),labelProps:s(()=>{if(e.externalLabel===!0){let o=e.hideLabel===null?t.value===!1:e.hideLabel;return{action:"push",data:{class:[e.labelClass,`q-fab__label q-tooltip--style q-fab__label--external q-fab__label--external-${e.labelPosition}`+(o===!0?" q-fab__label--external-hidden":"")],style:e.labelStyle}}}return{action:["left","top"].includes(e.labelPosition)?"unshift":"push",data:{class:[e.labelClass,`q-fab__label q-fab__label--internal q-fab__label--internal-${e.labelPosition}`+(e.hideLabel===!0?" q-fab__label--internal-hidden":"")],style:e.labelStyle}}})}}var bh=["up","right","down","left"],yh=["left","center","right"],Bc=P({name:"QFab",props:{...fa,...go,icon:String,activeIcon:String,hideIcon:Boolean,hideLabel:{...fa.hideLabel,default:null},direction:{type:String,default:"right",validator:e=>bh.includes(e)},persistent:Boolean,verticalActionsAlign:{type:String,default:"center",validator:e=>yh.includes(e)}},emits:ho,setup(e,{slots:t}){let o=T(null),r=T(e.modelValue===!0),n=Do(),{proxy:{$q:a}}=K(),{formClass:l,labelProps:u}=Mi(e,r),c=s(()=>e.persistent!==!0),{hide:f,toggle:d}=po({showing:r,hideOnRouteChange:c}),p=s(()=>({opened:r.value})),g=s(()=>`q-fab z-fab row inline justify-center q-fab--align-${e.verticalActionsAlign} ${l.value}`+(r.value===!0?" q-fab--opened":" q-fab--closed")),m=s(()=>`q-fab__actions flex no-wrap inline q-fab__actions--${e.direction} q-fab__actions--${r.value===!0?"opened":"closed"}`),v=s(()=>{let S={id:n.value,role:"menu"};return r.value!==!0&&(S["aria-hidden"]="true"),S}),x=s(()=>`q-fab__icon-holder q-fab__icon-holder--${r.value===!0?"opened":"closed"}`);function y(S,b){let h=t[S],_=`q-fab__${S} absolute-full`;return h===void 0?i(Re,{class:_,name:e[b]||a.iconSet.fab[b]}):i("div",{class:_},h(p.value))}function k(){let S=[];return e.hideIcon!==!0&&S.push(i("div",{class:x.value},[y("icon","icon"),y("active-icon","activeIcon")])),(e.label!==""||t.label!==void 0)&&S[u.value.action](i("div",u.value.data,t.label!==void 0?t.label(p.value):[e.label])),Ge(t.tooltip,S)}return Kt($a,{showing:r,onChildClick(S){f(S),S?.qAvoidFocus!==!0&&o.value?.$el.focus()}}),()=>i("div",{class:g.value},[i(Ve,{ref:o,class:l.value,...e,noWrap:!0,stack:e.stacked,align:void 0,icon:void 0,label:void 0,noCaps:!0,fab:!0,"aria-expanded":r.value===!0?"true":"false","aria-haspopup":"true","aria-controls":n.value,onClick:d},k),i("div",{class:m.value,...v.value},re(t.default))])}});var Fc={start:"self-end",center:"self-center",end:"self-start"},Sh=Object.keys(Fc),Lc=P({name:"QFabAction",props:{...fa,icon:{type:String,default:""},anchor:{type:String,validator:e=>Sh.includes(e)},to:[String,Object],replace:Boolean},emits:["click"],setup(e,{slots:t,emit:o}){let r=pt($a,()=>({showing:{value:!0},onChildClick:Ye})),{formClass:n,labelProps:a}=Mi(e,r.showing),l=s(()=>{let p=Fc[e.anchor];return n.value+(p!==void 0?` ${p}`:"")}),u=s(()=>e.disable===!0||r.showing.value!==!0);function c(p){r.onChildClick(p),o("click",p)}function f(){let p=[];return t.icon!==void 0?p.push(t.icon()):e.icon!==""&&p.push(i(Re,{name:e.icon})),(e.label!==""||t.label!==void 0)&&p[a.value.action](i("div",a.value.data,t.label!==void 0?t.label():[e.label])),Ge(t.default,p)}let d=K();return Object.assign(d.proxy,{click:c}),()=>i(Ve,{class:l.value,...e,noWrap:!0,stack:e.stacked,icon:void 0,label:void 0,noCaps:!0,fabMini:!0,disable:u.value,onClick:c},f)}});function Ri({validate:e,resetValidation:t,requiresQForm:o}){let r=pt(Xo,!1);if(r!==!1){let{props:n,proxy:a}=K();Object.assign(a,{validate:e,resetValidation:t}),Y(()=>n.disable,l=>{l===!0?(typeof t=="function"&&t(),r.unbindComponent(a)):r.bindComponent(a)}),Qe(()=>{n.disable!==!0&&r.bindComponent(a)}),be(()=>{n.disable!==!0&&r.unbindComponent(a)})}else o===!0&&console.error("Parent QForm not found on useFormChild()!")}var xh=[!0,!1,"ondemand"],Dc={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],default:!1,validator:e=>xh.includes(e)}};function Oc(e,t){let{props:o,proxy:r}=K(),n=T(!1),a=T(null),l=T(!1);Ri({validate:x,resetValidation:v});let u=0,c,f=s(()=>o.rules!==void 0&&o.rules!==null&&o.rules.length!==0),d=s(()=>o.disable!==!0&&f.value===!0&&t.value===!1),p=s(()=>o.error===!0||n.value===!0),g=s(()=>typeof o.errorMessage=="string"&&o.errorMessage.length!==0?o.errorMessage:a.value);Y(()=>o.modelValue,()=>{l.value=!0,d.value===!0&&o.lazyRules===!1&&y()});function m(){o.lazyRules!=="ondemand"&&d.value===!0&&l.value===!0&&y()}Y(()=>o.reactiveRules,k=>{k===!0?c===void 0&&(c=Y(()=>o.rules,m,{immediate:!0,deep:!0})):c!==void 0&&(c(),c=void 0)},{immediate:!0}),Y(()=>o.lazyRules,m),Y(e,k=>{k===!0?l.value=!0:d.value===!0&&o.lazyRules!=="ondemand"&&y()});function v(){u++,t.value=!1,l.value=!1,n.value=!1,a.value=null,y.cancel()}function x(k=o.modelValue){if(o.disable===!0||f.value===!1)return!0;let S=++u,b=t.value!==!0?()=>{l.value=!0}:()=>{},h=(E,L)=>{E===!0&&b(),n.value=E,a.value=L||null,t.value=!1},_=[];for(let E=0;E{if(E===void 0||Array.isArray(E)===!1||E.length===0)return S===u&&h(!1),!0;let L=E.find(D=>D===!1||typeof D=="string");return S===u&&h(L!==void 0,L),L===void 0},E=>(S===u&&(console.error(E),h(!0)),!1)))}let y=Jt(x,0);return be(()=>{c?.(),y.cancel()}),Object.assign(r,{resetValidation:v,validate:x}),ft(r,"hasError",()=>p.value),{isDirtyModel:l,hasRules:f,hasError:p,errorMessage:g,validate:x,resetValidation:v}}function Qo(e){return e!=null&&(""+e).length!==0}var cu={...Se,...Dc,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String},On={...cu,maxlength:[Number,String]},bn=["update:modelValue","clear","focus","blur"];function yn({requiredForAttr:e=!0,tagProp:t,changeEvent:o=!1}={}){let{props:r,proxy:n}=K(),a=xe(r,n.$q),l=Do({required:e,getValue:()=>r.for});return{requiredForAttr:e,changeEvent:o,tag:t===!0?s(()=>r.tag):{value:"label"},isDark:a,editable:s(()=>r.disable!==!0&&r.readonly!==!0),innerLoading:T(!1),focused:T(!1),hasPopupOpen:!1,splitAttrs:Br(),targetUid:l,rootRef:T(null),targetRef:T(null),controlRef:T(null)}}function Sn(e){let{props:t,emit:o,slots:r,attrs:n,proxy:a}=K(),{$q:l}=a,u=null;e.hasValue===void 0&&(e.hasValue=s(()=>Qo(t.modelValue))),e.emitValue===void 0&&(e.emitValue=Q=>{o("update:modelValue",Q)}),e.controlEvents===void 0&&(e.controlEvents={onFocusin:Z,onFocusout:B}),Object.assign(e,{clearValue:F,onControlFocusin:Z,onControlFocusout:B,focus:L}),e.computedCounter===void 0&&(e.computedCounter=s(()=>{if(t.counter!==!1){let Q=typeof t.modelValue=="string"||typeof t.modelValue=="number"?(""+t.modelValue).length:Array.isArray(t.modelValue)===!0?t.modelValue.length:0,ee=t.maxlength!==void 0?t.maxlength:t.maxValues;return Q+(ee!==void 0?" / "+ee:"")}}));let{isDirtyModel:c,hasRules:f,hasError:d,errorMessage:p,resetValidation:g}=Oc(e.focused,e.innerLoading),m=e.floatingLabel!==void 0?s(()=>t.stackLabel===!0||e.focused.value===!0||e.floatingLabel.value===!0):s(()=>t.stackLabel===!0||e.focused.value===!0||e.hasValue.value===!0),v=s(()=>t.bottomSlots===!0||t.hint!==void 0||f.value===!0||t.counter===!0||t.error!==null),x=s(()=>t.filled===!0?"filled":t.outlined===!0?"outlined":t.borderless===!0?"borderless":t.standout?"standout":"standard"),y=s(()=>`q-field row no-wrap items-start q-field--${x.value}`+(e.fieldClass!==void 0?` ${e.fieldClass.value}`:"")+(t.rounded===!0?" q-field--rounded":"")+(t.square===!0?" q-field--square":"")+(m.value===!0?" q-field--float":"")+(S.value===!0?" q-field--labeled":"")+(t.dense===!0?" q-field--dense":"")+(t.itemAligned===!0?" q-field--item-aligned q-item-type":"")+(e.isDark.value===!0?" q-field--dark":"")+(e.getControl===void 0?" q-field--auto-height":"")+(e.focused.value===!0?" q-field--focused":"")+(d.value===!0?" q-field--error":"")+(d.value===!0||e.focused.value===!0?" q-field--highlighted":"")+(t.hideBottomSpace!==!0&&v.value===!0?" q-field--with-bottom":"")+(t.disable===!0?" q-field--disabled":t.readonly===!0?" q-field--readonly":"")),k=s(()=>"q-field__control relative-position row no-wrap"+(t.bgColor!==void 0?` bg-${t.bgColor}`:"")+(d.value===!0?" text-negative":typeof t.standout=="string"&&t.standout.length!==0&&e.focused.value===!0?` ${t.standout}`:t.color!==void 0?` text-${t.color}`:"")),S=s(()=>t.labelSlot===!0||t.label!==void 0),b=s(()=>"q-field__label no-pointer-events absolute ellipsis"+(t.labelColor!==void 0&&d.value!==!0?` text-${t.labelColor}`:"")),h=s(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:m.value,modelValue:t.modelValue,emitValue:e.emitValue})),_=s(()=>{let Q={};return e.targetUid.value&&(Q.for=e.targetUid.value),t.disable===!0&&(Q["aria-disabled"]="true"),Q});function E(){let Q=document.activeElement,ee=e.targetRef?.value;ee&&(Q===null||Q.id!==e.targetUid.value)&&(ee.hasAttribute("tabindex")===!0||(ee=ee.querySelector("[tabindex]")),ee!==Q&&ee?.focus({preventScroll:!0}))}function L(){bo(E)}function D(){qs(E);let Q=document.activeElement;Q!==null&&e.rootRef.value.contains(Q)&&Q.blur()}function Z(Q){u!==null&&(clearTimeout(u),u=null),e.editable.value===!0&&e.focused.value===!1&&(e.focused.value=!0,o("focus",Q))}function B(Q,ee){u!==null&&clearTimeout(u),u=setTimeout(()=>{u=null,!(document.hasFocus()===!0&&(e.hasPopupOpen===!0||e.controlRef===void 0||e.controlRef.value===null||e.controlRef.value.contains(document.activeElement)!==!1))&&(e.focused.value===!0&&(e.focused.value=!1,o("blur",Q)),ee?.())})}function F(Q){_e(Q),l.platform.is.mobile!==!0?(e.targetRef?.value||e.rootRef.value).focus():e.rootRef.value.contains(document.activeElement)===!0&&document.activeElement.blur(),t.type==="file"&&(e.inputRef.value.value=null),o("update:modelValue",null),e.changeEvent===!0&&o("change",null),o("clear",t.modelValue),Be(()=>{let ee=c.value;g(),c.value=ee})}function $(Q){[13,32].includes(Q.keyCode)&&F(Q)}function q(){let Q=[];return r.prepend!==void 0&&Q.push(i("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:gt},r.prepend())),Q.push(i("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},C())),d.value===!0&&t.noErrorIcon===!1&&Q.push(z("error",[i(Re,{name:l.iconSet.field.error,color:"negative"})])),t.loading===!0||e.innerLoading.value===!0?Q.push(z("inner-loading-append",r.loading!==void 0?r.loading():[i(wt,{color:t.color})])):t.clearable===!0&&e.hasValue.value===!0&&e.editable.value===!0&&Q.push(z("inner-clearable-append",[i(Re,{class:"q-field__focusable-action",name:t.clearIcon||l.iconSet.field.clear,tabindex:0,role:"button","aria-hidden":"false","aria-label":l.lang.label.clear,onKeyup:$,onClick:F})])),r.append!==void 0&&Q.push(i("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:gt},r.append())),e.getInnerAppend!==void 0&&Q.push(z("inner-append",e.getInnerAppend())),e.getControlChild!==void 0&&Q.push(e.getControlChild()),Q}function C(){let Q=[];return t.prefix!==void 0&&t.prefix!==null&&Q.push(i("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),e.getShadowControl!==void 0&&e.hasShadow.value===!0&&Q.push(e.getShadowControl()),S.value===!0&&Q.push(i("div",{class:b.value},re(r.label,t.label))),e.getControl!==void 0?Q.push(e.getControl()):r.rawControl!==void 0?Q.push(r.rawControl()):r.control!==void 0&&Q.push(i("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0},r.control(h.value))),t.suffix!==void 0&&t.suffix!==null&&Q.push(i("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),Q.concat(re(r.default))}function A(){let Q,ee;d.value===!0?p.value!==null?(Q=[i("div",{role:"alert"},p.value)],ee=`q--slot-error-${p.value}`):(Q=re(r.error),ee="q--slot-error"):(t.hideHint!==!0||e.focused.value===!0)&&(t.hint!==void 0?(Q=[i("div",t.hint)],ee=`q--slot-hint-${t.hint}`):(Q=re(r.hint),ee="q--slot-hint"));let ve=t.counter===!0||r.counter!==void 0;if(t.hideBottomSpace===!0&&ve===!1&&Q===void 0)return;let O=i("div",{key:ee,class:"q-field__messages col"},Q);return i("div",{class:"q-field__bottom row items-start q-field__bottom--"+(t.hideBottomSpace!==!0?"animated":"stale"),onClick:gt},[t.hideBottomSpace===!0?O:i(st,{name:"q-transition--field-message"},()=>O),ve===!0?i("div",{class:"q-field__counter"},r.counter!==void 0?r.counter():e.computedCounter.value):null])}function z(Q,ee){return ee===null?null:i("div",{key:Q,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},ee)}let H=!1;return At(()=>{H=!0}),Ut(()=>{H===!0&&t.autofocus===!0&&a.focus()}),t.autofocus===!0&&Qe(()=>{a.focus()}),be(()=>{u!==null&&clearTimeout(u)}),Object.assign(a,{focus:L,blur:D}),function(){let ee=e.getControl===void 0&&r.control===void 0?{...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0,..._.value}:_.value;return i(e.tag.value,{ref:e.rootRef,class:[y.value,n.class],style:n.style,...ee},[r.before!==void 0?i("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:gt},r.before()):null,i("div",{class:"q-field__inner relative-position col self-stretch"},[i("div",{ref:e.controlRef,class:k.value,tabindex:-1,...e.controlEvents},q()),v.value===!0?A():null]),r.after!==void 0?i("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:gt},r.after()):null])}}var Pi=P({name:"QField",inheritAttrs:!1,props:{...On,tag:{type:String,default:"label"}},emits:bn,setup(){return Sn(yn({tagProp:!0}))}});function Fr(e,t,o,r){let n=[];return e.forEach(a=>{r(a)===!0?n.push(a):t.push({failedPropValidation:o,file:a})}),n}function Ai(e){e?.dataTransfer&&(e.dataTransfer.dropEffect="copy"),_e(e)}var $i={multiple:Boolean,accept:String,capture:String,maxFileSize:[Number,String],maxTotalSize:[Number,String],maxFiles:[Number,String],filter:Function},Ei=["rejected"];function Bi({editable:e,dnd:t,getFileInput:o,addFilesToQueue:r}){let{props:n,emit:a,proxy:l}=K(),u=T(null),c=s(()=>n.accept!==void 0?n.accept.split(",").map(S=>(S=S.trim(),S==="*"?"*/":(S.endsWith("/*")&&(S=S.slice(0,S.length-1)),S.toUpperCase()))):null),f=s(()=>parseInt(n.maxFiles,10)),d=s(()=>parseInt(n.maxTotalSize,10));function p(S){if(e.value)if(S!==Object(S)&&(S={target:null}),S.target?.matches('input[type="file"]')===!0)S.clientX===0&&S.clientY===0&&it(S);else{let b=o();b!==S.target&&b?.click(S)}}function g(S){e.value&&S&&r(null,S)}function m(S,b,h,_){let E=Array.from(b||S.target.files),L=[],D=()=>{L.length!==0&&a("rejected",L)};if(n.accept!==void 0&&c.value.indexOf("*/")===-1&&(E=Fr(E,L,"accept",Z=>c.value.some(B=>Z.type.toUpperCase().startsWith(B)||Z.name.toUpperCase().endsWith(B))),E.length===0))return D();if(n.maxFileSize!==void 0){let Z=parseInt(n.maxFileSize,10);if(E=Fr(E,L,"max-file-size",B=>B.size<=Z),E.length===0)return D()}if(n.multiple!==!0&&E.length!==0&&(E=[E[0]]),E.forEach(Z=>{Z.__key=Z.webkitRelativePath+Z.lastModified+Z.name+Z.size}),_===!0){let Z=h.map(B=>B.__key);E=Fr(E,L,"duplicate",B=>Z.includes(B.__key)===!1)}if(E.length===0)return D();if(n.maxTotalSize!==void 0){let Z=_===!0?h.reduce((B,F)=>B+F.size,0):0;if(E=Fr(E,L,"max-total-size",B=>(Z+=B.size,Z<=d.value)),E.length===0)return D()}if(typeof n.filter=="function"){let Z=n.filter(E);E=Fr(E,L,"filter",B=>Z.includes(B))}if(n.maxFiles!==void 0){let Z=_===!0?h.length:0;if(E=Fr(E,L,"max-files",()=>(Z++,Z<=f.value)),E.length===0)return D()}if(D(),E.length!==0)return E}function v(S){Ai(S),t.value!==!0&&(t.value=!0)}function x(S){_e(S),(S.relatedTarget!==null||Ae.is.safari!==!0?S.relatedTarget!==u.value:document.elementsFromPoint(S.clientX,S.clientY).includes(u.value)===!1)===!0&&(t.value=!1)}function y(S){Ai(S);let b=S.dataTransfer.files;b.length!==0&&r(null,b),t.value=!1}function k(S){if(t.value===!0)return i("div",{ref:u,class:`q-${S}__dnd absolute-full`,onDragenter:Ai,onDragover:Ai,onDragleave:x,onDrop:y})}return Object.assign(l,{pickFiles:p,addFiles:g}),{pickFiles:p,addFiles:g,onDragover:v,onDragleave:x,processFiles:m,getDndNode:k,maxFilesNumber:f,maxTotalSizeNumber:d}}function Fi(e,t){function o(){let r=e.modelValue;try{let n="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(r)===r&&("length"in r?Array.from(r):[r]).forEach(a=>{n.items.add(a)}),{files:n.files}}catch{return{files:void 0}}}return t===!0?s(()=>{if(e.type==="file")return o()}):s(o)}var Vc=P({name:"QFile",inheritAttrs:!1,props:{...cu,...kt,...$i,modelValue:[File,FileList,Array],append:Boolean,useChips:Boolean,displayValue:[String,Number],tabindex:{type:[String,Number],default:0},counterLabel:Function,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...bn,...Ei],setup(e,{slots:t,emit:o,attrs:r}){let{proxy:n}=K(),a=yn(),l=T(null),u=T(!1),c=gr(e),{pickFiles:f,onDragover:d,onDragleave:p,processFiles:g,getDndNode:m}=Bi({editable:a.editable,dnd:u,getFileInput:$,addFilesToQueue:q}),v=Fi(e),x=s(()=>Object(e.modelValue)===e.modelValue?"length"in e.modelValue?Array.from(e.modelValue):[e.modelValue]:[]),y=s(()=>Qo(x.value)),k=s(()=>x.value.map(H=>H.name).join(", ")),S=s(()=>Un(x.value.reduce((H,Q)=>H+Q.size,0))),b=s(()=>({totalSize:S.value,filesNumber:x.value.length,maxFiles:e.maxFiles})),h=s(()=>({tabindex:-1,type:"file",title:"",accept:e.accept,capture:e.capture,name:c.value,...r,id:a.targetUid.value,disabled:a.editable.value!==!0})),_=s(()=>"q-file q-field--auto-height"+(u.value===!0?" q-file--dnd":"")),E=s(()=>e.multiple===!0&&e.append===!0);function L(H){let Q=x.value.slice();Q.splice(H,1),Z(Q)}function D(H){let Q=x.value.indexOf(H);Q!==-1&&L(Q)}function Z(H){o("update:modelValue",e.multiple===!0?H:H[0])}function B(H){H.keyCode===13&>(H)}function F(H){(H.keyCode===13||H.keyCode===32)&&f(H)}function $(){return l.value}function q(H,Q){let ee=g(H,Q,x.value,E.value),ve=$();ve!=null&&(ve.value=""),ee!==void 0&&((e.multiple===!0?e.modelValue&&ee.every(O=>x.value.includes(O)):e.modelValue===ee[0])||Z(E.value===!0?x.value.concat(ee):ee))}function C(){return[i("input",{class:[e.inputClass,"q-file__filler"],style:e.inputStyle})]}function A(){if(t.file!==void 0)return x.value.length===0?C():x.value.map((Q,ee)=>t.file({index:ee,file:Q,ref:this}));if(t.selected!==void 0)return x.value.length===0?C():t.selected({files:x.value,ref:this});if(e.useChips===!0)return x.value.length===0?C():x.value.map((Q,ee)=>i(qr,{key:"file-"+ee,removable:a.editable.value,dense:!0,textColor:e.color,tabindex:e.tabindex,onRemove:()=>{L(ee)}},()=>i("span",{class:"ellipsis",textContent:Q.name})));let H=e.displayValue!==void 0?e.displayValue:k.value;return H.length!==0?[i("div",{class:e.inputClass,style:e.inputStyle,textContent:H})]:C()}function z(){let H={ref:l,...h.value,...v.value,class:"q-field__input fit absolute-full cursor-pointer",onChange:q};return e.multiple===!0&&(H.multiple=!0),i("input",H)}return Object.assign(a,{fieldClass:_,emitValue:Z,hasValue:y,inputRef:l,innerValue:x,floatingLabel:s(()=>y.value===!0||Qo(e.displayValue)),computedCounter:s(()=>{if(e.counterLabel!==void 0)return e.counterLabel(b.value);let H=e.maxFiles;return`${x.value.length}${H!==void 0?" / "+H:""} (${S.value})`}),getControlChild:()=>m("file"),getControl:()=>{let H={ref:a.targetRef,class:"q-field__native row items-center cursor-pointer",tabindex:e.tabindex};return a.editable.value===!0&&Object.assign(H,{onDragover:d,onDragleave:p,onKeydown:B,onKeyup:F}),i("div",H,[z()].concat(A()))}}),Object.assign(n,{removeAtIndex:L,removeFile:D,getNativeElement:()=>l.value}),ft(n,"nativeEl",()=>l.value),Sn(a)}});var zc=P({name:"QFooter",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=pt(eo,Ze);if(n===Ze)return console.error("QFooter needs to be child of QLayout"),Ze;let a=T(parseInt(e.heightHint,10)),l=T(!0),u=T(xt.value===!0||n.isContainer.value===!0?0:window.innerHeight),c=s(()=>e.reveal===!0||n.view.value.indexOf("F")!==-1||r.platform.is.ios&&n.isContainer.value===!0),f=s(()=>n.isContainer.value===!0?n.containerHeight.value:u.value),d=s(()=>{if(e.modelValue!==!0)return 0;if(c.value===!0)return l.value===!0?a.value:0;let _=n.scroll.value.position+f.value+a.value-n.height.value;return _>0?_:0}),p=s(()=>e.modelValue!==!0||c.value===!0&&l.value!==!0),g=s(()=>e.modelValue===!0&&p.value===!0&&e.reveal===!0),m=s(()=>"q-footer q-layout__section--marginal "+(c.value===!0?"fixed":"absolute")+"-bottom"+(e.bordered===!0?" q-footer--bordered":"")+(p.value===!0?" q-footer--hidden":"")+(e.modelValue!==!0?" q-layout--prevent-focus"+(c.value!==!0?" hidden":""):"")),v=s(()=>{let _=n.rows.value.bottom,E={};return _[0]==="l"&&n.left.space===!0&&(E[r.lang.rtl===!0?"right":"left"]=`${n.left.size}px`),_[2]==="r"&&n.right.space===!0&&(E[r.lang.rtl===!0?"left":"right"]=`${n.right.size}px`),E});function x(_,E){n.update("footer",_,E)}function y(_,E){_.value!==E&&(_.value=E)}function k({height:_}){y(a,_),x("size",_)}function S(){if(e.reveal!==!0)return;let{direction:_,position:E,inflectionPoint:L}=n.scroll.value;y(l,_==="up"||E-L<100||n.height.value-f.value-E-a.value<300)}function b(_){g.value===!0&&y(l,!0),o("focusin",_)}Y(()=>e.modelValue,_=>{x("space",_),y(l,!0),n.animate()}),Y(d,_=>{x("offset",_)}),Y(()=>e.reveal,_=>{_===!1&&y(l,e.modelValue)}),Y(l,_=>{n.animate(),o("reveal",_)}),Y([a,n.scroll,n.height],S),Y(()=>r.screen.height,_=>{n.isContainer.value!==!0&&y(u,_)});let h={};return n.instances.footer=h,e.modelValue===!0&&x("size",a.value),x("space",e.modelValue),x("offset",d.value),be(()=>{n.instances.footer===h&&(n.instances.footer=void 0,x("size",0),x("offset",0),x("space",!1))}),()=>{let _=Ge(t.default,[i(no,{debounce:0,onResize:k})]);return e.elevated===!0&&_.push(i("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),i("footer",{class:m.value,style:v.value,onFocusin:b},_)}}});var Ic=P({name:"QForm",props:{autofocus:Boolean,noErrorFocus:Boolean,noResetFocus:Boolean,greedy:Boolean,onSubmit:Function},emits:["reset","validationSuccess","validationError"],setup(e,{slots:t,emit:o}){let r=K(),n=T(null),a=0,l=[];function u(m){let v=typeof m=="boolean"?m:e.noErrorFocus!==!0,x=++a,y=(b,h)=>{o(`validation${b===!0?"Success":"Error"}`,h)},k=b=>{let h=b.validate();return typeof h.then=="function"?h.then(_=>({valid:_,comp:b}),_=>({valid:!1,comp:b,err:_})):Promise.resolve({valid:h,comp:b})};return(e.greedy===!0?Promise.all(l.map(k)).then(b=>b.filter(h=>h.valid!==!0)):l.reduce((b,h)=>b.then(()=>k(h).then(_=>{if(_.valid===!1)return Promise.reject(_)})),Promise.resolve()).catch(b=>[b])).then(b=>{if(b===void 0||b.length===0)return x===a&&y(!0),!0;if(x===a){let{comp:h,err:_}=b[0];if(_!==void 0&&console.error(_),y(!1,h),v===!0){let E=b.find(({comp:L})=>typeof L.focus=="function"&&Gt(L.$)===!1);E!==void 0&&E.comp.focus()}}return!1})}function c(){a++,l.forEach(m=>{typeof m.resetValidation=="function"&&m.resetValidation()})}function f(m){m!==void 0&&_e(m);let v=a+1;u().then(x=>{v===a&&x===!0&&(e.onSubmit!==void 0?o("submit",m):m?.target!==void 0&&typeof m.target.submit=="function"&&m.target.submit())})}function d(m){m!==void 0&&_e(m),o("reset"),Be(()=>{c(),e.autofocus===!0&&e.noResetFocus!==!0&&p()})}function p(){bo(()=>{if(n.value===null)return;(n.value.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||n.value.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||n.value.querySelector("[autofocus], [data-autofocus]")||Array.prototype.find.call(n.value.querySelectorAll("[tabindex]"),v=>v.tabIndex!==-1))?.focus({preventScroll:!0})})}Kt(Xo,{bindComponent(m){l.push(m)},unbindComponent(m){let v=l.indexOf(m);v!==-1&&l.splice(v,1)}});let g=!1;return At(()=>{g=!0}),Ut(()=>{g===!0&&e.autofocus===!0&&p()}),Qe(()=>{e.autofocus===!0&&p()}),Object.assign(r.proxy,{validate:u,resetValidation:c,submit:f,reset:d,focus:p,getValidationComponents:()=>l}),()=>i("form",{class:"q-form",ref:n,onSubmit:f,onReset:d},re(t.default))}});var Hc={inject:{[Xo]:{default:Ye}},watch:{disable(e){let t=this.$.provides[Xo];t!==void 0&&(e===!0?(this.resetValidation(),t.unbindComponent(this)):t.bindComponent(this))}},methods:{validate(){},resetValidation(){}},mounted(){this.disable!==!0&&this.$.provides[Xo]?.bindComponent(this)},beforeUnmount(){this.disable!==!0&&this.$.provides[Xo]?.unbindComponent(this)}};var Nc=P({name:"QHeader",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,revealOffset:{type:Number,default:250},bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=pt(eo,Ze);if(n===Ze)return console.error("QHeader needs to be child of QLayout"),Ze;let a=T(parseInt(e.heightHint,10)),l=T(!0),u=s(()=>e.reveal===!0||n.view.value.indexOf("H")!==-1||r.platform.is.ios&&n.isContainer.value===!0),c=s(()=>{if(e.modelValue!==!0)return 0;if(u.value===!0)return l.value===!0?a.value:0;let S=a.value-n.scroll.value.position;return S>0?S:0}),f=s(()=>e.modelValue!==!0||u.value===!0&&l.value!==!0),d=s(()=>e.modelValue===!0&&f.value===!0&&e.reveal===!0),p=s(()=>"q-header q-layout__section--marginal "+(u.value===!0?"fixed":"absolute")+"-top"+(e.bordered===!0?" q-header--bordered":"")+(f.value===!0?" q-header--hidden":"")+(e.modelValue!==!0?" q-layout--prevent-focus":"")),g=s(()=>{let S=n.rows.value.top,b={};return S[0]==="l"&&n.left.space===!0&&(b[r.lang.rtl===!0?"right":"left"]=`${n.left.size}px`),S[2]==="r"&&n.right.space===!0&&(b[r.lang.rtl===!0?"left":"right"]=`${n.right.size}px`),b});function m(S,b){n.update("header",S,b)}function v(S,b){S.value!==b&&(S.value=b)}function x({height:S}){v(a,S),m("size",S)}function y(S){d.value===!0&&v(l,!0),o("focusin",S)}Y(()=>e.modelValue,S=>{m("space",S),v(l,!0),n.animate()}),Y(c,S=>{m("offset",S)}),Y(()=>e.reveal,S=>{S===!1&&v(l,e.modelValue)}),Y(l,S=>{n.animate(),o("reveal",S)}),Y(n.scroll,S=>{e.reveal===!0&&v(l,S.direction==="up"||S.position<=e.revealOffset||S.position-S.inflectionPoint<100)});let k={};return n.instances.header=k,e.modelValue===!0&&m("size",a.value),m("space",e.modelValue),m("offset",c.value),be(()=>{n.instances.header===k&&(n.instances.header=void 0,m("size",0),m("offset",0),m("space",!1))}),()=>{let S=Po(t.default,[]);return e.elevated===!0&&S.push(i("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),S.push(i(no,{debounce:0,onResize:x})),i("header",{class:p.value,style:g.value,onFocusin:y},S)}}});var Lr={ratio:[String,Number]};function Dr(e,t){return s(()=>{let o=Number(e.ratio||(t!==void 0?t.value:void 0));return isNaN(o)!==!0&&o>0?{paddingBottom:`${100/o}%`}:null})}var _h=1.7778,Qc=P({name:"QImg",props:{...Lr,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},loadingShowDelay:{type:[Number,String],default:0},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:_h},placeholderSrc:String,errorSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:t,emit:o}){let r=T(e.initialRatio),n=Dr(e,r),a=K(),{registerTimeout:l,removeTimeout:u}=Vt(),{registerTimeout:c,removeTimeout:f}=Vt(),d=s(()=>e.placeholderSrc!==void 0?{src:e.placeholderSrc}:null),p=s(()=>e.errorSrc!==void 0?{src:e.errorSrc,__qerror:!0}:null),g=[T(null),T(d.value)],m=T(0),v=T(!1),x=T(!1),y=s(()=>`q-img q-img--${e.noNativeMenu===!0?"no-":""}menu`),k=s(()=>({width:e.width,height:e.height})),S=s(()=>`q-img__image ${e.imgClass!==void 0?e.imgClass+" ":""}q-img__image--with${e.noTransition===!0?"out":""}-transition q-img__image--`),b=s(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));function h(){if(f(),e.loadingShowDelay===0){v.value=!0;return}c(()=>{v.value=!0},e.loadingShowDelay)}function _(){f(),v.value=!1}function E({target:$}){Gt(a)===!1&&(u(),r.value=$.naturalHeight===0?.5:$.naturalWidth/$.naturalHeight,L($,1))}function L($,q){q===1e3||Gt(a)===!0||($.complete===!0?D($):l(()=>{L($,q+1)},50))}function D($){Gt(a)!==!0&&(m.value=m.value^1,g[m.value].value=null,_(),$.getAttribute("__qerror")!=="true"&&(x.value=!1),o("load",$.currentSrc||$.src))}function Z($){u(),_(),x.value=!0,g[m.value].value=p.value,g[m.value^1].value=d.value,o("error",$)}function B($){let q=g[$].value,C={key:"img_"+$,class:S.value,style:b.value,alt:e.alt,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...q};return m.value===$?Object.assign(C,{class:C.class+"current",onLoad:E,onError:Z}):C.class+="loaded",i("div",{class:"q-img__container absolute-full",key:"img"+$},i("img",C))}function F(){return v.value===!1?i("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},re(t[x.value===!0?"error":"default"])):i("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},t.loading!==void 0?t.loading():e.noSpinner===!0?void 0:[i(wt,{color:e.spinnerColor,size:e.spinnerSize})])}{let $=function(){Y(()=>e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null,q=>{u(),x.value=!1,q===null?(_(),g[m.value^1].value=d.value):h(),g[m.value].value=q},{immediate:!0})};xt.value===!0?Qe($):$()}return()=>{let $=[];return n.value!==null&&$.push(i("div",{key:"filler",style:n.value})),g[0].value!==null&&$.push(B(0)),g[1].value!==null&&$.push(B(1)),$.push(i(st,{name:"q-transition--fade"},F)),i("div",{key:"main",class:y.value,style:k.value,role:"img","aria-label":e.alt},$)}}});var{passive:Vn}=et,jc=P({name:"QInfiniteScroll",props:{offset:{type:Number,default:500},debounce:{type:[String,Number],default:100},scrollTarget:to,initialIndex:{type:Number,default:0},disable:Boolean,reverse:Boolean},emits:["load"],setup(e,{slots:t,emit:o}){let r=T(!1),n=T(!0),a=T(null),l=T(null),u=e.initialIndex,c,f,d=s(()=>"q-infinite-scroll__loading"+(r.value===!0?"":" invisible"));function p(){if(e.disable===!0||r.value===!0||n.value===!1)return;let L=lr(c),D=oo(c),Z=Ao(c);e.reverse===!1?Math.round(D+Z+e.offset)>=Math.round(L)&&g():Math.round(D)<=e.offset&&g()}function g(){if(e.disable===!0||r.value===!0||n.value===!1)return;u++,r.value=!0;let L=lr(c);o("load",u,D=>{n.value===!0&&(r.value=!1,Be(()=>{if(e.reverse===!0){let Z=lr(c),B=oo(c),F=Z-L;Bo(c,B+F)}D===!0?x():a.value&&a.value.closest("body")&&f()}))})}function m(){u=0}function v(){n.value===!1&&(n.value=!0,c.addEventListener("scroll",f,Vn)),p()}function x(){n.value===!0&&(n.value=!1,r.value=!1,c.removeEventListener("scroll",f,Vn),f?.cancel?.())}function y(){if(c&&n.value===!0&&c.removeEventListener("scroll",f,Vn),c=Ft(a.value,e.scrollTarget),n.value===!0){if(c.addEventListener("scroll",f,Vn),e.reverse===!0){let L=lr(c),D=Ao(c);Bo(c,L-D)}p()}}function k(L){u=L}function S(L){L=parseInt(L,10);let D=f;f=L<=0?p:Jt(p,isNaN(L)===!0?100:L),c&&n.value===!0&&(D!==void 0&&c.removeEventListener("scroll",D,Vn),c.addEventListener("scroll",f,Vn))}function b(L){if(h.value===!0){if(l.value===null){L!==!0&&Be(()=>{b(!0)});return}let D=`${r.value===!0?"un":""}pauseAnimations`;Array.from(l.value.getElementsByTagName("svg")).forEach(Z=>{Z[D]()})}}let h=s(()=>e.disable!==!0&&n.value===!0);Y([r,h],()=>{b()}),Y(()=>e.disable,L=>{L===!0?x():v()}),Y(()=>e.reverse,()=>{r.value===!1&&n.value===!0&&p()}),Y(()=>e.scrollTarget,y),Y(()=>e.debounce,S);let _=!1;Ut(()=>{_!==!1&&c&&Bo(c,_)}),At(()=>{_=c?oo(c):!1}),be(()=>{n.value===!0&&c.removeEventListener("scroll",f,Vn)}),Qe(()=>{S(e.debounce),y(),r.value===!1&&b()});let E=K();return Object.assign(E.proxy,{poll:()=>{f?.()},trigger:g,stop:x,reset:m,resume:v,setIndex:k,updateScrollTarget:y}),()=>{let L=Po(t.default,[]);return h.value===!0&&L[e.reverse===!1?"push":"unshift"](i("div",{ref:l,class:d.value},re(t.loading))),i("div",{class:"q-infinite-scroll",ref:a},L)}}});var Uc=P({name:"QInnerLoading",props:{...Se,...yo,showing:Boolean,color:String,size:{type:[String,Number],default:"42px"},label:String,labelClass:String,labelStyle:[String,Array,Object]},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),{transitionProps:n,transitionStyle:a}=cn(e),l=s(()=>"q-inner-loading q--avoid-card-border absolute-full column flex-center"+(r.value===!0?" q-inner-loading--dark":"")),u=s(()=>"q-inner-loading__label"+(e.labelClass!==void 0?` ${e.labelClass}`:""));function c(){let d=[i(wt,{size:e.size,color:e.color})];return e.label!==void 0&&d.push(i("div",{class:u.value,style:e.labelStyle},[e.label])),d}function f(){return e.showing===!0?i("div",{class:l.value,style:a.value},t.default!==void 0?t.default():c()):null}return()=>i(st,n.value,f)}});var Kc={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},{tokenMap:Wc,tokenKeys:Ch}=Xc({"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}});function Xc(e){let t=Object.keys(e),o={};return t.forEach(r=>{let n=e[r];o[r]={...n,regex:new RegExp(n.pattern)}}),{tokenMap:o,tokenKeys:t}}function Gc(e){return new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+e.join("")+"])|(.)","g")}var Yc=/[.*+?^${}()|[\]\\]/g,wh=Gc(Ch),Lt="",Zc={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean,maskTokens:Object};function Jc(e,t,o,r){let n,a,l,u,c,f,d=s(()=>{if(e.maskTokens===void 0||e.maskTokens===null)return{tokenMap:Wc,tokenRegexMask:wh};let{tokenMap:B}=Xc(e.maskTokens),F={...Wc,...B};return{tokenMap:F,tokenRegexMask:Gc(Object.keys(F))}}),p=T(null),g=T(v());function m(){return e.autogrow===!0||["textarea","text","search","url","tel","password"].includes(e.type)}Y(()=>e.type+e.autogrow,y),Y(()=>e.mask,B=>{if(B!==void 0)k(g.value,!0);else{let F=D(g.value);y(),e.modelValue!==F&&t("update:modelValue",F)}}),Y(()=>e.fillMask+e.reverseFillMask,()=>{p.value===!0&&k(g.value,!0)}),Y(()=>e.unmaskedValue,()=>{p.value===!0&&k(g.value)});function v(){if(y(),p.value===!0){let B=E(D(e.modelValue));return e.fillMask!==!1?Z(B):B}return e.modelValue}function x(B){if(B0;C--)F+=Lt;$=$.slice(0,q)+F+$.slice(q)}return $}function y(){if(p.value=e.mask!==void 0&&e.mask.length!==0&&m(),p.value===!1){u=void 0,n="",a="";return}let B=Kc[e.mask]===void 0?e.mask:Kc[e.mask],F=typeof e.fillMask=="string"&&e.fillMask.length!==0?e.fillMask.slice(0,1):"_",$=F.replace(Yc,"\\$&"),q=[],C=[],A=[],z=e.reverseFillMask===!0,H="",Q="";B.replace(d.value.tokenRegexMask,(w,W,U,le,M)=>{if(le!==void 0){let V=d.value.tokenMap[le];A.push(V),Q=V.negate,z===!0&&(C.push("(?:"+Q+"+)?("+V.pattern+"+)?(?:"+Q+"+)?("+V.pattern+"+)?"),z=!1),C.push("(?:"+Q+"+)?("+V.pattern+")?")}else if(U!==void 0)H="\\"+(U==="\\"?"":U),A.push(U),q.push("([^"+H+"]+)?"+H+"?");else{let V=W!==void 0?W:M;H=V==="\\"?"\\\\\\\\":V.replace(Yc,"\\\\$&"),A.push(V),q.push("([^"+H+"]+)?"+H+"?")}});let ee=new RegExp("^"+q.join("")+"("+(H===""?".":"[^"+H+"]")+"+)?"+(H===""?"":"["+H+"]*")+"$"),ve=C.length-1,O=C.map((w,W)=>W===0&&e.reverseFillMask===!0?new RegExp("^"+$+"*"+w):W===ve?new RegExp("^"+w+"("+(Q===""?".":Q)+"+)?"+(e.reverseFillMask===!0?"$":$+"*")):new RegExp("^"+w));l=A,u=w=>{let W=ee.exec(e.reverseFillMask===!0?w:w.slice(0,A.length+1));W!==null&&(w=W.slice(1).join(""));let U=[],le=O.length;for(let M=0,V=w;Mtypeof w=="string"?w:Lt).join(""),a=n.split(Lt).join(F)}function k(B,F,$){let q=r.value,C=q.selectionEnd,A=q.value.length-C,z=D(B);F===!0&&y();let H=E(z,F),Q=e.fillMask!==!1?Z(H):H,ee=g.value!==Q;q.value!==Q&&(q.value=Q),ee===!0&&(g.value=Q),document.activeElement===q&&Be(()=>{if(Q===a){let O=e.reverseFillMask===!0?a.length:0;q.setSelectionRange(O,O,"forward");return}if($==="insertFromPaste"&&e.reverseFillMask!==!0){let O=q.selectionEnd,w=C-1;for(let W=c;W<=w&&WH.length?1:0:Math.max(0,Q.length-(Q===a?0:Math.min(H.length,A)+1))+1:C;q.setSelectionRange(O,O,"forward");return}if(e.reverseFillMask===!0)if(ee===!0){let O=Math.max(0,Q.length-(Q===a?0:Math.min(H.length,A+1)));O===1&&C===1?q.setSelectionRange(O,O,"forward"):b.rightReverse(q,O)}else{let O=Q.length-A;q.setSelectionRange(O,O,"backward")}else if(ee===!0){let O=Math.max(0,n.indexOf(Lt),Math.min(H.length,C)-1);b.right(q,O)}else{let O=C-1;b.right(q,O)}});let ve=e.unmaskedValue===!0?D(Q):Q;String(e.modelValue)!==ve&&(e.modelValue!==null||ve!=="")&&o(ve,!0)}function S(B,F,$){let q=E(D(B.value));F=Math.max(0,n.indexOf(Lt),Math.min(q.length,F)),c=F,B.setSelectionRange(F,$,"forward")}let b={left(B,F){let $=n.slice(F-1).indexOf(Lt)===-1,q=Math.max(0,F-1);for(;q>=0;q--)if(n[q]===Lt){F=q,$===!0&&F++;break}if(q<0&&n[F]!==void 0&&n[F]!==Lt)return b.right(B,0);F>=0&&B.setSelectionRange(F,F,"backward")},right(B,F){let $=B.value.length,q=Math.min($,F+1);for(;q<=$;q++)if(n[q]===Lt){F=q;break}else n[q-1]===Lt&&(F=q);if(q>$&&n[F-1]!==void 0&&n[F-1]!==Lt)return b.left(B,$);B.setSelectionRange(F,F,"forward")},leftReverse(B,F){let $=x(B.value.length),q=Math.max(0,F-1);for(;q>=0;q--)if($[q-1]===Lt){F=q;break}else if($[q]===Lt&&(F=q,q===0))break;if(q<0&&$[F]!==void 0&&$[F]!==Lt)return b.rightReverse(B,0);F>=0&&B.setSelectionRange(F,F,"backward")},rightReverse(B,F){let $=B.value.length,q=x($),C=q.slice(0,F+1).indexOf(Lt)===-1,A=Math.min($,F+1);for(;A<=$;A++)if(q[A-1]===Lt){F=A,F>0&&C===!0&&F--;break}if(A>$&&q[F-1]!==void 0&&q[F-1]!==Lt)return b.leftReverse(B,$);B.setSelectionRange(F,F,"forward")}};function h(B){t("click",B),f=void 0}function _(B){if(t("keydown",B),io(B)===!0||B.altKey===!0)return;let F=r.value,$=F.selectionStart,q=F.selectionEnd;if(B.shiftKey||(f=void 0),B.keyCode===37||B.keyCode===39){B.shiftKey&&f===void 0&&(f=F.selectionDirection==="forward"?$:q);let C=b[(B.keyCode===39?"right":"left")+(e.reverseFillMask===!0?"Reverse":"")];if(B.preventDefault(),C(F,f===$?q:$),B.shiftKey){let A=F.selectionStart;F.setSelectionRange(Math.min(f,A),Math.max(f,A),"forward")}}else B.keyCode===8&&e.reverseFillMask!==!0&&$===q?(b.left(F,$),F.setSelectionRange(F.selectionStart,q,"backward")):B.keyCode===46&&e.reverseFillMask===!0&&$===q&&(b.rightReverse(F,q),F.setSelectionRange($,F.selectionEnd,"forward"))}function E(B,F){if(B==null||B==="")return"";if(e.reverseFillMask===!0)return L(B,F);let $=l,q=0,C="";for(let A=0;A<$.length;A++){let z=B[q],H=$[A];if(typeof H=="string")C+=H,F===!0&&z===H&&q++;else if(z!==void 0&&H.regex.test(z))C+=H.transform!==void 0?H.transform(z):z,q++;else return C}return C}function L(B,F){let $=l,q=n.indexOf(Lt),C=B.length-1,A="";for(let z=$.length-1;z>=0&&C!==-1;z--){let H=$[z],Q=B[C];if(typeof H=="string")A=H+A,F===!0&&Q===H&&C--;else if(Q!==void 0&&H.regex.test(Q))do A=(H.transform!==void 0?H.transform(Q):Q)+A,C--,Q=B[C];while(q===z&&Q!==void 0&&H.regex.test(Q));else return A}return A}function D(B){return typeof B!="string"||u===void 0?typeof B=="number"?u(""+B):B:u(B)}function Z(B){return a.length-B.length<=0?B:e.reverseFillMask===!0&&B.length!==0?a.slice(0,-B.length)+B:B+a.slice(B.length)}return{innerValue:g,hasMask:p,moveCursorForPaste:S,updateMaskValue:k,onMaskedKeydown:_,onMaskedClick:h}}var kh=/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/,qh=/[\u4e00-\u9fff\u3400-\u4dbf\u{20000}-\u{2a6df}\u{2a700}-\u{2b73f}\u{2b740}-\u{2b81f}\u{2b820}-\u{2ceaf}\uf900-\ufaff\u3300-\u33ff\ufe30-\ufe4f\uf900-\ufaff\u{2f800}-\u{2fa1f}]/u,Th=/[\u3131-\u314e\u314f-\u3163\uac00-\ud7a3]/,Mh=/[a-z0-9_ -]$/i;function Li(e){return function(o){if(o.type==="compositionend"||o.type==="change"){if(o.target.qComposing!==!0)return;o.target.qComposing=!1,e(o)}else o.type==="compositionupdate"&&o.target.qComposing!==!0&&typeof o.data=="string"&&(Ae.is.firefox===!0?Mh.test(o.data)===!1:kh.test(o.data)===!0||qh.test(o.data)===!0||Th.test(o.data)===!0)===!0&&(o.target.qComposing=!0)}}var Or=P({name:"QInput",inheritAttrs:!1,props:{...On,...Zc,...kt,modelValue:[String,Number,FileList],shadowText:String,type:{type:String,default:"text"},debounce:[String,Number],autogrow:Boolean,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...bn,"paste","change","keydown","click","animationend"],setup(e,{emit:t,attrs:o}){let{proxy:r}=K(),{$q:n}=r,a={},l=NaN,u,c,f=null,d,p=T(null),g=gr(e),{innerValue:m,hasMask:v,moveCursorForPaste:x,updateMaskValue:y,onMaskedKeydown:k,onMaskedClick:S}=Jc(e,t,z,p),b=Fi(e,!0),h=s(()=>Qo(m.value)),_=Li(C),E=yn({changeEvent:!0}),L=s(()=>e.type==="textarea"||e.autogrow===!0),D=s(()=>L.value===!0||["text","search","url","tel","password"].includes(e.type)),Z=s(()=>{let w={...E.splitAttrs.listeners.value,onInput:C,onPaste:q,onChange:Q,onBlur:ee,onFocus:it};return w.onCompositionstart=w.onCompositionupdate=w.onCompositionend=_,v.value===!0&&(w.onKeydown=k,w.onClick=S),e.autogrow===!0&&(w.onAnimationend=A),w}),B=s(()=>{let w={tabindex:0,"data-autofocus":e.autofocus===!0||void 0,rows:e.type==="textarea"?6:void 0,"aria-label":e.label,name:g.value,...E.splitAttrs.attributes.value,id:E.targetUid.value,maxlength:e.maxlength,disabled:e.disable===!0,readonly:e.readonly===!0};return L.value===!1&&(w.type=e.type),e.autogrow===!0&&(w.rows=1),w});Y(()=>e.type,()=>{p.value&&(p.value.value=e.modelValue)}),Y(()=>e.modelValue,w=>{if(v.value===!0){if(c===!0&&(c=!1,String(w)===l))return;y(w)}else m.value!==w&&(m.value=w,e.type==="number"&&a.hasOwnProperty("value")===!0&&(u===!0?u=!1:delete a.value));e.autogrow===!0&&Be(H)}),Y(()=>e.autogrow,w=>{w===!0?Be(H):p.value!==null&&o.rows>0&&(p.value.style.height="auto")}),Y(()=>e.dense,()=>{e.autogrow===!0&&Be(H)});function F(){bo(()=>{let w=document.activeElement;p.value!==null&&p.value!==w&&(w===null||w.id!==E.targetUid.value)&&p.value.focus({preventScroll:!0})})}function $(){p.value?.select()}function q(w){if(v.value===!0&&e.reverseFillMask!==!0){let W=w.target;x(W,W.selectionStart,W.selectionEnd)}t("paste",w)}function C(w){if(!w||!w.target)return;if(e.type==="file"){t("update:modelValue",w.target.files);return}let W=w.target.value;if(w.target.qComposing===!0){a.value=W;return}if(v.value===!0)y(W,!1,w.inputType);else if(z(W),D.value===!0&&w.target===document.activeElement){let{selectionStart:U,selectionEnd:le}=w.target;U!==void 0&&le!==void 0&&Be(()=>{w.target===document.activeElement&&W.indexOf(w.target.value)===0&&w.target.setSelectionRange(U,le)})}e.autogrow===!0&&H()}function A(w){t("animationend",w),H()}function z(w,W){d=()=>{f=null,e.type!=="number"&&a.hasOwnProperty("value")===!0&&delete a.value,e.modelValue!==w&&l!==w&&(l=w,W===!0&&(c=!0),t("update:modelValue",w),Be(()=>{l===w&&(l=NaN)})),d=void 0},e.type==="number"&&(u=!0,a.value=w),e.debounce!==void 0?(f!==null&&clearTimeout(f),a.value=w,f=setTimeout(d,e.debounce)):d()}function H(){requestAnimationFrame(()=>{let w=p.value;if(w!==null){let W=w.parentNode.style,{scrollTop:U}=w,{overflowY:le,maxHeight:M}=n.platform.is.firefox===!0?{}:window.getComputedStyle(w),V=le!==void 0&&le!=="scroll";V===!0&&(w.style.overflowY="hidden"),W.marginBottom=w.scrollHeight-1+"px",w.style.height="1px",w.style.height=w.scrollHeight+"px",V===!0&&(w.style.overflowY=parseInt(M,10){p.value!==null&&(p.value.value=m.value!==void 0?m.value:"")})}function ve(){return a.hasOwnProperty("value")===!0?a.value:m.value!==void 0?m.value:""}be(()=>{ee()}),Qe(()=>{e.autogrow===!0&&H()}),Object.assign(E,{innerValue:m,fieldClass:s(()=>`q-${L.value===!0?"textarea":"input"}`+(e.autogrow===!0?" q-textarea--autogrow":"")),hasShadow:s(()=>e.type!=="file"&&typeof e.shadowText=="string"&&e.shadowText.length!==0),inputRef:p,emitValue:z,hasValue:h,floatingLabel:s(()=>h.value===!0&&(e.type!=="number"||isNaN(m.value)===!1)||Qo(e.displayValue)),getControl:()=>i(L.value===!0?"textarea":"input",{ref:p,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...B.value,...Z.value,...e.type!=="file"?{value:ve()}:b.value}),getShadowControl:()=>i("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(L.value===!0?"":" text-no-wrap")},[i("span",{class:"invisible"},ve()),i("span",e.shadowText)])});let O=Sn(E);return Object.assign(r,{focus:F,select:$,getNativeElement:()=>p.value}),ft(r,"nativeEl",()=>p.value),O}});var ed={threshold:0,root:null,rootMargin:"0px"};function td(e,t,o){let r,n,a;typeof o=="function"?(r=o,n=ed,a=t.cfg===void 0):(r=o.handler,n=Object.assign({},ed,o.cfg),a=t.cfg===void 0||Xt(t.cfg,n)===!1),t.handler!==r&&(t.handler=r),a===!0&&(t.cfg=n,t.observer?.unobserve(e),t.observer=new IntersectionObserver(([l])=>{if(typeof t.handler=="function"){if(l.rootBounds===null&&document.body.contains(e)===!0){t.observer.unobserve(e),t.observer.observe(e);return}(t.handler(l,t.observer)===!1||t.once===!0&&l.isIntersecting===!0)&&od(e)}},n),t.observer.observe(e))}function od(e){let t=e.__qvisible;t!==void 0&&(t.observer?.unobserve(e),delete e.__qvisible)}var Di=$t({name:"intersection",mounted(e,{modifiers:t,value:o}){let r={once:t.once===!0};td(e,r,o),e.__qvisible=r},updated(e,t){let o=e.__qvisible;o!==void 0&&td(e,o,t.value)},beforeUnmount:od});var nd=P({name:"QIntersection",props:{tag:{type:String,default:"div"},once:Boolean,transition:String,transitionDuration:{type:[String,Number],default:300},ssrPrerender:Boolean,margin:String,threshold:[Number,Array],root:{default:null},disable:Boolean,onVisibility:Function},setup(e,{slots:t,emit:o}){let r=T(xt.value===!0?e.ssrPrerender:!1),n=s(()=>e.root!==void 0||e.margin!==void 0||e.threshold!==void 0?{handler:c,cfg:{root:e.root,rootMargin:e.margin,threshold:e.threshold}}:c),a=s(()=>e.disable!==!0&&(xt.value!==!0||e.once!==!0||e.ssrPrerender!==!0)),l=s(()=>[[Di,n.value,void 0,{once:e.once}]]),u=s(()=>`--q-transition-duration: ${e.transitionDuration}ms`);function c(d){r.value!==d.isIntersecting&&(r.value=d.isIntersecting,e.onVisibility!==void 0&&o("visibility",r.value))}function f(){if(r.value===!0)return[i("div",{key:"content",style:u.value},re(t.default))];if(t.hidden!==void 0)return[i("div",{key:"hidden",style:u.value},t.hidden())]}return()=>{let d=e.transition?[i(st,{name:"q-transition--"+e.transition},f)]:f();return Rt(e.tag,{class:"q-intersection"},d,"main",a.value,()=>l.value)}}});var Rh=["ul","ol"],Oi=P({name:"QList",props:{...Se,bordered:Boolean,dense:Boolean,separator:Boolean,padding:Boolean,tag:{type:String,default:"div"}},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),n=s(()=>Rh.includes(e.tag)?null:"list"),a=s(()=>"q-list"+(e.bordered===!0?" q-list--bordered":"")+(e.dense===!0?" q-list--dense":"")+(e.separator===!0?" q-list--separator":"")+(r.value===!0?" q-list--dark":"")+(e.padding===!0?" q-list--padding":""));return()=>i(e.tag,{class:a.value,role:n.value},re(t.default))}});var rd=[34,37,40,33,39,38],Ph=Object.keys(na),ad=P({name:"QKnob",props:{...kt,...na,modelValue:{type:Number,required:!0},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},tabindex:{type:[Number,String],default:0},disable:Boolean,readonly:Boolean},emits:["update:modelValue","change","dragValue"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,a=T(e.modelValue),l=T(!1),u=s(()=>isNaN(e.innerMin)===!0||e.innerMinisNaN(e.innerMax)===!0||e.innerMax>e.max?e.max:e.innerMax),f;function d(){a.value=e.modelValue===null?u.value:tt(e.modelValue,u.value,c.value),F(!0)}Y(()=>`${e.modelValue}|${u.value}|${c.value}`,d),d();let p=s(()=>e.disable===!1&&e.readonly===!1),g=s(()=>"q-knob non-selectable"+(p.value===!0?" q-knob--editable":e.disable===!0?" disabled":"")),m=s(()=>(String(e.step).trim().split(".")[1]||"").length),v=s(()=>e.step===0?1:e.step),x=s(()=>e.instantFeedback===!0||l.value===!0),y=n.platform.is.mobile===!0?s(()=>p.value===!0?{onClick:L}:{}):s(()=>p.value===!0?{onMousedown:E,onClick:L,onKeydown:D,onKeyup:B}:{}),k=s(()=>p.value===!0?{tabindex:e.tabindex}:{[`aria-${e.disable===!0?"disabled":"readonly"}`]:"true"}),S=s(()=>{let C={};return Ph.forEach(A=>{C[A]=e[A]}),C});function b(C){C.isFinal?(Z(C.evt,!0),l.value=!1):(C.isFirst&&(_(),l.value=!0),Z(C.evt))}let h=s(()=>[[Pt,b,void 0,{prevent:!0,stop:!0,mouse:!0}]]);function _(){let{top:C,left:A,width:z,height:H}=r.$el.getBoundingClientRect();f={top:C+H/2,left:A+z/2}}function E(C){_(),Z(C)}function L(C){_(),Z(C,!0)}function D(C){if(rd.includes(C.keyCode)===!1)return;_e(C);let A=([34,33].includes(C.keyCode)?10:1)*v.value,z=[34,37,40].includes(C.keyCode)?-A:A;a.value=tt(parseFloat((a.value+z).toFixed(m.value)),u.value,c.value),F()}function Z(C,A){let z=_t(C),H=Math.abs(z.top-f.top),Q=Math.sqrt(H**2+Math.abs(z.left-f.left)**2),ee=Math.asin(H/Q)*(180/Math.PI);z.top=v.value/2?(O<0?-1:1)*v.value:0),ve=parseFloat(ve.toFixed(m.value))}ve=tt(ve,u.value,c.value),o("dragValue",ve),a.value!==ve&&(a.value=ve),F(A)}function B(C){rd.includes(C.keyCode)&&F(!0)}function F(C){e.modelValue!==a.value&&o("update:modelValue",a.value),C===!0&&o("change",a.value)}let $=Oo(e);function q(){return i("input",$.value)}return()=>{let C={class:g.value,role:"slider","aria-valuemin":u.value,"aria-valuemax":c.value,"aria-valuenow":e.modelValue,...k.value,...S.value,value:a.value,instantFeedback:x.value,...y.value},A={default:t.default};return p.value===!0&&e.name!==void 0&&(A.internal=q),Rt(Tr,C,A,"knob",p.value,()=>h.value)}}});var{passive:id}=et,Ah=["both","horizontal","vertical"],Vr=P({name:"QScrollObserver",props:{axis:{type:String,validator:e=>Ah.includes(e),default:"vertical"},debounce:[String,Number],scrollTarget:to},emits:["scroll"],setup(e,{emit:t}){let o={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}},r=null,n,a;Y(()=>e.scrollTarget,()=>{c(),u()});function l(){r?.();let p=Math.max(0,oo(n)),g=dn(n),m={top:p-o.position.top,left:g-o.position.left};if(e.axis==="vertical"&&m.top===0||e.axis==="horizontal"&&m.left===0)return;let v=Math.abs(m.top)>=Math.abs(m.left)?m.top<0?"up":"down":m.left<0?"left":"right";o.position={top:p,left:g},o.directionChanged=o.direction!==v,o.delta=m,o.directionChanged===!0&&(o.direction=v,o.inflectionPoint=o.position),t("scroll",{...o})}function u(){n=Ft(a,e.scrollTarget),n.addEventListener("scroll",f,id),f(!0)}function c(){n!==void 0&&(n.removeEventListener("scroll",f,id),n=void 0)}function f(p){if(p===!0||e.debounce===0||e.debounce==="0")l();else if(r===null){let[g,m]=e.debounce?[setTimeout(l,e.debounce),clearTimeout]:[requestAnimationFrame(l),cancelAnimationFrame];r=()=>{m(g),r=null}}}let{proxy:d}=K();return Y(()=>d.$q.lang.rtl,l),Qe(()=>{a=d.$el.parentNode,u()}),be(()=>{r?.(),c()}),Object.assign(d,{trigger:f,getPosition:()=>o}),Ye}});var ld=P({name:"QLayout",props:{container:Boolean,view:{type:String,default:"hhh lpr fff",validator:e=>/^(h|l)h(h|r) lpr (f|l)f(f|r)$/.test(e.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=T(null),a=T(r.screen.height),l=T(e.container===!0?0:r.screen.width),u=T({position:0,direction:"down",inflectionPoint:0}),c=T(0),f=T(xt.value===!0?0:Tn()),d=s(()=>"q-layout q-layout--"+(e.container===!0?"containerized":"standard")),p=s(()=>e.container===!1?{minHeight:r.screen.height+"px"}:null),g=s(()=>f.value!==0?{[r.lang.rtl===!0?"left":"right"]:`${f.value}px`}:null),m=s(()=>f.value!==0?{[r.lang.rtl===!0?"right":"left"]:0,[r.lang.rtl===!0?"left":"right"]:`-${f.value}px`,width:`calc(100% + ${f.value}px)`}:null);function v(h){if(e.container===!0||document.qScrollPrevented!==!0){let _={position:h.position.top,direction:h.direction,directionChanged:h.directionChanged,inflectionPoint:h.inflectionPoint.top,delta:h.delta.top};u.value=_,e.onScroll!==void 0&&o("scroll",_)}}function x(h){let{height:_,width:E}=h,L=!1;a.value!==_&&(L=!0,a.value=_,e.onScrollHeight!==void 0&&o("scrollHeight",_),k()),l.value!==E&&(L=!0,l.value=E),L===!0&&e.onResize!==void 0&&o("resize",h)}function y({height:h}){c.value!==h&&(c.value=h,k())}function k(){if(e.container===!0){let h=a.value>c.value?Tn():0;f.value!==h&&(f.value=h)}}let S=null,b={instances:{},view:s(()=>e.view),isContainer:s(()=>e.container),rootRef:n,height:a,containerHeight:c,scrollbarWidth:f,totalWidth:s(()=>l.value+f.value),rows:s(()=>{let h=e.view.toLowerCase().split(" ");return{top:h[0].split(""),middle:h[1].split(""),bottom:h[2].split("")}}),header:Uo({size:0,offset:0,space:!1}),right:Uo({size:300,offset:0,space:!1}),footer:Uo({size:0,offset:0,space:!1}),left:Uo({size:300,offset:0,space:!1}),scroll:u,animate(){S!==null?clearTimeout(S):document.body.classList.add("q-body--layout-animate"),S=setTimeout(()=>{S=null,document.body.classList.remove("q-body--layout-animate")},155)},update(h,_,E){b[h][_]=E}};if(Kt(eo,b),Tn()>0){let E=function(){h=null,_.classList.remove("hide-scrollbar")},L=function(){if(h===null){if(_.scrollHeight>r.screen.height)return;_.classList.add("hide-scrollbar")}else clearTimeout(h);h=setTimeout(E,300)},D=function(Z){h!==null&&Z==="remove"&&(clearTimeout(h),E()),window[`${Z}EventListener`]("resize",L)},h=null,_=document.body;Y(()=>e.container!==!0?"add":"remove",D),e.container!==!0&&D("add"),Nn(()=>{D("remove")})}return()=>{let h=Ge(t.default,[i(Vr,{onScroll:v}),i(no,{onResize:x})]),_=i("div",{class:d.value,style:p.value,ref:e.container===!0?void 0:n,tabindex:-1},h);return e.container===!0?i("div",{class:"q-layout-container overflow-hidden",ref:n},[i(no,{onResize:y}),i("div",{class:"absolute-full",style:g.value},[i("div",{class:"scroll",style:m.value},[_])])]):_}}});var $h=["horizontal","vertical","cell","none"],Vi=P({name:"QMarkupTable",props:{...Se,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,wrapCells:Boolean,separator:{type:String,default:"horizontal",validator:e=>$h.includes(e)}},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),n=s(()=>`q-markup-table q-table__container q-table__card q-table--${e.separator}-separator`+(r.value===!0?" q-table--dark q-table__card--dark q-dark":"")+(e.dense===!0?" q-table--dense":"")+(e.flat===!0?" q-table--flat":"")+(e.bordered===!0?" q-table--bordered":"")+(e.square===!0?" q-table--square":"")+(e.wrapCells===!1?" q-table--no-wrap":""));return()=>i("div",{class:n.value},[i("table",{class:"q-table"},re(t.default))])}});var ud=P({name:"QNoSsr",props:{tag:{type:String,default:"div"},placeholder:String},setup(e,{slots:t}){let{isHydrated:o}=Mr();return()=>{if(o.value===!0){let a=re(t.default);return a===void 0?a:a.length>1?i(e.tag,{},a):a[0]}let r={class:"q-no-ssr-placeholder"},n=re(t.placeholder);if(n!==void 0)return n.length>1?i(e.tag,r,n):n[0];if(e.placeholder!==void 0)return i(e.tag,r,e.placeholder)}}});var Eh=()=>i("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[i("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),i("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]),zi=P({name:"QRadio",props:{...Se,...Dt,...kt,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),n=xe(e,r.$q),a=Ot(e,oi),l=T(null),{refocusTargetEl:u,refocusTarget:c}=ti(e,l),f=s(()=>fo(e.modelValue)===fo(e.val)),d=s(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(e.disable===!0?" disabled":"")+(n.value===!0?" q-radio--dark":"")+(e.dense===!0?" q-radio--dense":"")+(e.leftLabel===!0?" reverse":"")),p=s(()=>{let h=e.color!==void 0&&(e.keepColor===!0||f.value===!0)?` text-${e.color}`:"";return`q-radio__inner relative-position q-radio__inner--${f.value===!0?"truthy":"falsy"}${h}`}),g=s(()=>(f.value===!0?e.checkedIcon:e.uncheckedIcon)||null),m=s(()=>e.disable===!0?-1:e.tabindex||0),v=s(()=>{let h={type:"radio"};return e.name!==void 0&&Object.assign(h,{".checked":f.value===!0,"^checked":f.value===!0?"checked":void 0,name:e.name,value:e.val}),h}),x=Zt(v);function y(h){h!==void 0&&(_e(h),c(h)),e.disable!==!0&&f.value!==!0&&o("update:modelValue",e.val,h)}function k(h){(h.keyCode===13||h.keyCode===32)&&_e(h)}function S(h){(h.keyCode===13||h.keyCode===32)&&y(h)}Object.assign(r,{set:y});let b=Eh();return()=>{let h=g.value!==null?[i("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[i(Re,{class:"q-radio__icon",name:g.value})])]:[b];e.disable!==!0&&x(h,"unshift"," q-radio__native q-ma-none q-pa-none");let _=[i("div",{class:p.value,style:a.value,"aria-hidden":"true"},h)];u.value!==null&&_.push(u.value);let E=e.label!==void 0?Ge(t.default,[e.label]):re(t.default);return E!==void 0&&_.push(i("div",{class:"q-radio__label q-anchor--skip"},E)),i("div",{ref:l,class:d.value,tabindex:m.value,role:"radio","aria-label":e.label,"aria-checked":f.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:y,onKeydown:k,onKeyup:S},_)}}});var Ii=P({name:"QToggle",props:{...ni,icon:String,iconColor:String},emits:ri,setup(e){function t(o,r){let n=s(()=>(o.value===!0?e.checkedIcon:r.value===!0?e.indeterminateIcon:e.uncheckedIcon)||e.icon),a=s(()=>o.value===!0?e.iconColor:null);return()=>[i("div",{class:"q-toggle__track"}),i("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},n.value!==void 0?[i(Re,{name:n.value,color:a.value})]:void 0)]}return ai("toggle",t)}});var sd={radio:zi,checkbox:Vo,toggle:Ii},Bh=Object.keys(sd);function du(e,t){if(typeof e=="function")return e;let o=e!==void 0?e:t;return r=>r[o]}var Hi=P({name:"QOptionGroup",props:{...Se,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(ct),default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],name:String,type:{type:String,default:"radio",validator:e=>Bh.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:o}){let{proxy:{$q:r}}=K(),n=Array.isArray(e.modelValue);e.type==="radio"?n===!0&&console.error("q-option-group: model should not be array"):n===!1&&console.error("q-option-group: model should be array in your case");let a=xe(e,r),l=s(()=>sd[e.type]),u=s(()=>du(e.optionValue,"value")),c=s(()=>du(e.optionLabel,"label")),f=s(()=>du(e.optionDisable,"disable")),d=s(()=>e.options.map(v=>({val:u.value(v),name:v.name===void 0?e.name:v.name,disable:e.disable||f.value(v),leftLabel:v.leftLabel===void 0?e.leftLabel:v.leftLabel,color:v.color===void 0?e.color:v.color,checkedIcon:v.checkedIcon,uncheckedIcon:v.uncheckedIcon,dark:v.dark===void 0?a.value:v.dark,size:v.size===void 0?e.size:v.size,dense:e.dense,keepColor:v.keepColor===void 0?e.keepColor:v.keepColor}))),p=s(()=>"q-option-group q-gutter-x-sm"+(e.inline===!0?" q-option-group--inline":"")),g=s(()=>{let v={role:"group"};return e.type==="radio"&&(v.role="radiogroup",e.disable===!0&&(v["aria-disabled"]="true")),v});function m(v){t("update:modelValue",v)}return()=>i("div",{class:p.value,...g.value},e.options.map((v,x)=>{let y=o["label-"+x]!==void 0?()=>o["label-"+x](v):o.label!==void 0?()=>o.label(v):void 0;return i("div",[i(l.value,{label:y===void 0?c.value(v):null,modelValue:e.modelValue,"onUpdate:modelValue":m,...d.value[x]},y)])}))}});var cd=P({name:"QPage",props:{padding:Boolean,styleFn:Function},setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=pt(eo,Ze);if(r===Ze)return console.error("QPage needs to be a deep child of QLayout"),Ze;if(pt(Aa,Ze)===Ze)return console.error("QPage needs to be child of QPageContainer"),Ze;let a=s(()=>{let u=(r.header.space===!0?r.header.size:0)+(r.footer.space===!0?r.footer.size:0);if(typeof e.styleFn=="function"){let c=r.isContainer.value===!0?r.containerHeight.value:o.screen.height;return e.styleFn(u,c)}return{minHeight:r.isContainer.value===!0?r.containerHeight.value-u+"px":o.screen.height===0?u!==0?`calc(100vh - ${u}px)`:"100vh":o.screen.height-u+"px"}}),l=s(()=>`q-page${e.padding===!0?" q-layout-padding":""}`);return()=>i("main",{class:l.value,style:a.value},re(t.default))}});var dd=P({name:"QPageContainer",setup(e,{slots:t}){let{proxy:{$q:o}}=K(),r=pt(eo,Ze);if(r===Ze)return console.error("QPageContainer needs to be child of QLayout"),Ze;Kt(Aa,!0);let n=s(()=>{let a={};return r.header.space===!0&&(a.paddingTop=`${r.header.size}px`),r.right.space===!0&&(a[`padding${o.lang.rtl===!0?"Left":"Right"}`]=`${r.right.size}px`),r.footer.space===!0&&(a.paddingBottom=`${r.footer.size}px`),r.left.space===!0&&(a[`padding${o.lang.rtl===!0?"Right":"Left"}`]=`${r.left.size}px`),a});return()=>i("div",{class:"q-page-container",style:n.value},re(t.default))}});var ma={position:{type:String,default:"bottom-right",validator:e=>["top-right","top-left","bottom-right","bottom-left","top","right","bottom","left"].includes(e)},offset:{type:Array,validator:e=>e.length===2},expand:Boolean};function Ni(){let{props:e,proxy:{$q:t}}=K(),o=pt(eo,Ze);if(o===Ze)return console.error("QPageSticky needs to be child of QLayout"),Ze;let r=s(()=>{let p=e.position;return{top:p.indexOf("top")!==-1,right:p.indexOf("right")!==-1,bottom:p.indexOf("bottom")!==-1,left:p.indexOf("left")!==-1,vertical:p==="top"||p==="bottom",horizontal:p==="left"||p==="right"}}),n=s(()=>o.header.offset),a=s(()=>o.right.offset),l=s(()=>o.footer.offset),u=s(()=>o.left.offset),c=s(()=>{let p=0,g=0,m=r.value,v=t.lang.rtl===!0?-1:1;m.top===!0&&n.value!==0?g=`${n.value}px`:m.bottom===!0&&l.value!==0&&(g=`${-l.value}px`),m.left===!0&&u.value!==0?p=`${v*u.value}px`:m.right===!0&&a.value!==0&&(p=`${-v*a.value}px`);let x={transform:`translate(${p}, ${g})`};return e.offset&&(x.margin=`${e.offset[1]}px ${e.offset[0]}px`),m.vertical===!0?(u.value!==0&&(x[t.lang.rtl===!0?"right":"left"]=`${u.value}px`),a.value!==0&&(x[t.lang.rtl===!0?"left":"right"]=`${a.value}px`)):m.horizontal===!0&&(n.value!==0&&(x.top=`${n.value}px`),l.value!==0&&(x.bottom=`${l.value}px`)),x}),f=s(()=>`q-page-sticky row flex-center fixed-${e.position} q-page-sticky--${e.expand===!0?"expand":"shrink"}`);function d(p){let g=re(p.default);return i("div",{class:f.value,style:c.value},e.expand===!0?g:[i("div",g)])}return{$layout:o,getStickyContent:d}}var fd=P({name:"QPageScroller",props:{...ma,scrollOffset:{type:Number,default:1e3},reverse:Boolean,duration:{type:Number,default:300},offset:{...ma.offset,default:()=>[18,18]}},emits:["click"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),{$layout:n,getStickyContent:a}=Ni(),l=T(null),u,c=s(()=>n.height.value-(n.isContainer.value===!0?n.containerHeight.value:r.screen.height));function f(){return e.reverse===!0?c.value-n.scroll.value.position>e.scrollOffset:n.scroll.value.position>e.scrollOffset}let d=T(f());function p(){let y=f();d.value!==y&&(d.value=y)}function g(){e.reverse===!0?u===void 0&&(u=Y(c,p)):m()}Y(n.scroll,p),Y(()=>e.reverse,g);function m(){u!==void 0&&(u(),u=void 0)}function v(y){let k=Ft(n.isContainer.value===!0?l.value:n.rootRef.value);Bo(k,e.reverse===!0?n.height.value:0,e.duration),o("click",y)}function x(){return d.value===!0?i("div",{ref:l,class:"q-page-scroller",onClick:v},a(t)):null}return g(),be(m),()=>i(st,{name:"q-transition--fade"},x)}});var md=P({name:"QPageSticky",props:ma,setup(e,{slots:t}){let{getStickyContent:o}=Ni();return()=>o(t)}});function Qi(e,t){return[!0,!1].includes(e)?e:t}var vd=P({name:"QPagination",props:{...Se,modelValue:{type:Number,required:!0},min:{type:[Number,String],default:1},max:{type:[Number,String],required:!0},maxPages:{type:[Number,String],default:0,validator:e=>(typeof e=="string"?parseInt(e,10):e)>=0},inputStyle:[Array,String,Object],inputClass:[Array,String,Object],size:String,disable:Boolean,input:Boolean,iconPrev:String,iconNext:String,iconFirst:String,iconLast:String,toFn:Function,boundaryLinks:{type:Boolean,default:null},boundaryNumbers:{type:Boolean,default:null},directionLinks:{type:Boolean,default:null},ellipses:{type:Boolean,default:null},ripple:{type:[Boolean,Object],default:null},round:Boolean,rounded:Boolean,flat:Boolean,outline:Boolean,unelevated:Boolean,push:Boolean,glossy:Boolean,color:{type:String,default:"primary"},textColor:String,activeDesign:{type:String,default:"",values:e=>e===""||$l.includes(e)},activeColor:String,activeTextColor:String,gutter:String,padding:{type:String,default:"3px 2px"}},emits:["update:modelValue"],setup(e,{emit:t}){let{proxy:o}=K(),{$q:r}=o,n=xe(e,r),a=s(()=>parseInt(e.min,10)),l=s(()=>parseInt(e.max,10)),u=s(()=>parseInt(e.maxPages,10)),c=s(()=>v.value+" / "+l.value),f=s(()=>Qi(e.boundaryLinks,e.input)),d=s(()=>Qi(e.boundaryNumbers,!e.input)),p=s(()=>Qi(e.directionLinks,e.input)),g=s(()=>Qi(e.ellipses,!e.input)),m=T(null),v=s({get:()=>e.modelValue,set:A=>{if(A=parseInt(A,10),e.disable||isNaN(A))return;let z=tt(A,a.value,l.value);e.modelValue!==z&&t("update:modelValue",z)}});Y(()=>`${a.value}|${l.value}`,()=>{v.value=e.modelValue});let x=s(()=>"q-pagination row no-wrap items-center"+(e.disable===!0?" disabled":"")),y=s(()=>e.gutter in Gr?`${Gr[e.gutter]}px`:e.gutter||null),k=s(()=>y.value!==null?`--q-pagination-gutter-parent:-${y.value};--q-pagination-gutter-child:${y.value}`:null),S=s(()=>{let A=[e.iconFirst||r.iconSet.pagination.first,e.iconPrev||r.iconSet.pagination.prev,e.iconNext||r.iconSet.pagination.next,e.iconLast||r.iconSet.pagination.last];return r.lang.rtl===!0?A.reverse():A}),b=s(()=>({"aria-disabled":e.disable===!0?"true":"false",role:"navigation"})),h=s(()=>za(e,"flat")),_=s(()=>({[h.value]:!0,round:e.round,rounded:e.rounded,padding:e.padding,color:e.color,textColor:e.textColor,size:e.size,ripple:e.ripple!==null?e.ripple:!0})),E=s(()=>{let A={[h.value]:!1};return e.activeDesign!==""&&(A[e.activeDesign]=!0),A}),L=s(()=>({...E.value,color:e.activeColor||e.color,textColor:e.activeTextColor||e.textColor})),D=s(()=>{let A=Math.max(u.value,1+(g.value?2:0)+(d.value?2:0)),z={pgFrom:a.value,pgTo:l.value,ellipsesStart:!1,ellipsesEnd:!1,boundaryStart:!1,boundaryEnd:!1,marginalStyle:{minWidth:`${Math.max(2,String(l.value).length)}em`}};return u.value&&Aa.value+(d.value?1:0)&&(z.ellipsesStart=!0,z.pgFrom++),d.value&&(z.boundaryEnd=!0,z.pgTo--),g.value&&z.pgTo{Z(z)}),i(Ve,Q)}return Object.assign(o,{set:Z,setByOffset:B}),()=>{let A=[],z=[],H;if(f.value===!0&&(A.push(C({key:"bls",disable:e.disable||e.modelValue<=a.value,icon:S.value[0],"aria-label":r.lang.pagination.first},a.value)),z.unshift(C({key:"ble",disable:e.disable||e.modelValue>=l.value,icon:S.value[3],"aria-label":r.lang.pagination.last},l.value))),p.value===!0&&(A.push(C({key:"bdp",disable:e.disable||e.modelValue<=a.value,icon:S.value[1],"aria-label":r.lang.pagination.prev},e.modelValue-1)),z.unshift(C({key:"bdn",disable:e.disable||e.modelValue>=l.value,icon:S.value[2],"aria-label":r.lang.pagination.next},e.modelValue+1))),e.input!==!0){H=[];let{pgFrom:Q,pgTo:ee,marginalStyle:ve}=D.value;if(D.value.boundaryStart===!0){let O=a.value===e.modelValue;A.push(C({key:"bns",style:ve,disable:e.disable,label:a.value},a.value,O))}if(D.value.boundaryEnd===!0){let O=l.value===e.modelValue;z.unshift(C({key:"bne",style:ve,disable:e.disable,label:l.value},l.value,O))}D.value.ellipsesStart===!0&&A.push(C({key:"bes",style:ve,disable:e.disable,label:"\u2026",ripple:!1},Q-1)),D.value.ellipsesEnd===!0&&z.unshift(C({key:"bee",style:ve,disable:e.disable,label:"\u2026",ripple:!1},ee+1));for(let O=Q;O<=ee;O++)H.push(C({key:`bpg${O}`,style:ve,disable:e.disable,label:O},O,O===e.modelValue))}return i("div",{class:x.value,...b.value},[i("div",{class:"q-pagination__content row no-wrap items-center",style:k.value},[...A,e.input===!0?i(Or,{class:"inline",style:{width:`${c.value.length/1.5}em`},type:"number",dense:!0,value:m.value,disable:e.disable,dark:n.value,borderless:!0,inputClass:e.inputClass,inputStyle:e.inputStyle,placeholder:c.value,min:a.value,max:l.value,"onUpdate:modelValue":$,onKeyup:q,onBlur:F}):i("div",{class:"q-pagination__middle row justify-center"},H),...z])])}}});function zr(e){let t=!1,o,r;function n(){r=arguments,t!==!0&&(t=!0,o=window.requestAnimationFrame(()=>{e.apply(this,r),r=void 0,t=!1}))}return n.cancel=()=>{window.cancelAnimationFrame(o),t=!1},n}var{passive:ji}=et,gd=P({name:"QParallax",props:{src:String,height:{type:Number,default:500},speed:{type:Number,default:1,validator:e=>e>=0&&e<=1},scrollTarget:to,onScroll:Function},setup(e,{slots:t,emit:o}){let r=T(0),n=T(null),a=T(null),l=T(null),u,c,f,d,p,g;Y(()=>e.height,()=>{u===!0&&v()}),Y(()=>e.scrollTarget,()=>{u===!0&&(S(),k())});let m=b=>{r.value=b,e.onScroll!==void 0&&o("scroll",b)};function v(){let b,h,_;g===window?(b=0,_=h=window.innerHeight):(b=wn(g).top,h=Ao(g),_=b+h);let E=wn(n.value).top,L=E+e.height;if(p!==void 0||L>b&&E<_){let D=(_-E)/(e.height+h);x((f-e.height)*D*e.speed),m(D)}}let x=b=>{c.style.transform=`translate3d(-50%,${Math.round(b)}px,0)`};function y(){f=c.naturalHeight||c.videoHeight||Ao(c),u===!0&&v()}function k(){u=!0,g=Ft(n.value,e.scrollTarget),g.addEventListener("scroll",v,ji),window.addEventListener("resize",d,ji),v()}function S(){u===!0&&(u=!1,g.removeEventListener("scroll",v,ji),window.removeEventListener("resize",d,ji),g=void 0,x.cancel(),m.cancel(),d.cancel())}return Qe(()=>{x=zr(x),m=zr(m),d=zr(y),c=t.media!==void 0?a.value.children[0]:l.value,c.onload=c.onloadstart=c.loadedmetadata=y,y(),c.style.display="initial",window.IntersectionObserver!==void 0?(p=new IntersectionObserver(b=>{(b[0].isIntersecting===!0?k:S)()}),p.observe(n.value)):k()}),be(()=>{S(),p?.disconnect(),c.onload=c.onloadstart=c.loadedmetadata=null}),()=>i("div",{ref:n,class:"q-parallax",style:{height:`${e.height}px`}},[i("div",{ref:a,class:"q-parallax__media absolute-full"},t.media!==void 0?t.media():[i("img",{ref:l,src:e.src})]),i("div",{class:"q-parallax__content absolute-full column flex-center"},t.content!==void 0?t.content({percentScrolled:r.value}):re(t.default))])}});function tn(e,t=new WeakMap){if(Object(e)!==e)return e;if(t.has(e))return t.get(e);let o=e instanceof Date?new Date(e):e instanceof RegExp?new RegExp(e.source,e.flags):e instanceof Set?new Set:e instanceof Map?new Map:typeof e.constructor!="function"?Object.create(null):e.prototype!==void 0&&typeof e.prototype.constructor=="function"?e:new e.constructor;if(typeof e.constructor=="function"&&typeof e.valueOf=="function"){let r=e.valueOf();if(Object(r)!==r){let n=new e.constructor(r);return t.set(e,n),n}}return t.set(e,o),e instanceof Set?e.forEach(r=>{o.add(tn(r,t))}):e instanceof Map&&e.forEach((r,n)=>{o.set(n,tn(r,t))}),Object.assign(o,...Object.keys(e).map(r=>({[r]:tn(e[r],t)})))}var hd=P({name:"QPopupEdit",props:{modelValue:{required:!0},title:String,buttons:Boolean,labelSet:String,labelCancel:String,color:{type:String,default:"primary"},validate:{type:Function,default:()=>!0},autoSave:Boolean,cover:{type:Boolean,default:!0},disable:Boolean},emits:["update:modelValue","save","cancel","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,a=T(null),l=T(""),u=T(""),c=!1,f=s(()=>ft({initialValue:l.value,validate:e.validate,set:d,cancel:p,updatePosition:g},"value",()=>u.value,h=>{u.value=h}));function d(){e.validate(u.value)!==!1&&(m()===!0&&(o("save",u.value,l.value),o("update:modelValue",u.value)),v())}function p(){m()===!0&&o("cancel",u.value,l.value),v()}function g(){Be(()=>{a.value.updatePosition()})}function m(){return Xt(u.value,l.value)===!1}function v(){c=!0,a.value.hide()}function x(){c=!1,l.value=tn(e.modelValue),u.value=tn(e.modelValue),o("beforeShow")}function y(){o("show")}function k(){c===!1&&m()===!0&&(e.autoSave===!0&&e.validate(u.value)===!0?(o("save",u.value,l.value),o("update:modelValue",u.value)):o("cancel",u.value,l.value)),o("beforeHide")}function S(){o("hide")}function b(){let h=t.default!==void 0?[].concat(t.default(f.value)):[];return e.title&&h.unshift(i("div",{class:"q-dialog__title q-mt-sm q-mb-sm"},e.title)),e.buttons===!0&&h.push(i("div",{class:"q-popup-edit__buttons row justify-center no-wrap"},[i(Ve,{flat:!0,color:e.color,label:e.labelCancel||n.lang.label.cancel,onClick:p}),i(Ve,{flat:!0,color:e.color,label:e.labelSet||n.lang.label.set,onClick:d})])),h}return Object.assign(r,{set:d,cancel:p,show(h){a.value?.show(h)},hide(h){a.value?.hide(h)},updatePosition:g}),()=>{if(e.disable!==!0)return i(Fo,{ref:a,class:"q-popup-edit",cover:e.cover,onBeforeShow:x,onShow:y,onBeforeHide:k,onHide:S,onEscapeKey:p},b)}}});var pd=P({name:"QPopupProxy",props:{...Na,breakpoint:{type:[String,Number],default:450}},emits:["show","hide"],setup(e,{slots:t,emit:o,attrs:r}){let{proxy:n}=K(),{$q:a}=n,l=T(!1),u=T(null),c=s(()=>parseInt(e.breakpoint,10)),{canShow:f}=nr({showing:l});function d(){return a.screen.widthp.value==="menu"?{maxHeight:"99vh"}:{});Y(()=>d(),x=>{l.value!==!0&&(p.value=x)});function m(x){l.value=!0,o("show",x)}function v(x){l.value=!1,p.value=d(),o("hide",x)}return Object.assign(n,{show(x){f(x)===!0&&u.value.show(x)},hide(x){u.value.hide(x)},toggle(x){u.value.toggle(x)}}),ft(n,"currentComponent",()=>({type:p.value,ref:u.value})),()=>{let x={ref:u,...g.value,...r,onShow:m,onHide:v},y;return p.value==="dialog"?y=Ho:(y=Fo,Object.assign(x,{target:e.target,contextMenu:e.contextMenu,noParentEvent:!0,separateClosePopup:!0})),i(y,x,t.default)}}});var Fh={xs:2,sm:4,md:6,lg:10,xl:14};function bd(e,t,o){return{transform:t===!0?`translateX(${o.lang.rtl===!0?"-":""}100%) scale3d(${-e},1,1)`:`scale3d(${e},1,1)`}}var Ui=P({name:"QLinearProgress",props:{...Se,...Dt,value:{type:Number,default:0},buffer:Number,color:String,trackColor:String,reverse:Boolean,stripe:Boolean,indeterminate:Boolean,query:Boolean,rounded:Boolean,animationSpeed:{type:[String,Number],default:2100},instantFeedback:Boolean},setup(e,{slots:t}){let{proxy:o}=K(),r=xe(e,o.$q),n=Ot(e,Fh),a=s(()=>e.indeterminate===!0||e.query===!0),l=s(()=>e.reverse!==e.query),u=s(()=>({...n.value!==null?n.value:{},"--q-linear-progress-speed":`${e.animationSpeed}ms`})),c=s(()=>"q-linear-progress"+(e.color!==void 0?` text-${e.color}`:"")+(e.reverse===!0||e.query===!0?" q-linear-progress--reverse":"")+(e.rounded===!0?" rounded-borders":"")),f=s(()=>bd(e.buffer!==void 0?e.buffer:1,l.value,o.$q)),d=s(()=>`with${e.instantFeedback===!0?"out":""}-transition`),p=s(()=>`q-linear-progress__track absolute-full q-linear-progress__track--${d.value} q-linear-progress__track--${r.value===!0?"dark":"light"}`+(e.trackColor!==void 0?` bg-${e.trackColor}`:"")),g=s(()=>bd(a.value===!0?1:e.value,l.value,o.$q)),m=s(()=>`q-linear-progress__model absolute-full q-linear-progress__model--${d.value} q-linear-progress__model--${a.value===!0?"in":""}determinate`),v=s(()=>({width:`${e.value*100}%`})),x=s(()=>`q-linear-progress__stripe absolute-${e.reverse===!0?"right":"left"} q-linear-progress__stripe--${d.value}`);return()=>{let y=[i("div",{class:p.value,style:f.value}),i("div",{class:m.value,style:g.value})];return e.stripe===!0&&a.value===!1&&y.push(i("div",{class:x.value,style:v.value})),i("div",{class:c.value,style:u.value,role:"progressbar","aria-valuemin":0,"aria-valuemax":1,"aria-valuenow":e.indeterminate===!0?void 0:e.value},Ge(t.default,y))}}});var Ir=40,fu=20,yd=P({name:"QPullToRefresh",props:{color:String,bgColor:String,icon:String,noMouse:Boolean,disable:Boolean,scrollTarget:to},emits:["refresh"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,a=T("pull"),l=T(0),u=T(!1),c=T(-Ir),f=T(!1),d=T({}),p=s(()=>({opacity:l.value,transform:`translateY(${c.value}px) rotate(${l.value*360}deg)`})),g=s(()=>"q-pull-to-refresh__puller row flex-center"+(f.value===!0?" q-pull-to-refresh__puller--animating":"")+(e.bgColor!==void 0?` bg-${e.bgColor}`:""));function m(_){if(_.isFinal===!0){u.value===!0&&(u.value=!1,a.value==="pulled"?(a.value="refreshing",b({pos:fu}),y()):a.value==="pull"&&b({pos:-Ir,ratio:0}));return}if(f.value===!0||a.value==="refreshing")return!1;if(_.isFirst===!0){if(oo(k)!==0||_.direction!=="down")return u.value===!0&&(u.value=!1,a.value="pull",b({pos:-Ir,ratio:0})),!1;u.value=!0;let{top:D,left:Z}=r.$el.getBoundingClientRect();d.value={top:D+"px",left:Z+"px",width:window.getComputedStyle(r.$el).getPropertyValue("width")}}gt(_.evt);let E=Math.min(140,Math.max(0,_.distance.y));c.value=E-Ir,l.value=tt(E/(fu+Ir),0,1);let L=c.value>fu?"pulled":"pull";a.value!==L&&(a.value=L)}let v=s(()=>{let _={down:!0};return e.noMouse!==!0&&(_.mouse=!0),[[Pt,m,void 0,_]]}),x=s(()=>`q-pull-to-refresh__content${u.value===!0?" no-pointer-events":""}`);function y(){o("refresh",()=>{b({pos:-Ir,ratio:0},()=>{a.value="pull"})})}let k,S=null;function b({pos:_,ratio:E},L){f.value=!0,c.value=_,E!==void 0&&(l.value=E),S!==null&&clearTimeout(S),S=setTimeout(()=>{S=null,f.value=!1,L?.()},300)}function h(){k=Ft(r.$el,e.scrollTarget)}return Y(()=>e.scrollTarget,h),Qe(h),be(()=>{S!==null&&clearTimeout(S)}),Object.assign(r,{trigger:y,updateScrollTarget:h}),()=>{let _=[i("div",{class:x.value},re(t.default)),i("div",{class:"q-pull-to-refresh__puller-container fixed row flex-center no-pointer-events z-top",style:d.value},[i("div",{class:g.value,style:p.value},[a.value!=="refreshing"?i(Re,{name:e.icon||n.iconSet.pullToRefresh.icon,color:e.color,size:"32px"}):i(wt,{size:"24px",color:e.color})])])];return Rt("div",{class:"q-pull-to-refresh"},_,"main",e.disable===!1,()=>v.value)}}});var xn={MIN:0,RANGE:1,MAX:2},Sd=P({name:"QRange",props:{...ii,modelValue:{type:Object,default:()=>({min:null,max:null}),validator:e=>"min"in e&&"max"in e},dragRange:Boolean,dragOnlyRange:Boolean,leftLabelColor:String,leftLabelTextColor:String,rightLabelColor:String,rightLabelTextColor:String,leftLabelValue:[String,Number],rightLabelValue:[String,Number],leftThumbColor:String,rightThumbColor:String},emits:li,setup(e,{emit:t}){let{proxy:{$q:o}}=K(),{state:r,methods:n}=ui({updateValue:D,updatePosition:B,getDragging:Z,formAttrs:s(()=>({type:"hidden",name:e.name,value:`${e.modelValue.min}|${e.modelValue.max}`}))}),a=T(null),l=T(0),u=T(0),c=T({min:0,max:0});function f(){c.value.min=e.modelValue.min===null?r.innerMin.value:tt(e.modelValue.min,r.innerMin.value,r.innerMax.value),c.value.max=e.modelValue.max===null?r.innerMax.value:tt(e.modelValue.max,r.innerMin.value,r.innerMax.value)}Y(()=>`${e.modelValue.min}|${e.modelValue.max}|${r.innerMin.value}|${r.innerMax.value}`,f),f();let d=s(()=>n.convertModelToRatio(c.value.min)),p=s(()=>n.convertModelToRatio(c.value.max)),g=s(()=>r.active.value===!0?l.value:d.value),m=s(()=>r.active.value===!0?u.value:p.value),v=s(()=>{let $={[r.positionProp.value]:`${100*g.value}%`,[r.sizeProp.value]:`${100*(m.value-g.value)}%`};return e.selectionImg!==void 0&&($.backgroundImage=`url(${e.selectionImg}) !important`),$}),x=s(()=>{if(r.editable.value!==!0)return{};if(o.platform.is.mobile===!0)return{onClick:n.onMobileClick};let $={onMousedown:n.onActivate};return(e.dragRange===!0||e.dragOnlyRange===!0)&&Object.assign($,{onFocus:()=>{r.focus.value="both"},onBlur:n.onBlur,onKeydown:F,onKeyup:n.onKeyup}),$});function y($){return o.platform.is.mobile!==!0&&r.editable.value===!0&&e.dragOnlyRange!==!0?{onFocus:()=>{r.focus.value=$},onBlur:n.onBlur,onKeydown:F,onKeyup:n.onKeyup}:{}}let k=s(()=>e.dragOnlyRange!==!0?r.tabindex.value:null),S=s(()=>o.platform.is.mobile!==!0&&(e.dragRange||e.dragOnlyRange===!0)?r.tabindex.value:null),b=T(null),h=s(()=>y("min")),_=n.getThumbRenderFn({focusValue:"min",getNodeData:()=>({ref:b,key:"tmin",...h.value,tabindex:k.value}),ratio:g,label:s(()=>e.leftLabelValue!==void 0?e.leftLabelValue:c.value.min),thumbColor:s(()=>e.leftThumbColor||e.thumbColor||e.color),labelColor:s(()=>e.leftLabelColor||e.labelColor),labelTextColor:s(()=>e.leftLabelTextColor||e.labelTextColor)}),E=s(()=>y("max")),L=n.getThumbRenderFn({focusValue:"max",getNodeData:()=>({...E.value,key:"tmax",tabindex:k.value}),ratio:m,label:s(()=>e.rightLabelValue!==void 0?e.rightLabelValue:c.value.max),thumbColor:s(()=>e.rightThumbColor||e.thumbColor||e.color),labelColor:s(()=>e.rightLabelColor||e.labelColor),labelTextColor:s(()=>e.rightLabelTextColor||e.labelTextColor)});function D($){(c.value.min!==e.modelValue.min||c.value.max!==e.modelValue.max)&&t("update:modelValue",{...c.value}),$===!0&&t("change",{...c.value})}function Z($){let{left:q,top:C,width:A,height:z}=a.value.getBoundingClientRect(),H=e.dragOnlyRange===!0?0:e.vertical===!0?b.value.offsetHeight/(2*z):b.value.offsetWidth/(2*A),Q={left:q,top:C,width:A,height:z,valueMin:c.value.min,valueMax:c.value.max,ratioMin:d.value,ratioMax:p.value},ee=n.getDraggingRatio($,Q);return e.dragOnlyRange!==!0&&ee=q.ratioMin?(C={minR:q.ratioMin,maxR:A,min:q.valueMin,max:z},r.focus.value="max"):(C={minR:A,maxR:q.ratioMin,min:z,max:q.valueMin},r.focus.value="min");break;case xn.RANGE:let H=A-q.offsetRatio,Q=tt(q.ratioMin+H,r.innerMinRatio.value,r.innerMaxRatio.value-q.rangeRatio),ee=z-q.offsetModel,ve=tt(q.valueMin+ee,r.innerMin.value,r.innerMax.value-q.rangeValue);C={minR:Q,maxR:Q+q.rangeRatio,min:r.roundValueFn.value(ve),max:r.roundValueFn.value(ve+q.rangeValue)},r.focus.value="both";break}c.value=c.value.min===null||c.value.max===null?{min:C.min||e.min,max:C.max||e.max}:{min:C.min,max:C.max},e.snap!==!0||e.step===0?(l.value=C.minR,u.value=C.maxR):(l.value=n.convertModelToRatio(c.value.min),u.value=n.convertModelToRatio(c.value.max))}function F($){if(ra.includes($.keyCode)===!1)return;_e($);let q=([34,33].includes($.keyCode)?10:1)*r.keyStep.value,C=([34,37,40].includes($.keyCode)?-1:1)*(r.isReversed.value===!0?-1:1)*(e.vertical===!0?-1:1)*q;if(r.focus.value==="both"){let A=c.value.max-c.value.min,z=tt(r.roundValueFn.value(c.value.min+C),r.innerMin.value,r.innerMax.value-A);c.value={min:z,max:r.roundValueFn.value(z+A)}}else{if(r.focus.value===!1)return;{let A=r.focus.value;c.value={...c.value,[A]:tt(r.roundValueFn.value(c.value[A]+C),A==="min"?r.innerMin.value:c.value.min,A==="max"?r.innerMax.value:c.value.max)}}}D()}return()=>{let $=n.getContent(v,S,x,q=>{q.push(_(),L())});return i("div",{ref:a,class:"q-range "+r.classes.value+(e.modelValue.min===null||e.modelValue.max===null?" q-slider--no-value":""),...r.attributes.value,"aria-valuenow":e.modelValue.min+"|"+e.modelValue.max},$)}}});var xd=P({name:"QRating",props:{...Dt,...kt,modelValue:{type:Number,required:!0},max:{type:[String,Number],default:5},icon:[String,Array],iconHalf:[String,Array],iconSelected:[String,Array],iconAriaLabel:[String,Array],color:[String,Array],colorHalf:[String,Array],colorSelected:[String,Array],noReset:Boolean,noDimming:Boolean,readonly:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=Ot(e),a=Oo(e),l=Zt(a),u=T(0),c={},f=s(()=>e.readonly!==!0&&e.disable!==!0),d=s(()=>`q-rating row inline items-center q-rating--${f.value===!0?"":"non-"}editable`+(e.noDimming===!0?" q-rating--no-dimming":"")+(e.disable===!0?" disabled":"")+(e.color!==void 0&&Array.isArray(e.color)===!1?` text-${e.color}`:"")),p=s(()=>{let b=Array.isArray(e.icon)===!0?e.icon.length:0,h=Array.isArray(e.iconSelected)===!0?e.iconSelected.length:0,_=Array.isArray(e.iconHalf)===!0?e.iconHalf.length:0,E=Array.isArray(e.color)===!0?e.color.length:0,L=Array.isArray(e.colorSelected)===!0?e.colorSelected.length:0,D=Array.isArray(e.colorHalf)===!0?e.colorHalf.length:0;return{iconLen:b,icon:b>0?e.icon[b-1]:e.icon,selIconLen:h,selIcon:h>0?e.iconSelected[h-1]:e.iconSelected,halfIconLen:_,halfIcon:_>0?e.iconHalf[h-1]:e.iconHalf,colorLen:E,color:E>0?e.color[E-1]:e.color,selColorLen:L,selColor:L>0?e.colorSelected[L-1]:e.colorSelected,halfColorLen:D,halfColor:D>0?e.colorHalf[D-1]:e.colorHalf}}),g=s(()=>{if(typeof e.iconAriaLabel=="string"){let b=e.iconAriaLabel.length!==0?`${e.iconAriaLabel} `:"";return h=>`${b}${h}`}if(Array.isArray(e.iconAriaLabel)===!0){let b=e.iconAriaLabel.length;if(b>0)return h=>e.iconAriaLabel[Math.min(h,b)-1]}return(b,h)=>`${h} ${b}`}),m=s(()=>{let b=[],h=p.value,_=Math.ceil(e.modelValue),E=f.value===!0?0:null,L=e.iconHalf===void 0||_===e.modelValue?-1:_;for(let D=1;D<=e.max;D++){let Z=u.value===0&&e.modelValue>=D||u.value>0&&u.value>=D,B=L===D&&u.value0&&(B===!0?_:e.modelValue)>=D&&u.value{let b={role:"radiogroup"};return e.disable===!0&&(b["aria-disabled"]="true"),e.readonly===!0&&(b["aria-readonly"]="true"),b});function x(b){if(f.value===!0){let h=tt(parseInt(b,10),1,parseInt(e.max,10)),_=e.noReset!==!0&&e.modelValue===h?0:h;_!==e.modelValue&&o("update:modelValue",_),u.value=0}}function y(b){f.value===!0&&(u.value=b)}function k(b,h){switch(b.keyCode){case 13:case 32:return x(h),_e(b);case 37:case 40:return c[`rt${h-1}`]&&c[`rt${h-1}`].focus(),_e(b);case 39:case 38:return c[`rt${h+1}`]&&c[`rt${h+1}`].focus(),_e(b)}}function S(){u.value=0}return Mo(()=>{c={}}),()=>{let b=[];return m.value.forEach(({iconClass:h,name:_,attrs:E},L)=>{let D=L+1;b.push(i("div",{key:D,ref:Z=>{c[`rt${D}`]=Z},class:"q-rating__icon-container flex flex-center",...E,onClick(){x(D)},onMouseover(){y(D)},onMouseout:S,onFocus(){y(D)},onBlur:S,onKeyup(Z){k(Z,D)}},Ge(t[`tip-${D}`],[i(Re,{class:h,name:_})])))}),e.name!==void 0&&e.disable!==!0&&l(b,"push"),i("div",{class:d.value,style:n.value,...v.value},b)}}});var _d=P({name:"QResponsive",props:Lr,setup(e,{slots:t}){let o=Dr(e);return()=>i("div",{class:"q-responsive"},[i("div",{class:"q-responsive__filler overflow-hidden"},[i("div",{style:o.value})]),i("div",{class:"q-responsive__content absolute-full fit"},re(t.default))])}});var Cd=P({props:["store","barStyle","verticalBarStyle","horizontalBarStyle"],setup(e){return()=>[i("div",{class:e.store.scroll.vertical.barClass.value,style:[e.barStyle,e.verticalBarStyle],"aria-hidden":"true",onMousedown:e.store.onVerticalMousedown}),i("div",{class:e.store.scroll.horizontal.barClass.value,style:[e.barStyle,e.horizontalBarStyle],"aria-hidden":"true",onMousedown:e.store.onHorizontalMousedown}),Bt(i("div",{ref:e.store.scroll.vertical.ref,class:e.store.scroll.vertical.thumbClass.value,style:e.store.scroll.vertical.style.value,"aria-hidden":"true"}),e.store.thumbVertDir),Bt(i("div",{ref:e.store.scroll.horizontal.ref,class:e.store.scroll.horizontal.thumbClass.value,style:e.store.scroll.horizontal.style.value,"aria-hidden":"true"}),e.store.thumbHorizDir)]}});var wd=["vertical","horizontal"],mu={vertical:{offset:"offsetY",scroll:"scrollTop",dir:"down",dist:"y"},horizontal:{offset:"offsetX",scroll:"scrollLeft",dir:"right",dist:"x"}},kd={prevent:!0,mouse:!0,mouseAllDir:!0},qd=e=>e>=250?50:Math.ceil(e/5),Td=P({name:"QScrollArea",props:{...Se,thumbStyle:Object,verticalThumbStyle:Object,horizontalThumbStyle:Object,barStyle:[Array,String,Object],verticalBarStyle:[Array,String,Object],horizontalBarStyle:[Array,String,Object],verticalOffset:{type:Array,default:[0,0]},horizontalOffset:{type:Array,default:[0,0]},contentStyle:[Array,String,Object],contentActiveStyle:[Array,String,Object],delay:{type:[String,Number],default:1e3},visible:{type:Boolean,default:null},tabindex:[String,Number],onScroll:Function},setup(e,{slots:t,emit:o}){let r=T(!1),n=T(!1),a=T(!1),l={vertical:T(0),horizontal:T(0)},u={vertical:{ref:T(null),position:T(0),size:T(0)},horizontal:{ref:T(null),position:T(0),size:T(0)}},{proxy:c}=K(),f=xe(e,c.$q),d=null,p,g=T(null),m=s(()=>"q-scrollarea"+(f.value===!0?" q-scrollarea--dark":""));Object.assign(l,{verticalInner:s(()=>l.vertical.value-e.verticalOffset[0]-e.verticalOffset[1]),horizontalInner:s(()=>l.horizontal.value-e.horizontalOffset[0]-e.horizontalOffset[1])}),u.vertical.percentage=s(()=>{let C=u.vertical.size.value-l.vertical.value;if(C<=0)return 0;let A=tt(u.vertical.position.value/C,0,1);return Math.round(A*1e4)/1e4}),u.vertical.thumbHidden=s(()=>(e.visible===null?a.value:e.visible)!==!0&&r.value===!1&&n.value===!1||u.vertical.size.value<=l.vertical.value+1),u.vertical.thumbStart=s(()=>e.verticalOffset[0]+u.vertical.percentage.value*(l.verticalInner.value-u.vertical.thumbSize.value)),u.vertical.thumbSize=s(()=>Math.round(tt(l.verticalInner.value*l.verticalInner.value/u.vertical.size.value,qd(l.verticalInner.value),l.verticalInner.value))),u.vertical.style=s(()=>({...e.thumbStyle,...e.verticalThumbStyle,top:`${u.vertical.thumbStart.value}px`,height:`${u.vertical.thumbSize.value}px`,right:`${e.horizontalOffset[1]}px`})),u.vertical.thumbClass=s(()=>"q-scrollarea__thumb q-scrollarea__thumb--v absolute-right"+(u.vertical.thumbHidden.value===!0?" q-scrollarea__thumb--invisible":"")),u.vertical.barClass=s(()=>"q-scrollarea__bar q-scrollarea__bar--v absolute-right"+(u.vertical.thumbHidden.value===!0?" q-scrollarea__bar--invisible":"")),u.horizontal.percentage=s(()=>{let C=u.horizontal.size.value-l.horizontal.value;if(C<=0)return 0;let A=tt(Math.abs(u.horizontal.position.value)/C,0,1);return Math.round(A*1e4)/1e4}),u.horizontal.thumbHidden=s(()=>(e.visible===null?a.value:e.visible)!==!0&&r.value===!1&&n.value===!1||u.horizontal.size.value<=l.horizontal.value+1),u.horizontal.thumbStart=s(()=>e.horizontalOffset[0]+u.horizontal.percentage.value*(l.horizontalInner.value-u.horizontal.thumbSize.value)),u.horizontal.thumbSize=s(()=>Math.round(tt(l.horizontalInner.value*l.horizontalInner.value/u.horizontal.size.value,qd(l.horizontalInner.value),l.horizontalInner.value))),u.horizontal.style=s(()=>({...e.thumbStyle,...e.horizontalThumbStyle,[c.$q.lang.rtl===!0?"right":"left"]:`${u.horizontal.thumbStart.value}px`,width:`${u.horizontal.thumbSize.value}px`,bottom:`${e.verticalOffset[1]}px`})),u.horizontal.thumbClass=s(()=>"q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom"+(u.horizontal.thumbHidden.value===!0?" q-scrollarea__thumb--invisible":"")),u.horizontal.barClass=s(()=>"q-scrollarea__bar q-scrollarea__bar--h absolute-bottom"+(u.horizontal.thumbHidden.value===!0?" q-scrollarea__bar--invisible":""));let v=s(()=>u.vertical.thumbHidden.value===!0&&u.horizontal.thumbHidden.value===!0?e.contentStyle:e.contentActiveStyle);function x(){let C={};return wd.forEach(A=>{let z=u[A];Object.assign(C,{[A+"Position"]:z.position.value,[A+"Percentage"]:z.percentage.value,[A+"Size"]:z.size.value,[A+"ContainerSize"]:l[A].value,[A+"ContainerInnerSize"]:l[A+"Inner"].value})}),C}let y=Jt(()=>{let C=x();C.ref=c,o("scroll",C)},0);function k(C,A,z){if(wd.includes(C)===!1){console.error("[QScrollArea]: wrong first param of setScrollPosition (vertical/horizontal)");return}(C==="vertical"?Bo:ea)(g.value,A,z)}function S({height:C,width:A}){let z=!1;l.vertical.value!==C&&(l.vertical.value=C,z=!0),l.horizontal.value!==A&&(l.horizontal.value=A,z=!0),z===!0&&L()}function b({position:C}){let A=!1;u.vertical.position.value!==C.top&&(u.vertical.position.value=C.top,A=!0),u.horizontal.position.value!==C.left&&(u.horizontal.position.value=C.left,A=!0),A===!0&&L()}function h({height:C,width:A}){u.horizontal.size.value!==A&&(u.horizontal.size.value=A,L()),u.vertical.size.value!==C&&(u.vertical.size.value=C,L())}function _(C,A){let z=u[A];if(C.isFirst===!0){if(z.thumbHidden.value===!0)return;p=z.position.value,n.value=!0}else if(n.value!==!0)return;C.isFinal===!0&&(n.value=!1);let H=mu[A],Q=(z.size.value-l[A].value)/(l[A+"Inner"].value-z.thumbSize.value),ee=C.distance[H.dist],ve=p+(C.direction===H.dir?1:-1)*ee*Q;D(ve,A)}function E(C,A){let z=u[A];if(z.thumbHidden.value!==!0){let H=A==="vertical"?e.verticalOffset[0]:e.horizontalOffset[0],Q=C[mu[A].offset]-H,ee=z.thumbStart.value-H;if(Qee+z.thumbSize.value){let ve=Q-z.thumbSize.value/2,O=tt(ve/(l[A+"Inner"].value-z.thumbSize.value),0,1);D(O*Math.max(0,z.size.value-l[A].value),A)}z.ref.value!==null&&z.ref.value.dispatchEvent(new MouseEvent(C.type,C))}}function L(){r.value=!0,d!==null&&clearTimeout(d),d=setTimeout(()=>{d=null,r.value=!1},e.delay),e.onScroll!==void 0&&y()}function D(C,A){g.value[mu[A].scroll]=C}let Z=null;function B(){Z!==null&&clearTimeout(Z),Z=setTimeout(()=>{Z=null,a.value=!0},c.$q.platform.is.ios?50:0)}function F(){Z!==null&&(clearTimeout(Z),Z=null),a.value=!1}let $=null;Y(()=>c.$q.lang.rtl,C=>{g.value!==null&&ea(g.value,Math.abs(u.horizontal.position.value)*(C===!0?-1:1))}),At(()=>{$={top:u.vertical.position.value,left:u.horizontal.position.value}}),Ut(()=>{if($===null)return;let C=g.value;C!==null&&(ea(C,$.left),Bo(C,$.top))}),be(y.cancel),Object.assign(c,{getScrollTarget:()=>g.value,getScroll:x,getScrollPosition:()=>({top:u.vertical.position.value,left:u.horizontal.position.value}),getScrollPercentage:()=>({top:u.vertical.percentage.value,left:u.horizontal.percentage.value}),setScrollPosition:k,setScrollPercentage(C,A,z){k(C,A*(u[C].size.value-l[C].value)*(C==="horizontal"&&c.$q.lang.rtl===!0?-1:1),z)}});let q={scroll:u,thumbVertDir:[[Pt,C=>{_(C,"vertical")},void 0,{vertical:!0,...kd}]],thumbHorizDir:[[Pt,C=>{_(C,"horizontal")},void 0,{horizontal:!0,...kd}]],onVerticalMousedown(C){E(C,"vertical")},onHorizontalMousedown(C){E(C,"horizontal")}};return()=>i("div",{class:m.value,onMouseenter:B,onMouseleave:F},[i("div",{ref:g,class:"q-scrollarea__container scroll relative-position fit hide-scrollbar",tabindex:e.tabindex!==void 0?e.tabindex:void 0},[i("div",{class:"q-scrollarea__content absolute",style:v.value},Ge(t.default,[i(no,{debounce:0,onResize:h})])),i(Vr,{axis:"both",onScroll:b})]),i(no,{debounce:0,onResize:S}),i(Cd,{store:q,barStyle:e.barStyle,verticalBarStyle:e.verticalBarStyle,horizontalBarStyle:e.horizontalBarStyle})])}});var wo=1e3,Lh=["start","center","end","start-force","center-force","end-force"],Rd=Array.prototype.filter,Dh=window.getComputedStyle(document.body).overflowAnchor===void 0?Ye:function(e,t){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;let o=e.children||[];Rd.call(o,n=>n.dataset&&n.dataset.qVsAnchor!==void 0).forEach(n=>{delete n.dataset.qVsAnchor});let r=o[t];r?.dataset&&(r.dataset.qVsAnchor="")}))};function Hr(e,t){return e+t}function vu(e,t,o,r,n,a,l,u){let c=e===window?document.scrollingElement||document.documentElement:e,f=n===!0?"offsetWidth":"offsetHeight",d={scrollStart:0,scrollViewSize:-l-u,scrollMaxSize:0,offsetStart:-l,offsetEnd:-u};if(n===!0?(e===window?(d.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,d.scrollViewSize+=document.documentElement.clientWidth):(d.scrollStart=c.scrollLeft,d.scrollViewSize+=c.clientWidth),d.scrollMaxSize=c.scrollWidth,a===!0&&(d.scrollStart=($n===!0?d.scrollMaxSize-d.scrollViewSize:0)-d.scrollStart)):(e===window?(d.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,d.scrollViewSize+=document.documentElement.clientHeight):(d.scrollStart=c.scrollTop,d.scrollViewSize+=c.clientHeight),d.scrollMaxSize=c.scrollHeight),o!==null)for(let p=o.previousElementSibling;p!==null;p=p.previousElementSibling)p.classList.contains("q-virtual-scroll--skip")===!1&&(d.offsetStart+=p[f]);if(r!==null)for(let p=r.nextElementSibling;p!==null;p=p.nextElementSibling)p.classList.contains("q-virtual-scroll--skip")===!1&&(d.offsetEnd+=p[f]);if(t!==e){let p=c.getBoundingClientRect(),g=t.getBoundingClientRect();n===!0?(d.offsetStart+=g.left-p.left,d.offsetEnd-=g.width):(d.offsetStart+=g.top-p.top,d.offsetEnd-=g.height),e!==window&&(d.offsetStart+=d.scrollStart),d.offsetEnd+=d.scrollMaxSize-d.offsetStart}return d}function Md(e,t,o,r){t==="end"&&(t=(e===window?document.body:e)[o===!0?"scrollWidth":"scrollHeight"]),e===window?o===!0?(r===!0&&(t=($n===!0?document.body.scrollWidth-document.documentElement.clientWidth:0)-t),window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t):o===!0?(r===!0&&(t=($n===!0?e.scrollWidth-e.offsetWidth:0)-t),e.scrollLeft=t):e.scrollTop=t}function va(e,t,o,r){if(o>=r)return 0;let n=t.length,a=Math.floor(o/wo),l=Math.floor((r-1)/wo)+1,u=e.slice(a,l).reduce(Hr,0);return o%wo!==0&&(u-=t.slice(a*wo,o).reduce(Hr,0)),r%wo!==0&&r!==n&&(u-=t.slice(r,l*wo).reduce(Hr,0)),u}var Pd={virtualScrollSliceSize:{type:[Number,String],default:10},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},gu=Object.keys(Pd),ga={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...Pd};function Ki({virtualScrollLength:e,getVirtualScrollTarget:t,getVirtualScrollEl:o,virtualScrollItemSizeComputed:r}){let n=K(),{props:a,emit:l,proxy:u}=n,{$q:c}=u,f,d,p,g=[],m,v=T(0),x=T(0),y=T({}),k=T(null),S=T(null),b=T(null),h=T({from:0,to:0}),_=s(()=>a.tableColspan!==void 0?a.tableColspan:100);r===void 0&&(r=s(()=>a.virtualScrollItemSize));let E=s(()=>r.value+";"+a.virtualScrollHorizontal),L=s(()=>E.value+";"+a.virtualScrollSliceRatioBefore+";"+a.virtualScrollSliceRatioAfter);Y(L,()=>{z()}),Y(E,D);function D(){A(d,!0)}function Z(O){A(O===void 0?d:O)}function B(O,w){let W=t();if(W==null||W.nodeType===8)return;let U=vu(W,o(),k.value,S.value,a.virtualScrollHorizontal,c.lang.rtl,a.virtualScrollStickySizeStart,a.virtualScrollStickySizeEnd);p!==U.scrollViewSize&&z(U.scrollViewSize),$(W,U,Math.min(e.value-1,Math.max(0,parseInt(O,10)||0)),0,Lh.indexOf(w)!==-1?w:d!==-1&&O>d?"end":"start")}function F(){let O=t();if(O==null||O.nodeType===8)return;let w=vu(O,o(),k.value,S.value,a.virtualScrollHorizontal,c.lang.rtl,a.virtualScrollStickySizeStart,a.virtualScrollStickySizeEnd),W=e.value-1,U=w.scrollMaxSize-w.offsetStart-w.offsetEnd-x.value;if(f===w.scrollStart)return;if(w.scrollMaxSize<=0){$(O,w,0,0);return}p!==w.scrollViewSize&&z(w.scrollViewSize),q(h.value.from);let le=Math.floor(w.scrollMaxSize-Math.max(w.scrollViewSize,w.offsetEnd)-Math.min(m[W],w.scrollViewSize/2));if(le>0&&Math.ceil(w.scrollStart)>=le){$(O,w,W,w.scrollMaxSize-w.offsetEnd-g.reduce(Hr,0));return}let M=0,V=w.scrollStart-w.offsetStart,ae=V;if(V<=U&&V+w.scrollViewSize>=v.value)V-=v.value,M=h.value.from,ae=V;else for(let j=0;V>=g[j]&&M0&&M-w.scrollViewSize?(M++,ae=V):ae=m[M]+V;$(O,w,M,ae)}function $(O,w,W,U,le){let M=typeof le=="string"&&le.indexOf("-force")!==-1,V=M===!0?le.replace("-force",""):le,ae=V!==void 0?V:"start",j=Math.max(0,W-y.value[ae]),fe=j+y.value.total;fe>e.value&&(fe=e.value,j=Math.max(0,fe-y.value.total)),f=w.scrollStart;let ke=j!==h.value.from||fe!==h.value.to;if(ke===!1&&V===void 0){Q(W);return}let{activeElement:X}=document,ce=b.value;ke===!0&&ce!==null&&ce!==X&&ce.contains(X)===!0&&(ce.addEventListener("focusout",C),setTimeout(()=>{ce?.removeEventListener("focusout",C)})),Dh(ce,W-j);let ge=V!==void 0?m.slice(j,W).reduce(Hr,0):0;if(ke===!0){let Ce=fe>=h.value.from&&j<=h.value.to?h.value.to:fe;h.value={from:j,to:Ce},v.value=va(g,m,0,j),x.value=va(g,m,fe,e.value),requestAnimationFrame(()=>{h.value.to!==fe&&f===w.scrollStart&&(h.value={from:h.value.from,to:fe},x.value=va(g,m,fe,e.value))})}requestAnimationFrame(()=>{if(f!==w.scrollStart)return;ke===!0&&q(j);let Ce=m.slice(j,W).reduce(Hr,0),Fe=Ce+w.offsetStart+v.value,de=Fe+m[W],Le=Fe+U;if(V!==void 0){let ze=Ce-ge,Ie=w.scrollStart+ze;Le=M!==!0&&Iej.classList&&j.classList.contains("q-virtual-scroll--skip")===!1),U=W.length,le=a.virtualScrollHorizontal===!0?j=>j.getBoundingClientRect().width:j=>j.offsetHeight,M=O,V,ae;for(let j=0;j=U;M--)m[M]=W;let le=Math.floor((e.value-1)/wo);g=[];for(let M=0;M<=le;M++){let V=0,ae=Math.min((M+1)*wo,e.value);for(let j=M*wo;j=0?(q(h.value.from),Be(()=>{B(O)})):ee()}function z(O){if(O===void 0&&typeof window<"u"){let V=t();V!=null&&V.nodeType!==8&&(O=vu(V,o(),k.value,S.value,a.virtualScrollHorizontal,c.lang.rtl,a.virtualScrollStickySizeStart,a.virtualScrollStickySizeEnd).scrollViewSize)}p=O;let w=parseFloat(a.virtualScrollSliceRatioBefore)||0,W=parseFloat(a.virtualScrollSliceRatioAfter)||0,U=1+w+W,le=O===void 0||O<=0?1:Math.ceil(O/r.value),M=Math.max(1,le,Math.ceil((a.virtualScrollSliceSize>0?a.virtualScrollSliceSize:10)/U));y.value={total:Math.ceil(M*U),start:Math.ceil(M*w),center:Math.ceil(M*(.5+w)),end:Math.ceil(M*(1+w)),view:le}}function H(O,w){let W=a.virtualScrollHorizontal===!0?"width":"height",U={["--q-virtual-scroll-item-"+W]:r.value+"px"};return[O==="tbody"?i(O,{class:"q-virtual-scroll__padding",key:"before",ref:k},[i("tr",[i("td",{style:{[W]:`${v.value}px`,...U},colspan:_.value})])]):i(O,{class:"q-virtual-scroll__padding",key:"before",ref:k,style:{[W]:`${v.value}px`,...U}}),i(O,{class:"q-virtual-scroll__content",key:"content",ref:b,tabindex:-1},w.flat()),O==="tbody"?i(O,{class:"q-virtual-scroll__padding",key:"after",ref:S},[i("tr",[i("td",{style:{[W]:`${x.value}px`,...U},colspan:_.value})])]):i(O,{class:"q-virtual-scroll__padding",key:"after",ref:S,style:{[W]:`${x.value}px`,...U}})]}function Q(O){d!==O&&(a.onVirtualScroll!==void 0&&l("virtualScroll",{index:O,from:h.value.from,to:h.value.to-1,direction:O{z()});let ve=!1;return At(()=>{ve=!0}),Ut(()=>{if(ve!==!0)return;let O=t();f!==void 0&&O!==void 0&&O!==null&&O.nodeType!==8?Md(O,f,a.virtualScrollHorizontal,c.lang.rtl):B(d)}),be(()=>{ee.cancel()}),Object.assign(u,{scrollTo:B,reset:D,refresh:Z}),{virtualScrollSliceRange:h,virtualScrollSliceSizeComputed:y,setVirtualScrollSize:z,onVirtualScrollEvt:ee,localResetVirtualScroll:A,padVirtualScroll:H,scrollTo:B,reset:D,refresh:Z}}var Ad=e=>["add","add-unique","toggle"].includes(e),Oh=".*+?^${}()|[]\\",Vh=Object.keys(On);function hu(e,t){if(typeof e=="function")return e;let o=e!==void 0?e:t;return r=>r!==null&&typeof r=="object"&&o in r?r[o]:r}var Wi=P({name:"QSelect",inheritAttrs:!1,props:{...ga,...kt,...On,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],popupNoRouteDismiss:Boolean,useInput:Boolean,useChips:Boolean,newValueMode:{type:String,validator:Ad},mapOptions:Boolean,emitValue:Boolean,disableTabSelection:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:{},transitionHide:{},transitionDuration:{},behavior:{type:String,validator:e=>["default","menu","dialog"].includes(e),default:"default"},virtualScrollItemSize:ga.virtualScrollItemSize.type,onNewValue:Function,onFilter:Function},emits:[...bn,"add","remove","inputValue","keyup","keypress","keydown","popupShow","popupHide","filterAbort"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,a=T(!1),l=T(!1),u=T(-1),c=T(""),f=T(!1),d=T(!1),p=null,g=null,m,v,x,y=null,k,S,b,h,_=T(null),E=T(null),L=T(null),D=T(null),Z=T(null),B=gr(e),F=Li(oe),$=s(()=>Array.isArray(e.options)?e.options.length:0),q=s(()=>e.virtualScrollItemSize===void 0?e.optionsDense===!0?24:48:e.virtualScrollItemSize),{virtualScrollSliceRange:C,virtualScrollSliceSizeComputed:A,localResetVirtualScroll:z,padVirtualScroll:H,onVirtualScrollEvt:Q,scrollTo:ee,setVirtualScrollSize:ve}=Ki({virtualScrollLength:$,getVirtualScrollTarget:jt,getVirtualScrollEl:qt,virtualScrollItemSizeComputed:q}),O=yn(),w=s(()=>{let N=e.mapOptions===!0&&e.multiple!==!0,qe=e.modelValue!==void 0&&(e.modelValue!==null||N===!0)?e.multiple===!0&&Array.isArray(e.modelValue)?e.modelValue:[e.modelValue]:[];if(e.mapOptions===!0&&Array.isArray(e.options)===!0){let Te=e.mapOptions===!0&&m!==void 0?m:[],at=qe.map(yt=>J(yt,Te));return e.modelValue===null&&N===!0?at.filter(yt=>yt!==null):at}return qe}),W=s(()=>{let N={};return Vh.forEach(qe=>{let Te=e[qe];Te!==void 0&&(N[qe]=Te)}),N}),U=s(()=>e.optionsDark===null?O.isDark.value:e.optionsDark),le=s(()=>Qo(w.value)),M=s(()=>{let N="q-field__input q-placeholder col";return e.hideSelected===!0||w.value.length===0?[N,e.inputClass]:(N+=" q-field__input--padding",e.inputClass===void 0?N:[N,e.inputClass])}),V=s(()=>(e.virtualScrollHorizontal===!0?"q-virtual-scroll--horizontal":"")+(e.popupContentClass?" "+e.popupContentClass:"")),ae=s(()=>$.value===0),j=s(()=>w.value.map(N=>ie.value(N)).join(", ")),fe=s(()=>e.displayValue!==void 0?e.displayValue:j.value),ke=s(()=>e.optionsHtml===!0?()=>!0:N=>N?.html===!0),X=s(()=>e.displayValueHtml===!0||e.displayValue===void 0&&(e.optionsHtml===!0||w.value.some(ke.value))),ce=s(()=>O.focused.value===!0?e.tabindex:-1),ge=s(()=>{let N={tabindex:e.tabindex,role:"combobox","aria-label":e.label,"aria-readonly":e.readonly===!0?"true":"false","aria-autocomplete":e.useInput===!0?"list":"none","aria-expanded":a.value===!0?"true":"false","aria-controls":`${O.targetUid.value}_lb`};return u.value>=0&&(N["aria-activedescendant"]=`${O.targetUid.value}_${u.value}`),N}),Ce=s(()=>({id:`${O.targetUid.value}_lb`,role:"listbox","aria-multiselectable":e.multiple===!0?"true":"false"})),Fe=s(()=>w.value.map((N,qe)=>({index:qe,opt:N,html:ke.value(N),selected:!0,removeAtIndex:He,toggleOption:lt,tabindex:ce.value}))),de=s(()=>{if($.value===0)return[];let{from:N,to:qe}=C.value;return e.options.slice(N,qe).map((Te,at)=>{let yt=G.value(Te)===!0,ht=ue(Te)===!0,It=N+at,Et={clickable:!0,active:ht,activeClass:Ie.value,manualFocus:!0,focused:!1,disable:yt,tabindex:-1,dense:e.optionsDense,dark:U.value,role:"option","aria-selected":ht===!0?"true":"false",id:`${O.targetUid.value}_${It}`,onClick:()=>{lt(Te)}};return yt!==!0&&(u.value===It&&(Et.focused=!0),n.platform.is.desktop===!0&&(Et.onMousemove=()=>{a.value===!0&&te(It)})),{index:It,opt:Te,html:ke.value(Te),label:ie.value(Te),selected:Et.active,focused:Et.focused,toggleOption:lt,setOptionIndex:te,itemProps:Et}})}),Le=s(()=>e.dropdownIcon!==void 0?e.dropdownIcon:n.iconSet.arrow.dropdown),ze=s(()=>e.optionsCover===!1&&e.outlined!==!0&&e.standout!==!0&&e.borderless!==!0&&e.rounded!==!0),Ie=s(()=>e.optionsSelectedClass!==void 0?e.optionsSelectedClass:e.color!==void 0?`text-${e.color}`:""),nt=s(()=>hu(e.optionValue,"value")),ie=s(()=>hu(e.optionLabel,"label")),G=s(()=>hu(e.optionDisable,"disable")),me=s(()=>w.value.map(nt.value)),De=s(()=>{let N={onInput:oe,onChange:F,onKeydown:mt,onKeyup:Pe,onKeypress:Je,onFocus:we,onClick(qe){v===!0&&it(qe)}};return N.onCompositionstart=N.onCompositionupdate=N.onCompositionend=F,N});Y(w,N=>{m=N,e.useInput===!0&&e.fillInput===!0&&e.multiple!==!0&&O.innerLoading.value!==!0&&(l.value!==!0&&a.value!==!0||le.value!==!0)&&(x!==!0&&co(),(l.value===!0||a.value===!0)&&$e(""))},{immediate:!0}),Y(()=>e.fillInput,co),Y(a,pl),Y($,uv);function Ue(N){return e.emitValue===!0?nt.value(N):N}function Oe(N){if(N!==-1&&N=e.maxValues)return;let at=e.modelValue.slice();o("add",{index:at.length,value:Te}),at.push(Te),o("update:modelValue",at)}function lt(N,qe){if(O.editable.value!==!0||N===void 0||G.value(N)===!0)return;let Te=nt.value(N);if(e.multiple!==!0){qe!==!0&&(Ee(e.fillInput===!0?ie.value(N):"",!0,!0),ut()),E.value?.focus(),(w.value.length===0||Xt(nt.value(w.value[0]),Te)!==!0)&&o("update:modelValue",e.emitValue===!0?Te:N);return}if((v!==!0||f.value===!0)&&O.focus(),we(),w.value.length===0){let ht=e.emitValue===!0?Te:N;o("add",{index:0,value:ht}),o("update:modelValue",e.multiple===!0?[ht]:ht);return}let at=e.modelValue.slice(),yt=me.value.findIndex(ht=>Xt(ht,Te));if(yt!==-1)o("remove",{index:yt,value:at.splice(yt,1)[0]});else{if(e.maxValues!==void 0&&at.length>=e.maxValues)return;let ht=e.emitValue===!0?Te:N;o("add",{index:at.length,value:ht}),at.push(ht)}o("update:modelValue",at)}function te(N){if(n.platform.is.desktop!==!0)return;let qe=N!==-1&&N<$.value?N:-1;u.value!==qe&&(u.value=qe)}function se(N=1,qe){if(a.value===!0){let Te=u.value;do Te=Cn(Te+N,-1,$.value-1);while(Te!==-1&&Te!==u.value&&G.value(e.options[Te])===!0);u.value!==Te&&(te(Te),ee(Te),qe!==!0&&e.useInput===!0&&e.fillInput===!0&&he(Te>=0?ie.value(e.options[Te]):k,!0))}}function J(N,qe){let Te=at=>Xt(nt.value(at),N);return e.options.find(Te)||qe.find(Te)||N}function ue(N){let qe=nt.value(N);return me.value.find(Te=>Xt(Te,qe))!==void 0}function we(N){e.useInput===!0&&E.value!==null&&(N===void 0||E.value===N.target&&N.target.value===j.value)&&E.value.select()}function Ke(N){Mt(N,27)===!0&&a.value===!0&&(it(N),ut(),co()),o("keyup",N)}function Pe(N){let{value:qe}=N.target;if(N.keyCode!==void 0){Ke(N);return}if(N.target.value="",p!==null&&(clearTimeout(p),p=null),g!==null&&(clearTimeout(g),g=null),co(),typeof qe=="string"&&qe.length!==0){let Te=qe.toLocaleLowerCase(),at=ht=>{let It=e.options.find(Et=>String(ht.value(Et)).toLocaleLowerCase()===Te);return It===void 0?!1:(w.value.indexOf(It)===-1?lt(It):ut(),!0)},yt=ht=>{at(nt)!==!0&&ht!==!0&&at(ie)!==!0&&$e(qe,!0,()=>yt(!0))};yt()}else O.clearValue(N)}function Je(N){o("keypress",N)}function mt(N){if(o("keydown",N),io(N)===!0)return;let qe=c.value.length!==0&&(e.newValueMode!==void 0||e.onNewValue!==void 0),Te=N.shiftKey!==!0&&e.disableTabSelection!==!0&&e.multiple!==!0&&(u.value!==-1||qe===!0);if(N.keyCode===27){gt(N);return}if(N.keyCode===9&&Te===!1){Me();return}if(N.target===void 0||N.target.id!==O.targetUid.value||O.editable.value!==!0)return;if(N.keyCode===40&&O.innerLoading.value!==!0&&a.value===!1){_e(N),Ne();return}if(N.keyCode===8&&(e.useChips===!0||e.clearable===!0)&&e.hideSelected!==!0&&c.value.length===0){e.multiple===!0&&Array.isArray(e.modelValue)===!0?Oe(e.modelValue.length-1):e.multiple!==!0&&e.modelValue!==null&&o("update:modelValue",null);return}(N.keyCode===35||N.keyCode===36)&&(typeof c.value!="string"||c.value.length===0)&&(_e(N),u.value=-1,se(N.keyCode===36?1:-1,e.multiple)),(N.keyCode===33||N.keyCode===34)&&A.value!==void 0&&(_e(N),u.value=Math.max(-1,Math.min($.value,u.value+(N.keyCode===33?-1:1)*A.value.view)),se(N.keyCode===33?1:-1,e.multiple)),(N.keyCode===38||N.keyCode===40)&&(_e(N),se(N.keyCode===38?-1:1,e.multiple));let at=$.value;if((b===void 0||h0&&e.useInput!==!0&&N.key!==void 0&&N.key.length===1&&N.altKey===!1&&N.ctrlKey===!1&&N.metaKey===!1&&(N.keyCode!==32||b.length!==0)){a.value!==!0&&Ne(N);let yt=N.key.toLocaleLowerCase(),ht=b.length===1&&b[0]===yt;h=Date.now()+1500,ht===!1&&(_e(N),b+=yt);let It=new RegExp("^"+b.split("").map(bl=>Oh.indexOf(bl)!==-1?"\\"+bl:bl).join(".*"),"i"),Et=u.value;if(ht===!0||Et<0||It.test(ie.value(e.options[Et]))!==!0)do Et=Cn(Et+1,-1,at-1);while(Et!==u.value&&(G.value(e.options[Et])===!0||It.test(ie.value(e.options[Et]))!==!0));u.value!==Et&&Be(()=>{te(Et),ee(Et),Et>=0&&e.useInput===!0&&e.fillInput===!0&&he(ie.value(e.options[Et]),!0)});return}if(!(N.keyCode!==13&&(N.keyCode!==32||e.useInput===!0||b!=="")&&(N.keyCode!==9||Te===!1))){if(N.keyCode!==9&&_e(N),u.value!==-1&&u.value{if(It){if(Ad(It)!==!0)return}else It=e.newValueMode;if(Ee("",e.multiple!==!0,!0),ht==null)return;(It==="toggle"?lt:dt)(ht,It==="add-unique"),e.multiple!==!0&&(E.value?.focus(),ut())};if(e.onNewValue!==void 0?o("newValue",c.value,yt):yt(c.value),e.multiple!==!0)return}a.value===!0?Me():O.innerLoading.value!==!0&&Ne()}}function qt(){return v===!0?Z.value:L.value!==null&&L.value.contentEl!==null?L.value.contentEl:void 0}function jt(){return qt()}function nn(){return e.hideSelected===!0?[]:t["selected-item"]!==void 0?Fe.value.map(N=>t["selected-item"](N)).slice():t.selected!==void 0?[].concat(t.selected()):e.useChips===!0?Fe.value.map((N,qe)=>i(qr,{key:"option-"+qe,removable:O.editable.value===!0&&G.value(N.opt)!==!0,dense:!0,textColor:e.color,tabindex:ce.value,onRemove(){N.removeAtIndex(qe)}},()=>i("span",{class:"ellipsis",[N.html===!0?"innerHTML":"textContent"]:ie.value(N.opt)}))):[i("span",{class:"ellipsis",[X.value===!0?"innerHTML":"textContent"]:fe.value})]}function ao(){if(ae.value===!0)return t["no-option"]!==void 0?t["no-option"]({inputValue:c.value}):void 0;let N=t.option!==void 0?t.option:Te=>i(No,{key:Te.index,...Te.itemProps},()=>i(ro,()=>i(Ln,()=>i("span",{[Te.html===!0?"innerHTML":"textContent"]:Te.label})))),qe=H("div",de.value.map(N));return t["before-options"]!==void 0&&(qe=t["before-options"]().concat(qe)),Ge(t["after-options"],qe)}function jo(N,qe){let Te=qe===!0?{...ge.value,...O.splitAttrs.attributes.value}:void 0,at={ref:qe===!0?E:void 0,key:"i_t",class:M.value,style:e.inputStyle,value:c.value!==void 0?c.value:"",type:"search",...Te,id:qe===!0?O.targetUid.value:void 0,maxlength:e.maxlength,autocomplete:e.autocomplete,"data-autofocus":N===!0||e.autofocus===!0||void 0,disabled:e.disable===!0,readonly:e.readonly===!0,...De.value};return N!==!0&&v===!0&&(Array.isArray(at.class)===!0?at.class=[...at.class,"no-pointer-events"]:at.class+=" no-pointer-events"),i("input",at)}function oe(N){p!==null&&(clearTimeout(p),p=null),g!==null&&(clearTimeout(g),g=null),!(N&&N.target&&N.target.qComposing===!0)&&(he(N.target.value||""),x=!0,k=c.value,O.focused.value!==!0&&(v!==!0||f.value===!0)&&O.focus(),e.onFilter!==void 0&&(p=setTimeout(()=>{p=null,$e(c.value)},e.inputDebounce)))}function he(N,qe){c.value!==N&&(c.value=N,qe===!0||e.inputDebounce===0||e.inputDebounce==="0"?o("inputValue",N):g=setTimeout(()=>{g=null,o("inputValue",N)},e.inputDebounce))}function Ee(N,qe,Te){x=Te!==!0,e.useInput===!0&&(he(N,!0),(qe===!0||Te!==!0)&&(k=N),qe!==!0&&$e(N))}function $e(N,qe,Te){if(e.onFilter===void 0||qe!==!0&&O.focused.value!==!0)return;O.innerLoading.value===!0?o("filterAbort"):(O.innerLoading.value=!0,d.value=!0),N!==""&&e.multiple!==!0&&w.value.length!==0&&x!==!0&&N===ie.value(w.value[0])&&(N="");let at=setTimeout(()=>{a.value===!0&&(a.value=!1)},10);y!==null&&clearTimeout(y),y=at,o("filter",N,(yt,ht)=>{(qe===!0||O.focused.value===!0)&&y===at&&(clearTimeout(y),typeof yt=="function"&&yt(),d.value=!1,Be(()=>{O.innerLoading.value=!1,O.editable.value===!0&&(qe===!0?a.value===!0&&ut():a.value===!0?pl(!0):a.value=!0),typeof ht=="function"&&Be(()=>{ht(r)}),typeof Te=="function"&&Be(()=>{Te(r)})}))},()=>{O.focused.value===!0&&y===at&&(clearTimeout(y),O.innerLoading.value=!1,d.value=!1),a.value===!0&&(a.value=!1)})}function Xe(){return i(Fo,{ref:L,class:V.value,style:e.popupContentStyle,modelValue:a.value,fit:e.menuShrink!==!0,cover:e.optionsCover===!0&&ae.value!==!0&&e.useInput!==!0,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,dark:U.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,noRouteDismiss:e.popupNoRouteDismiss,square:ze.value,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,separateClosePopup:!0,...Ce.value,onScrollPassive:Q,onBeforeShow:Tu,onBeforeHide:St,onShow:bt},ao)}function St(N){Mu(N),Me()}function bt(){ve()}function R(N){it(N),E.value?.focus(),f.value=!0,window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,0)}function I(N){it(N),Be(()=>{f.value=!1})}function ne(){let N=[i(Pi,{class:`col-auto ${O.fieldClass.value}`,...W.value,for:O.targetUid.value,dark:U.value,square:!0,loading:d.value,itemAligned:!1,filled:!0,stackLabel:c.value.length!==0,...O.splitAttrs.listeners.value,onFocus:R,onBlur:I},{...t,rawControl:()=>O.getControl(!0),before:void 0,after:void 0})];return a.value===!0&&N.push(i("div",{ref:Z,class:V.value+" scroll",style:e.popupContentStyle,...Ce.value,onClick:gt,onScrollPassive:Q},ao())),i(Ho,{ref:D,modelValue:l.value,position:e.useInput===!0?"top":void 0,transitionShow:S,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,noRouteDismiss:e.popupNoRouteDismiss,onBeforeShow:Tu,onBeforeHide:pe,onHide:ye,onShow:ot},()=>i("div",{class:"q-select__dialog"+(U.value===!0?" q-select__dialog--dark q-dark":"")+(f.value===!0?" q-select__dialog--focused":"")},N))}function pe(N){Mu(N),D.value!==null&&D.value.__updateRefocusTarget(O.rootRef.value.querySelector(".q-field__native > [tabindex]:last-child")),O.focused.value=!1}function ye(N){ut(),O.focused.value===!1&&o("blur",N),co()}function ot(){let N=document.activeElement;(N===null||N.id!==O.targetUid.value)&&E.value!==null&&E.value!==N&&E.value.focus(),ve()}function Me(){l.value!==!0&&(u.value=-1,a.value===!0&&(a.value=!1),O.focused.value===!1&&(y!==null&&(clearTimeout(y),y=null),O.innerLoading.value===!0&&(o("filterAbort"),O.innerLoading.value=!1,d.value=!1)))}function Ne(N){O.editable.value===!0&&(v===!0?(O.onControlFocusin(N),l.value=!0,Be(()=>{O.focus()})):O.focus(),e.onFilter!==void 0?$e(c.value):(ae.value!==!0||t["no-option"]!==void 0)&&(a.value=!0))}function ut(){l.value=!1,Me()}function co(){e.useInput===!0&&Ee(e.multiple!==!0&&e.fillInput===!0&&w.value.length!==0&&ie.value(w.value[0])||"",!0,!0)}function pl(N){let qe=-1;if(N===!0){if(w.value.length!==0){let Te=nt.value(w.value[0]);qe=e.options.findIndex(at=>Xt(nt.value(at),Te))}z(qe)}te(qe)}function uv(N,qe){a.value===!0&&O.innerLoading.value===!1&&(z(-1,!0),Be(()=>{a.value===!0&&O.innerLoading.value===!1&&(N>qe?z():pl(!0))}))}function qu(){l.value===!1&&L.value!==null&&L.value.updatePosition()}function Tu(N){N!==void 0&&it(N),o("popupShow",N),O.hasPopupOpen=!0,O.onControlFocusin(N)}function Mu(N){N!==void 0&&it(N),o("popupHide",N),O.hasPopupOpen=!1,O.onControlFocusout(N)}function Ru(){v=n.platform.is.mobile!==!0&&e.behavior!=="dialog"?!1:e.behavior!=="menu"&&(e.useInput===!0?t["no-option"]!==void 0||e.onFilter!==void 0||ae.value===!1:!0),S=n.platform.is.ios===!0&&v===!0&&e.useInput===!0?"fade":e.transitionShow}return Mo(Ru),Eu(qu),Ru(),be(()=>{p!==null&&clearTimeout(p),g!==null&&clearTimeout(g)}),Object.assign(r,{showPopup:Ne,hidePopup:ut,removeAtIndex:Oe,add:dt,toggleOption:lt,getOptionIndex:()=>u.value,setOptionIndex:te,moveOptionSelection:se,filter:$e,updateMenuPosition:qu,updateInputValue:Ee,isOptionSelected:ue,getEmittingOptionValue:Ue,isOptionDisabled:(...N)=>G.value.apply(null,N)===!0,getOptionValue:(...N)=>nt.value.apply(null,N),getOptionLabel:(...N)=>ie.value.apply(null,N)}),Object.assign(O,{innerValue:w,fieldClass:s(()=>`q-select q-field--auto-height q-select--with${e.useInput!==!0?"out":""}-input q-select--with${e.useChips!==!0?"out":""}-chips q-select--${e.multiple===!0?"multiple":"single"}`),inputRef:_,targetRef:E,hasValue:le,showPopup:Ne,floatingLabel:s(()=>e.hideSelected!==!0&&le.value===!0||typeof c.value=="number"||c.value.length!==0||Qo(e.displayValue)),getControlChild:()=>{if(O.editable.value!==!1&&(l.value===!0||ae.value!==!0||t["no-option"]!==void 0))return v===!0?ne():Xe();O.hasPopupOpen===!0&&(O.hasPopupOpen=!1)},controlEvents:{onFocusin(N){O.onControlFocusin(N)},onFocusout(N){O.onControlFocusout(N,()=>{co(),Me()})},onClick(N){if(gt(N),v!==!0&&a.value===!0){Me(),E.value?.focus();return}Ne(N)}},getControl:N=>{let qe=nn(),Te=N===!0||l.value!==!0||v!==!0;if(e.useInput===!0)qe.push(jo(N,Te));else if(O.editable.value===!0){let yt=Te===!0?ge.value:void 0;qe.push(i("input",{ref:Te===!0?E:void 0,key:"d_t",class:"q-select__focus-target",id:Te===!0?O.targetUid.value:void 0,value:fe.value,readonly:!0,"data-autofocus":N===!0||e.autofocus===!0||void 0,...yt,onKeydown:mt,onKeyup:Ke,onKeypress:Je})),Te===!0&&typeof e.autocomplete=="string"&&e.autocomplete.length!==0&&qe.push(i("input",{class:"q-select__autocomplete-input",autocomplete:e.autocomplete,tabindex:-1,onKeyup:Pe}))}if(B.value!==void 0&&e.disable!==!0&&me.value.length!==0){let yt=me.value.map(ht=>i("option",{value:ht,selected:!0}));qe.push(i("select",{class:"hidden",name:B.value,multiple:e.multiple},yt))}let at=e.useInput===!0||Te!==!0?void 0:O.splitAttrs.attributes.value;return i("div",{class:"q-field__native row items-center",...at,...O.splitAttrs.listeners.value},qe)},getInnerAppend:()=>e.loading!==!0&&d.value!==!0&&e.hideDropdownIcon!==!0?[i(Re,{class:"q-select__dropdown-icon"+(a.value===!0?" rotate-180":""),name:Le.value})]:null}),Sn(O)}});var zh=["text","rect","circle","QBtn","QBadge","QChip","QToolbar","QCheckbox","QRadio","QToggle","QSlider","QRange","QInput","QAvatar"],Ih=["wave","pulse","pulse-x","pulse-y","fade","blink","none"],$d=P({name:"QSkeleton",props:{...Se,tag:{type:String,default:"div"},type:{type:String,validator:e=>zh.includes(e),default:"rect"},animation:{type:String,validator:e=>Ih.includes(e),default:"wave"},animationSpeed:{type:[String,Number],default:1500},square:Boolean,bordered:Boolean,size:String,width:String,height:String},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),n=s(()=>{let l=e.size!==void 0?[e.size,e.size]:[e.width,e.height];return{"--q-skeleton-speed":`${e.animationSpeed}ms`,width:l[0],height:l[1]}}),a=s(()=>`q-skeleton q-skeleton--${r.value===!0?"dark":"light"} q-skeleton--type-${e.type}`+(e.animation!=="none"?` q-skeleton--anim q-skeleton--anim-${e.animation}`:"")+(e.square===!0?" q-skeleton--square":"")+(e.bordered===!0?" q-skeleton--bordered":""));return()=>i(e.tag,{class:a.value,style:n.value},re(t.default))}});var Ed=[["left","center","start","width"],["right","center","end","width"],["top","start","center","height"],["bottom","end","center","height"]],Bd=P({name:"QSlideItem",props:{...Se,leftColor:String,rightColor:String,topColor:String,bottomColor:String,onSlide:Function},emits:["action","top","right","bottom","left"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,a=xe(e,n),{getCache:l}=xo(),u=T(null),c=null,f={},d={},p={},g=s(()=>n.lang.rtl===!0?{left:"right",right:"left"}:{left:"left",right:"right"}),m=s(()=>"q-slide-item q-item-type overflow-hidden"+(a.value===!0?" q-slide-item--dark q-dark":""));function v(){u.value.style.transform="translate(0,0)"}function x(k,S,b){e.onSlide!==void 0&&o("slide",{side:k,ratio:S,isReset:b})}function y(k){let S=u.value;if(k.isFirst)f={dir:null,size:{left:0,right:0,top:0,bottom:0},scale:0},S.classList.add("no-transition"),Ed.forEach(E=>{if(t[E[0]]!==void 0){let L=p[E[0]];L.style.transform="scale(1)",f.size[E[0]]=L.getBoundingClientRect()[E[3]]}}),f.axis=k.direction==="up"||k.direction==="down"?"Y":"X";else if(k.isFinal){S.classList.remove("no-transition"),f.scale===1?(S.style.transform=`translate${f.axis}(${f.dir*100}%)`,c!==null&&clearTimeout(c),c=setTimeout(()=>{c=null,o(f.showing,{reset:v}),o("action",{side:f.showing,reset:v})},230)):(S.style.transform="translate(0,0)",x(f.showing,0,!0));return}else k.direction=f.axis==="X"?k.offset.x<0?"left":"right":k.offset.y<0?"up":"down";if(t.left===void 0&&k.direction===g.value.right||t.right===void 0&&k.direction===g.value.left||t.top===void 0&&k.direction==="down"||t.bottom===void 0&&k.direction==="up"){S.style.transform="translate(0,0)";return}let b,h,_;f.axis==="X"?(h=k.direction==="left"?-1:1,b=h===1?g.value.left:g.value.right,_=k.distance.x):(h=k.direction==="up"?-2:2,b=h===2?"top":"bottom",_=k.distance.y),!(f.dir!==null&&Math.abs(h)!==Math.abs(f.dir))&&(f.dir!==h&&(["left","right","top","bottom"].forEach(E=>{d[E]&&(d[E].style.visibility=b===E?"visible":"hidden")}),f.showing=b,f.dir=h),f.scale=Math.max(0,Math.min(1,(_-40)/f.size[b])),S.style.transform=`translate${f.axis}(${_*h/Math.abs(h)}px)`,p[b].style.transform=`scale(${f.scale})`,x(b,f.scale,!1))}return Mo(()=>{d={},p={}}),be(()=>{c!==null&&clearTimeout(c)}),Object.assign(r,{reset:v}),()=>{let k=[],S={left:t[g.value.right]!==void 0,right:t[g.value.left]!==void 0,up:t.bottom!==void 0,down:t.top!==void 0},b=Object.keys(S).filter(_=>S[_]===!0);Ed.forEach(_=>{let E=_[0];t[E]!==void 0&&k.push(i("div",{key:E,ref:L=>{d[E]=L},class:`q-slide-item__${E} absolute-full row no-wrap items-${_[1]} justify-${_[2]}`+(e[E+"Color"]!==void 0?` bg-${e[E+"Color"]}`:"")},[i("div",{ref:L=>{p[E]=L}},t[E]())]))});let h=i("div",{key:`${b.length===0?"only-":""} content`,ref:u,class:"q-slide-item__content"},re(t.default));return b.length===0?k.push(h):k.push(Bt(h,l("dir#"+b.join(""),()=>{let _={prevent:!0,stop:!0,mouse:!0};return b.forEach(E=>{_[E]=!0}),[[Pt,y,void 0,_]]}))),i("div",{class:m.value},k)}}});var Fd=P({name:"QSpace",setup(){let e=i("div",{class:"q-space"});return()=>e}});var Hh='',Ld=P({name:"QSpinnerAudio",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 55 80",xmlns:"http://www.w3.org/2000/svg",innerHTML:Hh})}});var Nh='',Dd=P({name:"QSpinnerBall",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 57 57",xmlns:"http://www.w3.org/2000/svg",innerHTML:Nh})}});var Qh='',Od=P({name:"QSpinnerBars",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 135 140",xmlns:"http://www.w3.org/2000/svg",innerHTML:Qh})}});var jh='',Vd=P({name:"QSpinnerBox",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:jh})}});var Uh='',zd=P({name:"QSpinnerClock",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:Uh})}});var Kh='',Id=P({name:"QSpinnerComment",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:Kh})}});var Wh='',Hd=P({name:"QSpinnerCube",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:Wh})}});var Yh='',Nd=P({name:"QSpinnerDots",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 120 30",xmlns:"http://www.w3.org/2000/svg",innerHTML:Yh})}});var Xh='',Qd=P({name:"QSpinnerFacebook",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",innerHTML:Xh})}});var Gh='',jd=P({name:"QSpinnerGears",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:Gh})}});var Zh='',Ud=P({name:"QSpinnerGrid",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 105 105",xmlns:"http://www.w3.org/2000/svg",innerHTML:Zh})}});var Jh='',Kd=P({name:"QSpinnerHearts",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 140 64",xmlns:"http://www.w3.org/2000/svg",innerHTML:Jh})}});var ep='',Wd=P({name:"QSpinnerHourglass",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:ep})}});var tp='',Yd=P({name:"QSpinnerInfinity",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",innerHTML:tp})}});var op='',Xd=P({name:"QSpinnerIos",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,stroke:"currentColor",fill:"currentColor",viewBox:"0 0 64 64",innerHTML:op})}});var np='',Gd=P({name:"QSpinnerOrbit",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:np})}});var rp='',Zd=P({name:"QSpinnerOval",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",innerHTML:rp})}});var ap='',Jd=P({name:"QSpinnerPie",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:ap})}});var ip='',ef=P({name:"QSpinnerPuff",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg",innerHTML:ip})}});var lp='',tf=P({name:"QSpinnerRadio",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",xmlns:"http://www.w3.org/2000/svg",innerHTML:lp})}});var up='',of=P({name:"QSpinnerRings",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,stroke:"currentColor",width:t.value,height:t.value,viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",innerHTML:up})}});var sp='',nf=P({name:"QSpinnerTail",props:We,setup(e){let{cSize:t,classes:o}=je(e);return()=>i("svg",{class:o.value,width:t.value,height:t.value,viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",innerHTML:sp})}});var rf=P({name:"QSplitter",props:{...Se,modelValue:{type:Number,required:!0},reverse:Boolean,unit:{type:String,default:"%",validator:e=>["%","px"].includes(e)},limits:{type:Array,validator:e=>e.length!==2||typeof e[0]!="number"||typeof e[1]!="number"?!1:e[0]>=0&&e[0]<=e[1]},emitImmediately:Boolean,horizontal:Boolean,disable:Boolean,beforeClass:[Array,String,Object],afterClass:[Array,String,Object],separatorClass:[Array,String,Object],separatorStyle:[Array,String,Object]},emits:["update:modelValue"],setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=xe(e,r),a=T(null),l={before:T(null),after:T(null)},u=s(()=>`q-splitter no-wrap ${e.horizontal===!0?"q-splitter--horizontal column":"q-splitter--vertical row"} q-splitter--${e.disable===!0?"disabled":"workable"}`+(n.value===!0?" q-splitter--dark":"")),c=s(()=>e.horizontal===!0?"height":"width"),f=s(()=>e.reverse!==!0?"before":"after"),d=s(()=>e.limits!==void 0?e.limits:e.unit==="%"?[10,90]:[50,1/0]);function p(_){return(e.unit==="%"?_:Math.round(_))+e.unit}let g=s(()=>({[f.value]:{[c.value]:p(e.modelValue)}})),m,v,x,y,k;function S(_){if(_.isFirst===!0){let L=a.value.getBoundingClientRect()[c.value];m=e.horizontal===!0?"up":"left",v=e.unit==="%"?100:L,x=Math.min(v,d.value[1],Math.max(d.value[0],e.modelValue)),y=(e.reverse!==!0?1:-1)*(e.horizontal===!0?1:r.lang.rtl===!0?-1:1)*(e.unit==="%"?L===0?0:100/L:1),a.value.classList.add("q-splitter--active");return}if(_.isFinal===!0){k!==e.modelValue&&o("update:modelValue",k),a.value.classList.remove("q-splitter--active");return}let E=x+y*(_.direction===m?-1:1)*_.distance[e.horizontal===!0?"y":"x"];k=Math.min(v,d.value[1],Math.max(d.value[0],E)),l[f.value].value.style[c.value]=p(k),e.emitImmediately===!0&&e.modelValue!==k&&o("update:modelValue",k)}let b=s(()=>[[Pt,S,void 0,{[e.horizontal===!0?"vertical":"horizontal"]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function h(_,E){_E[1]&&o("update:modelValue",E[1])}return Y(()=>e.modelValue,_=>{h(_,d.value)}),Y(()=>e.limits,()=>{Be(()=>{h(e.modelValue,d.value)})}),()=>{let _=[i("div",{ref:l.before,class:["q-splitter__panel q-splitter__before"+(e.reverse===!0?" col":""),e.beforeClass],style:g.value.before},re(t.before)),i("div",{class:["q-splitter__separator",e.separatorClass],style:e.separatorStyle,"aria-disabled":e.disable===!0?"true":void 0},[Rt("div",{class:"q-splitter__separator-area absolute-full"},re(t.separator),"sep",e.disable!==!0,()=>b.value)]),i("div",{ref:l.after,class:["q-splitter__panel q-splitter__after"+(e.reverse===!0?"":" col"),e.afterClass],style:g.value.after},re(t.after))];return i("div",{class:u.value,ref:a},Ge(t.default,_))}}});var Yi=P({name:"StepHeader",props:{stepper:{},step:{},goToPanel:Function},setup(e,{attrs:t}){let{proxy:{$q:o}}=K(),r=T(null),n=s(()=>e.stepper.modelValue===e.step.name),a=s(()=>{let y=e.step.disable;return y===!0||y===""}),l=s(()=>{let y=e.step.error;return y===!0||y===""}),u=s(()=>{let y=e.step.done;return a.value===!1&&(y===!0||y==="")}),c=s(()=>{let y=e.step.headerNav,k=y===!0||y===""||y===void 0;return a.value===!1&&e.stepper.headerNav&&k}),f=s(()=>e.step.prefix&&(n.value===!1||e.stepper.activeIcon==="none")&&(l.value===!1||e.stepper.errorIcon==="none")&&(u.value===!1||e.stepper.doneIcon==="none")),d=s(()=>{let y=e.step.icon||e.stepper.inactiveIcon;if(n.value===!0){let k=e.step.activeIcon||e.stepper.activeIcon;return k==="none"?y:k||o.iconSet.stepper.active}if(l.value===!0){let k=e.step.errorIcon||e.stepper.errorIcon;return k==="none"?y:k||o.iconSet.stepper.error}if(a.value===!1&&u.value===!0){let k=e.step.doneIcon||e.stepper.doneIcon;return k==="none"?y:k||o.iconSet.stepper.done}return y}),p=s(()=>{let y=l.value===!0?e.step.errorColor||e.stepper.errorColor:void 0;if(n.value===!0){let k=e.step.activeColor||e.stepper.activeColor||e.step.color;return k!==void 0?k:y}return y!==void 0?y:a.value===!1&&u.value===!0?e.step.doneColor||e.stepper.doneColor||e.step.color||e.stepper.inactiveColor:e.step.color||e.stepper.inactiveColor}),g=s(()=>"q-stepper__tab col-grow flex items-center no-wrap relative-position"+(p.value!==void 0?` text-${p.value}`:"")+(l.value===!0?" q-stepper__tab--error q-stepper__tab--error-with-"+(f.value===!0?"prefix":"icon"):"")+(n.value===!0?" q-stepper__tab--active":"")+(u.value===!0?" q-stepper__tab--done":"")+(c.value===!0?" q-stepper__tab--navigation q-focusable q-hoverable":"")+(a.value===!0?" q-stepper__tab--disabled":"")),m=s(()=>e.stepper.headerNav!==!0?!1:c.value);function v(){r.value?.focus(),n.value===!1&&e.goToPanel(e.step.name)}function x(y){y.keyCode===13&&n.value===!1&&e.goToPanel(e.step.name)}return()=>{let y={class:g.value};c.value===!0&&(y.onClick=v,y.onKeyup=x,Object.assign(y,a.value===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:t.tabindex||0}));let k=[i("div",{class:"q-focus-helper",tabindex:-1,ref:r}),i("div",{class:"q-stepper__dot row flex-center q-stepper__line relative-position"},[i("span",{class:"row flex-center"},[f.value===!0?e.step.prefix:i(Re,{name:d.value})])])];if(e.step.title!==void 0&&e.step.title!==null){let S=[i("div",{class:"q-stepper__title"},e.step.title)];e.step.caption!==void 0&&e.step.caption!==null&&S.push(i("div",{class:"q-stepper__caption"},e.step.caption)),k.push(i("div",{class:"q-stepper__label q-stepper__line relative-position"},S))}return Bt(i("div",y,k),[[$o,m.value]])}}});function lf(e){return i("div",{class:"q-stepper__step-content"},[i("div",{class:"q-stepper__step-inner"},re(e.default))])}var af={setup(e,{slots:t}){return()=>lf(t)}},uf=P({name:"QStep",props:{...yr,icon:String,color:String,title:{type:String,required:!0},caption:String,prefix:[String,Number],doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String,headerNav:{type:Boolean,default:!0},done:Boolean,error:Boolean,onScroll:[Function,Array]},setup(e,{slots:t,emit:o}){let{proxy:{$q:r}}=K(),n=pt(Pa,Ze);if(n===Ze)return console.error("QStep needs to be a child of QStepper"),Ze;let{getCache:a}=xo(),l=T(null),u=s(()=>n.value.modelValue===e.name),c=s(()=>r.platform.is.ios!==!0&&r.platform.is.chrome===!0||u.value!==!0||n.value.vertical!==!0?{}:{onScroll(p){let{target:g}=p;g.scrollTop>0&&(g.scrollTop=0),e.onScroll!==void 0&&o("scroll",p)}}),f=s(()=>typeof e.name=="string"||typeof e.name=="number"?e.name:String(e.name));function d(){let p=n.value.vertical;return p===!0&&n.value.keepAlive===!0?i(wa,n.value.keepAliveProps.value,u.value===!0?[i(n.value.needsUniqueKeepAliveWrapper.value===!0?a(f.value,()=>({...af,name:f.value})):af,{key:f.value},t.default)]:void 0):p!==!0||u.value===!0?lf(t):void 0}return()=>i("div",{ref:l,class:"q-stepper__step",role:"tabpanel",...c.value},n.value.vertical===!0?[i(Yi,{stepper:n.value,step:e,goToPanel:n.value.goToPanel}),n.value.animated===!0?i(pn,d):d()]:[d()])}});var cp=/(-\w)/g;function dp(e){let t={};for(let o in e){let r=o.replace(cp,n=>n[1].toUpperCase());t[r]=e[o]}return t}var sf=P({name:"QStepper",props:{...Se,...Sr,flat:Boolean,bordered:Boolean,alternativeLabels:Boolean,headerNav:Boolean,contracted:Boolean,headerClass:String,inactiveColor:String,inactiveIcon:String,doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String},emits:xr,setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q),{updatePanelsList:n,isValidPanelName:a,updatePanelIndex:l,getPanelContent:u,getPanels:c,panelDirectives:f,goToPanel:d,keepAliveProps:p,needsUniqueKeepAliveWrapper:g}=_r();Kt(Pa,s(()=>({goToPanel:d,keepAliveProps:p,needsUniqueKeepAliveWrapper:g,...e})));let m=s(()=>`q-stepper q-stepper--${e.vertical===!0?"vertical":"horizontal"}`+(e.flat===!0?" q-stepper--flat":"")+(e.bordered===!0?" q-stepper--bordered":"")+(r.value===!0?" q-stepper--dark q-dark":"")),v=s(()=>`q-stepper__header row items-stretch justify-between q-stepper__header--${e.alternativeLabels===!0?"alternative":"standard"}-labels`+(e.flat===!1||e.bordered===!0?" q-stepper__header--border":"")+(e.contracted===!0?" q-stepper__header--contracted":"")+(e.headerClass!==void 0?` ${e.headerClass}`:""));function x(){let y=re(t.message,[]);if(e.vertical===!0){a(e.modelValue)&&l();let k=i("div",{class:"q-stepper__content"},re(t.default));return y===void 0?[k]:y.concat(k)}return[i("div",{class:v.value},c().map(k=>{let S=dp(k.props);return i(Yi,{key:S.name,stepper:e,step:S,goToPanel:d})})),y,Rt("div",{class:"q-stepper__content q-panel-parent"},u(),"cont",e.swipeable,()=>f.value)]}return()=>(n(t),i("div",{class:m.value},Ge(t.navigation,x())))}});var cf=P({name:"QStepperNavigation",setup(e,{slots:t}){return()=>i("div",{class:"q-stepper__nav"},re(t.default))}});var Xi=P({name:"QTh",props:{props:Object,autoWidth:Boolean},emits:["click"],setup(e,{slots:t,emit:o}){let r=K(),{proxy:{$q:n}}=r,a=l=>{o("click",l)};return()=>{if(e.props===void 0)return i("th",{class:e.autoWidth===!0?"q-table--col-auto-width":"",onClick:a},re(t.default));let l,u,c=r.vnode.key;if(c){if(l=e.props.colsMap[c],l===void 0)return}else l=e.props.col;if(l.sortable===!0){let d=l.align==="right"?"unshift":"push";u=Po(t.default,[]),u[d](i(Re,{class:l.__iconClass,name:n.iconSet.table.arrowUp}))}else u=re(t.default);let f={class:l.__thClass+(e.autoWidth===!0?" q-table--col-auto-width":""),style:l.headerStyle,onClick:d=>{l.sortable===!0&&e.props.sort(l),a(d)}};return i("th",f,u)}}});function Gi(e,t){return i("div",e,[i("table",{class:"q-table"},t)])}var fp={list:Oi,table:Vi},mp=["list","table","__qtable"],Zi=P({name:"QVirtualScroll",props:{...ga,type:{type:String,default:"list",validator:e=>mp.includes(e)},items:{type:Array,default:()=>[]},itemsFn:Function,itemsSize:Number,scrollTarget:to},setup(e,{slots:t,attrs:o}){let r,n=T(null),a=s(()=>e.itemsSize>=0&&e.itemsFn!==void 0?parseInt(e.itemsSize,10):Array.isArray(e.items)?e.items.length:0),{virtualScrollSliceRange:l,localResetVirtualScroll:u,padVirtualScroll:c,onVirtualScrollEvt:f}=Ki({virtualScrollLength:a,getVirtualScrollTarget:v,getVirtualScrollEl:m}),d=s(()=>{if(a.value===0)return[];let S=(b,h)=>({index:l.value.from+h,item:b});return e.itemsFn===void 0?e.items.slice(l.value.from,l.value.to).map(S):e.itemsFn(l.value.from,l.value.to-l.value.from).map(S)}),p=s(()=>"q-virtual-scroll q-virtual-scroll"+(e.virtualScrollHorizontal===!0?"--horizontal":"--vertical")+(e.scrollTarget!==void 0?"":" scroll")),g=s(()=>e.scrollTarget!==void 0?{}:{tabindex:0});Y(a,()=>{u()}),Y(()=>e.scrollTarget,()=>{y(),x()});function m(){return n.value.$el||n.value}function v(){return r}function x(){r=Ft(m(),e.scrollTarget),r.addEventListener("scroll",f,et.passive)}function y(){r!==void 0&&(r.removeEventListener("scroll",f,et.passive),r=void 0)}function k(){let S=c(e.type==="list"?"div":"tbody",d.value.map(t.default));return t.before!==void 0&&(S=t.before().concat(S)),Ge(t.after,S)}return Hn(()=>{u()}),Qe(()=>{x()}),Ut(()=>{x()}),At(()=>{y()}),be(()=>{y()}),()=>{if(t.default===void 0){console.error("QVirtualScroll: default scoped slot is required for rendering");return}return e.type==="__qtable"?Gi({ref:n,class:"q-table__middle "+p.value},k()):i(fp[e.type],{...o,ref:n,class:[o.class,p.value],...g.value},k)}}});function df(e,t){return new Date(e)-new Date(t)}var ff={sortMethod:Function,binaryStateSort:Boolean,columnSortOrder:{type:String,validator:e=>e==="ad"||e==="da",default:"ad"}};function mf(e,t,o,r){let n=s(()=>{let{sortBy:u}=t.value;return u&&o.value.find(c=>c.name===u)||null}),a=s(()=>e.sortMethod!==void 0?e.sortMethod:(u,c,f)=>{let d=o.value.find(m=>m.name===c);if(d===void 0||d.field===void 0)return u;let p=f===!0?-1:1,g=typeof d.field=="function"?m=>d.field(m):m=>m[d.field];return u.sort((m,v)=>{let x=g(m),y=g(v);return d.rawSort!==void 0?d.rawSort(x,y,m,v)*p:x==null?-1*p:y==null?1*p:d.sort!==void 0?d.sort(x,y,m,v)*p:mo(x)===!0&&mo(y)===!0?(x-y)*p:Go(x)===!0&&Go(y)===!0?df(x,y)*p:typeof x=="boolean"&&typeof y=="boolean"?(x-y)*p:([x,y]=[x,y].map(k=>(k+"").toLocaleString().toLowerCase()),xg.name===u);p?.sortOrder&&(c=p.sortOrder)}let{sortBy:f,descending:d}=t.value;f!==u?(f=u,d=c==="da"):e.binaryStateSort===!0?d=!d:d===!0?c==="ad"?f=null:d=!1:c==="ad"?d=!0:f=null,r({sortBy:f,descending:d,page:1})}return{columnToSort:n,computedSortMethod:a,sort:l}}var vf={filter:[String,Object],filterMethod:Function};function gf(e,t){let o=s(()=>e.filterMethod!==void 0?e.filterMethod:(r,n,a,l)=>{let u=n?n.toLowerCase():"";return r.filter(c=>a.some(f=>{let d=l(f,c)+"";return(d==="undefined"||d==="null"?"":d.toLowerCase()).indexOf(u)!==-1}))});return Y(()=>e.filter,()=>{Be(()=>{t({page:1},!0)})},{deep:!0}),{computedFilterMethod:o}}function vp(e,t){for(let o in t)if(t[o]!==e[o])return!1;return!0}function hf(e){return e.page<1&&(e.page=1),e.rowsPerPage!==void 0&&e.rowsPerPage<1&&(e.rowsPerPage=0),e}var pf={pagination:Object,rowsPerPageOptions:{type:Array,default:()=>[5,7,10,15,20,25,50,0]},"onUpdate:pagination":[Function,Array]};function bf(e,t){let{props:o,emit:r}=e,n=T(Object.assign({sortBy:null,descending:!1,page:1,rowsPerPage:o.rowsPerPageOptions.length!==0?o.rowsPerPageOptions[0]:5},o.pagination)),a=s(()=>{let d=o["onUpdate:pagination"]!==void 0?{...n.value,...o.pagination}:n.value;return hf(d)}),l=s(()=>a.value.rowsNumber!==void 0);function u(d){c({pagination:d,filter:o.filter})}function c(d={}){Be(()=>{r("request",{pagination:d.pagination||a.value,filter:d.filter||o.filter,getCellValue:t})})}function f(d,p){let g=hf({...a.value,...d});if(vp(a.value,g)===!0){l.value===!0&&p===!0&&u(g);return}if(l.value===!0){u(g);return}o.pagination!==void 0&&o["onUpdate:pagination"]!==void 0?r("update:pagination",g):n.value=g}return{innerPagination:n,computedPagination:a,isServerSide:l,requestServerInteraction:c,setPagination:f}}function yf(e,t,o,r,n,a){let{props:l,emit:u,proxy:{$q:c}}=e,f=s(()=>r.value===!0?o.value.rowsNumber||0:a.value),d=s(()=>{let{page:h,rowsPerPage:_}=o.value;return(h-1)*_}),p=s(()=>{let{page:h,rowsPerPage:_}=o.value;return h*_}),g=s(()=>o.value.page===1),m=s(()=>o.value.rowsPerPage===0?1:Math.max(1,Math.ceil(f.value/o.value.rowsPerPage))),v=s(()=>p.value===0?!0:o.value.page>=m.value),x=s(()=>(l.rowsPerPageOptions.includes(t.value.rowsPerPage)?l.rowsPerPageOptions:[t.value.rowsPerPage].concat(l.rowsPerPageOptions)).map(_=>({label:_===0?c.lang.table.allRows:""+_,value:_})));Y(m,(h,_)=>{if(h===_)return;let E=o.value.page;h&&!E?n({page:1}):h1&&n({page:h-1})}function S(){let{page:h,rowsPerPage:_}=o.value;p.value>0&&h*_["single","multiple","none"].includes(e)},selected:{type:Array,default:()=>[]}},xf=["update:selected","selection"];function _f(e,t,o,r){let n=s(()=>{let v={};return e.selected.map(r.value).forEach(x=>{v[x]=!0}),v}),a=s(()=>e.selection!=="none"),l=s(()=>e.selection==="single"),u=s(()=>e.selection==="multiple"),c=s(()=>o.value.length!==0&&o.value.every(v=>n.value[r.value(v)]===!0)),f=s(()=>c.value!==!0&&o.value.some(v=>n.value[r.value(v)]===!0)),d=s(()=>e.selected.length);function p(v){return n.value[v]===!0}function g(){t("update:selected",[])}function m(v,x,y,k){t("selection",{rows:x,added:y,keys:v,evt:k});let S=l.value===!0?y===!0?x:[]:y===!0?e.selected.concat(x):e.selected.filter(b=>v.includes(r.value(b))===!1);t("update:selected",S)}return{hasSelectionMode:a,singleSelection:l,multipleSelection:u,allRowsSelected:c,someRowsSelected:f,rowsSelectedNumber:d,isRowSelected:p,clearSelection:g,updateSelection:m}}function Cf(e){return Array.isArray(e)?e.slice():[]}var wf={expanded:Array},kf=["update:expanded"];function qf(e,t){let o=T(Cf(e.expanded));Y(()=>e.expanded,l=>{o.value=Cf(l)});function r(l){return o.value.includes(l)}function n(l){e.expanded!==void 0?t("update:expanded",l):o.value=l}function a(l,u){let c=o.value.slice(),f=c.indexOf(l);u===!0?f===-1&&(c.push(l),n(c)):f!==-1&&(c.splice(f,1),n(c))}return{isRowExpanded:r,setExpanded:n,updateExpanded:a}}var Tf={visibleColumns:Array};function Mf(e,t,o){let r=s(()=>{if(e.columns!==void 0)return e.columns;let u=e.rows[0];return u!==void 0?Object.keys(u).map(c=>({name:c,label:c.toUpperCase(),field:c,align:mo(u[c])?"right":"left",sortable:!0})):[]}),n=s(()=>{let{sortBy:u,descending:c}=t.value;return(e.visibleColumns!==void 0?r.value.filter(d=>d.required===!0||e.visibleColumns.includes(d.name)===!0):r.value).map(d=>{let p=d.align||"right",g=`text-${p}`;return{...d,align:p,__iconClass:`q-table__sort-icon q-table__sort-icon--${p}`,__thClass:g+(d.headerClasses!==void 0?" "+d.headerClasses:"")+(d.sortable===!0?" sortable":"")+(d.name===u?` sorted ${c===!0?"sort-desc":""}`:""),__tdStyle:d.style!==void 0?typeof d.style!="function"?()=>d.style:d.style:()=>null,__tdClass:d.classes!==void 0?typeof d.classes!="function"?()=>g+" "+d.classes:m=>g+" "+d.classes(m):()=>g}})}),a=s(()=>{let u={};return n.value.forEach(c=>{u[c.name]=c}),u}),l=s(()=>e.tableColspan!==void 0?e.tableColspan:n.value.length+(o.value===!0?1:0));return{colList:r,computedCols:n,computedColsMap:a,computedColspan:l}}var Ji="q-table__bottom row items-center",Rf={};gu.forEach(e=>{Rf[e]={}});var Pf=P({name:"QTable",props:{rows:{type:Array,required:!0},rowKey:{type:[String,Function],default:"id"},columns:Array,loading:Boolean,iconFirstPage:String,iconPrevPage:String,iconNextPage:String,iconLastPage:String,title:String,hideHeader:Boolean,grid:Boolean,gridHeader:Boolean,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,separator:{type:String,default:"horizontal",validator:e=>["horizontal","vertical","cell","none"].includes(e)},wrapCells:Boolean,virtualScroll:Boolean,virtualScrollTarget:{},...Rf,noDataLabel:String,noResultsLabel:String,loadingLabel:String,selectedRowsLabel:Function,rowsPerPageLabel:String,paginationLabel:Function,color:{type:String,default:"grey-8"},titleClass:[String,Array,Object],tableStyle:[String,Array,Object],tableClass:[String,Array,Object],tableHeaderStyle:[String,Array,Object],tableHeaderClass:[String,Array,Object],tableRowStyleFn:Function,tableRowClassFn:Function,cardContainerClass:[String,Array,Object],cardContainerStyle:[String,Array,Object],cardStyle:[String,Array,Object],cardClass:[String,Array,Object],cardStyleFn:Function,cardClassFn:Function,hideBottom:Boolean,hideSelectedBanner:Boolean,hideNoData:Boolean,hidePagination:Boolean,onRowClick:Function,onRowDblclick:Function,onRowContextmenu:Function,...Se,...Cr,...Tf,...vf,...pf,...wf,...Sf,...ff},emits:["request","virtualScroll",...wr,...kf,...xf],setup(e,{slots:t,emit:o}){let r=K(),{proxy:{$q:n}}=r,a=xe(e,n),{inFullscreen:l,toggleFullscreen:u}=kr(),c=s(()=>typeof e.rowKey=="function"?e.rowKey:oe=>oe[e.rowKey]),f=T(null),d=T(null),p=s(()=>e.grid!==!0&&e.virtualScroll===!0),g=s(()=>" q-table__card"+(a.value===!0?" q-table__card--dark q-dark":"")+(e.square===!0?" q-table--square":"")+(e.flat===!0?" q-table--flat":"")+(e.bordered===!0?" q-table--bordered":"")),m=s(()=>`q-table__container q-table--${e.separator}-separator column no-wrap`+(e.grid===!0?" q-table--grid":g.value)+(a.value===!0?" q-table--dark":"")+(e.dense===!0?" q-table--dense":"")+(e.wrapCells===!1?" q-table--no-wrap":"")+(l.value===!0?" fullscreen scroll":"")),v=s(()=>m.value+(e.loading===!0?" q-table--loading":""));Y(()=>e.tableStyle+e.tableClass+e.tableHeaderStyle+e.tableHeaderClass+m.value,()=>{p.value===!0&&d.value?.reset()});let{innerPagination:x,computedPagination:y,isServerSide:k,requestServerInteraction:S,setPagination:b}=bf(r,te),{computedFilterMethod:h}=gf(e,b),{isRowExpanded:_,setExpanded:E,updateExpanded:L}=qf(e,o),D=s(()=>{let oe=e.rows;if(k.value===!0||oe.length===0)return oe;let{sortBy:he,descending:Ee}=y.value;return e.filter&&(oe=h.value(oe,e.filter,O.value,te)),U.value!==null&&(oe=le.value(e.rows===oe?oe.slice():oe,he,Ee)),oe}),Z=s(()=>D.value.length),B=s(()=>{let oe=D.value;if(k.value===!0)return oe;let{rowsPerPage:he}=y.value;return he!==0&&(V.value===0&&e.rows!==oe?oe.length>ae.value&&(oe=oe.slice(0,ae.value)):oe=oe.slice(V.value,ae.value)),oe}),{hasSelectionMode:F,singleSelection:$,multipleSelection:q,allRowsSelected:C,someRowsSelected:A,rowsSelectedNumber:z,isRowSelected:H,clearSelection:Q,updateSelection:ee}=_f(e,o,B,c),{colList:ve,computedCols:O,computedColsMap:w,computedColspan:W}=Mf(e,y,F),{columnToSort:U,computedSortMethod:le,sort:M}=mf(e,y,ve,b),{firstRowIndex:V,lastRowIndex:ae,isFirstPage:j,isLastPage:fe,pagesNumber:ke,computedRowsPerPageOptions:X,computedRowsNumber:ce,firstPage:ge,prevPage:Ce,nextPage:Fe,lastPage:de}=yf(r,x,y,k,b,Z),Le=s(()=>B.value.length===0),ze=s(()=>{let oe={};return gu.forEach(he=>{oe[he]=e[he]}),oe.virtualScrollItemSize===void 0&&(oe.virtualScrollItemSize=e.dense===!0?28:48),oe});function Ie(){p.value===!0&&d.value.reset()}function nt(){if(e.grid===!0)return jo();let oe=e.hideHeader!==!0?we:null;if(p.value===!0){let Ee=t["top-row"],$e=t["bottom-row"],Xe={default:St=>De(St.item,t.body,St.index)};if(Ee!==void 0){let St=i("tbody",Ee({cols:O.value}));Xe.before=oe===null?()=>St:()=>[oe()].concat(St)}else oe!==null&&(Xe.before=oe);return $e!==void 0&&(Xe.after=()=>i("tbody",$e({cols:O.value}))),i(Zi,{ref:d,class:e.tableClass,style:e.tableStyle,...ze.value,scrollTarget:e.virtualScrollTarget,items:B.value,type:"__qtable",tableColspan:W.value,onVirtualScroll:G},Xe)}let he=[Ue()];return oe!==null&&he.unshift(oe()),Gi({class:["q-table__middle scroll",e.tableClass],style:e.tableStyle},he)}function ie(oe,he){if(d.value!==null){d.value.scrollTo(oe,he);return}oe=parseInt(oe,10);let Ee=f.value.querySelector(`tbody tr:nth-of-type(${oe+1})`);if(Ee!==null){let $e=f.value.querySelector(".q-table__middle.scroll"),Xe=Ee.offsetTop-e.virtualScrollStickySizeStart,St=Xe<$e.scrollTop?"decrease":"increase";$e.scrollTop=Xe,o("virtualScroll",{index:oe,from:0,to:x.value.rowsPerPage-1,direction:St})}}function G(oe){o("virtualScroll",oe)}function me(){return[i(Ui,{class:"q-table__linear-progress",color:e.color,dark:a.value,indeterminate:!0,trackColor:"transparent"})]}function De(oe,he,Ee){let $e=c.value(oe),Xe=H($e);if(he!==void 0){let I={key:$e,row:oe,pageIndex:Ee,__trClass:Xe?"selected":""};if(e.tableRowStyleFn!==void 0&&(I.__trStyle=e.tableRowStyleFn(oe)),e.tableRowClassFn!==void 0){let ne=e.tableRowClassFn(oe);ne&&(I.__trClass=`${ne} ${I.__trClass}`)}return he(Oe(I))}let St=t["body-cell"],bt=O.value.map(I=>{let ne=t[`body-cell-${I.name}`],pe=ne!==void 0?ne:St;return pe!==void 0?pe(He({key:$e,row:oe,pageIndex:Ee,col:I})):i("td",{class:I.__tdClass(oe),style:I.__tdStyle(oe)},te(I,oe))});if(F.value===!0){let I=t["body-selection"],ne=I!==void 0?I(dt({key:$e,row:oe,pageIndex:Ee})):[i(Vo,{modelValue:Xe,color:e.color,dark:a.value,dense:e.dense,"onUpdate:modelValue":(pe,ye)=>{ee([$e],[oe],pe,ye)}})];bt.unshift(i("td",{class:"q-table--col-auto-width"},ne))}let R={key:$e,class:{selected:Xe}};if(e.onRowClick!==void 0&&(R.class["cursor-pointer"]=!0,R.onClick=I=>{o("rowClick",I,oe,Ee)}),e.onRowDblclick!==void 0&&(R.class["cursor-pointer"]=!0,R.onDblclick=I=>{o("rowDblclick",I,oe,Ee)}),e.onRowContextmenu!==void 0&&(R.class["cursor-pointer"]=!0,R.onContextmenu=I=>{o("rowContextmenu",I,oe,Ee)}),e.tableRowStyleFn!==void 0&&(R.style=e.tableRowStyleFn(oe)),e.tableRowClassFn!==void 0){let I=e.tableRowClassFn(oe);I&&(R.class[I]=!0)}return i("tr",R,bt)}function Ue(){let oe=t.body,he=t["top-row"],Ee=t["bottom-row"],$e=B.value.map((Xe,St)=>De(Xe,oe,St));return he!==void 0&&($e=he({cols:O.value}).concat($e)),Ee!==void 0&&($e=$e.concat(Ee({cols:O.value}))),i("tbody",$e)}function Oe(oe){return lt(oe),oe.cols=oe.cols.map(he=>ft({...he},"value",()=>te(he,oe.row))),oe}function He(oe){return lt(oe),ft(oe,"value",()=>te(oe.col,oe.row)),oe}function dt(oe){return lt(oe),oe}function lt(oe){Object.assign(oe,{cols:O.value,colsMap:w.value,sort:M,rowIndex:V.value+oe.pageIndex,color:e.color,dark:a.value,dense:e.dense}),F.value===!0&&ft(oe,"selected",()=>H(oe.key),(he,Ee)=>{ee([oe.key],[oe.row],he,Ee)}),ft(oe,"expand",()=>_(oe.key),he=>{L(oe.key,he)})}function te(oe,he){let Ee=typeof oe.field=="function"?oe.field(he):he[oe.field];return oe.format!==void 0?oe.format(Ee,he):Ee}let se=s(()=>({pagination:y.value,pagesNumber:ke.value,isFirstPage:j.value,isLastPage:fe.value,firstPage:ge,prevPage:Ce,nextPage:Fe,lastPage:de,inFullscreen:l.value,toggleFullscreen:u}));function J(){let oe=t.top,he=t["top-left"],Ee=t["top-right"],$e=t["top-selection"],Xe=F.value===!0&&$e!==void 0&&z.value>0,St="q-table__top relative-position row items-center";if(oe!==void 0)return i("div",{class:St},[oe(se.value)]);let bt;if(Xe===!0?bt=$e(se.value).slice():(bt=[],he!==void 0?bt.push(i("div",{class:"q-table__control"},[he(se.value)])):e.title&&bt.push(i("div",{class:"q-table__control"},[i("div",{class:["q-table__title",e.titleClass]},e.title)]))),Ee!==void 0&&(bt.push(i("div",{class:"q-table__separator col"})),bt.push(i("div",{class:"q-table__control"},[Ee(se.value)]))),bt.length!==0)return i("div",{class:St},bt)}let ue=s(()=>A.value===!0?null:C.value);function we(){let oe=Ke();return e.loading===!0&&t.loading===void 0&&oe.push(i("tr",{class:"q-table__progress"},[i("th",{class:"relative-position",colspan:W.value},me())])),i("thead",oe)}function Ke(){let oe=t.header,he=t["header-cell"];if(oe!==void 0)return oe(Pe({header:!0})).slice();let Ee=O.value.map($e=>{let Xe=t[`header-cell-${$e.name}`],St=Xe!==void 0?Xe:he,bt=Pe({col:$e});return St!==void 0?St(bt):i(Xi,{key:$e.name,props:bt},()=>$e.label)});if($.value===!0&&e.grid!==!0)Ee.unshift(i("th",{class:"q-table--col-auto-width"}," "));else if(q.value===!0){let $e=t["header-selection"],Xe=$e!==void 0?$e(Pe({})):[i(Vo,{color:e.color,modelValue:ue.value,dark:a.value,dense:e.dense,"onUpdate:modelValue":Je})];Ee.unshift(i("th",{class:"q-table--col-auto-width"},Xe))}return[i("tr",{class:e.tableHeaderClass,style:e.tableHeaderStyle},Ee)]}function Pe(oe){return Object.assign(oe,{cols:O.value,sort:M,colsMap:w.value,color:e.color,dark:a.value,dense:e.dense}),q.value===!0&&ft(oe,"selected",()=>ue.value,Je),oe}function Je(oe){A.value===!0&&(oe=!1),ee(B.value.map(c.value),B.value,oe)}let mt=s(()=>{let oe=[e.iconFirstPage||n.iconSet.table.firstPage,e.iconPrevPage||n.iconSet.table.prevPage,e.iconNextPage||n.iconSet.table.nextPage,e.iconLastPage||n.iconSet.table.lastPage];return n.lang.rtl===!0?oe.reverse():oe});function qt(){if(e.hideBottom===!0)return;if(Le.value===!0){if(e.hideNoData===!0)return;let Ee=e.loading===!0?e.loadingLabel||n.lang.table.loading:e.filter?e.noResultsLabel||n.lang.table.noResults:e.noDataLabel||n.lang.table.noData,$e=t["no-data"],Xe=$e!==void 0?[$e({message:Ee,icon:n.iconSet.table.warning,filter:e.filter})]:[i(Re,{class:"q-table__bottom-nodata-icon",name:n.iconSet.table.warning}),Ee];return i("div",{class:Ji+" q-table__bottom--nodata"},Xe)}let oe=t.bottom;if(oe!==void 0)return i("div",{class:Ji},[oe(se.value)]);let he=e.hideSelectedBanner!==!0&&F.value===!0&&z.value>0?[i("div",{class:"q-table__control"},[i("div",[(e.selectedRowsLabel||n.lang.table.selectedRecords)(z.value)])])]:[];if(e.hidePagination!==!0)return i("div",{class:Ji+" justify-end"},nn(he));if(he.length!==0)return i("div",{class:Ji},he)}function jt(oe){b({page:1,rowsPerPage:oe.value})}function nn(oe){let he,{rowsPerPage:Ee}=y.value,$e=e.paginationLabel||n.lang.table.pagination,Xe=t.pagination,St=e.rowsPerPageOptions.length>1;if(oe.push(i("div",{class:"q-table__separator col"})),St===!0&&oe.push(i("div",{class:"q-table__control"},[i("span",{class:"q-table__bottom-item"},[e.rowsPerPageLabel||n.lang.table.recordsPerPage]),i(Wi,{class:"q-table__select inline q-table__bottom-item",color:e.color,modelValue:Ee,options:X.value,displayValue:Ee===0?n.lang.table.allRows:Ee,dark:a.value,borderless:!0,dense:!0,optionsDense:!0,optionsCover:!0,"onUpdate:modelValue":jt})])),Xe!==void 0)he=Xe(se.value);else if(he=[i("span",Ee!==0?{class:"q-table__bottom-item"}:{},[Ee?$e(V.value+1,Math.min(ae.value,ce.value),ce.value):$e(1,Z.value,ce.value)])],Ee!==0&&ke.value>1){let bt={color:e.color,round:!0,dense:!0,flat:!0};e.dense===!0&&(bt.size="sm"),ke.value>2&&he.push(i(Ve,{key:"pgFirst",...bt,icon:mt.value[0],disable:j.value,"aria-label":n.lang.pagination.first,onClick:ge})),he.push(i(Ve,{key:"pgPrev",...bt,icon:mt.value[1],disable:j.value,"aria-label":n.lang.pagination.prev,onClick:Ce}),i(Ve,{key:"pgNext",...bt,icon:mt.value[2],disable:fe.value,"aria-label":n.lang.pagination.next,onClick:Fe})),ke.value>2&&he.push(i(Ve,{key:"pgLast",...bt,icon:mt.value[3],disable:fe.value,"aria-label":n.lang.pagination.last,onClick:de}))}return oe.push(i("div",{class:"q-table__control"},he)),oe}function ao(){let oe=e.gridHeader===!0?[i("table",{class:"q-table"},[we(i)])]:e.loading===!0&&t.loading===void 0?me(i):void 0;return i("div",{class:"q-table__middle"},oe)}function jo(){let oe=t.item!==void 0?t.item:he=>{let Ee=he.cols.map(Xe=>i("div",{class:"q-table__grid-item-row"},[i("div",{class:"q-table__grid-item-title"},[Xe.label]),i("div",{class:"q-table__grid-item-value"},[Xe.value])]));if(F.value===!0){let Xe=t["body-selection"],St=Xe!==void 0?Xe(he):[i(Vo,{modelValue:he.selected,color:e.color,dark:a.value,dense:e.dense,"onUpdate:modelValue":(bt,R)=>{ee([he.key],[he.row],bt,R)}})];Ee.unshift(i("div",{class:"q-table__grid-item-row"},St),i(uo,{dark:a.value}))}let $e={class:["q-table__grid-item-card"+g.value,e.cardClass],style:e.cardStyle};if(e.cardStyleFn!==void 0&&($e.style=[$e.style,e.cardStyleFn(he.row)]),e.cardClassFn!==void 0){let Xe=e.cardClassFn(he.row);Xe&&($e.class[0]+=` ${Xe}`)}return(e.onRowClick!==void 0||e.onRowDblclick!==void 0||e.onRowContextmenu!==void 0)&&($e.class[0]+=" cursor-pointer",e.onRowClick!==void 0&&($e.onClick=Xe=>{o("RowClick",Xe,he.row,he.pageIndex)}),e.onRowDblclick!==void 0&&($e.onDblclick=Xe=>{o("RowDblclick",Xe,he.row,he.pageIndex)}),e.onRowContextmenu!==void 0&&($e.onContextmenu=Xe=>{o("rowContextmenu",Xe,he.row,he.pageIndex)})),i("div",{class:"q-table__grid-item col-xs-12 col-sm-6 col-md-4 col-lg-3"+(he.selected===!0?" q-table__grid-item--selected":"")},[i("div",$e,Ee)])};return i("div",{class:["q-table__grid-content row",e.cardContainerClass],style:e.cardContainerStyle},B.value.map((he,Ee)=>oe(Oe({key:c.value(he),row:he,pageIndex:Ee}))))}return Object.assign(r.proxy,{requestServerInteraction:S,setPagination:b,firstPage:ge,prevPage:Ce,nextPage:Fe,lastPage:de,isRowSelected:H,clearSelection:Q,isRowExpanded:_,setExpanded:E,sort:M,resetVirtualScroll:Ie,scrollTo:ie,getCellValue:te}),qa(r.proxy,{filteredSortedRows:()=>D.value,computedRows:()=>B.value,computedRowsNumber:()=>ce.value}),()=>{let oe=[J()],he={ref:f,class:v.value};return e.grid===!0?oe.push(ao()):Object.assign(he,{class:[he.class,e.cardClass],style:e.cardStyle}),oe.push(nt(),qt()),e.loading===!0&&t.loading!==void 0&&oe.push(t.loading()),i("div",he,oe)}}});var Af=P({name:"QTr",props:{props:Object,noHover:Boolean},setup(e,{slots:t}){let o=s(()=>"q-tr"+(e.props===void 0||e.props.header===!0?"":" "+e.props.__trClass)+(e.noHover===!0?" q-tr--no-hover":""));return()=>i("tr",{style:e.props?.__trStyle,class:o.value},re(t.default))}});var $f=P({name:"QTd",props:{props:Object,autoWidth:Boolean,noHover:Boolean},setup(e,{slots:t}){let o=K(),r=s(()=>"q-td"+(e.autoWidth===!0?" q-table--col-auto-width":"")+(e.noHover===!0?" q-td--no-hover":"")+" ");return()=>{if(e.props===void 0)return i("td",{class:r.value},re(t.default));let n=o.vnode.key,a=(e.props.colsMap!==void 0?e.props.colsMap[n]:null)||e.props.col;if(a===void 0)return;let{row:l}=e.props;return i("td",{class:r.value+a.__tdClass(l),style:a.__tdStyle(l)},re(t.default))}}});var Ef=P({name:"QRouteTab",props:{...Zo,...ci},emits:si,setup(e,{slots:t,emit:o}){let r=ln({useDisableForRouterLinkProps:!1}),{renderTab:n,$tabs:a}=di(e,t,o,{exact:s(()=>e.exact),...r});return Y(()=>`${e.name} | ${e.exact} | ${(r.resolvedLink.value||{}).href}`,a.verifyRouteModel),()=>n(r.linkTag.value,r.linkAttrs.value)}});function gp(e,t){if(e.hour!==null){if(e.minute===null)return"minute";if(t===!0&&e.second===null)return"second"}return"hour"}function hp(){let e=new Date;return{hour:e.getHours(),minute:e.getMinutes(),second:e.getSeconds(),millisecond:e.getMilliseconds()}}var Bf=P({name:"QTime",props:{...Se,...kt,...Ar,modelValue:{required:!0,validator:e=>typeof e=="string"||e===null},mask:{...Ar.mask,default:null},format24h:{type:Boolean,default:null},defaultDate:{type:String,validator:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e)},options:Function,hourOptions:Array,minuteOptions:Array,secondOptions:Array,withSeconds:Boolean,nowBtn:Boolean},emits:pi,setup(e,{slots:t,emit:o}){let r=K(),{$q:n}=r.proxy,a=xe(e,n),{tabindex:l,headerClass:u,getLocale:c,getCurrentDate:f}=bi(e,n),d=Oo(e),p=Zt(d),g,m,v=T(null),x=s(()=>le()),y=s(()=>c()),k=s(()=>M()),S=vn(e.modelValue,x.value,y.value,e.calendar,k.value),b=T(gp(S)),h=T(S),_=T(S.hour===null||S.hour<12),E=s(()=>`q-time q-time--${e.landscape===!0?"landscape":"portrait"}`+(a.value===!0?" q-time--dark q-dark":"")+(e.disable===!0?" disabled":e.readonly===!0?" q-time--readonly":"")+(e.bordered===!0?" q-time--bordered":"")+(e.square===!0?" q-time--square no-border-radius":"")+(e.flat===!0?" q-time--flat no-shadow":"")),L=s(()=>{let te=h.value;return{hour:te.hour===null?"--":D.value===!0?rt(te.hour):String(_.value===!0?te.hour===0?12:te.hour:te.hour>12?te.hour-12:te.hour),minute:te.minute===null?"--":rt(te.minute),second:te.second===null?"--":rt(te.second)}}),D=s(()=>e.format24h!==null?e.format24h:n.lang.date.format24h),Z=s(()=>{let te=b.value==="hour",se=te===!0?12:60,J=h.value[b.value],we=`rotate(${Math.round(J*(360/se))-180}deg) translateX(-50%)`;return te===!0&&D.value===!0&&h.value.hour>=12&&(we+=" scale(.7)"),{transform:we}}),B=s(()=>h.value.hour!==null),F=s(()=>B.value===!0&&h.value.minute!==null),$=s(()=>e.hourOptions!==void 0?te=>e.hourOptions.includes(te):e.options!==void 0?te=>e.options(te,null,null):null),q=s(()=>e.minuteOptions!==void 0?te=>e.minuteOptions.includes(te):e.options!==void 0?te=>e.options(h.value.hour,te,null):null),C=s(()=>e.secondOptions!==void 0?te=>e.secondOptions.includes(te):e.options!==void 0?te=>e.options(h.value.hour,h.value.minute,te):null),A=s(()=>{if($.value===null)return null;let te=w(0,11,$.value),se=w(12,11,$.value);return{am:te,pm:se,values:te.values.concat(se.values)}}),z=s(()=>q.value!==null?w(0,59,q.value):null),H=s(()=>C.value!==null?w(0,59,C.value):null),Q=s(()=>{switch(b.value){case"hour":return A.value;case"minute":return z.value;case"second":return H.value}}),ee=s(()=>{let te,se,J=0,ue=1,we=Q.value!==null?Q.value.values:void 0;b.value==="hour"?D.value===!0?(te=0,se=23):(te=0,se=11,_.value===!1&&(J=12)):(te=0,se=55,ue=5);let Ke=[];for(let Pe=te,Je=te;Pe<=se;Pe+=ue,Je++){let mt=Pe+J,qt=we?.includes(mt)===!1,jt=b.value==="hour"&&Pe===0?D.value===!0?"00":"12":Pe;Ke.push({val:mt,index:Je,disable:qt,label:jt})}return Ke}),ve=s(()=>[[Pt,j,void 0,{stop:!0,prevent:!0,mouse:!0}]]);Y(()=>e.modelValue,te=>{let se=vn(te,x.value,y.value,e.calendar,k.value);(se.dateHash!==h.value.dateHash||se.timeHash!==h.value.timeHash)&&(h.value=se,se.hour===null?b.value="hour":_.value=se.hour<12)}),Y([x,y],()=>{Be(()=>{He()})});function O(){let te={...f(),...hp()};He(te),Object.assign(h.value,te),b.value="hour"}function w(te,se,J){let ue=Array.apply(null,{length:se+1}).map((we,Ke)=>{let Pe=Ke+te;return{index:Pe,val:J(Pe)===!0}}).filter(we=>we.val===!0).map(we=>we.index);return{min:ue[0],max:ue[ue.length-1],values:ue,threshold:se+1}}function W(te,se,J){let ue=Math.abs(te-se);return Math.min(ue,J-ue)}function U(te,{min:se,max:J,values:ue,threshold:we}){if(te===se)return se;if(teJ)return W(te,se,we)<=W(te,J,we)?se:J;let Ke=ue.findIndex(mt=>te<=mt),Pe=ue[Ke-1],Je=ue[Ke];return te-Pe<=Je-te?Pe:Je}function le(){return e.calendar!=="persian"&&e.mask!==null?e.mask:`HH:mm${e.withSeconds===!0?":ss":""}`}function M(){if(typeof e.defaultDate!="string"){let te=f(!0);return te.dateHash=Co(te),te}return vn(e.defaultDate,"YYYY/MM/DD",void 0,e.calendar)}function V(){return Gt(r)===!0||Q.value!==null&&(Q.value.values.length===0||b.value==="hour"&&D.value!==!0&&A.value[_.value===!0?"am":"pm"].values.length===0)}function ae(){let te=v.value,{top:se,left:J,width:ue}=te.getBoundingClientRect(),we=ue/2;return{top:se+we,left:J+we,dist:we*.7}}function j(te){if(V()!==!0){if(te.isFirst===!0){g=ae(),m=ke(te.evt,g);return}m=ke(te.evt,g,m),te.isFinal===!0&&(g=!1,m=null,fe())}}function fe(){b.value==="hour"?b.value="minute":e.withSeconds&&b.value==="minute"&&(b.value="second")}function ke(te,se,J){let ue=_t(te),we=Math.abs(ue.top-se.top),Ke=Math.sqrt(Math.pow(Math.abs(ue.top-se.top),2)+Math.pow(Math.abs(ue.left-se.left),2)),Pe,Je=Math.asin(we/Ke)*(180/Math.PI);if(ue.top=se.dist:A.value.am.values.length!==0;Pe=U(Pe+(mt===!0?0:12),A.value[mt===!0?"am":"pm"])}else Pe=Math.round(Pe),D.value===!0?Kei("div",{key:"clock"+b.value,class:"q-time__container-parent absolute-full"},[i("div",{ref:v,class:"q-time__container-child fit overflow-hidden"},[Bt(i("div",{class:"q-time__clock cursor-pointer non-selectable",onClick:Ce,onMousedown:Fe},[i("div",{class:"q-time__clock-circle fit"},[i("div",{class:"q-time__clock-pointer"+(h.value[b.value]===null?" hidden":e.color!==void 0?` text-${e.color}`:""),style:Z.value}),ee.value.map(se=>i("div",{class:`q-time__clock-position row flex-center q-time__clock-pos-${se.index}`+(se.val===te?" q-time__clock-position--active "+u.value:se.disable===!0?" q-time__clock-position--disable":"")},[i("span",se.label)]))])]),ve.value)])])),e.nowBtn===!0?i(Ve,{class:"q-time__now-button absolute",icon:n.iconSet.datetime.now,unelevated:!0,size:"sm",round:!0,color:e.color,textColor:e.textColor,tabindex:l.value,onClick:O}):null])}return r.proxy.setNow=O,()=>{let te=[lt()],se=re(t.default);return se!==void 0&&te.push(i("div",{class:"q-time__actions"},se)),e.name!==void 0&&e.disable!==!0&&p(te,"push"),i("div",{class:E.value,tabindex:-1},[dt(),i("div",{class:"q-time__main col overflow-auto"},te)])}}});var Ff=P({name:"QTimeline",props:{...Se,color:{type:String,default:"primary"},side:{type:String,default:"right",validator:e=>["left","right"].includes(e)},layout:{type:String,default:"dense",validator:e=>["dense","comfortable","loose"].includes(e)}},setup(e,{slots:t}){let o=K(),r=xe(e,o.proxy.$q);Kt(Ra,e);let n=s(()=>`q-timeline q-timeline--${e.layout} q-timeline--${e.layout}--${e.side}`+(r.value===!0?" q-timeline--dark":""));return()=>i("ul",{class:n.value},re(t.default))}});var Lf=P({name:"QTimelineEntry",props:{heading:Boolean,tag:{type:String,default:"h3"},side:{type:String,default:"right",validator:e=>["left","right"].includes(e)},icon:String,avatar:String,color:String,title:String,subtitle:String,body:String},setup(e,{slots:t}){let o=pt(Ra,Ze);if(o===Ze)return console.error("QTimelineEntry needs to be child of QTimeline"),Ze;let r=s(()=>`q-timeline__entry q-timeline__entry--${e.side}`+(e.icon!==void 0||e.avatar!==void 0?" q-timeline__entry--icon":"")),n=s(()=>`q-timeline__dot text-${e.color||o.color}`),a=s(()=>o.layout==="comfortable"&&o.side==="left");return()=>{let l=Po(t.default,[]);if(e.body!==void 0&&l.unshift(e.body),e.heading===!0){let f=[i("div"),i("div"),i(e.tag,{class:"q-timeline__heading-title"},l)];return i("div",{class:"q-timeline__heading"},a.value===!0?f.reverse():f)}let u;e.icon!==void 0?u=[i(Re,{class:"row items-center justify-center",name:e.icon})]:e.avatar!==void 0&&(u=[i("img",{class:"q-timeline__dot-img",src:e.avatar})]);let c=[i("div",{class:"q-timeline__subtitle"},[i("span",{},re(t.subtitle,[e.subtitle]))]),i("div",{class:n.value},u),i("div",{class:"q-timeline__content"},[i("h6",{class:"q-timeline__title"},re(t.title,[e.title]))].concat(l))];return i("li",{class:r.value},a.value===!0?c.reverse():c)}}});var Df=P({name:"QToolbar",props:{inset:Boolean},setup(e,{slots:t}){let o=s(()=>"q-toolbar row no-wrap items-center"+(e.inset===!0?" q-toolbar--inset":""));return()=>i("div",{class:o.value,role:"toolbar"},re(t.default))}});var Of=P({name:"QToolbarTitle",props:{shrink:Boolean},setup(e,{slots:t}){let o=s(()=>"q-toolbar__title ellipsis"+(e.shrink===!0?" col-shrink":""));return()=>i("div",{class:o.value},re(t.default))}});var pp=["none","strict","leaf","leaf-filtered"],Vf=P({name:"QTree",props:{...Se,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:"label"},childrenKey:{type:String,default:"children"},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:"none",validator:e=>pp.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{},noConnectors:Boolean,noTransition:Boolean,noNodesLabel:String,noResultsLabel:String},emits:["update:expanded","update:ticked","update:selected","lazyLoad","afterShow","afterHide"],setup(e,{slots:t,emit:o}){let{proxy:r}=K(),{$q:n}=r,a=xe(e,n),l=T({}),u=T(e.ticked||[]),c=T(e.expanded||[]),f={};Mo(()=>{f={}});let d=s(()=>`q-tree q-tree--${e.dense===!0?"dense":"standard"}`+(e.noConnectors===!0?" q-tree--no-connectors":"")+(a.value===!0?" q-tree--dark":"")+(e.color!==void 0?` text-${e.color}`:"")),p=s(()=>e.selected!==void 0),g=s(()=>e.icon||n.iconSet.tree.icon),m=s(()=>e.controlColor||e.color),v=s(()=>e.textColor!==void 0?` text-${e.textColor}`:""),x=s(()=>{let w=e.selectedColor||e.color;return w?` text-${w}`:""}),y=s(()=>e.filterMethod!==void 0?e.filterMethod:(w,W)=>{let U=W.toLowerCase();return w[e.labelKey]&&w[e.labelKey].toLowerCase().indexOf(U)!==-1}),k=s(()=>{let w={},W=(U,le)=>{let M=U.tickStrategy||(le?le.tickStrategy:e.tickStrategy),V=U[e.nodeKey],ae=U[e.childrenKey]&&Array.isArray(U[e.childrenKey])&&U[e.childrenKey].length!==0,j=U.disabled!==!0&&p.value===!0&&U.selectable!==!1,fe=U.disabled!==!0&&U.expandable!==!1,ke=M!=="none",X=M==="strict",ce=M==="leaf-filtered",ge=M==="leaf"||M==="leaf-filtered",Ce=U.disabled!==!0&&U.tickable!==!1;ge===!0&&Ce===!0&&le&&le.tickable!==!0&&(Ce=!1);let Fe=U.lazy;Fe===!0&&l.value[V]!==void 0&&Array.isArray(U[e.childrenKey])===!0&&(Fe=l.value[V]);let de={key:V,parent:le,isParent:ae,lazy:Fe,disabled:U.disabled,link:U.disabled!==!0&&(j===!0||fe===!0&&(ae===!0||Fe===!0)),children:[],matchesFilter:e.filter?y.value(U,e.filter):!0,selected:V===e.selected&&j===!0,selectable:j,expanded:ae===!0?c.value.includes(V):!1,expandable:fe,noTick:U.noTick===!0||X!==!0&&Fe&&Fe!=="loaded",tickable:Ce,tickStrategy:M,hasTicking:ke,strictTicking:X,leafFilteredTicking:ce,leafTicking:ge,ticked:X===!0?u.value.includes(V):ae===!0?!1:u.value.includes(V)};if(w[V]=de,ae===!0&&(de.children=U[e.childrenKey].map(Le=>W(Le,de)),e.filter&&(de.matchesFilter!==!0?de.matchesFilter=de.children.some(Le=>Le.matchesFilter):de.noTick!==!0&&de.disabled!==!0&&de.tickable===!0&&ce===!0&&de.children.every(Le=>Le.matchesFilter!==!0||Le.noTick===!0||Le.tickable!==!0)===!0&&(de.tickable=!1)),de.matchesFilter===!0&&(de.noTick!==!0&&X!==!0&&de.children.every(Le=>Le.noTick)===!0&&(de.noTick=!0),ge))){if(de.ticked=!1,de.indeterminate=de.children.some(Le=>Le.indeterminate===!0),de.tickable=de.tickable===!0&&de.children.some(Le=>Le.tickable),de.indeterminate!==!0){let Le=de.children.reduce((ze,Ie)=>Ie.ticked===!0?ze+1:ze,0);Le===de.children.length?de.ticked=!0:Le>0&&(de.indeterminate=!0)}de.indeterminate===!0&&(de.indeterminateNextState=de.children.every(Le=>Le.tickable!==!0||Le.ticked!==!0))}return de};return e.nodes.forEach(U=>W(U,null)),w});Y(()=>e.ticked,w=>{u.value=w}),Y(()=>e.expanded,w=>{c.value=w});function S(w){let W=[].reduce,U=(le,M)=>{if(le||!M)return le;if(Array.isArray(M)===!0)return W.call(Object(M),U,le);if(M[e.nodeKey]===w)return M;if(M[e.childrenKey])return U(null,M[e.childrenKey])};return U(null,e.nodes)}function b(){return u.value.map(w=>S(w))}function h(){return c.value.map(w=>S(w))}function _(w){return w&&k.value[w]?k.value[w].expanded:!1}function E(){e.expanded!==void 0?o("update:expanded",[]):c.value=[]}function L(){let w=[],W=U=>{U[e.childrenKey]&&U[e.childrenKey].length!==0&&U.expandable!==!1&&U.disabled!==!0&&(w.push(U[e.nodeKey]),U[e.childrenKey].forEach(W))};e.nodes.forEach(W),e.expanded!==void 0?o("update:expanded",w):c.value=w}function D(w,W,U=S(w),le=k.value[w]){if(le.lazy&&le.lazy!=="loaded"){if(le.lazy==="loading")return;l.value[w]="loading",Array.isArray(U[e.childrenKey])!==!0&&(U[e.childrenKey]=[]),o("lazyLoad",{node:U,key:w,done:M=>{l.value[w]="loaded",U[e.childrenKey]=Array.isArray(M)===!0?M:[],Be(()=>{k.value[w]?.isParent===!0&&Z(w,!0)})},fail:()=>{delete l.value[w],U[e.childrenKey].length===0&&delete U[e.childrenKey]}})}else le.isParent===!0&&le.expandable===!0&&Z(w,W)}function Z(w,W){let U=c.value,le=e.expanded!==void 0;if(le===!0&&(U=U.slice()),W){if(e.accordion&&k.value[w]){let M=[];k.value[w].parent?k.value[w].parent.children.forEach(V=>{V.key!==w&&V.expandable===!0&&M.push(V.key)}):e.nodes.forEach(V=>{let ae=V[e.nodeKey];ae!==w&&M.push(ae)}),M.length!==0&&(U=U.filter(V=>M.includes(V)===!1))}U=U.concat([w]).filter((M,V,ae)=>ae.indexOf(M)===V)}else U=U.filter(M=>M!==w);le===!0?o("update:expanded",U):c.value=U}function B(w){return w&&k.value[w]?k.value[w].ticked:!1}function F(w,W){let U=u.value,le=e.ticked!==void 0;le===!0&&(U=U.slice()),W?U=U.concat(w).filter((M,V,ae)=>ae.indexOf(M)===V):U=U.filter(M=>w.includes(M)===!1),le===!0&&o("update:ticked",U)}function $(w,W,U){let le={tree:r,node:w,key:U,color:e.color,dark:a.value};return ft(le,"expanded",()=>W.expanded,M=>{M!==W.expanded&&D(U,M)}),ft(le,"ticked",()=>W.ticked,M=>{M!==W.ticked&&F([U],M)}),le}function q(w){return(e.filter?w.filter(W=>k.value[W[e.nodeKey]].matchesFilter):w).map(W=>H(W))}function C(w){if(w.icon!==void 0)return i(Re,{class:"q-tree__icon q-mr-sm",name:w.icon,color:w.iconColor});let W=w.img||w.avatar;if(W)return i("img",{class:`q-tree__${w.img?"img":"avatar"} q-mr-sm`,src:W})}function A(){o("afterShow")}function z(){o("afterHide")}function H(w){let W=w[e.nodeKey],U=k.value[W],le=w.header&&t[`header-${w.header}`]||t["default-header"],M=U.isParent===!0?q(w[e.childrenKey]):[],V=M.length!==0||U.lazy&&U.lazy!=="loaded",ae=w.body&&t[`body-${w.body}`]||t["default-body"],j=le!==void 0||ae!==void 0?$(w,U,W):null;return ae!==void 0&&(ae=i("div",{class:"q-tree__node-body relative-position"},[i("div",{class:v.value},[ae(j)])])),i("div",{key:W,class:`q-tree__node relative-position q-tree__node--${V===!0?"parent":"child"}`},[i("div",{class:"q-tree__node-header relative-position row no-wrap items-center"+(U.link===!0?" q-tree__node--link q-hoverable q-focusable":"")+(U.selected===!0?" q-tree__node--selected":"")+(U.disabled===!0?" q-tree__node--disabled":""),tabindex:U.link===!0?0:-1,ariaExpanded:M.length>0?U.expanded:null,role:"treeitem",onClick:fe=>{ee(w,U,fe)},onKeypress(fe){io(fe)!==!0&&(fe.keyCode===13?ee(w,U,fe,!0):fe.keyCode===32&&ve(w,U,fe,!0))}},[i("div",{class:"q-focus-helper",tabindex:-1,ref:fe=>{f[U.key]=fe}}),U.lazy==="loading"?i(wt,{class:"q-tree__spinner",color:m.value}):V===!0?i(Re,{class:"q-tree__arrow"+(U.expanded===!0?" q-tree__arrow--rotate":""),name:g.value,onClick(fe){ve(w,U,fe)}}):null,U.hasTicking===!0&&U.noTick!==!0?i(Vo,{class:"q-tree__tickbox",modelValue:U.indeterminate===!0?null:U.ticked,color:m.value,dark:a.value,dense:!0,keepColor:!0,disable:U.tickable!==!0,onKeydown:_e,"onUpdate:modelValue":fe=>{O(U,fe)}}):null,i("div",{class:"q-tree__node-header-content col row no-wrap items-center"+(U.selected===!0?x.value:v.value)},[le?le(j):[C(w),i("div",w[e.labelKey])]])]),V===!0?e.noTransition===!0?U.expanded===!0?i("div",{class:"q-tree__node-collapsible"+v.value,key:`${W}__q`},[ae,i("div",{class:"q-tree__children"+(U.disabled===!0?" q-tree__node--disabled":""),role:"group"},M)]):null:i(pn,{duration:e.duration,onShow:A,onHide:z},()=>Bt(i("div",{class:"q-tree__node-collapsible"+v.value,key:`${W}__q`},[ae,i("div",{class:"q-tree__children"+(U.disabled===!0?" q-tree__node--disabled":""),role:"group"},M)]),[[ka,U.expanded]])):ae])}function Q(w){f[w]?.focus()}function ee(w,W,U,le){le!==!0&&W.selectable!==!1&&Q(W.key),p.value&&W.selectable?e.noSelectionUnset===!1?o("update:selected",W.key!==e.selected?W.key:null):W.key!==e.selected&&o("update:selected",W.key===void 0?null:W.key):ve(w,W,U,le),typeof w.handler=="function"&&w.handler(w)}function ve(w,W,U,le){U!==void 0&&_e(U),le!==!0&&W.selectable!==!1&&Q(W.key),D(W.key,!W.expanded,w,W)}function O(w,W){if(w.indeterminate===!0&&(W=w.indeterminateNextState),w.strictTicking)F([w.key],W);else if(w.leafTicking){let U=[],le=M=>{M.isParent?(W!==!0&&M.noTick!==!0&&M.tickable===!0&&U.push(M.key),M.leafTicking===!0&&M.children.forEach(le)):M.noTick!==!0&&M.tickable===!0&&(M.leafFilteredTicking!==!0||M.matchesFilter===!0)&&U.push(M.key)};le(w),F(U,W)}}return e.defaultExpandAll===!0&&L(),Object.assign(r,{getNodeByKey:S,getTickedNodes:b,getExpandedNodes:h,isExpanded:_,collapseAll:E,expandAll:L,setExpanded:D,isTicked:B,setTicked:F}),()=>{let w=q(e.nodes);return i("div",{class:d.value,role:"tree"},w.length===0?e.filter?e.noResultsLabel||n.lang.tree.noResults:e.noNodesLabel||n.lang.tree.noNodes:w)}}});function zf(e){return(e*100).toFixed(2)+"%"}var If={...Se,...$i,label:String,color:String,textColor:String,square:Boolean,flat:Boolean,bordered:Boolean,noThumbnails:Boolean,thumbnailFit:{type:String,default:"cover"},autoUpload:Boolean,hideUploadBtn:Boolean,disable:Boolean,readonly:Boolean},pu=[...Ei,"start","finish","added","removed"];function Hf(e,t){let o=K(),{props:r,slots:n,emit:a,proxy:l}=o,{$q:u}=l,c=xe(r,u);function f(j,fe,ke){if(j.__status=fe,fe==="idle"){j.__uploaded=0,j.__progress=0,j.__sizeLabel=Un(j.size),j.__progressLabel="0.00%";return}if(fe==="failed"){l.$forceUpdate();return}j.__uploaded=fe==="uploaded"?j.size:ke,j.__progress=fe==="uploaded"?1:Math.min(.9999,j.__uploaded/j.size),j.__progressLabel=zf(j.__progress),l.$forceUpdate()}let d=s(()=>r.disable!==!0&&r.readonly!==!0),p=T(!1),g=T(null),m=T(null),v={files:T([]),queuedFiles:T([]),uploadedFiles:T([]),uploadedSize:T(0),updateFileStatus:f,isAlive:()=>Gt(o)===!1},{pickFiles:x,addFiles:y,onDragover:k,onDragleave:S,processFiles:b,getDndNode:h,maxFilesNumber:_,maxTotalSizeNumber:E}=Bi({editable:d,dnd:p,getFileInput:O,addFilesToQueue:w});Object.assign(v,e({props:r,slots:n,emit:a,helpers:v,exposeApi:j=>{Object.assign(v,j)}})),v.isBusy===void 0&&(v.isBusy=T(!1));let L=T(0),D=s(()=>L.value===0?0:v.uploadedSize.value/L.value),Z=s(()=>zf(D.value)),B=s(()=>Un(L.value)),F=s(()=>d.value===!0&&v.isUploading.value!==!0&&(r.multiple===!0||v.queuedFiles.value.length===0)&&(r.maxFiles===void 0||v.files.value.length<_.value)&&(r.maxTotalSize===void 0||L.valued.value===!0&&v.isBusy.value!==!0&&v.isUploading.value!==!0&&v.queuedFiles.value.length!==0);Kt(Ba,le);let q=s(()=>"q-uploader column no-wrap"+(c.value===!0?" q-uploader--dark q-dark":"")+(r.bordered===!0?" q-uploader--bordered":"")+(r.square===!0?" q-uploader--square no-border-radius":"")+(r.flat===!0?" q-uploader--flat no-shadow":"")+(r.disable===!0?" disabled q-uploader--disable":"")+(p.value===!0?" q-uploader--dnd":"")),C=s(()=>"q-uploader__header"+(r.color!==void 0?` bg-${r.color}`:"")+(r.textColor!==void 0?` text-${r.textColor}`:""));Y(v.isUploading,(j,fe)=>{fe===!1&&j===!0?a("start"):fe===!0&&j===!1&&a("finish")});function A(){r.disable===!1&&(v.abort(),v.uploadedSize.value=0,L.value=0,ve(),v.files.value=[],v.queuedFiles.value=[],v.uploadedFiles.value=[])}function z(){r.disable===!1&&Q(["uploaded"],()=>{v.uploadedFiles.value=[]})}function H(){Q(["idle","failed"],({size:j})=>{L.value-=j,v.queuedFiles.value=[]})}function Q(j,fe){if(r.disable===!0)return;let ke={files:[],size:0},X=v.files.value.filter(ce=>j.indexOf(ce.__status)===-1?!0:(ke.size+=ce.size,ke.files.push(ce),ce.__img!==void 0&&window.URL.revokeObjectURL(ce.__img.src),!1));ke.files.length!==0&&(v.files.value=X,fe(ke),a("removed",ke.files))}function ee(j){r.disable||(j.__status==="uploaded"?v.uploadedFiles.value=v.uploadedFiles.value.filter(fe=>fe.__key!==j.__key):j.__status==="uploading"?j.__abort():L.value-=j.size,v.files.value=v.files.value.filter(fe=>fe.__key!==j.__key?!0:(fe.__img!==void 0&&window.URL.revokeObjectURL(fe.__img.src),!1)),v.queuedFiles.value=v.queuedFiles.value.filter(fe=>fe.__key!==j.__key),a("removed",[j]))}function ve(){v.files.value.forEach(j=>{j.__img!==void 0&&window.URL.revokeObjectURL(j.__img.src)})}function O(){return m.value||g.value.getElementsByClassName("q-uploader__input")[0]}function w(j,fe){let ke=b(j,fe,v.files.value,!0),X=O();X!=null&&(X.value=""),ke!==void 0&&(ke.forEach(ce=>{if(v.updateFileStatus(ce,"idle"),L.value+=ce.size,r.noThumbnails!==!0&&ce.type.toUpperCase().startsWith("IMAGE")){let ge=new Image;ge.src=window.URL.createObjectURL(ce),ce.__img=ge}}),v.files.value=v.files.value.concat(ke),v.queuedFiles.value=v.queuedFiles.value.concat(ke),a("added",ke),r.autoUpload===!0&&v.upload())}function W(){$.value===!0&&v.upload()}function U(j,fe,ke){if(j===!0){let X={type:"a",key:fe,icon:u.iconSet.uploader[fe],flat:!0,dense:!0},ce;return fe==="add"?(X.onClick=x,ce=le):X.onClick=ke,i(Ve,X,ce)}}function le(){return i("input",{ref:m,class:"q-uploader__input overflow-hidden absolute-full",tabindex:-1,type:"file",title:"",accept:r.accept,multiple:r.multiple===!0?"multiple":void 0,capture:r.capture,onMousedown:it,onClick:x,onChange:w})}function M(){return n.header!==void 0?n.header(ae):[i("div",{class:"q-uploader__header-content column"},[i("div",{class:"flex flex-center no-wrap q-gutter-xs"},[U(v.queuedFiles.value.length!==0,"removeQueue",H),U(v.uploadedFiles.value.length!==0,"removeUploaded",z),v.isUploading.value===!0?i(wt,{class:"q-uploader__spinner"}):null,i("div",{class:"col column justify-center"},[r.label!==void 0?i("div",{class:"q-uploader__title"},[r.label]):null,i("div",{class:"q-uploader__subtitle"},[B.value+" / "+Z.value])]),U(F.value,"add"),U(r.hideUploadBtn===!1&&$.value===!0,"upload",v.upload),U(v.isUploading.value,"clear",v.abort)])])]}function V(){return n.list!==void 0?n.list(ae):v.files.value.map(j=>i("div",{key:j.__key,class:"q-uploader__file relative-position"+(r.noThumbnails!==!0&&j.__img!==void 0?" q-uploader__file--img":"")+(j.__status==="failed"?" q-uploader__file--failed":j.__status==="uploaded"?" q-uploader__file--uploaded":""),style:r.noThumbnails!==!0&&j.__img!==void 0?{backgroundImage:'url("'+j.__img.src+'")',backgroundSize:r.thumbnailFit}:null},[i("div",{class:"q-uploader__file-header row flex-center no-wrap"},[j.__status==="failed"?i(Re,{class:"q-uploader__file-status",name:u.iconSet.type.negative,color:"negative"}):null,i("div",{class:"q-uploader__file-header-content col"},[i("div",{class:"q-uploader__title"},[j.name]),i("div",{class:"q-uploader__subtitle row items-center no-wrap"},[j.__sizeLabel+" / "+j.__progressLabel])]),j.__status==="uploading"?i(Tr,{value:j.__progress,min:0,max:1,indeterminate:j.__progress===0}):i(Ve,{round:!0,dense:!0,flat:!0,icon:u.iconSet.uploader[j.__status==="uploaded"?"done":"clear"],onClick:()=>{ee(j)}})])]))}be(()=>{v.isUploading.value===!0&&v.abort(),v.files.value.length!==0&&ve()});let ae={};for(let j in v)Pu(v[j])===!0?ft(ae,j,()=>v[j].value):ae[j]=v[j];return Object.assign(ae,{upload:W,reset:A,removeUploadedFiles:z,removeQueuedFiles:H,removeFile:ee,pickFiles:x,addFiles:y}),qa(ae,{canAddFiles:()=>F.value,canUpload:()=>$.value,uploadSizeLabel:()=>B.value,uploadProgressLabel:()=>Z.value}),t({...v,upload:W,reset:A,removeUploadedFiles:z,removeQueuedFiles:H,removeFile:ee,pickFiles:x,addFiles:y,canAddFiles:F,canUpload:$,uploadSizeLabel:B,uploadProgressLabel:Z}),()=>{let j=[i("div",{class:C.value},M()),i("div",{class:"q-uploader__list scroll"},V()),h("uploader")];v.isBusy.value===!0&&j.push(i("div",{class:"q-uploader__overlay absolute-full flex flex-center"},[i(wt)]));let fe={ref:g,class:q.value};return F.value===!0&&Object.assign(fe,{onDragover:k,onDragleave:S}),i("div",fe,j)}}var bp=()=>!0;function el(e){let t={};return e.forEach(o=>{t[o]=bp}),t}var yp=el(pu),tl=({name:e,props:t,emits:o,injectPlugin:r})=>P({name:e,props:{...If,...t},emits:ct(o)===!0?{...yp,...o}:[...pu,...o],setup(n,{expose:a}){return Hf(r,a)}});function on(e){return typeof e=="function"?e:()=>e}var Sp="QUploader",xp={url:[Function,String],method:{type:[Function,String],default:"POST"},fieldName:{type:[Function,String],default:()=>e=>e.name},headers:[Function,Array],formFields:[Function,Array],withCredentials:[Function,Boolean],sendRaw:[Function,Boolean],batch:[Function,Boolean],factory:Function},_p=["factoryFailed","uploaded","failed","uploading"];function Cp({props:e,emit:t,helpers:o}){let r=T([]),n=T([]),a=T(0),l=s(()=>({url:on(e.url),method:on(e.method),headers:on(e.headers),formFields:on(e.formFields),fieldName:on(e.fieldName),withCredentials:on(e.withCredentials),sendRaw:on(e.sendRaw),batch:on(e.batch)})),u=s(()=>a.value>0),c=s(()=>n.value.length!==0),f;function d(){r.value.forEach(v=>{v.abort()}),n.value.length!==0&&(f=!0)}function p(){let v=o.queuedFiles.value.slice(0);o.queuedFiles.value=[],l.value.batch(v)?g(v):v.forEach(x=>{g([x])})}function g(v){if(a.value++,typeof e.factory!="function"){m(v,{});return}let x=e.factory(v);if(!x)t("factoryFailed",new Error("QUploader: factory() does not return properly"),v),a.value--;else if(typeof x.catch=="function"&&typeof x.then=="function"){n.value.push(x);let y=k=>{o.isAlive()===!0&&(n.value=n.value.filter(S=>S!==x),n.value.length===0&&(f=!1),o.queuedFiles.value=o.queuedFiles.value.concat(v),v.forEach(S=>{o.updateFileStatus(S,"failed")}),t("factoryFailed",k,v),a.value--)};x.then(k=>{f===!0?y(new Error("Aborted")):o.isAlive()===!0&&(n.value=n.value.filter(S=>S!==x),m(v,k))}).catch(y)}else m(v,x||{})}function m(v,x){let y=new FormData,k=new XMLHttpRequest,S=($,q)=>x[$]!==void 0?on(x[$])(q):l.value[$](q),b=S("url",v);if(!b){console.error("q-uploader: invalid or no URL specified"),a.value--;return}let h=S("formFields",v);h!==void 0&&h.forEach($=>{y.append($.name,$.value)});let _=0,E=0,L=0,D=0,Z;k.upload.addEventListener("progress",$=>{if(Z===!0)return;let q=Math.min(D,$.loaded);o.uploadedSize.value+=q-L,L=q;let C=L-E;for(let A=_;C>0&&Az.size)C-=z.size,_++,E+=z.size,o.updateFileStatus(z,"uploading",z.size);else{o.updateFileStatus(z,"uploading",C);return}}},!1),k.onreadystatechange=()=>{k.readyState<4||(k.status&&k.status<400?(o.uploadedFiles.value=o.uploadedFiles.value.concat(v),v.forEach($=>{o.updateFileStatus($,"uploaded")}),t("uploaded",{files:v,xhr:k})):(Z=!0,o.uploadedSize.value-=L,o.queuedFiles.value=o.queuedFiles.value.concat(v),v.forEach($=>{o.updateFileStatus($,"failed")}),t("failed",{files:v,xhr:k})),a.value--,r.value=r.value.filter($=>$!==k))},k.open(S("method",v),b),S("withCredentials",v)===!0&&(k.withCredentials=!0);let B=S("headers",v);B!==void 0&&B.forEach($=>{k.setRequestHeader($.name,$.value)});let F=S("sendRaw",v);v.forEach($=>{o.updateFileStatus($,"uploading",0),F!==!0&&y.append(S("fieldName",$),$,$.name),$.xhr=k,$.__abort=()=>{k.abort()},D+=$.size}),t("uploading",{files:v,xhr:k}),r.value.push(k),F===!0?k.send(new Blob(v)):k.send(y)}return{isUploading:u,isBusy:c,abort:d,upload:p}}var Nf={name:Sp,props:xp,emits:_p,injectPlugin:Cp};var Qf=tl(Nf);var jf=P({name:"QUploaderAddTrigger",setup(){let e=pt(Ba,Ze);return e===Ze&&console.error("QUploaderAddTrigger needs to be child of QUploader"),e}});var Uf=P({name:"QVideo",props:{...Lr,src:{type:String,required:!0},title:String,fetchpriority:{type:String,default:"auto"},loading:{type:String,default:"eager"},referrerpolicy:{type:String,default:"strict-origin-when-cross-origin"}},setup(e){let t=Dr(e),o=s(()=>"q-video"+(e.ratio!==void 0?" q-video--responsive":""));return()=>i("div",{class:o.value,style:t.value},[i("iframe",{src:e.src,title:e.title,fetchpriority:e.fetchpriority,loading:e.loading,referrerpolicy:e.referrerpolicy,frameborder:"0",allowfullscreen:!0})])}});var il={};jr(il,{ClosePopup:()=>Wf,Intersection:()=>Di,Morph:()=>am,Mutation:()=>um,Ripple:()=>$o,Scroll:()=>fm,ScrollFire:()=>cm,TouchHold:()=>mm,TouchPan:()=>Pt,TouchRepeat:()=>gm,TouchSwipe:()=>ei});function Kf(e){if(e===!1)return 0;if(e===!0||e===void 0)return 1;let t=parseInt(e,10);return isNaN(t)?0:t}var Wf=$t({name:"close-popup",beforeMount(e,{value:t}){let o={depth:Kf(t),handler(r){o.depth!==0&&setTimeout(()=>{let n=Ms(e);n!==void 0&&Rs(n,r,o.depth)})},handlerKey(r){Mt(r,13)===!0&&o.handler(r)}};e.__qclosepopup=o,e.addEventListener("click",o.handler),e.addEventListener("keyup",o.handlerKey)},updated(e,{value:t,oldValue:o}){t!==o&&(e.__qclosepopup.depth=Kf(t))},beforeUnmount(e){let t=e.__qclosepopup;e.removeEventListener("click",t.handler),e.removeEventListener("keyup",t.handlerKey),delete e.__qclosepopup}});var wp=0,ha;function Yf(e,t){ha===void 0&&(ha=document.createElement("div"),ha.style.cssText="position: absolute; left: 0; top: 0",document.body.appendChild(ha));let o=e.getBoundingClientRect(),r=ha.getBoundingClientRect(),{marginLeft:n,marginRight:a,marginTop:l,marginBottom:u}=window.getComputedStyle(e),c=parseInt(n,10)+parseInt(a,10),f=parseInt(l,10)+parseInt(u,10);return{left:o.left-r.left,top:o.top-r.top,width:o.right-o.left,height:o.bottom-o.top,widthM:o.right-o.left+(t===!0?0:c),heightM:o.bottom-o.top+(t===!0?0:f),marginH:t===!0?c:0,marginV:t===!0?f:0}}function nl(e){return{width:e.scrollWidth,height:e.scrollHeight}}var Xf=["Top","Right","Bottom","Left"],Gf=["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],kp=/-block|-inline|block-|inline-/,qp=/(-block|-inline|block-|inline-).*:/;function Zf(e,t){let o=window.getComputedStyle(e),r={};for(let n=0;nqp.test(l)!==!0).join(";"):r[a]=o[a]}return r}var Tp=["absolute","fixed","relative","sticky"];function Jf(e){let t=e,o=0;for(;t!==null&&t!==document;){let{position:r,zIndex:n}=window.getComputedStyle(t),a=Number(n);a>o&&(t===e||Tp.includes(r)===!0)&&(o=a),t=t.parentNode}return o}function Mp(e){return{from:e.from,to:e.to!==void 0?e.to:e.from}}function Rp(e){return typeof e=="number"?e={duration:e}:typeof e=="function"&&(e={onEnd:e}),{...e,waitFor:e.waitFor===void 0?0:e.waitFor,duration:isNaN(e.duration)===!0?300:parseInt(e.duration,10),easing:typeof e.easing=="string"&&e.easing.length!==0?e.easing:"ease-in-out",delay:isNaN(e.delay)===!0?0:parseInt(e.delay,10),fill:typeof e.fill=="string"&&e.fill.length!==0?e.fill:"none",resize:e.resize===!0,useCSS:e.useCSS===!0||e.usecss===!0,hideFromClone:e.hideFromClone===!0||e.hidefromclone===!0,keepToClone:e.keepToClone===!0||e.keeptoclone===!0,tween:e.tween===!0,tweenFromOpacity:isNaN(e.tweenFromOpacity)===!0?.6:parseFloat(e.tweenFromOpacity),tweenToOpacity:isNaN(e.tweenToOpacity)===!0?.5:parseFloat(e.tweenToOpacity)}}function em(e){let t=typeof e;return t==="function"?e():t==="string"?document.querySelector(e):e}function tm(e){return e&&e.ownerDocument===document&&e.parentNode!==null}function pa(e){let t=()=>!1,o=!1,r=!0,n=Mp(e),a=Rp(e),l=em(n.from);if(tm(l)!==!0)return t;typeof l.qMorphCancel=="function"&&l.qMorphCancel();let u,c,f,d,p=l.parentNode,g=l.nextElementSibling,m=Yf(l,a.resize),{width:v,height:x}=nl(p),{borderWidth:y,borderStyle:k,borderColor:S,borderRadius:b,backgroundColor:h,transform:_,position:E,cssText:L}=Zf(l,["borderWidth","borderStyle","borderColor","borderRadius","backgroundColor","transform","position","cssText"]),D=l.classList.toString(),Z=l.style.cssText,B=l.cloneNode(!0),F=a.tween===!0?l.cloneNode(!0):void 0;F!==void 0&&(F.className=F.classList.toString().split(" ").filter(q=>/^bg-/.test(q)===!1).join(" ")),a.hideFromClone===!0&&B.classList.add("q-morph--internal"),B.setAttribute("aria-hidden","true"),B.style.transition="none",B.style.animation="none",B.style.pointerEvents="none",p.insertBefore(B,g),l.qMorphCancel=()=>{o=!0,B.remove(),F?.remove(),a.hideFromClone===!0&&B.classList.remove("q-morph--internal"),l.qMorphCancel=void 0};let $=()=>{let q=em(n.to);if(o===!0||tm(q)!==!0){typeof l.qMorphCancel=="function"&&l.qMorphCancel();return}l!==q&&typeof q.qMorphCancel=="function"&&q.qMorphCancel(),a.keepToClone!==!0&&q.classList.add("q-morph--internal"),B.classList.add("q-morph--internal");let{width:C,height:A}=nl(p),{width:z,height:H}=nl(q.parentNode);a.hideFromClone!==!0&&B.classList.remove("q-morph--internal"),q.qMorphCancel=()=>{o=!0,B.remove(),F?.remove(),a.hideFromClone===!0&&B.classList.remove("q-morph--internal"),a.keepToClone!==!0&&q.classList.remove("q-morph--internal"),l.qMorphCancel=void 0,q.qMorphCancel=void 0};let Q=()=>{if(o===!0){typeof q.qMorphCancel=="function"&&q.qMorphCancel();return}a.hideFromClone!==!0&&(B.classList.add("q-morph--internal"),B.innerHTML="",B.style.left=0,B.style.right="unset",B.style.top=0,B.style.bottom="unset",B.style.transform="none"),a.keepToClone!==!0&&q.classList.remove("q-morph--internal");let ee=q.parentNode,{width:ve,height:O}=nl(ee),w=q.cloneNode(a.keepToClone);w.setAttribute("aria-hidden","true"),a.keepToClone!==!0&&(w.style.left=0,w.style.right="unset",w.style.top=0,w.style.bottom="unset",w.style.transform="none",w.style.pointerEvents="none"),w.classList.add("q-morph--internal");let W=q===l&&p===ee?B:q.nextElementSibling;ee.insertBefore(w,W);let{borderWidth:U,borderStyle:le,borderColor:M,borderRadius:V,backgroundColor:ae,transform:j,position:fe,cssText:ke}=Zf(q,["borderWidth","borderStyle","borderColor","borderRadius","backgroundColor","transform","position","cssText"]),X=q.classList.toString(),ce=q.style.cssText;q.style.cssText=ke,q.style.transform="none",q.style.animation="none",q.style.transition="none",q.className=X.split(" ").filter(ue=>/^bg-/.test(ue)===!1).join(" ");let ge=Yf(q,a.resize),Ce=m.left-ge.left,Fe=m.top-ge.top,de=m.width/(ge.width>0?ge.width:10),Le=m.height/(ge.height>0?ge.height:100),ze=v-C,Ie=x-A,nt=ve-z,ie=O-H,G=Math.max(m.widthM,ze),me=Math.max(m.heightM,Ie),De=Math.max(ge.widthM,nt),Ue=Math.max(ge.heightM,ie),Oe=l===q&&["absolute","fixed"].includes(fe)===!1&&["absolute","fixed"].includes(E)===!1,He=fe==="fixed",dt=ee;for(;He!==!0&&dt!==document;)He=window.getComputedStyle(dt).position==="fixed",dt=dt.parentNode;if(a.hideFromClone!==!0&&(B.style.display="block",B.style.flex="0 0 auto",B.style.opacity=0,B.style.minWidth="unset",B.style.maxWidth="unset",B.style.minHeight="unset",B.style.maxHeight="unset",B.classList.remove("q-morph--internal")),a.keepToClone!==!0&&(w.style.display="block",w.style.flex="0 0 auto",w.style.opacity=0,w.style.minWidth="unset",w.style.maxWidth="unset",w.style.minHeight="unset",w.style.maxHeight="unset"),w.classList.remove("q-morph--internal"),typeof a.classes=="string"&&(q.className+=" "+a.classes),typeof a.style=="string")q.style.cssText+=" "+a.style;else if(ct(a.style)===!0)for(let ue in a.style)q.style[ue]=a.style[ue];let lt=Jf(B),te=Jf(q),se=He===!0?document.documentElement:{scrollLeft:0,scrollTop:0};q.style.position=He===!0?"fixed":"absolute",q.style.left=`${ge.left-se.scrollLeft}px`,q.style.right="unset",q.style.top=`${ge.top-se.scrollTop}px`,q.style.margin=0,a.resize===!0&&(q.style.minWidth="unset",q.style.maxWidth="unset",q.style.minHeight="unset",q.style.maxHeight="unset",q.style.overflow="hidden",q.style.overflowX="hidden",q.style.overflowY="hidden"),document.body.appendChild(q),F!==void 0&&(F.style.cssText=L,F.style.transform="none",F.style.animation="none",F.style.transition="none",F.style.position=q.style.position,F.style.left=`${m.left-se.scrollLeft}px`,F.style.right="unset",F.style.top=`${m.top-se.scrollTop}px`,F.style.margin=0,F.style.pointerEvents="none",a.resize===!0&&(F.style.minWidth="unset",F.style.maxWidth="unset",F.style.minHeight="unset",F.style.maxHeight="unset",F.style.overflow="hidden",F.style.overflowX="hidden",F.style.overflowY="hidden"),document.body.appendChild(F));let J=ue=>{l===q&&r!==!0?(q.style.cssText=Z,q.className=D):(q.style.cssText=ce,q.className=X),w.parentNode===ee&&ee.insertBefore(q,w),B.remove(),w.remove(),F?.remove(),t=()=>!1,l.qMorphCancel=void 0,q.qMorphCancel=void 0,typeof a.onEnd=="function"&&a.onEnd(r===!0?"to":"from",ue===!0)};if(a.useCSS!==!0&&typeof q.animate=="function"){let ue=a.resize===!0?{transform:`translate(${Ce}px, ${Fe}px)`,width:`${G}px`,height:`${me}px`}:{transform:`translate(${Ce}px, ${Fe}px) scale(${de}, ${Le})`},we=a.resize===!0?{width:`${De}px`,height:`${Ue}px`}:{},Ke=a.resize===!0?{width:`${G}px`,height:`${me}px`}:{},Pe=a.resize===!0?{transform:`translate(${-1*Ce}px, ${-1*Fe}px)`,width:`${De}px`,height:`${Ue}px`}:{transform:`translate(${-1*Ce}px, ${-1*Fe}px) scale(${1/de}, ${1/Le})`},Je=F!==void 0?{opacity:a.tweenToOpacity}:{backgroundColor:h},mt=F!==void 0?{opacity:1}:{backgroundColor:ae};d=q.animate([{margin:0,borderWidth:y,borderStyle:k,borderColor:S,borderRadius:b,zIndex:lt,transformOrigin:"0 0",...ue,...Je},{margin:0,borderWidth:U,borderStyle:le,borderColor:M,borderRadius:V,zIndex:te,transformOrigin:"0 0",transform:j,...we,...mt}],{duration:a.duration,easing:a.easing,fill:a.fill,delay:a.delay}),c=F===void 0?void 0:F.animate([{opacity:a.tweenFromOpacity,margin:0,borderWidth:y,borderStyle:k,borderColor:S,borderRadius:b,zIndex:lt,transformOrigin:"0 0",transform:_,...Ke},{opacity:0,margin:0,borderWidth:U,borderStyle:le,borderColor:M,borderRadius:V,zIndex:te,transformOrigin:"0 0",...Pe}],{duration:a.duration,easing:a.easing,fill:a.fill,delay:a.delay}),u=a.hideFromClone===!0||Oe===!0?void 0:B.animate([{margin:`${Ie<0?Ie/2:0}px ${ze<0?ze/2:0}px`,width:`${G+m.marginH}px`,height:`${me+m.marginV}px`},{margin:0,width:0,height:0}],{duration:a.duration,easing:a.easing,fill:a.fill,delay:a.delay}),f=a.keepToClone===!0?void 0:w.animate([Oe===!0?{margin:`${Ie<0?Ie/2:0}px ${ze<0?ze/2:0}px`,width:`${G+m.marginH}px`,height:`${me+m.marginV}px`}:{margin:0,width:0,height:0},{margin:`${ie<0?ie/2:0}px ${nt<0?nt/2:0}px`,width:`${De+ge.marginH}px`,height:`${Ue+ge.marginV}px`}],{duration:a.duration,easing:a.easing,fill:a.fill,delay:a.delay});let qt=jt=>{u?.cancel(),c?.cancel(),f?.cancel(),d.cancel(),d.removeEventListener("finish",qt),d.removeEventListener("cancel",qt),J(jt),u=void 0,c=void 0,f=void 0,d=void 0};l.qMorphCancel=()=>{l.qMorphCancel=void 0,o=!0,qt()},q.qMorphCancel=()=>{q.qMorphCancel=void 0,o=!0,qt()},d.addEventListener("finish",qt),d.addEventListener("cancel",qt),t=jt=>o===!0||d===void 0?!1:jt===!0?(qt(!0),!0):(r=r!==!0,u?.reverse(),c?.reverse(),f?.reverse(),d.reverse(),!0)}else{let ue=`q-morph-anim-${++wp}`,we=document.createElement("style"),Ke=a.resize===!0?` + transform: translate(${Ce}px, ${Fe}px); + width: ${G}px; + height: ${me}px; + `:`transform: translate(${Ce}px, ${Fe}px) scale(${de}, ${Le});`,Pe=a.resize===!0?` + width: ${De}px; + height: ${Ue}px; + `:"",Je=a.resize===!0?` + width: ${G}px; + height: ${me}px; + `:"",mt=a.resize===!0?` + transform: translate(${-1*Ce}px, ${-1*Fe}px); + width: ${De}px; + height: ${Ue}px; + `:`transform: translate(${-1*Ce}px, ${-1*Fe}px) scale(${1/de}, ${1/Le});`,qt=F!==void 0?`opacity: ${a.tweenToOpacity};`:`background-color: ${h};`,jt=F!==void 0?"opacity: 1;":`background-color: ${ae};`,nn=F===void 0?"":` + @keyframes ${ue}-from-tween { 0% { - opacity: ${i.tweenFromOpacity}; + opacity: ${a.tweenFromOpacity}; margin: 0; border-width: ${y}; border-style: ${k}; border-color: ${S}; border-radius: ${b}; - z-index: ${ut}; + z-index: ${lt}; transform-origin: 0 0; - transform: ${C}; - ${et} + transform: ${_}; + ${Je} } 100% { @@ -48,19 +48,19 @@ margin: 0; border-width: ${U}; border-style: ${le}; - border-color: ${R}; - border-radius: ${z}; - z-index: ${oe}; + border-color: ${M}; + border-radius: ${V}; + z-index: ${te}; transform-origin: 0 0; - ${pt} + ${mt} } } - `,To=i.hideFromClone===!0||Ve===!0?"":` - @keyframes ${se}-from { + `,ao=a.hideFromClone===!0||Oe===!0?"":` + @keyframes ${ue}-from { 0% { - margin: ${Qe<0?Qe/2:0}px ${He<0?He/2:0}px; - width: ${Z+m.marginH}px; - height: ${ve+m.marginV}px; + margin: ${Ie<0?Ie/2:0}px ${ze<0?ze/2:0}px; + width: ${G+m.marginH}px; + height: ${me+m.marginV}px; } 100% { @@ -69,59 +69,59 @@ height: 0; } } - `,jo=Ve===!0?` - margin: ${Qe<0?Qe/2:0}px ${He<0?He/2:0}px; - width: ${Z+m.marginH}px; - height: ${ve+m.marginV}px; + `,jo=Oe===!0?` + margin: ${Ie<0?Ie/2:0}px ${ze<0?ze/2:0}px; + width: ${G+m.marginH}px; + height: ${me+m.marginV}px; `:` margin: 0; width: 0; height: 0; - `,ne=i.keepToClone===!0?"":` - @keyframes ${se}-to { + `,oe=a.keepToClone===!0?"":` + @keyframes ${ue}-to { 0% { ${jo} } 100% { - margin: ${ie<0?ie/2:0}px ${ot<0?ot/2:0}px; - width: ${Fe+ge.marginH}px; - height: ${Ie+ge.marginV}px; + margin: ${ie<0?ie/2:0}px ${nt<0?nt/2:0}px; + width: ${De+ge.marginH}px; + height: ${Ue+ge.marginV}px; } } - `;Ce.innerHTML=` - @keyframes ${se} { + `;we.innerHTML=` + @keyframes ${ue} { 0% { margin: 0; border-width: ${y}; border-style: ${k}; border-color: ${S}; border-radius: ${b}; - background-color: ${p}; - z-index: ${ut}; + background-color: ${h}; + z-index: ${lt}; transform-origin: 0 0; ${Ke} - ${yt} + ${qt} } 100% { margin: 0; border-width: ${U}; border-style: ${le}; - border-color: ${R}; - border-radius: ${z}; + border-color: ${M}; + border-radius: ${V}; background-color: ${ae}; - z-index: ${oe}; + z-index: ${te}; transform-origin: 0 0; - transform: ${Q}; - ${we} - ${Gt} + transform: ${j}; + ${Pe} + ${jt} } } - ${To} + ${ao} - ${so} + ${nn} - ${ne} - `,document.head.appendChild(Ce);let pe="normal";E.style.animation=`${i.duration}ms ${i.easing} ${i.delay}ms ${pe} ${i.fill} ${se}-from`,V!==void 0&&(V.style.animation=`${i.duration}ms ${i.easing} ${i.delay}ms ${pe} ${i.fill} ${se}-from-tween`),w.style.animation=`${i.duration}ms ${i.easing} ${i.delay}ms ${pe} ${i.fill} ${se}-to`,T.style.animation=`${i.duration}ms ${i.easing} ${i.delay}ms ${pe} ${i.fill} ${se}`;let Ae=De=>{De===Object(De)&&De.animationName!==se||(T.removeEventListener("animationend",Ae),T.removeEventListener("animationcancel",Ae),J(),Ce.remove())};a.qMorphCancel=()=>{a.qMorphCancel=void 0,o=!0,Ae()},T.qMorphCancel=()=>{T.qMorphCancel=void 0,o=!0,Ae()},T.addEventListener("animationend",Ae),T.addEventListener("animationcancel",Ae),t=De=>o===!0||!T||!E||!w?!1:De===!0?(Ae(),!0):(r=r!==!0,pe=pe==="normal"?"reverse":"normal",E.style.animationDirection=pe,V.style.animationDirection=pe,w.style.animationDirection=pe,T.style.animationDirection=pe,!0)}};i.waitFor>0||i.waitFor==="transitionend"||i.waitFor===Object(i.waitFor)&&typeof i.waitFor.then=="function"?(i.waitFor>0?new Promise(fe=>setTimeout(fe,i.waitFor)):i.waitFor==="transitionend"?new Promise(fe=>{let H=()=>{w!==null&&(clearTimeout(w),w=null),T&&(T.removeEventListener("transitionend",H),T.removeEventListener("transitioncancel",H)),fe()},w=setTimeout(H,400);T.addEventListener("transitionend",H),T.addEventListener("transitioncancel",H)}):i.waitFor).then(W).catch(()=>{typeof T.qMorphCancel=="function"&&T.qMorphCancel()}):W()};return typeof e.onToggle=="function"&&e.onToggle(),requestAnimationFrame(M),T=>t(T)}var al={},wp=["duration","delay","easing","fill","classes","style","duration","resize","useCSS","hideFromClone","keepToClone","tween","tweenFromOpacity","tweenToOpacity","waitFor","onEnd"],kp=["resize","useCSS","hideFromClone","keepToClone","tween"];function Qr(e,t){e.clsAction!==t&&(e.clsAction=t,e.el.classList[t]("q-morph--invisible"))}function om(e){if(e.animating===!0||e.queue.length<2)return;let[t,o]=e.queue;e.animating=!0,t.animating=!0,o.animating=!0,Qr(t,"remove"),Qr(o,"remove");let r=bi({from:t.el,to:o.el,onToggle(){Qr(t,"add"),Qr(o,"remove")},...o.opts,onEnd(n,i){o.opts.onEnd!==void 0&&o.opts.onEnd(n,i),i!==!0&&(t.animating=!1,o.animating=!1,e.animating=!1,e.cancel=void 0,e.queue.shift(),om(e))}});e.cancel=()=>{r(!0),e.cancel=void 0}}function nm(e,t){let o=t.opts;kp.forEach(r=>{o[r]=e[r]===!0})}function qp(e,t){let o=typeof e=="string"&&e.length!==0?e.split(":"):[];t.name=o[0],t.group=o[1],Object.assign(t.opts,{duration:isNaN(o[2])===!0?300:parseFloat(o[2]),waitFor:o[3]})}function Tp(e,t){e.group!==void 0&&(t.group=e.group),e.name!==void 0&&(t.name=e.name);let o=t.opts;wp.forEach(r=>{e[r]!==void 0&&(o[r]=e[r])})}function Mp(e,t){if(t.name===e){let o=al[t.group];o===void 0?(al[t.group]={name:t.group,model:e,queue:[t],animating:!1},Qr(t,"remove")):o.model!==e&&(o.model=e,o.queue.push(t),o.animating===!1&&o.queue.length===2&&om(o));return}t.animating===!1&&Qr(t,"add")}function tm(e,t){let o;Object(t)===t?(o=""+t.model,Tp(t,e),nm(t,e)):o=""+t,o!==e.model?(e.model=o,Mp(o,e)):e.animating===!1&&e.clsAction!==void 0&&e.el.classList[e.clsAction]("q-morph--invisible")}var rm=At({name:"morph",mounted(e,t){let o={el:e,animating:!1,opts:{}};nm(t.modifiers,o),qp(t.arg,o),tm(o,t.value),e.__qmorph=o},updated(e,t){tm(e.__qmorph,t.value)},beforeUnmount(e){let t=e.__qmorph,o=al[t.group];o!==void 0&&o.queue.indexOf(t)!==-1&&(o.queue=o.queue.filter(n=>n!==t),o.queue.length===0&&(o.cancel!==void 0&&o.cancel(),delete al[t.group])),t.clsAction==="add"&&e.classList.remove("q-morph--invisible"),delete e.__qmorph}});var Rp={childList:!0,subtree:!0,attributes:!0,characterData:!0,attributeOldValue:!0,characterDataOldValue:!0};function im(e,t,o){t.handler=o,t.observer!==void 0&&t.observer.disconnect(),t.observer=new MutationObserver(r=>{typeof t.handler=="function"&&(t.handler(r)===!1||t.once===!0)&&am(e)}),t.observer.observe(e,t.opts)}function am(e){let t=e.__qmutation;t!==void 0&&(t.observer!==void 0&&t.observer.disconnect(),delete e.__qmutation)}var lm=At({name:"mutation",mounted(e,{modifiers:{once:t,...o},value:r}){let n={once:t,opts:Object.keys(o).length===0?Rp:o};im(e,n,r),e.__qmutation=n},updated(e,{oldValue:t,value:o}){let r=e.__qmutation;r!==void 0&&t!==o&&im(e,r,o)},beforeUnmount:am});var{passive:ll}=Ze;function um(e,{value:t,oldValue:o}){if(typeof t!="function"){e.scrollTarget.removeEventListener("scroll",e.scroll,ll);return}e.handler=t,typeof o!="function"&&(e.scrollTarget.addEventListener("scroll",e.scroll,ll),e.scroll())}var sm=At({name:"scroll-fire",mounted(e,t){let o={scrollTarget:Bt(e),scroll:Zt(()=>{let r,n;o.scrollTarget===window?(n=e.getBoundingClientRect().bottom,r=window.innerHeight):(n=_n(e).top+Ao(e),r=_n(o.scrollTarget).top+Ao(o.scrollTarget)),n>0&&n{r.styleCleanup=void 0;let f=()=>{document.body.classList.remove("non-selectable")};c===!0?(It(),setTimeout(f,10)):f()}),r.triggered=!1,r.sensitivity=a===!0?r.mouseSensitivity:r.touchSensitivity,r.timer=setTimeout(()=>{r.timer=void 0,It(),r.triggered=!0,r.handler({evt:i,touch:a!==!0,mouse:a===!0,position:r.origin,duration:Date.now()-u})},r.duration)},move(i){let{top:a,left:u}=_t(i);r.timer!==void 0&&(Math.abs(u-r.origin.left)>=r.sensitivity||Math.abs(a-r.origin.top)>=r.sensitivity)&&(clearTimeout(r.timer),r.timer=void 0)},end(i){qt(r,"temp"),r.styleCleanup!==void 0&&r.styleCleanup(r.triggered),r.triggered===!0?i!==void 0&&ke(i):r.timer!==void 0&&(clearTimeout(r.timer),r.timer=void 0)}},n=[600,5,7];if(typeof t.arg=="string"&&t.arg.length!==0&&t.arg.split(":").forEach((i,a)=>{let u=parseInt(i,10);u&&(n[a]=u)}),[r.duration,r.touchSensitivity,r.mouseSensitivity]=n,e.__qtouchhold=r,o.mouse===!0){let i=o.mouseCapture===!0||o.mousecapture===!0?"Capture":"";mt(r,"main",[[e,"mousedown","mouseStart",`passive${i}`]])}Pe.has.touch===!0&&mt(r,"main",[[e,"touchstart","touchStart",`passive${o.capture===!0?"Capture":""}`],[e,"touchend","noop","notPassiveCapture"]])},updated(e,t){let o=e.__qtouchhold;o!==void 0&&t.oldValue!==t.value&&(typeof t.value!="function"&&o.end(),o.handler=t.value)},beforeUnmount(e){let t=e.__qtouchhold;t!==void 0&&(qt(t,"main"),qt(t,"temp"),t.timer!==void 0&&clearTimeout(t.timer),t.styleCleanup!==void 0&&t.styleCleanup(),delete e.__qtouchhold)}});var mm={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Pp=new RegExp(`^([\\d+]+|${Object.keys(mm).join("|")})$`,"i");function Ap(e,t){let{top:o,left:r}=_t(e);return Math.abs(r-t.left)>=7||Math.abs(o-t.top)>=7}var vm=At({name:"touch-repeat",beforeMount(e,{modifiers:t,value:o,arg:r}){let n=Object.keys(t).reduce((c,f)=>{if(Pp.test(f)===!0){let d=isNaN(parseInt(f,10))?mm[f.toLowerCase()]:parseInt(f,10);d>=0&&c.push(d)}return c},[]);if(t.mouse!==!0&&Pe.has.touch!==!0&&n.length===0)return;let i=typeof r=="string"&&r.length!==0?r.split(":").map(c=>parseInt(c,10)):[0,600,300],a=i.length-1,u={keyboard:n,handler:o,noop:Ye,mouseStart(c){u.event===void 0&&typeof u.handler=="function"&&Ko(c)===!0&&(mt(u,"temp",[[document,"mousemove","move","passiveCapture"],[document,"click","end","notPassiveCapture"]]),u.start(c,!0))},keyboardStart(c){if(typeof u.handler=="function"&&Tt(c,n)===!0){if((i[0]===0||u.event!==void 0)&&(ke(c),e.focus(),u.event!==void 0))return;mt(u,"temp",[[document,"keyup","end","notPassiveCapture"],[document,"click","end","notPassiveCapture"]]),u.start(c,!1,!0)}},touchStart(c){if(c.target!==void 0&&typeof u.handler=="function"){let f=c.target;mt(u,"temp",[[f,"touchmove","move","passiveCapture"],[f,"touchcancel","end","notPassiveCapture"],[f,"touchend","end","notPassiveCapture"]]),u.start(c)}},start(c,f,d){d!==!0&&(u.origin=_t(c));function h(m){u.styleCleanup=void 0,document.documentElement.style.cursor="";let v=()=>{document.body.classList.remove("non-selectable")};m===!0?(It(),setTimeout(v,10)):v()}Pe.is.mobile===!0&&(document.body.classList.add("non-selectable"),It(),u.styleCleanup=h),u.event={touch:f!==!0&&d!==!0,mouse:f===!0,keyboard:d===!0,startTime:Date.now(),repeatCount:0};let g=()=>{if(u.timer=void 0,u.event===void 0)return;u.event.repeatCount===0&&(u.event.evt=c,d===!0?u.event.keyCode=c.keyCode:u.event.position=_t(c),Pe.is.mobile!==!0&&(document.documentElement.style.cursor="pointer",document.body.classList.add("non-selectable"),It(),u.styleCleanup=h)),u.event.duration=Date.now()-u.event.startTime,u.event.repeatCount+=1,u.handler(u.event);let m=a0&&ke(c),qt(u,"temp"),u.timer!==void 0&&(clearTimeout(u.timer),u.timer=void 0),u.event=void 0)}};if(e.__qtouchrepeat=u,t.mouse===!0){let c=t.mouseCapture===!0||t.mousecapture===!0?"Capture":"";mt(u,"main",[[e,"mousedown","mouseStart",`passive${c}`]])}if(Pe.has.touch===!0&&mt(u,"main",[[e,"touchstart","touchStart",`passive${t.capture===!0?"Capture":""}`],[e,"touchend","noop","passiveCapture"]]),n.length!==0){let c=t.keyCapture===!0||t.keycapture===!0?"Capture":"";mt(u,"main",[[e,"keydown","keyboardStart",`notPassive${c}`]])}},updated(e,{oldValue:t,value:o}){let r=e.__qtouchrepeat;r!==void 0&&t!==o&&(typeof o!="function"&&r.end(),r.handler=o)},beforeUnmount(e){let t=e.__qtouchrepeat;t!==void 0&&(t.timer!==void 0&&clearTimeout(t.timer),qt(t,"main"),qt(t,"temp"),t.styleCleanup!==void 0&&t.styleCleanup(),delete e.__qtouchrepeat)}});var bl={};Ur(bl,{AddressbarColor:()=>gm,AppFullscreen:()=>ym,AppVisibility:()=>xm,BottomSheet:()=>wm,Cookies:()=>Pm,Dark:()=>Mi,Dialog:()=>$m,IconSet:()=>Nn,Lang:()=>Yo,Loading:()=>Fm,LoadingBar:()=>Dm,LocalStorage:()=>Wm,Meta:()=>Om,Notify:()=>jm,Platform:()=>Ro,Screen:()=>Ti,SessionStorage:()=>Gm});function yi(e,t=document.body){if(typeof e!="string")throw new TypeError("Expected a string as propName");if(!(t instanceof Element))throw new TypeError("Expected a DOM element");return getComputedStyle(t).getPropertyValue(`--q-${e}`).trim()||null}var sl;function $p(){return Pe.is.winphone?"msapplication-navbutton-color":Pe.is.safari?"apple-mobile-web-app-status-bar-style":"theme-color"}function Ep(e){let t=document.getElementsByTagName("META");for(let o in t)if(t[o].name===e)return t[o]}function Bp(e){sl===void 0&&(sl=$p());let t=Ep(sl),o=t===void 0;o&&(t=document.createElement("meta"),t.setAttribute("name",sl)),t.setAttribute("content",e),o&&document.head.appendChild(t)}var gm={set:Pe.is.mobile===!0&&(Pe.is.nativeMobile===!0||Pe.is.winphone===!0||Pe.is.safari===!0||Pe.is.webkit===!0||Pe.is.vivaldi===!0)?e=>{let t=e||yi("primary");Pe.is.nativeMobile===!0&&window.StatusBar?window.StatusBar.backgroundColorByHexString(t):Bp(t)}:Ye,install({$q:e}){e.addressbarColor=this,e.config.addressbarColor&&this.set(e.config.addressbarColor)}};var Si={};function Lp(e){Object.assign(Qt,{request:e,exit:e,toggle:e})}function pm(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement||null}function bm(){let e=Qt.activeEl=Qt.isActive===!1?null:pm();Ms(e===null||e===document.documentElement?document.body:e)}function Fp(){Qt.isActive=Qt.isActive===!1,bm()}function hm(e,t){try{let o=e[t]();return o===void 0?Promise.resolve():o}catch(o){return Promise.reject(o)}}var Qt=Ut({isActive:!1,activeEl:null},{isCapable:!1,install({$q:e}){e.fullscreen=this}});Si.request=["requestFullscreen","msRequestFullscreen","mozRequestFullScreen","webkitRequestFullscreen"].find(e=>document.documentElement[e]!==void 0),Qt.isCapable=Si.request!==void 0,Qt.isCapable===!1?Lp(()=>Promise.reject("Not capable")):(Object.assign(Qt,{request(e){let t=e||document.documentElement,{activeEl:o}=Qt;return t===o?Promise.resolve():(o!==null&&t.contains(o)===!0?Qt.exit():Promise.resolve()).finally(()=>hm(t,Si.request))},exit(){return Qt.isActive===!0?hm(document,Si.exit):Promise.resolve()},toggle(e){return Qt.isActive===!0?Qt.exit():Qt.request(e)}}),Si.exit=["exitFullscreen","msExitFullscreen","mozCancelFullScreen","webkitExitFullscreen"].find(e=>document[e]),Qt.isActive=!!pm(),Qt.isActive===!0&&bm(),["onfullscreenchange","onmsfullscreenchange","onwebkitfullscreenchange"].forEach(e=>{document[e]=Fp}));var ym=Qt;var Sm=Ut({appVisible:!0},{install({$q:e}){ft(e,"appVisible",()=>this.appVisible)}});{let e,t;if(typeof document.hidden<"u"?(e="hidden",t="visibilitychange"):typeof document.msHidden<"u"?(e="msHidden",t="msvisibilitychange"):typeof document.webkitHidden<"u"&&(e="webkitHidden",t="webkitvisibilitychange"),t&&typeof document[e]<"u"){let o=()=>{Sm.appVisible=!document[e]};document.addEventListener(t,o,!1)}}var xm=Sm;var _m=A({name:"BottomSheetComponent",props:{...Se,title:String,message:String,actions:Array,grid:Boolean,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){let{proxy:o}=K(),r=xe(e,o.$q),n=q(null);function i(){n.value.show()}function a(){n.value.hide()}function u(m){t("ok",m),a()}function c(){t("hide")}function f(){return e.actions.map(m=>{let v=m.avatar||m.img;return m.label===void 0?l(lo,{class:"col-all",dark:r.value}):l("div",{class:["q-bottom-sheet__item q-hoverable q-focusable cursor-pointer relative-position",m.class],style:m.style,tabindex:0,role:"listitem",onClick(){u(m)},onKeyup(x){x.keyCode===13&&u(m)}},[l("div",{class:"q-focus-helper"}),m.icon?l(Re,{name:m.icon,color:m.color}):v?l("img",{class:m.avatar?"q-bottom-sheet__avatar":"",src:v}):l("div",{class:"q-bottom-sheet__empty-icon"}),l("div",m.label)])})}function d(){return e.actions.map(m=>{let v=m.avatar||m.img;return m.label===void 0?l(lo,{spaced:!0,dark:r.value}):l(Qo,{class:["q-bottom-sheet__item",m.classes],style:m.style,tabindex:0,clickable:!0,dark:r.value,onClick(){u(m)}},()=>[l(no,{avatar:!0},()=>m.icon?l(Re,{name:m.icon,color:m.color}):v?l("img",{class:m.avatar?"q-bottom-sheet__avatar":"",src:v}):null),l(no,()=>m.label)])})}function h(){let m=[];return e.title&&m.push(l(xo,{class:"q-dialog__title"},()=>e.title)),e.message&&m.push(l(xo,{class:"q-dialog__message"},()=>e.message)),m.push(e.grid===!0?l("div",{class:"row items-stretch justify-start",role:"list"},f()):l("div",{role:"list"},d())),m}function g(){return[l(hr,{class:[`q-bottom-sheet q-bottom-sheet--${e.grid===!0?"grid":"list"}`+(r.value===!0?" q-bottom-sheet--dark q-dark":""),e.cardClass],style:e.cardStyle},h)]}return Object.assign(o,{show:i,hide:a}),()=>l(Ho,{ref:n,position:"bottom",onHide:c},g)}});function Cm(e,t){for(let o in t)o!=="spinner"&&Object(t[o])===t[o]?(e[o]=Object(e[o])!==e[o]?{}:{...e[o]},Cm(e[o],t[o])):e[o]=t[o]}function cl(e,t,o){return r=>{let n,i,a=t===!0&&r.component!==void 0;if(a===!0){let{component:S,componentProps:b}=r;n=typeof S=="string"?o.component(S):S,i=b||{}}else{let{class:S,style:b,...p}=r;n=e,i=p,S!==void 0&&(p.cardClass=S),b!==void 0&&(p.cardStyle=b)}let u,c=!1,f=q(null),d=Eo(!1,"dialog"),h=S=>{if(f.value!==null&&f.value[S]!==void 0){f.value[S]();return}let b=u.$.subTree;if(b&&b.component){if(b.component.proxy&&b.component.proxy[S]){b.component.proxy[S]();return}if(b.component.subTree&&b.component.subTree.component&&b.component.subTree.component.proxy&&b.component.subTree.component.proxy[S]){b.component.subTree.component.proxy[S]();return}}console.error("[Quasar] Incorrectly defined Dialog component")},g=[],m=[],v={onOk(S){return g.push(S),v},onCancel(S){return m.push(S),v},onDismiss(S){return g.push(S),m.push(S),v},hide(){return h("hide"),v},update(S){if(u!==null){if(a===!0)Object.assign(i,S);else{let{class:b,style:p,...C}=S;b!==void 0&&(C.cardClass=b),p!==void 0&&(C.cardStyle=p),Cm(i,C)}u.$forceUpdate()}return v}},x=S=>{c=!0,g.forEach(b=>{b(S)})},y=()=>{k.unmount(d),ir(d),k=null,u=null,c!==!0&&m.forEach(S=>{S()})},k=nn({name:"QGlobalDialog",setup:()=>()=>l(n,{...i,ref:f,onOk:x,onHide:y,onVnodeMounted(...S){typeof i.onVnodeMounted=="function"&&i.onVnodeMounted(...S),Ee(()=>h("show"))}})},o);return u=k.mount(d),v}}var wm={install({$q:e,parentApp:t}){e.bottomSheet=this.create=cl(_m,!1,t)}};function km(e){return encodeURIComponent(e)}function qm(e){return decodeURIComponent(e)}function Dp(e){return km(e===Object(e)?JSON.stringify(e):""+e)}function Vp(e){if(e==="")return e;e.indexOf('"')===0&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\")),e=qm(e.replace(/\+/g," "));try{let t=JSON.parse(e);(t===Object(t)||Array.isArray(t)===!0)&&(e=t)}catch{}return e}function Tm(e){let t=new Date;return t.setMilliseconds(t.getMilliseconds()+e),t.toUTCString()}function zp(e){let t=0,o=e.match(/(\d+)d/),r=e.match(/(\d+)h/),n=e.match(/(\d+)m/),i=e.match(/(\d+)s/);return o&&(t+=o[1]*864e5),r&&(t+=r[1]*36e5),n&&(t+=n[1]*6e4),i&&(t+=i[1]*1e3),t===0?e:Tm(t)}function Mm(e,t,o={},r){let n,i;o.expires!==void 0&&(Object.prototype.toString.call(o.expires)==="[object Date]"?n=o.expires.toUTCString():typeof o.expires=="string"?n=zp(o.expires):(i=parseFloat(o.expires),n=isNaN(i)===!1?Tm(i*864e5):o.expires));let a=`${km(e)}=${Dp(t)}`,u=[a,n!==void 0?"; Expires="+n:"",o.path?"; Path="+o.path:"",o.domain?"; Domain="+o.domain:"",o.sameSite?"; SameSite="+o.sameSite:"",o.httpOnly?"; HttpOnly":"",o.secure?"; Secure":"",o.other?"; "+o.other:""].join("");if(r){r.req.qCookies?r.req.qCookies.push(u):r.req.qCookies=[u],r.res.setHeader("Set-Cookie",r.req.qCookies);let c=r.req.headers.cookie||"";if(n!==void 0&&i<0){let f=dl(e,r);f!==void 0&&(c=c.replace(`${e}=${f}; `,"").replace(`; ${e}=${f}`,"").replace(`${e}=${f}`,""))}else c=c?`${a}; ${c}`:u;r.req.headers.cookie=c}else document.cookie=u}function dl(e,t){let o=t?t.req.headers:document,r=o.cookie?o.cookie.split("; "):[],n=r.length,i=e?null:{},a=0,u,c,f;for(;adl(t,e),set:(t,o,r)=>Mm(t,o,r,e),has:t=>Ip(t,e),remove:(t,o)=>Op(t,o,e),getAll:()=>dl(null,e)}}var Rm={install({$q:e,ssrContext:t}){e.cookies=this}};Object.assign(Rm,Hp());var Pm=Rm;var Am=A({name:"DialogPluginComponent",props:{...Se,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){let{proxy:o}=K(),{$q:r}=o,n=xe(e,r),i=q(null),a=q(e.prompt!==void 0?e.prompt.model:e.options!==void 0?e.options.model:void 0),u=s(()=>"q-dialog-plugin"+(n.value===!0?" q-dialog-plugin--dark q-dark":"")+(e.progress!==!1?" q-dialog-plugin--progress":"")),c=s(()=>e.color||(n.value===!0?"amber":"primary")),f=s(()=>e.progress===!1?null:ct(e.progress)===!0?{component:e.progress.spinner||wt,props:{color:e.progress.color||c.value}}:{component:wt,props:{color:c.value}}),d=s(()=>e.prompt!==void 0||e.options!==void 0),h=s(()=>{if(d.value!==!0)return{};let{model:_,isValid:F,items:I,...j}=e.prompt!==void 0?e.prompt:e.options;return j}),g=s(()=>ct(e.ok)===!0||e.ok===!0?r.lang.label.ok:e.ok),m=s(()=>ct(e.cancel)===!0||e.cancel===!0?r.lang.label.cancel:e.cancel),v=s(()=>e.prompt!==void 0?e.prompt.isValid!==void 0&&e.prompt.isValid(a.value)!==!0:e.options!==void 0?e.options.isValid!==void 0&&e.options.isValid(a.value)!==!0:!1),x=s(()=>({color:c.value,label:g.value,ripple:!1,disable:v.value,...ct(e.ok)===!0?e.ok:{flat:!0},"data-autofocus":e.focus==="ok"&&d.value!==!0||void 0,onClick:b})),y=s(()=>({color:c.value,label:m.value,ripple:!1,...ct(e.cancel)===!0?e.cancel:{flat:!0},"data-autofocus":e.focus==="cancel"&&d.value!==!0||void 0,onClick:p}));Y(()=>e.prompt&&e.prompt.model,$),Y(()=>e.options&&e.options.model,$);function k(){i.value.show()}function S(){i.value.hide()}function b(){t("ok",co(a.value)),S()}function p(){S()}function C(){t("hide")}function $(_){a.value=_}function L(_){v.value!==!0&&e.prompt.type!=="textarea"&&Tt(_,13)===!0&&b()}function D(_,F){return e.html===!0?l(xo,{class:_,innerHTML:F}):l(xo,{class:_},()=>F)}function B(){return[l(Vr,{color:c.value,dense:!0,autofocus:!0,dark:n.value,...h.value,modelValue:a.value,"onUpdate:modelValue":$,onKeyup:L})]}function E(){return[l(Na,{color:c.value,options:e.options.items,dark:n.value,...h.value,modelValue:a.value,"onUpdate:modelValue":$})]}function V(){let _=[];return e.cancel&&_.push(l(ze,y.value)),e.ok&&_.push(l(ze,x.value)),l(ea,{class:e.stackButtons===!0?"items-end":"",vertical:e.stackButtons,align:"right"},()=>_)}function M(){let _=[];return e.title&&_.push(D("q-dialog__title",e.title)),e.progress!==!1&&_.push(l(xo,{class:"q-dialog__progress"},()=>l(f.value.component,f.value.props))),e.message&&_.push(D("q-dialog__message",e.message)),e.prompt!==void 0?_.push(l(xo,{class:"scroll q-dialog-plugin__form"},B)):e.options!==void 0&&_.push(l(lo,{dark:n.value}),l(xo,{class:"scroll q-dialog-plugin__form"},E),l(lo,{dark:n.value})),(e.ok||e.cancel)&&_.push(V()),_}function T(){return[l(hr,{class:[u.value,e.cardClass],style:e.cardStyle,dark:n.value},M)]}return Object.assign(o,{show:k,hide:S}),()=>l(Ho,{ref:i,onHide:C},T)}});var $m={install({$q:e,parentApp:t}){e.dialog=this.create=cl(Am,!0,t)}};var Nr,bu,Em=0,zn=null,zt={},On={},Bm={group:"__default_quasar_group__",delay:0,message:!1,html:!1,spinnerSize:80,spinnerColor:"",messageColor:"",backgroundColor:"",boxClass:"",spinner:wt,customClass:""},Lm={...Bm};function Qp(e){if(e&&e.group!==void 0&&On[e.group]!==void 0)return Object.assign(On[e.group],e);let t=ct(e)===!0&&e.ignoreDefaults===!0?{...Bm,...e}:{...Lm,...e};return On[t.group]=t,t}var wo=Ut({isActive:!1},{show(e){zt=Qp(e);let{group:t}=zt;return wo.isActive=!0,Nr!==void 0?(zt.uid=Em,bu.$forceUpdate()):(zt.uid=++Em,zn!==null&&clearTimeout(zn),zn=setTimeout(()=>{zn=null;let o=Eo("q-loading");Nr=nn({name:"QLoading",setup(){je(()=>{di(!0)});function r(){wo.isActive!==!0&&Nr!==void 0&&(di(!1),Nr.unmount(o),ir(o),Nr=void 0,bu=void 0)}function n(){if(wo.isActive!==!0)return null;let i=[l(zt.spinner,{class:"q-loading__spinner",color:zt.spinnerColor,size:zt.spinnerSize})];return zt.message&&i.push(l("div",{class:"q-loading__message"+(zt.messageColor?` text-${zt.messageColor}`:""),[zt.html===!0?"innerHTML":"textContent"]:zt.message})),l("div",{class:"q-loading fullscreen flex flex-center z-max "+zt.customClass.trim(),key:zt.uid},[l("div",{class:"q-loading__backdrop"+(zt.backgroundColor?` bg-${zt.backgroundColor}`:"")}),l("div",{class:"q-loading__box column items-center "+zt.boxClass},i)])}return()=>l(st,{name:"q-transition--fade",appear:!0,onAfterLeave:r},n)}},wo.__parentApp),bu=Nr.mount(o)},zt.delay)),o=>{if(o===void 0||Object(o)!==o){wo.hide(t);return}wo.show({...o,group:t})}},hide(e){if(wo.isActive===!0){if(e===void 0)On={};else{if(On[e]===void 0)return;{delete On[e];let t=Object.keys(On);if(t.length!==0){let o=t[t.length-1];wo.show({group:o});return}}}zn!==null&&(clearTimeout(zn),zn=null),wo.isActive=!1}},setDefaults(e){ct(e)===!0&&Object.assign(Lm,e)},install({$q:e,parentApp:t}){e.loading=this,wo.__parentApp=t,e.config.loading!==void 0&&this.setDefaults(e.config.loading)}}),Fm=wo;var fl=q(null),yu=Ut({isActive:!1},{start:Ye,stop:Ye,increment:Ye,setDefaults:Ye,install({$q:e,parentApp:t}){if(e.loadingBar=this,this.__installed===!0){e.config.loadingBar!==void 0&&this.setDefaults(e.config.loadingBar);return}let o=q(e.config.loadingBar!==void 0?{...e.config.loadingBar}:{});function r(){yu.isActive=!0}function n(){yu.isActive=!1}let i=Eo("q-loading-bar");nn({name:"LoadingBar",devtools:{hide:!0},setup:()=>()=>l(Di,{...o.value,onStart:r,onStop:n,ref:fl})},t).mount(i),Object.assign(this,{start(a){fl.value.start(a)},stop(){fl.value.stop()},increment(){fl.value.increment.apply(null,arguments)},setDefaults(a){ct(a)===!0&&Object.assign(o.value,a)}})}}),Dm=yu;var ml=null,Su,ko=[];function Np(e){e.title&&(e.title=e.titleTemplate?e.titleTemplate(e.title):e.title,delete e.titleTemplate),[["meta","content"],["link","href"]].forEach(t=>{let o=e[t[0]],r=t[1];for(let n in o){let i=o[n];i.template&&(Object.keys(i).length===1?delete o[n]:(i[r]=i.template(i[r]||""),delete i.template))}})}function jp(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!0;for(let o in e)if(e[o]!==t[o])return!0}function Vm(e){return["class","style"].includes(e)===!1}function zm(e){return["lang","dir"].includes(e)===!1}function Up(e,t){let o={},r={};return e===void 0?{add:t,remove:r}:(e.title!==t.title&&(o.title=t.title),["meta","link","script","htmlAttr","bodyAttr"].forEach(n=>{let i=e[n],a=t[n];if(r[n]=[],i==null){o[n]=a;return}o[n]={};for(let u in i)a.hasOwnProperty(u)===!1&&r[n].push(u);for(let u in a)i.hasOwnProperty(u)===!1?o[n][u]=a[u]:jp(i[u],a[u])===!0&&(r[n].push(u),o[n][u]=a[u])}),{add:o,remove:r})}function Kp({add:e,remove:t}){e.title&&(document.title=e.title),Object.keys(t).length!==0&&(["meta","link","script"].forEach(o=>{t[o].forEach(r=>{document.head.querySelector(`${o}[data-qmeta="${r}"]`).remove()})}),t.htmlAttr.filter(zm).forEach(o=>{document.documentElement.removeAttribute(o)}),t.bodyAttr.filter(Vm).forEach(o=>{document.body.removeAttribute(o)})),["meta","link","script"].forEach(o=>{let r=e[o];for(let n in r){let i=document.createElement(o);for(let a in r[n])a!=="innerHTML"&&i.setAttribute(a,r[n][a]);i.setAttribute("data-qmeta",n),o==="script"&&(i.innerHTML=r[n].innerHTML||""),document.head.appendChild(i)}}),Object.keys(e.htmlAttr).filter(zm).forEach(o=>{document.documentElement.setAttribute(o,e.htmlAttr[o]||"")}),Object.keys(e.bodyAttr).filter(Vm).forEach(o=>{document.body.setAttribute(o,e.bodyAttr[o]||"")})}function Wp(){ml=null;let e={title:"",titleTemplate:null,meta:{},link:{},script:{},htmlAttr:{},bodyAttr:{}};for(let t=0;te.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function Nm(e,t,o){if(!e)return xi("parameter required");let r,n={textColor:"white"};if(e.ignoreDefaults!==!0&&Object.assign(n,vl),ct(e)===!1&&(n.type&&Object.assign(n,jr[n.type]),e={message:e}),Object.assign(n,jr[e.type||n.type],e),typeof n.icon=="function"&&(n.icon=n.icon(t)),n.spinner?(n.spinner===!0&&(n.spinner=wt),n.spinner=Kr(n.spinner)):n.spinner=!1,n.meta={hasMedia:!!(n.spinner!==!1||n.icon||n.avatar),hasText:Im(n.message)||Im(n.caption)},n.position){if(xu.includes(n.position)===!1)return xi("wrong position",e)}else n.position="bottom";if(Gp.includes(n.timeout)===!0)n.timeout=5e3;else{let c=Number(n.timeout);if(isNaN(c)||c<0)return xi("wrong timeout",e);n.timeout=Number.isFinite(c)?c:0}n.timeout===0?n.progress=!1:n.progress===!0&&(n.meta.progressClass="q-notification__progress"+(n.progressClass?` ${n.progressClass}`:""),n.meta.progressStyle={animationDuration:`${n.timeout+1e3}ms`});let i=(Array.isArray(e.actions)===!0?e.actions:[]).concat(e.ignoreDefaults!==!0&&Array.isArray(vl.actions)===!0?vl.actions:[]).concat(jr[e.type]!==void 0&&Array.isArray(jr[e.type].actions)===!0?jr[e.type].actions:[]),{closeBtn:a}=n;if(a&&i.push({label:typeof a=="string"?a:t.lang.label.close}),n.actions=i.map(({handler:c,noDismiss:f,...d})=>({flat:!0,...d,onClick:typeof c=="function"?()=>{c(),f!==!0&&u()}:()=>{u()}})),n.multiLine===void 0&&(n.multiLine=n.actions.length>1),Object.assign(n.meta,{class:`q-notification row items-stretch q-notification--${n.multiLine===!0?"multi-line":"standard"}`+(n.color!==void 0?` bg-${n.color}`:"")+(n.textColor!==void 0?` text-${n.textColor}`:"")+(n.classes!==void 0?` ${n.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(n.multiLine===!0?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(n.multiLine===!0?"":" col"),leftClass:n.meta.hasText===!0?"additional":"single",attrs:{role:"alert",...n.attrs}}),n.group===!1?(n.group=void 0,n.meta.group=void 0):((n.group===void 0||n.group===!0)&&(n.group=[n.message,n.caption,n.multiline].concat(n.actions.map(c=>`${c.label}*${c.icon}`)).join("|")),n.meta.group=n.group+"|"+n.position),n.actions.length===0?n.actions=void 0:n.meta.actionsClass="q-notification__actions row items-center "+(n.multiLine===!0?"justify-end":"col-auto")+(n.meta.hasMedia===!0?" q-notification__actions--with-media":""),o!==void 0){o.notif.meta.timer&&(clearTimeout(o.notif.meta.timer),o.notif.meta.timer=void 0),n.meta.uid=o.notif.meta.uid;let c=qo[n.position].value.indexOf(o.notif);qo[n.position].value[c]=n}else{let c=gl[n.meta.group];if(c===void 0){if(n.meta.uid=Yp++,n.meta.badge=1,["left","right","center"].indexOf(n.position)!==-1)qo[n.position].value.splice(Math.floor(qo[n.position].value.length/2),0,n);else{let f=n.position.indexOf("top")!==-1?"unshift":"push";qo[n.position].value[f](n)}n.group!==void 0&&(gl[n.meta.group]=n)}else{if(c.meta.timer&&(clearTimeout(c.meta.timer),c.meta.timer=void 0),n.badgePosition!==void 0){if(Zp.includes(n.badgePosition)===!1)return xi("wrong badgePosition",e)}else n.badgePosition=`top-${n.position.indexOf("left")!==-1?"right":"left"}`;n.meta.uid=c.meta.uid,n.meta.badge=c.meta.badge+1,n.meta.badgeClass=`q-notification__badge q-notification__badge--${n.badgePosition}`+(n.badgeColor!==void 0?` bg-${n.badgeColor}`:"")+(n.badgeTextColor!==void 0?` text-${n.badgeTextColor}`:"")+(n.badgeClass?` ${n.badgeClass}`:"");let f=qo[n.position].value.indexOf(c);qo[n.position].value[f]=gl[n.meta.group]=n}}let u=()=>{Jp(n),r=void 0};if(n.timeout>0&&(n.meta.timer=setTimeout(()=>{n.meta.timer=void 0,u()},n.timeout+1e3)),n.group!==void 0)return c=>{c!==void 0?xi("trying to update a grouped one which is forbidden",e):u()};if(r={dismiss:u,config:e,notif:n},o!==void 0){Object.assign(o,r);return}return c=>{if(r!==void 0)if(c===void 0)r.dismiss();else{let f=Object.assign({},r.config,c,{group:!1,position:n.position});Nm(f,t,r)}}}function Jp(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);let t=qo[e.position].value.indexOf(e);if(t!==-1){e.group!==void 0&&delete gl[e.meta.group];let o=Qm[""+e.meta.uid];if(o){let{width:r,height:n}=getComputedStyle(o);o.style.left=`${o.offsetLeft}px`,o.style.width=r,o.style.height=n}qo[e.position].value.splice(t,1),typeof e.onDismiss=="function"&&e.onDismiss()}}function Im(e){return e!=null&&Xp.test(e)!==!0}function xi(e,t){return console.error(`Notify: ${e}`,t),!1}function e0(){return A({name:"QNotifications",devtools:{hide:!0},setup(){return()=>l("div",{class:"q-notifications"},xu.map(e=>l(Bu,{key:e,class:Hm[e],tag:"div",name:`q-notification--${e}`},()=>qo[e].value.map(t=>{let o=t.meta,r=[];if(o.hasMedia===!0&&(t.spinner!==!1?r.push(l(t.spinner,{class:"q-notification__spinner q-notification__spinner--"+o.leftClass,color:t.spinnerColor,size:t.spinnerSize})):t.icon?r.push(l(Re,{class:"q-notification__icon q-notification__icon--"+o.leftClass,name:t.icon,color:t.iconColor,size:t.iconSize,role:"img"})):t.avatar&&r.push(l(zi,{class:"q-notification__avatar q-notification__avatar--"+o.leftClass},()=>l("img",{src:t.avatar,"aria-hidden":"true"})))),o.hasText===!0){let i,a={class:"q-notification__message col"};if(t.html===!0)a.innerHTML=t.caption?`
${t.message}
${t.caption}
`:t.message;else{let u=[t.message];i=t.caption?[l("div",u),l("div",{class:"q-notification__caption"},[t.caption])]:u}r.push(l("div",a,i))}let n=[l("div",{class:o.contentClass},r)];return t.progress===!0&&n.push(l("div",{key:`${o.uid}|p|${o.badge}`,class:o.progressClass,style:o.progressStyle})),t.actions!==void 0&&n.push(l("div",{class:o.actionsClass},t.actions.map(i=>l(ze,i)))),o.badge>1&&n.push(l("div",{key:`${o.uid}|${o.badge}`,class:t.meta.badgeClass,style:t.badgeStyle},[o.badge])),l("div",{ref:i=>{Qm[""+o.uid]=i},key:o.uid,class:o.class,...o.attrs},[l("div",{class:o.wrapperClass},n)])}))))}})}var jm={setDefaults(e){ct(e)===!0&&Object.assign(vl,e)},registerType(e,t){ct(t)===!0&&(jr[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=o=>Nm(o,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,e.config.notify!==void 0&&this.setDefaults(e.config.notify),this.__installed!==!0){xu.forEach(r=>{qo[r]=q([]);let n=["left","center","right"].includes(r)===!0?"center":r.indexOf("top")!==-1?"top":"bottom",i=r.indexOf("left")!==-1?"start":r.indexOf("right")!==-1?"end":"center",a=["left","right"].includes(r)?`items-${r==="left"?"start":"end"} justify-center`:r==="center"?"flex-center":`items-${i}`;Hm[r]=`q-notifications__list q-notifications__list--${n} fixed column no-wrap ${a}`});let o=Eo("q-notify");nn(e0(),t).mount(o)}}};function t0(e){return Go(e)===!0?"__q_date|"+e.getTime():Tl(e)===!0?"__q_expr|"+e.source:typeof e=="number"?"__q_numb|"+e:typeof e=="boolean"?"__q_bool|"+(e?"1":"0"):typeof e=="string"?"__q_strn|"+e:typeof e=="function"?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}function o0(e){if(e.length<9)return e;let o=e.substring(0,8),r=e.substring(9);switch(o){case"__q_date":let n=Number(r);return new Date(Number.isNaN(n)===!0?r:n);case"__q_expr":return new RegExp(r);case"__q_numb":return Number(r);case"__q_bool":return r==="1";case"__q_strn":return""+r;case"__q_objt":return JSON.parse(r);default:return e}}function hl(){let e=()=>null;return{has:()=>!1,hasItem:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:Ye,setItem:Ye,remove:Ye,removeItem:Ye,clear:Ye,isEmpty:()=>!0}}function pl(e){let t=window[e+"Storage"],o=a=>{let u=t.getItem(a);return u?o0(u):null},r=a=>t.getItem(a)!==null,n=(a,u)=>{t.setItem(a,t0(u))},i=a=>{t.removeItem(a)};return{has:r,hasItem:r,getLength:()=>t.length,getItem:o,getIndex:a=>aa{let a,u={},c=t.length;for(let f=0;f{let a=[],u=t.length;for(let c=0;c{t.clear()},isEmpty:()=>t.length===0}}var Um=Pe.has.webStorage===!1?hl():pl("local"),Km={install({$q:e}){e.localStorage=Um}};Object.assign(Km,Um);var Wm=Km;var Ym=Pe.has.webStorage===!1?hl():pl("session"),Xm={install({$q:e}){e.sessionStorage=Ym}};Object.assign(Xm,Ym);var Gm=Xm;var Cu={};Ur(Cu,{EventBus:()=>_i,clone:()=>en,colors:()=>ec,copyToClipboard:()=>Zm,createMetaMixin:()=>Jm,createUploaderComponent:()=>nl,date:()=>mc,debounce:()=>Zt,dom:()=>Ss,event:()=>Ou,exportFile:()=>tv,extend:()=>vn,format:()=>ts,frameDebounce:()=>Or,getCssVar:()=>yi,is:()=>Xu,morph:()=>bi,noop:()=>Ye,openURL:()=>nv,patterns:()=>Js,runSequentialPromises:()=>_u,scroll:()=>As,setCssVar:()=>Wr,throttle:()=>Zn,uid:()=>Fo});function n0(e){let t=document.createElement("textarea");t.value=e,t.contentEditable="true",t.style.position="fixed";let o=()=>{};cr(o),document.body.appendChild(t),t.focus(),t.select();let r=document.execCommand("copy");return t.remove(),Mn(o),r}function Zm(e){return navigator.clipboard!==void 0?navigator.clipboard.writeText(e):new Promise((t,o)=>{let r=n0(e);r?t(!0):o(r)})}var Jm=e=>{let t={activated(){this.__qMeta.active=!0,uo()},deactivated(){this.__qMeta.active=!1,uo()},unmounted(){ko.splice(ko.indexOf(this.__qMeta),1),uo(),this.__qMeta=void 0}};return typeof e=="function"?Object.assign(t,{computed:{__qMetaOptions(){return e.call(this)||{}}},watch:{__qMetaOptions(o){this.__qMeta.val=o,this.__qMeta.active===!0&&uo()}},created(){this.__qMeta={active:!0,val:this.__qMetaOptions},ko.push(this.__qMeta),uo()}}):t.created=function(){this.__qMeta={active:!0,val:e},ko.push(this.__qMeta),uo()},t};var _i=class{constructor(){this.__stack={}}on(t,o,r){return(this.__stack[t]||(this.__stack[t]=[])).push({fn:o,ctx:r}),this}once(t,o,r){let n=(...i)=>{this.off(t,n),o.apply(r,i)};return n.__callback=o,this.on(t,n,r)}emit(t){let o=this.__stack[t];if(o!==void 0){let r=[].slice.call(arguments,1);o.forEach(n=>{n.fn.apply(n.ctx,r)})}return this}off(t,o){let r=this.__stack[t];if(r===void 0)return this;if(o===void 0)return delete this.__stack[t],this;let n=r.filter(i=>i.fn!==o&&i.fn.__callback!==o);return n.length!==0?this.__stack[t]=n:delete this.__stack[t],this}};function ev(e){setTimeout(()=>{window.URL.revokeObjectURL(e.href)},1e4),e.remove()}function tv(e,t,o={}){let{mimeType:r,byteOrderMark:n,encoding:i}=typeof o=="string"?{mimeType:o}:o,a=i!==void 0?new TextEncoder(i).encode([t]):t,u=n!==void 0?[n,a]:[a],c=new Blob(u,{type:r||"application/octet-stream"}),f=document.createElement("a");f.href=window.URL.createObjectURL(c),f.setAttribute("download",e),typeof f.download>"u"&&f.setAttribute("target","_blank"),f.classList.add("hidden"),f.style.position="fixed",document.body.appendChild(f);try{return f.click(),ev(f),!0}catch(d){return ev(f),d}}function r0(e){let t=Object.assign({noopener:!0},e),o=[];for(let r in t){let n=t[r];n===!0?o.push(r):(fo(n)||typeof n=="string"&&n!=="")&&o.push(r+"="+n)}return o.join(",")}function ov(e,t,o){let r=window.open;if(Ro.is.cordova===!0){if(cordova!==void 0&&cordova.InAppBrowser!==void 0&&cordova.InAppBrowser.open!==void 0)r=cordova.InAppBrowser.open;else if(navigator!==void 0&&navigator.app!==void 0)return navigator.app.loadUrl(e,{openExternal:!0})}let n=r(e,"_blank",r0(o));if(n)return Ro.is.desktop&&n.focus(),n;t&&t()}var nv=(e,t,o)=>{if(Ro.is.ios===!0&&window.SafariViewController!==void 0){window.SafariViewController.isAvailable(r=>{r?window.SafariViewController.show({url:e},Ye,t):ov(e,t,o)});return}return ov(e,t,o)};function i0(e){let t=Array.isArray(e);if(t===!0){let n=e.length;return{isList:t,totalJobs:n,resultAggregator:Array(n).fill(null)}}let o=Object.keys(e),r={};return o.forEach(n=>{r[n]=null}),{isList:t,totalJobs:o.length,resultAggregator:r,resultKeys:o}}function _u(e,{threadsNumber:t=1,abortOnFail:o=!0}={}){let r=-1,n=!1,{isList:i,totalJobs:a,resultAggregator:u,resultKeys:c}=i0(e),f=()=>new Promise((h,g)=>{function m(){let v=++r;if(n===!0||v>=a){h();return}let x=i===!0?v:c[v];e[x](u).then(y=>{if(n===!0){h();return}u[x]={key:x,status:"fulfilled",value:y},setTimeout(m)}).catch(y=>{if(n===!0){h();return}let k={key:x,status:"rejected",reason:y};if(u[x]=k,o===!0){n=!0,g({...k,resultAggregator:u});return}setTimeout(m)})}m()}),d=Array(t).fill(f());return Promise.all(d).then(()=>u)}var ku={};Ur(ku,{useDialogPluginComponent:()=>Ci,useFormChild:()=>Pa,useHydration:()=>Mr,useId:()=>Do,useInterval:()=>av,useMeta:()=>iv,useQuasar:()=>wu,useRenderCache:()=>So,useSplitAttrs:()=>Br,useTick:()=>yo,useTimeout:()=>Vt});function Ci(){let{emit:e,proxy:t}=K(),o=q(null);function r(){o.value.show()}function n(){o.value.hide()}function i(u){e("ok",u),n()}function a(){e("hide")}return Object.assign(t,{show:r,hide:n}),{dialogRef:o,onDialogHide:a,onDialogOK:i,onDialogCancel:n}}var rv=["ok","hide"];Ci.emits=rv;Ci.emitsObject=ol(rv);function iv(e){{let t={active:!0};if(typeof e=="function"){let o=s(e);t.val=o.value,Y(o,r=>{t.val=r,t.active===!0&&uo()})}else t.val=e;ko.push(t),uo(),Nt(()=>{t.active=!0,uo()}),Pt(()=>{t.active=!1,uo()}),Qn(()=>{ko.splice(ko.indexOf(t),1),uo()})}}function wu(){return ht(Ri)}function av(){let e=null,t=K();function o(){e!==null&&(clearInterval(e),e=null)}return Pt(o),ye(o),{removeInterval:o,registerInterval(r,n){o(e),Yt(t)===!1&&(e=setInterval(r,n))}}}window.Vue===void 0&&console.error("[ Quasar ] Vue is required to run. Please add a script tag for it before loading Quasar.");window.Quasar={version:"2.17.0",install(e,t){Ju(e,{components:rl,directives:ul,plugins:bl,...t})},lang:Yo,iconSet:Nn,...rl,...ul,...bl,...ku,...Cu};})(); + ${oe} + `,document.head.appendChild(we);let he="normal";B.style.animation=`${a.duration}ms ${a.easing} ${a.delay}ms ${he} ${a.fill} ${ue}-from`,F!==void 0&&(F.style.animation=`${a.duration}ms ${a.easing} ${a.delay}ms ${he} ${a.fill} ${ue}-from-tween`),w.style.animation=`${a.duration}ms ${a.easing} ${a.delay}ms ${he} ${a.fill} ${ue}-to`,q.style.animation=`${a.duration}ms ${a.easing} ${a.delay}ms ${he} ${a.fill} ${ue}`;let Ee=$e=>{$e===Object($e)&&$e.animationName!==ue||(q.removeEventListener("animationend",Ee),q.removeEventListener("animationcancel",Ee),J(),we.remove())};l.qMorphCancel=()=>{l.qMorphCancel=void 0,o=!0,Ee()},q.qMorphCancel=()=>{q.qMorphCancel=void 0,o=!0,Ee()},q.addEventListener("animationend",Ee),q.addEventListener("animationcancel",Ee),t=$e=>o===!0||!q||!B||!w?!1:$e===!0?(Ee(),!0):(r=r!==!0,he=he==="normal"?"reverse":"normal",B.style.animationDirection=he,F.style.animationDirection=he,w.style.animationDirection=he,q.style.animationDirection=he,!0)}};a.waitFor>0||a.waitFor==="transitionend"||a.waitFor===Object(a.waitFor)&&typeof a.waitFor.then=="function"?(a.waitFor>0?new Promise(ve=>setTimeout(ve,a.waitFor)):a.waitFor==="transitionend"?new Promise(ve=>{let O=()=>{w!==null&&(clearTimeout(w),w=null),q&&(q.removeEventListener("transitionend",O),q.removeEventListener("transitioncancel",O)),ve()},w=setTimeout(O,400);q.addEventListener("transitionend",O),q.addEventListener("transitioncancel",O)}):a.waitFor).then(Q).catch(()=>{typeof q.qMorphCancel=="function"&&q.qMorphCancel()}):Q()};return typeof e.onToggle=="function"&&e.onToggle(),requestAnimationFrame($),q=>t(q)}var rl={},Pp=["duration","delay","easing","fill","classes","style","duration","resize","useCSS","hideFromClone","keepToClone","tween","tweenFromOpacity","tweenToOpacity","waitFor","onEnd"],Ap=["resize","useCSS","hideFromClone","keepToClone","tween"];function Nr(e,t){e.clsAction!==t&&(e.clsAction=t,e.el.classList[t]("q-morph--invisible"))}function nm(e){if(e.animating===!0||e.queue.length<2)return;let[t,o]=e.queue;e.animating=!0,t.animating=!0,o.animating=!0,Nr(t,"remove"),Nr(o,"remove");let r=pa({from:t.el,to:o.el,onToggle(){Nr(t,"add"),Nr(o,"remove")},...o.opts,onEnd(n,a){o.opts.onEnd?.(n,a),a!==!0&&(t.animating=!1,o.animating=!1,e.animating=!1,e.cancel=void 0,e.queue.shift(),nm(e))}});e.cancel=()=>{r(!0),e.cancel=void 0}}function rm(e,t){let o=t.opts;Ap.forEach(r=>{o[r]=e[r]===!0})}function $p(e,t){let o=typeof e=="string"&&e.length!==0?e.split(":"):[];t.name=o[0],t.group=o[1],Object.assign(t.opts,{duration:isNaN(o[2])===!0?300:parseFloat(o[2]),waitFor:o[3]})}function Ep(e,t){e.group!==void 0&&(t.group=e.group),e.name!==void 0&&(t.name=e.name);let o=t.opts;Pp.forEach(r=>{e[r]!==void 0&&(o[r]=e[r])})}function Bp(e,t){if(t.name===e){let o=rl[t.group];o===void 0?(rl[t.group]={name:t.group,model:e,queue:[t],animating:!1},Nr(t,"remove")):o.model!==e&&(o.model=e,o.queue.push(t),o.animating===!1&&o.queue.length===2&&nm(o));return}t.animating===!1&&Nr(t,"add")}function om(e,t){let o;Object(t)===t?(o=""+t.model,Ep(t,e),rm(t,e)):o=""+t,o!==e.model?(e.model=o,Bp(o,e)):e.animating===!1&&e.clsAction!==void 0&&e.el.classList[e.clsAction]("q-morph--invisible")}var am=$t({name:"morph",mounted(e,t){let o={el:e,animating:!1,opts:{}};rm(t.modifiers,o),$p(t.arg,o),om(o,t.value),e.__qmorph=o},updated(e,t){om(e.__qmorph,t.value)},beforeUnmount(e){let t=e.__qmorph,o=rl[t.group];o!==void 0&&o.queue.indexOf(t)!==-1&&(o.queue=o.queue.filter(n=>n!==t),o.queue.length===0&&(o.cancel?.(),delete rl[t.group])),t.clsAction==="add"&&e.classList.remove("q-morph--invisible"),delete e.__qmorph}});var Fp={childList:!0,subtree:!0,attributes:!0,characterData:!0,attributeOldValue:!0,characterDataOldValue:!0};function im(e,t,o){t.handler=o,t.observer?.disconnect(),t.observer=new MutationObserver(r=>{typeof t.handler=="function"&&(t.handler(r)===!1||t.once===!0)&&lm(e)}),t.observer.observe(e,t.opts)}function lm(e){let t=e.__qmutation;t!==void 0&&(t.observer?.disconnect(),delete e.__qmutation)}var um=$t({name:"mutation",mounted(e,{modifiers:{once:t,...o},value:r}){let n={once:t,opts:Object.keys(o).length===0?Fp:o};im(e,n,r),e.__qmutation=n},updated(e,{oldValue:t,value:o}){let r=e.__qmutation;r!==void 0&&t!==o&&im(e,r,o)},beforeUnmount:lm});var{passive:al}=et;function sm(e,{value:t,oldValue:o}){if(typeof t!="function"){e.scrollTarget.removeEventListener("scroll",e.scroll,al);return}e.handler=t,typeof o!="function"&&(e.scrollTarget.addEventListener("scroll",e.scroll,al),e.scroll())}var cm=$t({name:"scroll-fire",mounted(e,t){let o={scrollTarget:Ft(e),scroll:Jt(()=>{let r,n;o.scrollTarget===window?(n=e.getBoundingClientRect().bottom,r=window.innerHeight):(n=wn(e).top+Ao(e),r=wn(o.scrollTarget).top+Ao(o.scrollTarget)),n>0&&n{r.styleCleanup=void 0;let f=()=>{document.body.classList.remove("non-selectable")};c===!0?(Ht(),setTimeout(f,10)):f()}),r.triggered=!1,r.sensitivity=l===!0?r.mouseSensitivity:r.touchSensitivity,r.timer=setTimeout(()=>{r.timer=void 0,Ht(),r.triggered=!0,r.handler({evt:a,touch:l!==!0,mouse:l===!0,position:r.origin,duration:Date.now()-u})},r.duration)},move(a){let{top:l,left:u}=_t(a);r.timer!==void 0&&(Math.abs(u-r.origin.left)>=r.sensitivity||Math.abs(l-r.origin.top)>=r.sensitivity)&&(clearTimeout(r.timer),r.timer=void 0)},end(a){Tt(r,"temp"),r.styleCleanup?.(r.triggered),r.triggered===!0?a!==void 0&&_e(a):r.timer!==void 0&&(clearTimeout(r.timer),r.timer=void 0)}},n=[600,5,7];if(typeof t.arg=="string"&&t.arg.length!==0&&t.arg.split(":").forEach((a,l)=>{let u=parseInt(a,10);u&&(n[l]=u)}),[r.duration,r.touchSensitivity,r.mouseSensitivity]=n,e.__qtouchhold=r,o.mouse===!0){let a=o.mouseCapture===!0||o.mousecapture===!0?"Capture":"";vt(r,"main",[[e,"mousedown","mouseStart",`passive${a}`]])}Ae.has.touch===!0&&vt(r,"main",[[e,"touchstart","touchStart",`passive${o.capture===!0?"Capture":""}`],[e,"touchend","noop","notPassiveCapture"]])},updated(e,t){let o=e.__qtouchhold;o!==void 0&&t.oldValue!==t.value&&(typeof t.value!="function"&&o.end(),o.handler=t.value)},beforeUnmount(e){let t=e.__qtouchhold;t!==void 0&&(Tt(t,"main"),Tt(t,"temp"),t.timer!==void 0&&clearTimeout(t.timer),t.styleCleanup?.(),delete e.__qtouchhold)}});var vm={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Lp=new RegExp(`^([\\d+]+|${Object.keys(vm).join("|")})$`,"i");function Dp(e,t){let{top:o,left:r}=_t(e);return Math.abs(r-t.left)>=7||Math.abs(o-t.top)>=7}var gm=$t({name:"touch-repeat",beforeMount(e,{modifiers:t,value:o,arg:r}){let n=Object.keys(t).reduce((c,f)=>{if(Lp.test(f)===!0){let d=isNaN(parseInt(f,10))?vm[f.toLowerCase()]:parseInt(f,10);d>=0&&c.push(d)}return c},[]);if(t.mouse!==!0&&Ae.has.touch!==!0&&n.length===0)return;let a=typeof r=="string"&&r.length!==0?r.split(":").map(c=>parseInt(c,10)):[0,600,300],l=a.length-1,u={keyboard:n,handler:o,noop:Ye,mouseStart(c){u.event===void 0&&typeof u.handler=="function"&&Ko(c)===!0&&(vt(u,"temp",[[document,"mousemove","move","passiveCapture"],[document,"click","end","notPassiveCapture"]]),u.start(c,!0))},keyboardStart(c){if(typeof u.handler=="function"&&Mt(c,n)===!0){if((a[0]===0||u.event!==void 0)&&(_e(c),e.focus(),u.event!==void 0))return;vt(u,"temp",[[document,"keyup","end","notPassiveCapture"],[document,"click","end","notPassiveCapture"]]),u.start(c,!1,!0)}},touchStart(c){if(c.target!==void 0&&typeof u.handler=="function"){let f=c.target;vt(u,"temp",[[f,"touchmove","move","passiveCapture"],[f,"touchcancel","end","notPassiveCapture"],[f,"touchend","end","notPassiveCapture"]]),u.start(c)}},start(c,f,d){d!==!0&&(u.origin=_t(c));function p(m){u.styleCleanup=void 0,document.documentElement.style.cursor="";let v=()=>{document.body.classList.remove("non-selectable")};m===!0?(Ht(),setTimeout(v,10)):v()}Ae.is.mobile===!0&&(document.body.classList.add("non-selectable"),Ht(),u.styleCleanup=p),u.event={touch:f!==!0&&d!==!0,mouse:f===!0,keyboard:d===!0,startTime:Date.now(),repeatCount:0};let g=()=>{if(u.timer=void 0,u.event===void 0)return;u.event.repeatCount===0&&(u.event.evt=c,d===!0?u.event.keyCode=c.keyCode:u.event.position=_t(c),Ae.is.mobile!==!0&&(document.documentElement.style.cursor="pointer",document.body.classList.add("non-selectable"),Ht(),u.styleCleanup=p)),u.event.duration=Date.now()-u.event.startTime,u.event.repeatCount+=1,u.handler(u.event);let m=l0&&_e(c),Tt(u,"temp"),u.timer!==void 0&&(clearTimeout(u.timer),u.timer=void 0),u.event=void 0)}};if(e.__qtouchrepeat=u,t.mouse===!0){let c=t.mouseCapture===!0||t.mousecapture===!0?"Capture":"";vt(u,"main",[[e,"mousedown","mouseStart",`passive${c}`]])}if(Ae.has.touch===!0&&vt(u,"main",[[e,"touchstart","touchStart",`passive${t.capture===!0?"Capture":""}`],[e,"touchend","noop","passiveCapture"]]),n.length!==0){let c=t.keyCapture===!0||t.keycapture===!0?"Capture":"";vt(u,"main",[[e,"keydown","keyboardStart",`notPassive${c}`]])}},updated(e,{oldValue:t,value:o}){let r=e.__qtouchrepeat;r!==void 0&&t!==o&&(typeof o!="function"&&r.end(),r.handler=o)},beforeUnmount(e){let t=e.__qtouchrepeat;t!==void 0&&(t.timer!==void 0&&clearTimeout(t.timer),Tt(t,"main"),Tt(t,"temp"),t.styleCleanup?.(),delete e.__qtouchrepeat)}});var hl={};jr(hl,{AddressbarColor:()=>hm,AppFullscreen:()=>Sm,AppVisibility:()=>_m,BottomSheet:()=>km,Cookies:()=>Am,Dark:()=>Ma,Dialog:()=>Em,IconSet:()=>Qn,Lang:()=>Yo,Loading:()=>Dm,LoadingBar:()=>Om,LocalStorage:()=>Ym,Meta:()=>Im,Notify:()=>Um,Platform:()=>Ro,Screen:()=>Ta,SessionStorage:()=>Zm});function ba(e,t=document.body){if(typeof e!="string")throw new TypeError("Expected a string as propName");if(!(t instanceof Element))throw new TypeError("Expected a DOM element");return getComputedStyle(t).getPropertyValue(`--q-${e}`).trim()||null}var ll;function Op(){return Ae.is.winphone?"msapplication-navbutton-color":"theme-color"}function Vp(e){let t=document.getElementsByTagName("META");for(let o in t)if(t[o].name===e)return t[o]}function zp(e){ll===void 0&&(ll=Op());let t=Vp(ll),o=t===void 0;o&&(t=document.createElement("meta"),t.setAttribute("name",ll)),t.setAttribute("content",e),o&&document.head.appendChild(t)}var hm={set:Ae.is.mobile===!0&&(Ae.is.nativeMobile===!0||Ae.is.winphone===!0||Ae.is.safari===!0||Ae.is.webkit===!0||Ae.is.vivaldi===!0)?e=>{let t=e||ba("primary");Ae.is.nativeMobile===!0&&window.StatusBar?window.StatusBar.backgroundColorByHexString(t):zp(t)}:Ye,install({$q:e}){e.addressbarColor=this,e.config.addressbarColor&&this.set(e.config.addressbarColor)}};var ya={};function Ip(e){Object.assign(Qt,{request:e,exit:e,toggle:e})}function bm(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement||null}function ym(){let e=Qt.activeEl=Qt.isActive===!1?null:bm();Ts(e===null||e===document.documentElement?document.body:e)}function Hp(){Qt.isActive=Qt.isActive===!1,ym()}function pm(e,t){try{let o=e[t]();return o===void 0?Promise.resolve():o}catch(o){return Promise.reject(o)}}var Qt=Wt({isActive:!1,activeEl:null},{isCapable:!1,install({$q:e}){e.fullscreen=this}});ya.request=["requestFullscreen","msRequestFullscreen","mozRequestFullScreen","webkitRequestFullscreen"].find(e=>document.documentElement[e]!==void 0),Qt.isCapable=ya.request!==void 0,Qt.isCapable===!1?Ip(()=>Promise.reject("Not capable")):(Object.assign(Qt,{request(e){let t=e||document.documentElement,{activeEl:o}=Qt;return t===o?Promise.resolve():(o!==null&&t.contains(o)===!0?Qt.exit():Promise.resolve()).finally(()=>pm(t,ya.request))},exit(){return Qt.isActive===!0?pm(document,ya.exit):Promise.resolve()},toggle(e){return Qt.isActive===!0?Qt.exit():Qt.request(e)}}),ya.exit=["exitFullscreen","msExitFullscreen","mozCancelFullScreen","webkitExitFullscreen"].find(e=>document[e]),Qt.isActive=!!bm(),Qt.isActive===!0&&ym(),["onfullscreenchange","onmsfullscreenchange","onwebkitfullscreenchange"].forEach(e=>{document[e]=Hp}));var Sm=Qt;var xm=Wt({appVisible:!0},{install({$q:e}){ft(e,"appVisible",()=>this.appVisible)}});{let e,t;if(typeof document.hidden<"u"?(e="hidden",t="visibilitychange"):typeof document.msHidden<"u"?(e="msHidden",t="msvisibilitychange"):typeof document.webkitHidden<"u"&&(e="webkitHidden",t="webkitvisibilitychange"),t&&typeof document[e]<"u"){let o=()=>{xm.appVisible=!document[e]};document.addEventListener(t,o,!1)}}var _m=xm;var Cm=P({name:"BottomSheetComponent",props:{...Se,title:String,message:String,actions:Array,grid:Boolean,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){let{proxy:o}=K(),r=xe(e,o.$q),n=T(null);function a(){n.value.show()}function l(){n.value.hide()}function u(m){t("ok",m),l()}function c(){t("hide")}function f(){return e.actions.map(m=>{let v=m.avatar||m.img;return m.label===void 0?i(uo,{class:"col-all",dark:r.value}):i("div",{class:["q-bottom-sheet__item q-hoverable q-focusable cursor-pointer relative-position",m.class],style:m.style,tabindex:0,role:"listitem",onClick(){u(m)},onKeyup(x){x.keyCode===13&&u(m)}},[i("div",{class:"q-focus-helper"}),m.icon?i(Re,{name:m.icon,color:m.color}):v?i("img",{class:m.avatar?"q-bottom-sheet__avatar":"",src:v}):i("div",{class:"q-bottom-sheet__empty-icon"}),i("div",m.label)])})}function d(){return e.actions.map(m=>{let v=m.avatar||m.img;return m.label===void 0?i(uo,{spaced:!0,dark:r.value}):i(No,{class:["q-bottom-sheet__item",m.classes],style:m.style,tabindex:0,clickable:!0,dark:r.value,onClick(){u(m)}},()=>[i(ro,{avatar:!0},()=>m.icon?i(Re,{name:m.icon,color:m.color}):v?i("img",{class:m.avatar?"q-bottom-sheet__avatar":"",src:v}):null),i(ro,()=>m.label)])})}function p(){let m=[];return e.title&&m.push(i(_o,{class:"q-dialog__title"},()=>e.title)),e.message&&m.push(i(_o,{class:"q-dialog__message"},()=>e.message)),m.push(e.grid===!0?i("div",{class:"row items-stretch justify-start",role:"list"},f()):i("div",{role:"list"},d())),m}function g(){return[i(hr,{class:[`q-bottom-sheet q-bottom-sheet--${e.grid===!0?"grid":"list"}`+(r.value===!0?" q-bottom-sheet--dark q-dark":""),e.cardClass],style:e.cardStyle},p)]}return Object.assign(o,{show:a,hide:l}),()=>i(Ho,{ref:n,position:"bottom",onHide:c},g)}});function wm(e,t){for(let o in t)o!=="spinner"&&Object(t[o])===t[o]?(e[o]=Object(e[o])!==e[o]?{}:{...e[o]},wm(e[o],t[o])):e[o]=t[o]}function ul(e,t,o){return r=>{let n,a,l=t===!0&&r.component!==void 0;if(l===!0){let{component:S,componentProps:b}=r;n=typeof S=="string"?o.component(S):S,a=b||{}}else{let{class:S,style:b,...h}=r;n=e,a=h,S!==void 0&&(h.cardClass=S),b!==void 0&&(h.cardStyle=b)}let u,c=!1,f=T(null),d=Eo(!1,"dialog"),p=S=>{if(f.value?.[S]!==void 0){f.value[S]();return}let b=u.$.subTree;if(b?.component){if(b.component.proxy&&b.component.proxy[S]){b.component.proxy[S]();return}if(b.component.subTree&&b.component.subTree.component&&b.component.subTree.component.proxy&&b.component.subTree.component.proxy[S]){b.component.subTree.component.proxy[S]();return}}console.error("[Quasar] Incorrectly defined Dialog component")},g=[],m=[],v={onOk(S){return g.push(S),v},onCancel(S){return m.push(S),v},onDismiss(S){return g.push(S),m.push(S),v},hide(){return p("hide"),v},update(S){if(u!==null){if(l===!0)Object.assign(a,S);else{let{class:b,style:h,..._}=S;b!==void 0&&(_.cardClass=b),h!==void 0&&(_.cardStyle=h),wm(a,_)}u.$forceUpdate()}return v}},x=S=>{c=!0,g.forEach(b=>{b(S)})},y=()=>{k.unmount(d),ar(d),k=null,u=null,c!==!0&&m.forEach(S=>{S()})},k=an({name:"QGlobalDialog",setup:()=>()=>i(n,{...a,ref:f,onOk:x,onHide:y,onVnodeMounted(...S){typeof a.onVnodeMounted=="function"&&a.onVnodeMounted(...S),Be(()=>p("show"))}})},o);return u=k.mount(d),v}}var km={install({$q:e,parentApp:t}){e.bottomSheet=this.create=ul(Cm,!1,t)}};function qm(e){return encodeURIComponent(e)}function Tm(e){return decodeURIComponent(e)}function Np(e){return qm(e===Object(e)?JSON.stringify(e):""+e)}function Qp(e){if(e==="")return e;e.indexOf('"')===0&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\")),e=Tm(e.replace(/\+/g," "));try{let t=JSON.parse(e);(t===Object(t)||Array.isArray(t)===!0)&&(e=t)}catch{}return e}function Mm(e){let t=new Date;return t.setMilliseconds(t.getMilliseconds()+e),t.toUTCString()}function jp(e){let t=0,o=e.match(/(\d+)d/),r=e.match(/(\d+)h/),n=e.match(/(\d+)m/),a=e.match(/(\d+)s/);return o&&(t+=o[1]*864e5),r&&(t+=r[1]*36e5),n&&(t+=n[1]*6e4),a&&(t+=a[1]*1e3),t===0?e:Mm(t)}function Rm(e,t,o={},r){let n,a;o.expires!==void 0&&(Object.prototype.toString.call(o.expires)==="[object Date]"?n=o.expires.toUTCString():typeof o.expires=="string"?n=jp(o.expires):(a=parseFloat(o.expires),n=isNaN(a)===!1?Mm(a*864e5):o.expires));let l=`${qm(e)}=${Np(t)}`,u=[l,n!==void 0?"; Expires="+n:"",o.path?"; Path="+o.path:"",o.domain?"; Domain="+o.domain:"",o.sameSite?"; SameSite="+o.sameSite:"",o.httpOnly?"; HttpOnly":"",o.secure?"; Secure":"",o.other?"; "+o.other:""].join("");if(r){r.req.qCookies?r.req.qCookies.push(u):r.req.qCookies=[u],r.res.setHeader("Set-Cookie",r.req.qCookies);let c=r.req.headers.cookie||"";if(n!==void 0&&a<0){let f=sl(e,r);f!==void 0&&(c=c.replace(`${e}=${f}; `,"").replace(`; ${e}=${f}`,"").replace(`${e}=${f}`,""))}else c=c?`${l}; ${c}`:u;r.req.headers.cookie=c}else document.cookie=u}function sl(e,t){let o=t?t.req.headers:document,r=o.cookie?o.cookie.split("; "):[],n=r.length,a=e?null:{},l=0,u,c,f;for(;lsl(t,e),set:(t,o,r)=>Rm(t,o,r,e),has:t=>Kp(t,e),remove:(t,o)=>Up(t,o,e),getAll:()=>sl(null,e)}}var Pm={install({$q:e,ssrContext:t}){e.cookies=this}};Object.assign(Pm,Wp());var Am=Pm;var $m=P({name:"DialogPluginComponent",props:{...Se,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){let{proxy:o}=K(),{$q:r}=o,n=xe(e,r),a=T(null),l=T(e.prompt!==void 0?e.prompt.model:e.options!==void 0?e.options.model:void 0),u=s(()=>"q-dialog-plugin"+(n.value===!0?" q-dialog-plugin--dark q-dark":"")+(e.progress!==!1?" q-dialog-plugin--progress":"")),c=s(()=>e.color||(n.value===!0?"amber":"primary")),f=s(()=>e.progress===!1?null:ct(e.progress)===!0?{component:e.progress.spinner||wt,props:{color:e.progress.color||c.value}}:{component:wt,props:{color:c.value}}),d=s(()=>e.prompt!==void 0||e.options!==void 0),p=s(()=>{if(d.value!==!0)return{};let{model:C,isValid:A,items:z,...H}=e.prompt!==void 0?e.prompt:e.options;return H}),g=s(()=>ct(e.ok)===!0||e.ok===!0?r.lang.label.ok:e.ok),m=s(()=>ct(e.cancel)===!0||e.cancel===!0?r.lang.label.cancel:e.cancel),v=s(()=>e.prompt!==void 0?e.prompt.isValid!==void 0&&e.prompt.isValid(l.value)!==!0:e.options!==void 0?e.options.isValid!==void 0&&e.options.isValid(l.value)!==!0:!1),x=s(()=>({color:c.value,label:g.value,ripple:!1,disable:v.value,...ct(e.ok)===!0?e.ok:{flat:!0},"data-autofocus":e.focus==="ok"&&d.value!==!0||void 0,onClick:b})),y=s(()=>({color:c.value,label:m.value,ripple:!1,...ct(e.cancel)===!0?e.cancel:{flat:!0},"data-autofocus":e.focus==="cancel"&&d.value!==!0||void 0,onClick:h}));Y(()=>e.prompt&&e.prompt.model,E),Y(()=>e.options&&e.options.model,E);function k(){a.value.show()}function S(){a.value.hide()}function b(){t("ok",fo(l.value)),S()}function h(){S()}function _(){t("hide")}function E(C){l.value=C}function L(C){v.value!==!0&&e.prompt.type!=="textarea"&&Mt(C,13)===!0&&b()}function D(C,A){return e.html===!0?i(_o,{class:C,innerHTML:A}):i(_o,{class:C},()=>A)}function Z(){return[i(Or,{color:c.value,dense:!0,autofocus:!0,dark:n.value,...p.value,modelValue:l.value,"onUpdate:modelValue":E,onKeyup:L})]}function B(){return[i(Hi,{color:c.value,options:e.options.items,dark:n.value,...p.value,modelValue:l.value,"onUpdate:modelValue":E})]}function F(){let C=[];return e.cancel&&C.push(i(Ve,y.value)),e.ok&&C.push(i(Ve,x.value)),i(Ja,{class:e.stackButtons===!0?"items-end":"",vertical:e.stackButtons,align:"right"},()=>C)}function $(){let C=[];return e.title&&C.push(D("q-dialog__title",e.title)),e.progress!==!1&&C.push(i(_o,{class:"q-dialog__progress"},()=>i(f.value.component,f.value.props))),e.message&&C.push(D("q-dialog__message",e.message)),e.prompt!==void 0?C.push(i(_o,{class:"scroll q-dialog-plugin__form"},Z)):e.options!==void 0&&C.push(i(uo,{dark:n.value}),i(_o,{class:"scroll q-dialog-plugin__form"},B),i(uo,{dark:n.value})),(e.ok||e.cancel)&&C.push(F()),C}function q(){return[i(hr,{class:[u.value,e.cardClass],style:e.cardStyle,dark:n.value},$)]}return Object.assign(o,{show:k,hide:S}),()=>i(Ho,{ref:a,onHide:_},q)}});var Em={install({$q:e,parentApp:t}){e.dialog=this.create=ul($m,!0,t)}};var Qr,bu,Bm=0,zn=null,zt={},In={},Fm={group:"__default_quasar_group__",delay:0,message:!1,html:!1,spinnerSize:80,spinnerColor:"",messageColor:"",backgroundColor:"",boxClass:"",spinner:wt,customClass:""},Lm={...Fm};function Yp(e){if(e?.group!==void 0&&In[e.group]!==void 0)return Object.assign(In[e.group],e);let t=ct(e)===!0&&e.ignoreDefaults===!0?{...Fm,...e}:{...Lm,...e};return In[t.group]=t,t}var ko=Wt({isActive:!1},{show(e){zt=Yp(e);let{group:t}=zt;return ko.isActive=!0,Qr!==void 0?(zt.uid=Bm,bu.$forceUpdate()):(zt.uid=++Bm,zn!==null&&clearTimeout(zn),zn=setTimeout(()=>{zn=null;let o=Eo("q-loading");Qr=an({name:"QLoading",setup(){Qe(()=>{ca(!0)});function r(){ko.isActive!==!0&&Qr!==void 0&&(ca(!1),Qr.unmount(o),ar(o),Qr=void 0,bu=void 0)}function n(){if(ko.isActive!==!0)return null;let a=[i(zt.spinner,{class:"q-loading__spinner",color:zt.spinnerColor,size:zt.spinnerSize})];return zt.message&&a.push(i("div",{class:"q-loading__message"+(zt.messageColor?` text-${zt.messageColor}`:""),[zt.html===!0?"innerHTML":"textContent"]:zt.message})),i("div",{class:"q-loading fullscreen flex flex-center z-max "+zt.customClass.trim(),key:zt.uid},[i("div",{class:"q-loading__backdrop"+(zt.backgroundColor?` bg-${zt.backgroundColor}`:"")}),i("div",{class:"q-loading__box column items-center "+zt.boxClass},a)])}return()=>i(st,{name:"q-transition--fade",appear:!0,onAfterLeave:r},n)}},ko.__parentApp),bu=Qr.mount(o)},zt.delay)),o=>{if(o===void 0||Object(o)!==o){ko.hide(t);return}ko.show({...o,group:t})}},hide(e){if(ko.isActive===!0){if(e===void 0)In={};else{if(In[e]===void 0)return;{delete In[e];let t=Object.keys(In);if(t.length!==0){let o=t[t.length-1];ko.show({group:o});return}}}zn!==null&&(clearTimeout(zn),zn=null),ko.isActive=!1}},setDefaults(e){ct(e)===!0&&Object.assign(Lm,e)},install({$q:e,parentApp:t}){e.loading=this,ko.__parentApp=t,e.config.loading!==void 0&&this.setDefaults(e.config.loading)}}),Dm=ko;var cl=T(null),yu=Wt({isActive:!1},{start:Ye,stop:Ye,increment:Ye,setDefaults:Ye,install({$q:e,parentApp:t}){if(e.loadingBar=this,this.__installed===!0){e.config.loadingBar!==void 0&&this.setDefaults(e.config.loadingBar);return}let o=T(e.config.loadingBar!==void 0?{...e.config.loadingBar}:{});function r(){yu.isActive=!0}function n(){yu.isActive=!1}let a=Eo("q-loading-bar");an({name:"LoadingBar",devtools:{hide:!0},setup:()=>()=>i(La,{...o.value,onStart:r,onStop:n,ref:cl})},t).mount(a),Object.assign(this,{start(l){cl.value.start(l)},stop(){cl.value.stop()},increment(){cl.value.increment.apply(null,arguments)},setDefaults(l){ct(l)===!0&&Object.assign(o.value,l)}})}}),Om=yu;var dl=null,Su,qo=[];function Xp(e){e.title&&(e.title=e.titleTemplate?e.titleTemplate(e.title):e.title,delete e.titleTemplate),[["meta","content"],["link","href"]].forEach(t=>{let o=e[t[0]],r=t[1];for(let n in o){let a=o[n];a.template&&(Object.keys(a).length===1?delete o[n]:(a[r]=a.template(a[r]||""),delete a.template))}})}function Gp(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!0;for(let o in e)if(e[o]!==t[o])return!0}function Vm(e){return["class","style"].includes(e)===!1}function zm(e){return["lang","dir"].includes(e)===!1}function Zp(e,t){let o={},r={};return e===void 0?{add:t,remove:r}:(e.title!==t.title&&(o.title=t.title),["meta","link","script","htmlAttr","bodyAttr"].forEach(n=>{let a=e[n],l=t[n];if(r[n]=[],a==null){o[n]=l;return}o[n]={};for(let u in a)l.hasOwnProperty(u)===!1&&r[n].push(u);for(let u in l)a.hasOwnProperty(u)===!1?o[n][u]=l[u]:Gp(a[u],l[u])===!0&&(r[n].push(u),o[n][u]=l[u])}),{add:o,remove:r})}function Jp({add:e,remove:t}){e.title&&(document.title=e.title),Object.keys(t).length!==0&&(["meta","link","script"].forEach(o=>{t[o].forEach(r=>{document.head.querySelector(`${o}[data-qmeta="${r}"]`).remove()})}),t.htmlAttr.filter(zm).forEach(o=>{document.documentElement.removeAttribute(o)}),t.bodyAttr.filter(Vm).forEach(o=>{document.body.removeAttribute(o)})),["meta","link","script"].forEach(o=>{let r=e[o];for(let n in r){let a=document.createElement(o);for(let l in r[n])l!=="innerHTML"&&a.setAttribute(l,r[n][l]);a.setAttribute("data-qmeta",n),o==="script"&&(a.innerHTML=r[n].innerHTML||""),document.head.appendChild(a)}}),Object.keys(e.htmlAttr).filter(zm).forEach(o=>{document.documentElement.setAttribute(o,e.htmlAttr[o]||"")}),Object.keys(e.bodyAttr).filter(Vm).forEach(o=>{document.body.setAttribute(o,e.bodyAttr[o]||"")})}function e0(){dl=null;let e={title:"",titleTemplate:null,meta:{},link:{},script:{},htmlAttr:{},bodyAttr:{}};for(let t=0;te.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function jm(e,t,o){if(!e)return Sa("parameter required");let r,n={textColor:"white"};if(e.ignoreDefaults!==!0&&Object.assign(n,fl),ct(e)===!1&&(n.type&&Object.assign(n,xa[n.type]),e={message:e}),Object.assign(n,xa[e.type||n.type],e),typeof n.icon=="function"&&(n.icon=n.icon(t)),n.spinner?(n.spinner===!0&&(n.spinner=wt),n.spinner=Ur(n.spinner)):n.spinner=!1,n.meta={hasMedia:!!(n.spinner!==!1||n.icon||n.avatar),hasText:Hm(n.message)||Hm(n.caption)},n.position){if(xu.includes(n.position)===!1)return Sa("wrong position",e)}else n.position="bottom";if(n0.includes(n.timeout)===!0)n.timeout=5e3;else{let c=Number(n.timeout);if(isNaN(c)||c<0)return Sa("wrong timeout",e);n.timeout=Number.isFinite(c)?c:0}n.timeout===0?n.progress=!1:n.progress===!0&&(n.meta.progressClass="q-notification__progress"+(n.progressClass?` ${n.progressClass}`:""),n.meta.progressStyle={animationDuration:`${n.timeout+1e3}ms`});let a=(Array.isArray(e.actions)===!0?e.actions:[]).concat(e.ignoreDefaults!==!0&&Array.isArray(fl.actions)===!0?fl.actions:[]).concat(Array.isArray(xa[e.type]?.actions)===!0?xa[e.type].actions:[]),{closeBtn:l}=n;if(l&&a.push({label:typeof l=="string"?l:t.lang.label.close}),n.actions=a.map(({handler:c,noDismiss:f,...d})=>({flat:!0,...d,onClick:typeof c=="function"?()=>{c(),f!==!0&&u()}:()=>{u()}})),n.multiLine===void 0&&(n.multiLine=n.actions.length>1),Object.assign(n.meta,{class:`q-notification row items-stretch q-notification--${n.multiLine===!0?"multi-line":"standard"}`+(n.color!==void 0?` bg-${n.color}`:"")+(n.textColor!==void 0?` text-${n.textColor}`:"")+(n.classes!==void 0?` ${n.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(n.multiLine===!0?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(n.multiLine===!0?"":" col"),leftClass:n.meta.hasText===!0?"additional":"single",attrs:{role:"alert",...n.attrs}}),n.group===!1?(n.group=void 0,n.meta.group=void 0):((n.group===void 0||n.group===!0)&&(n.group=[n.message,n.caption,n.multiline].concat(n.actions.map(c=>`${c.label}*${c.icon}`)).join("|")),n.meta.group=n.group+"|"+n.position),n.actions.length===0?n.actions=void 0:n.meta.actionsClass="q-notification__actions row items-center "+(n.multiLine===!0?"justify-end":"col-auto")+(n.meta.hasMedia===!0?" q-notification__actions--with-media":""),o!==void 0){o.notif.meta.timer&&(clearTimeout(o.notif.meta.timer),o.notif.meta.timer=void 0),n.meta.uid=o.notif.meta.uid;let c=To[n.position].value.indexOf(o.notif);To[n.position].value[c]=n}else{let c=ml[n.meta.group];if(c===void 0){if(n.meta.uid=t0++,n.meta.badge=1,["left","right","center"].indexOf(n.position)!==-1)To[n.position].value.splice(Math.floor(To[n.position].value.length/2),0,n);else{let f=n.position.indexOf("top")!==-1?"unshift":"push";To[n.position].value[f](n)}n.group!==void 0&&(ml[n.meta.group]=n)}else{if(c.meta.timer&&(clearTimeout(c.meta.timer),c.meta.timer=void 0),n.badgePosition!==void 0){if(r0.includes(n.badgePosition)===!1)return Sa("wrong badgePosition",e)}else n.badgePosition=`top-${n.position.indexOf("left")!==-1?"right":"left"}`;n.meta.uid=c.meta.uid,n.meta.badge=c.meta.badge+1,n.meta.badgeClass=`q-notification__badge q-notification__badge--${n.badgePosition}`+(n.badgeColor!==void 0?` bg-${n.badgeColor}`:"")+(n.badgeTextColor!==void 0?` text-${n.badgeTextColor}`:"")+(n.badgeClass?` ${n.badgeClass}`:"");let f=To[n.position].value.indexOf(c);To[n.position].value[f]=ml[n.meta.group]=n}}let u=()=>{a0(n),r=void 0};if(n.timeout>0&&(n.meta.timer=setTimeout(()=>{n.meta.timer=void 0,u()},n.timeout+1e3)),n.group!==void 0)return c=>{c!==void 0?Sa("trying to update a grouped one which is forbidden",e):u()};if(r={dismiss:u,config:e,notif:n},o!==void 0){Object.assign(o,r);return}return c=>{if(r!==void 0)if(c===void 0)r.dismiss();else{let f=Object.assign({},r.config,c,{group:!1,position:n.position});jm(f,t,r)}}}function a0(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);let t=To[e.position].value.indexOf(e);if(t!==-1){e.group!==void 0&&delete ml[e.meta.group];let o=Qm[""+e.meta.uid];if(o){let{width:r,height:n}=getComputedStyle(o);o.style.left=`${o.offsetLeft}px`,o.style.width=r,o.style.height=n}To[e.position].value.splice(t,1),typeof e.onDismiss=="function"&&e.onDismiss()}}function Hm(e){return e!=null&&o0.test(e)!==!0}function Sa(e,t){return console.error(`Notify: ${e}`,t),!1}function i0(){return P({name:"QNotifications",devtools:{hide:!0},setup(){return()=>i("div",{class:"q-notifications"},xu.map(e=>i(Bu,{key:e,class:Nm[e],tag:"div",name:`q-notification--${e}`},()=>To[e].value.map(t=>{let o=t.meta,r=[];if(o.hasMedia===!0&&(t.spinner!==!1?r.push(i(t.spinner,{class:"q-notification__spinner q-notification__spinner--"+o.leftClass,color:t.spinnerColor,size:t.spinnerSize})):t.icon?r.push(i(Re,{class:"q-notification__icon q-notification__icon--"+o.leftClass,name:t.icon,color:t.iconColor,size:t.iconSize,role:"img"})):t.avatar&&r.push(i(Oa,{class:"q-notification__avatar q-notification__avatar--"+o.leftClass},()=>i("img",{src:t.avatar,"aria-hidden":"true"})))),o.hasText===!0){let a,l={class:"q-notification__message col"};if(t.html===!0)l.innerHTML=t.caption?`
${t.message}
${t.caption}
`:t.message;else{let u=[t.message];a=t.caption?[i("div",u),i("div",{class:"q-notification__caption"},[t.caption])]:u}r.push(i("div",l,a))}let n=[i("div",{class:o.contentClass},r)];return t.progress===!0&&n.push(i("div",{key:`${o.uid}|p|${o.badge}`,class:o.progressClass,style:o.progressStyle})),t.actions!==void 0&&n.push(i("div",{class:o.actionsClass},t.actions.map(a=>i(Ve,a)))),o.badge>1&&n.push(i("div",{key:`${o.uid}|${o.badge}`,class:t.meta.badgeClass,style:t.badgeStyle},[o.badge])),i("div",{ref:a=>{Qm[""+o.uid]=a},key:o.uid,class:o.class,...o.attrs},[i("div",{class:o.wrapperClass},n)])}))))}})}var Um={setDefaults(e){ct(e)===!0&&Object.assign(fl,e)},registerType(e,t){ct(t)===!0&&(xa[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=o=>jm(o,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,e.config.notify!==void 0&&this.setDefaults(e.config.notify),this.__installed!==!0){xu.forEach(r=>{To[r]=T([]);let n=["left","center","right"].includes(r)===!0?"center":r.indexOf("top")!==-1?"top":"bottom",a=r.indexOf("left")!==-1?"start":r.indexOf("right")!==-1?"end":"center",l=["left","right"].includes(r)?`items-${r==="left"?"start":"end"} justify-center`:r==="center"?"flex-center":`items-${a}`;Nm[r]=`q-notifications__list q-notifications__list--${n} fixed column no-wrap ${l}`});let o=Eo("q-notify");an(i0(),t).mount(o)}}};function l0(e){return Go(e)===!0?"__q_date|"+e.getTime():kl(e)===!0?"__q_expr|"+e.source:typeof e=="number"?"__q_numb|"+e:typeof e=="boolean"?"__q_bool|"+(e?"1":"0"):typeof e=="string"?"__q_strn|"+e:typeof e=="function"?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}function u0(e){if(e.length<9)return e;let o=e.substring(0,8),r=e.substring(9);switch(o){case"__q_date":let n=Number(r);return new Date(Number.isNaN(n)===!0?r:n);case"__q_expr":return new RegExp(r);case"__q_numb":return Number(r);case"__q_bool":return r==="1";case"__q_strn":return""+r;case"__q_objt":return JSON.parse(r);default:return e}}function vl(){let e=()=>null;return{has:()=>!1,hasItem:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:Ye,setItem:Ye,remove:Ye,removeItem:Ye,clear:Ye,isEmpty:()=>!0}}function gl(e){let t=window[e+"Storage"],o=l=>{let u=t.getItem(l);return u?u0(u):null},r=l=>t.getItem(l)!==null,n=(l,u)=>{t.setItem(l,l0(u))},a=l=>{t.removeItem(l)};return{has:r,hasItem:r,getLength:()=>t.length,getItem:o,getIndex:l=>ll{let l,u={},c=t.length;for(let f=0;f{let l=[],u=t.length;for(let c=0;c{t.clear()},isEmpty:()=>t.length===0}}var Km=Ae.has.webStorage===!1?vl():gl("local"),Wm={install({$q:e}){e.localStorage=Km}};Object.assign(Wm,Km);var Ym=Wm;var Xm=Ae.has.webStorage===!1?vl():gl("session"),Gm={install({$q:e}){e.sessionStorage=Xm}};Object.assign(Gm,Xm);var Zm=Gm;var Cu={};jr(Cu,{EventBus:()=>_a,clone:()=>tn,colors:()=>Js,copyToClipboard:()=>Jm,createMetaMixin:()=>ev,createUploaderComponent:()=>tl,date:()=>fc,debounce:()=>Jt,dom:()=>ys,event:()=>zu,exportFile:()=>ov,extend:()=>hn,format:()=>ts,frameDebounce:()=>zr,getCssVar:()=>ba,is:()=>Xu,morph:()=>pa,noop:()=>Ye,openURL:()=>rv,patterns:()=>Zs,runSequentialPromises:()=>_u,scroll:()=>Ps,setCssVar:()=>Kr,throttle:()=>Zn,uid:()=>Lo});function s0(e){let t=document.createElement("textarea");t.value=e,t.contentEditable="true",t.style.position="fixed";let o=()=>{};cr(o),document.body.appendChild(t),t.focus(),t.select();let r=document.execCommand("copy");return t.remove(),Pn(o),r}function Jm(e){return navigator.clipboard!==void 0?navigator.clipboard.writeText(e):new Promise((t,o)=>{let r=s0(e);r?t(!0):o(r)})}var ev=e=>{let t={activated(){this.__qMeta.active=!0,so()},deactivated(){this.__qMeta.active=!1,so()},unmounted(){qo.splice(qo.indexOf(this.__qMeta),1),so(),this.__qMeta=void 0}};return typeof e=="function"?Object.assign(t,{computed:{__qMetaOptions(){return e.call(this)||{}}},watch:{__qMetaOptions(o){this.__qMeta.val=o,this.__qMeta.active===!0&&so()}},created(){this.__qMeta={active:!0,val:this.__qMetaOptions},qo.push(this.__qMeta),so()}}):t.created=function(){this.__qMeta={active:!0,val:e},qo.push(this.__qMeta),so()},t};var _a=class{constructor(){this.__stack={}}on(t,o,r){return(this.__stack[t]||(this.__stack[t]=[])).push({fn:o,ctx:r}),this}once(t,o,r){let n=(...a)=>{this.off(t,n),o.apply(r,a)};return n.__callback=o,this.on(t,n,r)}emit(t){let o=this.__stack[t];if(o!==void 0){let r=[].slice.call(arguments,1);o.forEach(n=>{n.fn.apply(n.ctx,r)})}return this}off(t,o){let r=this.__stack[t];if(r===void 0)return this;if(o===void 0)return delete this.__stack[t],this;let n=r.filter(a=>a.fn!==o&&a.fn.__callback!==o);return n.length!==0?this.__stack[t]=n:delete this.__stack[t],this}};function tv(e){setTimeout(()=>{window.URL.revokeObjectURL(e.href)},1e4),e.remove()}function ov(e,t,o={}){let{mimeType:r,byteOrderMark:n,encoding:a}=typeof o=="string"?{mimeType:o}:o,l=a!==void 0?new TextEncoder(a).encode([t]):t,u=n!==void 0?[n,l]:[l],c=new Blob(u,{type:r||"application/octet-stream"}),f=document.createElement("a");f.href=window.URL.createObjectURL(c),f.setAttribute("download",e),typeof f.download>"u"&&f.setAttribute("target","_blank"),f.classList.add("hidden"),f.style.position="fixed",document.body.appendChild(f);try{return f.click(),tv(f),!0}catch(d){return tv(f),d}}function c0(e){let t=Object.assign({noopener:!0},e),o=[];for(let r in t){let n=t[r];n===!0?o.push(r):(mo(n)||typeof n=="string"&&n!=="")&&o.push(r+"="+n)}return o.join(",")}function nv(e,t,o){let r=window.open;if(Ro.is.cordova===!0){if(cordova?.InAppBrowser?.open!==void 0)r=cordova.InAppBrowser.open;else if(navigator?.app!==void 0)return navigator.app.loadUrl(e,{openExternal:!0})}let n=r(e,"_blank",c0(o));if(n)return Ro.is.desktop&&n.focus(),n;t?.()}var rv=(e,t,o)=>{if(Ro.is.ios===!0&&window.SafariViewController!==void 0){window.SafariViewController.isAvailable(r=>{r?window.SafariViewController.show({url:e},Ye,t):nv(e,t,o)});return}return nv(e,t,o)};function d0(e){let t=Array.isArray(e);if(t===!0){let n=e.length;return{isList:t,totalJobs:n,resultAggregator:Array(n).fill(null)}}let o=Object.keys(e),r={};return o.forEach(n=>{r[n]=null}),{isList:t,totalJobs:o.length,resultAggregator:r,resultKeys:o}}function _u(e,{threadsNumber:t=1,abortOnFail:o=!0}={}){let r=-1,n=!1,{isList:a,totalJobs:l,resultAggregator:u,resultKeys:c}=d0(e),f=()=>new Promise((p,g)=>{function m(){let v=++r;if(n===!0||v>=l){p();return}let x=a===!0?v:c[v];e[x](u).then(y=>{if(n===!0){p();return}u[x]={key:x,status:"fulfilled",value:y},setTimeout(m)}).catch(y=>{if(n===!0){p();return}let k={key:x,status:"rejected",reason:y};if(u[x]=k,o===!0){n=!0,g({...k,resultAggregator:u});return}setTimeout(m)})}m()}),d=Array(t).fill(null).map(f);return Promise.all(d).then(()=>u)}var ku={};jr(ku,{useDialogPluginComponent:()=>Ca,useFormChild:()=>Ri,useHydration:()=>Mr,useId:()=>Do,useInterval:()=>lv,useMeta:()=>iv,useQuasar:()=>wu,useRenderCache:()=>xo,useSplitAttrs:()=>Br,useTick:()=>So,useTimeout:()=>Vt});function Ca(){let{emit:e,proxy:t}=K(),o=T(null);function r(){o.value.show()}function n(){o.value.hide()}function a(u){e("ok",u),n()}function l(){e("hide")}return Object.assign(t,{show:r,hide:n}),{dialogRef:o,onDialogHide:l,onDialogOK:a,onDialogCancel:n}}var av=["ok","hide"];Ca.emits=av;Ca.emitsObject=el(av);function iv(e){{let t={active:!0};if(typeof e=="function"){let o=s(e);t.val=o.value,Y(o,r=>{t.val=r,t.active===!0&&so()})}else t.val=e;qo.push(t),so(),Ut(()=>{t.active=!0,so()}),At(()=>{t.active=!1,so()}),Nn(()=>{qo.splice(qo.indexOf(t),1),so()})}}function wu(){return pt("_q_")}function lv(){let e=null,t=K();function o(){e!==null&&(clearInterval(e),e=null)}return At(o),be(o),{removeInterval:o,registerInterval(r,n){o(e),Gt(t)===!1&&(e=setInterval(r,n))}}}window.Vue===void 0&&console.error("[ Quasar ] Vue is required to run. Please add a script tag for it before loading Quasar.");window.Quasar={version:"2.18.6",install(e,t){Ju(e,{components:ol,directives:il,plugins:hl,...t})},lang:Yo,iconSet:Qn,...ol,...il,...hl,...ku,...Cu};})(); diff --git a/lnbits/static/vendor/vue-i18n.global.prod.js b/lnbits/static/vendor/vue-i18n.global.prod.js index ebe3c8d7..c2521720 100644 --- a/lnbits/static/vendor/vue-i18n.global.prod.js +++ b/lnbits/static/vendor/vue-i18n.global.prod.js @@ -1,6 +1,6 @@ /*! - * vue-i18n v10.0.8 + * vue-i18n v11.2.2 * (c) 2025 kazuya kawaguchi * Released under the MIT License. */ -var VueI18n=function(e,t){"use strict";function n(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const r="undefined"!=typeof window,a=(e,t=!1)=>t?Symbol.for(e):Symbol(e),o=(e,t,n)=>s({l:e,k:t,s:n}),s=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),l=e=>"number"==typeof e&&isFinite(e),c=e=>"[object Date]"===v(e),i=e=>"[object RegExp]"===v(e),u=e=>I(e)&&0===Object.keys(e).length,f=Object.assign,m=Object.create,p=(e=null)=>m(e);function _(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function d(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}const g=Object.prototype.hasOwnProperty;function E(e,t){return g.call(e,t)}const b=Array.isArray,h=e=>"function"==typeof e,k=e=>"string"==typeof e,L=e=>"boolean"==typeof e,N=e=>null!==e&&"object"==typeof e,y=e=>N(e)&&h(e.then)&&h(e.catch),T=Object.prototype.toString,v=e=>T.call(e),I=e=>"[object Object]"===v(e);function C(e,t=""){return e.reduce(((e,n,r)=>0===r?e+n:e+t+n),"")}const O=e=>!N(e)||b(e);function A(e,t){if(O(e)||O(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:e,des:t}=n.pop();Object.keys(e).forEach((r=>{"__proto__"!==r&&(N(e[r])&&!N(t[r])&&(t[r]=Array.isArray(e[r])?[]:p()),O(t[r])||O(e[r])?t[r]=e[r]:n.push({src:e[r],des:t[r]}))}))}}function P(e,t,n){return{start:e,end:t}}const R={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16};function S(e){throw e}const F=" ",D="\r",w="\n",x=String.fromCharCode(8232),M=String.fromCharCode(8233);function U(e){const t=e;let n=0,r=1,a=1,o=0;const s=e=>t[e]===D&&t[e+1]===w,l=e=>t[e]===M,c=e=>t[e]===x,i=e=>s(e)||(e=>t[e]===w)(e)||l(e)||c(e),u=e=>s(e)||l(e)||c(e)?w:t[e];function f(){return o=0,i(n)&&(r++,a=0),s(n)&&n++,n++,a++,t[n]}return{index:()=>n,line:()=>r,column:()=>a,peekOffset:()=>o,charAt:u,currentChar:()=>u(n),currentPeek:()=>u(n+o),next:f,peek:function(){return s(n+o)&&o++,o++,t[n+o]},reset:function(){n=0,r=1,a=1,o=0},resetPeek:function(e=0){o=e},skipToPeek:function(){const e=n+o;for(;e!==n;)f();o=0}}}const W=void 0,$="'";function H(e,t={}){const n=!1!==t.location,r=U(e),a=()=>r.index(),o=()=>{return e=r.line(),t=r.column(),n=r.index(),{line:e,column:t,offset:n};var e,t,n},s=o(),l=a(),c={currentType:13,offset:l,startLoc:s,endLoc:s,lastType:13,lastOffset:l,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},i=()=>c,{onError:u}=t;function f(e,t,r){e.endLoc=o(),e.currentType=t;const a={type:t};return n&&(a.loc=P(e.startLoc,e.endLoc)),null!=r&&(a.value=r),a}const m=e=>f(e,13);function p(e,t){return e.currentChar()===t?(e.next(),t):(R.EXPECTED_TOKEN,o(),"")}function _(e){let t="";for(;e.currentPeek()===F||e.currentPeek()===w;)t+=e.currentPeek(),e.peek();return t}function d(e){const t=_(e);return e.skipToPeek(),t}function g(e){if(e===W)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function E(e,t){const{currentType:n}=t;if(2!==n)return!1;_(e);const r=function(e){if(e===W)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),r}function b(e){_(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function h(e,t=!0){const n=(t=!1,r="")=>{const a=e.currentPeek();return"{"===a?t:"@"!==a&&a?"|"===a?!(r===F||r===w):a===F?(e.peek(),n(!0,F)):a!==w||(e.peek(),n(!0,w)):t},r=n();return t&&e.resetPeek(),r}function k(e,t){const n=e.currentChar();return n===W?W:t(n)?(e.next(),n):null}function L(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}function N(e){return k(e,L)}function y(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t||45===t}function T(e){return k(e,y)}function v(e){const t=e.charCodeAt(0);return t>=48&&t<=57}function I(e){return k(e,v)}function C(e){const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function O(e){return k(e,C)}function A(e){let t="",n="";for(;t=I(e);)n+=t;return n}function S(e){return e!==$&&e!==w}function D(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return x(e,t,4);case"U":return x(e,t,6);default:return R.UNKNOWN_ESCAPE_SEQUENCE,o(),""}}function x(e,t,n){p(e,t);let r="";for(let a=0;a=1&&(R.NOT_ALLOW_NEST_PLACEHOLDER,o()),e.next(),n=f(t,2,"{"),d(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&(R.EMPTY_PLACEHOLDER,o()),e.next(),n=f(t,3,"}"),t.braceNest--,t.braceNest>0&&d(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&(R.UNTERMINATED_CLOSING_BRACE,o()),n=V(e,t)||m(t),t.braceNest=0,n;default:{let r=!0,a=!0,s=!0;if(b(e))return t.braceNest>0&&(R.UNTERMINATED_CLOSING_BRACE,o()),n=f(t,1,H(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(4===t.currentType||5===t.currentType||6===t.currentType))return R.UNTERMINATED_CLOSING_BRACE,o(),t.braceNest=0,X(e,t);if(r=function(e,t){const{currentType:n}=t;if(2!==n)return!1;_(e);const r=g(e.currentPeek());return e.resetPeek(),r}(e,t))return n=f(t,4,function(e){d(e);let t="",n="";for(;t=T(e);)n+=t;return e.currentChar()===W&&(R.UNTERMINATED_CLOSING_BRACE,o()),n}(e)),d(e),n;if(a=E(e,t))return n=f(t,5,function(e){d(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${A(e)}`):t+=A(e),e.currentChar()===W&&(R.UNTERMINATED_CLOSING_BRACE,o()),t}(e)),d(e),n;if(s=function(e,t){const{currentType:n}=t;if(2!==n)return!1;_(e);const r=e.currentPeek()===$;return e.resetPeek(),r}(e,t))return n=f(t,6,function(e){d(e),p(e,"'");let t="",n="";for(;t=k(e,S);)n+="\\"===t?D(e):t;const r=e.currentChar();return r===w||r===W?(R.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,o(),r===w&&(e.next(),p(e,"'")),n):(p(e,"'"),n)}(e)),d(e),n;if(!r&&!a&&!s)return n=f(t,12,function(e){d(e);let t="",n="";for(;t=k(e,M);)n+=t;return n}(e)),R.INVALID_TOKEN_IN_PLACEHOLDER,o(),n.value,d(e),n;break}}return n}function V(e,t){const{currentType:n}=t;let r=null;const a=e.currentChar();switch(7!==n&&8!==n&&11!==n&&9!==n||a!==w&&a!==F||(R.INVALID_LINKED_FORMAT,o()),a){case"@":return e.next(),r=f(t,7,"@"),t.inLinked=!0,r;case".":return d(e),e.next(),f(t,8,".");case":":return d(e),e.next(),f(t,9,":");default:return b(e)?(r=f(t,1,H(e)),t.braceNest=0,t.inLinked=!1,r):function(e,t){const{currentType:n}=t;if(7!==n)return!1;_(e);const r="."===e.currentPeek();return e.resetPeek(),r}(e,t)||function(e,t){const{currentType:n}=t;if(7!==n&&11!==n)return!1;_(e);const r=":"===e.currentPeek();return e.resetPeek(),r}(e,t)?(d(e),V(e,t)):function(e,t){const{currentType:n}=t;if(8!==n)return!1;_(e);const r=g(e.currentPeek());return e.resetPeek(),r}(e,t)?(d(e),f(t,11,function(e){let t="",n="";for(;t=N(e);)n+=t;return n}(e))):function(e,t){const{currentType:n}=t;if(9!==n)return!1;const r=()=>{const t=e.currentPeek();return"{"===t?g(e.peek()):!("@"===t||"|"===t||":"===t||"."===t||t===F||!t)&&(t===w?(e.peek(),r()):h(e,!1))},a=r();return e.resetPeek(),a}(e,t)?(d(e),"{"===a?j(e,t)||r:f(t,10,function(e){const t=n=>{const r=e.currentChar();return"{"!==r&&"@"!==r&&"|"!==r&&"("!==r&&")"!==r&&r?r===F?n:(n+=r,e.next(),t(n)):n};return t("")}(e))):(7===n&&(R.INVALID_LINKED_FORMAT,o()),t.braceNest=0,t.inLinked=!1,X(e,t))}}function X(e,t){let n={type:13};if(t.braceNest>0)return j(e,t)||m(t);if(t.inLinked)return V(e,t)||m(t);switch(e.currentChar()){case"{":return j(e,t)||m(t);case"}":return R.UNBALANCED_CLOSING_BRACE,o(),e.next(),f(t,3,"}");case"@":return V(e,t)||m(t);default:if(b(e))return n=f(t,1,H(e)),t.braceNest=0,t.inLinked=!1,n;if(h(e))return f(t,0,function(e){let t="";for(;;){const n=e.currentChar();if("{"===n||"}"===n||"@"===n||"|"===n||!n)break;if(n===F||n===w)if(h(e))t+=n,e.next();else{if(b(e))break;t+=n,e.next()}else t+=n,e.next()}return t}(e))}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:s}=c;return c.lastType=e,c.lastOffset=t,c.lastStartLoc=n,c.lastEndLoc=s,c.offset=a(),c.startLoc=o(),r.currentChar()===W?f(c,13):X(r,c)},currentOffset:a,currentPosition:o,context:i}}const j=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function V(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||n,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function X(e={}){const t=!1!==e.location,{onError:n}=e;function r(e,n,r){const a={type:e};return t&&(a.start=n,a.end=n,a.loc={start:r,end:r}),a}function a(e,n,r,a){t&&(e.end=n,e.loc&&(e.loc.end=r))}function o(e,t){const n=e.context(),o=r(3,n.offset,n.startLoc);return o.value=t,a(o,e.currentOffset(),e.currentPosition()),o}function s(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:s}=n,l=r(5,o,s);return l.index=parseInt(t,10),e.nextToken(),a(l,e.currentOffset(),e.currentPosition()),l}function l(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:s}=n,l=r(4,o,s);return l.key=t,e.nextToken(),a(l,e.currentOffset(),e.currentPosition()),l}function c(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:s}=n,l=r(9,o,s);return l.value=t.replace(j,V),e.nextToken(),a(l,e.currentOffset(),e.currentPosition()),l}function i(e){const t=e.context(),n=r(6,t.offset,t.startLoc);let o=e.nextToken();if(8===o.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:o,lastStartLoc:s}=n,l=r(8,o,s);return 11!==t.type?(R.UNEXPECTED_EMPTY_LINKED_MODIFIER,n.lastStartLoc,l.value="",a(l,o,s),{nextConsumeToken:t,node:l}):(null==t.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,n.lastStartLoc,G(t)),l.value=t.value||"",a(l,e.currentOffset(),e.currentPosition()),{node:l})}(e);n.modifier=t.node,o=t.nextConsumeToken||e.nextToken()}switch(9!==o.type&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),o=e.nextToken(),2===o.type&&(o=e.nextToken()),o.type){case 10:null==o.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.key=function(e,t){const n=e.context(),o=r(7,n.offset,n.startLoc);return o.value=t,a(o,e.currentOffset(),e.currentPosition()),o}(e,o.value||"");break;case 4:null==o.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.key=l(e,o.value||"");break;case 5:null==o.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.key=s(e,o.value||"");break;case 6:null==o.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.key=c(e,o.value||"");break;default:{R.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc;const s=e.context(),l=r(7,s.offset,s.startLoc);return l.value="",a(l,s.offset,s.startLoc),n.key=l,a(n,s.offset,s.startLoc),{nextConsumeToken:o,node:n}}}return a(n,e.currentOffset(),e.currentPosition()),{node:n}}function u(e){const t=e.context(),n=r(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let u=null;do{const r=u||e.nextToken();switch(u=null,r.type){case 0:null==r.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.items.push(o(e,r.value||""));break;case 5:null==r.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.items.push(s(e,r.value||""));break;case 4:null==r.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.items.push(l(e,r.value||""));break;case 6:null==r.value&&(R.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.items.push(c(e,r.value||""));break;case 7:{const t=i(e);n.items.push(t.node),u=t.nextConsumeToken||null;break}}}while(13!==t.currentType&&1!==t.currentType);return a(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function m(e){const t=e.context(),{offset:n,startLoc:o}=t,s=u(e);return 13===t.currentType?s:function(e,t,n,o){const s=e.context();let l=0===o.items.length;const c=r(1,t,n);c.cases=[],c.cases.push(o);do{const t=u(e);l||(l=0===t.items.length),c.cases.push(t)}while(13!==s.currentType);return a(c,e.currentOffset(),e.currentPosition()),c}(e,n,o,s)}return{parse:function(n){const o=H(n,f({},e)),s=o.context(),l=r(0,s.offset,s.startLoc);return t&&l.loc&&(l.loc.source=n),l.body=m(o),e.onCacheKey&&(l.cacheKey=e.onCacheKey(n)),13!==s.currentType&&(R.UNEXPECTED_LEXICAL_ANALYSIS,s.lastStartLoc,n[s.offset]),a(l,o.currentOffset(),o.currentPosition()),l}}}function G(e){if(13===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function Y(e,t){for(let n=0;nn,helper:e=>(n.helpers.add(e),e)}}(e);n.helper("normalize"),e.body&&K(e.body,n);const r=n.context();e.helpers=Array.from(r.helpers)}function z(e){if(1===e.items.length){const t=e.items[0];3!==t.type&&9!==t.type||(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;n1){e.push(`${n("plural")}([`),e.indent(r());const a=t.cases.length;for(let n=0;n{const n=k(t.mode)?t.mode:"normal",r=k(t.filename)?t.filename:"message.intl",a=!!t.sourceMap,o=null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",s=t.needIndent?t.needIndent:"arrow"!==n,l=e.helpers||[],c=function(e,t){const{sourceMap:n,filename:r,breakLineCode:a,needIndent:o}=t,s=!1!==t.location,l={filename:r,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:a,needIndent:o,indentLevel:0};function c(e,t){l.code+=e}function i(e,t=!0){const n=t?a:"";c(o?n+" ".repeat(e):n)}return s&&e.loc&&(l.source=e.loc.source),{context:()=>l,push:c,indent:function(e=!0){const t=++l.indentLevel;e&&i(t)},deindent:function(e=!0){const t=--l.indentLevel;e&&i(t)},newline:function(){i(l.indentLevel)},helper:e=>`_${e}`,needIndent:()=>l.needIndent}}(e,{mode:n,filename:r,sourceMap:a,breakLineCode:o,needIndent:s});c.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),c.indent(s),l.length>0&&(c.push(`const { ${C(l.map((e=>`${e}: _${e}`)),", ")} } = ctx`),c.newline()),c.push("return "),Q(c,e),c.deindent(s),c.push("}"),delete e.helpers;const{code:i,map:u}=c.context();return{ast:e,code:i,map:u?u.toJSON():void 0}};function Z(e,t={}){const n=f({},t),r=!!n.jit,a=!!n.minify,o=null==n.optimize||n.optimize,s=X(n).parse(e);return r?(o&&function(e){const t=e.body;2===t.type?z(t):t.cases.forEach((e=>z(e)))}(s),a&&J(s),{ast:s,code:""}):(B(s,n),q(s,n))}function ee(e){return N(e)&&0===se(e)&&(E(e,"b")||E(e,"body"))}const te=["b","body"];const ne=["c","cases"];const re=["s","static"];const ae=["i","items"];const oe=["t","type"];function se(e){return fe(e,oe)}const le=["v","value"];function ce(e,t){const n=fe(e,le);if(null!=n)return n;throw pe(t)}const ie=["m","modifier"];const ue=["k","key"];function fe(e,t,n){for(let r=0;rfunction(e,t){const n=(r=t,fe(r,te));var r;if(null==n)throw pe(0);if(1===se(n)){const t=function(e){return fe(e,ne,[])}(n);return e.plural(t.reduce(((t,n)=>[...t,de(e,n)]),[]))}return de(e,n)}(t,e)}function de(e,t){const n=function(e){return fe(e,re)}(t);if(null!=n)return"text"===e.type?n:e.normalize([n]);{const n=function(e){return fe(e,ae,[])}(t).reduce(((t,n)=>[...t,ge(e,n)]),[]);return e.normalize(n)}}function ge(e,t){const n=se(t);switch(n){case 3:case 9:case 7:case 8:return ce(t,n);case 4:{const r=t;if(E(r,"k")&&r.k)return e.interpolate(e.named(r.k));if(E(r,"key")&&r.key)return e.interpolate(e.named(r.key));throw pe(n)}case 5:{const r=t;if(E(r,"i")&&l(r.i))return e.interpolate(e.list(r.i));if(E(r,"index")&&l(r.index))return e.interpolate(e.list(r.index));throw pe(n)}case 6:{const n=t,r=function(e){return fe(e,ie)}(n),a=function(e){const t=fe(e,ue);if(t)return t;throw pe(6)}(n);return e.linked(ge(e,a),r?ge(e,r):void 0,e.type)}default:throw new Error(`unhandled node on format message part: ${n}`)}}const Ee=e=>e;let be=p();const he={INVALID_ARGUMENT:17,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_NON_STRING_MESSAGE:20,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23};function ke(e,t){return null!=t.locale?Ne(t.locale):Ne(e.locale)}let Le;function Ne(e){if(k(e))return e;if(h(e)){if(e.resolvedOnce&&null!=Le)return Le;if("Function"===e.constructor.name){const t=e();if(y(t))throw Error(he.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Le=t}throw Error(he.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}throw Error(he.NOT_SUPPORT_LOCALE_TYPE)}function ye(e,t,n){return[...new Set([n,...b(t)?t:N(t)?Object.keys(t):k(t)?[t]:[n]])]}function Te(e,t,n){const r=k(n)?n:xe,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let o=a.__localeChainCache.get(r);if(!o){o=[];let e=[n];for(;b(e);)e=ve(o,e,t);const s=b(t)||!I(t)?t:t.default?t.default:null;e=k(s)?[s]:s,b(e)&&ve(o,e,!1),a.__localeChainCache.set(r,o)}return o}function ve(e,t,n){let r=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;let We,$e,He;let je=null;const Ve=e=>{je=e},Xe=()=>je;let Ge=0;function Ye(e={}){const t=h(e.onWarn)?e.onWarn:n,r=k(e.version)?e.version:De,a=k(e.locale)||h(e.locale)?e.locale:xe,o=h(a)?xe:a,s=b(e.fallbackLocale)||I(e.fallbackLocale)||k(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:o,l=I(e.messages)?e.messages:Ke(o),c=I(e.datetimeFormats)?e.datetimeFormats:Ke(o),u=I(e.numberFormats)?e.numberFormats:Ke(o),m=f(p(),e.modifiers,{upper:(e,t)=>"text"===t&&k(e)?e.toUpperCase():"vnode"===t&&N(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&k(e)?e.toLowerCase():"vnode"===t&&N(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&k(e)?Ue(e):"vnode"===t&&N(e)&&"__v_isVNode"in e?Ue(e.children):e}),_=e.pluralRules||p(),d=h(e.missing)?e.missing:null,g=!L(e.missingWarn)&&!i(e.missingWarn)||e.missingWarn,E=!L(e.fallbackWarn)&&!i(e.fallbackWarn)||e.fallbackWarn,y=!!e.fallbackFormat,T=!!e.unresolving,v=h(e.postTranslation)?e.postTranslation:null,C=I(e.processor)?e.processor:null,O=!L(e.warnHtmlMessage)||e.warnHtmlMessage,A=!!e.escapeParameter,P=h(e.messageCompiler)?e.messageCompiler:We,R=h(e.messageResolver)?e.messageResolver:$e||Fe,S=h(e.localeFallbacker)?e.localeFallbacker:He||ye,F=N(e.fallbackContext)?e.fallbackContext:void 0,D=e,w=N(D.__datetimeFormatters)?D.__datetimeFormatters:new Map,x=N(D.__numberFormatters)?D.__numberFormatters:new Map,M=N(D.__meta)?D.__meta:{};Ge++;const U={version:r,cid:Ge,locale:a,fallbackLocale:s,messages:l,modifiers:m,pluralRules:_,missing:d,missingWarn:g,fallbackWarn:E,fallbackFormat:y,unresolving:T,postTranslation:v,processor:C,warnHtmlMessage:O,escapeParameter:A,messageCompiler:P,messageResolver:R,localeFallbacker:S,fallbackContext:F,onWarn:t,__meta:M};return U.datetimeFormats=c,U.numberFormats=u,U.__datetimeFormatters=w,U.__numberFormatters=x,U}const Ke=e=>({[e]:p()});function Be(e,t,n,r,a){const{missing:o,onWarn:s}=e;if(null!==o){const r=o(e,n,t,a);return k(r)?r:t}return t}function ze(e,t,n){e.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function Je(e,t){const n=t.indexOf(e);if(-1===n)return!1;for(let o=n+1;o{qe.includes(e)?i[e]=n[e]:o[e]=n[e]})),k(r)?o.locale=r:I(r)&&(i=r),I(a)&&(i=a),[o.key||"",s,o,i]}function et(e,t,n){const r=e;for(const a in n){const e=`${t}__${a}`;r.__datetimeFormatters.has(e)&&r.__datetimeFormatters.delete(e)}}function tt(e,...t){const{numberFormats:n,unresolving:r,fallbackLocale:a,onWarn:o,localeFallbacker:s}=e,{__numberFormatters:l}=e,[c,i,m,p]=rt(...t);L(m.missingWarn)?m.missingWarn:e.missingWarn;L(m.fallbackWarn)?m.fallbackWarn:e.fallbackWarn;const _=!!m.part,d=ke(e,m),g=s(e,a,d);if(!k(c)||""===c)return new Intl.NumberFormat(d,p).format(i);let E,b={},h=null;for(let u=0;u{nt.includes(e)?s[e]=n[e]:o[e]=n[e]})),k(r)?o.locale=r:I(r)&&(s=r),I(a)&&(s=a),[o.key||"",c,o,s]}function at(e,t,n){const r=e;for(const a in n){const e=`${t}__${a}`;r.__numberFormatters.has(e)&&r.__numberFormatters.delete(e)}}const ot=e=>e,st=e=>"",lt="text",ct=e=>0===e.length?"":C(e),it=e=>null==e?"":b(e)||I(e)&&e.toString===T?JSON.stringify(e,null,2):String(e);function ut(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function ft(e={}){const t=e.locale,n=function(e){const t=l(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(l(e.named.count)||l(e.named.n))?l(e.named.count)?e.named.count:l(e.named.n)?e.named.n:t:t}(e),r=N(e.pluralRules)&&k(t)&&h(e.pluralRules[t])?e.pluralRules[t]:ut,a=N(e.pluralRules)&&k(t)&&h(e.pluralRules[t])?ut:void 0,o=e.list||[],s=e.named||p();l(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,s);function c(t,n){const r=h(e.messages)?e.messages(t,!!n):!!N(e.messages)&&e.messages[t];return r||(e.parent?e.parent.message(t):st)}const i=I(e.processor)&&h(e.processor.normalize)?e.processor.normalize:ct,u=I(e.processor)&&h(e.processor.interpolate)?e.processor.interpolate:it,m={list:e=>o[e],named:e=>s[e],plural:e=>e[r(n,e.length,a)],linked:(t,...n)=>{const[r,a]=n;let o="text",s="";1===n.length?N(r)?(s=r.modifier||s,o=r.type||o):k(r)&&(s=r||s):2===n.length&&(k(r)&&(s=r||s),k(a)&&(o=a||o));const l=c(t,!0)(m),i="vnode"===o&&b(l)&&s?l[0]:l;return s?(u=s,e.modifiers?e.modifiers[u]:ot)(i,o):i;var u},message:c,type:I(e.processor)&&k(e.processor.type)?e.processor.type:lt,interpolate:u,normalize:i,values:f(p(),o,s)};return m}const mt=()=>"",pt=e=>h(e);function _t(e,...t){const{fallbackFormat:n,postTranslation:r,unresolving:a,messageCompiler:o,fallbackLocale:s,messages:c}=e,[i,u]=Et(...t),f=L(u.missingWarn)?u.missingWarn:e.missingWarn,m=L(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn,g=L(u.escapeParameter)?u.escapeParameter:e.escapeParameter,E=!!u.resolvedMessage,y=k(u.default)||L(u.default)?L(u.default)?o?i:()=>i:u.default:n?o?i:()=>i:null,T=n||null!=y&&(k(y)||h(y)),v=ke(e,u);g&&function(e){b(e.list)?e.list=e.list.map((e=>k(e)?_(e):e)):N(e.named)&&Object.keys(e.named).forEach((t=>{k(e.named[t])&&(e.named[t]=_(e.named[t]))}))}(u);let[I,C,O]=E?[i,v,c[v]||p()]:dt(e,i,v,s,m,f),A=I,P=i;if(E||k(A)||ee(A)||pt(A)||T&&(A=y,P=A),!(E||(k(A)||ee(A)||pt(A))&&k(C)))return a?we:i;let R=!1;const S=pt(A)?A:gt(e,i,C,A,P,(()=>{R=!0}));if(R)return A;const F=function(e,t,n,r){const{modifiers:a,pluralRules:o,messageResolver:s,fallbackLocale:c,fallbackWarn:i,missingWarn:u,fallbackContext:f}=e,m=(r,a)=>{let o=s(n,r);if(null==o&&(f||a)){const[,,n]=dt(f||e,r,t,c,i,u);o=s(n,r)}if(k(o)||ee(o)){let n=!1;const a=gt(e,r,t,o,r,(()=>{n=!0}));return n?mt:a}return pt(o)?o:mt},p={locale:t,modifiers:a,pluralRules:o,messages:m};e.processor&&(p.processor=e.processor);r.list&&(p.list=r.list);r.named&&(p.named=r.named);l(r.plural)&&(p.pluralIndex=r.plural);return p}(e,C,O,u),D=function(e,t,n){const r=t(n);return r}(0,S,ft(F));let w=r?r(D,i):D;var x;return g&&k(w)&&(x=(x=(x=w).replace(/(\w+)\s*=\s*"([^"]*)"/g,((e,t,n)=>`${t}="${d(n)}"`))).replace(/(\w+)\s*=\s*'([^']*)'/g,((e,t,n)=>`${t}='${d(n)}'`)),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(x)&&(x=x.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach((e=>{x=x.replace(e,"$1javascript:")})),w=x),w}function dt(e,t,n,r,a,o){const{messages:s,onWarn:l,messageResolver:c,localeFallbacker:i}=e,u=i(e,r,n);let f,m=p(),_=null;for(let d=0;dr;return e.locale=n,e.key=t,e}const i=l(r,function(e,t,n,r,a,s){return{locale:t,key:n,warnHtmlMessage:a,onError:e=>{throw s&&s(e),e},onCacheKey:e=>o(t,n,e)}}(0,n,a,0,c,s));return i.locale=n,i.key=t,i.source=r,i}function Et(...e){const[t,n,r]=e,a=p();if(!(k(t)||l(t)||pt(t)||ee(t)))throw Error(he.INVALID_ARGUMENT);const o=l(t)?String(t):(pt(t),t);return l(n)?a.plural=n:k(n)?a.default=n:I(n)&&!u(n)?a.named=n:b(n)&&(a.list=n),l(r)?a.plural=r:k(r)?a.default=r:I(r)&&f(a,r),[o,a]}const bt="10.0.8",ht={UNEXPECTED_RETURN_TYPE:24,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:30,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32,NOT_COMPATIBLE_LEGACY_VUE_I18N:33,NOT_AVAILABLE_COMPOSITION_IN_LEGACY:34},kt=a("__translateVNode"),Lt=a("__datetimeParts"),Nt=a("__numberParts"),yt=a("__setPluralRules"),Tt=a("__injectWithOption"),vt=a("__dispose");function It(e){if(!N(e))return e;if(ee(e))return e;for(const t in e)if(E(e,t))if(t.includes(".")){const n=t.split("."),r=n.length-1;let a=e,o=!1;for(let e=0;e{if("locale"in e&&"resource"in e){const{locale:t,resource:n}=e;t?(s[t]=s[t]||p(),A(n,s[t])):A(n,s)}else k(e)&&A(JSON.parse(e),s)})),null==a&&o)for(const l in s)E(s,l)&&It(s[l]);return s}function Ot(e){return e.type}function At(e,t,n){let r=N(t.messages)?t.messages:p();"__i18nGlobal"in n&&(r=Ct(e.locale.value,{messages:r,__i18n:n.__i18nGlobal}));const a=Object.keys(r);if(a.length&&a.forEach((t=>{e.mergeLocaleMessage(t,r[t])})),N(t.datetimeFormats)){const n=Object.keys(t.datetimeFormats);n.length&&n.forEach((n=>{e.mergeDateTimeFormat(n,t.datetimeFormats[n])}))}if(N(t.numberFormats)){const n=Object.keys(t.numberFormats);n.length&&n.forEach((n=>{e.mergeNumberFormat(n,t.numberFormats[n])}))}}function Pt(e){return t.createVNode(t.Text,null,e,0)}const Rt=()=>[],St=()=>!1;let Ft=0;function Dt(e){return(n,r,a,o)=>e(r,a,t.getCurrentInstance()||void 0,o)}function wt(e={}){const{__root:n,__injectWithOption:a}=e,o=void 0===n,s=e.flatJson,c=r?t.ref:t.shallowRef;let u=!L(e.inheritLocale)||e.inheritLocale;const m=c(n&&u?n.locale.value:k(e.locale)?e.locale:xe),p=c(n&&u?n.fallbackLocale.value:k(e.fallbackLocale)||b(e.fallbackLocale)||I(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:m.value),_=c(Ct(m.value,e)),d=c(I(e.datetimeFormats)?e.datetimeFormats:{[m.value]:{}}),g=c(I(e.numberFormats)?e.numberFormats:{[m.value]:{}});let y=n?n.missingWarn:!L(e.missingWarn)&&!i(e.missingWarn)||e.missingWarn,T=n?n.fallbackWarn:!L(e.fallbackWarn)&&!i(e.fallbackWarn)||e.fallbackWarn,v=n?n.fallbackRoot:!L(e.fallbackRoot)||e.fallbackRoot,C=!!e.fallbackFormat,O=h(e.missing)?e.missing:null,P=h(e.missing)?Dt(e.missing):null,R=h(e.postTranslation)?e.postTranslation:null,S=n?n.warnHtmlMessage:!L(e.warnHtmlMessage)||e.warnHtmlMessage,F=!!e.escapeParameter;const D=n?n.modifiers:I(e.modifiers)?e.modifiers:{};let w,x=e.pluralRules||n&&n.pluralRules;w=(()=>{o&&Ve(null);const t={version:bt,locale:m.value,fallbackLocale:p.value,messages:_.value,modifiers:D,pluralRules:x,missing:null===P?void 0:P,missingWarn:y,fallbackWarn:T,fallbackFormat:C,unresolving:!0,postTranslation:null===R?void 0:R,warnHtmlMessage:S,escapeParameter:F,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};t.datetimeFormats=d.value,t.numberFormats=g.value,t.__datetimeFormatters=I(w)?w.__datetimeFormatters:void 0,t.__numberFormatters=I(w)?w.__numberFormatters:void 0;const n=Ye(t);return o&&Ve(n),n})(),ze(w,m.value,p.value);const M=t.computed({get:()=>m.value,set:e=>{m.value=e,w.locale=m.value}}),U=t.computed({get:()=>p.value,set:e=>{p.value=e,w.fallbackLocale=p.value,ze(w,m.value,e)}}),W=t.computed((()=>_.value)),$=t.computed((()=>d.value)),H=t.computed((()=>g.value));const j=(e,t,r,a,s,c)=>{let i;m.value,p.value,_.value,d.value,g.value;try{0,o||(w.fallbackContext=n?Xe():void 0),i=e(w)}finally{o||(w.fallbackContext=void 0)}if("translate exists"!==r&&l(i)&&i===we||"translate exists"===r&&!i){const[e,r]=t();return n&&v?a(n):s(e)}if(c(i))return i;throw Error(ht.UNEXPECTED_RETURN_TYPE)};function V(...e){return j((t=>Reflect.apply(_t,null,[t,...e])),(()=>Et(...e)),"translate",(t=>Reflect.apply(t.t,t,[...e])),(e=>e),(e=>k(e)))}const X={normalize:function(e){return e.map((e=>k(e)||l(e)||L(e)?Pt(String(e)):e))},interpolate:e=>e,type:"vnode"};function G(e){return _.value[e]||{}}Ft++,n&&r&&(t.watch(n.locale,(e=>{u&&(m.value=e,w.locale=e,ze(w,m.value,p.value))})),t.watch(n.fallbackLocale,(e=>{u&&(p.value=e,w.fallbackLocale=e,ze(w,m.value,p.value))})));const Y={id:Ft,locale:M,fallbackLocale:U,get inheritLocale(){return u},set inheritLocale(e){u=e,e&&n&&(m.value=n.locale.value,p.value=n.fallbackLocale.value,ze(w,m.value,p.value))},get availableLocales(){return Object.keys(_.value).sort()},messages:W,get modifiers(){return D},get pluralRules(){return x||{}},get isGlobal(){return o},get missingWarn(){return y},set missingWarn(e){y=e,w.missingWarn=y},get fallbackWarn(){return T},set fallbackWarn(e){T=e,w.fallbackWarn=T},get fallbackRoot(){return v},set fallbackRoot(e){v=e},get fallbackFormat(){return C},set fallbackFormat(e){C=e,w.fallbackFormat=C},get warnHtmlMessage(){return S},set warnHtmlMessage(e){S=e,w.warnHtmlMessage=e},get escapeParameter(){return F},set escapeParameter(e){F=e,w.escapeParameter=e},t:V,getLocaleMessage:G,setLocaleMessage:function(e,t){if(s){const n={[e]:t};for(const e in n)E(n,e)&&It(n[e]);t=n[e]}_.value[e]=t,w.messages=_.value},mergeLocaleMessage:function(e,t){_.value[e]=_.value[e]||{};const n={[e]:t};if(s)for(const r in n)E(n,r)&&It(n[r]);A(t=n[e],_.value[e]),w.messages=_.value},getPostTranslationHandler:function(){return h(R)?R:null},setPostTranslationHandler:function(e){R=e,w.postTranslation=e},getMissingHandler:function(){return O},setMissingHandler:function(e){null!==e&&(P=Dt(e)),O=e,w.missing=P},[yt]:function(e){x=e,w.pluralRules=x}};return Y.datetimeFormats=$,Y.numberFormats=H,Y.rt=function(...e){const[t,n,r]=e;if(r&&!N(r))throw Error(ht.INVALID_ARGUMENT);return V(t,n,f({resolvedMessage:!0},r||{}))},Y.te=function(e,t){return j((()=>{if(!e)return!1;const n=G(k(t)?t:m.value),r=w.messageResolver(n,e);return ee(r)||pt(r)||k(r)}),(()=>[e]),"translate exists",(n=>Reflect.apply(n.te,n,[e,t])),St,(e=>L(e)))},Y.tm=function(e){const t=function(e){let t=null;const n=Te(w,p.value,m.value);for(let r=0;rReflect.apply(Qe,null,[t,...e])),(()=>Ze(...e)),"datetime format",(t=>Reflect.apply(t.d,t,[...e])),(()=>Me),(e=>k(e)))},Y.n=function(...e){return j((t=>Reflect.apply(tt,null,[t,...e])),(()=>rt(...e)),"number format",(t=>Reflect.apply(t.n,t,[...e])),(()=>Me),(e=>k(e)))},Y.getDateTimeFormat=function(e){return d.value[e]||{}},Y.setDateTimeFormat=function(e,t){d.value[e]=t,w.datetimeFormats=d.value,et(w,e,t)},Y.mergeDateTimeFormat=function(e,t){d.value[e]=f(d.value[e]||{},t),w.datetimeFormats=d.value,et(w,e,t)},Y.getNumberFormat=function(e){return g.value[e]||{}},Y.setNumberFormat=function(e,t){g.value[e]=t,w.numberFormats=g.value,at(w,e,t)},Y.mergeNumberFormat=function(e,t){g.value[e]=f(g.value[e]||{},t),w.numberFormats=g.value,at(w,e,t)},Y[Tt]=a,Y[kt]=function(...e){return j((t=>{let n;const r=t;try{r.processor=X,n=Reflect.apply(_t,null,[r,...e])}finally{r.processor=null}return n}),(()=>Et(...e)),"translate",(t=>t[kt](...e)),(e=>[Pt(e)]),(e=>b(e)))},Y[Lt]=function(...e){return j((t=>Reflect.apply(Qe,null,[t,...e])),(()=>Ze(...e)),"datetime format",(t=>t[Lt](...e)),Rt,(e=>k(e)||b(e)))},Y[Nt]=function(...e){return j((t=>Reflect.apply(tt,null,[t,...e])),(()=>rt(...e)),"number format",(t=>t[Nt](...e)),Rt,(e=>k(e)||b(e)))},Y}function xt(e={}){const t=wt(function(e){const t=k(e.locale)?e.locale:xe,n=k(e.fallbackLocale)||b(e.fallbackLocale)||I(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:t,r=h(e.missing)?e.missing:void 0,a=!L(e.silentTranslationWarn)&&!i(e.silentTranslationWarn)||!e.silentTranslationWarn,o=!L(e.silentFallbackWarn)&&!i(e.silentFallbackWarn)||!e.silentFallbackWarn,s=!L(e.fallbackRoot)||e.fallbackRoot,l=!!e.formatFallbackMessages,c=I(e.modifiers)?e.modifiers:{},u=e.pluralizationRules,m=h(e.postTranslation)?e.postTranslation:void 0,p=!k(e.warnHtmlInMessage)||"off"!==e.warnHtmlInMessage,_=!!e.escapeParameterHtml,d=!L(e.sync)||e.sync;let g=e.messages;if(I(e.sharedMessages)){const t=e.sharedMessages;g=Object.keys(t).reduce(((e,n)=>{const r=e[n]||(e[n]={});return f(r,t[n]),e}),g||{})}const{__i18n:E,__root:N,__injectWithOption:y}=e,T=e.datetimeFormats,v=e.numberFormats;return{locale:t,fallbackLocale:n,messages:g,flatJson:e.flatJson,datetimeFormats:T,numberFormats:v,missing:r,missingWarn:a,fallbackWarn:o,fallbackRoot:s,fallbackFormat:l,modifiers:c,pluralRules:u,postTranslation:m,warnHtmlMessage:p,escapeParameter:_,messageResolver:e.messageResolver,inheritLocale:d,__i18n:E,__root:N,__injectWithOption:y}}(e)),{__extender:n}=e,r={id:t.id,get locale(){return t.locale.value},set locale(e){t.locale.value=e},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(e){t.fallbackLocale.value=e},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(e){t.setMissingHandler(e)},get silentTranslationWarn(){return L(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(e){t.missingWarn=L(e)?!e:e},get silentFallbackWarn(){return L(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(e){t.fallbackWarn=L(e)?!e:e},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(e){t.fallbackFormat=e},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(e){t.setPostTranslationHandler(e)},get sync(){return t.inheritLocale},set sync(e){t.inheritLocale=e},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(e){t.warnHtmlMessage="off"!==e},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(e){t.escapeParameter=e},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t:(...e)=>Reflect.apply(t.t,t,[...e]),rt:(...e)=>Reflect.apply(t.rt,t,[...e]),tc(...e){const[n,r,a]=e,o={plural:1};let s=null,c=null;if(!k(n))throw Error(ht.INVALID_ARGUMENT);const i=n;return k(r)?o.locale=r:l(r)?o.plural=r:b(r)?s=r:I(r)&&(c=r),k(a)?o.locale=a:b(a)?s=a:I(a)&&(c=a),Reflect.apply(t.t,t,[i,s||c||{},o])},te:(e,n)=>t.te(e,n),tm:e=>t.tm(e),getLocaleMessage:e=>t.getLocaleMessage(e),setLocaleMessage(e,n){t.setLocaleMessage(e,n)},mergeLocaleMessage(e,n){t.mergeLocaleMessage(e,n)},d:(...e)=>Reflect.apply(t.d,t,[...e]),getDateTimeFormat:e=>t.getDateTimeFormat(e),setDateTimeFormat(e,n){t.setDateTimeFormat(e,n)},mergeDateTimeFormat(e,n){t.mergeDateTimeFormat(e,n)},n:(...e)=>Reflect.apply(t.n,t,[...e]),getNumberFormat:e=>t.getNumberFormat(e),setNumberFormat(e,n){t.setNumberFormat(e,n)},mergeNumberFormat(e,n){t.mergeNumberFormat(e,n)}};return r.__extender=n,r}function Mt(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[yt](t.pluralizationRules||e.pluralizationRules);const n=Ct(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach((t=>e.mergeLocaleMessage(t,n[t]))),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach((n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n]))),t.numberFormats&&Object.keys(t.numberFormats).forEach((n=>e.mergeNumberFormat(n,t.numberFormats[n]))),e}const Ut={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>"parent"===e||"global"===e,default:"parent"},i18n:{type:Object}};function Wt(){return t.Fragment}const $t=t.defineComponent({name:"i18n-t",props:f({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>l(e)||!isNaN(e)}},Ut),setup(e,n){const{slots:r,attrs:a}=n,o=e.i18n||Qt({useScope:e.scope,__useComponent:!0});return()=>{const s=Object.keys(r).filter((e=>"_"!==e)),l=p();e.locale&&(l.locale=e.locale),void 0!==e.plural&&(l.plural=k(e.plural)?+e.plural:e.plural);const c=function({slots:e},n){if(1===n.length&&"default"===n[0])return(e.default?e.default():[]).reduce(((e,n)=>[...e,...n.type===t.Fragment?n.children:[n]]),[]);return n.reduce(((t,n)=>{const r=e[n];return r&&(t[n]=r()),t}),p())}(n,s),i=o[kt](e.keypath,c,l),u=f(p(),a),m=k(e.tag)||N(e.tag)?e.tag:Wt();return t.h(m,u,i)}}}),Ht=$t;function jt(e,n,r,a){const{slots:o,attrs:s}=n;return()=>{const n={part:!0};let l=p();e.locale&&(n.locale=e.locale),k(e.format)?n.key=e.format:N(e.format)&&(k(e.format.key)&&(n.key=e.format.key),l=Object.keys(e.format).reduce(((t,n)=>r.includes(n)?f(p(),t,{[n]:e.format[n]}):t),p()));const c=a(e.value,n,l);let i=[n.key];b(c)?i=c.map(((e,t)=>{const n=o[e.type],r=n?n({[e.type]:e.value,index:t,parts:c}):[e.value];var a;return b(a=r)&&!k(a[0])&&(r[0].key=`${e.type}-${t}`),r})):k(c)&&(i=[c]);const u=f(p(),s),m=k(e.tag)||N(e.tag)?e.tag:Wt();return t.h(m,u,i)}}const Vt=t.defineComponent({name:"i18n-n",props:f({value:{type:Number,required:!0},format:{type:[String,Object]}},Ut),setup(e,t){const n=e.i18n||Qt({useScope:e.scope,__useComponent:!0});return jt(e,t,nt,((...e)=>n[Nt](...e)))}}),Xt=Vt,Gt=t.defineComponent({name:"i18n-d",props:f({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Ut),setup(e,t){const n=e.i18n||Qt({useScope:e.scope,__useComponent:!0});return jt(e,t,qe,((...e)=>n[Lt](...e)))}}),Yt=Gt;function Kt(e){const n=t=>{const{instance:n,value:r}=t;if(!n||!n.$)throw Error(ht.UNEXPECTED_ERROR);const a=function(e,t){const n=e;if("composition"===e.mode)return n.__getInstance(t)||e.global;{const r=n.__getInstance(t);return null!=r?r.__composer:e.global.__composer}}(e,n.$),o=Bt(r);return[Reflect.apply(a.t,a,[...zt(o)]),a]};return{created:(a,o)=>{const[s,l]=n(o);r&&e.global===l&&(a.__i18nWatcher=t.watch(l.locale,(()=>{o.instance&&o.instance.$forceUpdate()}))),a.__composer=l,a.textContent=s},unmounted:e=>{r&&e.__i18nWatcher&&(e.__i18nWatcher(),e.__i18nWatcher=void 0,delete e.__i18nWatcher),e.__composer&&(e.__composer=void 0,delete e.__composer)},beforeUpdate:(e,{value:t})=>{if(e.__composer){const n=e.__composer,r=Bt(t);e.textContent=Reflect.apply(n.t,n,[...zt(r)])}},getSSRProps:e=>{const[t]=n(e);return{textContent:t}}}}function Bt(e){if(k(e))return{path:e};if(I(e)){if(!("path"in e))throw Error(ht.REQUIRED_VALUE,"path");return e}throw Error(ht.INVALID_VALUE)}function zt(e){const{path:t,locale:n,args:r,choice:a,plural:o}=e,s={},c=r||{};return k(n)&&(s.locale=n),l(a)&&(s.plural=a),l(o)&&(s.plural=o),[t,c,s]}const Jt=a("global-vue-i18n");function Qt(e={}){const n=t.getCurrentInstance();if(null==n)throw Error(ht.MUST_BE_CALL_SETUP_TOP);if(!n.isCE&&null!=n.appContext.app&&!n.appContext.app.__VUE_I18N_SYMBOL__)throw Error(ht.NOT_INSTALLED);const r=function(e){const n=t.inject(e.isCE?Jt:e.appContext.app.__VUE_I18N_SYMBOL__);if(!n)throw Error(e.isCE?ht.NOT_INSTALLED_WITH_PROVIDE:ht.UNEXPECTED_ERROR);return n}(n),a=function(e){return"composition"===e.mode?e.global:e.global.__composer}(r),o=Ot(n),s=function(e,t){return u(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}(e,o);if("global"===s)return At(a,e,o),a;if("parent"===s){let t=function(e,t,n=!1){let r=null;const a=t.root;let o=function(e,t=!1){if(null==e)return null;return t&&e.vnode.ctx||e.parent}(t,n);for(;null!=o;){const t=e;if("composition"===e.mode)r=t.__getInstance(o);else{const e=t.__getInstance(o);null!=e&&(r=e.__composer,n&&r&&!r[Tt]&&(r=null))}if(null!=r)break;if(a===o)break;o=o.parent}return r}(r,n,e.__useComponent);return null==t&&(t=a),t}const l=r;let c=l.__getInstance(n);if(null==c){const r=f({},e);"__i18n"in o&&(r.__i18n=o.__i18n),a&&(r.__root=a),c=wt(r),l.__composerExtend&&(c[vt]=l.__composerExtend(c)),function(e,n,r){t.onMounted((()=>{}),n),t.onUnmounted((()=>{const t=r;e.__deleteInstance(n);const a=t[vt];a&&(a(),delete t[vt])}),n)}(l,n,c),l.__setInstance(n,c)}return c}const qt=["locale","fallbackLocale","availableLocales"],Zt=["t","rt","d","n","tm","te"];return We=function(e,t){if(k(e)){!L(t.warnHtmlMessage)||t.warnHtmlMessage;const n=(t.onCacheKey||Ee)(e),r=be[n];if(r)return r;const{ast:a,detectError:o}=function(e,t={}){let n=!1;const r=t.onError||S;return t.onError=e=>{n=!0,r(e)},{...Z(e,t),detectError:n}}(e,{...t,location:!1,jit:!0}),s=_e(a);return o?s:be[n]=s}{const t=e.cacheKey;if(t){const n=be[t];return n||(be[t]=_e(e))}return _e(e)}},$e=function(e,t){if(!N(e))return null;let n=Se.get(t);if(n||(n=function(e){const t=[];let n,r,a,o,s,l,c,i=-1,u=0,f=0;const m=[];function p(){const t=e[i+1];if(5===u&&"'"===t||6===u&&'"'===t)return i++,a="\\"+t,m[0](),!0}for(m[0]=()=>{void 0===r?r=a:r+=a},m[1]=()=>{void 0!==r&&(t.push(r),r=void 0)},m[2]=()=>{m[0](),f++},m[3]=()=>{if(f>0)f--,u=4,m[0]();else{if(f=0,void 0===r)return!1;if(r=Re(r),!1===r)return!1;m[1]()}};null!==u;)if(i++,n=e[i],"\\"!==n||!p()){if(o=Pe(n),c=Oe[u],s=c[o]||c.l||8,8===s)return;if(u=s[0],void 0!==s[1]&&(l=m[s[1]],l&&(a=n,!1===l())))return;if(7===u)return t}}(t),n&&Se.set(t,n)),!n)return null;const r=n.length;let a=e,o=0;for(;oxt(e))):a.run((()=>wt(e)));if(null==o)throw Error(ht.UNEXPECTED_ERROR);return[a,o]}(e,r),i=a(""),u={get mode(){return r?"legacy":"composition"},async install(e,...n){if(e.__VUE_I18N_SYMBOL__=i,e.provide(e.__VUE_I18N_SYMBOL__,u),I(n[0])){const e=n[0];u.__composerExtend=e.__composerExtend,u.__vueI18nExtend=e.__vueI18nExtend}let a=null;!r&&o&&(a=function(e,n){const r=Object.create(null);qt.forEach((e=>{const a=Object.getOwnPropertyDescriptor(n,e);if(!a)throw Error(ht.UNEXPECTED_ERROR);const o=t.isRef(a.value)?{get:()=>a.value.value,set(e){a.value.value=e}}:{get:()=>a.get&&a.get()};Object.defineProperty(r,e,o)})),e.config.globalProperties.$i18n=r,Zt.forEach((t=>{const r=Object.getOwnPropertyDescriptor(n,t);if(!r||!r.value)throw Error(ht.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${t}`,r)}));const a=()=>{delete e.config.globalProperties.$i18n,Zt.forEach((t=>{delete e.config.globalProperties[`$${t}`]}))};return a}(e,u.global)),function(e,t,...n){const r=I(n[0])?n[0]:{};(!L(r.globalInstall)||r.globalInstall)&&([$t.name,"I18nT"].forEach((t=>e.component(t,$t))),[Vt.name,"I18nN"].forEach((t=>e.component(t,Vt))),[Gt.name,"I18nD"].forEach((t=>e.component(t,Gt)))),e.directive("t",Kt(t))}(e,u,...n),r&&e.mixin(function(e,n,r){return{beforeCreate(){const a=t.getCurrentInstance();if(!a)throw Error(ht.UNEXPECTED_ERROR);const o=this.$options;if(o.i18n){const t=o.i18n;if(o.__i18n&&(t.__i18n=o.__i18n),t.__root=n,this===this.$root)this.$i18n=Mt(e,t);else{t.__injectWithOption=!0,t.__extender=r.__vueI18nExtend,this.$i18n=xt(t);const e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}}else if(o.__i18n)if(this===this.$root)this.$i18n=Mt(e,o);else{this.$i18n=xt({__i18n:o.__i18n,__injectWithOption:!0,__extender:r.__vueI18nExtend,__root:n});const e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}else this.$i18n=e;o.__i18nGlobal&&At(n,o,o),this.$t=(...e)=>this.$i18n.t(...e),this.$rt=(...e)=>this.$i18n.rt(...e),this.$tc=(...e)=>this.$i18n.tc(...e),this.$te=(e,t)=>this.$i18n.te(e,t),this.$d=(...e)=>this.$i18n.d(...e),this.$n=(...e)=>this.$i18n.n(...e),this.$tm=e=>this.$i18n.tm(e),r.__setInstance(a,this.$i18n)},mounted(){},unmounted(){const e=t.getCurrentInstance();if(!e)throw Error(ht.UNEXPECTED_ERROR);const n=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,n.__disposer&&(n.__disposer(),delete n.__disposer,delete n.__extender),r.__deleteInstance(e),delete this.$i18n}}}(c,c.__composer,u));const s=e.unmount;e.unmount=()=>{a&&a(),u.dispose(),s()}},get global(){return c},dispose(){l.stop()},__instances:s,__getInstance:function(e){return s.get(e)||null},__setInstance:function(e,t){s.set(e,t)},__deleteInstance:function(e){s.delete(e)}};return u},e.useI18n=Qt,e.vTDirective=Kt,e}({},Vue); +var VueI18n=function(e,t){"use strict";function n(e){var t=Object.create(null);if(e)for(var n in e)t[n]=e[n];return t.default=e,Object.freeze(t)}var r=n(t);function a(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const o="undefined"!=typeof window,s=(e,t=!1)=>t?Symbol.for(e):Symbol(e),l=(e,t,n)=>c({l:e,k:t,s:n}),c=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),i=e=>"number"==typeof e&&isFinite(e),u=e=>"[object Date]"===C(e),f=e=>"[object RegExp]"===C(e),m=e=>O(e)&&0===Object.keys(e).length,_=Object.assign,p=Object.create,d=(e=null)=>p(e);function g(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function E(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}const b=Object.prototype.hasOwnProperty;function h(e,t){return b.call(e,t)}const k=Array.isArray,L=e=>"function"==typeof e,N=e=>"string"==typeof e,y=e=>"boolean"==typeof e,T=e=>null!==e&&"object"==typeof e,v=e=>T(e)&&L(e.then)&&L(e.catch),I=Object.prototype.toString,C=e=>I.call(e),O=e=>"[object Object]"===C(e);function A(e,t=""){return e.reduce(((e,n,r)=>0===r?e+n:e+t+n),"")}const P=e=>!T(e)||k(e);function R(e,t){if(P(e)||P(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:e,des:t}=n.pop();Object.keys(e).forEach((r=>{"__proto__"!==r&&(T(e[r])&&!T(t[r])&&(t[r]=Array.isArray(e[r])?[]:d()),P(t[r])||P(e[r])?t[r]=e[r]:n.push({src:e[r],des:t[r]}))}))}}function S(e,t,n){return{start:e,end:t}}const F={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16};function D(e){throw e}const w=" ",x="\r",M="\n",U=String.fromCharCode(8232),W=String.fromCharCode(8233);function $(e){const t=e;let n=0,r=1,a=1,o=0;const s=e=>t[e]===x&&t[e+1]===M,l=e=>t[e]===W,c=e=>t[e]===U,i=e=>s(e)||(e=>t[e]===M)(e)||l(e)||c(e),u=e=>s(e)||l(e)||c(e)?M:t[e];function f(){return o=0,i(n)&&(r++,a=0),s(n)&&n++,n++,a++,t[n]}return{index:()=>n,line:()=>r,column:()=>a,peekOffset:()=>o,charAt:u,currentChar:()=>u(n),currentPeek:()=>u(n+o),next:f,peek:function(){return s(n+o)&&o++,o++,t[n+o]},reset:function(){n=0,r=1,a=1,o=0},resetPeek:function(e=0){o=e},skipToPeek:function(){const e=n+o;for(;e!==n;)f();o=0}}}const j=void 0,H="'";function V(e,t={}){const n=!1!==t.location,r=$(e),a=()=>r.index(),o=()=>{return e=r.line(),t=r.column(),n=r.index(),{line:e,column:t,offset:n};var e,t,n},s=o(),l=a(),c={currentType:13,offset:l,startLoc:s,endLoc:s,lastType:13,lastOffset:l,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},i=()=>c,{onError:u}=t;function f(e,t,r){e.endLoc=o(),e.currentType=t;const a={type:t};return n&&(a.loc=S(e.startLoc,e.endLoc)),null!=r&&(a.value=r),a}const m=e=>f(e,13);function _(e,t){return e.currentChar()===t?(e.next(),t):(F.EXPECTED_TOKEN,o(),"")}function p(e){let t="";for(;e.currentPeek()===w||e.currentPeek()===M;)t+=e.currentPeek(),e.peek();return t}function d(e){const t=p(e);return e.skipToPeek(),t}function g(e){if(e===j)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function E(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const r=function(e){if(e===j)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),r}function b(e){p(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function h(e,t=!0){const n=(t=!1,r="")=>{const a=e.currentPeek();return"{"===a?t:"@"!==a&&a?"|"===a?!(r===w||r===M):a===w?(e.peek(),n(!0,w)):a!==M||(e.peek(),n(!0,M)):t},r=n();return t&&e.resetPeek(),r}function k(e,t){const n=e.currentChar();return n===j?j:t(n)?(e.next(),n):null}function L(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}function N(e){return k(e,L)}function y(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t||45===t}function T(e){return k(e,y)}function v(e){const t=e.charCodeAt(0);return t>=48&&t<=57}function I(e){return k(e,v)}function C(e){const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function O(e){return k(e,C)}function A(e){let t="",n="";for(;t=I(e);)n+=t;return n}function P(e){return e!==H&&e!==M}function R(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return D(e,t,4);case"U":return D(e,t,6);default:return F.UNKNOWN_ESCAPE_SEQUENCE,o(),""}}function D(e,t,n){_(e,t);let r="";for(let a=0;a=1&&(F.NOT_ALLOW_NEST_PLACEHOLDER,o()),e.next(),n=f(t,2,"{"),d(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&(F.EMPTY_PLACEHOLDER,o()),e.next(),n=f(t,3,"}"),t.braceNest--,t.braceNest>0&&d(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&(F.UNTERMINATED_CLOSING_BRACE,o()),n=X(e,t)||m(t),t.braceNest=0,n;default:{let r=!0,a=!0,s=!0;if(b(e))return t.braceNest>0&&(F.UNTERMINATED_CLOSING_BRACE,o()),n=f(t,1,W(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(4===t.currentType||5===t.currentType||6===t.currentType))return F.UNTERMINATED_CLOSING_BRACE,o(),t.braceNest=0,Y(e,t);if(r=function(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const r=g(e.currentPeek());return e.resetPeek(),r}(e,t))return n=f(t,4,function(e){d(e);let t="",n="";for(;t=T(e);)n+=t;const r=e.currentChar();if(r&&"}"!==r&&r!==j&&r!==w&&r!==M&&" "!==r){const t=U(e);return F.INVALID_TOKEN_IN_PLACEHOLDER,o(),n+t}return e.currentChar()===j&&(F.UNTERMINATED_CLOSING_BRACE,o()),n}(e)),d(e),n;if(a=E(e,t))return n=f(t,5,function(e){d(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${A(e)}`):t+=A(e),e.currentChar()===j&&(F.UNTERMINATED_CLOSING_BRACE,o()),t}(e)),d(e),n;if(s=function(e,t){const{currentType:n}=t;if(2!==n)return!1;p(e);const r=e.currentPeek()===H;return e.resetPeek(),r}(e,t))return n=f(t,6,function(e){d(e),_(e,"'");let t="",n="";for(;t=k(e,P);)n+="\\"===t?R(e):t;const r=e.currentChar();return r===M||r===j?(F.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,o(),r===M&&(e.next(),_(e,"'")),n):(_(e,"'"),n)}(e)),d(e),n;if(!r&&!a&&!s)return n=f(t,12,U(e)),F.INVALID_TOKEN_IN_PLACEHOLDER,o(),n.value,d(e),n;break}}return n}function X(e,t){const{currentType:n}=t;let r=null;const a=e.currentChar();switch(7!==n&&8!==n&&11!==n&&9!==n||a!==M&&a!==w||(F.INVALID_LINKED_FORMAT,o()),a){case"@":return e.next(),r=f(t,7,"@"),t.inLinked=!0,r;case".":return d(e),e.next(),f(t,8,".");case":":return d(e),e.next(),f(t,9,":");default:return b(e)?(r=f(t,1,W(e)),t.braceNest=0,t.inLinked=!1,r):function(e,t){const{currentType:n}=t;if(7!==n)return!1;p(e);const r="."===e.currentPeek();return e.resetPeek(),r}(e,t)||function(e,t){const{currentType:n}=t;if(7!==n&&11!==n)return!1;p(e);const r=":"===e.currentPeek();return e.resetPeek(),r}(e,t)?(d(e),X(e,t)):function(e,t){const{currentType:n}=t;if(8!==n)return!1;p(e);const r=g(e.currentPeek());return e.resetPeek(),r}(e,t)?(d(e),f(t,11,function(e){let t="",n="";for(;t=N(e);)n+=t;return n}(e))):function(e,t){const{currentType:n}=t;if(9!==n)return!1;const r=()=>{const t=e.currentPeek();return"{"===t?g(e.peek()):!("@"===t||"|"===t||":"===t||"."===t||t===w||!t)&&(t===M?(e.peek(),r()):h(e,!1))},a=r();return e.resetPeek(),a}(e,t)?(d(e),"{"===a?V(e,t)||r:f(t,10,function(e){const t=n=>{const r=e.currentChar();return"{"!==r&&"@"!==r&&"|"!==r&&"("!==r&&")"!==r&&r?r===w?n:(n+=r,e.next(),t(n)):n};return t("")}(e))):(7===n&&(F.INVALID_LINKED_FORMAT,o()),t.braceNest=0,t.inLinked=!1,Y(e,t))}}function Y(e,t){let n={type:13};if(t.braceNest>0)return V(e,t)||m(t);if(t.inLinked)return X(e,t)||m(t);switch(e.currentChar()){case"{":return V(e,t)||m(t);case"}":return F.UNBALANCED_CLOSING_BRACE,o(),e.next(),f(t,3,"}");case"@":return X(e,t)||m(t);default:if(b(e))return n=f(t,1,W(e)),t.braceNest=0,t.inLinked=!1,n;if(h(e))return f(t,0,function(e){let t="";for(;;){const n=e.currentChar();if("{"===n||"}"===n||"@"===n||"|"===n||!n)break;if(n===w||n===M)if(h(e))t+=n,e.next();else{if(b(e))break;t+=n,e.next()}else t+=n,e.next()}return t}(e))}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:s}=c;return c.lastType=e,c.lastOffset=t,c.lastStartLoc=n,c.lastEndLoc=s,c.offset=a(),c.startLoc=o(),r.currentChar()===j?f(c,13):Y(r,c)},currentOffset:a,currentPosition:o,context:i}}const X=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Y(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||n,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function G(e={}){const t=!1!==e.location,{onError:n}=e;function r(e,n,r){const a={type:e};return t&&(a.start=n,a.end=n,a.loc={start:r,end:r}),a}function a(e,n,r,a){t&&(e.end=n,e.loc&&(e.loc.end=r))}function o(e,t){const n=e.context(),o=r(3,n.offset,n.startLoc);return o.value=t,a(o,e.currentOffset(),e.currentPosition()),o}function s(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:s}=n,l=r(5,o,s);return l.index=parseInt(t,10),e.nextToken(),a(l,e.currentOffset(),e.currentPosition()),l}function l(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:s}=n,l=r(4,o,s);return l.key=t,e.nextToken(),a(l,e.currentOffset(),e.currentPosition()),l}function c(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:s}=n,l=r(9,o,s);return l.value=t.replace(X,Y),e.nextToken(),a(l,e.currentOffset(),e.currentPosition()),l}function i(e){const t=e.context(),n=r(6,t.offset,t.startLoc);let o=e.nextToken();if(8===o.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:o,lastStartLoc:s}=n,l=r(8,o,s);return 11!==t.type?(F.UNEXPECTED_EMPTY_LINKED_MODIFIER,n.lastStartLoc,l.value="",a(l,o,s),{nextConsumeToken:t,node:l}):(null==t.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,n.lastStartLoc,K(t)),l.value=t.value||"",a(l,e.currentOffset(),e.currentPosition()),{node:l})}(e);n.modifier=t.node,o=t.nextConsumeToken||e.nextToken()}switch(9!==o.type&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(o)),o=e.nextToken(),2===o.type&&(o=e.nextToken()),o.type){case 10:null==o.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(o)),n.key=function(e,t){const n=e.context(),o=r(7,n.offset,n.startLoc);return o.value=t,a(o,e.currentOffset(),e.currentPosition()),o}(e,o.value||"");break;case 4:null==o.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(o)),n.key=l(e,o.value||"");break;case 5:null==o.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(o)),n.key=s(e,o.value||"");break;case 6:null==o.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(o)),n.key=c(e,o.value||"");break;default:{F.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc;const s=e.context(),l=r(7,s.offset,s.startLoc);return l.value="",a(l,s.offset,s.startLoc),n.key=l,a(n,s.offset,s.startLoc),{nextConsumeToken:o,node:n}}}return a(n,e.currentOffset(),e.currentPosition()),{node:n}}function u(e){const t=e.context(),n=r(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let u=null;do{const r=u||e.nextToken();switch(u=null,r.type){case 0:null==r.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(r)),n.items.push(o(e,r.value||""));break;case 5:null==r.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(r)),n.items.push(s(e,r.value||""));break;case 4:null==r.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(r)),n.items.push(l(e,r.value||""));break;case 6:null==r.value&&(F.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,K(r)),n.items.push(c(e,r.value||""));break;case 7:{const t=i(e);n.items.push(t.node),u=t.nextConsumeToken||null;break}}}while(13!==t.currentType&&1!==t.currentType);return a(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function f(e){const t=e.context(),{offset:n,startLoc:o}=t,s=u(e);return 13===t.currentType?s:function(e,t,n,o){const s=e.context();let l=0===o.items.length;const c=r(1,t,n);c.cases=[],c.cases.push(o);do{const t=u(e);l||(l=0===t.items.length),c.cases.push(t)}while(13!==s.currentType);return a(c,e.currentOffset(),e.currentPosition()),c}(e,n,o,s)}return{parse:function(n){const o=V(n,_({},e)),s=o.context(),l=r(0,s.offset,s.startLoc);return t&&l.loc&&(l.loc.source=n),l.body=f(o),e.onCacheKey&&(l.cacheKey=e.onCacheKey(n)),13!==s.currentType&&(F.UNEXPECTED_LEXICAL_ANALYSIS,s.lastStartLoc,n[s.offset]),a(l,o.currentOffset(),o.currentPosition()),l}}}function K(e){if(13===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function B(e,t){for(let n=0;nn,helper:e=>(n.helpers.add(e),e)}}(e);n.helper("normalize"),e.body&&z(e.body,n);const r=n.context();e.helpers=Array.from(r.helpers)}function Q(e){if(1===e.items.length){const t=e.items[0];3!==t.type&&9!==t.type||(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;n1){e.push(`${n("plural")}([`),e.indent(r());const a=t.cases.length;for(let n=0;n{const n=N(t.mode)?t.mode:"normal",r=N(t.filename)?t.filename:"message.intl",a=!!t.sourceMap,o=null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",s=t.needIndent?t.needIndent:"arrow"!==n,l=e.helpers||[],c=function(e,t){const{sourceMap:n,filename:r,breakLineCode:a,needIndent:o}=t,s=!1!==t.location,l={filename:r,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:a,needIndent:o,indentLevel:0};function c(e,t){l.code+=e}function i(e,t=!0){const n=t?a:"";c(o?n+" ".repeat(e):n)}return s&&e.loc&&(l.source=e.loc.source),{context:()=>l,push:c,indent:function(e=!0){const t=++l.indentLevel;e&&i(t)},deindent:function(e=!0){const t=--l.indentLevel;e&&i(t)},newline:function(){i(l.indentLevel)},helper:e=>`_${e}`,needIndent:()=>l.needIndent}}(e,{mode:n,filename:r,sourceMap:a,breakLineCode:o,needIndent:s});c.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),c.indent(s),l.length>0&&(c.push(`const { ${A(l.map((e=>`${e}: _${e}`)),", ")} } = ctx`),c.newline()),c.push("return "),Z(c,e),c.deindent(s),c.push("}"),delete e.helpers;const{code:i,map:u}=c.context();return{ast:e,code:i,map:u?u.toJSON():void 0}};function te(e,t={}){const n=_({},t),r=!!n.jit,a=!!n.minify,o=null==n.optimize||n.optimize,s=G(n).parse(e);return r?(o&&function(e){const t=e.body;2===t.type?Q(t):t.cases.forEach((e=>Q(e)))}(s),a&&q(s),{ast:s,code:""}):(J(s,n),ee(s,n))}function ne(e){return T(e)&&0===ce(e)&&(h(e,"b")||h(e,"body"))}const re=["b","body"];const ae=["c","cases"];const oe=["s","static"];const se=["i","items"];const le=["t","type"];function ce(e){return _e(e,le)}const ie=["v","value"];function ue(e,t){const n=_e(e,ie);if(null!=n)return n;throw de(t)}const fe=["m","modifier"];const me=["k","key"];function _e(e,t,n){for(let r=0;rfunction(e,t){const n=(r=t,_e(r,re));var r;if(null==n)throw de(0);if(1===ce(n)){const t=function(e){return _e(e,ae,[])}(n);return e.plural(t.reduce(((t,n)=>[...t,Ee(e,n)]),[]))}return Ee(e,n)}(t,e)}function Ee(e,t){const n=function(e){return _e(e,oe)}(t);if(null!=n)return"text"===e.type?n:e.normalize([n]);{const n=function(e){return _e(e,se,[])}(t).reduce(((t,n)=>[...t,be(e,n)]),[]);return e.normalize(n)}}function be(e,t){const n=ce(t);switch(n){case 3:case 9:case 7:case 8:return ue(t,n);case 4:{const r=t;if(h(r,"k")&&r.k)return e.interpolate(e.named(r.k));if(h(r,"key")&&r.key)return e.interpolate(e.named(r.key));throw de(n)}case 5:{const r=t;if(h(r,"i")&&i(r.i))return e.interpolate(e.list(r.i));if(h(r,"index")&&i(r.index))return e.interpolate(e.list(r.index));throw de(n)}case 6:{const n=t,r=function(e){return _e(e,fe)}(n),a=function(e){const t=_e(e,me);if(t)return t;throw de(6)}(n);return e.linked(be(e,a),r?be(e,r):void 0,e.type)}default:throw new Error(`unhandled node on format message part: ${n}`)}}const he=e=>e;let ke=d();const Le={INVALID_ARGUMENT:17,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_NON_STRING_MESSAGE:20,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23};function Ne(e,t){return null!=t.locale?Te(t.locale):Te(e.locale)}let ye;function Te(e){if(N(e))return e;if(L(e)){if(e.resolvedOnce&&null!=ye)return ye;if("Function"===e.constructor.name){const t=e();if(v(t))throw Error(Le.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return ye=t}throw Error(Le.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}throw Error(Le.NOT_SUPPORT_LOCALE_TYPE)}function ve(e,t,n){return[...new Set([n,...k(t)?t:T(t)?Object.keys(t):N(t)?[t]:[n]])]}function Ie(e,t,n){const r=N(n)?n:Ue,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let o=a.__localeChainCache.get(r);if(!o){o=[];let e=[n];for(;k(e);)e=Ce(o,e,t);const s=k(t)||!O(t)?t:t.default?t.default:null;e=N(s)?[s]:s,k(e)&&Ce(o,e,!1),a.__localeChainCache.set(r,o)}return o}function Ce(e,t,n){let r=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;let je,He,Ve;let Xe=null;const Ye=e=>{Xe=e},Ge=()=>Xe;let Ke=0;function Be(e={}){const t=L(e.onWarn)?e.onWarn:a,n=N(e.version)?e.version:xe,r=N(e.locale)||L(e.locale)?e.locale:Ue,o=L(r)?Ue:r,s=k(e.fallbackLocale)||O(e.fallbackLocale)||N(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:o,l=O(e.messages)?e.messages:ze(o),c=O(e.datetimeFormats)?e.datetimeFormats:ze(o),i=O(e.numberFormats)?e.numberFormats:ze(o),u=_(d(),e.modifiers,{upper:(e,t)=>"text"===t&&N(e)?e.toUpperCase():"vnode"===t&&T(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&N(e)?e.toLowerCase():"vnode"===t&&T(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&N(e)?$e(e):"vnode"===t&&T(e)&&"__v_isVNode"in e?$e(e.children):e}),m=e.pluralRules||d(),p=L(e.missing)?e.missing:null,g=!y(e.missingWarn)&&!f(e.missingWarn)||e.missingWarn,E=!y(e.fallbackWarn)&&!f(e.fallbackWarn)||e.fallbackWarn,b=!!e.fallbackFormat,h=!!e.unresolving,v=L(e.postTranslation)?e.postTranslation:null,I=O(e.processor)?e.processor:null,C=!y(e.warnHtmlMessage)||e.warnHtmlMessage,A=!!e.escapeParameter,P=L(e.messageCompiler)?e.messageCompiler:je,R=L(e.messageResolver)?e.messageResolver:He||we,S=L(e.localeFallbacker)?e.localeFallbacker:Ve||ve,F=T(e.fallbackContext)?e.fallbackContext:void 0,D=e,w=T(D.__datetimeFormatters)?D.__datetimeFormatters:new Map,x=T(D.__numberFormatters)?D.__numberFormatters:new Map,M=T(D.__meta)?D.__meta:{};Ke++;const U={version:n,cid:Ke,locale:r,fallbackLocale:s,messages:l,modifiers:u,pluralRules:m,missing:p,missingWarn:g,fallbackWarn:E,fallbackFormat:b,unresolving:h,postTranslation:v,processor:I,warnHtmlMessage:C,escapeParameter:A,messageCompiler:P,messageResolver:R,localeFallbacker:S,fallbackContext:F,onWarn:t,__meta:M};return U.datetimeFormats=c,U.numberFormats=i,U.__datetimeFormatters=w,U.__numberFormatters=x,U}const ze=e=>({[e]:d()});function Je(e,t,n,r,a){const{missing:o,onWarn:s}=e;if(null!==o){const r=o(e,n,t,a);return N(r)?r:t}return t}function Qe(e,t,n){e.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function qe(e,t){const n=t.indexOf(e);if(-1===n)return!1;for(let o=n+1;o{et.includes(e)?l[e]=n[e]:o[e]=n[e]})),N(r)?o.locale=r:O(r)&&(l=r),O(a)&&(l=a),[o.key||"",s,o,l]}function nt(e,t,n){const r=e;for(const a in n){const e=`${t}__${a}`;r.__datetimeFormatters.has(e)&&r.__datetimeFormatters.delete(e)}}function rt(e,...t){const{numberFormats:n,unresolving:r,fallbackLocale:a,onWarn:o,localeFallbacker:s}=e,{__numberFormatters:l}=e,[c,i,u,f]=ot(...t);y(u.missingWarn)?u.missingWarn:e.missingWarn;y(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const p=!!u.part,d=Ne(e,u),g=s(e,a,d);if(!N(c)||""===c)return new Intl.NumberFormat(d,f).format(i);let E,b={},h=null;for(let m=0;m{at.includes(e)?s[e]=n[e]:o[e]=n[e]})),N(r)?o.locale=r:O(r)&&(s=r),O(a)&&(s=a),[o.key||"",l,o,s]}function st(e,t,n){const r=e;for(const a in n){const e=`${t}__${a}`;r.__numberFormatters.has(e)&&r.__numberFormatters.delete(e)}}const lt=e=>e,ct=e=>"",it="text",ut=e=>0===e.length?"":A(e),ft=e=>null==e?"":k(e)||O(e)&&e.toString===I?JSON.stringify(e,null,2):String(e);function mt(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function _t(e={}){const t=e.locale,n=function(e){const t=i(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(i(e.named.count)||i(e.named.n))?i(e.named.count)?e.named.count:i(e.named.n)?e.named.n:t:t}(e),r=T(e.pluralRules)&&N(t)&&L(e.pluralRules[t])?e.pluralRules[t]:mt,a=T(e.pluralRules)&&N(t)&&L(e.pluralRules[t])?mt:void 0,o=e.list||[],s=e.named||d();i(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,s);function l(t,n){const r=L(e.messages)?e.messages(t,!!n):!!T(e.messages)&&e.messages[t];return r||(e.parent?e.parent.message(t):ct)}const c=O(e.processor)&&L(e.processor.normalize)?e.processor.normalize:ut,u=O(e.processor)&&L(e.processor.interpolate)?e.processor.interpolate:ft,f={list:e=>o[e],named:e=>s[e],plural:e=>e[r(n,e.length,a)],linked:(t,...n)=>{const[r,a]=n;let o="text",s="";1===n.length?T(r)?(s=r.modifier||s,o=r.type||o):N(r)&&(s=r||s):2===n.length&&(N(r)&&(s=r||s),N(a)&&(o=a||o));const c=l(t,!0)(f),i="vnode"===o&&k(c)&&s?c[0]:c;return s?(u=s,e.modifiers?e.modifiers[u]:lt)(i,o):i;var u},message:l,type:O(e.processor)&&N(e.processor.type)?e.processor.type:it,interpolate:u,normalize:c,values:_(d(),o,s)};return f}const pt=()=>"",dt=e=>L(e);function gt(e,...t){const{fallbackFormat:n,postTranslation:r,unresolving:a,messageCompiler:o,fallbackLocale:s,messages:l}=e,[c,u]=ht(...t),f=y(u.missingWarn)?u.missingWarn:e.missingWarn,m=y(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn,_=y(u.escapeParameter)?u.escapeParameter:e.escapeParameter,p=!!u.resolvedMessage,b=N(u.default)||y(u.default)?y(u.default)?o?c:()=>c:u.default:n?o?c:()=>c:null,h=n||null!=b&&(N(b)||L(b)),v=Ne(e,u);_&&function(e){k(e.list)?e.list=e.list.map((e=>N(e)?g(e):e)):T(e.named)&&Object.keys(e.named).forEach((t=>{N(e.named[t])&&(e.named[t]=g(e.named[t]))}))}(u);let[I,C,O]=p?[c,v,l[v]||d()]:Et(e,c,v,s,m,f),A=I,P=c;if(p||N(A)||ne(A)||dt(A)||h&&(A=b,P=A),!(p||(N(A)||ne(A)||dt(A))&&N(C)))return a?Me:c;let R=!1;const S=dt(A)?A:bt(e,c,C,A,P,(()=>{R=!0}));if(R)return A;const F=function(e,t,n,r){const{modifiers:a,pluralRules:o,messageResolver:s,fallbackLocale:l,fallbackWarn:c,missingWarn:u,fallbackContext:f}=e,m=(r,a)=>{let o=s(n,r);if(null==o&&(f||a)){const[,,n]=Et(f||e,r,t,l,c,u);o=s(n,r)}if(N(o)||ne(o)){let n=!1;const a=bt(e,r,t,o,r,(()=>{n=!0}));return n?pt:a}return dt(o)?o:pt},_={locale:t,modifiers:a,pluralRules:o,messages:m};e.processor&&(_.processor=e.processor);r.list&&(_.list=r.list);r.named&&(_.named=r.named);i(r.plural)&&(_.pluralIndex=r.plural);return _}(e,C,O,u),D=function(e,t,n){const r=t(n);return r}(0,S,_t(F));let w=r?r(D,c):D;var x;return _&&N(w)&&(x=(x=(x=w).replace(/(\w+)\s*=\s*"([^"]*)"/g,((e,t,n)=>`${t}="${E(n)}"`))).replace(/(\w+)\s*=\s*'([^']*)'/g,((e,t,n)=>`${t}='${E(n)}'`)),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(x)&&(x=x.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach((e=>{x=x.replace(e,"$1javascript:")})),w=x),w}function Et(e,t,n,r,a,o){const{messages:s,onWarn:l,messageResolver:c,localeFallbacker:i}=e,u=i(e,r,n);let f,m=d(),_=null;for(let p=0;pr;return e.locale=n,e.key=t,e}const i=s(r,function(e,t,n,r,a,o){return{locale:t,key:n,warnHtmlMessage:a,onError:e=>{throw o&&o(e),e},onCacheKey:e=>l(t,n,e)}}(0,n,a,0,c,o));return i.locale=n,i.key=t,i.source=r,i}function ht(...e){const[t,n,r]=e,a=d();if(!(N(t)||i(t)||dt(t)||ne(t)))throw Error(Le.INVALID_ARGUMENT);const o=i(t)?String(t):(dt(t),t);return i(n)?a.plural=n:N(n)?a.default=n:O(n)&&!m(n)?a.named=n:k(n)&&(a.list=n),i(r)?a.plural=r:N(r)?a.default=r:O(r)&&_(a,r),[o,a]}const kt="11.2.2",Lt={UNEXPECTED_RETURN_TYPE:24,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:30,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32,NOT_COMPATIBLE_LEGACY_VUE_I18N:33,NOT_AVAILABLE_COMPOSITION_IN_LEGACY:34},Nt=s("__translateVNode"),yt=s("__datetimeParts"),Tt=s("__numberParts"),vt=s("__setPluralRules"),It=s("__injectWithOption"),Ct=s("__dispose");function Ot(e){if(!T(e))return e;if(ne(e))return e;for(const t in e)if(h(e,t))if(t.includes(".")){const n=t.split("."),r=n.length-1;let a=e,o=!1;for(let e=0;e{if("locale"in e&&"resource"in e){const{locale:t,resource:n}=e;t?(s[t]=s[t]||d(),R(n,s[t])):R(n,s)}else N(e)&&R(JSON.parse(e),s)})),null==a&&o)for(const l in s)h(s,l)&&Ot(s[l]);return s}function Pt(e){return e.type}function Rt(e,t,n){let r=T(t.messages)?t.messages:d();"__i18nGlobal"in n&&(r=At(e.locale.value,{messages:r,__i18n:n.__i18nGlobal}));const a=Object.keys(r);if(a.length&&a.forEach((t=>{e.mergeLocaleMessage(t,r[t])})),T(t.datetimeFormats)){const n=Object.keys(t.datetimeFormats);n.length&&n.forEach((n=>{e.mergeDateTimeFormat(n,t.datetimeFormats[n])}))}if(T(t.numberFormats)){const n=Object.keys(t.numberFormats);n.length&&n.forEach((n=>{e.mergeNumberFormat(n,t.numberFormats[n])}))}}function St(e){return t.createVNode(t.Text,null,e,0)}function Ft(){if("currentInstance"in r){return r["currentInstance"]}return r.getCurrentInstance()}const Dt=()=>[],wt=()=>!1;let xt=0;function Mt(e){return(t,n,r,a)=>e(n,r,Ft()||void 0,a)}function Ut(e={}){const{__root:n,__injectWithOption:r}=e,a=void 0===n,s=e.flatJson,l=o?t.ref:t.shallowRef;let c=!y(e.inheritLocale)||e.inheritLocale;const u=l(n&&c?n.locale.value:N(e.locale)?e.locale:Ue),m=l(n&&c?n.fallbackLocale.value:N(e.fallbackLocale)||k(e.fallbackLocale)||O(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:u.value),p=l(At(u.value,e)),d=l(O(e.datetimeFormats)?e.datetimeFormats:{[u.value]:{}}),g=l(O(e.numberFormats)?e.numberFormats:{[u.value]:{}});let E=n?n.missingWarn:!y(e.missingWarn)&&!f(e.missingWarn)||e.missingWarn,b=n?n.fallbackWarn:!y(e.fallbackWarn)&&!f(e.fallbackWarn)||e.fallbackWarn,v=n?n.fallbackRoot:!y(e.fallbackRoot)||e.fallbackRoot,I=!!e.fallbackFormat,C=L(e.missing)?e.missing:null,A=L(e.missing)?Mt(e.missing):null,P=L(e.postTranslation)?e.postTranslation:null,S=n?n.warnHtmlMessage:!y(e.warnHtmlMessage)||e.warnHtmlMessage,F=!!e.escapeParameter;const D=n?n.modifiers:O(e.modifiers)?e.modifiers:{};let w,x=e.pluralRules||n&&n.pluralRules;w=(()=>{a&&Ye(null);const t={version:kt,locale:u.value,fallbackLocale:m.value,messages:p.value,modifiers:D,pluralRules:x,missing:null===A?void 0:A,missingWarn:E,fallbackWarn:b,fallbackFormat:I,unresolving:!0,postTranslation:null===P?void 0:P,warnHtmlMessage:S,escapeParameter:F,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};t.datetimeFormats=d.value,t.numberFormats=g.value,t.__datetimeFormatters=O(w)?w.__datetimeFormatters:void 0,t.__numberFormatters=O(w)?w.__numberFormatters:void 0;const n=Be(t);return a&&Ye(n),n})(),Qe(w,u.value,m.value);const M=t.computed({get:()=>u.value,set:e=>{w.locale=e,u.value=e}}),U=t.computed({get:()=>m.value,set:e=>{w.fallbackLocale=e,m.value=e,Qe(w,u.value,e)}}),W=t.computed((()=>p.value)),$=t.computed((()=>d.value)),j=t.computed((()=>g.value));const H=(e,t,r,o,s,l)=>{let c;u.value,m.value,p.value,d.value,g.value;try{0,a||(w.fallbackContext=n?Ge():void 0),c=e(w)}finally{a||(w.fallbackContext=void 0)}if("translate exists"!==r&&i(c)&&c===Me||"translate exists"===r&&!c){const[e,r]=t();return n&&v?o(n):s(e)}if(l(c))return c;throw Error(Lt.UNEXPECTED_RETURN_TYPE)};function V(...e){return H((t=>Reflect.apply(gt,null,[t,...e])),(()=>ht(...e)),"translate",(t=>Reflect.apply(t.t,t,[...e])),(e=>e),(e=>N(e)))}const X={normalize:function(e){return e.map((e=>N(e)||i(e)||y(e)?St(String(e)):e))},interpolate:e=>e,type:"vnode"};function Y(e){return p.value[e]||{}}xt++,n&&o&&(t.watch(n.locale,(e=>{c&&(u.value=e,w.locale=e,Qe(w,u.value,m.value))})),t.watch(n.fallbackLocale,(e=>{c&&(m.value=e,w.fallbackLocale=e,Qe(w,u.value,m.value))})));const G={id:xt,locale:M,fallbackLocale:U,get inheritLocale(){return c},set inheritLocale(e){c=e,e&&n&&(u.value=n.locale.value,m.value=n.fallbackLocale.value,Qe(w,u.value,m.value))},get availableLocales(){return Object.keys(p.value).sort()},messages:W,get modifiers(){return D},get pluralRules(){return x||{}},get isGlobal(){return a},get missingWarn(){return E},set missingWarn(e){E=e,w.missingWarn=E},get fallbackWarn(){return b},set fallbackWarn(e){b=e,w.fallbackWarn=b},get fallbackRoot(){return v},set fallbackRoot(e){v=e},get fallbackFormat(){return I},set fallbackFormat(e){I=e,w.fallbackFormat=I},get warnHtmlMessage(){return S},set warnHtmlMessage(e){S=e,w.warnHtmlMessage=e},get escapeParameter(){return F},set escapeParameter(e){F=e,w.escapeParameter=e},t:V,getLocaleMessage:Y,setLocaleMessage:function(e,t){if(s){const n={[e]:t};for(const e in n)h(n,e)&&Ot(n[e]);t=n[e]}p.value[e]=t,w.messages=p.value},mergeLocaleMessage:function(e,t){p.value[e]=p.value[e]||{};const n={[e]:t};if(s)for(const r in n)h(n,r)&&Ot(n[r]);R(t=n[e],p.value[e]),w.messages=p.value},getPostTranslationHandler:function(){return L(P)?P:null},setPostTranslationHandler:function(e){P=e,w.postTranslation=e},getMissingHandler:function(){return C},setMissingHandler:function(e){null!==e&&(A=Mt(e)),C=e,w.missing=A},[vt]:function(e){x=e,w.pluralRules=x}};return G.datetimeFormats=$,G.numberFormats=j,G.rt=function(...e){const[t,n,r]=e;if(r&&!T(r))throw Error(Lt.INVALID_ARGUMENT);return V(t,n,_({resolvedMessage:!0},r||{}))},G.te=function(e,t){return H((()=>{if(!e)return!1;const n=Y(N(t)?t:u.value),r=w.messageResolver(n,e);return ne(r)||dt(r)||N(r)}),(()=>[e]),"translate exists",(n=>Reflect.apply(n.te,n,[e,t])),wt,(e=>y(e)))},G.tm=function(e){const t=function(e){let t=null;const n=Ie(w,m.value,u.value);for(let r=0;rReflect.apply(Ze,null,[t,...e])),(()=>tt(...e)),"datetime format",(t=>Reflect.apply(t.d,t,[...e])),(()=>We),(e=>N(e)||k(e)))},G.n=function(...e){return H((t=>Reflect.apply(rt,null,[t,...e])),(()=>ot(...e)),"number format",(t=>Reflect.apply(t.n,t,[...e])),(()=>We),(e=>N(e)||k(e)))},G.getDateTimeFormat=function(e){return d.value[e]||{}},G.setDateTimeFormat=function(e,t){d.value[e]=t,w.datetimeFormats=d.value,nt(w,e,t)},G.mergeDateTimeFormat=function(e,t){d.value[e]=_(d.value[e]||{},t),w.datetimeFormats=d.value,nt(w,e,t)},G.getNumberFormat=function(e){return g.value[e]||{}},G.setNumberFormat=function(e,t){g.value[e]=t,w.numberFormats=g.value,st(w,e,t)},G.mergeNumberFormat=function(e,t){g.value[e]=_(g.value[e]||{},t),w.numberFormats=g.value,st(w,e,t)},G[It]=r,G[Nt]=function(...e){return H((t=>{let n;const r=t;try{r.processor=X,n=Reflect.apply(gt,null,[r,...e])}finally{r.processor=null}return n}),(()=>ht(...e)),"translate",(t=>t[Nt](...e)),(e=>[St(e)]),(e=>k(e)))},G[yt]=function(...e){return H((t=>Reflect.apply(Ze,null,[t,...e])),(()=>tt(...e)),"datetime format",(t=>t[yt](...e)),Dt,(e=>N(e)||k(e)))},G[Tt]=function(...e){return H((t=>Reflect.apply(rt,null,[t,...e])),(()=>ot(...e)),"number format",(t=>t[Tt](...e)),Dt,(e=>N(e)||k(e)))},G}function Wt(e={}){const t=Ut(function(e){const t=N(e.locale)?e.locale:Ue,n=N(e.fallbackLocale)||k(e.fallbackLocale)||O(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:t,r=L(e.missing)?e.missing:void 0,a=!y(e.silentTranslationWarn)&&!f(e.silentTranslationWarn)||!e.silentTranslationWarn,o=!y(e.silentFallbackWarn)&&!f(e.silentFallbackWarn)||!e.silentFallbackWarn,s=!y(e.fallbackRoot)||e.fallbackRoot,l=!!e.formatFallbackMessages,c=O(e.modifiers)?e.modifiers:{},i=e.pluralizationRules,u=L(e.postTranslation)?e.postTranslation:void 0,m=!N(e.warnHtmlInMessage)||"off"!==e.warnHtmlInMessage,p=!!e.escapeParameterHtml,d=!y(e.sync)||e.sync;let g=e.messages;if(O(e.sharedMessages)){const t=e.sharedMessages;g=Object.keys(t).reduce(((e,n)=>{const r=e[n]||(e[n]={});return _(r,t[n]),e}),g||{})}const{__i18n:E,__root:b,__injectWithOption:h}=e,T=e.datetimeFormats,v=e.numberFormats;return{locale:t,fallbackLocale:n,messages:g,flatJson:e.flatJson,datetimeFormats:T,numberFormats:v,missing:r,missingWarn:a,fallbackWarn:o,fallbackRoot:s,fallbackFormat:l,modifiers:c,pluralRules:i,postTranslation:u,warnHtmlMessage:m,escapeParameter:p,messageResolver:e.messageResolver,inheritLocale:d,__i18n:E,__root:b,__injectWithOption:h}}(e)),{__extender:n}=e,r={id:t.id,get locale(){return t.locale.value},set locale(e){t.locale.value=e},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(e){t.fallbackLocale.value=e},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(e){t.setMissingHandler(e)},get silentTranslationWarn(){return y(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(e){t.missingWarn=y(e)?!e:e},get silentFallbackWarn(){return y(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(e){t.fallbackWarn=y(e)?!e:e},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(e){t.fallbackFormat=e},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(e){t.setPostTranslationHandler(e)},get sync(){return t.inheritLocale},set sync(e){t.inheritLocale=e},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(e){t.warnHtmlMessage="off"!==e},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(e){t.escapeParameter=e},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t:(...e)=>Reflect.apply(t.t,t,[...e]),rt:(...e)=>Reflect.apply(t.rt,t,[...e]),te:(e,n)=>t.te(e,n),tm:e=>t.tm(e),getLocaleMessage:e=>t.getLocaleMessage(e),setLocaleMessage(e,n){t.setLocaleMessage(e,n)},mergeLocaleMessage(e,n){t.mergeLocaleMessage(e,n)},d:(...e)=>Reflect.apply(t.d,t,[...e]),getDateTimeFormat:e=>t.getDateTimeFormat(e),setDateTimeFormat(e,n){t.setDateTimeFormat(e,n)},mergeDateTimeFormat(e,n){t.mergeDateTimeFormat(e,n)},n:(...e)=>Reflect.apply(t.n,t,[...e]),getNumberFormat:e=>t.getNumberFormat(e),setNumberFormat(e,n){t.setNumberFormat(e,n)},mergeNumberFormat(e,n){t.mergeNumberFormat(e,n)}};return r.__extender=n,r}function $t(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[vt](t.pluralizationRules||e.pluralizationRules);const n=At(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach((t=>e.mergeLocaleMessage(t,n[t]))),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach((n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n]))),t.numberFormats&&Object.keys(t.numberFormats).forEach((n=>e.mergeNumberFormat(n,t.numberFormats[n]))),e}const jt={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>"parent"===e||"global"===e,default:"parent"},i18n:{type:Object}};function Ht(){return t.Fragment}const Vt=t.defineComponent({name:"i18n-t",props:_({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>i(e)||!isNaN(e)}},jt),setup(e,n){const{slots:r,attrs:a}=n,o=e.i18n||qt({useScope:e.scope,__useComponent:!0});return()=>{const s=Object.keys(r).filter((e=>"_"!==e[0])),l=d();e.locale&&(l.locale=e.locale),void 0!==e.plural&&(l.plural=N(e.plural)?+e.plural:e.plural);const c=function({slots:e},n){if(1===n.length&&"default"===n[0])return(e.default?e.default():[]).reduce(((e,n)=>[...e,...n.type===t.Fragment?n.children:[n]]),[]);return n.reduce(((t,n)=>{const r=e[n];return r&&(t[n]=r()),t}),d())}(n,s),i=o[Nt](e.keypath,c,l),u=_(d(),a),f=N(e.tag)||T(e.tag)?e.tag:Ht();return t.h(f,u,i)}}}),Xt=Vt;function Yt(e,n,r,a){const{slots:o,attrs:s}=n;return()=>{const n={part:!0};let l=d();e.locale&&(n.locale=e.locale),N(e.format)?n.key=e.format:T(e.format)&&(N(e.format.key)&&(n.key=e.format.key),l=Object.keys(e.format).reduce(((t,n)=>r.includes(n)?_(d(),t,{[n]:e.format[n]}):t),d()));const c=a(e.value,n,l);let i=[n.key];k(c)?i=c.map(((e,t)=>{const n=o[e.type],r=n?n({[e.type]:e.value,index:t,parts:c}):[e.value];var a;return k(a=r)&&!N(a[0])&&(r[0].key=`${e.type}-${t}`),r})):N(c)&&(i=[c]);const u=_(d(),s),f=N(e.tag)||T(e.tag)?e.tag:Ht();return t.h(f,u,i)}}const Gt=t.defineComponent({name:"i18n-n",props:_({value:{type:Number,required:!0},format:{type:[String,Object]}},jt),setup(e,t){const n=e.i18n||qt({useScope:e.scope,__useComponent:!0});return Yt(e,t,at,((...e)=>n[Tt](...e)))}}),Kt=Gt;function Bt(e){const n=t=>{const{instance:n,value:r}=t;if(!n||!n.$)throw Error(Lt.UNEXPECTED_ERROR);const a=function(e,t){const n=e;if("composition"===e.mode)return n.__getInstance(t)||e.global;{const r=n.__getInstance(t);return null!=r?r.__composer:e.global.__composer}}(e,n.$),o=zt(r);return[Reflect.apply(a.t,a,[...Jt(o)]),a]};return{created:(r,a)=>{const[s,l]=n(a);o&&e.global===l&&(r.__i18nWatcher=t.watch(l.locale,(()=>{a.instance&&a.instance.$forceUpdate()}))),r.__composer=l,r.textContent=s},unmounted:e=>{o&&e.__i18nWatcher&&(e.__i18nWatcher(),e.__i18nWatcher=void 0,delete e.__i18nWatcher),e.__composer&&(e.__composer=void 0,delete e.__composer)},beforeUpdate:(e,{value:t})=>{if(e.__composer){const n=e.__composer,r=zt(t);e.textContent=Reflect.apply(n.t,n,[...Jt(r)])}},getSSRProps:e=>{const[t]=n(e);return{textContent:t}}}}function zt(e){if(N(e))return{path:e};if(O(e)){if(!("path"in e))throw Error(Lt.REQUIRED_VALUE,"path");return e}throw Error(Lt.INVALID_VALUE)}function Jt(e){const{path:t,locale:n,args:r,choice:a,plural:o}=e,s={},l=r||{};return N(n)&&(s.locale=n),i(a)&&(s.plural=a),i(o)&&(s.plural=o),[t,l,s]}const Qt=s("global-vue-i18n");function qt(e={}){const n=Ft();if(null==n)throw Error(Lt.MUST_BE_CALL_SETUP_TOP);if(!n.isCE&&null!=n.appContext.app&&!n.appContext.app.__VUE_I18N_SYMBOL__)throw Error(Lt.NOT_INSTALLED);const r=function(e){const n=t.inject(e.isCE?Qt:e.appContext.app.__VUE_I18N_SYMBOL__);if(!n)throw Error(e.isCE?Lt.NOT_INSTALLED_WITH_PROVIDE:Lt.UNEXPECTED_ERROR);return n}(n),a=function(e){return"composition"===e.mode?e.global:e.global.__composer}(r),o=Pt(n),s=function(e,t){return m(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}(e,o);if("global"===s)return Rt(a,e,o),a;if("parent"===s){let t=function(e,t,n=!1){let r=null;const a=t.root;let o=function(e,t=!1){if(null==e)return null;return t&&e.vnode.ctx||e.parent}(t,n);for(;null!=o;){const t=e;if("composition"===e.mode)r=t.__getInstance(o);else{const e=t.__getInstance(o);null!=e&&(r=e.__composer,n&&r&&!r[It]&&(r=null))}if(null!=r)break;if(a===o)break;o=o.parent}return r}(r,n,e.__useComponent);return null==t&&(t=a),t}const l=r;let c=l.__getInstance(n);if(null==c){const r=_({},e);"__i18n"in o&&(r.__i18n=o.__i18n),a&&(r.__root=a),c=Ut(r),l.__composerExtend&&(c[Ct]=l.__composerExtend(c)),function(e,n,r){t.onMounted((()=>{}),n),t.onUnmounted((()=>{const t=r;e.__deleteInstance(n);const a=t[Ct];a&&(a(),delete t[Ct])}),n)}(l,n,c),l.__setInstance(n,c)}return c}const Zt=["locale","fallbackLocale","availableLocales"],en=["t","rt","d","n","tm","te"];const tn=t.defineComponent({name:"i18n-d",props:_({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},jt),setup(e,t){const n=e.i18n||qt({useScope:e.scope,__useComponent:!0});return Yt(e,t,et,((...e)=>n[yt](...e)))}}),nn=tn;return je=function(e,t){if(N(e)){!y(t.warnHtmlMessage)||t.warnHtmlMessage;const n=(t.onCacheKey||he)(e),r=ke[n];if(r)return r;const{ast:a,detectError:o}=function(e,t={}){let n=!1;const r=t.onError||D;return t.onError=e=>{n=!0,r(e)},{...te(e,t),detectError:n}}(e,{...t,location:!1,jit:!0}),s=ge(a);return o?s:ke[n]=s}{const t=e.cacheKey;if(t){const n=ke[t];return n||(ke[t]=ge(e))}return ge(e)}},He=function(e,t){if(!T(e))return null;let n=De.get(t);if(n||(n=function(e){const t=[];let n,r,a,o,s,l,c,i=-1,u=0,f=0;const m=[];function _(){const t=e[i+1];if(5===u&&"'"===t||6===u&&'"'===t)return i++,a="\\"+t,m[0](),!0}for(m[0]=()=>{void 0===r?r=a:r+=a},m[1]=()=>{void 0!==r&&(t.push(r),r=void 0)},m[2]=()=>{m[0](),f++},m[3]=()=>{if(f>0)f--,u=4,m[0]();else{if(f=0,void 0===r)return!1;if(r=Fe(r),!1===r)return!1;m[1]()}};null!==u;)if(i++,n=e[i],"\\"!==n||!_()){if(o=Se(n),c=Pe[u],s=c[o]||c.l||8,8===s)return;if(u=s[0],void 0!==s[1]&&(l=m[s[1]],l&&(a=n,!1===l())))return;if(7===u)return t}}(t),n&&De.set(t,n)),!n)return null;const r=n.length;let a=e,o=0;for(;oWt(e))):r.run((()=>Ut(e)));if(null==a)throw Error(Lt.UNEXPECTED_ERROR);return[r,a]}(e,n),c=s(""),i={get mode(){return n?"legacy":"composition"},async install(e,...a){if(e.__VUE_I18N_SYMBOL__=c,e.provide(e.__VUE_I18N_SYMBOL__,i),O(a[0])){const e=a[0];i.__composerExtend=e.__composerExtend,i.__vueI18nExtend=e.__vueI18nExtend}let o=null;!n&&r&&(o=function(e,n){const r=Object.create(null);Zt.forEach((e=>{const a=Object.getOwnPropertyDescriptor(n,e);if(!a)throw Error(Lt.UNEXPECTED_ERROR);const o=t.isRef(a.value)?{get:()=>a.value.value,set(e){a.value.value=e}}:{get:()=>a.get&&a.get()};Object.defineProperty(r,e,o)})),e.config.globalProperties.$i18n=r,en.forEach((t=>{const r=Object.getOwnPropertyDescriptor(n,t);if(!r||!r.value)throw Error(Lt.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${t}`,r)}));const a=()=>{delete e.config.globalProperties.$i18n,en.forEach((t=>{delete e.config.globalProperties[`$${t}`]}))};return a}(e,i.global)),function(e,t,...n){const r=O(n[0])?n[0]:{};(!y(r.globalInstall)||r.globalInstall)&&([Vt.name,"I18nT"].forEach((t=>e.component(t,Vt))),[Gt.name,"I18nN"].forEach((t=>e.component(t,Gt))),[tn.name,"I18nD"].forEach((t=>e.component(t,tn)))),e.directive("t",Bt(t))}(e,i,...a),n&&e.mixin(function(e,t,n){return{beforeCreate(){const r=Ft();if(!r)throw Error(Lt.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const r=a.i18n;if(a.__i18n&&(r.__i18n=a.__i18n),r.__root=t,this===this.$root)this.$i18n=$t(e,r);else{r.__injectWithOption=!0,r.__extender=n.__vueI18nExtend,this.$i18n=Wt(r);const e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=$t(e,a);else{this.$i18n=Wt({__i18n:a.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&Rt(t,a,a),this.$t=(...e)=>this.$i18n.t(...e),this.$rt=(...e)=>this.$i18n.rt(...e),this.$te=(e,t)=>this.$i18n.te(e,t),this.$d=(...e)=>this.$i18n.d(...e),this.$n=(...e)=>this.$i18n.n(...e),this.$tm=e=>this.$i18n.tm(e),n.__setInstance(r,this.$i18n)},mounted(){},unmounted(){const e=Ft();if(!e)throw Error(Lt.UNEXPECTED_ERROR);const t=this.$i18n;delete this.$t,delete this.$rt,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,t.__disposer&&(t.__disposer(),delete t.__disposer,delete t.__extender),n.__deleteInstance(e),delete this.$i18n}}}(l,l.__composer,i));const s=e.unmount;e.unmount=()=>{o&&o(),i.dispose(),s()}},get global(){return l},dispose(){o.stop()},__instances:a,__getInstance:function(e){return a.get(e)||null},__setInstance:function(e,t){a.set(e,t)},__deleteInstance:function(e){a.delete(e)}};return i},e.useI18n=qt,e.vTDirective=Bt,e}({},Vue); diff --git a/lnbits/static/vendor/vue-qrcode-reader.umd.js b/lnbits/static/vendor/vue-qrcode-reader.umd.js index 17e8ed56..64126ad6 100644 --- a/lnbits/static/vendor/vue-qrcode-reader.umd.js +++ b/lnbits/static/vendor/vue-qrcode-reader.umd.js @@ -1,3 +1,3 @@ -(function(ee,O){typeof exports=="object"&&typeof module<"u"?O(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],O):(ee=typeof globalThis<"u"?globalThis:ee||self,O(ee.VueQrcodeReader={},ee.Vue))})(this,function(ee,O){"use strict";var Wt=(r,o,i)=>{if(!o.has(r))throw TypeError("Cannot "+i)},jt=(r,o,i)=>(Wt(r,o,"read from private field"),i?i.call(r):o.get(r)),tn=(r,o,i)=>{if(o.has(r))throw TypeError("Cannot add the same private member more than once");o instanceof WeakSet?o.add(r):o.set(r,i)},rn=(r,o,i,c)=>(Wt(r,o,"write to private field"),o.set(r,i),i);const Lt=[["aztec","Aztec"],["code_128","Code128"],["code_39","Code39"],["code_93","Code93"],["codabar","Codabar"],["databar","DataBar"],["databar_expanded","DataBarExpanded"],["data_matrix","DataMatrix"],["dx_film_edge","DXFilmEdge"],["ean_13","EAN-13"],["ean_8","EAN-8"],["itf","ITF"],["maxi_code","MaxiCode"],["micro_qr_code","MicroQRCode"],["pdf417","PDF417"],["qr_code","QRCode"],["rm_qr_code","rMQRCode"],["upc_a","UPC-A"],["upc_e","UPC-E"],["linear_codes","Linear-Codes"],["matrix_codes","Matrix-Codes"]],nn=[...Lt,["unknown"]].map(r=>r[0]),Le=new Map(Lt);function an(r){for(const[o,i]of Le)if(r===i)return o;return"unknown"}function on(r){if(Ht(r))return{width:r.naturalWidth,height:r.naturalHeight};if(Bt(r))return{width:r.width.baseVal.value,height:r.height.baseVal.value};if(Vt(r))return{width:r.videoWidth,height:r.videoHeight};if(Nt(r))return{width:r.width,height:r.height};if(Gt(r))return{width:r.displayWidth,height:r.displayHeight};if(qt(r))return{width:r.width,height:r.height};if(zt(r))return{width:r.width,height:r.height};throw new TypeError("The provided value is not of type '(Blob or HTMLCanvasElement or HTMLImageElement or HTMLVideoElement or ImageBitmap or ImageData or OffscreenCanvas or SVGImageElement or VideoFrame)'.")}function Ht(r){try{return r instanceof HTMLImageElement}catch(o){return!1}}function Bt(r){try{return r instanceof SVGImageElement}catch(o){return!1}}function Vt(r){try{return r instanceof HTMLVideoElement}catch(o){return!1}}function qt(r){try{return r instanceof HTMLCanvasElement}catch(o){return!1}}function Nt(r){try{return r instanceof ImageBitmap}catch(o){return!1}}function zt(r){try{return r instanceof OffscreenCanvas}catch(o){return!1}}function Gt(r){try{return r instanceof VideoFrame}catch(o){return!1}}function Yt(r){try{return r instanceof Blob}catch(o){return!1}}function sn(r){try{return r instanceof ImageData}catch(o){return!1}}function cn(r,o){try{const i=new OffscreenCanvas(r,o);if(i.getContext("2d")instanceof OffscreenCanvasRenderingContext2D)return i;throw void 0}catch(i){const c=document.createElement("canvas");return c.width=r,c.height=o,c}}async function Jt(r){if(Ht(r)&&!await fn(r))throw new DOMException("Failed to load or decode HTMLImageElement.","InvalidStateError");if(Bt(r)&&!await hn(r))throw new DOMException("Failed to load or decode SVGImageElement.","InvalidStateError");if(Gt(r)&&pn(r))throw new DOMException("VideoFrame is closed.","InvalidStateError");if(Vt(r)&&(r.readyState===0||r.readyState===1))throw new DOMException("Invalid element or state.","InvalidStateError");if(Nt(r)&&vn(r))throw new DOMException("The image source is detached.","InvalidStateError");const{width:o,height:i}=on(r);if(o===0||i===0)return null;const c=cn(o,i).getContext("2d");c.drawImage(r,0,0);try{return c.getImageData(0,0,o,i)}catch(l){throw new DOMException("Source would taint origin.","SecurityError")}}async function un(r){let o;try{if(globalThis.createImageBitmap)o=await createImageBitmap(r);else if(globalThis.Image){o=new Image;let i="";try{i=URL.createObjectURL(r),o.src=i,await o.decode()}finally{URL.revokeObjectURL(i)}}else return r}catch(i){throw new DOMException("Failed to load or decode Blob.","InvalidStateError")}return await Jt(o)}function ln(r){const{width:o,height:i}=r;if(o===0||i===0)return null;const c=r.getContext("2d");try{return c.getImageData(0,0,o,i)}catch(l){throw new DOMException("Source would taint origin.","SecurityError")}}async function dn(r){if(Yt(r))return await un(r);if(sn(r)){if(mn(r))throw new DOMException("The image data has been detached.","InvalidStateError");return r}return qt(r)||zt(r)?ln(r):await Jt(r)}async function fn(r){try{return await r.decode(),!0}catch(o){return!1}}async function hn(r){var o;try{return await((o=r.decode)==null?void 0:o.call(r)),!0}catch(i){return!1}}function pn(r){return r.format===null}function mn(r){return r.data.buffer.byteLength===0}function vn(r){return r.width===0&&r.height===0}function Qt(r,o){return r instanceof DOMException?new DOMException(`${o}: ${r.message}`,r.name):r instanceof Error?new r.constructor(`${o}: ${r.message}`):new Error(`${o}: ${r}`)}const Xt=["Aztec","Codabar","Code128","Code39","Code93","DataBar","DataBarExpanded","DataMatrix","DXFilmEdge","EAN-13","EAN-8","ITF","Linear-Codes","Matrix-Codes","MaxiCode","MicroQRCode","None","PDF417","QRCode","rMQRCode","UPC-A","UPC-E"];function yn(r){return r.join("|")}function gn(r){const o=Zt(r);let i=0,c=Xt.length-1;for(;i<=c;){const l=Math.floor((i+c)/2),h=Xt[l],v=Zt(h);if(v===o)return h;v{const i=r.match(/_(.+?)\.wasm$/);return i?`https://fastly.jsdelivr.net/npm/zxing-wasm@1.1.3/dist/${i[1]}/${r}`:o+r}};let ut=new WeakMap;function lt(r,o){var i;const c=ut.get(r);if(c!=null&&c.modulePromise&&o===void 0)return c.modulePromise;const l=(i=c==null?void 0:c.moduleOverrides)!=null?i:Pn,h=r({...l});return ut.set(r,{moduleOverrides:l,modulePromise:h}),h}function Tn(r,o){ut.set(r,{moduleOverrides:o})}async function En(r,o,i=Ce){const c={...Ce,...i},l=await lt(r),{size:h}=o,v=new Uint8Array(await o.arrayBuffer()),g=l._malloc(h);l.HEAPU8.set(v,g);const b=l.readBarcodesFromImage(g,h,Kt(l,c));l._free(g);const p=[];for(let C=0;C{var r=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return function(o={}){var i=o,c,l;i.ready=new Promise((e,t)=>{c=e,l=t});var h=Object.assign({},i),v="./this.program",g=typeof window=="object",b=typeof importScripts=="function";typeof process=="object"&&typeof process.versions=="object"&&process.versions.node;var p="";function C(e){return i.locateFile?i.locateFile(e,p):p+e}var S;(g||b)&&(b?p=self.location.href:typeof document<"u"&&document.currentScript&&(p=document.currentScript.src),r&&(p=r),p.indexOf("blob:")!==0?p=p.substr(0,p.replace(/[?#].*/,"").lastIndexOf("/")+1):p="",b&&(S=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)})),i.print||console.log.bind(console);var $=i.printErr||console.error.bind(console);Object.assign(i,h),h=null,i.arguments&&i.arguments,i.thisProgram&&(v=i.thisProgram),i.quit&&i.quit;var U;i.wasmBinary&&(U=i.wasmBinary),typeof WebAssembly!="object"&&K("no native wasm support detected");var W,j=!1,k,R,Z,I,D,A,me,ce;function Se(){var e=W.buffer;i.HEAP8=k=new Int8Array(e),i.HEAP16=Z=new Int16Array(e),i.HEAPU8=R=new Uint8Array(e),i.HEAPU16=I=new Uint16Array(e),i.HEAP32=D=new Int32Array(e),i.HEAPU32=A=new Uint32Array(e),i.HEAPF32=me=new Float32Array(e),i.HEAPF64=ce=new Float64Array(e)}var Pe=[],De=[],Ae=[];function ze(){if(i.preRun)for(typeof i.preRun=="function"&&(i.preRun=[i.preRun]);i.preRun.length;)pt(i.preRun.shift());wt(Pe)}function ft(){wt(De)}function ht(){if(i.postRun)for(typeof i.postRun=="function"&&(i.postRun=[i.postRun]);i.postRun.length;)Re(i.postRun.shift());wt(Ae)}function pt(e){Pe.unshift(e)}function mt(e){De.unshift(e)}function Re(e){Ae.unshift(e)}var ae=0,ge=null;function vt(e){var t;ae++,(t=i.monitorRunDependencies)===null||t===void 0||t.call(i,ae)}function ve(e){var t;if(ae--,(t=i.monitorRunDependencies)===null||t===void 0||t.call(i,ae),ae==0&&ge){var n=ge;ge=null,n()}}function K(e){var t;(t=i.onAbort)===null||t===void 0||t.call(i,e),e="Aborted("+e+")",$(e),j=!0,e+=". Build with -sASSERTIONS for more info.";var n=new WebAssembly.RuntimeError(e);throw l(n),n}var yt="data:application/octet-stream;base64,",Ge=e=>e.startsWith(yt),ye;ye="zxing_reader.wasm",Ge(ye)||(ye=C(ye));function Ye(e){if(e==ye&&U)return new Uint8Array(U);if(S)return S(e);throw"both async and sync fetching of the wasm failed"}function gt(e){return!U&&(g||b)&&typeof fetch=="function"?fetch(e,{credentials:"same-origin"}).then(t=>{if(!t.ok)throw"failed to load wasm binary file at '"+e+"'";return t.arrayBuffer()}).catch(()=>Ye(e)):Promise.resolve().then(()=>Ye(e))}function Je(e,t,n){return gt(e).then(a=>WebAssembly.instantiate(a,t)).then(a=>a).then(n,a=>{$(`failed to asynchronously prepare wasm: ${a}`),K(a)})}function wa(e,t,n,a){return!e&&typeof WebAssembly.instantiateStreaming=="function"&&!Ge(t)&&typeof fetch=="function"?fetch(t,{credentials:"same-origin"}).then(s=>{var u=WebAssembly.instantiateStreaming(s,n);return u.then(a,function(d){return $(`wasm streaming compile failed: ${d}`),$("falling back to ArrayBuffer instantiation"),Je(t,n,a)})}):Je(t,n,a)}function ba(){var e={a:ci};function t(a,s){return G=a.exports,W=G.ia,Se(),kr=G.ma,mt(G.ja),ve(),G}vt();function n(a){t(a.instance)}if(i.instantiateWasm)try{return i.instantiateWasm(e,t)}catch(a){$(`Module.instantiateWasm callback failed with error: ${a}`),l(a)}return wa(U,ye,e,n).catch(l),{}}var wt=e=>{for(;e.length>0;)e.shift()(i)};i.noExitRuntime;var Qe=[],Xe=0,Ca=e=>{var t=new bt(e);return t.get_caught()||(t.set_caught(!0),Xe--),t.set_rethrown(!1),Qe.push(t),Yr(t.excPtr),t.get_exception_ptr()},ue=0,$a=()=>{L(0,0);var e=Qe.pop();Gr(e.excPtr),ue=0};function bt(e){this.excPtr=e,this.ptr=e-24,this.set_type=function(t){A[this.ptr+4>>2]=t},this.get_type=function(){return A[this.ptr+4>>2]},this.set_destructor=function(t){A[this.ptr+8>>2]=t},this.get_destructor=function(){return A[this.ptr+8>>2]},this.set_caught=function(t){t=t?1:0,k[this.ptr+12>>0]=t},this.get_caught=function(){return k[this.ptr+12>>0]!=0},this.set_rethrown=function(t){t=t?1:0,k[this.ptr+13>>0]=t},this.get_rethrown=function(){return k[this.ptr+13>>0]!=0},this.init=function(t,n){this.set_adjusted_ptr(0),this.set_type(t),this.set_destructor(n)},this.set_adjusted_ptr=function(t){A[this.ptr+16>>2]=t},this.get_adjusted_ptr=function(){return A[this.ptr+16>>2]},this.get_exception_ptr=function(){var t=Qr(this.get_type());if(t)return A[this.excPtr>>2];var n=this.get_adjusted_ptr();return n!==0?n:this.excPtr}}var _a=e=>{throw ue||(ue=e),ue},Ct=e=>{var t=ue;if(!t)return je(0),0;var n=new bt(t);n.set_adjusted_ptr(t);var a=n.get_type();if(!a)return je(0),t;for(var s in e){var u=e[s];if(u===0||u===a)break;var d=n.ptr+16;if(Jr(u,a,d))return je(u),t}return je(a),t},Sa=()=>Ct([]),Pa=e=>Ct([e]),Ta=(e,t)=>Ct([e,t]),Ea=()=>{var e=Qe.pop();e||K("no exception to throw");var t=e.excPtr;throw e.get_rethrown()||(Qe.push(e),e.set_rethrown(!0),e.set_caught(!1),Xe++),ue=t,ue},Oa=(e,t,n)=>{var a=new bt(e);throw a.init(t,n),ue=e,Xe++,ue},Ma=()=>Xe,Ze={},$t=e=>{for(;e.length;){var t=e.pop(),n=e.pop();n(t)}};function _t(e){return this.fromWireType(D[e>>2])}var Te={},we={},Ke={},Pr,et=e=>{throw new Pr(e)},be=(e,t,n)=>{e.forEach(function(f){Ke[f]=t});function a(f){var m=n(f);m.length!==e.length&&et("Mismatched type converter count");for(var w=0;w{we.hasOwnProperty(f)?s[m]=we[f]:(u.push(f),Te.hasOwnProperty(f)||(Te[f]=[]),Te[f].push(()=>{s[m]=we[f],++d,d===u.length&&a(s)}))}),u.length===0&&a(s)},Da=e=>{var t=Ze[e];delete Ze[e];var n=t.rawConstructor,a=t.rawDestructor,s=t.fields,u=s.map(d=>d.getterReturnType).concat(s.map(d=>d.setterArgumentType));be([e],u,d=>{var f={};return s.forEach((m,w)=>{var _=m.fieldName,T=d[w],E=m.getter,M=m.getterContext,H=d[w+s.length],N=m.setter,F=m.setterContext;f[_]={read:Q=>T.fromWireType(E(M,Q)),write:(Q,y)=>{var P=[];N(F,Q,H.toWireType(P,y)),$t(P)}}}),[{name:t.name,fromWireType:m=>{var w={};for(var _ in f)w[_]=f[_].read(m);return a(m),w},toWireType:(m,w)=>{for(var _ in f)if(!(_ in w))throw new TypeError(`Missing field: "${_}"`);var T=n();for(_ in f)f[_].write(T,w[_]);return m!==null&&m.push(a,T),T},argPackAdvance:ie,readValueFromPointer:_t,destructorFunction:a}]})},Aa=(e,t,n,a,s)=>{},Ra=()=>{for(var e=new Array(256),t=0;t<256;++t)e[t]=String.fromCharCode(t);Tr=e},Tr,J=e=>{for(var t="",n=e;R[n];)t+=Tr[R[n++]];return t},Ee,x=e=>{throw new Ee(e)};function xa(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var a=t.name;if(e||x(`type "${a}" must have a positive integer typeid pointer`),we.hasOwnProperty(e)){if(n.ignoreDuplicateRegistrations)return;x(`Cannot register type '${a}' twice`)}if(we[e]=t,delete Ke[e],Te.hasOwnProperty(e)){var s=Te[e];delete Te[e],s.forEach(u=>u())}}function oe(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!("argPackAdvance"in t))throw new TypeError("registerType registeredInstance requires argPackAdvance");return xa(e,t,n)}var ie=8,ka=(e,t,n,a)=>{t=J(t),oe(e,{name:t,fromWireType:function(s){return!!s},toWireType:function(s,u){return u?n:a},argPackAdvance:ie,readValueFromPointer:function(s){return this.fromWireType(R[s])},destructorFunction:null})},Ia=e=>({count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}),St=e=>{function t(n){return n.$$.ptrType.registeredClass.name}x(t(e)+" instance already deleted")},Pt=!1,Er=e=>{},Fa=e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)},Or=e=>{e.count.value-=1;var t=e.count.value===0;t&&Fa(e)},Mr=(e,t,n)=>{if(t===n)return e;if(n.baseClass===void 0)return null;var a=Mr(e,t,n.baseClass);return a===null?null:n.downcast(a)},Dr={},Ua=()=>Object.keys(Ie).length,Wa=()=>{var e=[];for(var t in Ie)Ie.hasOwnProperty(t)&&e.push(Ie[t]);return e},xe=[],Tt=()=>{for(;xe.length;){var e=xe.pop();e.$$.deleteScheduled=!1,e.delete()}},ke,ja=e=>{ke=e,xe.length&&ke&&ke(Tt)},La=()=>{i.getInheritedInstanceCount=Ua,i.getLiveInheritedInstances=Wa,i.flushPendingDeletes=Tt,i.setDelayFunction=ja},Ie={},Ha=(e,t)=>{for(t===void 0&&x("ptr should not be undefined");e.baseClass;)t=e.upcast(t),e=e.baseClass;return t},Ba=(e,t)=>(t=Ha(e,t),Ie[t]),tt=(e,t)=>{(!t.ptrType||!t.ptr)&&et("makeClassHandle requires ptr and ptrType");var n=!!t.smartPtrType,a=!!t.smartPtr;return n!==a&&et("Both smartPtrType and smartPtr must be specified"),t.count={value:1},Fe(Object.create(e,{$$:{value:t,writable:!0}}))};function Va(e){var t=this.getPointee(e);if(!t)return this.destructor(e),null;var n=Ba(this.registeredClass,t);if(n!==void 0){if(n.$$.count.value===0)return n.$$.ptr=t,n.$$.smartPtr=e,n.clone();var a=n.clone();return this.destructor(e),a}function s(){return this.isSmartPointer?tt(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:e}):tt(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var u=this.registeredClass.getActualType(t),d=Dr[u];if(!d)return s.call(this);var f;this.isConst?f=d.constPointerType:f=d.pointerType;var m=Mr(t,this.registeredClass,f.registeredClass);return m===null?s.call(this):this.isSmartPointer?tt(f.registeredClass.instancePrototype,{ptrType:f,ptr:m,smartPtrType:this,smartPtr:e}):tt(f.registeredClass.instancePrototype,{ptrType:f,ptr:m})}var Fe=e=>typeof FinalizationRegistry>"u"?(Fe=t=>t,e):(Pt=new FinalizationRegistry(t=>{Or(t.$$)}),Fe=t=>{var n=t.$$,a=!!n.smartPtr;if(a){var s={$$:n};Pt.register(t,s,t)}return t},Er=t=>Pt.unregister(t),Fe(e)),qa=()=>{Object.assign(rt.prototype,{isAliasOf(e){if(!(this instanceof rt)||!(e instanceof rt))return!1;var t=this.$$.ptrType.registeredClass,n=this.$$.ptr;e.$$=e.$$;for(var a=e.$$.ptrType.registeredClass,s=e.$$.ptr;t.baseClass;)n=t.upcast(n),t=t.baseClass;for(;a.baseClass;)s=a.upcast(s),a=a.baseClass;return t===a&&n===s},clone(){if(this.$$.ptr||St(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=Fe(Object.create(Object.getPrototypeOf(this),{$$:{value:Ia(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e},delete(){this.$$.ptr||St(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&x("Object already scheduled for deletion"),Er(this),Or(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||St(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&x("Object already scheduled for deletion"),xe.push(this),xe.length===1&&ke&&ke(Tt),this.$$.deleteScheduled=!0,this}})};function rt(){}var Ue=(e,t)=>Object.defineProperty(t,"name",{value:e}),Ar=(e,t,n)=>{if(e[t].overloadTable===void 0){var a=e[t];e[t]=function(){return e[t].overloadTable.hasOwnProperty(arguments.length)||x(`Function '${n}' called with an invalid number of arguments (${arguments.length}) - expects one of (${e[t].overloadTable})!`),e[t].overloadTable[arguments.length].apply(this,arguments)},e[t].overloadTable=[],e[t].overloadTable[a.argCount]=a}},Et=(e,t,n)=>{i.hasOwnProperty(e)?((n===void 0||i[e].overloadTable!==void 0&&i[e].overloadTable[n]!==void 0)&&x(`Cannot register public name '${e}' twice`),Ar(i,e,e),i.hasOwnProperty(n)&&x(`Cannot register multiple overloads of a function with the same number of arguments (${n})!`),i[e].overloadTable[n]=t):(i[e]=t,n!==void 0&&(i[e].numArguments=n))},Na=48,za=57,Ga=e=>{if(e===void 0)return"_unknown";e=e.replace(/[^a-zA-Z0-9_]/g,"$");var t=e.charCodeAt(0);return t>=Na&&t<=za?`_${e}`:e};function Ya(e,t,n,a,s,u,d,f){this.name=e,this.constructor=t,this.instancePrototype=n,this.rawDestructor=a,this.baseClass=s,this.getActualType=u,this.upcast=d,this.downcast=f,this.pureVirtualFunctions=[]}var Ot=(e,t,n)=>{for(;t!==n;)t.upcast||x(`Expected null or instance of ${n.name}, got an instance of ${t.name}`),e=t.upcast(e),t=t.baseClass;return e};function Ja(e,t){if(t===null)return this.isReference&&x(`null is not a valid ${this.name}`),0;t.$$||x(`Cannot pass "${xt(t)}" as a ${this.name}`),t.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`);var n=t.$$.ptrType.registeredClass,a=Ot(t.$$.ptr,n,this.registeredClass);return a}function Qa(e,t){var n;if(t===null)return this.isReference&&x(`null is not a valid ${this.name}`),this.isSmartPointer?(n=this.rawConstructor(),e!==null&&e.push(this.rawDestructor,n),n):0;(!t||!t.$$)&&x(`Cannot pass "${xt(t)}" as a ${this.name}`),t.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&t.$$.ptrType.isConst&&x(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);var a=t.$$.ptrType.registeredClass;if(n=Ot(t.$$.ptr,a,this.registeredClass),this.isSmartPointer)switch(t.$$.smartPtr===void 0&&x("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?n=t.$$.smartPtr:x(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:n=t.$$.smartPtr;break;case 2:if(t.$$.smartPtrType===this)n=t.$$.smartPtr;else{var s=t.clone();n=this.rawShare(n,le.toHandle(()=>s.delete())),e!==null&&e.push(this.rawDestructor,n)}break;default:x("Unsupporting sharing policy")}return n}function Xa(e,t){if(t===null)return this.isReference&&x(`null is not a valid ${this.name}`),0;t.$$||x(`Cannot pass "${xt(t)}" as a ${this.name}`),t.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`),t.$$.ptrType.isConst&&x(`Cannot convert argument of type ${t.$$.ptrType.name} to parameter type ${this.name}`);var n=t.$$.ptrType.registeredClass,a=Ot(t.$$.ptr,n,this.registeredClass);return a}function Rr(e){return this.fromWireType(A[e>>2])}var Za=()=>{Object.assign(nt.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){var t;(t=this.rawDestructor)===null||t===void 0||t.call(this,e)},argPackAdvance:ie,readValueFromPointer:Rr,deleteObject(e){e!==null&&e.delete()},fromWireType:Va})};function nt(e,t,n,a,s,u,d,f,m,w,_){this.name=e,this.registeredClass=t,this.isReference=n,this.isConst=a,this.isSmartPointer=s,this.pointeeType=u,this.sharingPolicy=d,this.rawGetPointee=f,this.rawConstructor=m,this.rawShare=w,this.rawDestructor=_,!s&&t.baseClass===void 0?a?(this.toWireType=Ja,this.destructorFunction=null):(this.toWireType=Xa,this.destructorFunction=null):this.toWireType=Qa}var xr=(e,t,n)=>{i.hasOwnProperty(e)||et("Replacing nonexistant public symbol"),i[e].overloadTable!==void 0&&n!==void 0?i[e].overloadTable[n]=t:(i[e]=t,i[e].argCount=n)},Ka=(e,t,n)=>{var a=i["dynCall_"+e];return n&&n.length?a.apply(null,[t].concat(n)):a.call(null,t)},at=[],kr,B=e=>{var t=at[e];return t||(e>=at.length&&(at.length=e+1),at[e]=t=kr.get(e)),t},eo=(e,t,n)=>{if(e.includes("j"))return Ka(e,t,n);var a=B(t).apply(null,n);return a},to=(e,t)=>{var n=[];return function(){return n.length=0,Object.assign(n,arguments),eo(e,t,n)}},re=(e,t)=>{e=J(e);function n(){return e.includes("j")?to(e,t):B(t)}var a=n();return typeof a!="function"&&x(`unknown function pointer with signature ${e}: ${t}`),a},ro=(e,t)=>{var n=Ue(t,function(a){this.name=t,this.message=a;var s=new Error(a).stack;s!==void 0&&(this.stack=this.toString()+` -`+s.replace(/^Error(:[^\n]*)?\n/,""))});return n.prototype=Object.create(e.prototype),n.prototype.constructor=n,n.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},n},Ir,Fr=e=>{var t=zr(e),n=J(t);return de(t),n},ot=(e,t)=>{var n=[],a={};function s(u){if(!a[u]&&!we[u]){if(Ke[u]){Ke[u].forEach(s);return}n.push(u),a[u]=!0}}throw t.forEach(s),new Ir(`${e}: `+n.map(Fr).join([", "]))},no=(e,t,n,a,s,u,d,f,m,w,_,T,E)=>{_=J(_),u=re(s,u),f&&(f=re(d,f)),w&&(w=re(m,w)),E=re(T,E);var M=Ga(_);Et(M,function(){ot(`Cannot construct ${_} due to unbound types`,[a])}),be([e,t,n],a?[a]:[],function(H){H=H[0];var N,F;a?(N=H.registeredClass,F=N.instancePrototype):F=rt.prototype;var Q=Ue(_,function(){if(Object.getPrototypeOf(this)!==y)throw new Ee("Use 'new' to construct "+_);if(P.constructor_body===void 0)throw new Ee(_+" has no accessible constructor");var en=P.constructor_body[arguments.length];if(en===void 0)throw new Ee(`Tried to invoke ctor of ${_} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(P.constructor_body).toString()}) parameters instead!`);return en.apply(this,arguments)}),y=Object.create(F,{constructor:{value:Q}});Q.prototype=y;var P=new Ya(_,Q,y,E,N,u,f,w);if(P.baseClass){var z,Y;(Y=(z=P.baseClass).__derivedClasses)!==null&&Y!==void 0||(z.__derivedClasses=[]),P.baseClass.__derivedClasses.push(P)}var Oe=new nt(_,P,!0,!1,!1),ct=new nt(_+"*",P,!1,!1,!1),Kr=new nt(_+" const*",P,!1,!0,!1);return Dr[e]={pointerType:ct,constPointerType:Kr},xr(M,Q),[Oe,ct,Kr]})},Mt=(e,t)=>{for(var n=[],a=0;a>2]);return n};function ao(e){for(var t=1;t{var d=Mt(t,n);s=re(a,s),be([],[e],function(f){f=f[0];var m=`constructor ${f.name}`;if(f.registeredClass.constructor_body===void 0&&(f.registeredClass.constructor_body=[]),f.registeredClass.constructor_body[t-1]!==void 0)throw new Ee(`Cannot register multiple constructors with identical number of parameters (${t-1}) for class '${f.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return f.registeredClass.constructor_body[t-1]=()=>{ot(`Cannot construct ${f.name} due to unbound types`,d)},be([],d,w=>(w.splice(1,0,null),f.registeredClass.constructor_body[t-1]=Dt(m,w,null,s,u),[])),[]})},Ur=e=>{e=e.trim();const t=e.indexOf("(");return t!==-1?e.substr(0,t):e},io=(e,t,n,a,s,u,d,f,m)=>{var w=Mt(n,a);t=J(t),t=Ur(t),u=re(s,u),be([],[e],function(_){_=_[0];var T=`${_.name}.${t}`;t.startsWith("@@")&&(t=Symbol[t.substring(2)]),f&&_.registeredClass.pureVirtualFunctions.push(t);function E(){ot(`Cannot call ${T} due to unbound types`,w)}var M=_.registeredClass.instancePrototype,H=M[t];return H===void 0||H.overloadTable===void 0&&H.className!==_.name&&H.argCount===n-2?(E.argCount=n-2,E.className=_.name,M[t]=E):(Ar(M,t,T),M[t].overloadTable[n-2]=E),be([],w,function(N){var F=Dt(T,N,_,u,d);return M[t].overloadTable===void 0?(F.argCount=n-2,M[t]=F):M[t].overloadTable[n-2]=F,[]}),[]})};function so(){Object.assign(Wr.prototype,{get(e){return this.allocated[e]},has(e){return this.allocated[e]!==void 0},allocate(e){var t=this.freelist.pop()||this.allocated.length;return this.allocated[t]=e,t},free(e){this.allocated[e]=void 0,this.freelist.push(e)}})}function Wr(){this.allocated=[void 0],this.freelist=[]}var te=new Wr,At=e=>{e>=te.reserved&&--te.get(e).refcount===0&&te.free(e)},co=()=>{for(var e=0,t=te.reserved;t{te.allocated.push({value:void 0},{value:null},{value:!0},{value:!1}),te.reserved=te.allocated.length,i.count_emval_handles=co},le={toValue:e=>(e||x("Cannot use deleted val. handle = "+e),te.get(e).value),toHandle:e=>{switch(e){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:return te.allocate({refcount:1,value:e})}}},lo=(e,t)=>{t=J(t),oe(e,{name:t,fromWireType:n=>{var a=le.toValue(n);return At(n),a},toWireType:(n,a)=>le.toHandle(a),argPackAdvance:ie,readValueFromPointer:_t,destructorFunction:null})},fo=(e,t,n)=>{switch(t){case 1:return n?function(a){return this.fromWireType(k[a>>0])}:function(a){return this.fromWireType(R[a>>0])};case 2:return n?function(a){return this.fromWireType(Z[a>>1])}:function(a){return this.fromWireType(I[a>>1])};case 4:return n?function(a){return this.fromWireType(D[a>>2])}:function(a){return this.fromWireType(A[a>>2])};default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},ho=(e,t,n,a)=>{t=J(t);function s(){}s.values={},oe(e,{name:t,constructor:s,fromWireType:function(u){return this.constructor.values[u]},toWireType:(u,d)=>d.value,argPackAdvance:ie,readValueFromPointer:fo(t,n,a),destructorFunction:null}),Et(t,s)},Rt=(e,t)=>{var n=we[e];return n===void 0&&x(t+" has unknown type "+Fr(e)),n},po=(e,t,n)=>{var a=Rt(e,"enum");t=J(t);var s=a.constructor,u=Object.create(a.constructor.prototype,{value:{value:n},constructor:{value:Ue(`${a.name}_${t}`,function(){})}});s.values[n]=u,s[t]=u},xt=e=>{if(e===null)return"null";var t=typeof e;return t==="object"||t==="array"||t==="function"?e.toString():""+e},mo=(e,t)=>{switch(t){case 4:return function(n){return this.fromWireType(me[n>>2])};case 8:return function(n){return this.fromWireType(ce[n>>3])};default:throw new TypeError(`invalid float width (${t}): ${e}`)}},vo=(e,t,n)=>{t=J(t),oe(e,{name:t,fromWireType:a=>a,toWireType:(a,s)=>s,argPackAdvance:ie,readValueFromPointer:mo(t,n),destructorFunction:null})},yo=(e,t,n,a,s,u,d)=>{var f=Mt(t,n);e=J(e),e=Ur(e),s=re(a,s),Et(e,function(){ot(`Cannot call ${e} due to unbound types`,f)},t-1),be([],f,function(m){var w=[m[0],null].concat(m.slice(1));return xr(e,Dt(e,w,null,s,u),t-1),[]})},go=(e,t,n)=>{switch(t){case 1:return n?a=>k[a>>0]:a=>R[a>>0];case 2:return n?a=>Z[a>>1]:a=>I[a>>1];case 4:return n?a=>D[a>>2]:a=>A[a>>2];default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},wo=(e,t,n,a,s)=>{t=J(t);var u=_=>_;if(a===0){var d=32-8*n;u=_=>_<>>d}var f=t.includes("unsigned"),m=(_,T)=>{},w;f?w=function(_,T){return m(T,this.name),T>>>0}:w=function(_,T){return m(T,this.name),T},oe(e,{name:t,fromWireType:u,toWireType:w,argPackAdvance:ie,readValueFromPointer:go(t,n,a!==0),destructorFunction:null})},bo=(e,t,n)=>{var a=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],s=a[t];function u(d){var f=A[d>>2],m=A[d+4>>2];return new s(k.buffer,m,f)}n=J(n),oe(e,{name:n,fromWireType:u,argPackAdvance:ie,readValueFromPointer:u},{ignoreDuplicateRegistrations:!0})},jr=(e,t,n,a)=>{if(!(a>0))return 0;for(var s=n,u=n+a-1,d=0;d=55296&&f<=57343){var m=e.charCodeAt(++d);f=65536+((f&1023)<<10)|m&1023}if(f<=127){if(n>=u)break;t[n++]=f}else if(f<=2047){if(n+1>=u)break;t[n++]=192|f>>6,t[n++]=128|f&63}else if(f<=65535){if(n+2>=u)break;t[n++]=224|f>>12,t[n++]=128|f>>6&63,t[n++]=128|f&63}else{if(n+3>=u)break;t[n++]=240|f>>18,t[n++]=128|f>>12&63,t[n++]=128|f>>6&63,t[n++]=128|f&63}}return t[n]=0,n-s},Co=(e,t,n)=>jr(e,R,t,n),Lr=e=>{for(var t=0,n=0;n=55296&&a<=57343?(t+=4,++n):t+=3}return t},Hr=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,$o=(e,t,n)=>{for(var a=t+n,s=t;e[s]&&!(s>=a);)++s;if(s-t>16&&e.buffer&&Hr)return Hr.decode(e.subarray(t,s));for(var u="";t>10,56320|w&1023)}}return u},kt=(e,t)=>e?$o(R,e,t):"",_o=(e,t)=>{t=J(t);var n=t==="std::string";oe(e,{name:t,fromWireType(a){var s=A[a>>2],u=a+4,d;if(n)for(var f=u,m=0;m<=s;++m){var w=u+m;if(m==s||R[w]==0){var _=w-f,T=kt(f,_);d===void 0?d=T:(d+="\0",d+=T),f=w+1}}else{for(var E=new Array(s),m=0;m>2]=u,n&&d)Co(s,m,u+1);else if(d)for(var w=0;w255&&(de(m),x("String has UTF-16 code units that do not fit in 8 bits")),R[m+w]=_}else for(var w=0;w{for(var n=e,a=n>>1,s=a+t/2;!(a>=s)&&I[a];)++a;if(n=a<<1,n-e>32&&Br)return Br.decode(R.subarray(e,n));for(var u="",d=0;!(d>=t/2);++d){var f=Z[e+d*2>>1];if(f==0)break;u+=String.fromCharCode(f)}return u},Po=(e,t,n)=>{var a;if((a=n)!==null&&a!==void 0||(n=2147483647),n<2)return 0;n-=2;for(var s=t,u=n>1]=f,t+=2}return Z[t>>1]=0,t-s},To=e=>e.length*2,Eo=(e,t)=>{for(var n=0,a="";!(n>=t/4);){var s=D[e+n*4>>2];if(s==0)break;if(++n,s>=65536){var u=s-65536;a+=String.fromCharCode(55296|u>>10,56320|u&1023)}else a+=String.fromCharCode(s)}return a},Oo=(e,t,n)=>{var a;if((a=n)!==null&&a!==void 0||(n=2147483647),n<4)return 0;for(var s=t,u=s+n-4,d=0;d=55296&&f<=57343){var m=e.charCodeAt(++d);f=65536+((f&1023)<<10)|m&1023}if(D[t>>2]=f,t+=4,t+4>u)break}return D[t>>2]=0,t-s},Mo=e=>{for(var t=0,n=0;n=55296&&a<=57343&&++n,t+=4}return t},Do=(e,t,n)=>{n=J(n);var a,s,u,d,f;t===2?(a=So,s=Po,d=To,u=()=>I,f=1):t===4&&(a=Eo,s=Oo,d=Mo,u=()=>A,f=2),oe(e,{name:n,fromWireType:m=>{for(var w=A[m>>2],_=u(),T,E=m+4,M=0;M<=w;++M){var H=m+4+M*t;if(M==w||_[H>>f]==0){var N=H-E,F=a(E,N);T===void 0?T=F:(T+="\0",T+=F),E=H+t}}return de(m),T},toWireType:(m,w)=>{typeof w!="string"&&x(`Cannot pass non-string to C++ string type ${n}`);var _=d(w),T=Ut(4+_+t);return A[T>>2]=_>>f,s(w,T+4,_+t),m!==null&&m.push(de,T),T},argPackAdvance:ie,readValueFromPointer:_t,destructorFunction(m){de(m)}})},Ao=(e,t,n,a,s,u)=>{Ze[e]={name:J(t),rawConstructor:re(n,a),rawDestructor:re(s,u),fields:[]}},Ro=(e,t,n,a,s,u,d,f,m,w)=>{Ze[e].fields.push({fieldName:J(t),getterReturnType:n,getter:re(a,s),getterContext:u,setterArgumentType:d,setter:re(f,m),setterContext:w})},xo=(e,t)=>{t=J(t),oe(e,{isVoid:!0,name:t,argPackAdvance:0,fromWireType:()=>{},toWireType:(n,a)=>{}})},It=[],ko=(e,t,n,a)=>(e=It[e],t=le.toValue(t),e(null,t,n,a)),Io={},Fo=e=>{var t=Io[e];return t===void 0?J(e):t},Vr=()=>{if(typeof globalThis=="object")return globalThis;function e(t){t.$$$embind_global$$$=t;var n=typeof $$$embind_global$$$=="object"&&t.$$$embind_global$$$==t;return n||delete t.$$$embind_global$$$,n}if(typeof $$$embind_global$$$=="object"||(typeof global=="object"&&e(global)?$$$embind_global$$$=global:typeof self=="object"&&e(self)&&($$$embind_global$$$=self),typeof $$$embind_global$$$=="object"))return $$$embind_global$$$;throw Error("unable to get global object.")},Uo=e=>e===0?le.toHandle(Vr()):(e=Fo(e),le.toHandle(Vr()[e])),Wo=e=>{var t=It.length;return It.push(e),t},jo=(e,t)=>{for(var n=new Array(e),a=0;a>2],"parameter "+a);return n},Lo=Reflect.construct,Ho=(e,t,n)=>{var a=[],s=e.toWireType(a,n);return a.length&&(A[t>>2]=le.toHandle(a)),s},Bo=(e,t,n)=>{var a=jo(e,t),s=a.shift();e--;var u=new Array(e),d=(m,w,_,T)=>{for(var E=0,M=0;Mm.name).join(", ")}) => ${s.name}>`;return Wo(Ue(f,d))},Vo=e=>{e>4&&(te.get(e).refcount+=1)},qo=e=>{var t=le.toValue(e);$t(t),At(e)},No=(e,t)=>{e=Rt(e,"_emval_take_value");var n=e.readValueFromPointer(t);return le.toHandle(n)},zo=()=>{K("")},Go=(e,t,n)=>R.copyWithin(e,t,t+n),Yo=()=>2147483648,Jo=e=>{var t=W.buffer,n=(e-t.byteLength+65535)/65536;try{return W.grow(n),Se(),1}catch(a){}},Qo=e=>{var t=R.length;e>>>=0;var n=Yo();if(e>n)return!1;for(var a=(m,w)=>m+(w-m%w)%w,s=1;s<=4;s*=2){var u=t*(1+.2/s);u=Math.min(u,e+100663296);var d=Math.min(n,a(Math.max(e,u),65536)),f=Jo(d);if(f)return!0}return!1},Ft={},Xo=()=>v||"./this.program",We=()=>{if(!We.strings){var e=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",t={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:e,_:Xo()};for(var n in Ft)Ft[n]===void 0?delete t[n]:t[n]=Ft[n];var a=[];for(var n in t)a.push(`${n}=${t[n]}`);We.strings=a}return We.strings},Zo=(e,t)=>{for(var n=0;n>0]=e.charCodeAt(n);k[t>>0]=0},Ko=(e,t)=>{var n=0;return We().forEach((a,s)=>{var u=t+n;A[e+s*4>>2]=u,Zo(a,u),n+=a.length+1}),0},ei=(e,t)=>{var n=We();A[e>>2]=n.length;var a=0;return n.forEach(s=>a+=s.length+1),A[t>>2]=a,0},ti=e=>e,it=e=>e%4===0&&(e%100!==0||e%400===0),ri=(e,t)=>{for(var n=0,a=0;a<=t;n+=e[a++]);return n},qr=[31,29,31,30,31,30,31,31,30,31,30,31],Nr=[31,28,31,30,31,30,31,31,30,31,30,31],ni=(e,t)=>{for(var n=new Date(e.getTime());t>0;){var a=it(n.getFullYear()),s=n.getMonth(),u=(a?qr:Nr)[s];if(t>u-n.getDate())t-=u-n.getDate()+1,n.setDate(1),s<11?n.setMonth(s+1):(n.setMonth(0),n.setFullYear(n.getFullYear()+1));else return n.setDate(n.getDate()+t),n}return n};function ai(e,t,n){var a=Lr(e)+1,s=new Array(a);return jr(e,s,0,s.length),s}var oi=(e,t)=>{k.set(e,t)},ii=(e,t,n,a)=>{var s=A[a+40>>2],u={tm_sec:D[a>>2],tm_min:D[a+4>>2],tm_hour:D[a+8>>2],tm_mday:D[a+12>>2],tm_mon:D[a+16>>2],tm_year:D[a+20>>2],tm_wday:D[a+24>>2],tm_yday:D[a+28>>2],tm_isdst:D[a+32>>2],tm_gmtoff:D[a+36>>2],tm_zone:s?kt(s):""},d=kt(n),f={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var m in f)d=d.replace(new RegExp(m,"g"),f[m]);var w=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],_=["January","February","March","April","May","June","July","August","September","October","November","December"];function T(y,P,z){for(var Y=typeof y=="number"?y.toString():y||"";Y.length0?1:0}var Y;return(Y=z(y.getFullYear()-P.getFullYear()))===0&&(Y=z(y.getMonth()-P.getMonth()))===0&&(Y=z(y.getDate()-P.getDate())),Y}function H(y){switch(y.getDay()){case 0:return new Date(y.getFullYear()-1,11,29);case 1:return y;case 2:return new Date(y.getFullYear(),0,3);case 3:return new Date(y.getFullYear(),0,2);case 4:return new Date(y.getFullYear(),0,1);case 5:return new Date(y.getFullYear()-1,11,31);case 6:return new Date(y.getFullYear()-1,11,30)}}function N(y){var P=ni(new Date(y.tm_year+1900,0,1),y.tm_yday),z=new Date(P.getFullYear(),0,4),Y=new Date(P.getFullYear()+1,0,4),Oe=H(z),ct=H(Y);return M(Oe,P)<=0?M(ct,P)<=0?P.getFullYear()+1:P.getFullYear():P.getFullYear()-1}var F={"%a":y=>w[y.tm_wday].substring(0,3),"%A":y=>w[y.tm_wday],"%b":y=>_[y.tm_mon].substring(0,3),"%B":y=>_[y.tm_mon],"%C":y=>{var P=y.tm_year+1900;return E(P/100|0,2)},"%d":y=>E(y.tm_mday,2),"%e":y=>T(y.tm_mday,2," "),"%g":y=>N(y).toString().substring(2),"%G":y=>N(y),"%H":y=>E(y.tm_hour,2),"%I":y=>{var P=y.tm_hour;return P==0?P=12:P>12&&(P-=12),E(P,2)},"%j":y=>E(y.tm_mday+ri(it(y.tm_year+1900)?qr:Nr,y.tm_mon-1),3),"%m":y=>E(y.tm_mon+1,2),"%M":y=>E(y.tm_min,2),"%n":()=>` -`,"%p":y=>y.tm_hour>=0&&y.tm_hour<12?"AM":"PM","%S":y=>E(y.tm_sec,2),"%t":()=>" ","%u":y=>y.tm_wday||7,"%U":y=>{var P=y.tm_yday+7-y.tm_wday;return E(Math.floor(P/7),2)},"%V":y=>{var P=Math.floor((y.tm_yday+7-(y.tm_wday+6)%7)/7);if((y.tm_wday+371-y.tm_yday-2)%7<=2&&P++,P){if(P==53){var z=(y.tm_wday+371-y.tm_yday)%7;z!=4&&(z!=3||!it(y.tm_year))&&(P=1)}}else{P=52;var Y=(y.tm_wday+7-y.tm_yday-1)%7;(Y==4||Y==5&&it(y.tm_year%400-1))&&P++}return E(P,2)},"%w":y=>y.tm_wday,"%W":y=>{var P=y.tm_yday+7-(y.tm_wday+6)%7;return E(Math.floor(P/7),2)},"%y":y=>(y.tm_year+1900).toString().substring(2),"%Y":y=>y.tm_year+1900,"%z":y=>{var P=y.tm_gmtoff,z=P>=0;return P=Math.abs(P)/60,P=P/60*100+P%60,(z?"+":"-")+("0000"+P).slice(-4)},"%Z":y=>y.tm_zone,"%%":()=>"%"};d=d.replace(/%%/g,"\0\0");for(var m in F)d.includes(m)&&(d=d.replace(new RegExp(m,"g"),F[m](u)));d=d.replace(/\0\0/g,"%");var Q=ai(d);return Q.length>t?0:(oi(Q,e),Q.length-1)},si=(e,t,n,a,s)=>ii(e,t,n,a);Pr=i.InternalError=class extends Error{constructor(e){super(e),this.name="InternalError"}},Ra(),Ee=i.BindingError=class extends Error{constructor(e){super(e),this.name="BindingError"}},qa(),La(),Za(),Ir=i.UnboundTypeError=ro(Error,"UnboundTypeError"),so(),uo();var ci={s:Ca,u:$a,b:Sa,g:Pa,q:Ta,J:Ea,f:Oa,V:Ma,d:_a,da:Da,Q:Aa,_:ka,ca:no,ba:oo,w:io,Y:lo,x:ho,h:po,L:vo,M:yo,t:wo,o:bo,K:_o,C:Do,A:Ao,ea:Ro,$:xo,R:ko,ha:At,fa:Uo,Z:Bo,N:Vo,O:qo,aa:No,B:zo,X:Go,W:Qo,T:Ko,U:ei,E:Si,D:hi,F:_i,n:Pi,a:ui,e:mi,m:fi,k:yi,H:Ci,v:wi,G:$i,z:Ei,P:Mi,l:vi,j:pi,c:di,p:li,I:bi,r:Ti,i:gi,y:Oi,ga:ti,S:si},G=ba(),de=i._free=e=>(de=i._free=G.ka)(e),Ut=i._malloc=e=>(Ut=i._malloc=G.la)(e),zr=e=>(zr=G.na)(e),L=(e,t)=>(L=G.oa)(e,t),je=e=>(je=G.pa)(e),V=()=>(V=G.qa)(),q=e=>(q=G.ra)(e),Gr=e=>(Gr=G.sa)(e),Yr=e=>(Yr=G.ta)(e),Jr=(e,t,n)=>(Jr=G.ua)(e,t,n),Qr=e=>(Qr=G.va)(e);i.dynCall_viijii=(e,t,n,a,s,u,d)=>(i.dynCall_viijii=G.wa)(e,t,n,a,s,u,d);var Xr=i.dynCall_jiiii=(e,t,n,a,s)=>(Xr=i.dynCall_jiiii=G.xa)(e,t,n,a,s);i.dynCall_iiiiij=(e,t,n,a,s,u,d)=>(i.dynCall_iiiiij=G.ya)(e,t,n,a,s,u,d),i.dynCall_iiiiijj=(e,t,n,a,s,u,d,f,m)=>(i.dynCall_iiiiijj=G.za)(e,t,n,a,s,u,d,f,m),i.dynCall_iiiiiijj=(e,t,n,a,s,u,d,f,m,w)=>(i.dynCall_iiiiiijj=G.Aa)(e,t,n,a,s,u,d,f,m,w);function ui(e,t){var n=V();try{return B(e)(t)}catch(a){if(q(n),a!==a+0)throw a;L(1,0)}}function li(e,t,n,a){var s=V();try{B(e)(t,n,a)}catch(u){if(q(s),u!==u+0)throw u;L(1,0)}}function di(e,t,n){var a=V();try{B(e)(t,n)}catch(s){if(q(a),s!==s+0)throw s;L(1,0)}}function fi(e,t,n,a){var s=V();try{return B(e)(t,n,a)}catch(u){if(q(s),u!==u+0)throw u;L(1,0)}}function hi(e,t,n,a,s){var u=V();try{return B(e)(t,n,a,s)}catch(d){if(q(u),d!==d+0)throw d;L(1,0)}}function pi(e,t){var n=V();try{B(e)(t)}catch(a){if(q(n),a!==a+0)throw a;L(1,0)}}function mi(e,t,n){var a=V();try{return B(e)(t,n)}catch(s){if(q(a),s!==s+0)throw s;L(1,0)}}function vi(e){var t=V();try{B(e)()}catch(n){if(q(t),n!==n+0)throw n;L(1,0)}}function yi(e,t,n,a,s){var u=V();try{return B(e)(t,n,a,s)}catch(d){if(q(u),d!==d+0)throw d;L(1,0)}}function gi(e,t,n,a,s,u,d,f,m,w,_){var T=V();try{B(e)(t,n,a,s,u,d,f,m,w,_)}catch(E){if(q(T),E!==E+0)throw E;L(1,0)}}function wi(e,t,n,a,s,u,d){var f=V();try{return B(e)(t,n,a,s,u,d)}catch(m){if(q(f),m!==m+0)throw m;L(1,0)}}function bi(e,t,n,a,s){var u=V();try{B(e)(t,n,a,s)}catch(d){if(q(u),d!==d+0)throw d;L(1,0)}}function Ci(e,t,n,a,s,u){var d=V();try{return B(e)(t,n,a,s,u)}catch(f){if(q(d),f!==f+0)throw f;L(1,0)}}function $i(e,t,n,a,s,u,d,f){var m=V();try{return B(e)(t,n,a,s,u,d,f)}catch(w){if(q(m),w!==w+0)throw w;L(1,0)}}function _i(e,t,n,a){var s=V();try{return B(e)(t,n,a)}catch(u){if(q(s),u!==u+0)throw u;L(1,0)}}function Si(e,t,n,a){var s=V();try{return B(e)(t,n,a)}catch(u){if(q(s),u!==u+0)throw u;L(1,0)}}function Pi(e){var t=V();try{return B(e)()}catch(n){if(q(t),n!==n+0)throw n;L(1,0)}}function Ti(e,t,n,a,s,u,d,f){var m=V();try{B(e)(t,n,a,s,u,d,f)}catch(w){if(q(m),w!==w+0)throw w;L(1,0)}}function Ei(e,t,n,a,s,u,d,f,m,w,_,T){var E=V();try{return B(e)(t,n,a,s,u,d,f,m,w,_,T)}catch(M){if(q(E),M!==M+0)throw M;L(1,0)}}function Oi(e,t,n,a,s,u,d,f,m,w,_,T,E,M,H,N){var F=V();try{B(e)(t,n,a,s,u,d,f,m,w,_,T,E,M,H,N)}catch(Q){if(q(F),Q!==Q+0)throw Q;L(1,0)}}function Mi(e,t,n,a,s){var u=V();try{return Xr(e,t,n,a,s)}catch(d){if(q(u),d!==d+0)throw d;L(1,0)}}var st;ge=function e(){st||Zr(),st||(ge=e)};function Zr(){if(ae>0||(ze(),ae>0))return;function e(){st||(st=!0,i.calledRun=!0,!j&&(ft(),c(i),i.onRuntimeInitialized&&i.onRuntimeInitialized(),ht()))}i.setStatus?(i.setStatus("Running..."),setTimeout(function(){setTimeout(function(){i.setStatus("")},1),e()},1)):e()}if(i.preInit)for(typeof i.preInit=="function"&&(i.preInit=[i.preInit]);i.preInit.length>0;)i.preInit.pop()();return Zr(),o.ready}})();function Mn(r){return lt(He,r)}function Dn(r){return Tn(He,r)}async function An(r,o){return En(He,r,o)}async function Rn(r,o){return On(He,r,o)}var Me;class Be extends EventTarget{constructor(o={}){var i;super(),tn(this,Me,void 0);try{const c=(i=o==null?void 0:o.formats)==null?void 0:i.filter(l=>l!=="unknown");if((c==null?void 0:c.length)===0)throw new TypeError("Hint option provided, but is empty.");c==null||c.forEach(l=>{if(!Le.has(l))throw new TypeError(`Failed to read the 'formats' property from 'BarcodeDetectorOptions': The provided value '${l}' is not a valid enum value of type BarcodeFormat.`)}),rn(this,Me,c!=null?c:[]),Mn().then(l=>{this.dispatchEvent(new CustomEvent("load",{detail:l}))}).catch(l=>{this.dispatchEvent(new CustomEvent("error",{detail:l}))})}catch(c){throw Qt(c,"Failed to construct 'BarcodeDetector'")}}static async getSupportedFormats(){return nn.filter(o=>o!=="unknown")}async detect(o){try{const i=await dn(o);if(i===null)return[];let c;try{Yt(i)?c=await An(i,{tryHarder:!0,formats:jt(this,Me).map(l=>Le.get(l))}):c=await Rn(i,{tryHarder:!0,formats:jt(this,Me).map(l=>Le.get(l))})}catch(l){throw console.error(l),new DOMException("Barcode detection service unavailable.","NotSupportedError")}return c.map(l=>{const{topLeft:{x:h,y:v},topRight:{x:g,y:b},bottomLeft:{x:p,y:C},bottomRight:{x:S,y:$}}=l.position,U=Math.min(h,g,p,S),W=Math.min(v,b,C,$),j=Math.max(h,g,p,S),k=Math.max(v,b,C,$);return{boundingBox:new DOMRectReadOnly(U,W,j-U,k-W),rawValue:l.text,format:an(l.format),cornerPoints:[{x:h,y:v},{x:g,y:b},{x:S,y:$},{x:p,y:C}]}})}catch(i){throw Qt(i,"Failed to execute 'detect' on 'BarcodeDetector'")}}}Me=new WeakMap;const dt=(r,o,i="error")=>{let c,l;const h=new Promise((v,g)=>{c=v,l=g,r.addEventListener(o,c),r.addEventListener(i,l)});return h.finally(()=>{r.removeEventListener(o,c),r.removeEventListener(i,l)}),h},tr=r=>new Promise(o=>setTimeout(o,r));class xn extends Error{constructor(){super("can't process cross-origin image"),this.name="DropImageFetchError"}}class rr extends Error{constructor(){super("this browser has no Stream API support"),this.name="StreamApiNotSupportedError"}}class kn extends Error{constructor(){super("camera access is only permitted in secure context. Use HTTPS or localhost rather than HTTP."),this.name="InsecureContextError"}}class In extends Error{constructor(){super("Loading camera stream timed out after 6 seconds. If you are on iOS in PWA mode, this is a known issue (see https://github.com/gruhn/vue-qrcode-reader/issues/298)"),this.name="StreamLoadTimeoutError"}}let nr;async function Fn(r){if(window.BarcodeDetector===void 0)return console.debug("[vue-qrcode-reader] Native BarcodeDetector not supported. Will use polyfill."),new Be({formats:r});const o=await window.BarcodeDetector.getSupportedFormats(),i=r.filter(c=>!o.includes(c));return i.length>0?(console.debug(`[vue-qrcode-reader] Native BarcodeDetector does not support formats ${JSON.stringify(i)}. Will use polyfill.`),new Be({formats:r})):(console.debug("[vue-qrcode-reader] Will use native BarcodeDetector."),new window.BarcodeDetector({formats:r}))}async function ar(r){nr=await Fn(r)}const Un=async(r,{detectHandler:o,locateHandler:i,minDelay:c,formats:l})=>{console.debug("[vue-qrcode-reader] start scanning"),await ar(l);const h=v=>async g=>{if(r.readyState===0)console.debug("[vue-qrcode-reader] stop scanning: video element readyState is 0");else{const{lastScanned:b,contentBefore:p,lastScanHadContent:C}=v;if(g-b!p.includes(j.rawValue));$&&o(S);const U=S.length>0;U&&i(S),!U&&C&&i(S);const W={lastScanned:g,lastScanHadContent:U,contentBefore:$?S.map(j=>j.rawValue):p};window.requestAnimationFrame(h(W))}}};h({lastScanned:performance.now(),contentBefore:[],lastScanHadContent:!1})(performance.now())},Wn=async r=>{if(r.startsWith("http")&&r.includes(location.host)===!1)throw new xn;const o=document.createElement("img");return o.src=r,await dt(o,"load"),o},or=async(r,o=["qr_code"])=>await new Be({formats:o}).detect(r),jn=async(r,o=["qr_code"])=>{const i=new Be({formats:o}),c=await Wn(r);return await i.detect(c)};var ir={},X={};Object.defineProperty(X,"__esModule",{value:!0}),X.compactObject=lr,X.deprecated=Yn;var Ln=X.detectBrowser=Jn;X.disableLog=Nn,X.disableWarnings=zn,X.extractVersion=Ve,X.filterStats=Qn,X.log=Gn,X.walkStats=qe,X.wrapPeerConnectionEvent=qn;function Hn(r,o,i){return o=Bn(o),o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i,r}function Bn(r){var o=Vn(r,"string");return fe(o)==="symbol"?o:String(o)}function Vn(r,o){if(fe(r)!=="object"||r===null)return r;var i=r[Symbol.toPrimitive];if(i!==void 0){var c=i.call(r,o||"default");if(fe(c)!=="object")return c;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(r)}function fe(r){"@babel/helpers - typeof";return fe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},fe(r)}var sr=!0,cr=!0;function Ve(r,o,i){var c=r.match(o);return c&&c.length>=i&&parseInt(c[i],10)}function qn(r,o,i){if(r.RTCPeerConnection){var c=r.RTCPeerConnection.prototype,l=c.addEventListener;c.addEventListener=function(v,g){if(v!==o)return l.apply(this,arguments);var b=function(C){var S=i(C);S&&(g.handleEvent?g.handleEvent(S):g(S))};return this._eventMap=this._eventMap||{},this._eventMap[o]||(this._eventMap[o]=new Map),this._eventMap[o].set(g,b),l.apply(this,[v,b])};var h=c.removeEventListener;c.removeEventListener=function(v,g){if(v!==o||!this._eventMap||!this._eventMap[o])return h.apply(this,arguments);if(!this._eventMap[o].has(g))return h.apply(this,arguments);var b=this._eventMap[o].get(g);return this._eventMap[o].delete(g),this._eventMap[o].size===0&&delete this._eventMap[o],Object.keys(this._eventMap).length===0&&delete this._eventMap,h.apply(this,[v,b])},Object.defineProperty(c,"on"+o,{get:function(){return this["_on"+o]},set:function(g){this["_on"+o]&&(this.removeEventListener(o,this["_on"+o]),delete this["_on"+o]),g&&this.addEventListener(o,this["_on"+o]=g)},enumerable:!0,configurable:!0})}}function Nn(r){return typeof r!="boolean"?new Error("Argument type: "+fe(r)+". Please use a boolean."):(sr=r,r?"adapter.js logging disabled":"adapter.js logging enabled")}function zn(r){return typeof r!="boolean"?new Error("Argument type: "+fe(r)+". Please use a boolean."):(cr=!r,"adapter.js deprecation warnings "+(r?"disabled":"enabled"))}function Gn(){if((typeof window>"u"?"undefined":fe(window))==="object"){if(sr)return;typeof console<"u"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function Yn(r,o){cr&&console.warn(r+" is deprecated, please use "+o+" instead.")}function Jn(r){var o={browser:null,version:null};if(typeof r>"u"||!r.navigator||!r.navigator.userAgent)return o.browser="Not a browser.",o;var i=r.navigator;if(i.mozGetUserMedia)o.browser="firefox",o.version=Ve(i.userAgent,/Firefox\/(\d+)\./,1);else if(i.webkitGetUserMedia||r.isSecureContext===!1&&r.webkitRTCPeerConnection)o.browser="chrome",o.version=Ve(i.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else if(r.RTCPeerConnection&&i.userAgent.match(/AppleWebKit\/(\d+)\./))o.browser="safari",o.version=Ve(i.userAgent,/AppleWebKit\/(\d+)\./,1),o.supportsUnifiedPlan=r.RTCRtpTransceiver&&"currentDirection"in r.RTCRtpTransceiver.prototype;else return o.browser="Not a supported browser.",o;return o}function ur(r){return Object.prototype.toString.call(r)==="[object Object]"}function lr(r){return ur(r)?Object.keys(r).reduce(function(o,i){var c=ur(r[i]),l=c?lr(r[i]):r[i],h=c&&!Object.keys(l).length;return l===void 0||h?o:Object.assign(o,Hn({},i,l))},{}):r}function qe(r,o,i){!o||i.has(o.id)||(i.set(o.id,o),Object.keys(o).forEach(function(c){c.endsWith("Id")?qe(r,r.get(o[c]),i):c.endsWith("Ids")&&o[c].forEach(function(l){qe(r,r.get(l),i)})}))}function Qn(r,o,i){var c=i?"outbound-rtp":"inbound-rtp",l=new Map;if(o===null)return l;var h=[];return r.forEach(function(v){v.type==="track"&&v.trackIdentifier===o.id&&h.push(v)}),h.forEach(function(v){r.forEach(function(g){g.type===c&&g.trackId===v.id&&qe(r,g,l)})}),l}Object.defineProperty(ir,"__esModule",{value:!0});var Xn=ir.shimGetUserMedia=ea,Zn=Kn(X);function dr(r){if(typeof WeakMap!="function")return null;var o=new WeakMap,i=new WeakMap;return(dr=function(l){return l?i:o})(r)}function Kn(r,o){if(r&&r.__esModule)return r;if(r===null||he(r)!=="object"&&typeof r!="function")return{default:r};var i=dr(o);if(i&&i.has(r))return i.get(r);var c={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var h in r)if(h!=="default"&&Object.prototype.hasOwnProperty.call(r,h)){var v=l?Object.getOwnPropertyDescriptor(r,h):null;v&&(v.get||v.set)?Object.defineProperty(c,h,v):c[h]=r[h]}return c.default=r,i&&i.set(r,c),c}function he(r){"@babel/helpers - typeof";return he=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},he(r)}var fr=Zn.log;function ea(r,o){var i=r&&r.navigator;if(i.mediaDevices){var c=function(p){if(he(p)!=="object"||p.mandatory||p.optional)return p;var C={};return Object.keys(p).forEach(function(S){if(!(S==="require"||S==="advanced"||S==="mediaSource")){var $=he(p[S])==="object"?p[S]:{ideal:p[S]};$.exact!==void 0&&typeof $.exact=="number"&&($.min=$.max=$.exact);var U=function(k,R){return k?k+R.charAt(0).toUpperCase()+R.slice(1):R==="deviceId"?"sourceId":R};if($.ideal!==void 0){C.optional=C.optional||[];var W={};typeof $.ideal=="number"?(W[U("min",S)]=$.ideal,C.optional.push(W),W={},W[U("max",S)]=$.ideal,C.optional.push(W)):(W[U("",S)]=$.ideal,C.optional.push(W))}$.exact!==void 0&&typeof $.exact!="number"?(C.mandatory=C.mandatory||{},C.mandatory[U("",S)]=$.exact):["min","max"].forEach(function(j){$[j]!==void 0&&(C.mandatory=C.mandatory||{},C.mandatory[U(j,S)]=$[j])})}}),p.advanced&&(C.optional=(C.optional||[]).concat(p.advanced)),C},l=function(p,C){if(o.version>=61)return C(p);if(p=JSON.parse(JSON.stringify(p)),p&&he(p.audio)==="object"){var S=function(k,R,Z){R in k&&!(Z in k)&&(k[Z]=k[R],delete k[R])};p=JSON.parse(JSON.stringify(p)),S(p.audio,"autoGainControl","googAutoGainControl"),S(p.audio,"noiseSuppression","googNoiseSuppression"),p.audio=c(p.audio)}if(p&&he(p.video)==="object"){var $=p.video.facingMode;$=$&&(he($)==="object"?$:{ideal:$});var U=o.version<66;if($&&($.exact==="user"||$.exact==="environment"||$.ideal==="user"||$.ideal==="environment")&&!(i.mediaDevices.getSupportedConstraints&&i.mediaDevices.getSupportedConstraints().facingMode&&!U)){delete p.video.facingMode;var W;if($.exact==="environment"||$.ideal==="environment"?W=["back","rear"]:($.exact==="user"||$.ideal==="user")&&(W=["front"]),W)return i.mediaDevices.enumerateDevices().then(function(j){j=j.filter(function(R){return R.kind==="videoinput"});var k=j.find(function(R){return W.some(function(Z){return R.label.toLowerCase().includes(Z)})});return!k&&j.length&&W.includes("back")&&(k=j[j.length-1]),k&&(p.video.deviceId=$.exact?{exact:k.deviceId}:{ideal:k.deviceId}),p.video=c(p.video),fr("chrome: "+JSON.stringify(p)),C(p)})}p.video=c(p.video)}return fr("chrome: "+JSON.stringify(p)),C(p)},h=function(p){return o.version>=64?p:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[p.name]||p.name,message:p.message,constraint:p.constraint||p.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}},v=function(p,C,S){l(p,function($){i.webkitGetUserMedia($,C,function(U){S&&S(h(U))})})};if(i.getUserMedia=v.bind(i),i.mediaDevices.getUserMedia){var g=i.mediaDevices.getUserMedia.bind(i.mediaDevices);i.mediaDevices.getUserMedia=function(b){return l(b,function(p){return g(p).then(function(C){if(p.audio&&!C.getAudioTracks().length||p.video&&!C.getVideoTracks().length)throw C.getTracks().forEach(function(S){S.stop()}),new DOMException("","NotFoundError");return C},function(C){return Promise.reject(h(C))})})}}}}var hr={};Object.defineProperty(hr,"__esModule",{value:!0});var ta=hr.shimGetUserMedia=aa,ra=na(X);function pr(r){if(typeof WeakMap!="function")return null;var o=new WeakMap,i=new WeakMap;return(pr=function(l){return l?i:o})(r)}function na(r,o){if(r&&r.__esModule)return r;if(r===null||$e(r)!=="object"&&typeof r!="function")return{default:r};var i=pr(o);if(i&&i.has(r))return i.get(r);var c={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var h in r)if(h!=="default"&&Object.prototype.hasOwnProperty.call(r,h)){var v=l?Object.getOwnPropertyDescriptor(r,h):null;v&&(v.get||v.set)?Object.defineProperty(c,h,v):c[h]=r[h]}return c.default=r,i&&i.set(r,c),c}function $e(r){"@babel/helpers - typeof";return $e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},$e(r)}function aa(r,o){var i=r&&r.navigator,c=r&&r.MediaStreamTrack;if(i.getUserMedia=function(b,p,C){ra.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),i.mediaDevices.getUserMedia(b).then(p,C)},!(o.version>55&&"autoGainControl"in i.mediaDevices.getSupportedConstraints())){var l=function(p,C,S){C in p&&!(S in p)&&(p[S]=p[C],delete p[C])},h=i.mediaDevices.getUserMedia.bind(i.mediaDevices);if(i.mediaDevices.getUserMedia=function(b){return $e(b)==="object"&&$e(b.audio)==="object"&&(b=JSON.parse(JSON.stringify(b)),l(b.audio,"autoGainControl","mozAutoGainControl"),l(b.audio,"noiseSuppression","mozNoiseSuppression")),h(b)},c&&c.prototype.getSettings){var v=c.prototype.getSettings;c.prototype.getSettings=function(){var b=v.apply(this,arguments);return l(b,"mozAutoGainControl","autoGainControl"),l(b,"mozNoiseSuppression","noiseSuppression"),b}}if(c&&c.prototype.applyConstraints){var g=c.prototype.applyConstraints;c.prototype.applyConstraints=function(b){return this.kind==="audio"&&$e(b)==="object"&&(b=JSON.parse(JSON.stringify(b)),l(b,"autoGainControl","mozAutoGainControl"),l(b,"noiseSuppression","mozNoiseSuppression")),g.apply(this,[b])}}}}var ne={};Object.defineProperty(ne,"__esModule",{value:!0}),ne.shimAudioContext=pa,ne.shimCallbacksAPI=ua,ne.shimConstraints=yr,ne.shimCreateOfferLegacy=ha;var oa=ne.shimGetUserMedia=la;ne.shimLocalStreamsAPI=sa,ne.shimRTCIceServerUrls=da,ne.shimRemoteStreamsAPI=ca,ne.shimTrackEventTransceiver=fa;var mr=ia(X);function vr(r){if(typeof WeakMap!="function")return null;var o=new WeakMap,i=new WeakMap;return(vr=function(l){return l?i:o})(r)}function ia(r,o){if(r&&r.__esModule)return r;if(r===null||pe(r)!=="object"&&typeof r!="function")return{default:r};var i=vr(o);if(i&&i.has(r))return i.get(r);var c={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var h in r)if(h!=="default"&&Object.prototype.hasOwnProperty.call(r,h)){var v=l?Object.getOwnPropertyDescriptor(r,h):null;v&&(v.get||v.set)?Object.defineProperty(c,h,v):c[h]=r[h]}return c.default=r,i&&i.set(r,c),c}function pe(r){"@babel/helpers - typeof";return pe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},pe(r)}function sa(r){if(!(pe(r)!=="object"||!r.RTCPeerConnection)){if("getLocalStreams"in r.RTCPeerConnection.prototype||(r.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in r.RTCPeerConnection.prototype)){var o=r.RTCPeerConnection.prototype.addTrack;r.RTCPeerConnection.prototype.addStream=function(c){var l=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(c)||this._localStreams.push(c),c.getAudioTracks().forEach(function(h){return o.call(l,h,c)}),c.getVideoTracks().forEach(function(h){return o.call(l,h,c)})},r.RTCPeerConnection.prototype.addTrack=function(c){for(var l=this,h=arguments.length,v=new Array(h>1?h-1:0),g=1;g=0)){c._remoteStreams.push(h);var v=new Event("addstream");v.stream=h,c.dispatchEvent(v)}})}),o.apply(c,arguments)}}}function ua(r){if(!(pe(r)!=="object"||!r.RTCPeerConnection)){var o=r.RTCPeerConnection.prototype,i=o.createOffer,c=o.createAnswer,l=o.setLocalDescription,h=o.setRemoteDescription,v=o.addIceCandidate;o.createOffer=function(p,C){var S=arguments.length>=2?arguments[2]:arguments[0],$=i.apply(this,[S]);return C?($.then(p,C),Promise.resolve()):$},o.createAnswer=function(p,C){var S=arguments.length>=2?arguments[2]:arguments[0],$=c.apply(this,[S]);return C?($.then(p,C),Promise.resolve()):$};var g=function(p,C,S){var $=l.apply(this,[p]);return S?($.then(C,S),Promise.resolve()):$};o.setLocalDescription=g,g=function(p,C,S){var $=h.apply(this,[p]);return S?($.then(C,S),Promise.resolve()):$},o.setRemoteDescription=g,g=function(p,C,S){var $=v.apply(this,[p]);return S?($.then(C,S),Promise.resolve()):$},o.addIceCandidate=g}}function la(r){var o=r&&r.navigator;if(o.mediaDevices&&o.mediaDevices.getUserMedia){var i=o.mediaDevices,c=i.getUserMedia.bind(i);o.mediaDevices.getUserMedia=function(l){return c(yr(l))}}!o.getUserMedia&&o.mediaDevices&&o.mediaDevices.getUserMedia&&(o.getUserMedia=(function(h,v,g){o.mediaDevices.getUserMedia(h).then(v,g)}).bind(o))}function yr(r){return r&&r.video!==void 0?Object.assign({},r,{video:mr.compactObject(r.video)}):r}function da(r){if(r.RTCPeerConnection){var o=r.RTCPeerConnection;r.RTCPeerConnection=function(c,l){if(c&&c.iceServers){for(var h=[],v=0;v{let o=!1,i;return(...c)=>(o||(i=r(c),o=!0),i)};function se(r,o){if(r===!1)throw new Error(o!=null?o:"assertion failure")}function gr(r){throw new Error("this code should be unreachable")}const va=ma(()=>{const r=Ln(window);switch(r.browser){case"chrome":Xn(window,r);break;case"firefox":ta(window,r);break;case"safari":oa(window,r);break;default:throw new rr}});let _e=Promise.resolve({type:"stop",data:{}});async function wr(r,o,i){var g,b,p;if(console.debug("[vue-qrcode-reader] starting camera with constraints: ",JSON.stringify(o)),window.isSecureContext!==!0)throw new kn;if(((g=navigator==null?void 0:navigator.mediaDevices)==null?void 0:g.getUserMedia)===void 0)throw new rr;va(),console.debug("[vue-qrcode-reader] calling getUserMedia");const c=await navigator.mediaDevices.getUserMedia({audio:!1,video:o});r.srcObject!==void 0?r.srcObject=c:r.mozSrcObject!==void 0?r.mozSrcObject=c:window.URL.createObjectURL?r.src=window.URL.createObjectURL(c):window.webkitURL?r.src=window.webkitURL.createObjectURL(c):r.src=c.id,r.play(),console.debug("[vue-qrcode-reader] waiting for video element to load"),await Promise.race([dt(r,"loadeddata"),tr(6e3).then(()=>{throw new In})]),console.debug("[vue-qrcode-reader] video element loaded"),await tr(500);const[l]=c.getVideoTracks(),h=(p=(b=l==null?void 0:l.getCapabilities)==null?void 0:b.call(l))!=null?p:{};let v=!1;return i&&h.torch&&(await l.applyConstraints({advanced:[{torch:!0}]}),v=!0),console.debug("[vue-qrcode-reader] camera ready"),{type:"start",data:{videoEl:r,stream:c,capabilities:h,constraints:o,isTorchOn:v}}}async function ya(r,{constraints:o,torch:i,restart:c=!1}){_e=_e.then(h=>{if(h.type==="start"){const{data:{videoEl:v,stream:g,constraints:b,isTorchOn:p}}=h;return!c&&r===v&&o===b&&i===p?h:br(v,g,p).then(()=>wr(r,o,i))}else if(h.type==="stop"||h.type==="failed")return wr(r,o,i);gr()}).catch(h=>(console.debug(`[vue-qrcode-reader] starting camera failed with "${h}"`),{type:"failed",error:h}));const l=await _e;if(l.type==="stop")throw new Error("Something went wrong with the camera task queue (start task).");if(l.type==="failed")throw l.error;if(l.type==="start")return l.data.capabilities;gr()}async function br(r,o,i){console.debug("[vue-qrcode-reader] stopping camera"),r.src="",r.srcObject=null,r.load(),await dt(r,"error");for(const c of o.getTracks())i!=null||await c.applyConstraints({advanced:[{torch:!1}]}),o.removeTrack(c),c.stop();return{type:"stop",data:{}}}async function Ne(){if(_e=_e.then(o=>{if(o.type==="stop"||o.type==="failed")return o;const{data:{videoEl:i,stream:c,isTorchOn:l}}=o;return br(i,c,l)}),(await _e).type==="start")throw new Error("Something went wrong with the camera task queue (stop task).")}const Cr=O.defineComponent({__name:"QrcodeStream",props:{constraints:{type:Object,default(){return{facingMode:"environment"}}},formats:{type:Array,default:()=>["qr_code"]},paused:{type:Boolean,default:!1},torch:{type:Boolean,default:!1},track:{type:Function}},emits:["detect","camera-on","camera-off","error"],setup(r,{emit:o}){const i=r,c=o,l=O.ref(i.constraints),h=O.ref(i.formats);O.watch(()=>i.constraints,(I,D)=>{JSON.stringify(I)!==JSON.stringify(D)&&(l.value=I)},{deep:!0}),O.watch(()=>i.formats,(I,D)=>{JSON.stringify(I)!==JSON.stringify(D)&&(h.value=I)},{deep:!0});const v=O.ref(),g=O.ref(),b=O.ref(),p=O.ref(!1),C=O.ref(!1);O.onMounted(()=>{C.value=!0}),O.onUnmounted(()=>{Ne()});const S=O.computed(()=>({torch:i.torch,constraints:l.value,shouldStream:C.value&&!i.paused}));O.watch(S,async I=>{const D=b.value;se(D!==void 0,"cameraSettings watcher should never be triggered when component is not mounted. Thus video element should always be defined.");const A=v.value;se(A!==void 0,"cameraSettings watcher should never be triggered when component is not mounted. Thus canvas should always be defined.");const me=A.getContext("2d");if(se(me!==null,"if cavnas is defined, canvas 2d context should also be non-null"),I.shouldStream){Ne(),p.value=!1;try{const ce=await ya(D,I);C.value?(p.value=!0,c("camera-on",ce)):await Ne()}catch(ce){c("error",ce)}}else A.width=D.videoWidth,A.height=D.videoHeight,me.drawImage(D,0,0,D.videoWidth,D.videoHeight),Ne(),p.value=!1,c("camera-off")},{deep:!0}),O.watch(h,async I=>{C.value&&await ar(I)});const $=O.computed(()=>S.value.shouldStream&&p.value);O.watch($,I=>{if(I){se(v.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus pause frame canvas is defined"),U(v.value),se(g.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus tracking canvas is defined"),U(g.value);const D=()=>i.track===void 0?500:40;se(b.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus video element is defined"),Un(b.value,{detectHandler:A=>c("detect",A),formats:h.value,locateHandler:W,minDelay:D()})}});const U=I=>{const D=I.getContext("2d");se(D!==null,"canvas 2d context should always be non-null"),D.clearRect(0,0,I.width,I.height)},W=I=>{const D=g.value;se(D!==void 0,"onLocate handler should only be called when component is mounted. Thus tracking canvas is always defined.");const A=b.value;if(se(A!==void 0,"onLocate handler should only be called when component is mounted. Thus video element is always defined."),I.length===0||i.track===void 0)U(D);else{const me=A.offsetWidth,ce=A.offsetHeight,Se=A.videoWidth,Pe=A.videoHeight,De=Math.max(me/Se,ce/Pe),Ae=Se*De,ze=Pe*De,ft=Ae/Se,ht=ze/Pe,pt=(me-Ae)/2,mt=(ce-ze)/2,Re=({x:ve,y:K})=>({x:Math.floor(ve*ft),y:Math.floor(K*ht)}),ae=({x:ve,y:K})=>({x:Math.floor(ve+pt),y:Math.floor(K+mt)}),ge=I.map(ve=>{const{boundingBox:K,cornerPoints:yt}=ve,{x:Ge,y:ye}=ae(Re({x:K.x,y:K.y})),{x:Ye,y:gt}=Re({x:K.width,y:K.height});return{...ve,cornerPoints:yt.map(Je=>ae(Re(Je))),boundingBox:DOMRectReadOnly.fromRect({x:Ge,y:ye,width:Ye,height:gt})}});D.width=A.offsetWidth,D.height=A.offsetHeight;const vt=D.getContext("2d");i.track(ge,vt)}},j={width:"100%",height:"100%",position:"relative","z-index":"0"},k={width:"100%",height:"100%",position:"absolute",top:"0",left:"0"},R={width:"100%",height:"100%","object-fit":"cover"},Z=O.computed(()=>$.value?R:{...R,visibility:"hidden",position:"absolute"});return(I,D)=>(O.openBlock(),O.createElementBlock("div",{style:j},[O.createElementVNode("video",{ref_key:"videoRef",ref:b,style:O.normalizeStyle(Z.value),autoplay:"",muted:"",playsinline:""},null,4),O.withDirectives(O.createElementVNode("canvas",{id:"qrcode-stream-pause-frame",ref_key:"pauseFrameRef",ref:v,style:R},null,512),[[O.vShow,!$.value]]),O.createElementVNode("canvas",{id:"qrcode-stream-tracking-layer",ref_key:"trackingLayerRef",ref:g,style:k},null,512),O.createElementVNode("div",{style:k},[O.renderSlot(I.$slots,"default")])]))}}),$r=O.defineComponent({__name:"QrcodeCapture",props:{formats:{type:Array,default:()=>["qr_code"]}},emits:["detect"],setup(r,{emit:o}){const i=r,c=o,l=h=>{if(!(!(h.target instanceof HTMLInputElement)||!h.target.files))for(const v of Array.from(h.target.files))or(v,i.formats).then(g=>{c("detect",g)})};return(h,v)=>(O.openBlock(),O.createElementBlock("input",{onChange:l,type:"file",name:"image",accept:"image/*",capture:"environment",multiple:""},null,32))}}),_r=O.defineComponent({__name:"QrcodeDropZone",props:{formats:{type:Array,default:()=>["qr_code"]}},emits:["detect","dragover","error"],setup(r,{emit:o}){const i=r,c=o,l=async g=>{try{const b=await g;c("detect",b)}catch(b){c("error",b)}},h=g=>{c("dragover",g)},v=({dataTransfer:g})=>{if(!g)return;h(!1);const b=[...Array.from(g.files)],p=g.getData("text/uri-list");b.forEach(C=>{l(or(C,i.formats))}),p!==""&&l(jn(p,i.formats))};return(g,b)=>(O.openBlock(),O.createElementBlock("div",{onDrop:O.withModifiers(v,["prevent","stop"]),onDragenter:b[0]||(b[0]=O.withModifiers(p=>h(!0),["prevent","stop"])),onDragleave:b[1]||(b[1]=O.withModifiers(p=>h(!1),["prevent","stop"])),onDragover:b[2]||(b[2]=O.withModifiers(()=>{},["prevent","stop"]))},[O.renderSlot(g.$slots,"default")],32))}});function Sr(r){r.component("qrcode-stream",Cr),r.component("qrcode-capture",$r),r.component("qrcode-drop-zone",_r)}const ga={install:Sr};ee.QrcodeCapture=$r,ee.QrcodeDropZone=_r,ee.QrcodeStream=Cr,ee.VueQrcodeReader=ga,ee.install=Sr,ee.setZXingModuleOverrides=Dn,Object.defineProperty(ee,Symbol.toStringTag,{value:"Module"})}); +(function(ee,O){typeof exports=="object"&&typeof module<"u"?O(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],O):(ee=typeof globalThis<"u"?globalThis:ee||self,O(ee.VueQrcodeReader={},ee.Vue))})(this,function(ee,O){"use strict";var Wt=(r,o,i)=>{if(!o.has(r))throw TypeError("Cannot "+i)},jt=(r,o,i)=>(Wt(r,o,"read from private field"),i?i.call(r):o.get(r)),tn=(r,o,i)=>{if(o.has(r))throw TypeError("Cannot add the same private member more than once");o instanceof WeakSet?o.add(r):o.set(r,i)},rn=(r,o,i,c)=>(Wt(r,o,"write to private field"),o.set(r,i),i);const Lt=[["aztec","Aztec"],["code_128","Code128"],["code_39","Code39"],["code_93","Code93"],["codabar","Codabar"],["databar","DataBar"],["databar_expanded","DataBarExpanded"],["data_matrix","DataMatrix"],["dx_film_edge","DXFilmEdge"],["ean_13","EAN-13"],["ean_8","EAN-8"],["itf","ITF"],["maxi_code","MaxiCode"],["micro_qr_code","MicroQRCode"],["pdf417","PDF417"],["qr_code","QRCode"],["rm_qr_code","rMQRCode"],["upc_a","UPC-A"],["upc_e","UPC-E"],["linear_codes","Linear-Codes"],["matrix_codes","Matrix-Codes"]],nn=[...Lt,["unknown"]].map(r=>r[0]),Le=new Map(Lt);function an(r){for(const[o,i]of Le)if(r===i)return o;return"unknown"}function on(r){if(Ht(r))return{width:r.naturalWidth,height:r.naturalHeight};if(Bt(r))return{width:r.width.baseVal.value,height:r.height.baseVal.value};if(Vt(r))return{width:r.videoWidth,height:r.videoHeight};if(Nt(r))return{width:r.width,height:r.height};if(Gt(r))return{width:r.displayWidth,height:r.displayHeight};if(qt(r))return{width:r.width,height:r.height};if(zt(r))return{width:r.width,height:r.height};throw new TypeError("The provided value is not of type '(Blob or HTMLCanvasElement or HTMLImageElement or HTMLVideoElement or ImageBitmap or ImageData or OffscreenCanvas or SVGImageElement or VideoFrame)'.")}function Ht(r){try{return r instanceof HTMLImageElement}catch(o){return!1}}function Bt(r){try{return r instanceof SVGImageElement}catch(o){return!1}}function Vt(r){try{return r instanceof HTMLVideoElement}catch(o){return!1}}function qt(r){try{return r instanceof HTMLCanvasElement}catch(o){return!1}}function Nt(r){try{return r instanceof ImageBitmap}catch(o){return!1}}function zt(r){try{return r instanceof OffscreenCanvas}catch(o){return!1}}function Gt(r){try{return r instanceof VideoFrame}catch(o){return!1}}function Yt(r){try{return r instanceof Blob}catch(o){return!1}}function sn(r){try{return r instanceof ImageData}catch(o){return!1}}function cn(r,o){try{const i=new OffscreenCanvas(r,o);if(i.getContext("2d")instanceof OffscreenCanvasRenderingContext2D)return i;throw void 0}catch(i){const c=document.createElement("canvas");return c.width=r,c.height=o,c}}async function Jt(r){if(Ht(r)&&!await fn(r))throw new DOMException("Failed to load or decode HTMLImageElement.","InvalidStateError");if(Bt(r)&&!await hn(r))throw new DOMException("Failed to load or decode SVGImageElement.","InvalidStateError");if(Gt(r)&&pn(r))throw new DOMException("VideoFrame is closed.","InvalidStateError");if(Vt(r)&&(r.readyState===0||r.readyState===1))throw new DOMException("Invalid element or state.","InvalidStateError");if(Nt(r)&&vn(r))throw new DOMException("The image source is detached.","InvalidStateError");const{width:o,height:i}=on(r);if(o===0||i===0)return null;const c=cn(o,i).getContext("2d");c.drawImage(r,0,0);try{return c.getImageData(0,0,o,i)}catch(l){throw new DOMException("Source would taint origin.","SecurityError")}}async function un(r){let o;try{if(globalThis.createImageBitmap)o=await createImageBitmap(r);else if(globalThis.Image){o=new Image;let i="";try{i=URL.createObjectURL(r),o.src=i,await o.decode()}finally{URL.revokeObjectURL(i)}}else return r}catch(i){throw new DOMException("Failed to load or decode Blob.","InvalidStateError")}return await Jt(o)}function ln(r){const{width:o,height:i}=r;if(o===0||i===0)return null;const c=r.getContext("2d");try{return c.getImageData(0,0,o,i)}catch(l){throw new DOMException("Source would taint origin.","SecurityError")}}async function dn(r){if(Yt(r))return await un(r);if(sn(r)){if(mn(r))throw new DOMException("The image data has been detached.","InvalidStateError");return r}return qt(r)||zt(r)?ln(r):await Jt(r)}async function fn(r){try{return await r.decode(),!0}catch(o){return!1}}async function hn(r){var o;try{return await((o=r.decode)==null?void 0:o.call(r)),!0}catch(i){return!1}}function pn(r){return r.format===null}function mn(r){return r.data.buffer.byteLength===0}function vn(r){return r.width===0&&r.height===0}function Qt(r,o){return r instanceof DOMException?new DOMException(`${o}: ${r.message}`,r.name):r instanceof Error?new r.constructor(`${o}: ${r.message}`):new Error(`${o}: ${r}`)}const Xt=["Aztec","Codabar","Code128","Code39","Code93","DataBar","DataBarExpanded","DataMatrix","DXFilmEdge","EAN-13","EAN-8","ITF","Linear-Codes","Matrix-Codes","MaxiCode","MicroQRCode","None","PDF417","QRCode","rMQRCode","UPC-A","UPC-E"];function yn(r){return r.join("|")}function gn(r){const o=Zt(r);let i=0,c=Xt.length-1;for(;i<=c;){const l=Math.floor((i+c)/2),h=Xt[l],v=Zt(h);if(v===o)return h;v{const i=r.match(/_(.+?)\.wasm$/);return i?`https://fastly.jsdelivr.net/npm/zxing-wasm@1.1.3/dist/${i[1]}/${r}`:o+r}};let ut=new WeakMap;function lt(r,o){var i;const c=ut.get(r);if(c!=null&&c.modulePromise&&o===void 0)return c.modulePromise;const l=(i=c==null?void 0:c.moduleOverrides)!=null?i:Pn,h=r({...l});return ut.set(r,{moduleOverrides:l,modulePromise:h}),h}function Tn(r,o){ut.set(r,{moduleOverrides:o})}async function En(r,o,i=Ce){const c={...Ce,...i},l=await lt(r),{size:h}=o,v=new Uint8Array(await o.arrayBuffer()),g=l._malloc(h);l.HEAPU8.set(v,g);const b=l.readBarcodesFromImage(g,h,Kt(l,c));l._free(g);const p=[];for(let C=0;C{var r=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return function(o={}){var i=o,c,l;i.ready=new Promise((e,t)=>{c=e,l=t});var h=Object.assign({},i),v="./this.program",g=typeof window=="object",b=typeof importScripts=="function";typeof process=="object"&&typeof process.versions=="object"&&process.versions.node;var p="";function C(e){return i.locateFile?i.locateFile(e,p):p+e}var S;(g||b)&&(b?p=self.location.href:typeof document<"u"&&document.currentScript&&(p=document.currentScript.src),r&&(p=r),p.indexOf("blob:")!==0?p=p.substr(0,p.replace(/[?#].*/,"").lastIndexOf("/")+1):p="",b&&(S=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)})),i.print||console.log.bind(console);var $=i.printErr||console.error.bind(console);Object.assign(i,h),h=null,i.arguments&&i.arguments,i.thisProgram&&(v=i.thisProgram),i.quit&&i.quit;var U;i.wasmBinary&&(U=i.wasmBinary),typeof WebAssembly!="object"&&K("no native wasm support detected");var W,j=!1,k,R,Z,I,A,D,me,ce;function Se(){var e=W.buffer;i.HEAP8=k=new Int8Array(e),i.HEAP16=Z=new Int16Array(e),i.HEAPU8=R=new Uint8Array(e),i.HEAPU16=I=new Uint16Array(e),i.HEAP32=A=new Int32Array(e),i.HEAPU32=D=new Uint32Array(e),i.HEAPF32=me=new Float32Array(e),i.HEAPF64=ce=new Float64Array(e)}var Pe=[],Ae=[],De=[];function Ne(){if(i.preRun)for(typeof i.preRun=="function"&&(i.preRun=[i.preRun]);i.preRun.length;)mt(i.preRun.shift());wt(Pe)}function ht(){wt(Ae)}function pt(){if(i.postRun)for(typeof i.postRun=="function"&&(i.postRun=[i.postRun]);i.postRun.length;)Re(i.postRun.shift());wt(De)}function mt(e){Pe.unshift(e)}function vt(e){Ae.unshift(e)}function Re(e){De.unshift(e)}var oe=0,ge=null;function ze(e){var t;oe++,(t=i.monitorRunDependencies)===null||t===void 0||t.call(i,oe)}function ve(e){var t;if(oe--,(t=i.monitorRunDependencies)===null||t===void 0||t.call(i,oe),oe==0&&ge){var n=ge;ge=null,n()}}function K(e){var t;(t=i.onAbort)===null||t===void 0||t.call(i,e),e="Aborted("+e+")",$(e),j=!0,e+=". Build with -sASSERTIONS for more info.";var n=new WebAssembly.RuntimeError(e);throw l(n),n}var yt="data:application/octet-stream;base64,",Ge=e=>e.startsWith(yt),ye;ye="zxing_reader.wasm",Ge(ye)||(ye=C(ye));function Ye(e){if(e==ye&&U)return new Uint8Array(U);if(S)return S(e);throw"both async and sync fetching of the wasm failed"}function gt(e){return!U&&(g||b)&&typeof fetch=="function"?fetch(e,{credentials:"same-origin"}).then(t=>{if(!t.ok)throw"failed to load wasm binary file at '"+e+"'";return t.arrayBuffer()}).catch(()=>Ye(e)):Promise.resolve().then(()=>Ye(e))}function Je(e,t,n){return gt(e).then(a=>WebAssembly.instantiate(a,t)).then(a=>a).then(n,a=>{$(`failed to asynchronously prepare wasm: ${a}`),K(a)})}function ga(e,t,n,a){return!e&&typeof WebAssembly.instantiateStreaming=="function"&&!Ge(t)&&typeof fetch=="function"?fetch(t,{credentials:"same-origin"}).then(s=>{var u=WebAssembly.instantiateStreaming(s,n);return u.then(a,function(d){return $(`wasm streaming compile failed: ${d}`),$("falling back to ArrayBuffer instantiation"),Je(t,n,a)})}):Je(t,n,a)}function wa(){var e={a:si};function t(a,s){return G=a.exports,W=G.ia,Se(),kr=G.ma,vt(G.ja),ve(),G}ze();function n(a){t(a.instance)}if(i.instantiateWasm)try{return i.instantiateWasm(e,t)}catch(a){$(`Module.instantiateWasm callback failed with error: ${a}`),l(a)}return ga(U,ye,e,n).catch(l),{}}var wt=e=>{for(;e.length>0;)e.shift()(i)};i.noExitRuntime;var Qe=[],Xe=0,ba=e=>{var t=new bt(e);return t.get_caught()||(t.set_caught(!0),Xe--),t.set_rethrown(!1),Qe.push(t),Yr(t.excPtr),t.get_exception_ptr()},ue=0,Ca=()=>{L(0,0);var e=Qe.pop();Gr(e.excPtr),ue=0};function bt(e){this.excPtr=e,this.ptr=e-24,this.set_type=function(t){D[this.ptr+4>>2]=t},this.get_type=function(){return D[this.ptr+4>>2]},this.set_destructor=function(t){D[this.ptr+8>>2]=t},this.get_destructor=function(){return D[this.ptr+8>>2]},this.set_caught=function(t){t=t?1:0,k[this.ptr+12>>0]=t},this.get_caught=function(){return k[this.ptr+12>>0]!=0},this.set_rethrown=function(t){t=t?1:0,k[this.ptr+13>>0]=t},this.get_rethrown=function(){return k[this.ptr+13>>0]!=0},this.init=function(t,n){this.set_adjusted_ptr(0),this.set_type(t),this.set_destructor(n)},this.set_adjusted_ptr=function(t){D[this.ptr+16>>2]=t},this.get_adjusted_ptr=function(){return D[this.ptr+16>>2]},this.get_exception_ptr=function(){var t=Qr(this.get_type());if(t)return D[this.excPtr>>2];var n=this.get_adjusted_ptr();return n!==0?n:this.excPtr}}var $a=e=>{throw ue||(ue=e),ue},Ct=e=>{var t=ue;if(!t)return je(0),0;var n=new bt(t);n.set_adjusted_ptr(t);var a=n.get_type();if(!a)return je(0),t;for(var s in e){var u=e[s];if(u===0||u===a)break;var d=n.ptr+16;if(Jr(u,a,d))return je(u),t}return je(a),t},_a=()=>Ct([]),Sa=e=>Ct([e]),Pa=(e,t)=>Ct([e,t]),Ta=()=>{var e=Qe.pop();e||K("no exception to throw");var t=e.excPtr;throw e.get_rethrown()||(Qe.push(e),e.set_rethrown(!0),e.set_caught(!1),Xe++),ue=t,ue},Ea=(e,t,n)=>{var a=new bt(e);throw a.init(t,n),ue=e,Xe++,ue},Oa=()=>Xe,Ze={},$t=e=>{for(;e.length;){var t=e.pop(),n=e.pop();n(t)}};function _t(e){return this.fromWireType(A[e>>2])}var Te={},we={},Ke={},Pr,et=e=>{throw new Pr(e)},be=(e,t,n)=>{e.forEach(function(f){Ke[f]=t});function a(f){var m=n(f);m.length!==e.length&&et("Mismatched type converter count");for(var w=0;w{we.hasOwnProperty(f)?s[m]=we[f]:(u.push(f),Te.hasOwnProperty(f)||(Te[f]=[]),Te[f].push(()=>{s[m]=we[f],++d,d===u.length&&a(s)}))}),u.length===0&&a(s)},Ma=e=>{var t=Ze[e];delete Ze[e];var n=t.rawConstructor,a=t.rawDestructor,s=t.fields,u=s.map(d=>d.getterReturnType).concat(s.map(d=>d.setterArgumentType));be([e],u,d=>{var f={};return s.forEach((m,w)=>{var _=m.fieldName,T=d[w],E=m.getter,M=m.getterContext,H=d[w+s.length],N=m.setter,F=m.setterContext;f[_]={read:Q=>T.fromWireType(E(M,Q)),write:(Q,y)=>{var P=[];N(F,Q,H.toWireType(P,y)),$t(P)}}}),[{name:t.name,fromWireType:m=>{var w={};for(var _ in f)w[_]=f[_].read(m);return a(m),w},toWireType:(m,w)=>{for(var _ in f)if(!(_ in w))throw new TypeError(`Missing field: "${_}"`);var T=n();for(_ in f)f[_].write(T,w[_]);return m!==null&&m.push(a,T),T},argPackAdvance:se,readValueFromPointer:_t,destructorFunction:a}]})},Aa=(e,t,n,a,s)=>{},Da=()=>{for(var e=new Array(256),t=0;t<256;++t)e[t]=String.fromCharCode(t);Tr=e},Tr,J=e=>{for(var t="",n=e;R[n];)t+=Tr[R[n++]];return t},Ee,x=e=>{throw new Ee(e)};function Ra(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var a=t.name;if(e||x(`type "${a}" must have a positive integer typeid pointer`),we.hasOwnProperty(e)){if(n.ignoreDuplicateRegistrations)return;x(`Cannot register type '${a}' twice`)}if(we[e]=t,delete Ke[e],Te.hasOwnProperty(e)){var s=Te[e];delete Te[e],s.forEach(u=>u())}}function ie(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!("argPackAdvance"in t))throw new TypeError("registerType registeredInstance requires argPackAdvance");return Ra(e,t,n)}var se=8,xa=(e,t,n,a)=>{t=J(t),ie(e,{name:t,fromWireType:function(s){return!!s},toWireType:function(s,u){return u?n:a},argPackAdvance:se,readValueFromPointer:function(s){return this.fromWireType(R[s])},destructorFunction:null})},ka=e=>({count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}),St=e=>{function t(n){return n.$$.ptrType.registeredClass.name}x(t(e)+" instance already deleted")},Pt=!1,Er=e=>{},Ia=e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)},Or=e=>{e.count.value-=1;var t=e.count.value===0;t&&Ia(e)},Mr=(e,t,n)=>{if(t===n)return e;if(n.baseClass===void 0)return null;var a=Mr(e,t,n.baseClass);return a===null?null:n.downcast(a)},Ar={},Fa=()=>Object.keys(Ie).length,Ua=()=>{var e=[];for(var t in Ie)Ie.hasOwnProperty(t)&&e.push(Ie[t]);return e},xe=[],Tt=()=>{for(;xe.length;){var e=xe.pop();e.$$.deleteScheduled=!1,e.delete()}},ke,Wa=e=>{ke=e,xe.length&&ke&&ke(Tt)},ja=()=>{i.getInheritedInstanceCount=Fa,i.getLiveInheritedInstances=Ua,i.flushPendingDeletes=Tt,i.setDelayFunction=Wa},Ie={},La=(e,t)=>{for(t===void 0&&x("ptr should not be undefined");e.baseClass;)t=e.upcast(t),e=e.baseClass;return t},Ha=(e,t)=>(t=La(e,t),Ie[t]),tt=(e,t)=>{(!t.ptrType||!t.ptr)&&et("makeClassHandle requires ptr and ptrType");var n=!!t.smartPtrType,a=!!t.smartPtr;return n!==a&&et("Both smartPtrType and smartPtr must be specified"),t.count={value:1},Fe(Object.create(e,{$$:{value:t,writable:!0}}))};function Ba(e){var t=this.getPointee(e);if(!t)return this.destructor(e),null;var n=Ha(this.registeredClass,t);if(n!==void 0){if(n.$$.count.value===0)return n.$$.ptr=t,n.$$.smartPtr=e,n.clone();var a=n.clone();return this.destructor(e),a}function s(){return this.isSmartPointer?tt(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:e}):tt(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var u=this.registeredClass.getActualType(t),d=Ar[u];if(!d)return s.call(this);var f;this.isConst?f=d.constPointerType:f=d.pointerType;var m=Mr(t,this.registeredClass,f.registeredClass);return m===null?s.call(this):this.isSmartPointer?tt(f.registeredClass.instancePrototype,{ptrType:f,ptr:m,smartPtrType:this,smartPtr:e}):tt(f.registeredClass.instancePrototype,{ptrType:f,ptr:m})}var Fe=e=>typeof FinalizationRegistry>"u"?(Fe=t=>t,e):(Pt=new FinalizationRegistry(t=>{Or(t.$$)}),Fe=t=>{var n=t.$$,a=!!n.smartPtr;if(a){var s={$$:n};Pt.register(t,s,t)}return t},Er=t=>Pt.unregister(t),Fe(e)),Va=()=>{Object.assign(rt.prototype,{isAliasOf(e){if(!(this instanceof rt)||!(e instanceof rt))return!1;var t=this.$$.ptrType.registeredClass,n=this.$$.ptr;e.$$=e.$$;for(var a=e.$$.ptrType.registeredClass,s=e.$$.ptr;t.baseClass;)n=t.upcast(n),t=t.baseClass;for(;a.baseClass;)s=a.upcast(s),a=a.baseClass;return t===a&&n===s},clone(){if(this.$$.ptr||St(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=Fe(Object.create(Object.getPrototypeOf(this),{$$:{value:ka(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e},delete(){this.$$.ptr||St(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&x("Object already scheduled for deletion"),Er(this),Or(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||St(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&x("Object already scheduled for deletion"),xe.push(this),xe.length===1&&ke&&ke(Tt),this.$$.deleteScheduled=!0,this}})};function rt(){}var Ue=(e,t)=>Object.defineProperty(t,"name",{value:e}),Dr=(e,t,n)=>{if(e[t].overloadTable===void 0){var a=e[t];e[t]=function(){return e[t].overloadTable.hasOwnProperty(arguments.length)||x(`Function '${n}' called with an invalid number of arguments (${arguments.length}) - expects one of (${e[t].overloadTable})!`),e[t].overloadTable[arguments.length].apply(this,arguments)},e[t].overloadTable=[],e[t].overloadTable[a.argCount]=a}},Et=(e,t,n)=>{i.hasOwnProperty(e)?((n===void 0||i[e].overloadTable!==void 0&&i[e].overloadTable[n]!==void 0)&&x(`Cannot register public name '${e}' twice`),Dr(i,e,e),i.hasOwnProperty(n)&&x(`Cannot register multiple overloads of a function with the same number of arguments (${n})!`),i[e].overloadTable[n]=t):(i[e]=t,n!==void 0&&(i[e].numArguments=n))},qa=48,Na=57,za=e=>{if(e===void 0)return"_unknown";e=e.replace(/[^a-zA-Z0-9_]/g,"$");var t=e.charCodeAt(0);return t>=qa&&t<=Na?`_${e}`:e};function Ga(e,t,n,a,s,u,d,f){this.name=e,this.constructor=t,this.instancePrototype=n,this.rawDestructor=a,this.baseClass=s,this.getActualType=u,this.upcast=d,this.downcast=f,this.pureVirtualFunctions=[]}var Ot=(e,t,n)=>{for(;t!==n;)t.upcast||x(`Expected null or instance of ${n.name}, got an instance of ${t.name}`),e=t.upcast(e),t=t.baseClass;return e};function Ya(e,t){if(t===null)return this.isReference&&x(`null is not a valid ${this.name}`),0;t.$$||x(`Cannot pass "${xt(t)}" as a ${this.name}`),t.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`);var n=t.$$.ptrType.registeredClass,a=Ot(t.$$.ptr,n,this.registeredClass);return a}function Ja(e,t){var n;if(t===null)return this.isReference&&x(`null is not a valid ${this.name}`),this.isSmartPointer?(n=this.rawConstructor(),e!==null&&e.push(this.rawDestructor,n),n):0;(!t||!t.$$)&&x(`Cannot pass "${xt(t)}" as a ${this.name}`),t.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&t.$$.ptrType.isConst&&x(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);var a=t.$$.ptrType.registeredClass;if(n=Ot(t.$$.ptr,a,this.registeredClass),this.isSmartPointer)switch(t.$$.smartPtr===void 0&&x("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?n=t.$$.smartPtr:x(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:n=t.$$.smartPtr;break;case 2:if(t.$$.smartPtrType===this)n=t.$$.smartPtr;else{var s=t.clone();n=this.rawShare(n,le.toHandle(()=>s.delete())),e!==null&&e.push(this.rawDestructor,n)}break;default:x("Unsupporting sharing policy")}return n}function Qa(e,t){if(t===null)return this.isReference&&x(`null is not a valid ${this.name}`),0;t.$$||x(`Cannot pass "${xt(t)}" as a ${this.name}`),t.$$.ptr||x(`Cannot pass deleted object as a pointer of type ${this.name}`),t.$$.ptrType.isConst&&x(`Cannot convert argument of type ${t.$$.ptrType.name} to parameter type ${this.name}`);var n=t.$$.ptrType.registeredClass,a=Ot(t.$$.ptr,n,this.registeredClass);return a}function Rr(e){return this.fromWireType(D[e>>2])}var Xa=()=>{Object.assign(nt.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){var t;(t=this.rawDestructor)===null||t===void 0||t.call(this,e)},argPackAdvance:se,readValueFromPointer:Rr,deleteObject(e){e!==null&&e.delete()},fromWireType:Ba})};function nt(e,t,n,a,s,u,d,f,m,w,_){this.name=e,this.registeredClass=t,this.isReference=n,this.isConst=a,this.isSmartPointer=s,this.pointeeType=u,this.sharingPolicy=d,this.rawGetPointee=f,this.rawConstructor=m,this.rawShare=w,this.rawDestructor=_,!s&&t.baseClass===void 0?a?(this.toWireType=Ya,this.destructorFunction=null):(this.toWireType=Qa,this.destructorFunction=null):this.toWireType=Ja}var xr=(e,t,n)=>{i.hasOwnProperty(e)||et("Replacing nonexistant public symbol"),i[e].overloadTable!==void 0&&n!==void 0?i[e].overloadTable[n]=t:(i[e]=t,i[e].argCount=n)},Za=(e,t,n)=>{var a=i["dynCall_"+e];return n&&n.length?a.apply(null,[t].concat(n)):a.call(null,t)},at=[],kr,B=e=>{var t=at[e];return t||(e>=at.length&&(at.length=e+1),at[e]=t=kr.get(e)),t},Ka=(e,t,n)=>{if(e.includes("j"))return Za(e,t,n);var a=B(t).apply(null,n);return a},eo=(e,t)=>{var n=[];return function(){return n.length=0,Object.assign(n,arguments),Ka(e,t,n)}},re=(e,t)=>{e=J(e);function n(){return e.includes("j")?eo(e,t):B(t)}var a=n();return typeof a!="function"&&x(`unknown function pointer with signature ${e}: ${t}`),a},to=(e,t)=>{var n=Ue(t,function(a){this.name=t,this.message=a;var s=new Error(a).stack;s!==void 0&&(this.stack=this.toString()+` +`+s.replace(/^Error(:[^\n]*)?\n/,""))});return n.prototype=Object.create(e.prototype),n.prototype.constructor=n,n.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},n},Ir,Fr=e=>{var t=zr(e),n=J(t);return de(t),n},ot=(e,t)=>{var n=[],a={};function s(u){if(!a[u]&&!we[u]){if(Ke[u]){Ke[u].forEach(s);return}n.push(u),a[u]=!0}}throw t.forEach(s),new Ir(`${e}: `+n.map(Fr).join([", "]))},ro=(e,t,n,a,s,u,d,f,m,w,_,T,E)=>{_=J(_),u=re(s,u),f&&(f=re(d,f)),w&&(w=re(m,w)),E=re(T,E);var M=za(_);Et(M,function(){ot(`Cannot construct ${_} due to unbound types`,[a])}),be([e,t,n],a?[a]:[],function(H){H=H[0];var N,F;a?(N=H.registeredClass,F=N.instancePrototype):F=rt.prototype;var Q=Ue(_,function(){if(Object.getPrototypeOf(this)!==y)throw new Ee("Use 'new' to construct "+_);if(P.constructor_body===void 0)throw new Ee(_+" has no accessible constructor");var en=P.constructor_body[arguments.length];if(en===void 0)throw new Ee(`Tried to invoke ctor of ${_} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(P.constructor_body).toString()}) parameters instead!`);return en.apply(this,arguments)}),y=Object.create(F,{constructor:{value:Q}});Q.prototype=y;var P=new Ga(_,Q,y,E,N,u,f,w);if(P.baseClass){var z,Y;(Y=(z=P.baseClass).__derivedClasses)!==null&&Y!==void 0||(z.__derivedClasses=[]),P.baseClass.__derivedClasses.push(P)}var Oe=new nt(_,P,!0,!1,!1),ct=new nt(_+"*",P,!1,!1,!1),Kr=new nt(_+" const*",P,!1,!0,!1);return Ar[e]={pointerType:ct,constPointerType:Kr},xr(M,Q),[Oe,ct,Kr]})},Mt=(e,t)=>{for(var n=[],a=0;a>2]);return n};function no(e){for(var t=1;t{var d=Mt(t,n);s=re(a,s),be([],[e],function(f){f=f[0];var m=`constructor ${f.name}`;if(f.registeredClass.constructor_body===void 0&&(f.registeredClass.constructor_body=[]),f.registeredClass.constructor_body[t-1]!==void 0)throw new Ee(`Cannot register multiple constructors with identical number of parameters (${t-1}) for class '${f.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return f.registeredClass.constructor_body[t-1]=()=>{ot(`Cannot construct ${f.name} due to unbound types`,d)},be([],d,w=>(w.splice(1,0,null),f.registeredClass.constructor_body[t-1]=At(m,w,null,s,u),[])),[]})},Ur=e=>{e=e.trim();const t=e.indexOf("(");return t!==-1?e.substr(0,t):e},oo=(e,t,n,a,s,u,d,f,m)=>{var w=Mt(n,a);t=J(t),t=Ur(t),u=re(s,u),be([],[e],function(_){_=_[0];var T=`${_.name}.${t}`;t.startsWith("@@")&&(t=Symbol[t.substring(2)]),f&&_.registeredClass.pureVirtualFunctions.push(t);function E(){ot(`Cannot call ${T} due to unbound types`,w)}var M=_.registeredClass.instancePrototype,H=M[t];return H===void 0||H.overloadTable===void 0&&H.className!==_.name&&H.argCount===n-2?(E.argCount=n-2,E.className=_.name,M[t]=E):(Dr(M,t,T),M[t].overloadTable[n-2]=E),be([],w,function(N){var F=At(T,N,_,u,d);return M[t].overloadTable===void 0?(F.argCount=n-2,M[t]=F):M[t].overloadTable[n-2]=F,[]}),[]})};function io(){Object.assign(Wr.prototype,{get(e){return this.allocated[e]},has(e){return this.allocated[e]!==void 0},allocate(e){var t=this.freelist.pop()||this.allocated.length;return this.allocated[t]=e,t},free(e){this.allocated[e]=void 0,this.freelist.push(e)}})}function Wr(){this.allocated=[void 0],this.freelist=[]}var te=new Wr,Dt=e=>{e>=te.reserved&&--te.get(e).refcount===0&&te.free(e)},so=()=>{for(var e=0,t=te.reserved;t{te.allocated.push({value:void 0},{value:null},{value:!0},{value:!1}),te.reserved=te.allocated.length,i.count_emval_handles=so},le={toValue:e=>(e||x("Cannot use deleted val. handle = "+e),te.get(e).value),toHandle:e=>{switch(e){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:return te.allocate({refcount:1,value:e})}}},uo=(e,t)=>{t=J(t),ie(e,{name:t,fromWireType:n=>{var a=le.toValue(n);return Dt(n),a},toWireType:(n,a)=>le.toHandle(a),argPackAdvance:se,readValueFromPointer:_t,destructorFunction:null})},lo=(e,t,n)=>{switch(t){case 1:return n?function(a){return this.fromWireType(k[a>>0])}:function(a){return this.fromWireType(R[a>>0])};case 2:return n?function(a){return this.fromWireType(Z[a>>1])}:function(a){return this.fromWireType(I[a>>1])};case 4:return n?function(a){return this.fromWireType(A[a>>2])}:function(a){return this.fromWireType(D[a>>2])};default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},fo=(e,t,n,a)=>{t=J(t);function s(){}s.values={},ie(e,{name:t,constructor:s,fromWireType:function(u){return this.constructor.values[u]},toWireType:(u,d)=>d.value,argPackAdvance:se,readValueFromPointer:lo(t,n,a),destructorFunction:null}),Et(t,s)},Rt=(e,t)=>{var n=we[e];return n===void 0&&x(t+" has unknown type "+Fr(e)),n},ho=(e,t,n)=>{var a=Rt(e,"enum");t=J(t);var s=a.constructor,u=Object.create(a.constructor.prototype,{value:{value:n},constructor:{value:Ue(`${a.name}_${t}`,function(){})}});s.values[n]=u,s[t]=u},xt=e=>{if(e===null)return"null";var t=typeof e;return t==="object"||t==="array"||t==="function"?e.toString():""+e},po=(e,t)=>{switch(t){case 4:return function(n){return this.fromWireType(me[n>>2])};case 8:return function(n){return this.fromWireType(ce[n>>3])};default:throw new TypeError(`invalid float width (${t}): ${e}`)}},mo=(e,t,n)=>{t=J(t),ie(e,{name:t,fromWireType:a=>a,toWireType:(a,s)=>s,argPackAdvance:se,readValueFromPointer:po(t,n),destructorFunction:null})},vo=(e,t,n,a,s,u,d)=>{var f=Mt(t,n);e=J(e),e=Ur(e),s=re(a,s),Et(e,function(){ot(`Cannot call ${e} due to unbound types`,f)},t-1),be([],f,function(m){var w=[m[0],null].concat(m.slice(1));return xr(e,At(e,w,null,s,u),t-1),[]})},yo=(e,t,n)=>{switch(t){case 1:return n?a=>k[a>>0]:a=>R[a>>0];case 2:return n?a=>Z[a>>1]:a=>I[a>>1];case 4:return n?a=>A[a>>2]:a=>D[a>>2];default:throw new TypeError(`invalid integer width (${t}): ${e}`)}},go=(e,t,n,a,s)=>{t=J(t);var u=_=>_;if(a===0){var d=32-8*n;u=_=>_<>>d}var f=t.includes("unsigned"),m=(_,T)=>{},w;f?w=function(_,T){return m(T,this.name),T>>>0}:w=function(_,T){return m(T,this.name),T},ie(e,{name:t,fromWireType:u,toWireType:w,argPackAdvance:se,readValueFromPointer:yo(t,n,a!==0),destructorFunction:null})},wo=(e,t,n)=>{var a=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],s=a[t];function u(d){var f=D[d>>2],m=D[d+4>>2];return new s(k.buffer,m,f)}n=J(n),ie(e,{name:n,fromWireType:u,argPackAdvance:se,readValueFromPointer:u},{ignoreDuplicateRegistrations:!0})},jr=(e,t,n,a)=>{if(!(a>0))return 0;for(var s=n,u=n+a-1,d=0;d=55296&&f<=57343){var m=e.charCodeAt(++d);f=65536+((f&1023)<<10)|m&1023}if(f<=127){if(n>=u)break;t[n++]=f}else if(f<=2047){if(n+1>=u)break;t[n++]=192|f>>6,t[n++]=128|f&63}else if(f<=65535){if(n+2>=u)break;t[n++]=224|f>>12,t[n++]=128|f>>6&63,t[n++]=128|f&63}else{if(n+3>=u)break;t[n++]=240|f>>18,t[n++]=128|f>>12&63,t[n++]=128|f>>6&63,t[n++]=128|f&63}}return t[n]=0,n-s},bo=(e,t,n)=>jr(e,R,t,n),Lr=e=>{for(var t=0,n=0;n=55296&&a<=57343?(t+=4,++n):t+=3}return t},Hr=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,Co=(e,t,n)=>{for(var a=t+n,s=t;e[s]&&!(s>=a);)++s;if(s-t>16&&e.buffer&&Hr)return Hr.decode(e.subarray(t,s));for(var u="";t>10,56320|w&1023)}}return u},kt=(e,t)=>e?Co(R,e,t):"",$o=(e,t)=>{t=J(t);var n=t==="std::string";ie(e,{name:t,fromWireType(a){var s=D[a>>2],u=a+4,d;if(n)for(var f=u,m=0;m<=s;++m){var w=u+m;if(m==s||R[w]==0){var _=w-f,T=kt(f,_);d===void 0?d=T:(d+="\0",d+=T),f=w+1}}else{for(var E=new Array(s),m=0;m>2]=u,n&&d)bo(s,m,u+1);else if(d)for(var w=0;w255&&(de(m),x("String has UTF-16 code units that do not fit in 8 bits")),R[m+w]=_}else for(var w=0;w{for(var n=e,a=n>>1,s=a+t/2;!(a>=s)&&I[a];)++a;if(n=a<<1,n-e>32&&Br)return Br.decode(R.subarray(e,n));for(var u="",d=0;!(d>=t/2);++d){var f=Z[e+d*2>>1];if(f==0)break;u+=String.fromCharCode(f)}return u},So=(e,t,n)=>{var a;if((a=n)!==null&&a!==void 0||(n=2147483647),n<2)return 0;n-=2;for(var s=t,u=n>1]=f,t+=2}return Z[t>>1]=0,t-s},Po=e=>e.length*2,To=(e,t)=>{for(var n=0,a="";!(n>=t/4);){var s=A[e+n*4>>2];if(s==0)break;if(++n,s>=65536){var u=s-65536;a+=String.fromCharCode(55296|u>>10,56320|u&1023)}else a+=String.fromCharCode(s)}return a},Eo=(e,t,n)=>{var a;if((a=n)!==null&&a!==void 0||(n=2147483647),n<4)return 0;for(var s=t,u=s+n-4,d=0;d=55296&&f<=57343){var m=e.charCodeAt(++d);f=65536+((f&1023)<<10)|m&1023}if(A[t>>2]=f,t+=4,t+4>u)break}return A[t>>2]=0,t-s},Oo=e=>{for(var t=0,n=0;n=55296&&a<=57343&&++n,t+=4}return t},Mo=(e,t,n)=>{n=J(n);var a,s,u,d,f;t===2?(a=_o,s=So,d=Po,u=()=>I,f=1):t===4&&(a=To,s=Eo,d=Oo,u=()=>D,f=2),ie(e,{name:n,fromWireType:m=>{for(var w=D[m>>2],_=u(),T,E=m+4,M=0;M<=w;++M){var H=m+4+M*t;if(M==w||_[H>>f]==0){var N=H-E,F=a(E,N);T===void 0?T=F:(T+="\0",T+=F),E=H+t}}return de(m),T},toWireType:(m,w)=>{typeof w!="string"&&x(`Cannot pass non-string to C++ string type ${n}`);var _=d(w),T=Ut(4+_+t);return D[T>>2]=_>>f,s(w,T+4,_+t),m!==null&&m.push(de,T),T},argPackAdvance:se,readValueFromPointer:_t,destructorFunction(m){de(m)}})},Ao=(e,t,n,a,s,u)=>{Ze[e]={name:J(t),rawConstructor:re(n,a),rawDestructor:re(s,u),fields:[]}},Do=(e,t,n,a,s,u,d,f,m,w)=>{Ze[e].fields.push({fieldName:J(t),getterReturnType:n,getter:re(a,s),getterContext:u,setterArgumentType:d,setter:re(f,m),setterContext:w})},Ro=(e,t)=>{t=J(t),ie(e,{isVoid:!0,name:t,argPackAdvance:0,fromWireType:()=>{},toWireType:(n,a)=>{}})},It=[],xo=(e,t,n,a)=>(e=It[e],t=le.toValue(t),e(null,t,n,a)),ko={},Io=e=>{var t=ko[e];return t===void 0?J(e):t},Vr=()=>{if(typeof globalThis=="object")return globalThis;function e(t){t.$$$embind_global$$$=t;var n=typeof $$$embind_global$$$=="object"&&t.$$$embind_global$$$==t;return n||delete t.$$$embind_global$$$,n}if(typeof $$$embind_global$$$=="object"||(typeof global=="object"&&e(global)?$$$embind_global$$$=global:typeof self=="object"&&e(self)&&($$$embind_global$$$=self),typeof $$$embind_global$$$=="object"))return $$$embind_global$$$;throw Error("unable to get global object.")},Fo=e=>e===0?le.toHandle(Vr()):(e=Io(e),le.toHandle(Vr()[e])),Uo=e=>{var t=It.length;return It.push(e),t},Wo=(e,t)=>{for(var n=new Array(e),a=0;a>2],"parameter "+a);return n},jo=Reflect.construct,Lo=(e,t,n)=>{var a=[],s=e.toWireType(a,n);return a.length&&(D[t>>2]=le.toHandle(a)),s},Ho=(e,t,n)=>{var a=Wo(e,t),s=a.shift();e--;var u=new Array(e),d=(m,w,_,T)=>{for(var E=0,M=0;Mm.name).join(", ")}) => ${s.name}>`;return Uo(Ue(f,d))},Bo=e=>{e>4&&(te.get(e).refcount+=1)},Vo=e=>{var t=le.toValue(e);$t(t),Dt(e)},qo=(e,t)=>{e=Rt(e,"_emval_take_value");var n=e.readValueFromPointer(t);return le.toHandle(n)},No=()=>{K("")},zo=(e,t,n)=>R.copyWithin(e,t,t+n),Go=()=>2147483648,Yo=e=>{var t=W.buffer,n=(e-t.byteLength+65535)/65536;try{return W.grow(n),Se(),1}catch(a){}},Jo=e=>{var t=R.length;e>>>=0;var n=Go();if(e>n)return!1;for(var a=(m,w)=>m+(w-m%w)%w,s=1;s<=4;s*=2){var u=t*(1+.2/s);u=Math.min(u,e+100663296);var d=Math.min(n,a(Math.max(e,u),65536)),f=Yo(d);if(f)return!0}return!1},Ft={},Qo=()=>v||"./this.program",We=()=>{if(!We.strings){var e=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",t={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:e,_:Qo()};for(var n in Ft)Ft[n]===void 0?delete t[n]:t[n]=Ft[n];var a=[];for(var n in t)a.push(`${n}=${t[n]}`);We.strings=a}return We.strings},Xo=(e,t)=>{for(var n=0;n>0]=e.charCodeAt(n);k[t>>0]=0},Zo=(e,t)=>{var n=0;return We().forEach((a,s)=>{var u=t+n;D[e+s*4>>2]=u,Xo(a,u),n+=a.length+1}),0},Ko=(e,t)=>{var n=We();D[e>>2]=n.length;var a=0;return n.forEach(s=>a+=s.length+1),D[t>>2]=a,0},ei=e=>e,it=e=>e%4===0&&(e%100!==0||e%400===0),ti=(e,t)=>{for(var n=0,a=0;a<=t;n+=e[a++]);return n},qr=[31,29,31,30,31,30,31,31,30,31,30,31],Nr=[31,28,31,30,31,30,31,31,30,31,30,31],ri=(e,t)=>{for(var n=new Date(e.getTime());t>0;){var a=it(n.getFullYear()),s=n.getMonth(),u=(a?qr:Nr)[s];if(t>u-n.getDate())t-=u-n.getDate()+1,n.setDate(1),s<11?n.setMonth(s+1):(n.setMonth(0),n.setFullYear(n.getFullYear()+1));else return n.setDate(n.getDate()+t),n}return n};function ni(e,t,n){var a=Lr(e)+1,s=new Array(a);return jr(e,s,0,s.length),s}var ai=(e,t)=>{k.set(e,t)},oi=(e,t,n,a)=>{var s=D[a+40>>2],u={tm_sec:A[a>>2],tm_min:A[a+4>>2],tm_hour:A[a+8>>2],tm_mday:A[a+12>>2],tm_mon:A[a+16>>2],tm_year:A[a+20>>2],tm_wday:A[a+24>>2],tm_yday:A[a+28>>2],tm_isdst:A[a+32>>2],tm_gmtoff:A[a+36>>2],tm_zone:s?kt(s):""},d=kt(n),f={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var m in f)d=d.replace(new RegExp(m,"g"),f[m]);var w=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],_=["January","February","March","April","May","June","July","August","September","October","November","December"];function T(y,P,z){for(var Y=typeof y=="number"?y.toString():y||"";Y.length0?1:0}var Y;return(Y=z(y.getFullYear()-P.getFullYear()))===0&&(Y=z(y.getMonth()-P.getMonth()))===0&&(Y=z(y.getDate()-P.getDate())),Y}function H(y){switch(y.getDay()){case 0:return new Date(y.getFullYear()-1,11,29);case 1:return y;case 2:return new Date(y.getFullYear(),0,3);case 3:return new Date(y.getFullYear(),0,2);case 4:return new Date(y.getFullYear(),0,1);case 5:return new Date(y.getFullYear()-1,11,31);case 6:return new Date(y.getFullYear()-1,11,30)}}function N(y){var P=ri(new Date(y.tm_year+1900,0,1),y.tm_yday),z=new Date(P.getFullYear(),0,4),Y=new Date(P.getFullYear()+1,0,4),Oe=H(z),ct=H(Y);return M(Oe,P)<=0?M(ct,P)<=0?P.getFullYear()+1:P.getFullYear():P.getFullYear()-1}var F={"%a":y=>w[y.tm_wday].substring(0,3),"%A":y=>w[y.tm_wday],"%b":y=>_[y.tm_mon].substring(0,3),"%B":y=>_[y.tm_mon],"%C":y=>{var P=y.tm_year+1900;return E(P/100|0,2)},"%d":y=>E(y.tm_mday,2),"%e":y=>T(y.tm_mday,2," "),"%g":y=>N(y).toString().substring(2),"%G":y=>N(y),"%H":y=>E(y.tm_hour,2),"%I":y=>{var P=y.tm_hour;return P==0?P=12:P>12&&(P-=12),E(P,2)},"%j":y=>E(y.tm_mday+ti(it(y.tm_year+1900)?qr:Nr,y.tm_mon-1),3),"%m":y=>E(y.tm_mon+1,2),"%M":y=>E(y.tm_min,2),"%n":()=>` +`,"%p":y=>y.tm_hour>=0&&y.tm_hour<12?"AM":"PM","%S":y=>E(y.tm_sec,2),"%t":()=>" ","%u":y=>y.tm_wday||7,"%U":y=>{var P=y.tm_yday+7-y.tm_wday;return E(Math.floor(P/7),2)},"%V":y=>{var P=Math.floor((y.tm_yday+7-(y.tm_wday+6)%7)/7);if((y.tm_wday+371-y.tm_yday-2)%7<=2&&P++,P){if(P==53){var z=(y.tm_wday+371-y.tm_yday)%7;z!=4&&(z!=3||!it(y.tm_year))&&(P=1)}}else{P=52;var Y=(y.tm_wday+7-y.tm_yday-1)%7;(Y==4||Y==5&&it(y.tm_year%400-1))&&P++}return E(P,2)},"%w":y=>y.tm_wday,"%W":y=>{var P=y.tm_yday+7-(y.tm_wday+6)%7;return E(Math.floor(P/7),2)},"%y":y=>(y.tm_year+1900).toString().substring(2),"%Y":y=>y.tm_year+1900,"%z":y=>{var P=y.tm_gmtoff,z=P>=0;return P=Math.abs(P)/60,P=P/60*100+P%60,(z?"+":"-")+("0000"+P).slice(-4)},"%Z":y=>y.tm_zone,"%%":()=>"%"};d=d.replace(/%%/g,"\0\0");for(var m in F)d.includes(m)&&(d=d.replace(new RegExp(m,"g"),F[m](u)));d=d.replace(/\0\0/g,"%");var Q=ni(d);return Q.length>t?0:(ai(Q,e),Q.length-1)},ii=(e,t,n,a,s)=>oi(e,t,n,a);Pr=i.InternalError=class extends Error{constructor(e){super(e),this.name="InternalError"}},Da(),Ee=i.BindingError=class extends Error{constructor(e){super(e),this.name="BindingError"}},Va(),ja(),Xa(),Ir=i.UnboundTypeError=to(Error,"UnboundTypeError"),io(),co();var si={s:ba,u:Ca,b:_a,g:Sa,q:Pa,J:Ta,f:Ea,V:Oa,d:$a,da:Ma,Q:Aa,_:xa,ca:ro,ba:ao,w:oo,Y:uo,x:fo,h:ho,L:mo,M:vo,t:go,o:wo,K:$o,C:Mo,A:Ao,ea:Do,$:Ro,R:xo,ha:Dt,fa:Fo,Z:Ho,N:Bo,O:Vo,aa:qo,B:No,X:zo,W:Jo,T:Zo,U:Ko,E:_i,D:fi,F:$i,n:Si,a:ci,e:pi,m:di,k:vi,H:bi,v:gi,G:Ci,z:Ti,P:Oi,l:mi,j:hi,c:li,p:ui,I:wi,r:Pi,i:yi,y:Ei,ga:ei,S:ii},G=wa(),de=i._free=e=>(de=i._free=G.ka)(e),Ut=i._malloc=e=>(Ut=i._malloc=G.la)(e),zr=e=>(zr=G.na)(e),L=(e,t)=>(L=G.oa)(e,t),je=e=>(je=G.pa)(e),V=()=>(V=G.qa)(),q=e=>(q=G.ra)(e),Gr=e=>(Gr=G.sa)(e),Yr=e=>(Yr=G.ta)(e),Jr=(e,t,n)=>(Jr=G.ua)(e,t,n),Qr=e=>(Qr=G.va)(e);i.dynCall_viijii=(e,t,n,a,s,u,d)=>(i.dynCall_viijii=G.wa)(e,t,n,a,s,u,d);var Xr=i.dynCall_jiiii=(e,t,n,a,s)=>(Xr=i.dynCall_jiiii=G.xa)(e,t,n,a,s);i.dynCall_iiiiij=(e,t,n,a,s,u,d)=>(i.dynCall_iiiiij=G.ya)(e,t,n,a,s,u,d),i.dynCall_iiiiijj=(e,t,n,a,s,u,d,f,m)=>(i.dynCall_iiiiijj=G.za)(e,t,n,a,s,u,d,f,m),i.dynCall_iiiiiijj=(e,t,n,a,s,u,d,f,m,w)=>(i.dynCall_iiiiiijj=G.Aa)(e,t,n,a,s,u,d,f,m,w);function ci(e,t){var n=V();try{return B(e)(t)}catch(a){if(q(n),a!==a+0)throw a;L(1,0)}}function ui(e,t,n,a){var s=V();try{B(e)(t,n,a)}catch(u){if(q(s),u!==u+0)throw u;L(1,0)}}function li(e,t,n){var a=V();try{B(e)(t,n)}catch(s){if(q(a),s!==s+0)throw s;L(1,0)}}function di(e,t,n,a){var s=V();try{return B(e)(t,n,a)}catch(u){if(q(s),u!==u+0)throw u;L(1,0)}}function fi(e,t,n,a,s){var u=V();try{return B(e)(t,n,a,s)}catch(d){if(q(u),d!==d+0)throw d;L(1,0)}}function hi(e,t){var n=V();try{B(e)(t)}catch(a){if(q(n),a!==a+0)throw a;L(1,0)}}function pi(e,t,n){var a=V();try{return B(e)(t,n)}catch(s){if(q(a),s!==s+0)throw s;L(1,0)}}function mi(e){var t=V();try{B(e)()}catch(n){if(q(t),n!==n+0)throw n;L(1,0)}}function vi(e,t,n,a,s){var u=V();try{return B(e)(t,n,a,s)}catch(d){if(q(u),d!==d+0)throw d;L(1,0)}}function yi(e,t,n,a,s,u,d,f,m,w,_){var T=V();try{B(e)(t,n,a,s,u,d,f,m,w,_)}catch(E){if(q(T),E!==E+0)throw E;L(1,0)}}function gi(e,t,n,a,s,u,d){var f=V();try{return B(e)(t,n,a,s,u,d)}catch(m){if(q(f),m!==m+0)throw m;L(1,0)}}function wi(e,t,n,a,s){var u=V();try{B(e)(t,n,a,s)}catch(d){if(q(u),d!==d+0)throw d;L(1,0)}}function bi(e,t,n,a,s,u){var d=V();try{return B(e)(t,n,a,s,u)}catch(f){if(q(d),f!==f+0)throw f;L(1,0)}}function Ci(e,t,n,a,s,u,d,f){var m=V();try{return B(e)(t,n,a,s,u,d,f)}catch(w){if(q(m),w!==w+0)throw w;L(1,0)}}function $i(e,t,n,a){var s=V();try{return B(e)(t,n,a)}catch(u){if(q(s),u!==u+0)throw u;L(1,0)}}function _i(e,t,n,a){var s=V();try{return B(e)(t,n,a)}catch(u){if(q(s),u!==u+0)throw u;L(1,0)}}function Si(e){var t=V();try{return B(e)()}catch(n){if(q(t),n!==n+0)throw n;L(1,0)}}function Pi(e,t,n,a,s,u,d,f){var m=V();try{B(e)(t,n,a,s,u,d,f)}catch(w){if(q(m),w!==w+0)throw w;L(1,0)}}function Ti(e,t,n,a,s,u,d,f,m,w,_,T){var E=V();try{return B(e)(t,n,a,s,u,d,f,m,w,_,T)}catch(M){if(q(E),M!==M+0)throw M;L(1,0)}}function Ei(e,t,n,a,s,u,d,f,m,w,_,T,E,M,H,N){var F=V();try{B(e)(t,n,a,s,u,d,f,m,w,_,T,E,M,H,N)}catch(Q){if(q(F),Q!==Q+0)throw Q;L(1,0)}}function Oi(e,t,n,a,s){var u=V();try{return Xr(e,t,n,a,s)}catch(d){if(q(u),d!==d+0)throw d;L(1,0)}}var st;ge=function e(){st||Zr(),st||(ge=e)};function Zr(){if(oe>0||(Ne(),oe>0))return;function e(){st||(st=!0,i.calledRun=!0,!j&&(ht(),c(i),i.onRuntimeInitialized&&i.onRuntimeInitialized(),pt()))}i.setStatus?(i.setStatus("Running..."),setTimeout(function(){setTimeout(function(){i.setStatus("")},1),e()},1)):e()}if(i.preInit)for(typeof i.preInit=="function"&&(i.preInit=[i.preInit]);i.preInit.length>0;)i.preInit.pop()();return Zr(),o.ready}})();function Mn(r){return lt(He,r)}function An(r){return Tn(He,r)}async function Dn(r,o){return En(He,r,o)}async function Rn(r,o){return On(He,r,o)}var Me;class dt extends EventTarget{constructor(o={}){var i;super(),tn(this,Me,void 0);try{const c=(i=o==null?void 0:o.formats)==null?void 0:i.filter(l=>l!=="unknown");if((c==null?void 0:c.length)===0)throw new TypeError("Hint option provided, but is empty.");c==null||c.forEach(l=>{if(!Le.has(l))throw new TypeError(`Failed to read the 'formats' property from 'BarcodeDetectorOptions': The provided value '${l}' is not a valid enum value of type BarcodeFormat.`)}),rn(this,Me,c!=null?c:[]),Mn().then(l=>{this.dispatchEvent(new CustomEvent("load",{detail:l}))}).catch(l=>{this.dispatchEvent(new CustomEvent("error",{detail:l}))})}catch(c){throw Qt(c,"Failed to construct 'BarcodeDetector'")}}static async getSupportedFormats(){return nn.filter(o=>o!=="unknown")}async detect(o){try{const i=await dn(o);if(i===null)return[];let c;try{Yt(i)?c=await Dn(i,{tryHarder:!0,formats:jt(this,Me).map(l=>Le.get(l))}):c=await Rn(i,{tryHarder:!0,formats:jt(this,Me).map(l=>Le.get(l))})}catch(l){throw console.error(l),new DOMException("Barcode detection service unavailable.","NotSupportedError")}return c.map(l=>{const{topLeft:{x:h,y:v},topRight:{x:g,y:b},bottomLeft:{x:p,y:C},bottomRight:{x:S,y:$}}=l.position,U=Math.min(h,g,p,S),W=Math.min(v,b,C,$),j=Math.max(h,g,p,S),k=Math.max(v,b,C,$);return{boundingBox:new DOMRectReadOnly(U,W,j-U,k-W),rawValue:l.text,format:an(l.format),cornerPoints:[{x:h,y:v},{x:g,y:b},{x:S,y:$},{x:p,y:C}]}})}catch(i){throw Qt(i,"Failed to execute 'detect' on 'BarcodeDetector'")}}}Me=new WeakMap;const ft=(r,o,i="error")=>{let c,l;const h=new Promise((v,g)=>{c=v,l=g,r.addEventListener(o,c),r.addEventListener(i,l)});return h.finally(()=>{r.removeEventListener(o,c),r.removeEventListener(i,l)}),h},tr=r=>new Promise(o=>setTimeout(o,r));class xn extends Error{constructor(){super("can't process cross-origin image"),this.name="DropImageFetchError"}}class rr extends Error{constructor(){super("this browser has no Stream API support"),this.name="StreamApiNotSupportedError"}}class kn extends Error{constructor(){super("camera access is only permitted in secure context. Use HTTPS or localhost rather than HTTP."),this.name="InsecureContextError"}}class In extends Error{constructor(){super("Loading camera stream timed out after 6 seconds. If you are on iOS in PWA mode, this is a known issue (see https://github.com/gruhn/vue-qrcode-reader/issues/298)"),this.name="StreamLoadTimeoutError"}}let nr;function ar(r){nr=new dt({formats:r})}const Fn=async(r,{detectHandler:o,locateHandler:i,minDelay:c,formats:l})=>{console.debug("[vue-qrcode-reader] start scanning"),ar(l);const h=v=>async g=>{if(r.readyState===0)console.debug("[vue-qrcode-reader] stop scanning: video element readyState is 0");else{const{lastScanned:b,contentBefore:p,lastScanHadContent:C}=v;if(g-b!p.includes(j.rawValue));$&&o(S);const U=S.length>0;U&&i(S),!U&&C&&i(S);const W={lastScanned:g,lastScanHadContent:U,contentBefore:$?S.map(j=>j.rawValue):p};window.requestAnimationFrame(h(W))}}};h({lastScanned:performance.now(),contentBefore:[],lastScanHadContent:!1})(performance.now())},Un=async r=>{if(r.startsWith("http")&&r.includes(location.host)===!1)throw new xn;const o=document.createElement("img");return o.src=r,await ft(o,"load"),o},or=async(r,o=["qr_code"])=>await new dt({formats:o}).detect(r),Wn=async(r,o=["qr_code"])=>{const i=new dt({formats:o}),c=await Un(r);return await i.detect(c)};var ir={},X={};Object.defineProperty(X,"__esModule",{value:!0}),X.compactObject=lr,X.deprecated=Gn;var jn=X.detectBrowser=Yn;X.disableLog=qn,X.disableWarnings=Nn,X.extractVersion=Be,X.filterStats=Jn,X.log=zn,X.walkStats=Ve,X.wrapPeerConnectionEvent=Vn;function Ln(r,o,i){return o=Hn(o),o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i,r}function Hn(r){var o=Bn(r,"string");return fe(o)==="symbol"?o:String(o)}function Bn(r,o){if(fe(r)!=="object"||r===null)return r;var i=r[Symbol.toPrimitive];if(i!==void 0){var c=i.call(r,o);if(fe(c)!=="object")return c;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(r)}function fe(r){"@babel/helpers - typeof";return fe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},fe(r)}var sr=!0,cr=!0;function Be(r,o,i){var c=r.match(o);return c&&c.length>=i&&parseInt(c[i],10)}function Vn(r,o,i){if(r.RTCPeerConnection){var c=r.RTCPeerConnection.prototype,l=c.addEventListener;c.addEventListener=function(v,g){if(v!==o)return l.apply(this,arguments);var b=function(C){var S=i(C);S&&(g.handleEvent?g.handleEvent(S):g(S))};return this._eventMap=this._eventMap||{},this._eventMap[o]||(this._eventMap[o]=new Map),this._eventMap[o].set(g,b),l.apply(this,[v,b])};var h=c.removeEventListener;c.removeEventListener=function(v,g){if(v!==o||!this._eventMap||!this._eventMap[o])return h.apply(this,arguments);if(!this._eventMap[o].has(g))return h.apply(this,arguments);var b=this._eventMap[o].get(g);return this._eventMap[o].delete(g),this._eventMap[o].size===0&&delete this._eventMap[o],Object.keys(this._eventMap).length===0&&delete this._eventMap,h.apply(this,[v,b])},Object.defineProperty(c,"on"+o,{get:function(){return this["_on"+o]},set:function(g){this["_on"+o]&&(this.removeEventListener(o,this["_on"+o]),delete this["_on"+o]),g&&this.addEventListener(o,this["_on"+o]=g)},enumerable:!0,configurable:!0})}}function qn(r){return typeof r!="boolean"?new Error("Argument type: "+fe(r)+". Please use a boolean."):(sr=r,r?"adapter.js logging disabled":"adapter.js logging enabled")}function Nn(r){return typeof r!="boolean"?new Error("Argument type: "+fe(r)+". Please use a boolean."):(cr=!r,"adapter.js deprecation warnings "+(r?"disabled":"enabled"))}function zn(){if((typeof window>"u"?"undefined":fe(window))==="object"){if(sr)return;typeof console<"u"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function Gn(r,o){cr&&console.warn(r+" is deprecated, please use "+o+" instead.")}function Yn(r){var o={browser:null,version:null};if(typeof r>"u"||!r.navigator||!r.navigator.userAgent)return o.browser="Not a browser.",o;var i=r.navigator;if(i.mozGetUserMedia)o.browser="firefox",o.version=Be(i.userAgent,/Firefox\/(\d+)\./,1);else if(i.webkitGetUserMedia||r.isSecureContext===!1&&r.webkitRTCPeerConnection)o.browser="chrome",o.version=Be(i.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else if(r.RTCPeerConnection&&i.userAgent.match(/AppleWebKit\/(\d+)\./))o.browser="safari",o.version=Be(i.userAgent,/AppleWebKit\/(\d+)\./,1),o.supportsUnifiedPlan=r.RTCRtpTransceiver&&"currentDirection"in r.RTCRtpTransceiver.prototype;else return o.browser="Not a supported browser.",o;return o}function ur(r){return Object.prototype.toString.call(r)==="[object Object]"}function lr(r){return ur(r)?Object.keys(r).reduce(function(o,i){var c=ur(r[i]),l=c?lr(r[i]):r[i],h=c&&!Object.keys(l).length;return l===void 0||h?o:Object.assign(o,Ln({},i,l))},{}):r}function Ve(r,o,i){!o||i.has(o.id)||(i.set(o.id,o),Object.keys(o).forEach(function(c){c.endsWith("Id")?Ve(r,r.get(o[c]),i):c.endsWith("Ids")&&o[c].forEach(function(l){Ve(r,r.get(l),i)})}))}function Jn(r,o,i){var c=i?"outbound-rtp":"inbound-rtp",l=new Map;if(o===null)return l;var h=[];return r.forEach(function(v){v.type==="track"&&v.trackIdentifier===o.id&&h.push(v)}),h.forEach(function(v){r.forEach(function(g){g.type===c&&g.trackId===v.id&&Ve(r,g,l)})}),l}Object.defineProperty(ir,"__esModule",{value:!0});var Qn=ir.shimGetUserMedia=Kn,Xn=Zn(X);function dr(r){if(typeof WeakMap!="function")return null;var o=new WeakMap,i=new WeakMap;return(dr=function(l){return l?i:o})(r)}function Zn(r,o){if(r&&r.__esModule)return r;if(r===null||he(r)!=="object"&&typeof r!="function")return{default:r};var i=dr(o);if(i&&i.has(r))return i.get(r);var c={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var h in r)if(h!=="default"&&Object.prototype.hasOwnProperty.call(r,h)){var v=l?Object.getOwnPropertyDescriptor(r,h):null;v&&(v.get||v.set)?Object.defineProperty(c,h,v):c[h]=r[h]}return c.default=r,i&&i.set(r,c),c}function he(r){"@babel/helpers - typeof";return he=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},he(r)}var fr=Xn.log;function Kn(r,o){var i=r&&r.navigator;if(i.mediaDevices){var c=function(p){if(he(p)!=="object"||p.mandatory||p.optional)return p;var C={};return Object.keys(p).forEach(function(S){if(!(S==="require"||S==="advanced"||S==="mediaSource")){var $=he(p[S])==="object"?p[S]:{ideal:p[S]};$.exact!==void 0&&typeof $.exact=="number"&&($.min=$.max=$.exact);var U=function(k,R){return k?k+R.charAt(0).toUpperCase()+R.slice(1):R==="deviceId"?"sourceId":R};if($.ideal!==void 0){C.optional=C.optional||[];var W={};typeof $.ideal=="number"?(W[U("min",S)]=$.ideal,C.optional.push(W),W={},W[U("max",S)]=$.ideal,C.optional.push(W)):(W[U("",S)]=$.ideal,C.optional.push(W))}$.exact!==void 0&&typeof $.exact!="number"?(C.mandatory=C.mandatory||{},C.mandatory[U("",S)]=$.exact):["min","max"].forEach(function(j){$[j]!==void 0&&(C.mandatory=C.mandatory||{},C.mandatory[U(j,S)]=$[j])})}}),p.advanced&&(C.optional=(C.optional||[]).concat(p.advanced)),C},l=function(p,C){if(o.version>=61)return C(p);if(p=JSON.parse(JSON.stringify(p)),p&&he(p.audio)==="object"){var S=function(k,R,Z){R in k&&!(Z in k)&&(k[Z]=k[R],delete k[R])};p=JSON.parse(JSON.stringify(p)),S(p.audio,"autoGainControl","googAutoGainControl"),S(p.audio,"noiseSuppression","googNoiseSuppression"),p.audio=c(p.audio)}if(p&&he(p.video)==="object"){var $=p.video.facingMode;$=$&&(he($)==="object"?$:{ideal:$});var U=o.version<66;if($&&($.exact==="user"||$.exact==="environment"||$.ideal==="user"||$.ideal==="environment")&&!(i.mediaDevices.getSupportedConstraints&&i.mediaDevices.getSupportedConstraints().facingMode&&!U)){delete p.video.facingMode;var W;if($.exact==="environment"||$.ideal==="environment"?W=["back","rear"]:($.exact==="user"||$.ideal==="user")&&(W=["front"]),W)return i.mediaDevices.enumerateDevices().then(function(j){j=j.filter(function(R){return R.kind==="videoinput"});var k=j.find(function(R){return W.some(function(Z){return R.label.toLowerCase().includes(Z)})});return!k&&j.length&&W.includes("back")&&(k=j[j.length-1]),k&&(p.video.deviceId=$.exact?{exact:k.deviceId}:{ideal:k.deviceId}),p.video=c(p.video),fr("chrome: "+JSON.stringify(p)),C(p)})}p.video=c(p.video)}return fr("chrome: "+JSON.stringify(p)),C(p)},h=function(p){return o.version>=64?p:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[p.name]||p.name,message:p.message,constraint:p.constraint||p.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}},v=function(p,C,S){l(p,function($){i.webkitGetUserMedia($,C,function(U){S&&S(h(U))})})};if(i.getUserMedia=v.bind(i),i.mediaDevices.getUserMedia){var g=i.mediaDevices.getUserMedia.bind(i.mediaDevices);i.mediaDevices.getUserMedia=function(b){return l(b,function(p){return g(p).then(function(C){if(p.audio&&!C.getAudioTracks().length||p.video&&!C.getVideoTracks().length)throw C.getTracks().forEach(function(S){S.stop()}),new DOMException("","NotFoundError");return C},function(C){return Promise.reject(h(C))})})}}}}var hr={};Object.defineProperty(hr,"__esModule",{value:!0});var ea=hr.shimGetUserMedia=na,ta=ra(X);function pr(r){if(typeof WeakMap!="function")return null;var o=new WeakMap,i=new WeakMap;return(pr=function(l){return l?i:o})(r)}function ra(r,o){if(r&&r.__esModule)return r;if(r===null||$e(r)!=="object"&&typeof r!="function")return{default:r};var i=pr(o);if(i&&i.has(r))return i.get(r);var c={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var h in r)if(h!=="default"&&Object.prototype.hasOwnProperty.call(r,h)){var v=l?Object.getOwnPropertyDescriptor(r,h):null;v&&(v.get||v.set)?Object.defineProperty(c,h,v):c[h]=r[h]}return c.default=r,i&&i.set(r,c),c}function $e(r){"@babel/helpers - typeof";return $e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},$e(r)}function na(r,o){var i=r&&r.navigator,c=r&&r.MediaStreamTrack;if(i.getUserMedia=function(b,p,C){ta.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),i.mediaDevices.getUserMedia(b).then(p,C)},!(o.version>55&&"autoGainControl"in i.mediaDevices.getSupportedConstraints())){var l=function(p,C,S){C in p&&!(S in p)&&(p[S]=p[C],delete p[C])},h=i.mediaDevices.getUserMedia.bind(i.mediaDevices);if(i.mediaDevices.getUserMedia=function(b){return $e(b)==="object"&&$e(b.audio)==="object"&&(b=JSON.parse(JSON.stringify(b)),l(b.audio,"autoGainControl","mozAutoGainControl"),l(b.audio,"noiseSuppression","mozNoiseSuppression")),h(b)},c&&c.prototype.getSettings){var v=c.prototype.getSettings;c.prototype.getSettings=function(){var b=v.apply(this,arguments);return l(b,"mozAutoGainControl","autoGainControl"),l(b,"mozNoiseSuppression","noiseSuppression"),b}}if(c&&c.prototype.applyConstraints){var g=c.prototype.applyConstraints;c.prototype.applyConstraints=function(b){return this.kind==="audio"&&$e(b)==="object"&&(b=JSON.parse(JSON.stringify(b)),l(b,"autoGainControl","mozAutoGainControl"),l(b,"noiseSuppression","mozNoiseSuppression")),g.apply(this,[b])}}}}var ne={};Object.defineProperty(ne,"__esModule",{value:!0}),ne.shimAudioContext=ha,ne.shimCallbacksAPI=ca,ne.shimConstraints=yr,ne.shimCreateOfferLegacy=fa;var aa=ne.shimGetUserMedia=ua;ne.shimLocalStreamsAPI=ia,ne.shimRTCIceServerUrls=la,ne.shimRemoteStreamsAPI=sa,ne.shimTrackEventTransceiver=da;var mr=oa(X);function vr(r){if(typeof WeakMap!="function")return null;var o=new WeakMap,i=new WeakMap;return(vr=function(l){return l?i:o})(r)}function oa(r,o){if(r&&r.__esModule)return r;if(r===null||pe(r)!=="object"&&typeof r!="function")return{default:r};var i=vr(o);if(i&&i.has(r))return i.get(r);var c={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var h in r)if(h!=="default"&&Object.prototype.hasOwnProperty.call(r,h)){var v=l?Object.getOwnPropertyDescriptor(r,h):null;v&&(v.get||v.set)?Object.defineProperty(c,h,v):c[h]=r[h]}return c.default=r,i&&i.set(r,c),c}function pe(r){"@babel/helpers - typeof";return pe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},pe(r)}function ia(r){if(!(pe(r)!=="object"||!r.RTCPeerConnection)){if("getLocalStreams"in r.RTCPeerConnection.prototype||(r.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in r.RTCPeerConnection.prototype)){var o=r.RTCPeerConnection.prototype.addTrack;r.RTCPeerConnection.prototype.addStream=function(c){var l=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(c)||this._localStreams.push(c),c.getAudioTracks().forEach(function(h){return o.call(l,h,c)}),c.getVideoTracks().forEach(function(h){return o.call(l,h,c)})},r.RTCPeerConnection.prototype.addTrack=function(c){for(var l=this,h=arguments.length,v=new Array(h>1?h-1:0),g=1;g=0)){c._remoteStreams.push(h);var v=new Event("addstream");v.stream=h,c.dispatchEvent(v)}})}),o.apply(c,arguments)}}}function ca(r){if(!(pe(r)!=="object"||!r.RTCPeerConnection)){var o=r.RTCPeerConnection.prototype,i=o.createOffer,c=o.createAnswer,l=o.setLocalDescription,h=o.setRemoteDescription,v=o.addIceCandidate;o.createOffer=function(p,C){var S=arguments.length>=2?arguments[2]:arguments[0],$=i.apply(this,[S]);return C?($.then(p,C),Promise.resolve()):$},o.createAnswer=function(p,C){var S=arguments.length>=2?arguments[2]:arguments[0],$=c.apply(this,[S]);return C?($.then(p,C),Promise.resolve()):$};var g=function(p,C,S){var $=l.apply(this,[p]);return S?($.then(C,S),Promise.resolve()):$};o.setLocalDescription=g,g=function(p,C,S){var $=h.apply(this,[p]);return S?($.then(C,S),Promise.resolve()):$},o.setRemoteDescription=g,g=function(p,C,S){var $=v.apply(this,[p]);return S?($.then(C,S),Promise.resolve()):$},o.addIceCandidate=g}}function ua(r){var o=r&&r.navigator;if(o.mediaDevices&&o.mediaDevices.getUserMedia){var i=o.mediaDevices,c=i.getUserMedia.bind(i);o.mediaDevices.getUserMedia=function(l){return c(yr(l))}}!o.getUserMedia&&o.mediaDevices&&o.mediaDevices.getUserMedia&&(o.getUserMedia=(function(h,v,g){o.mediaDevices.getUserMedia(h).then(v,g)}).bind(o))}function yr(r){return r&&r.video!==void 0?Object.assign({},r,{video:mr.compactObject(r.video)}):r}function la(r){if(r.RTCPeerConnection){var o=r.RTCPeerConnection;r.RTCPeerConnection=function(c,l){if(c&&c.iceServers){for(var h=[],v=0;v{let o=!1,i;return(...c)=>(o||(i=r(c),o=!0),i)};function ae(r,o){if(r===!1)throw new Error(o!=null?o:"assertion failure")}function gr(r){throw new Error("this code should be unreachable")}const ma=pa(()=>{const r=jn(window);switch(r.browser){case"chrome":Qn(window,r);break;case"firefox":ea(window,r);break;case"safari":aa(window,r);break;default:throw new rr}});let _e=Promise.resolve({type:"stop",data:{}});async function wr(r,o,i){var g,b,p;if(console.debug("[vue-qrcode-reader] starting camera with constraints: ",JSON.stringify(o)),window.isSecureContext!==!0)throw new kn;if(((g=navigator==null?void 0:navigator.mediaDevices)==null?void 0:g.getUserMedia)===void 0)throw new rr;ma(),console.debug("[vue-qrcode-reader] calling getUserMedia");const c=await navigator.mediaDevices.getUserMedia({audio:!1,video:o});r.srcObject!==void 0?r.srcObject=c:r.mozSrcObject!==void 0?r.mozSrcObject=c:window.URL.createObjectURL?r.src=window.URL.createObjectURL(c):window.webkitURL?r.src=window.webkitURL.createObjectURL(c):r.src=c.id,r.play(),console.debug("[vue-qrcode-reader] waiting for video element to load"),await Promise.race([ft(r,"loadeddata"),tr(6e3).then(()=>{throw new In})]),console.debug("[vue-qrcode-reader] video element loaded"),await tr(500);const[l]=c.getVideoTracks(),h=(p=(b=l==null?void 0:l.getCapabilities)==null?void 0:b.call(l))!=null?p:{};let v=!1;return i&&h.torch&&(await l.applyConstraints({advanced:[{torch:!0}]}),v=!0),console.debug("[vue-qrcode-reader] camera ready"),{type:"start",data:{videoEl:r,stream:c,capabilities:h,constraints:o,isTorchOn:v}}}async function va(r,{constraints:o,torch:i,restart:c=!1}){_e=_e.then(h=>{if(h.type==="start"){const{data:{videoEl:v,stream:g,constraints:b,isTorchOn:p}}=h;return!c&&r===v&&o===b&&i===p?h:br(v,g,p).then(()=>wr(r,o,i))}else if(h.type==="stop"||h.type==="failed")return wr(r,o,i);gr()}).catch(h=>(console.debug(`[vue-qrcode-reader] starting camera failed with "${h}"`),{type:"failed",error:h}));const l=await _e;if(l.type==="stop")throw new Error("Something went wrong with the camera task queue (start task).");if(l.type==="failed")throw l.error;if(l.type==="start")return l.data.capabilities;gr()}async function br(r,o,i){console.debug("[vue-qrcode-reader] stopping camera"),r.src="",r.srcObject=null,r.load(),await ft(r,"error");for(const c of o.getTracks())i!=null||await c.applyConstraints({advanced:[{torch:!1}]}),o.removeTrack(c),c.stop();return{type:"stop",data:{}}}async function qe(){if(_e=_e.then(o=>{if(o.type==="stop"||o.type==="failed")return o;const{data:{videoEl:i,stream:c,isTorchOn:l}}=o;return br(i,c,l)}),(await _e).type==="start")throw new Error("Something went wrong with the camera task queue (stop task).")}const Cr=O.defineComponent({__name:"QrcodeStream",props:{constraints:{default:()=>({facingMode:"environment"})},formats:{default:()=>["qr_code"]},paused:{type:Boolean,default:!1},torch:{type:Boolean,default:!1},track:{type:Function,default:void 0}},emits:["detect","camera-on","camera-off","error"],setup(r,{emit:o}){const i=r,c=o,l=O.ref(i.constraints),h=O.ref(i.formats);O.watch(()=>i.constraints,(I,A)=>{JSON.stringify(I)!==JSON.stringify(A)&&(l.value=I)},{deep:!0}),O.watch(()=>i.formats,(I,A)=>{JSON.stringify(I)!==JSON.stringify(A)&&(h.value=I)},{deep:!0});const v=O.ref(),g=O.ref(),b=O.ref(),p=O.ref(!1),C=O.ref(!1);O.onMounted(()=>{C.value=!0}),O.onUnmounted(()=>{qe()});const S=O.computed(()=>({torch:i.torch,constraints:l.value,shouldStream:C.value&&!i.paused}));O.watch(S,async I=>{const A=b.value;ae(A!==void 0,"cameraSettings watcher should never be triggered when component is not mounted. Thus video element should always be defined.");const D=v.value;ae(D!==void 0,"cameraSettings watcher should never be triggered when component is not mounted. Thus canvas should always be defined.");const me=D.getContext("2d");if(ae(me!==null,"if cavnas is defined, canvas 2d context should also be non-null"),I.shouldStream){qe(),p.value=!1;try{const ce=await va(A,I);C.value?(p.value=!0,c("camera-on",ce)):await qe()}catch(ce){c("error",ce)}}else D.width=A.videoWidth,D.height=A.videoHeight,me.drawImage(A,0,0,A.videoWidth,A.videoHeight),qe(),p.value=!1,c("camera-off")},{deep:!0}),O.watch(h,I=>{C.value&&ar(I)});const $=O.computed(()=>S.value.shouldStream&&p.value);O.watch($,I=>{if(I){ae(v.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus pause frame canvas is defined"),U(v.value),ae(g.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus tracking canvas is defined"),U(g.value);const A=()=>i.track===void 0?500:40;ae(b.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus video element is defined"),Fn(b.value,{detectHandler:D=>c("detect",D),formats:h.value,locateHandler:W,minDelay:A()})}});const U=I=>{const A=I.getContext("2d");ae(A!==null,"canvas 2d context should always be non-null"),A.clearRect(0,0,I.width,I.height)},W=I=>{const A=g.value;ae(A!==void 0,"onLocate handler should only be called when component is mounted. Thus tracking canvas is always defined.");const D=b.value;if(ae(D!==void 0,"onLocate handler should only be called when component is mounted. Thus video element is always defined."),I.length===0||i.track===void 0)U(A);else{const me=D.offsetWidth,ce=D.offsetHeight,Se=D.videoWidth,Pe=D.videoHeight,Ae=Math.max(me/Se,ce/Pe),De=Se*Ae,Ne=Pe*Ae,ht=De/Se,pt=Ne/Pe,mt=(me-De)/2,vt=(ce-Ne)/2,Re=({x:ve,y:K})=>({x:Math.floor(ve*ht),y:Math.floor(K*pt)}),oe=({x:ve,y:K})=>({x:Math.floor(ve+mt),y:Math.floor(K+vt)}),ge=I.map(ve=>{const{boundingBox:K,cornerPoints:yt}=ve,{x:Ge,y:ye}=oe(Re({x:K.x,y:K.y})),{x:Ye,y:gt}=Re({x:K.width,y:K.height});return{...ve,cornerPoints:yt.map(Je=>oe(Re(Je))),boundingBox:DOMRectReadOnly.fromRect({x:Ge,y:ye,width:Ye,height:gt})}});A.width=D.offsetWidth,A.height=D.offsetHeight;const ze=A.getContext("2d");ae(ze!==null,"canvas 2d context should always be non-null"),i.track(ge,ze)}},j={width:"100%",height:"100%",position:"relative","z-index":"0"},k={width:"100%",height:"100%",position:"absolute",top:"0",left:"0"},R={width:"100%",height:"100%","object-fit":"cover"},Z=O.computed(()=>$.value?R:{...R,visibility:"hidden",position:"absolute"});return(I,A)=>(O.openBlock(),O.createElementBlock("div",{style:j},[O.createElementVNode("video",{ref_key:"videoRef",ref:b,style:O.normalizeStyle(Z.value),autoplay:"",muted:"",playsinline:""},null,4),O.withDirectives(O.createElementVNode("canvas",{id:"qrcode-stream-pause-frame",ref_key:"pauseFrameRef",ref:v,style:R},null,512),[[O.vShow,!$.value]]),O.createElementVNode("canvas",{id:"qrcode-stream-tracking-layer",ref_key:"trackingLayerRef",ref:g,style:k},null,512),O.createElementVNode("div",{style:k},[O.renderSlot(I.$slots,"default")])]))}}),$r=O.defineComponent({__name:"QrcodeCapture",props:{formats:{default:()=>["qr_code"]}},emits:["detect"],setup(r,{emit:o}){const i=r,c=o,l=h=>{if(!(!(h.target instanceof HTMLInputElement)||!h.target.files))for(const v of Array.from(h.target.files))or(v,i.formats).then(g=>{c("detect",g)})};return(h,v)=>(O.openBlock(),O.createElementBlock("input",{onChange:l,type:"file",name:"image",accept:"image/*",capture:"environment",multiple:""},null,32))}}),_r=O.defineComponent({__name:"QrcodeDropZone",props:{formats:{default:()=>["qr_code"]}},emits:["detect","dragover","error"],setup(r,{emit:o}){const i=r,c=o,l=async g=>{try{const b=await g;c("detect",b)}catch(b){c("error",b)}},h=g=>{c("dragover",g)},v=({dataTransfer:g})=>{if(!g)return;h(!1);const b=[...Array.from(g.files)],p=g.getData("text/uri-list");b.forEach(C=>{l(or(C,i.formats))}),p!==""&&l(Wn(p,i.formats))};return(g,b)=>(O.openBlock(),O.createElementBlock("div",{onDrop:O.withModifiers(v,["prevent","stop"]),onDragenter:b[0]||(b[0]=O.withModifiers(p=>h(!0),["prevent","stop"])),onDragleave:b[1]||(b[1]=O.withModifiers(p=>h(!1),["prevent","stop"])),onDragover:b[2]||(b[2]=O.withModifiers(()=>{},["prevent","stop"]))},[O.renderSlot(g.$slots,"default")],32))}});function Sr(r){r.component("qrcode-stream",Cr),r.component("qrcode-capture",$r),r.component("qrcode-drop-zone",_r)}const ya={install:Sr};ee.QrcodeCapture=$r,ee.QrcodeDropZone=_r,ee.QrcodeStream=Cr,ee.VueQrcodeReader=ya,ee.install=Sr,ee.setZXingModuleOverrides=An,Object.defineProperty(ee,Symbol.toStringTag,{value:"Module"})}); diff --git a/lnbits/static/vendor/vue-router.global.js b/lnbits/static/vendor/vue-router.global.js index 1479c3a9..58206138 100644 --- a/lnbits/static/vendor/vue-router.global.js +++ b/lnbits/static/vendor/vue-router.global.js @@ -1,3934 +1,3040 @@ /*! - * vue-router v4.4.5 - * (c) 2024 Eduardo San Martin Morote - * @license MIT - */ -var VueRouter = (function (exports, vue) { - 'use strict'; + * vue-router v4.6.3 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */ +var VueRouter = (function(exports, vue) { - const isBrowser = typeof document !== 'undefined'; +//#region rolldown:runtime + var __create = Object.create; + var __defProp = Object.defineProperty; + var __getOwnPropDesc = Object.getOwnPropertyDescriptor; + var __getOwnPropNames = Object.getOwnPropertyNames; + var __getProtoOf = Object.getPrototypeOf; + var __hasOwnProp = Object.prototype.hasOwnProperty; + var __commonJS = (cb, mod) => function() { + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; + }; + var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) { + key = keys[i]; + if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { + get: ((k) => from[k]).bind(null, key), + enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { + value: mod, + enumerable: true + }) : target, mod)); - /** - * Allows differentiating lazy components from functional components and vue-class-component - * @internal - * - * @param component - */ - function isRouteComponent(component) { - return (typeof component === 'object' || - 'displayName' in component || - 'props' in component || - '__vccOpts' in component); - } - function isESModule(obj) { - return (obj.__esModule || - obj[Symbol.toStringTag] === 'Module' || - // support CF with dynamic imports that do not - // add the Module string tag - (obj.default && isRouteComponent(obj.default))); - } - const assign = Object.assign; - function applyToParams(fn, params) { - const newParams = {}; - for (const key in params) { - const value = params[key]; - newParams[key] = isArray(value) - ? value.map(fn) - : fn(value); - } - return newParams; - } - const noop = () => { }; - /** - * Typesafe alternative to Array.isArray - * https://github.com/microsoft/TypeScript/pull/48228 - */ - const isArray = Array.isArray; +//#endregion +vue = __toESM(vue); - function warn(msg) { - // avoid using ...args as it breaks in older Edge builds - const args = Array.from(arguments).slice(1); - console.warn.apply(console, ['[Vue Router warn]: ' + msg].concat(args)); - } +//#region src/utils/env.ts + const isBrowser = typeof document !== "undefined"; - /** - * Encoding Rules (␣ = Space) - * - Path: ␣ " < > # ? { } - * - Query: ␣ " < > # & = - * - Hash: ␣ " < > ` - * - * On top of that, the RFC3986 (https://tools.ietf.org/html/rfc3986#section-2.2) - * defines some extra characters to be encoded. Most browsers do not encode them - * in encodeURI https://github.com/whatwg/url/issues/369, so it may be safer to - * also encode `!'()*`. Leaving un-encoded only ASCII alphanumeric(`a-zA-Z0-9`) - * plus `-._~`. This extra safety should be applied to query by patching the - * string returned by encodeURIComponent encodeURI also encodes `[\]^`. `\` - * should be encoded to avoid ambiguity. Browsers (IE, FF, C) transform a `\` - * into a `/` if directly typed in. The _backtick_ (`````) should also be - * encoded everywhere because some browsers like FF encode it when directly - * written while others don't. Safari and IE don't encode ``"<>{}``` in hash. - */ - // const EXTRA_RESERVED_RE = /[!'()*]/g - // const encodeReservedReplacer = (c: string) => '%' + c.charCodeAt(0).toString(16) - const HASH_RE = /#/g; // %23 - const AMPERSAND_RE = /&/g; // %26 - const SLASH_RE = /\//g; // %2F - const EQUAL_RE = /=/g; // %3D - const IM_RE = /\?/g; // %3F - const PLUS_RE = /\+/g; // %2B - /** - * NOTE: It's not clear to me if we should encode the + symbol in queries, it - * seems to be less flexible than not doing so and I can't find out the legacy - * systems requiring this for regular requests like text/html. In the standard, - * the encoding of the plus character is only mentioned for - * application/x-www-form-urlencoded - * (https://url.spec.whatwg.org/#urlencoded-parsing) and most browsers seems lo - * leave the plus character as is in queries. To be more flexible, we allow the - * plus character on the query, but it can also be manually encoded by the user. - * - * Resources: - * - https://url.spec.whatwg.org/#urlencoded-parsing - * - https://stackoverflow.com/questions/1634271/url-encoding-the-space-character-or-20 - */ - const ENC_BRACKET_OPEN_RE = /%5B/g; // [ - const ENC_BRACKET_CLOSE_RE = /%5D/g; // ] - const ENC_CARET_RE = /%5E/g; // ^ - const ENC_BACKTICK_RE = /%60/g; // ` - const ENC_CURLY_OPEN_RE = /%7B/g; // { - const ENC_PIPE_RE = /%7C/g; // | - const ENC_CURLY_CLOSE_RE = /%7D/g; // } - const ENC_SPACE_RE = /%20/g; // } - /** - * Encode characters that need to be encoded on the path, search and hash - * sections of the URL. - * - * @internal - * @param text - string to encode - * @returns encoded string - */ - function commonEncode(text) { - return encodeURI('' + text) - .replace(ENC_PIPE_RE, '|') - .replace(ENC_BRACKET_OPEN_RE, '[') - .replace(ENC_BRACKET_CLOSE_RE, ']'); - } - /** - * Encode characters that need to be encoded on the hash section of the URL. - * - * @param text - string to encode - * @returns encoded string - */ - function encodeHash(text) { - return commonEncode(text) - .replace(ENC_CURLY_OPEN_RE, '{') - .replace(ENC_CURLY_CLOSE_RE, '}') - .replace(ENC_CARET_RE, '^'); - } - /** - * Encode characters that need to be encoded query values on the query - * section of the URL. - * - * @param text - string to encode - * @returns encoded string - */ - function encodeQueryValue(text) { - return (commonEncode(text) - // Encode the space as +, encode the + to differentiate it from the space - .replace(PLUS_RE, '%2B') - .replace(ENC_SPACE_RE, '+') - .replace(HASH_RE, '%23') - .replace(AMPERSAND_RE, '%26') - .replace(ENC_BACKTICK_RE, '`') - .replace(ENC_CURLY_OPEN_RE, '{') - .replace(ENC_CURLY_CLOSE_RE, '}') - .replace(ENC_CARET_RE, '^')); - } - /** - * Like `encodeQueryValue` but also encodes the `=` character. - * - * @param text - string to encode - */ - function encodeQueryKey(text) { - return encodeQueryValue(text).replace(EQUAL_RE, '%3D'); - } - /** - * Encode characters that need to be encoded on the path section of the URL. - * - * @param text - string to encode - * @returns encoded string - */ - function encodePath(text) { - return commonEncode(text).replace(HASH_RE, '%23').replace(IM_RE, '%3F'); - } - /** - * Encode characters that need to be encoded on the path section of the URL as a - * param. This function encodes everything {@link encodePath} does plus the - * slash (`/`) character. If `text` is `null` or `undefined`, returns an empty - * string instead. - * - * @param text - string to encode - * @returns encoded string - */ - function encodeParam(text) { - return text == null ? '' : encodePath(text).replace(SLASH_RE, '%2F'); - } - /** - * Decode text using `decodeURIComponent`. Returns the original text if it - * fails. - * - * @param text - string to decode - * @returns decoded string - */ - function decode(text) { - try { - return decodeURIComponent('' + text); - } - catch (err) { - warn(`Error decoding "${text}". Using original value`); - } - return '' + text; - } +//#endregion +//#region src/utils/index.ts +/** + * Allows differentiating lazy components from functional components and vue-class-component + * @internal + * + * @param component + */ + function isRouteComponent(component) { + return typeof component === "object" || "displayName" in component || "props" in component || "__vccOpts" in component; + } + function isESModule(obj) { + return obj.__esModule || obj[Symbol.toStringTag] === "Module" || obj.default && isRouteComponent(obj.default); + } + const assign = Object.assign; + function applyToParams(fn, params) { + const newParams = {}; + for (const key in params) { + const value = params[key]; + newParams[key] = isArray(value) ? value.map(fn) : fn(value); + } + return newParams; + } + const noop = () => {}; + /** + * Typesafe alternative to Array.isArray + * https://github.com/microsoft/TypeScript/pull/48228 + */ + const isArray = Array.isArray; + function mergeOptions(defaults, partialOptions) { + const options = {}; + for (const key in defaults) options[key] = key in partialOptions ? partialOptions[key] : defaults[key]; + return options; + } - const TRAILING_SLASH_RE = /\/$/; - const removeTrailingSlash = (path) => path.replace(TRAILING_SLASH_RE, ''); - /** - * Transforms a URI into a normalized history location - * - * @param parseQuery - * @param location - URI to normalize - * @param currentLocation - current absolute location. Allows resolving relative - * paths. Must start with `/`. Defaults to `/` - * @returns a normalized history location - */ - function parseURL(parseQuery, location, currentLocation = '/') { - let path, query = {}, searchString = '', hash = ''; - // Could use URL and URLSearchParams but IE 11 doesn't support it - // TODO: move to new URL() - const hashPos = location.indexOf('#'); - let searchPos = location.indexOf('?'); - // the hash appears before the search, so it's not part of the search string - if (hashPos < searchPos && hashPos >= 0) { - searchPos = -1; - } - if (searchPos > -1) { - path = location.slice(0, searchPos); - searchString = location.slice(searchPos + 1, hashPos > -1 ? hashPos : location.length); - query = parseQuery(searchString); - } - if (hashPos > -1) { - path = path || location.slice(0, hashPos); - // keep the # character - hash = location.slice(hashPos, location.length); - } - // no search and no query - path = resolveRelativePath(path != null ? path : location, currentLocation); - // empty path means a relative query or hash `?foo=f`, `#thing` - return { - fullPath: path + (searchString && '?') + searchString + hash, - path, - query, - hash: decode(hash), - }; - } - /** - * Stringifies a URL object - * - * @param stringifyQuery - * @param location - */ - function stringifyURL(stringifyQuery, location) { - const query = location.query ? stringifyQuery(location.query) : ''; - return location.path + (query && '?') + query + (location.hash || ''); - } - /** - * Strips off the base from the beginning of a location.pathname in a non-case-sensitive way. - * - * @param pathname - location.pathname - * @param base - base to strip off - */ - function stripBase(pathname, base) { - // no base or base is not found at the beginning - if (!base || !pathname.toLowerCase().startsWith(base.toLowerCase())) - return pathname; - return pathname.slice(base.length) || '/'; - } - /** - * Checks if two RouteLocation are equal. This means that both locations are - * pointing towards the same {@link RouteRecord} and that all `params`, `query` - * parameters and `hash` are the same - * - * @param stringifyQuery - A function that takes a query object of type LocationQueryRaw and returns a string representation of it. - * @param a - first {@link RouteLocation} - * @param b - second {@link RouteLocation} - */ - function isSameRouteLocation(stringifyQuery, a, b) { - const aLastIndex = a.matched.length - 1; - const bLastIndex = b.matched.length - 1; - return (aLastIndex > -1 && - aLastIndex === bLastIndex && - isSameRouteRecord(a.matched[aLastIndex], b.matched[bLastIndex]) && - isSameRouteLocationParams(a.params, b.params) && - stringifyQuery(a.query) === stringifyQuery(b.query) && - a.hash === b.hash); - } - /** - * Check if two `RouteRecords` are equal. Takes into account aliases: they are - * considered equal to the `RouteRecord` they are aliasing. - * - * @param a - first {@link RouteRecord} - * @param b - second {@link RouteRecord} - */ - function isSameRouteRecord(a, b) { - // since the original record has an undefined value for aliasOf - // but all aliases point to the original record, this will always compare - // the original record - return (a.aliasOf || a) === (b.aliasOf || b); - } - function isSameRouteLocationParams(a, b) { - if (Object.keys(a).length !== Object.keys(b).length) - return false; - for (const key in a) { - if (!isSameRouteLocationParamsValue(a[key], b[key])) - return false; - } - return true; - } - function isSameRouteLocationParamsValue(a, b) { - return isArray(a) - ? isEquivalentArray(a, b) - : isArray(b) - ? isEquivalentArray(b, a) - : a === b; - } - /** - * Check if two arrays are the same or if an array with one single entry is the - * same as another primitive value. Used to check query and parameters - * - * @param a - array of values - * @param b - array of values or a single value - */ - function isEquivalentArray(a, b) { - return isArray(b) - ? a.length === b.length && a.every((value, i) => value === b[i]) - : a.length === 1 && a[0] === b; - } - /** - * Resolves a relative path that starts with `.`. - * - * @param to - path location we are resolving - * @param from - currentLocation.path, should start with `/` - */ - function resolveRelativePath(to, from) { - if (to.startsWith('/')) - return to; - if (!from.startsWith('/')) { - warn(`Cannot resolve a relative location without an absolute path. Trying to resolve "${to}" from "${from}". It should look like "/${from}".`); - return to; - } - if (!to) - return from; - const fromSegments = from.split('/'); - const toSegments = to.split('/'); - const lastToSegment = toSegments[toSegments.length - 1]; - // make . and ./ the same (../ === .., ../../ === ../..) - // this is the same behavior as new URL() - if (lastToSegment === '..' || lastToSegment === '.') { - toSegments.push(''); - } - let position = fromSegments.length - 1; - let toPosition; - let segment; - for (toPosition = 0; toPosition < toSegments.length; toPosition++) { - segment = toSegments[toPosition]; - // we stay on the same position - if (segment === '.') - continue; - // go up in the from array - if (segment === '..') { - // we can't go below zero, but we still need to increment toPosition - if (position > 1) - position--; - // continue - } - // we reached a non-relative path, we stop here - else - break; - } - return (fromSegments.slice(0, position).join('/') + - '/' + - toSegments.slice(toPosition).join('/')); - } - /** - * Initial route location where the router is. Can be used in navigation guards - * to differentiate the initial navigation. - * - * @example - * ```js - * import { START_LOCATION } from 'vue-router' - * - * router.beforeEach((to, from) => { - * if (from === START_LOCATION) { - * // initial navigation - * } - * }) - * ``` - */ - const START_LOCATION_NORMALIZED = { - path: '/', - // TODO: could we use a symbol in the future? - name: undefined, - params: {}, - query: {}, - hash: '', - fullPath: '/', - matched: [], - meta: {}, - redirectedFrom: undefined, - }; +//#endregion +//#region src/warning.ts + function warn(msg) { + const args = Array.from(arguments).slice(1); + console.warn.apply(console, ["[Vue Router warn]: " + msg].concat(args)); + } - var NavigationType; - (function (NavigationType) { - NavigationType["pop"] = "pop"; - NavigationType["push"] = "push"; - })(NavigationType || (NavigationType = {})); - var NavigationDirection; - (function (NavigationDirection) { - NavigationDirection["back"] = "back"; - NavigationDirection["forward"] = "forward"; - NavigationDirection["unknown"] = ""; - })(NavigationDirection || (NavigationDirection = {})); - /** - * Starting location for Histories - */ - const START = ''; - // Generic utils - /** - * Normalizes a base by removing any trailing slash and reading the base tag if - * present. - * - * @param base - base to normalize - */ - function normalizeBase(base) { - if (!base) { - if (isBrowser) { - // respect tag - const baseEl = document.querySelector('base'); - base = (baseEl && baseEl.getAttribute('href')) || '/'; - // strip full URL origin - base = base.replace(/^\w+:\/\/[^\/]+/, ''); - } - else { - base = '/'; - } - } - // ensure leading slash when it was removed by the regex above avoid leading - // slash with hash because the file could be read from the disk like file:// - // and the leading slash would cause problems - if (base[0] !== '/' && base[0] !== '#') - base = '/' + base; - // remove the trailing slash so all other method can just do `base + fullPath` - // to build an href - return removeTrailingSlash(base); - } - // remove any character before the hash - const BEFORE_HASH_RE = /^[^#]+#/; - function createHref(base, location) { - return base.replace(BEFORE_HASH_RE, '#') + location; - } +//#endregion +//#region src/encoding.ts +/** + * Encoding Rules (␣ = Space) + * - Path: ␣ " < > # ? { } + * - Query: ␣ " < > # & = + * - Hash: ␣ " < > ` + * + * On top of that, the RFC3986 (https://tools.ietf.org/html/rfc3986#section-2.2) + * defines some extra characters to be encoded. Most browsers do not encode them + * in encodeURI https://github.com/whatwg/url/issues/369, so it may be safer to + * also encode `!'()*`. Leaving un-encoded only ASCII alphanumeric(`a-zA-Z0-9`) + * plus `-._~`. This extra safety should be applied to query by patching the + * string returned by encodeURIComponent encodeURI also encodes `[\]^`. `\` + * should be encoded to avoid ambiguity. Browsers (IE, FF, C) transform a `\` + * into a `/` if directly typed in. The _backtick_ (`````) should also be + * encoded everywhere because some browsers like FF encode it when directly + * written while others don't. Safari and IE don't encode ``"<>{}``` in hash. + */ + const HASH_RE = /#/g; + const AMPERSAND_RE = /&/g; + const SLASH_RE = /\//g; + const EQUAL_RE = /=/g; + const IM_RE = /\?/g; + const PLUS_RE = /\+/g; + /** + * NOTE: It's not clear to me if we should encode the + symbol in queries, it + * seems to be less flexible than not doing so and I can't find out the legacy + * systems requiring this for regular requests like text/html. In the standard, + * the encoding of the plus character is only mentioned for + * application/x-www-form-urlencoded + * (https://url.spec.whatwg.org/#urlencoded-parsing) and most browsers seems lo + * leave the plus character as is in queries. To be more flexible, we allow the + * plus character on the query, but it can also be manually encoded by the user. + * + * Resources: + * - https://url.spec.whatwg.org/#urlencoded-parsing + * - https://stackoverflow.com/questions/1634271/url-encoding-the-space-character-or-20 + */ + const ENC_BRACKET_OPEN_RE = /%5B/g; + const ENC_BRACKET_CLOSE_RE = /%5D/g; + const ENC_CARET_RE = /%5E/g; + const ENC_BACKTICK_RE = /%60/g; + const ENC_CURLY_OPEN_RE = /%7B/g; + const ENC_PIPE_RE = /%7C/g; + const ENC_CURLY_CLOSE_RE = /%7D/g; + const ENC_SPACE_RE = /%20/g; + /** + * Encode characters that need to be encoded on the path, search and hash + * sections of the URL. + * + * @internal + * @param text - string to encode + * @returns encoded string + */ + function commonEncode(text) { + return text == null ? "" : encodeURI("" + text).replace(ENC_PIPE_RE, "|").replace(ENC_BRACKET_OPEN_RE, "[").replace(ENC_BRACKET_CLOSE_RE, "]"); + } + /** + * Encode characters that need to be encoded on the hash section of the URL. + * + * @param text - string to encode + * @returns encoded string + */ + function encodeHash(text) { + return commonEncode(text).replace(ENC_CURLY_OPEN_RE, "{").replace(ENC_CURLY_CLOSE_RE, "}").replace(ENC_CARET_RE, "^"); + } + /** + * Encode characters that need to be encoded query values on the query + * section of the URL. + * + * @param text - string to encode + * @returns encoded string + */ + function encodeQueryValue(text) { + return commonEncode(text).replace(PLUS_RE, "%2B").replace(ENC_SPACE_RE, "+").replace(HASH_RE, "%23").replace(AMPERSAND_RE, "%26").replace(ENC_BACKTICK_RE, "`").replace(ENC_CURLY_OPEN_RE, "{").replace(ENC_CURLY_CLOSE_RE, "}").replace(ENC_CARET_RE, "^"); + } + /** + * Like `encodeQueryValue` but also encodes the `=` character. + * + * @param text - string to encode + */ + function encodeQueryKey(text) { + return encodeQueryValue(text).replace(EQUAL_RE, "%3D"); + } + /** + * Encode characters that need to be encoded on the path section of the URL. + * + * @param text - string to encode + * @returns encoded string + */ + function encodePath(text) { + return commonEncode(text).replace(HASH_RE, "%23").replace(IM_RE, "%3F"); + } + /** + * Encode characters that need to be encoded on the path section of the URL as a + * param. This function encodes everything {@link encodePath} does plus the + * slash (`/`) character. If `text` is `null` or `undefined`, returns an empty + * string instead. + * + * @param text - string to encode + * @returns encoded string + */ + function encodeParam(text) { + return encodePath(text).replace(SLASH_RE, "%2F"); + } + function decode(text) { + if (text == null) return null; + try { + return decodeURIComponent("" + text); + } catch (err) { + warn(`Error decoding "${text}". Using original value`); + } + return "" + text; + } - function getElementPosition(el, offset) { - const docRect = document.documentElement.getBoundingClientRect(); - const elRect = el.getBoundingClientRect(); - return { - behavior: offset.behavior, - left: elRect.left - docRect.left - (offset.left || 0), - top: elRect.top - docRect.top - (offset.top || 0), - }; - } - const computeScrollPosition = () => ({ - left: window.scrollX, - top: window.scrollY, - }); - function scrollToPosition(position) { - let scrollToOptions; - if ('el' in position) { - const positionEl = position.el; - const isIdSelector = typeof positionEl === 'string' && positionEl.startsWith('#'); - /** - * `id`s can accept pretty much any characters, including CSS combinators - * like `>` or `~`. It's still possible to retrieve elements using - * `document.getElementById('~')` but it needs to be escaped when using - * `document.querySelector('#\\~')` for it to be valid. The only - * requirements for `id`s are them to be unique on the page and to not be - * empty (`id=""`). Because of that, when passing an id selector, it should - * be properly escaped for it to work with `querySelector`. We could check - * for the id selector to be simple (no CSS combinators `+ >~`) but that - * would make things inconsistent since they are valid characters for an - * `id` but would need to be escaped when using `querySelector`, breaking - * their usage and ending up in no selector returned. Selectors need to be - * escaped: - * - * - `#1-thing` becomes `#\31 -thing` - * - `#with~symbols` becomes `#with\\~symbols` - * - * - More information about the topic can be found at - * https://mathiasbynens.be/notes/html5-id-class. - * - Practical example: https://mathiasbynens.be/demo/html5-id - */ - if (typeof position.el === 'string') { - if (!isIdSelector || !document.getElementById(position.el.slice(1))) { - try { - const foundEl = document.querySelector(position.el); - if (isIdSelector && foundEl) { - warn(`The selector "${position.el}" should be passed as "el: document.querySelector('${position.el}')" because it starts with "#".`); - // return to avoid other warnings - return; - } - } - catch (err) { - warn(`The selector "${position.el}" is invalid. If you are using an id selector, make sure to escape it. You can find more information about escaping characters in selectors at https://mathiasbynens.be/notes/css-escapes or use CSS.escape (https://developer.mozilla.org/en-US/docs/Web/API/CSS/escape).`); - // return to avoid other warnings - return; - } - } - } - const el = typeof positionEl === 'string' - ? isIdSelector - ? document.getElementById(positionEl.slice(1)) - : document.querySelector(positionEl) - : positionEl; - if (!el) { - warn(`Couldn't find element using selector "${position.el}" returned by scrollBehavior.`); - return; - } - scrollToOptions = getElementPosition(el, position); - } - else { - scrollToOptions = position; - } - if ('scrollBehavior' in document.documentElement.style) - window.scrollTo(scrollToOptions); - else { - window.scrollTo(scrollToOptions.left != null ? scrollToOptions.left : window.scrollX, scrollToOptions.top != null ? scrollToOptions.top : window.scrollY); - } - } - function getScrollKey(path, delta) { - const position = history.state ? history.state.position - delta : -1; - return position + path; - } - const scrollPositions = new Map(); - function saveScrollPosition(key, scrollPosition) { - scrollPositions.set(key, scrollPosition); - } - function getSavedScrollPosition(key) { - const scroll = scrollPositions.get(key); - // consume it so it's not used again - scrollPositions.delete(key); - return scroll; - } - // TODO: RFC about how to save scroll position - /** - * ScrollBehavior instance used by the router to compute and restore the scroll - * position when navigating. - */ - // export interface ScrollHandler { - // // returns a scroll position that can be saved in history - // compute(): ScrollPositionEntry - // // can take an extended ScrollPositionEntry - // scroll(position: ScrollPosition): void - // } - // export const scrollHandler: ScrollHandler = { - // compute: computeScroll, - // scroll: scrollToPosition, - // } +//#endregion +//#region src/location.ts + const TRAILING_SLASH_RE = /\/$/; + const removeTrailingSlash = (path) => path.replace(TRAILING_SLASH_RE, ""); + /** + * Transforms a URI into a normalized history location + * + * @param parseQuery + * @param location - URI to normalize + * @param currentLocation - current absolute location. Allows resolving relative + * paths. Must start with `/`. Defaults to `/` + * @returns a normalized history location + */ + function parseURL(parseQuery$1, location$1, currentLocation = "/") { + let path, query = {}, searchString = "", hash = ""; + const hashPos = location$1.indexOf("#"); + let searchPos = location$1.indexOf("?"); + searchPos = hashPos >= 0 && searchPos > hashPos ? -1 : searchPos; + if (searchPos >= 0) { + path = location$1.slice(0, searchPos); + searchString = location$1.slice(searchPos, hashPos > 0 ? hashPos : location$1.length); + query = parseQuery$1(searchString.slice(1)); + } + if (hashPos >= 0) { + path = path || location$1.slice(0, hashPos); + hash = location$1.slice(hashPos, location$1.length); + } + path = resolveRelativePath(path != null ? path : location$1, currentLocation); + return { + fullPath: path + searchString + hash, + path, + query, + hash: decode(hash) + }; + } + /** + * Stringifies a URL object + * + * @param stringifyQuery + * @param location + */ + function stringifyURL(stringifyQuery$1, location$1) { + const query = location$1.query ? stringifyQuery$1(location$1.query) : ""; + return location$1.path + (query && "?") + query + (location$1.hash || ""); + } + /** + * Strips off the base from the beginning of a location.pathname in a non-case-sensitive way. + * + * @param pathname - location.pathname + * @param base - base to strip off + */ + function stripBase(pathname, base) { + if (!base || !pathname.toLowerCase().startsWith(base.toLowerCase())) return pathname; + return pathname.slice(base.length) || "/"; + } + /** + * Checks if two RouteLocation are equal. This means that both locations are + * pointing towards the same {@link RouteRecord} and that all `params`, `query` + * parameters and `hash` are the same + * + * @param stringifyQuery - A function that takes a query object of type LocationQueryRaw and returns a string representation of it. + * @param a - first {@link RouteLocation} + * @param b - second {@link RouteLocation} + */ + function isSameRouteLocation(stringifyQuery$1, a, b) { + const aLastIndex = a.matched.length - 1; + const bLastIndex = b.matched.length - 1; + return aLastIndex > -1 && aLastIndex === bLastIndex && isSameRouteRecord(a.matched[aLastIndex], b.matched[bLastIndex]) && isSameRouteLocationParams(a.params, b.params) && stringifyQuery$1(a.query) === stringifyQuery$1(b.query) && a.hash === b.hash; + } + /** + * Check if two `RouteRecords` are equal. Takes into account aliases: they are + * considered equal to the `RouteRecord` they are aliasing. + * + * @param a - first {@link RouteRecord} + * @param b - second {@link RouteRecord} + */ + function isSameRouteRecord(a, b) { + return (a.aliasOf || a) === (b.aliasOf || b); + } + function isSameRouteLocationParams(a, b) { + if (Object.keys(a).length !== Object.keys(b).length) return false; + for (const key in a) if (!isSameRouteLocationParamsValue(a[key], b[key])) return false; + return true; + } + function isSameRouteLocationParamsValue(a, b) { + return isArray(a) ? isEquivalentArray(a, b) : isArray(b) ? isEquivalentArray(b, a) : a === b; + } + /** + * Check if two arrays are the same or if an array with one single entry is the + * same as another primitive value. Used to check query and parameters + * + * @param a - array of values + * @param b - array of values or a single value + */ + function isEquivalentArray(a, b) { + return isArray(b) ? a.length === b.length && a.every((value, i) => value === b[i]) : a.length === 1 && a[0] === b; + } + /** + * Resolves a relative path that starts with `.`. + * + * @param to - path location we are resolving + * @param from - currentLocation.path, should start with `/` + */ + function resolveRelativePath(to, from) { + if (to.startsWith("/")) return to; + if (!from.startsWith("/")) { + warn(`Cannot resolve a relative location without an absolute path. Trying to resolve "${to}" from "${from}". It should look like "/${from}".`); + return to; + } + if (!to) return from; + const fromSegments = from.split("/"); + const toSegments = to.split("/"); + const lastToSegment = toSegments[toSegments.length - 1]; + if (lastToSegment === ".." || lastToSegment === ".") toSegments.push(""); + let position = fromSegments.length - 1; + let toPosition; + let segment; + for (toPosition = 0; toPosition < toSegments.length; toPosition++) { + segment = toSegments[toPosition]; + if (segment === ".") continue; + if (segment === "..") { + if (position > 1) position--; + } else break; + } + return fromSegments.slice(0, position).join("/") + "/" + toSegments.slice(toPosition).join("/"); + } + /** + * Initial route location where the router is. Can be used in navigation guards + * to differentiate the initial navigation. + * + * @example + * ```js + * import { START_LOCATION } from 'vue-router' + * + * router.beforeEach((to, from) => { + * if (from === START_LOCATION) { + * // initial navigation + * } + * }) + * ``` + */ + const START_LOCATION_NORMALIZED = { + path: "/", + name: void 0, + params: {}, + query: {}, + hash: "", + fullPath: "/", + matched: [], + meta: {}, + redirectedFrom: void 0 + }; - let createBaseLocation = () => location.protocol + '//' + location.host; - /** - * Creates a normalized history location from a window.location object - * @param base - The base path - * @param location - The window.location object - */ - function createCurrentLocation(base, location) { - const { pathname, search, hash } = location; - // allows hash bases like #, /#, #/, #!, #!/, /#!/, or even /folder#end - const hashPos = base.indexOf('#'); - if (hashPos > -1) { - let slicePos = hash.includes(base.slice(hashPos)) - ? base.slice(hashPos).length - : 1; - let pathFromHash = hash.slice(slicePos); - // prepend the starting slash to hash so the url starts with /# - if (pathFromHash[0] !== '/') - pathFromHash = '/' + pathFromHash; - return stripBase(pathFromHash, ''); - } - const path = stripBase(pathname, base); - return path + search + hash; - } - function useHistoryListeners(base, historyState, currentLocation, replace) { - let listeners = []; - let teardowns = []; - // TODO: should it be a stack? a Dict. Check if the popstate listener - // can trigger twice - let pauseState = null; - const popStateHandler = ({ state, }) => { - const to = createCurrentLocation(base, location); - const from = currentLocation.value; - const fromState = historyState.value; - let delta = 0; - if (state) { - currentLocation.value = to; - historyState.value = state; - // ignore the popstate and reset the pauseState - if (pauseState && pauseState === from) { - pauseState = null; - return; - } - delta = fromState ? state.position - fromState.position : 0; - } - else { - replace(to); - } - // Here we could also revert the navigation by calling history.go(-delta) - // this listener will have to be adapted to not trigger again and to wait for the url - // to be updated before triggering the listeners. Some kind of validation function would also - // need to be passed to the listeners so the navigation can be accepted - // call all listeners - listeners.forEach(listener => { - listener(currentLocation.value, from, { - delta, - type: NavigationType.pop, - direction: delta - ? delta > 0 - ? NavigationDirection.forward - : NavigationDirection.back - : NavigationDirection.unknown, - }); - }); - }; - function pauseListeners() { - pauseState = currentLocation.value; - } - function listen(callback) { - // set up the listener and prepare teardown callbacks - listeners.push(callback); - const teardown = () => { - const index = listeners.indexOf(callback); - if (index > -1) - listeners.splice(index, 1); - }; - teardowns.push(teardown); - return teardown; - } - function beforeUnloadListener() { - const { history } = window; - if (!history.state) - return; - history.replaceState(assign({}, history.state, { scroll: computeScrollPosition() }), ''); - } - function destroy() { - for (const teardown of teardowns) - teardown(); - teardowns = []; - window.removeEventListener('popstate', popStateHandler); - window.removeEventListener('beforeunload', beforeUnloadListener); - } - // set up the listeners and prepare teardown callbacks - window.addEventListener('popstate', popStateHandler); - // TODO: could we use 'pagehide' or 'visibilitychange' instead? - // https://developer.chrome.com/blog/page-lifecycle-api/ - window.addEventListener('beforeunload', beforeUnloadListener, { - passive: true, - }); - return { - pauseListeners, - listen, - destroy, - }; - } - /** - * Creates a state object - */ - function buildState(back, current, forward, replaced = false, computeScroll = false) { - return { - back, - current, - forward, - replaced, - position: window.history.length, - scroll: computeScroll ? computeScrollPosition() : null, - }; - } - function useHistoryStateNavigation(base) { - const { history, location } = window; - // private variables - const currentLocation = { - value: createCurrentLocation(base, location), - }; - const historyState = { value: history.state }; - // build current history entry as this is a fresh navigation - if (!historyState.value) { - changeLocation(currentLocation.value, { - back: null, - current: currentLocation.value, - forward: null, - // the length is off by one, we need to decrease it - position: history.length - 1, - replaced: true, - // don't add a scroll as the user may have an anchor, and we want - // scrollBehavior to be triggered without a saved position - scroll: null, - }, true); - } - function changeLocation(to, state, replace) { - /** - * if a base tag is provided, and we are on a normal domain, we have to - * respect the provided `base` attribute because pushState() will use it and - * potentially erase anything before the `#` like at - * https://github.com/vuejs/router/issues/685 where a base of - * `/folder/#` but a base of `/` would erase the `/folder/` section. If - * there is no host, the `` tag makes no sense and if there isn't a - * base tag we can just use everything after the `#`. - */ - const hashIndex = base.indexOf('#'); - const url = hashIndex > -1 - ? (location.host && document.querySelector('base') - ? base - : base.slice(hashIndex)) + to - : createBaseLocation() + base + to; - try { - // BROWSER QUIRK - // NOTE: Safari throws a SecurityError when calling this function 100 times in 30 seconds - history[replace ? 'replaceState' : 'pushState'](state, '', url); - historyState.value = state; - } - catch (err) { - { - warn('Error with push/replace State', err); - } - // Force the navigation, this also resets the call count - location[replace ? 'replace' : 'assign'](url); - } - } - function replace(to, data) { - const state = assign({}, history.state, buildState(historyState.value.back, - // keep back and forward entries but override current position - to, historyState.value.forward, true), data, { position: historyState.value.position }); - changeLocation(to, state, true); - currentLocation.value = to; - } - function push(to, data) { - // Add to current entry the information of where we are going - // as well as saving the current position - const currentState = assign({}, - // use current history state to gracefully handle a wrong call to - // history.replaceState - // https://github.com/vuejs/router/issues/366 - historyState.value, history.state, { - forward: to, - scroll: computeScrollPosition(), - }); - if (!history.state) { - warn(`history.state seems to have been manually replaced without preserving the necessary values. Make sure to preserve existing history state if you are manually calling history.replaceState:\n\n` + - `history.replaceState(history.state, '', url)\n\n` + - `You can find more information at https://router.vuejs.org/guide/migration/#Usage-of-history-state`); - } - changeLocation(currentState.current, currentState, true); - const state = assign({}, buildState(currentLocation.value, to, null), { position: currentState.position + 1 }, data); - changeLocation(to, state, false); - currentLocation.value = to; - } - return { - location: currentLocation, - state: historyState, - push, - replace, - }; - } - /** - * Creates an HTML5 history. Most common history for single page applications. - * - * @param base - - */ - function createWebHistory(base) { - base = normalizeBase(base); - const historyNavigation = useHistoryStateNavigation(base); - const historyListeners = useHistoryListeners(base, historyNavigation.state, historyNavigation.location, historyNavigation.replace); - function go(delta, triggerListeners = true) { - if (!triggerListeners) - historyListeners.pauseListeners(); - history.go(delta); - } - const routerHistory = assign({ - // it's overridden right after - location: '', - base, - go, - createHref: createHref.bind(null, base), - }, historyNavigation, historyListeners); - Object.defineProperty(routerHistory, 'location', { - enumerable: true, - get: () => historyNavigation.location.value, - }); - Object.defineProperty(routerHistory, 'state', { - enumerable: true, - get: () => historyNavigation.state.value, - }); - return routerHistory; - } +//#endregion +//#region src/history/common.ts + let NavigationType = /* @__PURE__ */ function(NavigationType$1) { + NavigationType$1["pop"] = "pop"; + NavigationType$1["push"] = "push"; + return NavigationType$1; + }({}); + let NavigationDirection = /* @__PURE__ */ function(NavigationDirection$1) { + NavigationDirection$1["back"] = "back"; + NavigationDirection$1["forward"] = "forward"; + NavigationDirection$1["unknown"] = ""; + return NavigationDirection$1; + }({}); + /** + * Starting location for Histories + */ + const START = ""; + /** + * Normalizes a base by removing any trailing slash and reading the base tag if + * present. + * + * @param base - base to normalize + */ + function normalizeBase(base) { + if (!base) if (isBrowser) { + const baseEl = document.querySelector("base"); + base = baseEl && baseEl.getAttribute("href") || "/"; + base = base.replace(/^\w+:\/\/[^\/]+/, ""); + } else base = "/"; + if (base[0] !== "/" && base[0] !== "#") base = "/" + base; + return removeTrailingSlash(base); + } + const BEFORE_HASH_RE = /^[^#]+#/; + function createHref(base, location$1) { + return base.replace(BEFORE_HASH_RE, "#") + location$1; + } - /** - * Creates an in-memory based history. The main purpose of this history is to handle SSR. It starts in a special location that is nowhere. - * It's up to the user to replace that location with the starter location by either calling `router.push` or `router.replace`. - * - * @param base - Base applied to all urls, defaults to '/' - * @returns a history object that can be passed to the router constructor - */ - function createMemoryHistory(base = '') { - let listeners = []; - let queue = [START]; - let position = 0; - base = normalizeBase(base); - function setLocation(location) { - position++; - if (position !== queue.length) { - // we are in the middle, we remove everything from here in the queue - queue.splice(position); - } - queue.push(location); - } - function triggerListeners(to, from, { direction, delta }) { - const info = { - direction, - delta, - type: NavigationType.pop, - }; - for (const callback of listeners) { - callback(to, from, info); - } - } - const routerHistory = { - // rewritten by Object.defineProperty - location: START, - // TODO: should be kept in queue - state: {}, - base, - createHref: createHref.bind(null, base), - replace(to) { - // remove current entry and decrement position - queue.splice(position--, 1); - setLocation(to); - }, - push(to, data) { - setLocation(to); - }, - listen(callback) { - listeners.push(callback); - return () => { - const index = listeners.indexOf(callback); - if (index > -1) - listeners.splice(index, 1); - }; - }, - destroy() { - listeners = []; - queue = [START]; - position = 0; - }, - go(delta, shouldTrigger = true) { - const from = this.location; - const direction = - // we are considering delta === 0 going forward, but in abstract mode - // using 0 for the delta doesn't make sense like it does in html5 where - // it reloads the page - delta < 0 ? NavigationDirection.back : NavigationDirection.forward; - position = Math.max(0, Math.min(position + delta, queue.length - 1)); - if (shouldTrigger) { - triggerListeners(this.location, from, { - direction, - delta, - }); - } - }, - }; - Object.defineProperty(routerHistory, 'location', { - enumerable: true, - get: () => queue[position], - }); - return routerHistory; - } +//#endregion +//#region src/scrollBehavior.ts + function getElementPosition(el, offset) { + const docRect = document.documentElement.getBoundingClientRect(); + const elRect = el.getBoundingClientRect(); + return { + behavior: offset.behavior, + left: elRect.left - docRect.left - (offset.left || 0), + top: elRect.top - docRect.top - (offset.top || 0) + }; + } + const computeScrollPosition = () => ({ + left: window.scrollX, + top: window.scrollY + }); + function scrollToPosition(position) { + let scrollToOptions; + if ("el" in position) { + const positionEl = position.el; + const isIdSelector = typeof positionEl === "string" && positionEl.startsWith("#"); + /** + * `id`s can accept pretty much any characters, including CSS combinators + * like `>` or `~`. It's still possible to retrieve elements using + * `document.getElementById('~')` but it needs to be escaped when using + * `document.querySelector('#\\~')` for it to be valid. The only + * requirements for `id`s are them to be unique on the page and to not be + * empty (`id=""`). Because of that, when passing an id selector, it should + * be properly escaped for it to work with `querySelector`. We could check + * for the id selector to be simple (no CSS combinators `+ >~`) but that + * would make things inconsistent since they are valid characters for an + * `id` but would need to be escaped when using `querySelector`, breaking + * their usage and ending up in no selector returned. Selectors need to be + * escaped: + * + * - `#1-thing` becomes `#\31 -thing` + * - `#with~symbols` becomes `#with\\~symbols` + * + * - More information about the topic can be found at + * https://mathiasbynens.be/notes/html5-id-class. + * - Practical example: https://mathiasbynens.be/demo/html5-id + */ + if (typeof position.el === "string") { + if (!isIdSelector || !document.getElementById(position.el.slice(1))) try { + const foundEl = document.querySelector(position.el); + if (isIdSelector && foundEl) { + warn(`The selector "${position.el}" should be passed as "el: document.querySelector('${position.el}')" because it starts with "#".`); + return; + } + } catch (err) { + warn(`The selector "${position.el}" is invalid. If you are using an id selector, make sure to escape it. You can find more information about escaping characters in selectors at https://mathiasbynens.be/notes/css-escapes or use CSS.escape (https://developer.mozilla.org/en-US/docs/Web/API/CSS/escape).`); + return; + } + } + const el = typeof positionEl === "string" ? isIdSelector ? document.getElementById(positionEl.slice(1)) : document.querySelector(positionEl) : positionEl; + if (!el) { + warn(`Couldn't find element using selector "${position.el}" returned by scrollBehavior.`); + return; + } + scrollToOptions = getElementPosition(el, position); + } else scrollToOptions = position; + if ("scrollBehavior" in document.documentElement.style) window.scrollTo(scrollToOptions); + else window.scrollTo(scrollToOptions.left != null ? scrollToOptions.left : window.scrollX, scrollToOptions.top != null ? scrollToOptions.top : window.scrollY); + } + function getScrollKey(path, delta) { + return (history.state ? history.state.position - delta : -1) + path; + } + const scrollPositions = /* @__PURE__ */ new Map(); + function saveScrollPosition(key, scrollPosition) { + scrollPositions.set(key, scrollPosition); + } + function getSavedScrollPosition(key) { + const scroll = scrollPositions.get(key); + scrollPositions.delete(key); + return scroll; + } + /** + * ScrollBehavior instance used by the router to compute and restore the scroll + * position when navigating. + */ - /** - * Creates a hash history. Useful for web applications with no host (e.g. `file://`) or when configuring a server to - * handle any URL is not possible. - * - * @param base - optional base to provide. Defaults to `location.pathname + location.search` If there is a `` tag - * in the `head`, its value will be ignored in favor of this parameter **but note it affects all the history.pushState() - * calls**, meaning that if you use a `` tag, it's `href` value **has to match this parameter** (ignoring anything - * after the `#`). - * - * @example - * ```js - * // at https://example.com/folder - * createWebHashHistory() // gives a url of `https://example.com/folder#` - * createWebHashHistory('/folder/') // gives a url of `https://example.com/folder/#` - * // if the `#` is provided in the base, it won't be added by `createWebHashHistory` - * createWebHashHistory('/folder/#/app/') // gives a url of `https://example.com/folder/#/app/` - * // you should avoid doing this because it changes the original url and breaks copying urls - * createWebHashHistory('/other-folder/') // gives a url of `https://example.com/other-folder/#` - * - * // at file:///usr/etc/folder/index.html - * // for locations with no `host`, the base is ignored - * createWebHashHistory('/iAmIgnored') // gives a url of `file:///usr/etc/folder/index.html#` - * ``` - */ - function createWebHashHistory(base) { - // Make sure this implementation is fine in terms of encoding, specially for IE11 - // for `file://`, directly use the pathname and ignore the base - // location.pathname contains an initial `/` even at the root: `https://example.com` - base = location.host ? base || location.pathname + location.search : ''; - // allow the user to provide a `#` in the middle: `/base/#/app` - if (!base.includes('#')) - base += '#'; - if (!base.endsWith('#/') && !base.endsWith('#')) { - warn(`A hash base must end with a "#":\n"${base}" should be "${base.replace(/#.*$/, '#')}".`); - } - return createWebHistory(base); - } +//#endregion +//#region src/history/html5.ts + let createBaseLocation = () => location.protocol + "//" + location.host; + /** + * Creates a normalized history location from a window.location object + * @param base - The base path + * @param location - The window.location object + */ + function createCurrentLocation(base, location$1) { + const { pathname, search, hash } = location$1; + const hashPos = base.indexOf("#"); + if (hashPos > -1) { + let slicePos = hash.includes(base.slice(hashPos)) ? base.slice(hashPos).length : 1; + let pathFromHash = hash.slice(slicePos); + if (pathFromHash[0] !== "/") pathFromHash = "/" + pathFromHash; + return stripBase(pathFromHash, ""); + } + return stripBase(pathname, base) + search + hash; + } + function useHistoryListeners(base, historyState, currentLocation, replace) { + let listeners = []; + let teardowns = []; + let pauseState = null; + const popStateHandler = ({ state }) => { + const to = createCurrentLocation(base, location); + const from = currentLocation.value; + const fromState = historyState.value; + let delta = 0; + if (state) { + currentLocation.value = to; + historyState.value = state; + if (pauseState && pauseState === from) { + pauseState = null; + return; + } + delta = fromState ? state.position - fromState.position : 0; + } else replace(to); + listeners.forEach((listener) => { + listener(currentLocation.value, from, { + delta, + type: NavigationType.pop, + direction: delta ? delta > 0 ? NavigationDirection.forward : NavigationDirection.back : NavigationDirection.unknown + }); + }); + }; + function pauseListeners() { + pauseState = currentLocation.value; + } + function listen(callback) { + listeners.push(callback); + const teardown = () => { + const index = listeners.indexOf(callback); + if (index > -1) listeners.splice(index, 1); + }; + teardowns.push(teardown); + return teardown; + } + function beforeUnloadListener() { + if (document.visibilityState === "hidden") { + const { history: history$1 } = window; + if (!history$1.state) return; + history$1.replaceState(assign({}, history$1.state, { scroll: computeScrollPosition() }), ""); + } + } + function destroy() { + for (const teardown of teardowns) teardown(); + teardowns = []; + window.removeEventListener("popstate", popStateHandler); + window.removeEventListener("pagehide", beforeUnloadListener); + document.removeEventListener("visibilitychange", beforeUnloadListener); + } + window.addEventListener("popstate", popStateHandler); + window.addEventListener("pagehide", beforeUnloadListener); + document.addEventListener("visibilitychange", beforeUnloadListener); + return { + pauseListeners, + listen, + destroy + }; + } + /** + * Creates a state object + */ + function buildState(back, current, forward, replaced = false, computeScroll = false) { + return { + back, + current, + forward, + replaced, + position: window.history.length, + scroll: computeScroll ? computeScrollPosition() : null + }; + } + function useHistoryStateNavigation(base) { + const { history: history$1, location: location$1 } = window; + const currentLocation = { value: createCurrentLocation(base, location$1) }; + const historyState = { value: history$1.state }; + if (!historyState.value) changeLocation(currentLocation.value, { + back: null, + current: currentLocation.value, + forward: null, + position: history$1.length - 1, + replaced: true, + scroll: null + }, true); + function changeLocation(to, state, replace$1) { + /** + * if a base tag is provided, and we are on a normal domain, we have to + * respect the provided `base` attribute because pushState() will use it and + * potentially erase anything before the `#` like at + * https://github.com/vuejs/router/issues/685 where a base of + * `/folder/#` but a base of `/` would erase the `/folder/` section. If + * there is no host, the `` tag makes no sense and if there isn't a + * base tag we can just use everything after the `#`. + */ + const hashIndex = base.indexOf("#"); + const url = hashIndex > -1 ? (location$1.host && document.querySelector("base") ? base : base.slice(hashIndex)) + to : createBaseLocation() + base + to; + try { + history$1[replace$1 ? "replaceState" : "pushState"](state, "", url); + historyState.value = state; + } catch (err) { + warn("Error with push/replace State", err); + location$1[replace$1 ? "replace" : "assign"](url); + } + } + function replace(to, data) { + changeLocation(to, assign({}, history$1.state, buildState(historyState.value.back, to, historyState.value.forward, true), data, { position: historyState.value.position }), true); + currentLocation.value = to; + } + function push(to, data) { + const currentState = assign({}, historyState.value, history$1.state, { + forward: to, + scroll: computeScrollPosition() + }); + if (!history$1.state) warn("history.state seems to have been manually replaced without preserving the necessary values. Make sure to preserve existing history state if you are manually calling history.replaceState:\n\nhistory.replaceState(history.state, '', url)\n\nYou can find more information at https://router.vuejs.org/guide/migration/#Usage-of-history-state"); + changeLocation(currentState.current, currentState, true); + changeLocation(to, assign({}, buildState(currentLocation.value, to, null), { position: currentState.position + 1 }, data), false); + currentLocation.value = to; + } + return { + location: currentLocation, + state: historyState, + push, + replace + }; + } + /** + * Creates an HTML5 history. Most common history for single page applications. + * + * @param base - + */ + function createWebHistory(base) { + base = normalizeBase(base); + const historyNavigation = useHistoryStateNavigation(base); + const historyListeners = useHistoryListeners(base, historyNavigation.state, historyNavigation.location, historyNavigation.replace); + function go(delta, triggerListeners = true) { + if (!triggerListeners) historyListeners.pauseListeners(); + history.go(delta); + } + const routerHistory = assign({ + location: "", + base, + go, + createHref: createHref.bind(null, base) + }, historyNavigation, historyListeners); + Object.defineProperty(routerHistory, "location", { + enumerable: true, + get: () => historyNavigation.location.value + }); + Object.defineProperty(routerHistory, "state", { + enumerable: true, + get: () => historyNavigation.state.value + }); + return routerHistory; + } - function isRouteLocation(route) { - return typeof route === 'string' || (route && typeof route === 'object'); - } - function isRouteName(name) { - return typeof name === 'string' || typeof name === 'symbol'; - } +//#endregion +//#region src/history/memory.ts +/** + * Creates an in-memory based history. The main purpose of this history is to handle SSR. It starts in a special location that is nowhere. + * It's up to the user to replace that location with the starter location by either calling `router.push` or `router.replace`. + * + * @param base - Base applied to all urls, defaults to '/' + * @returns a history object that can be passed to the router constructor + */ + function createMemoryHistory(base = "") { + let listeners = []; + let queue = [[START, {}]]; + let position = 0; + base = normalizeBase(base); + function setLocation(location$1, state = {}) { + position++; + if (position !== queue.length) queue.splice(position); + queue.push([location$1, state]); + } + function triggerListeners(to, from, { direction, delta }) { + const info = { + direction, + delta, + type: NavigationType.pop + }; + for (const callback of listeners) callback(to, from, info); + } + const routerHistory = { + location: START, + state: {}, + base, + createHref: createHref.bind(null, base), + replace(to, state) { + queue.splice(position--, 1); + setLocation(to, state); + }, + push(to, state) { + setLocation(to, state); + }, + listen(callback) { + listeners.push(callback); + return () => { + const index = listeners.indexOf(callback); + if (index > -1) listeners.splice(index, 1); + }; + }, + destroy() { + listeners = []; + queue = [[START, {}]]; + position = 0; + }, + go(delta, shouldTrigger = true) { + const from = this.location; + const direction = delta < 0 ? NavigationDirection.back : NavigationDirection.forward; + position = Math.max(0, Math.min(position + delta, queue.length - 1)); + if (shouldTrigger) triggerListeners(this.location, from, { + direction, + delta + }); + } + }; + Object.defineProperty(routerHistory, "location", { + enumerable: true, + get: () => queue[position][0] + }); + Object.defineProperty(routerHistory, "state", { + enumerable: true, + get: () => queue[position][1] + }); + return routerHistory; + } - const NavigationFailureSymbol = Symbol('navigation failure' ); - /** - * Enumeration with all possible types for navigation failures. Can be passed to - * {@link isNavigationFailure} to check for specific failures. - */ - exports.NavigationFailureType = void 0; - (function (NavigationFailureType) { - /** - * An aborted navigation is a navigation that failed because a navigation - * guard returned `false` or called `next(false)` - */ - NavigationFailureType[NavigationFailureType["aborted"] = 4] = "aborted"; - /** - * A cancelled navigation is a navigation that failed because a more recent - * navigation finished started (not necessarily finished). - */ - NavigationFailureType[NavigationFailureType["cancelled"] = 8] = "cancelled"; - /** - * A duplicated navigation is a navigation that failed because it was - * initiated while already being at the exact same location. - */ - NavigationFailureType[NavigationFailureType["duplicated"] = 16] = "duplicated"; - })(exports.NavigationFailureType || (exports.NavigationFailureType = {})); - // DEV only debug messages - const ErrorTypeMessages = { - [1 /* ErrorTypes.MATCHER_NOT_FOUND */]({ location, currentLocation }) { - return `No match for\n ${JSON.stringify(location)}${currentLocation - ? '\nwhile being at\n' + JSON.stringify(currentLocation) - : ''}`; - }, - [2 /* ErrorTypes.NAVIGATION_GUARD_REDIRECT */]({ from, to, }) { - return `Redirected from "${from.fullPath}" to "${stringifyRoute(to)}" via a navigation guard.`; - }, - [4 /* ErrorTypes.NAVIGATION_ABORTED */]({ from, to }) { - return `Navigation aborted from "${from.fullPath}" to "${to.fullPath}" via a navigation guard.`; - }, - [8 /* ErrorTypes.NAVIGATION_CANCELLED */]({ from, to }) { - return `Navigation cancelled from "${from.fullPath}" to "${to.fullPath}" with a new navigation.`; - }, - [16 /* ErrorTypes.NAVIGATION_DUPLICATED */]({ from, to }) { - return `Avoided redundant navigation to current location: "${from.fullPath}".`; - }, - }; - /** - * Creates a typed NavigationFailure object. - * @internal - * @param type - NavigationFailureType - * @param params - { from, to } - */ - function createRouterError(type, params) { - // keep full error messages in cjs versions - { - return assign(new Error(ErrorTypeMessages[type](params)), { - type, - [NavigationFailureSymbol]: true, - }, params); - } - } - function isNavigationFailure(error, type) { - return (error instanceof Error && - NavigationFailureSymbol in error && - (type == null || !!(error.type & type))); - } - const propertiesToLog = ['params', 'query', 'hash']; - function stringifyRoute(to) { - if (typeof to === 'string') - return to; - if (to.path != null) - return to.path; - const location = {}; - for (const key of propertiesToLog) { - if (key in to) - location[key] = to[key]; - } - return JSON.stringify(location, null, 2); - } +//#endregion +//#region src/history/hash.ts +/** + * Creates a hash history. Useful for web applications with no host (e.g. `file://`) or when configuring a server to + * handle any URL is not possible. + * + * @param base - optional base to provide. Defaults to `location.pathname + location.search` If there is a `` tag + * in the `head`, its value will be ignored in favor of this parameter **but note it affects all the history.pushState() + * calls**, meaning that if you use a `` tag, it's `href` value **has to match this parameter** (ignoring anything + * after the `#`). + * + * @example + * ```js + * // at https://example.com/folder + * createWebHashHistory() // gives a url of `https://example.com/folder#` + * createWebHashHistory('/folder/') // gives a url of `https://example.com/folder/#` + * // if the `#` is provided in the base, it won't be added by `createWebHashHistory` + * createWebHashHistory('/folder/#/app/') // gives a url of `https://example.com/folder/#/app/` + * // you should avoid doing this because it changes the original url and breaks copying urls + * createWebHashHistory('/other-folder/') // gives a url of `https://example.com/other-folder/#` + * + * // at file:///usr/etc/folder/index.html + * // for locations with no `host`, the base is ignored + * createWebHashHistory('/iAmIgnored') // gives a url of `file:///usr/etc/folder/index.html#` + * ``` + */ + function createWebHashHistory(base) { + base = location.host ? base || location.pathname + location.search : ""; + if (!base.includes("#")) base += "#"; + if (!base.endsWith("#/") && !base.endsWith("#")) warn(`A hash base must end with a "#":\n"${base}" should be "${base.replace(/#.*$/, "#")}".`); + return createWebHistory(base); + } - // default pattern for a param: non-greedy everything but / - const BASE_PARAM_PATTERN = '[^/]+?'; - const BASE_PATH_PARSER_OPTIONS = { - sensitive: false, - strict: false, - start: true, - end: true, - }; - // Special Regex characters that must be escaped in static tokens - const REGEX_CHARS_RE = /[.+*?^${}()[\]/\\]/g; - /** - * Creates a path parser from an array of Segments (a segment is an array of Tokens) - * - * @param segments - array of segments returned by tokenizePath - * @param extraOptions - optional options for the regexp - * @returns a PathParser - */ - function tokensToParser(segments, extraOptions) { - const options = assign({}, BASE_PATH_PARSER_OPTIONS, extraOptions); - // the amount of scores is the same as the length of segments except for the root segment "/" - const score = []; - // the regexp as a string - let pattern = options.start ? '^' : ''; - // extracted keys - const keys = []; - for (const segment of segments) { - // the root segment needs special treatment - const segmentScores = segment.length ? [] : [90 /* PathScore.Root */]; - // allow trailing slash - if (options.strict && !segment.length) - pattern += '/'; - for (let tokenIndex = 0; tokenIndex < segment.length; tokenIndex++) { - const token = segment[tokenIndex]; - // resets the score if we are inside a sub-segment /:a-other-:b - let subSegmentScore = 40 /* PathScore.Segment */ + - (options.sensitive ? 0.25 /* PathScore.BonusCaseSensitive */ : 0); - if (token.type === 0 /* TokenType.Static */) { - // prepend the slash if we are starting a new segment - if (!tokenIndex) - pattern += '/'; - pattern += token.value.replace(REGEX_CHARS_RE, '\\$&'); - subSegmentScore += 40 /* PathScore.Static */; - } - else if (token.type === 1 /* TokenType.Param */) { - const { value, repeatable, optional, regexp } = token; - keys.push({ - name: value, - repeatable, - optional, - }); - const re = regexp ? regexp : BASE_PARAM_PATTERN; - // the user provided a custom regexp /:id(\\d+) - if (re !== BASE_PARAM_PATTERN) { - subSegmentScore += 10 /* PathScore.BonusCustomRegExp */; - // make sure the regexp is valid before using it - try { - new RegExp(`(${re})`); - } - catch (err) { - throw new Error(`Invalid custom RegExp for param "${value}" (${re}): ` + - err.message); - } - } - // when we repeat we must take care of the repeating leading slash - let subPattern = repeatable ? `((?:${re})(?:/(?:${re}))*)` : `(${re})`; - // prepend the slash if we are starting a new segment - if (!tokenIndex) - subPattern = - // avoid an optional / if there are more segments e.g. /:p?-static - // or /:p?-:p2 - optional && segment.length < 2 - ? `(?:/${subPattern})` - : '/' + subPattern; - if (optional) - subPattern += '?'; - pattern += subPattern; - subSegmentScore += 20 /* PathScore.Dynamic */; - if (optional) - subSegmentScore += -8 /* PathScore.BonusOptional */; - if (repeatable) - subSegmentScore += -20 /* PathScore.BonusRepeatable */; - if (re === '.*') - subSegmentScore += -50 /* PathScore.BonusWildcard */; - } - segmentScores.push(subSegmentScore); - } - // an empty array like /home/ -> [[{home}], []] - // if (!segment.length) pattern += '/' - score.push(segmentScores); - } - // only apply the strict bonus to the last score - if (options.strict && options.end) { - const i = score.length - 1; - score[i][score[i].length - 1] += 0.7000000000000001 /* PathScore.BonusStrict */; - } - // TODO: dev only warn double trailing slash - if (!options.strict) - pattern += '/?'; - if (options.end) - pattern += '$'; - // allow paths like /dynamic to only match dynamic or dynamic/... but not dynamic_something_else - else if (options.strict) - pattern += '(?:/|$)'; - const re = new RegExp(pattern, options.sensitive ? '' : 'i'); - function parse(path) { - const match = path.match(re); - const params = {}; - if (!match) - return null; - for (let i = 1; i < match.length; i++) { - const value = match[i] || ''; - const key = keys[i - 1]; - params[key.name] = value && key.repeatable ? value.split('/') : value; - } - return params; - } - function stringify(params) { - let path = ''; - // for optional parameters to allow to be empty - let avoidDuplicatedSlash = false; - for (const segment of segments) { - if (!avoidDuplicatedSlash || !path.endsWith('/')) - path += '/'; - avoidDuplicatedSlash = false; - for (const token of segment) { - if (token.type === 0 /* TokenType.Static */) { - path += token.value; - } - else if (token.type === 1 /* TokenType.Param */) { - const { value, repeatable, optional } = token; - const param = value in params ? params[value] : ''; - if (isArray(param) && !repeatable) { - throw new Error(`Provided param "${value}" is an array but it is not repeatable (* or + modifiers)`); - } - const text = isArray(param) - ? param.join('/') - : param; - if (!text) { - if (optional) { - // if we have more than one optional param like /:a?-static we don't need to care about the optional param - if (segment.length < 2) { - // remove the last slash as we could be at the end - if (path.endsWith('/')) - path = path.slice(0, -1); - // do not append a slash on the next iteration - else - avoidDuplicatedSlash = true; - } - } - else - throw new Error(`Missing required param "${value}"`); - } - path += text; - } - } - } - // avoid empty path when we have multiple optional params - return path || '/'; - } - return { - re, - score, - keys, - parse, - stringify, - }; - } - /** - * Compares an array of numbers as used in PathParser.score and returns a - * number. This function can be used to `sort` an array - * - * @param a - first array of numbers - * @param b - second array of numbers - * @returns 0 if both are equal, < 0 if a should be sorted first, > 0 if b - * should be sorted first - */ - function compareScoreArray(a, b) { - let i = 0; - while (i < a.length && i < b.length) { - const diff = b[i] - a[i]; - // only keep going if diff === 0 - if (diff) - return diff; - i++; - } - // if the last subsegment was Static, the shorter segments should be sorted first - // otherwise sort the longest segment first - if (a.length < b.length) { - return a.length === 1 && a[0] === 40 /* PathScore.Static */ + 40 /* PathScore.Segment */ - ? -1 - : 1; - } - else if (a.length > b.length) { - return b.length === 1 && b[0] === 40 /* PathScore.Static */ + 40 /* PathScore.Segment */ - ? 1 - : -1; - } - return 0; - } - /** - * Compare function that can be used with `sort` to sort an array of PathParser - * - * @param a - first PathParser - * @param b - second PathParser - * @returns 0 if both are equal, < 0 if a should be sorted first, > 0 if b - */ - function comparePathParserScore(a, b) { - let i = 0; - const aScore = a.score; - const bScore = b.score; - while (i < aScore.length && i < bScore.length) { - const comp = compareScoreArray(aScore[i], bScore[i]); - // do not return if both are equal - if (comp) - return comp; - i++; - } - if (Math.abs(bScore.length - aScore.length) === 1) { - if (isLastScoreNegative(aScore)) - return 1; - if (isLastScoreNegative(bScore)) - return -1; - } - // if a and b share the same score entries but b has more, sort b first - return bScore.length - aScore.length; - // this is the ternary version - // return aScore.length < bScore.length - // ? 1 - // : aScore.length > bScore.length - // ? -1 - // : 0 - } - /** - * This allows detecting splats at the end of a path: /home/:id(.*)* - * - * @param score - score to check - * @returns true if the last entry is negative - */ - function isLastScoreNegative(score) { - const last = score[score.length - 1]; - return score.length > 0 && last[last.length - 1] < 0; - } +//#endregion +//#region src/types/typeGuards.ts + function isRouteLocation(route) { + return typeof route === "string" || route && typeof route === "object"; + } + function isRouteName(name) { + return typeof name === "string" || typeof name === "symbol"; + } - const ROOT_TOKEN = { - type: 0 /* TokenType.Static */, - value: '', - }; - const VALID_PARAM_RE = /[a-zA-Z0-9_]/; - // After some profiling, the cache seems to be unnecessary because tokenizePath - // (the slowest part of adding a route) is very fast - // const tokenCache = new Map() - function tokenizePath(path) { - if (!path) - return [[]]; - if (path === '/') - return [[ROOT_TOKEN]]; - if (!path.startsWith('/')) { - throw new Error(`Route paths should start with a "/": "${path}" should be "/${path}".` - ); - } - // if (tokenCache.has(path)) return tokenCache.get(path)! - function crash(message) { - throw new Error(`ERR (${state})/"${buffer}": ${message}`); - } - let state = 0 /* TokenizerState.Static */; - let previousState = state; - const tokens = []; - // the segment will always be valid because we get into the initial state - // with the leading / - let segment; - function finalizeSegment() { - if (segment) - tokens.push(segment); - segment = []; - } - // index on the path - let i = 0; - // char at index - let char; - // buffer of the value read - let buffer = ''; - // custom regexp for a param - let customRe = ''; - function consumeBuffer() { - if (!buffer) - return; - if (state === 0 /* TokenizerState.Static */) { - segment.push({ - type: 0 /* TokenType.Static */, - value: buffer, - }); - } - else if (state === 1 /* TokenizerState.Param */ || - state === 2 /* TokenizerState.ParamRegExp */ || - state === 3 /* TokenizerState.ParamRegExpEnd */) { - if (segment.length > 1 && (char === '*' || char === '+')) - crash(`A repeatable param (${buffer}) must be alone in its segment. eg: '/:ids+.`); - segment.push({ - type: 1 /* TokenType.Param */, - value: buffer, - regexp: customRe, - repeatable: char === '*' || char === '+', - optional: char === '*' || char === '?', - }); - } - else { - crash('Invalid state to consume buffer'); - } - buffer = ''; - } - function addCharToBuffer() { - buffer += char; - } - while (i < path.length) { - char = path[i++]; - if (char === '\\' && state !== 2 /* TokenizerState.ParamRegExp */) { - previousState = state; - state = 4 /* TokenizerState.EscapeNext */; - continue; - } - switch (state) { - case 0 /* TokenizerState.Static */: - if (char === '/') { - if (buffer) { - consumeBuffer(); - } - finalizeSegment(); - } - else if (char === ':') { - consumeBuffer(); - state = 1 /* TokenizerState.Param */; - } - else { - addCharToBuffer(); - } - break; - case 4 /* TokenizerState.EscapeNext */: - addCharToBuffer(); - state = previousState; - break; - case 1 /* TokenizerState.Param */: - if (char === '(') { - state = 2 /* TokenizerState.ParamRegExp */; - } - else if (VALID_PARAM_RE.test(char)) { - addCharToBuffer(); - } - else { - consumeBuffer(); - state = 0 /* TokenizerState.Static */; - // go back one character if we were not modifying - if (char !== '*' && char !== '?' && char !== '+') - i--; - } - break; - case 2 /* TokenizerState.ParamRegExp */: - // TODO: is it worth handling nested regexp? like :p(?:prefix_([^/]+)_suffix) - // it already works by escaping the closing ) - // https://paths.esm.dev/?p=AAMeJbiAwQEcDKbAoAAkP60PG2R6QAvgNaA6AFACM2ABuQBB# - // is this really something people need since you can also write - // /prefix_:p()_suffix - if (char === ')') { - // handle the escaped ) - if (customRe[customRe.length - 1] == '\\') - customRe = customRe.slice(0, -1) + char; - else - state = 3 /* TokenizerState.ParamRegExpEnd */; - } - else { - customRe += char; - } - break; - case 3 /* TokenizerState.ParamRegExpEnd */: - // same as finalizing a param - consumeBuffer(); - state = 0 /* TokenizerState.Static */; - // go back one character if we were not modifying - if (char !== '*' && char !== '?' && char !== '+') - i--; - customRe = ''; - break; - default: - crash('Unknown state'); - break; - } - } - if (state === 2 /* TokenizerState.ParamRegExp */) - crash(`Unfinished custom RegExp for param "${buffer}"`); - consumeBuffer(); - finalizeSegment(); - // tokenCache.set(path, tokens) - return tokens; - } +//#endregion +//#region src/errors.ts +/** + * Flags so we can combine them when checking for multiple errors. This is the internal version of + * {@link NavigationFailureType}. + * + * @internal + */ + let ErrorTypes = /* @__PURE__ */ function(ErrorTypes$1) { + ErrorTypes$1[ErrorTypes$1["MATCHER_NOT_FOUND"] = 1] = "MATCHER_NOT_FOUND"; + ErrorTypes$1[ErrorTypes$1["NAVIGATION_GUARD_REDIRECT"] = 2] = "NAVIGATION_GUARD_REDIRECT"; + ErrorTypes$1[ErrorTypes$1["NAVIGATION_ABORTED"] = 4] = "NAVIGATION_ABORTED"; + ErrorTypes$1[ErrorTypes$1["NAVIGATION_CANCELLED"] = 8] = "NAVIGATION_CANCELLED"; + ErrorTypes$1[ErrorTypes$1["NAVIGATION_DUPLICATED"] = 16] = "NAVIGATION_DUPLICATED"; + return ErrorTypes$1; + }({}); + const NavigationFailureSymbol = Symbol("navigation failure"); + /** + * Enumeration with all possible types for navigation failures. Can be passed to + * {@link isNavigationFailure} to check for specific failures. + */ + let NavigationFailureType = /* @__PURE__ */ function(NavigationFailureType$1) { + /** + * An aborted navigation is a navigation that failed because a navigation + * guard returned `false` or called `next(false)` + */ + NavigationFailureType$1[NavigationFailureType$1["aborted"] = 4] = "aborted"; + /** + * A cancelled navigation is a navigation that failed because a more recent + * navigation finished started (not necessarily finished). + */ + NavigationFailureType$1[NavigationFailureType$1["cancelled"] = 8] = "cancelled"; + /** + * A duplicated navigation is a navigation that failed because it was + * initiated while already being at the exact same location. + */ + NavigationFailureType$1[NavigationFailureType$1["duplicated"] = 16] = "duplicated"; + return NavigationFailureType$1; + }({}); + const ErrorTypeMessages = { + [ErrorTypes.MATCHER_NOT_FOUND]({ location: location$1, currentLocation }) { + return `No match for\n ${JSON.stringify(location$1)}${currentLocation ? "\nwhile being at\n" + JSON.stringify(currentLocation) : ""}`; + }, + [ErrorTypes.NAVIGATION_GUARD_REDIRECT]({ from, to }) { + return `Redirected from "${from.fullPath}" to "${stringifyRoute(to)}" via a navigation guard.`; + }, + [ErrorTypes.NAVIGATION_ABORTED]({ from, to }) { + return `Navigation aborted from "${from.fullPath}" to "${to.fullPath}" via a navigation guard.`; + }, + [ErrorTypes.NAVIGATION_CANCELLED]({ from, to }) { + return `Navigation cancelled from "${from.fullPath}" to "${to.fullPath}" with a new navigation.`; + }, + [ErrorTypes.NAVIGATION_DUPLICATED]({ from, to }) { + return `Avoided redundant navigation to current location: "${from.fullPath}".`; + } + }; + /** + * Creates a typed NavigationFailure object. + * @internal + * @param type - NavigationFailureType + * @param params - { from, to } + */ + function createRouterError(type, params) { + return assign(new Error(ErrorTypeMessages[type](params)), { + type, + [NavigationFailureSymbol]: true + }, params); + } + function isNavigationFailure(error, type) { + return error instanceof Error && NavigationFailureSymbol in error && (type == null || !!(error.type & type)); + } + const propertiesToLog = [ + "params", + "query", + "hash" + ]; + function stringifyRoute(to) { + if (typeof to === "string") return to; + if (to.path != null) return to.path; + const location$1 = {}; + for (const key of propertiesToLog) if (key in to) location$1[key] = to[key]; + return JSON.stringify(location$1, null, 2); + } - function createRouteRecordMatcher(record, parent, options) { - const parser = tokensToParser(tokenizePath(record.path), options); - // warn against params with the same name - { - const existingKeys = new Set(); - for (const key of parser.keys) { - if (existingKeys.has(key.name)) - warn(`Found duplicated params with name "${key.name}" for path "${record.path}". Only the last one will be available on "$route.params".`); - existingKeys.add(key.name); - } - } - const matcher = assign(parser, { - record, - parent, - // these needs to be populated by the parent - children: [], - alias: [], - }); - if (parent) { - // both are aliases or both are not aliases - // we don't want to mix them because the order is used when - // passing originalRecord in Matcher.addRoute - if (!matcher.record.aliasOf === !parent.record.aliasOf) - parent.children.push(matcher); - } - return matcher; - } +//#endregion +//#region src/matcher/pathTokenizer.ts + let TokenType = /* @__PURE__ */ function(TokenType$1) { + TokenType$1[TokenType$1["Static"] = 0] = "Static"; + TokenType$1[TokenType$1["Param"] = 1] = "Param"; + TokenType$1[TokenType$1["Group"] = 2] = "Group"; + return TokenType$1; + }({}); + var TokenizerState = /* @__PURE__ */ function(TokenizerState$1) { + TokenizerState$1[TokenizerState$1["Static"] = 0] = "Static"; + TokenizerState$1[TokenizerState$1["Param"] = 1] = "Param"; + TokenizerState$1[TokenizerState$1["ParamRegExp"] = 2] = "ParamRegExp"; + TokenizerState$1[TokenizerState$1["ParamRegExpEnd"] = 3] = "ParamRegExpEnd"; + TokenizerState$1[TokenizerState$1["EscapeNext"] = 4] = "EscapeNext"; + return TokenizerState$1; + }(TokenizerState || {}); + const ROOT_TOKEN = { + type: TokenType.Static, + value: "" + }; + const VALID_PARAM_RE = /[a-zA-Z0-9_]/; + function tokenizePath(path) { + if (!path) return [[]]; + if (path === "/") return [[ROOT_TOKEN]]; + if (!path.startsWith("/")) throw new Error(`Route paths should start with a "/": "${path}" should be "/${path}".`); + function crash(message) { + throw new Error(`ERR (${state})/"${buffer}": ${message}`); + } + let state = TokenizerState.Static; + let previousState = state; + const tokens = []; + let segment; + function finalizeSegment() { + if (segment) tokens.push(segment); + segment = []; + } + let i = 0; + let char; + let buffer = ""; + let customRe = ""; + function consumeBuffer() { + if (!buffer) return; + if (state === TokenizerState.Static) segment.push({ + type: TokenType.Static, + value: buffer + }); + else if (state === TokenizerState.Param || state === TokenizerState.ParamRegExp || state === TokenizerState.ParamRegExpEnd) { + if (segment.length > 1 && (char === "*" || char === "+")) crash(`A repeatable param (${buffer}) must be alone in its segment. eg: '/:ids+.`); + segment.push({ + type: TokenType.Param, + value: buffer, + regexp: customRe, + repeatable: char === "*" || char === "+", + optional: char === "*" || char === "?" + }); + } else crash("Invalid state to consume buffer"); + buffer = ""; + } + function addCharToBuffer() { + buffer += char; + } + while (i < path.length) { + char = path[i++]; + if (char === "\\" && state !== TokenizerState.ParamRegExp) { + previousState = state; + state = TokenizerState.EscapeNext; + continue; + } + switch (state) { + case TokenizerState.Static: + if (char === "/") { + if (buffer) consumeBuffer(); + finalizeSegment(); + } else if (char === ":") { + consumeBuffer(); + state = TokenizerState.Param; + } else addCharToBuffer(); + break; + case TokenizerState.EscapeNext: + addCharToBuffer(); + state = previousState; + break; + case TokenizerState.Param: + if (char === "(") state = TokenizerState.ParamRegExp; + else if (VALID_PARAM_RE.test(char)) addCharToBuffer(); + else { + consumeBuffer(); + state = TokenizerState.Static; + if (char !== "*" && char !== "?" && char !== "+") i--; + } + break; + case TokenizerState.ParamRegExp: + if (char === ")") if (customRe[customRe.length - 1] == "\\") customRe = customRe.slice(0, -1) + char; + else state = TokenizerState.ParamRegExpEnd; + else customRe += char; + break; + case TokenizerState.ParamRegExpEnd: + consumeBuffer(); + state = TokenizerState.Static; + if (char !== "*" && char !== "?" && char !== "+") i--; + customRe = ""; + break; + default: + crash("Unknown state"); + break; + } + } + if (state === TokenizerState.ParamRegExp) crash(`Unfinished custom RegExp for param "${buffer}"`); + consumeBuffer(); + finalizeSegment(); + return tokens; + } - /** - * Creates a Router Matcher. - * - * @internal - * @param routes - array of initial routes - * @param globalOptions - global route options - */ - function createRouterMatcher(routes, globalOptions) { - // normalized ordered array of matchers - const matchers = []; - const matcherMap = new Map(); - globalOptions = mergeOptions({ strict: false, end: true, sensitive: false }, globalOptions); - function getRecordMatcher(name) { - return matcherMap.get(name); - } - function addRoute(record, parent, originalRecord) { - // used later on to remove by name - const isRootAdd = !originalRecord; - const mainNormalizedRecord = normalizeRouteRecord(record); - { - checkChildMissingNameWithEmptyPath(mainNormalizedRecord, parent); - } - // we might be the child of an alias - mainNormalizedRecord.aliasOf = originalRecord && originalRecord.record; - const options = mergeOptions(globalOptions, record); - // generate an array of records to correctly handle aliases - const normalizedRecords = [mainNormalizedRecord]; - if ('alias' in record) { - const aliases = typeof record.alias === 'string' ? [record.alias] : record.alias; - for (const alias of aliases) { - normalizedRecords.push( - // we need to normalize again to ensure the `mods` property - // being non enumerable - normalizeRouteRecord(assign({}, mainNormalizedRecord, { - // this allows us to hold a copy of the `components` option - // so that async components cache is hold on the original record - components: originalRecord - ? originalRecord.record.components - : mainNormalizedRecord.components, - path: alias, - // we might be the child of an alias - aliasOf: originalRecord - ? originalRecord.record - : mainNormalizedRecord, - // the aliases are always of the same kind as the original since they - // are defined on the same record - }))); - } - } - let matcher; - let originalMatcher; - for (const normalizedRecord of normalizedRecords) { - const { path } = normalizedRecord; - // Build up the path for nested routes if the child isn't an absolute - // route. Only add the / delimiter if the child path isn't empty and if the - // parent path doesn't have a trailing slash - if (parent && path[0] !== '/') { - const parentPath = parent.record.path; - const connectingSlash = parentPath[parentPath.length - 1] === '/' ? '' : '/'; - normalizedRecord.path = - parent.record.path + (path && connectingSlash + path); - } - if (normalizedRecord.path === '*') { - throw new Error('Catch all routes ("*") must now be defined using a param with a custom regexp.\n' + - 'See more at https://router.vuejs.org/guide/migration/#Removed-star-or-catch-all-routes.'); - } - // create the object beforehand, so it can be passed to children - matcher = createRouteRecordMatcher(normalizedRecord, parent, options); - if (parent && path[0] === '/') - checkMissingParamsInAbsolutePath(matcher, parent); - // if we are an alias we must tell the original record that we exist, - // so we can be removed - if (originalRecord) { - originalRecord.alias.push(matcher); - { - checkSameParams(originalRecord, matcher); - } - } - else { - // otherwise, the first record is the original and others are aliases - originalMatcher = originalMatcher || matcher; - if (originalMatcher !== matcher) - originalMatcher.alias.push(matcher); - // remove the route if named and only for the top record (avoid in nested calls) - // this works because the original record is the first one - if (isRootAdd && record.name && !isAliasRecord(matcher)) - removeRoute(record.name); - } - // Avoid adding a record that doesn't display anything. This allows passing through records without a component to - // not be reached and pass through the catch all route - if (isMatchable(matcher)) { - insertMatcher(matcher); - } - if (mainNormalizedRecord.children) { - const children = mainNormalizedRecord.children; - for (let i = 0; i < children.length; i++) { - addRoute(children[i], matcher, originalRecord && originalRecord.children[i]); - } - } - // if there was no original record, then the first one was not an alias and all - // other aliases (if any) need to reference this record when adding children - originalRecord = originalRecord || matcher; - // TODO: add normalized records for more flexibility - // if (parent && isAliasRecord(originalRecord)) { - // parent.children.push(originalRecord) - // } - } - return originalMatcher - ? () => { - // since other matchers are aliases, they should be removed by the original matcher - removeRoute(originalMatcher); - } - : noop; - } - function removeRoute(matcherRef) { - if (isRouteName(matcherRef)) { - const matcher = matcherMap.get(matcherRef); - if (matcher) { - matcherMap.delete(matcherRef); - matchers.splice(matchers.indexOf(matcher), 1); - matcher.children.forEach(removeRoute); - matcher.alias.forEach(removeRoute); - } - } - else { - const index = matchers.indexOf(matcherRef); - if (index > -1) { - matchers.splice(index, 1); - if (matcherRef.record.name) - matcherMap.delete(matcherRef.record.name); - matcherRef.children.forEach(removeRoute); - matcherRef.alias.forEach(removeRoute); - } - } - } - function getRoutes() { - return matchers; - } - function insertMatcher(matcher) { - const index = findInsertionIndex(matcher, matchers); - matchers.splice(index, 0, matcher); - // only add the original record to the name map - if (matcher.record.name && !isAliasRecord(matcher)) - matcherMap.set(matcher.record.name, matcher); - } - function resolve(location, currentLocation) { - let matcher; - let params = {}; - let path; - let name; - if ('name' in location && location.name) { - matcher = matcherMap.get(location.name); - if (!matcher) - throw createRouterError(1 /* ErrorTypes.MATCHER_NOT_FOUND */, { - location, - }); - // warn if the user is passing invalid params so they can debug it better when they get removed - { - const invalidParams = Object.keys(location.params || {}).filter(paramName => !matcher.keys.find(k => k.name === paramName)); - if (invalidParams.length) { - warn(`Discarded invalid param(s) "${invalidParams.join('", "')}" when navigating. See https://github.com/vuejs/router/blob/main/packages/router/CHANGELOG.md#414-2022-08-22 for more details.`); - } - } - name = matcher.record.name; - params = assign( - // paramsFromLocation is a new object - paramsFromLocation(currentLocation.params, - // only keep params that exist in the resolved location - // only keep optional params coming from a parent record - matcher.keys - .filter(k => !k.optional) - .concat(matcher.parent ? matcher.parent.keys.filter(k => k.optional) : []) - .map(k => k.name)), - // discard any existing params in the current location that do not exist here - // #1497 this ensures better active/exact matching - location.params && - paramsFromLocation(location.params, matcher.keys.map(k => k.name))); - // throws if cannot be stringified - path = matcher.stringify(params); - } - else if (location.path != null) { - // no need to resolve the path with the matcher as it was provided - // this also allows the user to control the encoding - path = location.path; - if (!path.startsWith('/')) { - warn(`The Matcher cannot resolve relative paths but received "${path}". Unless you directly called \`matcher.resolve("${path}")\`, this is probably a bug in vue-router. Please open an issue at https://github.com/vuejs/router/issues/new/choose.`); - } - matcher = matchers.find(m => m.re.test(path)); - // matcher should have a value after the loop - if (matcher) { - // we know the matcher works because we tested the regexp - params = matcher.parse(path); - name = matcher.record.name; - } - // location is a relative path - } - else { - // match by name or path of current route - matcher = currentLocation.name - ? matcherMap.get(currentLocation.name) - : matchers.find(m => m.re.test(currentLocation.path)); - if (!matcher) - throw createRouterError(1 /* ErrorTypes.MATCHER_NOT_FOUND */, { - location, - currentLocation, - }); - name = matcher.record.name; - // since we are navigating to the same location, we don't need to pick the - // params like when `name` is provided - params = assign({}, currentLocation.params, location.params); - path = matcher.stringify(params); - } - const matched = []; - let parentMatcher = matcher; - while (parentMatcher) { - // reversed order so parents are at the beginning - matched.unshift(parentMatcher.record); - parentMatcher = parentMatcher.parent; - } - return { - name, - path, - params, - matched, - meta: mergeMetaFields(matched), - }; - } - // add initial routes - routes.forEach(route => addRoute(route)); - function clearRoutes() { - matchers.length = 0; - matcherMap.clear(); - } - return { - addRoute, - resolve, - removeRoute, - clearRoutes, - getRoutes, - getRecordMatcher, - }; - } - function paramsFromLocation(params, keys) { - const newParams = {}; - for (const key of keys) { - if (key in params) - newParams[key] = params[key]; - } - return newParams; - } - /** - * Normalizes a RouteRecordRaw. Creates a copy - * - * @param record - * @returns the normalized version - */ - function normalizeRouteRecord(record) { - const normalized = { - path: record.path, - redirect: record.redirect, - name: record.name, - meta: record.meta || {}, - aliasOf: record.aliasOf, - beforeEnter: record.beforeEnter, - props: normalizeRecordProps(record), - children: record.children || [], - instances: {}, - leaveGuards: new Set(), - updateGuards: new Set(), - enterCallbacks: {}, - // must be declared afterwards - // mods: {}, - components: 'components' in record - ? record.components || null - : record.component && { default: record.component }, - }; - // mods contain modules and shouldn't be copied, - // logged or anything. It's just used for internal - // advanced use cases like data loaders - Object.defineProperty(normalized, 'mods', { - value: {}, - }); - return normalized; - } - /** - * Normalize the optional `props` in a record to always be an object similar to - * components. Also accept a boolean for components. - * @param record - */ - function normalizeRecordProps(record) { - const propsObject = {}; - // props does not exist on redirect records, but we can set false directly - const props = record.props || false; - if ('component' in record) { - propsObject.default = props; - } - else { - // NOTE: we could also allow a function to be applied to every component. - // Would need user feedback for use cases - for (const name in record.components) - propsObject[name] = typeof props === 'object' ? props[name] : props; - } - return propsObject; - } - /** - * Checks if a record or any of its parent is an alias - * @param record - */ - function isAliasRecord(record) { - while (record) { - if (record.record.aliasOf) - return true; - record = record.parent; - } - return false; - } - /** - * Merge meta fields of an array of records - * - * @param matched - array of matched records - */ - function mergeMetaFields(matched) { - return matched.reduce((meta, record) => assign(meta, record.meta), {}); - } - function mergeOptions(defaults, partialOptions) { - const options = {}; - for (const key in defaults) { - options[key] = key in partialOptions ? partialOptions[key] : defaults[key]; - } - return options; - } - function isSameParam(a, b) { - return (a.name === b.name && - a.optional === b.optional && - a.repeatable === b.repeatable); - } - /** - * Check if a path and its alias have the same required params - * - * @param a - original record - * @param b - alias record - */ - function checkSameParams(a, b) { - for (const key of a.keys) { - if (!key.optional && !b.keys.find(isSameParam.bind(null, key))) - return warn(`Alias "${b.record.path}" and the original record: "${a.record.path}" must have the exact same param named "${key.name}"`); - } - for (const key of b.keys) { - if (!key.optional && !a.keys.find(isSameParam.bind(null, key))) - return warn(`Alias "${b.record.path}" and the original record: "${a.record.path}" must have the exact same param named "${key.name}"`); - } - } - /** - * A route with a name and a child with an empty path without a name should warn when adding the route - * - * @param mainNormalizedRecord - RouteRecordNormalized - * @param parent - RouteRecordMatcher - */ - function checkChildMissingNameWithEmptyPath(mainNormalizedRecord, parent) { - if (parent && - parent.record.name && - !mainNormalizedRecord.name && - !mainNormalizedRecord.path) { - warn(`The route named "${String(parent.record.name)}" has a child without a name and an empty path. Using that name won't render the empty path child so you probably want to move the name to the child instead. If this is intentional, add a name to the child route to remove the warning.`); - } - } - function checkMissingParamsInAbsolutePath(record, parent) { - for (const key of parent.keys) { - if (!record.keys.find(isSameParam.bind(null, key))) - return warn(`Absolute path "${record.record.path}" must have the exact same param named "${key.name}" as its parent "${parent.record.path}".`); - } - } - /** - * Performs a binary search to find the correct insertion index for a new matcher. - * - * Matchers are primarily sorted by their score. If scores are tied then we also consider parent/child relationships, - * with descendants coming before ancestors. If there's still a tie, new routes are inserted after existing routes. - * - * @param matcher - new matcher to be inserted - * @param matchers - existing matchers - */ - function findInsertionIndex(matcher, matchers) { - // First phase: binary search based on score - let lower = 0; - let upper = matchers.length; - while (lower !== upper) { - const mid = (lower + upper) >> 1; - const sortOrder = comparePathParserScore(matcher, matchers[mid]); - if (sortOrder < 0) { - upper = mid; - } - else { - lower = mid + 1; - } - } - // Second phase: check for an ancestor with the same score - const insertionAncestor = getInsertionAncestor(matcher); - if (insertionAncestor) { - upper = matchers.lastIndexOf(insertionAncestor, upper - 1); - if (upper < 0) { - // This should never happen - warn(`Finding ancestor route "${insertionAncestor.record.path}" failed for "${matcher.record.path}"`); - } - } - return upper; - } - function getInsertionAncestor(matcher) { - let ancestor = matcher; - while ((ancestor = ancestor.parent)) { - if (isMatchable(ancestor) && - comparePathParserScore(matcher, ancestor) === 0) { - return ancestor; - } - } - return; - } - /** - * Checks if a matcher can be reachable. This means if it's possible to reach it as a route. For example, routes without - * a component, or name, or redirect, are just used to group other routes. - * @param matcher - * @param matcher.record record of the matcher - * @returns - */ - function isMatchable({ record }) { - return !!(record.name || - (record.components && Object.keys(record.components).length) || - record.redirect); - } +//#endregion +//#region src/matcher/pathParserRanker.ts + const BASE_PARAM_PATTERN = "[^/]+?"; + const BASE_PATH_PARSER_OPTIONS = { + sensitive: false, + strict: false, + start: true, + end: true + }; + var PathScore = /* @__PURE__ */ function(PathScore$1) { + PathScore$1[PathScore$1["_multiplier"] = 10] = "_multiplier"; + PathScore$1[PathScore$1["Root"] = 90] = "Root"; + PathScore$1[PathScore$1["Segment"] = 40] = "Segment"; + PathScore$1[PathScore$1["SubSegment"] = 30] = "SubSegment"; + PathScore$1[PathScore$1["Static"] = 40] = "Static"; + PathScore$1[PathScore$1["Dynamic"] = 20] = "Dynamic"; + PathScore$1[PathScore$1["BonusCustomRegExp"] = 10] = "BonusCustomRegExp"; + PathScore$1[PathScore$1["BonusWildcard"] = -50] = "BonusWildcard"; + PathScore$1[PathScore$1["BonusRepeatable"] = -20] = "BonusRepeatable"; + PathScore$1[PathScore$1["BonusOptional"] = -8] = "BonusOptional"; + PathScore$1[PathScore$1["BonusStrict"] = .7000000000000001] = "BonusStrict"; + PathScore$1[PathScore$1["BonusCaseSensitive"] = .25] = "BonusCaseSensitive"; + return PathScore$1; + }(PathScore || {}); + const REGEX_CHARS_RE = /[.+*?^${}()[\]/\\]/g; + /** + * Creates a path parser from an array of Segments (a segment is an array of Tokens) + * + * @param segments - array of segments returned by tokenizePath + * @param extraOptions - optional options for the regexp + * @returns a PathParser + */ + function tokensToParser(segments, extraOptions) { + const options = assign({}, BASE_PATH_PARSER_OPTIONS, extraOptions); + const score = []; + let pattern = options.start ? "^" : ""; + const keys = []; + for (const segment of segments) { + const segmentScores = segment.length ? [] : [PathScore.Root]; + if (options.strict && !segment.length) pattern += "/"; + for (let tokenIndex = 0; tokenIndex < segment.length; tokenIndex++) { + const token = segment[tokenIndex]; + let subSegmentScore = PathScore.Segment + (options.sensitive ? PathScore.BonusCaseSensitive : 0); + if (token.type === TokenType.Static) { + if (!tokenIndex) pattern += "/"; + pattern += token.value.replace(REGEX_CHARS_RE, "\\$&"); + subSegmentScore += PathScore.Static; + } else if (token.type === TokenType.Param) { + const { value, repeatable, optional, regexp } = token; + keys.push({ + name: value, + repeatable, + optional + }); + const re$1 = regexp ? regexp : BASE_PARAM_PATTERN; + if (re$1 !== BASE_PARAM_PATTERN) { + subSegmentScore += PathScore.BonusCustomRegExp; + try { + `${re$1}`; + } catch (err) { + throw new Error(`Invalid custom RegExp for param "${value}" (${re$1}): ` + err.message); + } + } + let subPattern = repeatable ? `((?:${re$1})(?:/(?:${re$1}))*)` : `(${re$1})`; + if (!tokenIndex) subPattern = optional && segment.length < 2 ? `(?:/${subPattern})` : "/" + subPattern; + if (optional) subPattern += "?"; + pattern += subPattern; + subSegmentScore += PathScore.Dynamic; + if (optional) subSegmentScore += PathScore.BonusOptional; + if (repeatable) subSegmentScore += PathScore.BonusRepeatable; + if (re$1 === ".*") subSegmentScore += PathScore.BonusWildcard; + } + segmentScores.push(subSegmentScore); + } + score.push(segmentScores); + } + if (options.strict && options.end) { + const i = score.length - 1; + score[i][score[i].length - 1] += PathScore.BonusStrict; + } + if (!options.strict) pattern += "/?"; + if (options.end) pattern += "$"; + else if (options.strict && !pattern.endsWith("/")) pattern += "(?:/|$)"; + const re = new RegExp(pattern, options.sensitive ? "" : "i"); + function parse(path) { + const match = path.match(re); + const params = {}; + if (!match) return null; + for (let i = 1; i < match.length; i++) { + const value = match[i] || ""; + const key = keys[i - 1]; + params[key.name] = value && key.repeatable ? value.split("/") : value; + } + return params; + } + function stringify(params) { + let path = ""; + let avoidDuplicatedSlash = false; + for (const segment of segments) { + if (!avoidDuplicatedSlash || !path.endsWith("/")) path += "/"; + avoidDuplicatedSlash = false; + for (const token of segment) if (token.type === TokenType.Static) path += token.value; + else if (token.type === TokenType.Param) { + const { value, repeatable, optional } = token; + const param = value in params ? params[value] : ""; + if (isArray(param) && !repeatable) throw new Error(`Provided param "${value}" is an array but it is not repeatable (* or + modifiers)`); + const text = isArray(param) ? param.join("/") : param; + if (!text) if (optional) { + if (segment.length < 2) if (path.endsWith("/")) path = path.slice(0, -1); + else avoidDuplicatedSlash = true; + } else throw new Error(`Missing required param "${value}"`); + path += text; + } + } + return path || "/"; + } + return { + re, + score, + keys, + parse, + stringify + }; + } + /** + * Compares an array of numbers as used in PathParser.score and returns a + * number. This function can be used to `sort` an array + * + * @param a - first array of numbers + * @param b - second array of numbers + * @returns 0 if both are equal, < 0 if a should be sorted first, > 0 if b + * should be sorted first + */ + function compareScoreArray(a, b) { + let i = 0; + while (i < a.length && i < b.length) { + const diff = b[i] - a[i]; + if (diff) return diff; + i++; + } + if (a.length < b.length) return a.length === 1 && a[0] === PathScore.Static + PathScore.Segment ? -1 : 1; + else if (a.length > b.length) return b.length === 1 && b[0] === PathScore.Static + PathScore.Segment ? 1 : -1; + return 0; + } + /** + * Compare function that can be used with `sort` to sort an array of PathParser + * + * @param a - first PathParser + * @param b - second PathParser + * @returns 0 if both are equal, < 0 if a should be sorted first, > 0 if b + */ + function comparePathParserScore(a, b) { + let i = 0; + const aScore = a.score; + const bScore = b.score; + while (i < aScore.length && i < bScore.length) { + const comp = compareScoreArray(aScore[i], bScore[i]); + if (comp) return comp; + i++; + } + if (Math.abs(bScore.length - aScore.length) === 1) { + if (isLastScoreNegative(aScore)) return 1; + if (isLastScoreNegative(bScore)) return -1; + } + return bScore.length - aScore.length; + } + /** + * This allows detecting splats at the end of a path: /home/:id(.*)* + * + * @param score - score to check + * @returns true if the last entry is negative + */ + function isLastScoreNegative(score) { + const last = score[score.length - 1]; + return score.length > 0 && last[last.length - 1] < 0; + } + const PATH_PARSER_OPTIONS_DEFAULTS = { + strict: false, + end: true, + sensitive: false + }; - /** - * Transforms a queryString into a {@link LocationQuery} object. Accept both, a - * version with the leading `?` and without Should work as URLSearchParams +//#endregion +//#region src/matcher/pathMatcher.ts + function createRouteRecordMatcher(record, parent, options) { + const parser = tokensToParser(tokenizePath(record.path), options); + { + const existingKeys = /* @__PURE__ */ new Set(); + for (const key of parser.keys) { + if (existingKeys.has(key.name)) warn(`Found duplicated params with name "${key.name}" for path "${record.path}". Only the last one will be available on "$route.params".`); + existingKeys.add(key.name); + } + } + const matcher = assign(parser, { + record, + parent, + children: [], + alias: [] + }); + if (parent) { + if (!matcher.record.aliasOf === !parent.record.aliasOf) parent.children.push(matcher); + } + return matcher; + } - * @internal - * - * @param search - search string to parse - * @returns a query object - */ - function parseQuery(search) { - const query = {}; - // avoid creating an object with an empty key and empty value - // because of split('&') - if (search === '' || search === '?') - return query; - const hasLeadingIM = search[0] === '?'; - const searchParams = (hasLeadingIM ? search.slice(1) : search).split('&'); - for (let i = 0; i < searchParams.length; ++i) { - // pre decode the + into space - const searchParam = searchParams[i].replace(PLUS_RE, ' '); - // allow the = character - const eqPos = searchParam.indexOf('='); - const key = decode(eqPos < 0 ? searchParam : searchParam.slice(0, eqPos)); - const value = eqPos < 0 ? null : decode(searchParam.slice(eqPos + 1)); - if (key in query) { - // an extra variable for ts types - let currentValue = query[key]; - if (!isArray(currentValue)) { - currentValue = query[key] = [currentValue]; - } - currentValue.push(value); - } - else { - query[key] = value; - } - } - return query; - } - /** - * Stringifies a {@link LocationQueryRaw} object. Like `URLSearchParams`, it - * doesn't prepend a `?` - * - * @internal - * - * @param query - query object to stringify - * @returns string version of the query without the leading `?` - */ - function stringifyQuery(query) { - let search = ''; - for (let key in query) { - const value = query[key]; - key = encodeQueryKey(key); - if (value == null) { - // only null adds the value - if (value !== undefined) { - search += (search.length ? '&' : '') + key; - } - continue; - } - // keep null values - const values = isArray(value) - ? value.map(v => v && encodeQueryValue(v)) - : [value && encodeQueryValue(value)]; - values.forEach(value => { - // skip undefined values in arrays as if they were not present - // smaller code than using filter - if (value !== undefined) { - // only append & with non-empty search - search += (search.length ? '&' : '') + key; - if (value != null) - search += '=' + value; - } - }); - } - return search; - } - /** - * Transforms a {@link LocationQueryRaw} into a {@link LocationQuery} by casting - * numbers into strings, removing keys with an undefined value and replacing - * undefined with null in arrays - * - * @param query - query object to normalize - * @returns a normalized query object - */ - function normalizeQuery(query) { - const normalizedQuery = {}; - for (const key in query) { - const value = query[key]; - if (value !== undefined) { - normalizedQuery[key] = isArray(value) - ? value.map(v => (v == null ? null : '' + v)) - : value == null - ? value - : '' + value; - } - } - return normalizedQuery; - } +//#endregion +//#region src/matcher/index.ts +/** + * Creates a Router Matcher. + * + * @internal + * @param routes - array of initial routes + * @param globalOptions - global route options + */ + function createRouterMatcher(routes, globalOptions) { + const matchers = []; + const matcherMap = /* @__PURE__ */ new Map(); + globalOptions = mergeOptions(PATH_PARSER_OPTIONS_DEFAULTS, globalOptions); + function getRecordMatcher(name) { + return matcherMap.get(name); + } + function addRoute(record, parent, originalRecord) { + const isRootAdd = !originalRecord; + const mainNormalizedRecord = normalizeRouteRecord(record); + checkChildMissingNameWithEmptyPath(mainNormalizedRecord, parent); + mainNormalizedRecord.aliasOf = originalRecord && originalRecord.record; + const options = mergeOptions(globalOptions, record); + const normalizedRecords = [mainNormalizedRecord]; + if ("alias" in record) { + const aliases = typeof record.alias === "string" ? [record.alias] : record.alias; + for (const alias of aliases) normalizedRecords.push(normalizeRouteRecord(assign({}, mainNormalizedRecord, { + components: originalRecord ? originalRecord.record.components : mainNormalizedRecord.components, + path: alias, + aliasOf: originalRecord ? originalRecord.record : mainNormalizedRecord + }))); + } + let matcher; + let originalMatcher; + for (const normalizedRecord of normalizedRecords) { + const { path } = normalizedRecord; + if (parent && path[0] !== "/") { + const parentPath = parent.record.path; + const connectingSlash = parentPath[parentPath.length - 1] === "/" ? "" : "/"; + normalizedRecord.path = parent.record.path + (path && connectingSlash + path); + } + if (normalizedRecord.path === "*") throw new Error("Catch all routes (\"*\") must now be defined using a param with a custom regexp.\nSee more at https://router.vuejs.org/guide/migration/#Removed-star-or-catch-all-routes."); + matcher = createRouteRecordMatcher(normalizedRecord, parent, options); + if (parent && path[0] === "/") checkMissingParamsInAbsolutePath(matcher, parent); + if (originalRecord) { + originalRecord.alias.push(matcher); + checkSameParams(originalRecord, matcher); + } else { + originalMatcher = originalMatcher || matcher; + if (originalMatcher !== matcher) originalMatcher.alias.push(matcher); + if (isRootAdd && record.name && !isAliasRecord(matcher)) { + checkSameNameAsAncestor(record, parent); + removeRoute(record.name); + } + } + if (isMatchable(matcher)) insertMatcher(matcher); + if (mainNormalizedRecord.children) { + const children = mainNormalizedRecord.children; + for (let i = 0; i < children.length; i++) addRoute(children[i], matcher, originalRecord && originalRecord.children[i]); + } + originalRecord = originalRecord || matcher; + } + return originalMatcher ? () => { + removeRoute(originalMatcher); + } : noop; + } + function removeRoute(matcherRef) { + if (isRouteName(matcherRef)) { + const matcher = matcherMap.get(matcherRef); + if (matcher) { + matcherMap.delete(matcherRef); + matchers.splice(matchers.indexOf(matcher), 1); + matcher.children.forEach(removeRoute); + matcher.alias.forEach(removeRoute); + } + } else { + const index = matchers.indexOf(matcherRef); + if (index > -1) { + matchers.splice(index, 1); + if (matcherRef.record.name) matcherMap.delete(matcherRef.record.name); + matcherRef.children.forEach(removeRoute); + matcherRef.alias.forEach(removeRoute); + } + } + } + function getRoutes() { + return matchers; + } + function insertMatcher(matcher) { + const index = findInsertionIndex(matcher, matchers); + matchers.splice(index, 0, matcher); + if (matcher.record.name && !isAliasRecord(matcher)) matcherMap.set(matcher.record.name, matcher); + } + function resolve(location$1, currentLocation) { + let matcher; + let params = {}; + let path; + let name; + if ("name" in location$1 && location$1.name) { + matcher = matcherMap.get(location$1.name); + if (!matcher) throw createRouterError(ErrorTypes.MATCHER_NOT_FOUND, { location: location$1 }); + { + const invalidParams = Object.keys(location$1.params || {}).filter((paramName) => !matcher.keys.find((k) => k.name === paramName)); + if (invalidParams.length) warn(`Discarded invalid param(s) "${invalidParams.join("\", \"")}" when navigating. See https://github.com/vuejs/router/blob/main/packages/router/CHANGELOG.md#414-2022-08-22 for more details.`); + } + name = matcher.record.name; + params = assign(pickParams(currentLocation.params, matcher.keys.filter((k) => !k.optional).concat(matcher.parent ? matcher.parent.keys.filter((k) => k.optional) : []).map((k) => k.name)), location$1.params && pickParams(location$1.params, matcher.keys.map((k) => k.name))); + path = matcher.stringify(params); + } else if (location$1.path != null) { + path = location$1.path; + if (!path.startsWith("/")) warn(`The Matcher cannot resolve relative paths but received "${path}". Unless you directly called \`matcher.resolve("${path}")\`, this is probably a bug in vue-router. Please open an issue at https://github.com/vuejs/router/issues/new/choose.`); + matcher = matchers.find((m) => m.re.test(path)); + if (matcher) { + params = matcher.parse(path); + name = matcher.record.name; + } + } else { + matcher = currentLocation.name ? matcherMap.get(currentLocation.name) : matchers.find((m) => m.re.test(currentLocation.path)); + if (!matcher) throw createRouterError(ErrorTypes.MATCHER_NOT_FOUND, { + location: location$1, + currentLocation + }); + name = matcher.record.name; + params = assign({}, currentLocation.params, location$1.params); + path = matcher.stringify(params); + } + const matched = []; + let parentMatcher = matcher; + while (parentMatcher) { + matched.unshift(parentMatcher.record); + parentMatcher = parentMatcher.parent; + } + return { + name, + path, + params, + matched, + meta: mergeMetaFields(matched) + }; + } + routes.forEach((route) => addRoute(route)); + function clearRoutes() { + matchers.length = 0; + matcherMap.clear(); + } + return { + addRoute, + resolve, + removeRoute, + clearRoutes, + getRoutes, + getRecordMatcher + }; + } + /** + * Picks an object param to contain only specified keys. + * + * @param params - params object to pick from + * @param keys - keys to pick + */ + function pickParams(params, keys) { + const newParams = {}; + for (const key of keys) if (key in params) newParams[key] = params[key]; + return newParams; + } + /** + * Normalizes a RouteRecordRaw. Creates a copy + * + * @param record + * @returns the normalized version + */ + function normalizeRouteRecord(record) { + const normalized = { + path: record.path, + redirect: record.redirect, + name: record.name, + meta: record.meta || {}, + aliasOf: record.aliasOf, + beforeEnter: record.beforeEnter, + props: normalizeRecordProps(record), + children: record.children || [], + instances: {}, + leaveGuards: /* @__PURE__ */ new Set(), + updateGuards: /* @__PURE__ */ new Set(), + enterCallbacks: {}, + components: "components" in record ? record.components || null : record.component && { default: record.component } + }; + Object.defineProperty(normalized, "mods", { value: {} }); + return normalized; + } + /** + * Normalize the optional `props` in a record to always be an object similar to + * components. Also accept a boolean for components. + * @param record + */ + function normalizeRecordProps(record) { + const propsObject = {}; + const props = record.props || false; + if ("component" in record) propsObject.default = props; + else for (const name in record.components) propsObject[name] = typeof props === "object" ? props[name] : props; + return propsObject; + } + /** + * Checks if a record or any of its parent is an alias + * @param record + */ + function isAliasRecord(record) { + while (record) { + if (record.record.aliasOf) return true; + record = record.parent; + } + return false; + } + /** + * Merge meta fields of an array of records + * + * @param matched - array of matched records + */ + function mergeMetaFields(matched) { + return matched.reduce((meta, record) => assign(meta, record.meta), {}); + } + function isSameParam(a, b) { + return a.name === b.name && a.optional === b.optional && a.repeatable === b.repeatable; + } + /** + * Check if a path and its alias have the same required params + * + * @param a - original record + * @param b - alias record + */ + function checkSameParams(a, b) { + for (const key of a.keys) if (!key.optional && !b.keys.find(isSameParam.bind(null, key))) return warn(`Alias "${b.record.path}" and the original record: "${a.record.path}" must have the exact same param named "${key.name}"`); + for (const key of b.keys) if (!key.optional && !a.keys.find(isSameParam.bind(null, key))) return warn(`Alias "${b.record.path}" and the original record: "${a.record.path}" must have the exact same param named "${key.name}"`); + } + /** + * A route with a name and a child with an empty path without a name should warn when adding the route + * + * @param mainNormalizedRecord - RouteRecordNormalized + * @param parent - RouteRecordMatcher + */ + function checkChildMissingNameWithEmptyPath(mainNormalizedRecord, parent) { + if (parent && parent.record.name && !mainNormalizedRecord.name && !mainNormalizedRecord.path) warn(`The route named "${String(parent.record.name)}" has a child without a name and an empty path. Using that name won't render the empty path child so you probably want to move the name to the child instead. If this is intentional, add a name to the child route to remove the warning.`); + } + function checkSameNameAsAncestor(record, parent) { + for (let ancestor = parent; ancestor; ancestor = ancestor.parent) if (ancestor.record.name === record.name) throw new Error(`A route named "${String(record.name)}" has been added as a ${parent === ancestor ? "child" : "descendant"} of a route with the same name. Route names must be unique and a nested route cannot use the same name as an ancestor.`); + } + function checkMissingParamsInAbsolutePath(record, parent) { + for (const key of parent.keys) if (!record.keys.find(isSameParam.bind(null, key))) return warn(`Absolute path "${record.record.path}" must have the exact same param named "${key.name}" as its parent "${parent.record.path}".`); + } + /** + * Performs a binary search to find the correct insertion index for a new matcher. + * + * Matchers are primarily sorted by their score. If scores are tied then we also consider parent/child relationships, + * with descendants coming before ancestors. If there's still a tie, new routes are inserted after existing routes. + * + * @param matcher - new matcher to be inserted + * @param matchers - existing matchers + */ + function findInsertionIndex(matcher, matchers) { + let lower = 0; + let upper = matchers.length; + while (lower !== upper) { + const mid = lower + upper >> 1; + if (comparePathParserScore(matcher, matchers[mid]) < 0) upper = mid; + else lower = mid + 1; + } + const insertionAncestor = getInsertionAncestor(matcher); + if (insertionAncestor) { + upper = matchers.lastIndexOf(insertionAncestor, upper - 1); + if (upper < 0) warn(`Finding ancestor route "${insertionAncestor.record.path}" failed for "${matcher.record.path}"`); + } + return upper; + } + function getInsertionAncestor(matcher) { + let ancestor = matcher; + while (ancestor = ancestor.parent) if (isMatchable(ancestor) && comparePathParserScore(matcher, ancestor) === 0) return ancestor; + } + /** + * Checks if a matcher can be reachable. This means if it's possible to reach it as a route. For example, routes without + * a component, or name, or redirect, are just used to group other routes. + * @param matcher + * @param matcher.record record of the matcher + * @returns + */ + function isMatchable({ record }) { + return !!(record.name || record.components && Object.keys(record.components).length || record.redirect); + } - /** - * RouteRecord being rendered by the closest ancestor Router View. Used for - * `onBeforeRouteUpdate` and `onBeforeRouteLeave`. rvlm stands for Router View - * Location Matched - * - * @internal - */ - const matchedRouteKey = Symbol('router view location matched' ); - /** - * Allows overriding the router view depth to control which component in - * `matched` is rendered. rvd stands for Router View Depth - * - * @internal - */ - const viewDepthKey = Symbol('router view depth' ); - /** - * Allows overriding the router instance returned by `useRouter` in tests. r - * stands for router - * - * @internal - */ - const routerKey = Symbol('router' ); - /** - * Allows overriding the current route returned by `useRoute` in tests. rl - * stands for route location - * - * @internal - */ - const routeLocationKey = Symbol('route location' ); - /** - * Allows overriding the current route used by router-view. Internally this is - * used when the `route` prop is passed. - * - * @internal - */ - const routerViewLocationKey = Symbol('router view location' ); +//#endregion +//#region src/query.ts +/** + * Transforms a queryString into a {@link LocationQuery} object. Accept both, a + * version with the leading `?` and without Should work as URLSearchParams + + * @internal + * + * @param search - search string to parse + * @returns a query object + */ + function parseQuery(search) { + const query = {}; + if (search === "" || search === "?") return query; + const searchParams = (search[0] === "?" ? search.slice(1) : search).split("&"); + for (let i = 0; i < searchParams.length; ++i) { + const searchParam = searchParams[i].replace(PLUS_RE, " "); + const eqPos = searchParam.indexOf("="); + const key = decode(eqPos < 0 ? searchParam : searchParam.slice(0, eqPos)); + const value = eqPos < 0 ? null : decode(searchParam.slice(eqPos + 1)); + if (key in query) { + let currentValue = query[key]; + if (!isArray(currentValue)) currentValue = query[key] = [currentValue]; + currentValue.push(value); + } else query[key] = value; + } + return query; + } + /** + * Stringifies a {@link LocationQueryRaw} object. Like `URLSearchParams`, it + * doesn't prepend a `?` + * + * @internal + * + * @param query - query object to stringify + * @returns string version of the query without the leading `?` + */ + function stringifyQuery(query) { + let search = ""; + for (let key in query) { + const value = query[key]; + key = encodeQueryKey(key); + if (value == null) { + if (value !== void 0) search += (search.length ? "&" : "") + key; + continue; + } + (isArray(value) ? value.map((v) => v && encodeQueryValue(v)) : [value && encodeQueryValue(value)]).forEach((value$1) => { + if (value$1 !== void 0) { + search += (search.length ? "&" : "") + key; + if (value$1 != null) search += "=" + value$1; + } + }); + } + return search; + } + /** + * Transforms a {@link LocationQueryRaw} into a {@link LocationQuery} by casting + * numbers into strings, removing keys with an undefined value and replacing + * undefined with null in arrays + * + * @param query - query object to normalize + * @returns a normalized query object + */ + function normalizeQuery(query) { + const normalizedQuery = {}; + for (const key in query) { + const value = query[key]; + if (value !== void 0) normalizedQuery[key] = isArray(value) ? value.map((v) => v == null ? null : "" + v) : value == null ? value : "" + value; + } + return normalizedQuery; + } - /** - * Create a list of callbacks that can be reset. Used to create before and after navigation guards list - */ - function useCallbacks() { - let handlers = []; - function add(handler) { - handlers.push(handler); - return () => { - const i = handlers.indexOf(handler); - if (i > -1) - handlers.splice(i, 1); - }; - } - function reset() { - handlers = []; - } - return { - add, - list: () => handlers.slice(), - reset, - }; - } +//#endregion +//#region src/injectionSymbols.ts +/** + * RouteRecord being rendered by the closest ancestor Router View. Used for + * `onBeforeRouteUpdate` and `onBeforeRouteLeave`. rvlm stands for Router View + * Location Matched + * + * @internal + */ + const matchedRouteKey = Symbol("router view location matched"); + /** + * Allows overriding the router view depth to control which component in + * `matched` is rendered. rvd stands for Router View Depth + * + * @internal + */ + const viewDepthKey = Symbol("router view depth"); + /** + * Allows overriding the router instance returned by `useRouter` in tests. r + * stands for router + * + * @internal + */ + const routerKey = Symbol("router"); + /** + * Allows overriding the current route returned by `useRoute` in tests. rl + * stands for route location + * + * @internal + */ + const routeLocationKey = Symbol("route location"); + /** + * Allows overriding the current route used by router-view. Internally this is + * used when the `route` prop is passed. + * + * @internal + */ + const routerViewLocationKey = Symbol("router view location"); - function registerGuard(record, name, guard) { - const removeFromList = () => { - record[name].delete(guard); - }; - vue.onUnmounted(removeFromList); - vue.onDeactivated(removeFromList); - vue.onActivated(() => { - record[name].add(guard); - }); - record[name].add(guard); - } - /** - * Add a navigation guard that triggers whenever the component for the current - * location is about to be left. Similar to {@link beforeRouteLeave} but can be - * used in any component. The guard is removed when the component is unmounted. - * - * @param leaveGuard - {@link NavigationGuard} - */ - function onBeforeRouteLeave(leaveGuard) { - if (!vue.getCurrentInstance()) { - warn('getCurrentInstance() returned null. onBeforeRouteLeave() must be called at the top of a setup function'); - return; - } - const activeRecord = vue.inject(matchedRouteKey, - // to avoid warning - {}).value; - if (!activeRecord) { - warn('No active route record was found when calling `onBeforeRouteLeave()`. Make sure you call this function inside a component child of . Maybe you called it inside of App.vue?'); - return; - } - registerGuard(activeRecord, 'leaveGuards', leaveGuard); - } - /** - * Add a navigation guard that triggers whenever the current location is about - * to be updated. Similar to {@link beforeRouteUpdate} but can be used in any - * component. The guard is removed when the component is unmounted. - * - * @param updateGuard - {@link NavigationGuard} - */ - function onBeforeRouteUpdate(updateGuard) { - if (!vue.getCurrentInstance()) { - warn('getCurrentInstance() returned null. onBeforeRouteUpdate() must be called at the top of a setup function'); - return; - } - const activeRecord = vue.inject(matchedRouteKey, - // to avoid warning - {}).value; - if (!activeRecord) { - warn('No active route record was found when calling `onBeforeRouteUpdate()`. Make sure you call this function inside a component child of . Maybe you called it inside of App.vue?'); - return; - } - registerGuard(activeRecord, 'updateGuards', updateGuard); - } - function guardToPromiseFn(guard, to, from, record, name, runWithContext = fn => fn()) { - // keep a reference to the enterCallbackArray to prevent pushing callbacks if a new navigation took place - const enterCallbackArray = record && - // name is defined if record is because of the function overload - (record.enterCallbacks[name] = record.enterCallbacks[name] || []); - return () => new Promise((resolve, reject) => { - const next = (valid) => { - if (valid === false) { - reject(createRouterError(4 /* ErrorTypes.NAVIGATION_ABORTED */, { - from, - to, - })); - } - else if (valid instanceof Error) { - reject(valid); - } - else if (isRouteLocation(valid)) { - reject(createRouterError(2 /* ErrorTypes.NAVIGATION_GUARD_REDIRECT */, { - from: to, - to: valid, - })); - } - else { - if (enterCallbackArray && - // since enterCallbackArray is truthy, both record and name also are - record.enterCallbacks[name] === enterCallbackArray && - typeof valid === 'function') { - enterCallbackArray.push(valid); - } - resolve(); - } - }; - // wrapping with Promise.resolve allows it to work with both async and sync guards - const guardReturn = runWithContext(() => guard.call(record && record.instances[name], to, from, canOnlyBeCalledOnce(next, to, from) )); - let guardCall = Promise.resolve(guardReturn); - if (guard.length < 3) - guardCall = guardCall.then(next); - if (guard.length > 2) { - const message = `The "next" callback was never called inside of ${guard.name ? '"' + guard.name + '"' : ''}:\n${guard.toString()}\n. If you are returning a value instead of calling "next", make sure to remove the "next" parameter from your function.`; - if (typeof guardReturn === 'object' && 'then' in guardReturn) { - guardCall = guardCall.then(resolvedValue => { - // @ts-expect-error: _called is added at canOnlyBeCalledOnce - if (!next._called) { - warn(message); - return Promise.reject(new Error('Invalid navigation guard')); - } - return resolvedValue; - }); - } - else if (guardReturn !== undefined) { - // @ts-expect-error: _called is added at canOnlyBeCalledOnce - if (!next._called) { - warn(message); - reject(new Error('Invalid navigation guard')); - return; - } - } - } - guardCall.catch(err => reject(err)); - }); - } - function canOnlyBeCalledOnce(next, to, from) { - let called = 0; - return function () { - if (called++ === 1) - warn(`The "next" callback was called more than once in one navigation guard when going from "${from.fullPath}" to "${to.fullPath}". It should be called exactly one time in each navigation guard. This will fail in production.`); - // @ts-expect-error: we put it in the original one because it's easier to check - next._called = true; - if (called === 1) - next.apply(null, arguments); - }; - } - function extractComponentsGuards(matched, guardType, to, from, runWithContext = fn => fn()) { - const guards = []; - for (const record of matched) { - if (!record.components && !record.children.length) { - warn(`Record with path "${record.path}" is either missing a "component(s)"` + - ` or "children" property.`); - } - for (const name in record.components) { - let rawComponent = record.components[name]; - { - if (!rawComponent || - (typeof rawComponent !== 'object' && - typeof rawComponent !== 'function')) { - warn(`Component "${name}" in record with path "${record.path}" is not` + - ` a valid component. Received "${String(rawComponent)}".`); - // throw to ensure we stop here but warn to ensure the message isn't - // missed by the user - throw new Error('Invalid route component'); - } - else if ('then' in rawComponent) { - // warn if user wrote import('/component.vue') instead of () => - // import('./component.vue') - warn(`Component "${name}" in record with path "${record.path}" is a ` + - `Promise instead of a function that returns a Promise. Did you ` + - `write "import('./MyPage.vue')" instead of ` + - `"() => import('./MyPage.vue')" ? This will break in ` + - `production if not fixed.`); - const promise = rawComponent; - rawComponent = () => promise; - } - else if (rawComponent.__asyncLoader && - // warn only once per component - !rawComponent.__warnedDefineAsync) { - rawComponent.__warnedDefineAsync = true; - warn(`Component "${name}" in record with path "${record.path}" is defined ` + - `using "defineAsyncComponent()". ` + - `Write "() => import('./MyPage.vue')" instead of ` + - `"defineAsyncComponent(() => import('./MyPage.vue'))".`); - } - } - // skip update and leave guards if the route component is not mounted - if (guardType !== 'beforeRouteEnter' && !record.instances[name]) - continue; - if (isRouteComponent(rawComponent)) { - // __vccOpts is added by vue-class-component and contain the regular options - const options = rawComponent.__vccOpts || rawComponent; - const guard = options[guardType]; - guard && - guards.push(guardToPromiseFn(guard, to, from, record, name, runWithContext)); - } - else { - // start requesting the chunk already - let componentPromise = rawComponent(); - if (!('catch' in componentPromise)) { - warn(`Component "${name}" in record with path "${record.path}" is a function that does not return a Promise. If you were passing a functional component, make sure to add a "displayName" to the component. This will break in production if not fixed.`); - componentPromise = Promise.resolve(componentPromise); - } - guards.push(() => componentPromise.then(resolved => { - if (!resolved) - throw new Error(`Couldn't resolve component "${name}" at "${record.path}"`); - const resolvedComponent = isESModule(resolved) - ? resolved.default - : resolved; - // keep the resolved module for plugins like data loaders - record.mods[name] = resolved; - // replace the function with the resolved component - // cannot be null or undefined because we went into the for loop - record.components[name] = resolvedComponent; - // __vccOpts is added by vue-class-component and contain the regular options - const options = resolvedComponent.__vccOpts || resolvedComponent; - const guard = options[guardType]; - return (guard && - guardToPromiseFn(guard, to, from, record, name, runWithContext)()); - })); - } - } - } - return guards; - } - /** - * Ensures a route is loaded, so it can be passed as o prop to ``. - * - * @param route - resolved route to load - */ - function loadRouteLocation(route) { - return route.matched.every(record => record.redirect) - ? Promise.reject(new Error('Cannot load a route that redirects.')) - : Promise.all(route.matched.map(record => record.components && - Promise.all(Object.keys(record.components).reduce((promises, name) => { - const rawComponent = record.components[name]; - if (typeof rawComponent === 'function' && - !('displayName' in rawComponent)) { - promises.push(rawComponent().then(resolved => { - if (!resolved) - return Promise.reject(new Error(`Couldn't resolve component "${name}" at "${record.path}". Ensure you passed a function that returns a promise.`)); - const resolvedComponent = isESModule(resolved) - ? resolved.default - : resolved; - // keep the resolved module for plugins like data loaders - record.mods[name] = resolved; - // replace the function with the resolved component - // cannot be null or undefined because we went into the for loop - record.components[name] = resolvedComponent; - return; - })); - } - return promises; - }, [])))).then(() => route); - } +//#endregion +//#region src/utils/callbacks.ts +/** + * Create a list of callbacks that can be reset. Used to create before and after navigation guards list + */ + function useCallbacks() { + let handlers = []; + function add(handler) { + handlers.push(handler); + return () => { + const i = handlers.indexOf(handler); + if (i > -1) handlers.splice(i, 1); + }; + } + function reset() { + handlers = []; + } + return { + add, + list: () => handlers.slice(), + reset + }; + } - // TODO: we could allow currentRoute as a prop to expose `isActive` and - // `isExactActive` behavior should go through an RFC - /** - * Returns the internal behavior of a {@link RouterLink} without the rendering part. - * - * @param props - a `to` location and an optional `replace` flag - */ - function useLink(props) { - const router = vue.inject(routerKey); - const currentRoute = vue.inject(routeLocationKey); - let hasPrevious = false; - let previousTo = null; - const route = vue.computed(() => { - const to = vue.unref(props.to); - if ((!hasPrevious || to !== previousTo)) { - if (!isRouteLocation(to)) { - if (hasPrevious) { - warn(`Invalid value for prop "to" in useLink()\n- to:`, to, `\n- previous to:`, previousTo, `\n- props:`, props); - } - else { - warn(`Invalid value for prop "to" in useLink()\n- to:`, to, `\n- props:`, props); - } - } - previousTo = to; - hasPrevious = true; - } - return router.resolve(to); - }); - const activeRecordIndex = vue.computed(() => { - const { matched } = route.value; - const { length } = matched; - const routeMatched = matched[length - 1]; - const currentMatched = currentRoute.matched; - if (!routeMatched || !currentMatched.length) - return -1; - const index = currentMatched.findIndex(isSameRouteRecord.bind(null, routeMatched)); - if (index > -1) - return index; - // possible parent record - const parentRecordPath = getOriginalPath(matched[length - 2]); - return ( - // we are dealing with nested routes - length > 1 && - // if the parent and matched route have the same path, this link is - // referring to the empty child. Or we currently are on a different - // child of the same parent - getOriginalPath(routeMatched) === parentRecordPath && - // avoid comparing the child with its parent - currentMatched[currentMatched.length - 1].path !== parentRecordPath - ? currentMatched.findIndex(isSameRouteRecord.bind(null, matched[length - 2])) - : index); - }); - const isActive = vue.computed(() => activeRecordIndex.value > -1 && - includesParams(currentRoute.params, route.value.params)); - const isExactActive = vue.computed(() => activeRecordIndex.value > -1 && - activeRecordIndex.value === currentRoute.matched.length - 1 && - isSameRouteLocationParams(currentRoute.params, route.value.params)); - function navigate(e = {}) { - if (guardEvent(e)) { - return router[vue.unref(props.replace) ? 'replace' : 'push'](vue.unref(props.to) - // avoid uncaught errors are they are logged anyway - ).catch(noop); - } - return Promise.resolve(); - } - // devtools only - if (isBrowser) { - const instance = vue.getCurrentInstance(); - if (instance) { - const linkContextDevtools = { - route: route.value, - isActive: isActive.value, - isExactActive: isExactActive.value, - error: null, - }; - // @ts-expect-error: this is internal - instance.__vrl_devtools = instance.__vrl_devtools || []; - // @ts-expect-error: this is internal - instance.__vrl_devtools.push(linkContextDevtools); - vue.watchEffect(() => { - linkContextDevtools.route = route.value; - linkContextDevtools.isActive = isActive.value; - linkContextDevtools.isExactActive = isExactActive.value; - linkContextDevtools.error = isRouteLocation(vue.unref(props.to)) - ? null - : 'Invalid "to" value'; - }, { flush: 'post' }); - } - } - /** - * NOTE: update {@link _RouterLinkI}'s `$slots` type when updating this - */ - return { - route, - href: vue.computed(() => route.value.href), - isActive, - isExactActive, - navigate, - }; - } - const RouterLinkImpl = /*#__PURE__*/ vue.defineComponent({ - name: 'RouterLink', - compatConfig: { MODE: 3 }, - props: { - to: { - type: [String, Object], - required: true, - }, - replace: Boolean, - activeClass: String, - // inactiveClass: String, - exactActiveClass: String, - custom: Boolean, - ariaCurrentValue: { - type: String, - default: 'page', - }, - }, - useLink, - setup(props, { slots }) { - const link = vue.reactive(useLink(props)); - const { options } = vue.inject(routerKey); - const elClass = vue.computed(() => ({ - [getLinkClass(props.activeClass, options.linkActiveClass, 'router-link-active')]: link.isActive, - // [getLinkClass( - // props.inactiveClass, - // options.linkInactiveClass, - // 'router-link-inactive' - // )]: !link.isExactActive, - [getLinkClass(props.exactActiveClass, options.linkExactActiveClass, 'router-link-exact-active')]: link.isExactActive, - })); - return () => { - const children = slots.default && slots.default(link); - return props.custom - ? children - : vue.h('a', { - 'aria-current': link.isExactActive - ? props.ariaCurrentValue - : null, - href: link.href, - // this would override user added attrs but Vue will still add - // the listener, so we end up triggering both - onClick: link.navigate, - class: elClass.value, - }, children); - }; - }, - }); - // export the public type for h/tsx inference - // also to avoid inline import() in generated d.ts files - /** - * Component to render a link that triggers a navigation on click. - */ - const RouterLink = RouterLinkImpl; - function guardEvent(e) { - // don't redirect with control keys - if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) - return; - // don't redirect when preventDefault called - if (e.defaultPrevented) - return; - // don't redirect on right click - if (e.button !== undefined && e.button !== 0) - return; - // don't redirect if `target="_blank"` - // @ts-expect-error getAttribute does exist - if (e.currentTarget && e.currentTarget.getAttribute) { - // @ts-expect-error getAttribute exists - const target = e.currentTarget.getAttribute('target'); - if (/\b_blank\b/i.test(target)) - return; - } - // this may be a Weex event which doesn't have this method - if (e.preventDefault) - e.preventDefault(); - return true; - } - function includesParams(outer, inner) { - for (const key in inner) { - const innerValue = inner[key]; - const outerValue = outer[key]; - if (typeof innerValue === 'string') { - if (innerValue !== outerValue) - return false; - } - else { - if (!isArray(outerValue) || - outerValue.length !== innerValue.length || - innerValue.some((value, i) => value !== outerValue[i])) - return false; - } - } - return true; - } - /** - * Get the original path value of a record by following its aliasOf - * @param record - */ - function getOriginalPath(record) { - return record ? (record.aliasOf ? record.aliasOf.path : record.path) : ''; - } - /** - * Utility class to get the active class based on defaults. - * @param propClass - * @param globalClass - * @param defaultClass - */ - const getLinkClass = (propClass, globalClass, defaultClass) => propClass != null - ? propClass - : globalClass != null - ? globalClass - : defaultClass; +//#endregion +//#region src/navigationGuards.ts + function registerGuard(record, name, guard) { + const removeFromList = () => { + record[name].delete(guard); + }; + (0, vue.onUnmounted)(removeFromList); + (0, vue.onDeactivated)(removeFromList); + (0, vue.onActivated)(() => { + record[name].add(guard); + }); + record[name].add(guard); + } + /** + * Add a navigation guard that triggers whenever the component for the current + * location is about to be left. Similar to {@link beforeRouteLeave} but can be + * used in any component. The guard is removed when the component is unmounted. + * + * @param leaveGuard - {@link NavigationGuard} + */ + function onBeforeRouteLeave(leaveGuard) { + if (!(0, vue.getCurrentInstance)()) { + warn("getCurrentInstance() returned null. onBeforeRouteLeave() must be called at the top of a setup function"); + return; + } + const activeRecord = (0, vue.inject)(matchedRouteKey, {}).value; + if (!activeRecord) { + warn("No active route record was found when calling `onBeforeRouteLeave()`. Make sure you call this function inside a component child of . Maybe you called it inside of App.vue?"); + return; + } + registerGuard(activeRecord, "leaveGuards", leaveGuard); + } + /** + * Add a navigation guard that triggers whenever the current location is about + * to be updated. Similar to {@link beforeRouteUpdate} but can be used in any + * component. The guard is removed when the component is unmounted. + * + * @param updateGuard - {@link NavigationGuard} + */ + function onBeforeRouteUpdate(updateGuard) { + if (!(0, vue.getCurrentInstance)()) { + warn("getCurrentInstance() returned null. onBeforeRouteUpdate() must be called at the top of a setup function"); + return; + } + const activeRecord = (0, vue.inject)(matchedRouteKey, {}).value; + if (!activeRecord) { + warn("No active route record was found when calling `onBeforeRouteUpdate()`. Make sure you call this function inside a component child of . Maybe you called it inside of App.vue?"); + return; + } + registerGuard(activeRecord, "updateGuards", updateGuard); + } + function guardToPromiseFn(guard, to, from, record, name, runWithContext = (fn) => fn()) { + const enterCallbackArray = record && (record.enterCallbacks[name] = record.enterCallbacks[name] || []); + return () => new Promise((resolve, reject) => { + const next = (valid) => { + if (valid === false) reject(createRouterError(ErrorTypes.NAVIGATION_ABORTED, { + from, + to + })); + else if (valid instanceof Error) reject(valid); + else if (isRouteLocation(valid)) reject(createRouterError(ErrorTypes.NAVIGATION_GUARD_REDIRECT, { + from: to, + to: valid + })); + else { + if (enterCallbackArray && record.enterCallbacks[name] === enterCallbackArray && typeof valid === "function") enterCallbackArray.push(valid); + resolve(); + } + }; + const guardReturn = runWithContext(() => guard.call(record && record.instances[name], to, from, canOnlyBeCalledOnce(next, to, from))); + let guardCall = Promise.resolve(guardReturn); + if (guard.length < 3) guardCall = guardCall.then(next); + if (guard.length > 2) { + const message = `The "next" callback was never called inside of ${guard.name ? "\"" + guard.name + "\"" : ""}:\n${guard.toString()}\n. If you are returning a value instead of calling "next", make sure to remove the "next" parameter from your function.`; + if (typeof guardReturn === "object" && "then" in guardReturn) guardCall = guardCall.then((resolvedValue) => { + if (!next._called) { + warn(message); + return Promise.reject(/* @__PURE__ */ new Error("Invalid navigation guard")); + } + return resolvedValue; + }); + else if (guardReturn !== void 0) { + if (!next._called) { + warn(message); + reject(/* @__PURE__ */ new Error("Invalid navigation guard")); + return; + } + } + } + guardCall.catch((err) => reject(err)); + }); + } + function canOnlyBeCalledOnce(next, to, from) { + let called = 0; + return function() { + if (called++ === 1) warn(`The "next" callback was called more than once in one navigation guard when going from "${from.fullPath}" to "${to.fullPath}". It should be called exactly one time in each navigation guard. This will fail in production.`); + next._called = true; + if (called === 1) next.apply(null, arguments); + }; + } + function extractComponentsGuards(matched, guardType, to, from, runWithContext = (fn) => fn()) { + const guards = []; + for (const record of matched) { + if (!record.components && record.children && !record.children.length) warn(`Record with path "${record.path}" is either missing a "component(s)" or "children" property.`); + for (const name in record.components) { + let rawComponent = record.components[name]; + if (!rawComponent || typeof rawComponent !== "object" && typeof rawComponent !== "function") { + warn(`Component "${name}" in record with path "${record.path}" is not a valid component. Received "${String(rawComponent)}".`); + throw new Error("Invalid route component"); + } else if ("then" in rawComponent) { + warn(`Component "${name}" in record with path "${record.path}" is a Promise instead of a function that returns a Promise. Did you write "import('./MyPage.vue')" instead of "() => import('./MyPage.vue')" ? This will break in production if not fixed.`); + const promise = rawComponent; + rawComponent = () => promise; + } else if (rawComponent.__asyncLoader && !rawComponent.__warnedDefineAsync) { + rawComponent.__warnedDefineAsync = true; + warn(`Component "${name}" in record with path "${record.path}" is defined using "defineAsyncComponent()". Write "() => import('./MyPage.vue')" instead of "defineAsyncComponent(() => import('./MyPage.vue'))".`); + } + if (guardType !== "beforeRouteEnter" && !record.instances[name]) continue; + if (isRouteComponent(rawComponent)) { + const guard = (rawComponent.__vccOpts || rawComponent)[guardType]; + guard && guards.push(guardToPromiseFn(guard, to, from, record, name, runWithContext)); + } else { + let componentPromise = rawComponent(); + if (!("catch" in componentPromise)) { + warn(`Component "${name}" in record with path "${record.path}" is a function that does not return a Promise. If you were passing a functional component, make sure to add a "displayName" to the component. This will break in production if not fixed.`); + componentPromise = Promise.resolve(componentPromise); + } + guards.push(() => componentPromise.then((resolved) => { + if (!resolved) throw new Error(`Couldn't resolve component "${name}" at "${record.path}"`); + const resolvedComponent = isESModule(resolved) ? resolved.default : resolved; + record.mods[name] = resolved; + record.components[name] = resolvedComponent; + const guard = (resolvedComponent.__vccOpts || resolvedComponent)[guardType]; + return guard && guardToPromiseFn(guard, to, from, record, name, runWithContext)(); + })); + } + } + } + return guards; + } + /** + * Ensures a route is loaded, so it can be passed as o prop to ``. + * + * @param route - resolved route to load + */ + function loadRouteLocation(route) { + return route.matched.every((record) => record.redirect) ? Promise.reject(/* @__PURE__ */ new Error("Cannot load a route that redirects.")) : Promise.all(route.matched.map((record) => record.components && Promise.all(Object.keys(record.components).reduce((promises, name) => { + const rawComponent = record.components[name]; + if (typeof rawComponent === "function" && !("displayName" in rawComponent)) promises.push(rawComponent().then((resolved) => { + if (!resolved) return Promise.reject(/* @__PURE__ */ new Error(`Couldn't resolve component "${name}" at "${record.path}". Ensure you passed a function that returns a promise.`)); + const resolvedComponent = isESModule(resolved) ? resolved.default : resolved; + record.mods[name] = resolved; + record.components[name] = resolvedComponent; + })); + return promises; + }, [])))).then(() => route); + } + /** + * Split the leaving, updating, and entering records. + * @internal + * + * @param to - Location we are navigating to + * @param from - Location we are navigating from + */ + function extractChangingRecords(to, from) { + const leavingRecords = []; + const updatingRecords = []; + const enteringRecords = []; + const len = Math.max(from.matched.length, to.matched.length); + for (let i = 0; i < len; i++) { + const recordFrom = from.matched[i]; + if (recordFrom) if (to.matched.find((record) => isSameRouteRecord(record, recordFrom))) updatingRecords.push(recordFrom); + else leavingRecords.push(recordFrom); + const recordTo = to.matched[i]; + if (recordTo) { + if (!from.matched.find((record) => isSameRouteRecord(record, recordTo))) enteringRecords.push(recordTo); + } + } + return [ + leavingRecords, + updatingRecords, + enteringRecords + ]; + } - const RouterViewImpl = /*#__PURE__*/ vue.defineComponent({ - name: 'RouterView', - // #674 we manually inherit them - inheritAttrs: false, - props: { - name: { - type: String, - default: 'default', - }, - route: Object, - }, - // Better compat for @vue/compat users - // https://github.com/vuejs/router/issues/1315 - compatConfig: { MODE: 3 }, - setup(props, { attrs, slots }) { - warnDeprecatedUsage(); - const injectedRoute = vue.inject(routerViewLocationKey); - const routeToDisplay = vue.computed(() => props.route || injectedRoute.value); - const injectedDepth = vue.inject(viewDepthKey, 0); - // The depth changes based on empty components option, which allows passthrough routes e.g. routes with children - // that are used to reuse the `path` property - const depth = vue.computed(() => { - let initialDepth = vue.unref(injectedDepth); - const { matched } = routeToDisplay.value; - let matchedRoute; - while ((matchedRoute = matched[initialDepth]) && - !matchedRoute.components) { - initialDepth++; - } - return initialDepth; - }); - const matchedRouteRef = vue.computed(() => routeToDisplay.value.matched[depth.value]); - vue.provide(viewDepthKey, vue.computed(() => depth.value + 1)); - vue.provide(matchedRouteKey, matchedRouteRef); - vue.provide(routerViewLocationKey, routeToDisplay); - const viewRef = vue.ref(); - // watch at the same time the component instance, the route record we are - // rendering, and the name - vue.watch(() => [viewRef.value, matchedRouteRef.value, props.name], ([instance, to, name], [oldInstance, from, oldName]) => { - // copy reused instances - if (to) { - // this will update the instance for new instances as well as reused - // instances when navigating to a new route - to.instances[name] = instance; - // the component instance is reused for a different route or name, so - // we copy any saved update or leave guards. With async setup, the - // mounting component will mount before the matchedRoute changes, - // making instance === oldInstance, so we check if guards have been - // added before. This works because we remove guards when - // unmounting/deactivating components - if (from && from !== to && instance && instance === oldInstance) { - if (!to.leaveGuards.size) { - to.leaveGuards = from.leaveGuards; - } - if (!to.updateGuards.size) { - to.updateGuards = from.updateGuards; - } - } - } - // trigger beforeRouteEnter next callbacks - if (instance && - to && - // if there is no instance but to and from are the same this might be - // the first visit - (!from || !isSameRouteRecord(to, from) || !oldInstance)) { - (to.enterCallbacks[name] || []).forEach(callback => callback(instance)); - } - }, { flush: 'post' }); - return () => { - const route = routeToDisplay.value; - // we need the value at the time we render because when we unmount, we - // navigated to a different location so the value is different - const currentName = props.name; - const matchedRoute = matchedRouteRef.value; - const ViewComponent = matchedRoute && matchedRoute.components[currentName]; - if (!ViewComponent) { - return normalizeSlot(slots.default, { Component: ViewComponent, route }); - } - // props from route configuration - const routePropsOption = matchedRoute.props[currentName]; - const routeProps = routePropsOption - ? routePropsOption === true - ? route.params - : typeof routePropsOption === 'function' - ? routePropsOption(route) - : routePropsOption - : null; - const onVnodeUnmounted = vnode => { - // remove the instance reference to prevent leak - if (vnode.component.isUnmounted) { - matchedRoute.instances[currentName] = null; - } - }; - const component = vue.h(ViewComponent, assign({}, routeProps, attrs, { - onVnodeUnmounted, - ref: viewRef, - })); - if (isBrowser && - component.ref) { - // TODO: can display if it's an alias, its props - const info = { - depth: depth.value, - name: matchedRoute.name, - path: matchedRoute.path, - meta: matchedRoute.meta, - }; - const internalInstances = isArray(component.ref) - ? component.ref.map(r => r.i) - : [component.ref.i]; - internalInstances.forEach(instance => { - // @ts-expect-error - instance.__vrv_devtools = info; - }); - } - return ( - // pass the vnode to the slot as a prop. - // h and both accept vnodes - normalizeSlot(slots.default, { Component: component, route }) || - component); - }; - }, - }); - function normalizeSlot(slot, data) { - if (!slot) - return null; - const slotContent = slot(data); - return slotContent.length === 1 ? slotContent[0] : slotContent; - } - // export the public type for h/tsx inference - // also to avoid inline import() in generated d.ts files - /** - * Component to display the current route the user is at. - */ - const RouterView = RouterViewImpl; - // warn against deprecated usage with & - // due to functional component being no longer eager in Vue 3 - function warnDeprecatedUsage() { - const instance = vue.getCurrentInstance(); - const parentName = instance.parent && instance.parent.type.name; - const parentSubTreeType = instance.parent && instance.parent.subTree && instance.parent.subTree.type; - if (parentName && - (parentName === 'KeepAlive' || parentName.includes('Transition')) && - typeof parentSubTreeType === 'object' && - parentSubTreeType.name === 'RouterView') { - const comp = parentName === 'KeepAlive' ? 'keep-alive' : 'transition'; - warn(` can no longer be used directly inside or .\n` + - `Use slot props instead:\n\n` + - `\n` + - ` <${comp}>\n` + - ` \n` + - ` \n` + - ``); - } - } +//#endregion +//#region src/RouterLink.ts +/** + * Returns the internal behavior of a {@link RouterLink} without the rendering part. + * + * @param props - a `to` location and an optional `replace` flag + */ + function useLink(props) { + const router = (0, vue.inject)(routerKey); + const currentRoute = (0, vue.inject)(routeLocationKey); + let hasPrevious = false; + let previousTo = null; + const route = (0, vue.computed)(() => { + const to = (0, vue.unref)(props.to); + if (!hasPrevious || to !== previousTo) { + if (!isRouteLocation(to)) if (hasPrevious) warn(`Invalid value for prop "to" in useLink()\n- to:`, to, `\n- previous to:`, previousTo, `\n- props:`, props); + else warn(`Invalid value for prop "to" in useLink()\n- to:`, to, `\n- props:`, props); + previousTo = to; + hasPrevious = true; + } + return router.resolve(to); + }); + const activeRecordIndex = (0, vue.computed)(() => { + const { matched } = route.value; + const { length } = matched; + const routeMatched = matched[length - 1]; + const currentMatched = currentRoute.matched; + if (!routeMatched || !currentMatched.length) return -1; + const index = currentMatched.findIndex(isSameRouteRecord.bind(null, routeMatched)); + if (index > -1) return index; + const parentRecordPath = getOriginalPath(matched[length - 2]); + return length > 1 && getOriginalPath(routeMatched) === parentRecordPath && currentMatched[currentMatched.length - 1].path !== parentRecordPath ? currentMatched.findIndex(isSameRouteRecord.bind(null, matched[length - 2])) : index; + }); + const isActive = (0, vue.computed)(() => activeRecordIndex.value > -1 && includesParams(currentRoute.params, route.value.params)); + const isExactActive = (0, vue.computed)(() => activeRecordIndex.value > -1 && activeRecordIndex.value === currentRoute.matched.length - 1 && isSameRouteLocationParams(currentRoute.params, route.value.params)); + function navigate(e = {}) { + if (guardEvent(e)) { + const p = router[(0, vue.unref)(props.replace) ? "replace" : "push"]((0, vue.unref)(props.to)).catch(noop); + if (props.viewTransition && typeof document !== "undefined" && "startViewTransition" in document) document.startViewTransition(() => p); + return p; + } + return Promise.resolve(); + } + if (isBrowser) { + const instance = (0, vue.getCurrentInstance)(); + if (instance) { + const linkContextDevtools = { + route: route.value, + isActive: isActive.value, + isExactActive: isExactActive.value, + error: null + }; + instance.__vrl_devtools = instance.__vrl_devtools || []; + instance.__vrl_devtools.push(linkContextDevtools); + (0, vue.watchEffect)(() => { + linkContextDevtools.route = route.value; + linkContextDevtools.isActive = isActive.value; + linkContextDevtools.isExactActive = isExactActive.value; + linkContextDevtools.error = isRouteLocation((0, vue.unref)(props.to)) ? null : "Invalid \"to\" value"; + }, { flush: "post" }); + } + } + /** + * NOTE: update {@link _RouterLinkI}'s `$slots` type when updating this + */ + return { + route, + href: (0, vue.computed)(() => route.value.href), + isActive, + isExactActive, + navigate + }; + } + function preferSingleVNode(vnodes) { + return vnodes.length === 1 ? vnodes[0] : vnodes; + } + const RouterLinkImpl = /* @__PURE__ */ (0, vue.defineComponent)({ + name: "RouterLink", + compatConfig: { MODE: 3 }, + props: { + to: { + type: [String, Object], + required: true + }, + replace: Boolean, + activeClass: String, + exactActiveClass: String, + custom: Boolean, + ariaCurrentValue: { + type: String, + default: "page" + }, + viewTransition: Boolean + }, + useLink, + setup(props, { slots }) { + const link = (0, vue.reactive)(useLink(props)); + const { options } = (0, vue.inject)(routerKey); + const elClass = (0, vue.computed)(() => ({ + [getLinkClass(props.activeClass, options.linkActiveClass, "router-link-active")]: link.isActive, + [getLinkClass(props.exactActiveClass, options.linkExactActiveClass, "router-link-exact-active")]: link.isExactActive + })); + return () => { + const children = slots.default && preferSingleVNode(slots.default(link)); + return props.custom ? children : (0, vue.h)("a", { + "aria-current": link.isExactActive ? props.ariaCurrentValue : null, + href: link.href, + onClick: link.navigate, + class: elClass.value + }, children); + }; + } + }); + /** + * Component to render a link that triggers a navigation on click. + */ + const RouterLink = RouterLinkImpl; + function guardEvent(e) { + if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) return; + if (e.defaultPrevented) return; + if (e.button !== void 0 && e.button !== 0) return; + if (e.currentTarget && e.currentTarget.getAttribute) { + const target = e.currentTarget.getAttribute("target"); + if (/\b_blank\b/i.test(target)) return; + } + if (e.preventDefault) e.preventDefault(); + return true; + } + function includesParams(outer, inner) { + for (const key in inner) { + const innerValue = inner[key]; + const outerValue = outer[key]; + if (typeof innerValue === "string") { + if (innerValue !== outerValue) return false; + } else if (!isArray(outerValue) || outerValue.length !== innerValue.length || innerValue.some((value, i) => value !== outerValue[i])) return false; + } + return true; + } + /** + * Get the original path value of a record by following its aliasOf + * @param record + */ + function getOriginalPath(record) { + return record ? record.aliasOf ? record.aliasOf.path : record.path : ""; + } + /** + * Utility class to get the active class based on defaults. + * @param propClass + * @param globalClass + * @param defaultClass + */ + const getLinkClass = (propClass, globalClass, defaultClass) => propClass != null ? propClass : globalClass != null ? globalClass : defaultClass; - function getDevtoolsGlobalHook() { - return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__; - } - function getTarget() { - // @ts-expect-error navigator and windows are not available in all environments - return (typeof navigator !== 'undefined' && typeof window !== 'undefined') - ? window - : typeof globalThis !== 'undefined' - ? globalThis - : {}; - } - const isProxyAvailable = typeof Proxy === 'function'; +//#endregion +//#region src/RouterView.ts + const RouterViewImpl = /* @__PURE__ */ (0, vue.defineComponent)({ + name: "RouterView", + inheritAttrs: false, + props: { + name: { + type: String, + default: "default" + }, + route: Object + }, + compatConfig: { MODE: 3 }, + setup(props, { attrs, slots }) { + warnDeprecatedUsage(); + const injectedRoute = (0, vue.inject)(routerViewLocationKey); + const routeToDisplay = (0, vue.computed)(() => props.route || injectedRoute.value); + const injectedDepth = (0, vue.inject)(viewDepthKey, 0); + const depth = (0, vue.computed)(() => { + let initialDepth = (0, vue.unref)(injectedDepth); + const { matched } = routeToDisplay.value; + let matchedRoute; + while ((matchedRoute = matched[initialDepth]) && !matchedRoute.components) initialDepth++; + return initialDepth; + }); + const matchedRouteRef = (0, vue.computed)(() => routeToDisplay.value.matched[depth.value]); + (0, vue.provide)(viewDepthKey, (0, vue.computed)(() => depth.value + 1)); + (0, vue.provide)(matchedRouteKey, matchedRouteRef); + (0, vue.provide)(routerViewLocationKey, routeToDisplay); + const viewRef = (0, vue.ref)(); + (0, vue.watch)(() => [ + viewRef.value, + matchedRouteRef.value, + props.name + ], ([instance, to, name], [oldInstance, from, oldName]) => { + if (to) { + to.instances[name] = instance; + if (from && from !== to && instance && instance === oldInstance) { + if (!to.leaveGuards.size) to.leaveGuards = from.leaveGuards; + if (!to.updateGuards.size) to.updateGuards = from.updateGuards; + } + } + if (instance && to && (!from || !isSameRouteRecord(to, from) || !oldInstance)) (to.enterCallbacks[name] || []).forEach((callback) => callback(instance)); + }, { flush: "post" }); + return () => { + const route = routeToDisplay.value; + const currentName = props.name; + const matchedRoute = matchedRouteRef.value; + const ViewComponent = matchedRoute && matchedRoute.components[currentName]; + if (!ViewComponent) return normalizeSlot(slots.default, { + Component: ViewComponent, + route + }); + const routePropsOption = matchedRoute.props[currentName]; + const routeProps = routePropsOption ? routePropsOption === true ? route.params : typeof routePropsOption === "function" ? routePropsOption(route) : routePropsOption : null; + const onVnodeUnmounted = (vnode) => { + if (vnode.component.isUnmounted) matchedRoute.instances[currentName] = null; + }; + const component = (0, vue.h)(ViewComponent, assign({}, routeProps, attrs, { + onVnodeUnmounted, + ref: viewRef + })); + if (isBrowser && component.ref) { + const info = { + depth: depth.value, + name: matchedRoute.name, + path: matchedRoute.path, + meta: matchedRoute.meta + }; + (isArray(component.ref) ? component.ref.map((r) => r.i) : [component.ref.i]).forEach((instance) => { + instance.__vrv_devtools = info; + }); + } + return normalizeSlot(slots.default, { + Component: component, + route + }) || component; + }; + } + }); + function normalizeSlot(slot, data) { + if (!slot) return null; + const slotContent = slot(data); + return slotContent.length === 1 ? slotContent[0] : slotContent; + } + /** + * Component to display the current route the user is at. + */ + const RouterView = RouterViewImpl; + function warnDeprecatedUsage() { + const instance = (0, vue.getCurrentInstance)(); + const parentName = instance.parent && instance.parent.type.name; + const parentSubTreeType = instance.parent && instance.parent.subTree && instance.parent.subTree.type; + if (parentName && (parentName === "KeepAlive" || parentName.includes("Transition")) && typeof parentSubTreeType === "object" && parentSubTreeType.name === "RouterView") { + const comp = parentName === "KeepAlive" ? "keep-alive" : "transition"; + warn(` can no longer be used directly inside or . +Use slot props instead: - const HOOK_SETUP = 'devtools-plugin:setup'; - const HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set'; + + <${comp}>\n \n \n`); + } + } - let supported; - let perf; - function isPerformanceSupported() { - var _a; - if (supported !== undefined) { - return supported; - } - if (typeof window !== 'undefined' && window.performance) { - supported = true; - perf = window.performance; - } - else if (typeof globalThis !== 'undefined' && ((_a = globalThis.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) { - supported = true; - perf = globalThis.perf_hooks.performance; - } - else { - supported = false; - } - return supported; - } - function now() { - return isPerformanceSupported() ? perf.now() : Date.now(); - } +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/env.js + var require_env = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/env.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + function getDevtoolsGlobalHook() { + return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__; + } + exports.getDevtoolsGlobalHook = getDevtoolsGlobalHook; + function getTarget() { + return typeof navigator !== "undefined" && typeof window !== "undefined" ? window : typeof globalThis !== "undefined" ? globalThis : {}; + } + exports.getTarget = getTarget; + exports.isProxyAvailable = typeof Proxy === "function"; + }) }); - class ApiProxy { - constructor(plugin, hook) { - this.target = null; - this.targetQueue = []; - this.onQueue = []; - this.plugin = plugin; - this.hook = hook; - const defaultSettings = {}; - if (plugin.settings) { - for (const id in plugin.settings) { - const item = plugin.settings[id]; - defaultSettings[id] = item.defaultValue; - } - } - const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`; - let currentSettings = Object.assign({}, defaultSettings); - try { - const raw = localStorage.getItem(localSettingsSaveId); - const data = JSON.parse(raw); - Object.assign(currentSettings, data); - } - catch (e) { - // noop - } - this.fallbacks = { - getSettings() { - return currentSettings; - }, - setSettings(value) { - try { - localStorage.setItem(localSettingsSaveId, JSON.stringify(value)); - } - catch (e) { - // noop - } - currentSettings = value; - }, - now() { - return now(); - }, - }; - if (hook) { - hook.on(HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => { - if (pluginId === this.plugin.id) { - this.fallbacks.setSettings(value); - } - }); - } - this.proxiedOn = new Proxy({}, { - get: (_target, prop) => { - if (this.target) { - return this.target.on[prop]; - } - else { - return (...args) => { - this.onQueue.push({ - method: prop, - args, - }); - }; - } - }, - }); - this.proxiedTarget = new Proxy({}, { - get: (_target, prop) => { - if (this.target) { - return this.target[prop]; - } - else if (prop === 'on') { - return this.proxiedOn; - } - else if (Object.keys(this.fallbacks).includes(prop)) { - return (...args) => { - this.targetQueue.push({ - method: prop, - args, - resolve: () => { }, - }); - return this.fallbacks[prop](...args); - }; - } - else { - return (...args) => { - return new Promise((resolve) => { - this.targetQueue.push({ - method: prop, - args, - resolve, - }); - }); - }; - } - }, - }); - } - async setRealTarget(target) { - this.target = target; - for (const item of this.onQueue) { - this.target.on[item.method](...item.args); - } - for (const item of this.targetQueue) { - item.resolve(await this.target[item.method](...item.args)); - } - } - } +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/const.js + var require_const = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/const.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + exports.HOOK_SETUP = "devtools-plugin:setup"; + exports.HOOK_PLUGIN_SETTINGS_SET = "plugin:settings:set"; + }) }); - function setupDevtoolsPlugin(pluginDescriptor, setupFn) { - const descriptor = pluginDescriptor; - const target = getTarget(); - const hook = getDevtoolsGlobalHook(); - const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy; - if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) { - hook.emit(HOOK_SETUP, pluginDescriptor, setupFn); - } - else { - const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null; - const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || []; - list.push({ - pluginDescriptor: descriptor, - setupFn, - proxy, - }); - if (proxy) { - setupFn(proxy.proxiedTarget); - } - } - } +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/time.js + var require_time = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/time.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + let supported; + let perf; + function isPerformanceSupported() { + var _a; + if (supported !== void 0) return supported; + if (typeof window !== "undefined" && window.performance) { + supported = true; + perf = window.performance; + } else if (typeof globalThis !== "undefined" && ((_a = globalThis.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) { + supported = true; + perf = globalThis.perf_hooks.performance; + } else supported = false; + return supported; + } + exports.isPerformanceSupported = isPerformanceSupported; + function now() { + return isPerformanceSupported() ? perf.now() : Date.now(); + } + exports.now = now; + }) }); - /** - * Copies a route location and removes any problematic properties that cannot be shown in devtools (e.g. Vue instances). - * - * @param routeLocation - routeLocation to format - * @param tooltip - optional tooltip - * @returns a copy of the routeLocation - */ - function formatRouteLocation(routeLocation, tooltip) { - const copy = assign({}, routeLocation, { - // remove variables that can contain vue instances - matched: routeLocation.matched.map(matched => omit(matched, ['instances', 'children', 'aliasOf'])), - }); - return { - _custom: { - type: null, - readOnly: true, - display: routeLocation.fullPath, - tooltip, - value: copy, - }, - }; - } - function formatDisplay(display) { - return { - _custom: { - display, - }, - }; - } - // to support multiple router instances - let routerId = 0; - function addDevtools(app, router, matcher) { - // Take over router.beforeEach and afterEach - // make sure we are not registering the devtool twice - if (router.__hasDevtools) - return; - router.__hasDevtools = true; - // increment to support multiple router instances - const id = routerId++; - setupDevtoolsPlugin({ - id: 'org.vuejs.router' + (id ? '.' + id : ''), - label: 'Vue Router', - packageName: 'vue-router', - homepage: 'https://router.vuejs.org', - logo: 'https://router.vuejs.org/logo.png', - componentStateTypes: ['Routing'], - app, - }, api => { - if (typeof api.now !== 'function') { - console.warn('[Vue Router]: You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html.'); - } - // display state added by the router - api.on.inspectComponent((payload, ctx) => { - if (payload.instanceData) { - payload.instanceData.state.push({ - type: 'Routing', - key: '$route', - editable: false, - value: formatRouteLocation(router.currentRoute.value, 'Current Route'), - }); - } - }); - // mark router-link as active and display tags on router views - api.on.visitComponentTree(({ treeNode: node, componentInstance }) => { - if (componentInstance.__vrv_devtools) { - const info = componentInstance.__vrv_devtools; - node.tags.push({ - label: (info.name ? `${info.name.toString()}: ` : '') + info.path, - textColor: 0, - tooltip: 'This component is rendered by <router-view>', - backgroundColor: PINK_500, - }); - } - // if multiple useLink are used - if (isArray(componentInstance.__vrl_devtools)) { - componentInstance.__devtoolsApi = api; - componentInstance.__vrl_devtools.forEach(devtoolsData => { - let label = devtoolsData.route.path; - let backgroundColor = ORANGE_400; - let tooltip = ''; - let textColor = 0; - if (devtoolsData.error) { - label = devtoolsData.error; - backgroundColor = RED_100; - textColor = RED_700; - } - else if (devtoolsData.isExactActive) { - backgroundColor = LIME_500; - tooltip = 'This is exactly active'; - } - else if (devtoolsData.isActive) { - backgroundColor = BLUE_600; - tooltip = 'This link is active'; - } - node.tags.push({ - label, - textColor, - tooltip, - backgroundColor, - }); - }); - } - }); - vue.watch(router.currentRoute, () => { - // refresh active state - refreshRoutesView(); - api.notifyComponentUpdate(); - api.sendInspectorTree(routerInspectorId); - api.sendInspectorState(routerInspectorId); - }); - const navigationsLayerId = 'router:navigations:' + id; - api.addTimelineLayer({ - id: navigationsLayerId, - label: `Router${id ? ' ' + id : ''} Navigations`, - color: 0x40a8c4, - }); - // const errorsLayerId = 'router:errors' - // api.addTimelineLayer({ - // id: errorsLayerId, - // label: 'Router Errors', - // color: 0xea5455, - // }) - router.onError((error, to) => { - api.addTimelineEvent({ - layerId: navigationsLayerId, - event: { - title: 'Error during Navigation', - subtitle: to.fullPath, - logType: 'error', - time: api.now(), - data: { error }, - groupId: to.meta.__navigationId, - }, - }); - }); - // attached to `meta` and used to group events - let navigationId = 0; - router.beforeEach((to, from) => { - const data = { - guard: formatDisplay('beforeEach'), - from: formatRouteLocation(from, 'Current Location during this navigation'), - to: formatRouteLocation(to, 'Target location'), - }; - // Used to group navigations together, hide from devtools - Object.defineProperty(to.meta, '__navigationId', { - value: navigationId++, - }); - api.addTimelineEvent({ - layerId: navigationsLayerId, - event: { - time: api.now(), - title: 'Start of navigation', - subtitle: to.fullPath, - data, - groupId: to.meta.__navigationId, - }, - }); - }); - router.afterEach((to, from, failure) => { - const data = { - guard: formatDisplay('afterEach'), - }; - if (failure) { - data.failure = { - _custom: { - type: Error, - readOnly: true, - display: failure ? failure.message : '', - tooltip: 'Navigation Failure', - value: failure, - }, - }; - data.status = formatDisplay('❌'); - } - else { - data.status = formatDisplay('✅'); - } - // we set here to have the right order - data.from = formatRouteLocation(from, 'Current Location during this navigation'); - data.to = formatRouteLocation(to, 'Target location'); - api.addTimelineEvent({ - layerId: navigationsLayerId, - event: { - title: 'End of navigation', - subtitle: to.fullPath, - time: api.now(), - data, - logType: failure ? 'warning' : 'default', - groupId: to.meta.__navigationId, - }, - }); - }); - /** - * Inspector of Existing routes - */ - const routerInspectorId = 'router-inspector:' + id; - api.addInspector({ - id: routerInspectorId, - label: 'Routes' + (id ? ' ' + id : ''), - icon: 'book', - treeFilterPlaceholder: 'Search routes', - }); - function refreshRoutesView() { - // the routes view isn't active - if (!activeRoutesPayload) - return; - const payload = activeRoutesPayload; - // children routes will appear as nested - let routes = matcher.getRoutes().filter(route => !route.parent || - // these routes have a parent with no component which will not appear in the view - // therefore we still need to include them - !route.parent.record.components); - // reset match state to false - routes.forEach(resetMatchStateOnRouteRecord); - // apply a match state if there is a payload - if (payload.filter) { - routes = routes.filter(route => - // save matches state based on the payload - isRouteMatching(route, payload.filter.toLowerCase())); - } - // mark active routes - routes.forEach(route => markRouteRecordActive(route, router.currentRoute.value)); - payload.rootNodes = routes.map(formatRouteRecordForInspector); - } - let activeRoutesPayload; - api.on.getInspectorTree(payload => { - activeRoutesPayload = payload; - if (payload.app === app && payload.inspectorId === routerInspectorId) { - refreshRoutesView(); - } - }); - /** - * Display information about the currently selected route record - */ - api.on.getInspectorState(payload => { - if (payload.app === app && payload.inspectorId === routerInspectorId) { - const routes = matcher.getRoutes(); - const route = routes.find(route => route.record.__vd_id === payload.nodeId); - if (route) { - payload.state = { - options: formatRouteRecordMatcherForStateInspector(route), - }; - } - } - }); - api.sendInspectorTree(routerInspectorId); - api.sendInspectorState(routerInspectorId); - }); - } - function modifierForKey(key) { - if (key.optional) { - return key.repeatable ? '*' : '?'; - } - else { - return key.repeatable ? '+' : ''; - } - } - function formatRouteRecordMatcherForStateInspector(route) { - const { record } = route; - const fields = [ - { editable: false, key: 'path', value: record.path }, - ]; - if (record.name != null) { - fields.push({ - editable: false, - key: 'name', - value: record.name, - }); - } - fields.push({ editable: false, key: 'regexp', value: route.re }); - if (route.keys.length) { - fields.push({ - editable: false, - key: 'keys', - value: { - _custom: { - type: null, - readOnly: true, - display: route.keys - .map(key => `${key.name}${modifierForKey(key)}`) - .join(' '), - tooltip: 'Param keys', - value: route.keys, - }, - }, - }); - } - if (record.redirect != null) { - fields.push({ - editable: false, - key: 'redirect', - value: record.redirect, - }); - } - if (route.alias.length) { - fields.push({ - editable: false, - key: 'aliases', - value: route.alias.map(alias => alias.record.path), - }); - } - if (Object.keys(route.record.meta).length) { - fields.push({ - editable: false, - key: 'meta', - value: route.record.meta, - }); - } - fields.push({ - key: 'score', - editable: false, - value: { - _custom: { - type: null, - readOnly: true, - display: route.score.map(score => score.join(', ')).join(' | '), - tooltip: 'Score used to sort routes', - value: route.score, - }, - }, - }); - return fields; - } - /** - * Extracted from tailwind palette - */ - const PINK_500 = 0xec4899; - const BLUE_600 = 0x2563eb; - const LIME_500 = 0x84cc16; - const CYAN_400 = 0x22d3ee; - const ORANGE_400 = 0xfb923c; - // const GRAY_100 = 0xf4f4f5 - const DARK = 0x666666; - const RED_100 = 0xfee2e2; - const RED_700 = 0xb91c1c; - function formatRouteRecordForInspector(route) { - const tags = []; - const { record } = route; - if (record.name != null) { - tags.push({ - label: String(record.name), - textColor: 0, - backgroundColor: CYAN_400, - }); - } - if (record.aliasOf) { - tags.push({ - label: 'alias', - textColor: 0, - backgroundColor: ORANGE_400, - }); - } - if (route.__vd_match) { - tags.push({ - label: 'matches', - textColor: 0, - backgroundColor: PINK_500, - }); - } - if (route.__vd_exactActive) { - tags.push({ - label: 'exact', - textColor: 0, - backgroundColor: LIME_500, - }); - } - if (route.__vd_active) { - tags.push({ - label: 'active', - textColor: 0, - backgroundColor: BLUE_600, - }); - } - if (record.redirect) { - tags.push({ - label: typeof record.redirect === 'string' - ? `redirect: ${record.redirect}` - : 'redirects', - textColor: 0xffffff, - backgroundColor: DARK, - }); - } - // add an id to be able to select it. Using the `path` is not possible because - // empty path children would collide with their parents - let id = record.__vd_id; - if (id == null) { - id = String(routeRecordId++); - record.__vd_id = id; - } - return { - id, - label: record.path, - tags, - children: route.children.map(formatRouteRecordForInspector), - }; - } - // incremental id for route records and inspector state - let routeRecordId = 0; - const EXTRACT_REGEXP_RE = /^\/(.*)\/([a-z]*)$/; - function markRouteRecordActive(route, currentRoute) { - // no route will be active if matched is empty - // reset the matching state - const isExactActive = currentRoute.matched.length && - isSameRouteRecord(currentRoute.matched[currentRoute.matched.length - 1], route.record); - route.__vd_exactActive = route.__vd_active = isExactActive; - if (!isExactActive) { - route.__vd_active = currentRoute.matched.some(match => isSameRouteRecord(match, route.record)); - } - route.children.forEach(childRoute => markRouteRecordActive(childRoute, currentRoute)); - } - function resetMatchStateOnRouteRecord(route) { - route.__vd_match = false; - route.children.forEach(resetMatchStateOnRouteRecord); - } - function isRouteMatching(route, filter) { - const found = String(route.re).match(EXTRACT_REGEXP_RE); - route.__vd_match = false; - if (!found || found.length < 3) { - return false; - } - // use a regexp without $ at the end to match nested routes better - const nonEndingRE = new RegExp(found[1].replace(/\$$/, ''), found[2]); - if (nonEndingRE.test(filter)) { - // mark children as matches - route.children.forEach(child => isRouteMatching(child, filter)); - // exception case: `/` - if (route.record.path !== '/' || filter === '/') { - route.__vd_match = route.re.test(filter); - return true; - } - // hide the / route - return false; - } - const path = route.record.path.toLowerCase(); - const decodedPath = decode(path); - // also allow partial matching on the path - if (!filter.startsWith('/') && - (decodedPath.includes(filter) || path.includes(filter))) - return true; - if (decodedPath.startsWith(filter) || path.startsWith(filter)) - return true; - if (route.record.name && String(route.record.name).includes(filter)) - return true; - return route.children.some(child => isRouteMatching(child, filter)); - } - function omit(obj, keys) { - const ret = {}; - for (const key in obj) { - if (!keys.includes(key)) { - // @ts-expect-error - ret[key] = obj[key]; - } - } - return ret; - } +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/proxy.js + var require_proxy = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/proxy.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + const const_js_1$1 = require_const(); + const time_js_1 = require_time(); + var ApiProxy = class { + constructor(plugin, hook) { + this.target = null; + this.targetQueue = []; + this.onQueue = []; + this.plugin = plugin; + this.hook = hook; + const defaultSettings = {}; + if (plugin.settings) for (const id in plugin.settings) defaultSettings[id] = plugin.settings[id].defaultValue; + const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`; + let currentSettings = Object.assign({}, defaultSettings); + try { + const raw = localStorage.getItem(localSettingsSaveId); + const data = JSON.parse(raw); + Object.assign(currentSettings, data); + } catch (e) {} + this.fallbacks = { + getSettings() { + return currentSettings; + }, + setSettings(value) { + try { + localStorage.setItem(localSettingsSaveId, JSON.stringify(value)); + } catch (e) {} + currentSettings = value; + }, + now() { + return (0, time_js_1.now)(); + } + }; + if (hook) hook.on(const_js_1$1.HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => { + if (pluginId === this.plugin.id) this.fallbacks.setSettings(value); + }); + this.proxiedOn = new Proxy({}, { get: (_target, prop) => { + if (this.target) return this.target.on[prop]; + else return (...args) => { + this.onQueue.push({ + method: prop, + args + }); + }; + } }); + this.proxiedTarget = new Proxy({}, { get: (_target, prop) => { + if (this.target) return this.target[prop]; + else if (prop === "on") return this.proxiedOn; + else if (Object.keys(this.fallbacks).includes(prop)) return (...args) => { + this.targetQueue.push({ + method: prop, + args, + resolve: () => {} + }); + return this.fallbacks[prop](...args); + }; + else return (...args) => { + return new Promise((resolve) => { + this.targetQueue.push({ + method: prop, + args, + resolve + }); + }); + }; + } }); + } + async setRealTarget(target) { + this.target = target; + for (const item of this.onQueue) this.target.on[item.method](...item.args); + for (const item of this.targetQueue) item.resolve(await this.target[item.method](...item.args)); + } + }; + exports.ApiProxy = ApiProxy; + }) }); - /** - * Creates a Router instance that can be used by a Vue app. - * - * @param options - {@link RouterOptions} - */ - function createRouter(options) { - const matcher = createRouterMatcher(options.routes, options); - const parseQuery$1 = options.parseQuery || parseQuery; - const stringifyQuery$1 = options.stringifyQuery || stringifyQuery; - const routerHistory = options.history; - if (!routerHistory) - throw new Error('Provide the "history" option when calling "createRouter()":' + - ' https://router.vuejs.org/api/interfaces/RouterOptions.html#history'); - const beforeGuards = useCallbacks(); - const beforeResolveGuards = useCallbacks(); - const afterGuards = useCallbacks(); - const currentRoute = vue.shallowRef(START_LOCATION_NORMALIZED); - let pendingLocation = START_LOCATION_NORMALIZED; - // leave the scrollRestoration if no scrollBehavior is provided - if (isBrowser && options.scrollBehavior && 'scrollRestoration' in history) { - history.scrollRestoration = 'manual'; - } - const normalizeParams = applyToParams.bind(null, paramValue => '' + paramValue); - const encodeParams = applyToParams.bind(null, encodeParam); - const decodeParams = - // @ts-expect-error: intentionally avoid the type check - applyToParams.bind(null, decode); - function addRoute(parentOrRoute, route) { - let parent; - let record; - if (isRouteName(parentOrRoute)) { - parent = matcher.getRecordMatcher(parentOrRoute); - if (!parent) { - warn(`Parent route "${String(parentOrRoute)}" not found when adding child route`, route); - } - record = route; - } - else { - record = parentOrRoute; - } - return matcher.addRoute(record, parent); - } - function removeRoute(name) { - const recordMatcher = matcher.getRecordMatcher(name); - if (recordMatcher) { - matcher.removeRoute(recordMatcher); - } - else { - warn(`Cannot remove non-existent route "${String(name)}"`); - } - } - function getRoutes() { - return matcher.getRoutes().map(routeMatcher => routeMatcher.record); - } - function hasRoute(name) { - return !!matcher.getRecordMatcher(name); - } - function resolve(rawLocation, currentLocation) { - // const resolve: Router['resolve'] = (rawLocation: RouteLocationRaw, currentLocation) => { - // const objectLocation = routerLocationAsObject(rawLocation) - // we create a copy to modify it later - currentLocation = assign({}, currentLocation || currentRoute.value); - if (typeof rawLocation === 'string') { - const locationNormalized = parseURL(parseQuery$1, rawLocation, currentLocation.path); - const matchedRoute = matcher.resolve({ path: locationNormalized.path }, currentLocation); - const href = routerHistory.createHref(locationNormalized.fullPath); - { - if (href.startsWith('//')) - warn(`Location "${rawLocation}" resolved to "${href}". A resolved location cannot start with multiple slashes.`); - else if (!matchedRoute.matched.length) { - warn(`No match found for location with path "${rawLocation}"`); - } - } - // locationNormalized is always a new object - return assign(locationNormalized, matchedRoute, { - params: decodeParams(matchedRoute.params), - hash: decode(locationNormalized.hash), - redirectedFrom: undefined, - href, - }); - } - if (!isRouteLocation(rawLocation)) { - warn(`router.resolve() was passed an invalid location. This will fail in production.\n- Location:`, rawLocation); - return resolve({}); - } - let matcherLocation; - // path could be relative in object as well - if (rawLocation.path != null) { - if ('params' in rawLocation && - !('name' in rawLocation) && - // @ts-expect-error: the type is never - Object.keys(rawLocation.params).length) { - warn(`Path "${rawLocation.path}" was passed with params but they will be ignored. Use a named route alongside params instead.`); - } - matcherLocation = assign({}, rawLocation, { - path: parseURL(parseQuery$1, rawLocation.path, currentLocation.path).path, - }); - } - else { - // remove any nullish param - const targetParams = assign({}, rawLocation.params); - for (const key in targetParams) { - if (targetParams[key] == null) { - delete targetParams[key]; - } - } - // pass encoded values to the matcher, so it can produce encoded path and fullPath - matcherLocation = assign({}, rawLocation, { - params: encodeParams(targetParams), - }); - // current location params are decoded, we need to encode them in case the - // matcher merges the params - currentLocation.params = encodeParams(currentLocation.params); - } - const matchedRoute = matcher.resolve(matcherLocation, currentLocation); - const hash = rawLocation.hash || ''; - if (hash && !hash.startsWith('#')) { - warn(`A \`hash\` should always start with the character "#". Replace "${hash}" with "#${hash}".`); - } - // the matcher might have merged current location params, so - // we need to run the decoding again - matchedRoute.params = normalizeParams(decodeParams(matchedRoute.params)); - const fullPath = stringifyURL(stringifyQuery$1, assign({}, rawLocation, { - hash: encodeHash(hash), - path: matchedRoute.path, - })); - const href = routerHistory.createHref(fullPath); - { - if (href.startsWith('//')) { - warn(`Location "${rawLocation}" resolved to "${href}". A resolved location cannot start with multiple slashes.`); - } - else if (!matchedRoute.matched.length) { - warn(`No match found for location with path "${rawLocation.path != null ? rawLocation.path : rawLocation}"`); - } - } - return assign({ - fullPath, - // keep the hash encoded so fullPath is effectively path + encodedQuery + - // hash - hash, - query: - // if the user is using a custom query lib like qs, we might have - // nested objects, so we keep the query as is, meaning it can contain - // numbers at `$route.query`, but at the point, the user will have to - // use their own type anyway. - // https://github.com/vuejs/router/issues/328#issuecomment-649481567 - stringifyQuery$1 === stringifyQuery - ? normalizeQuery(rawLocation.query) - : (rawLocation.query || {}), - }, matchedRoute, { - redirectedFrom: undefined, - href, - }); - } - function locationAsObject(to) { - return typeof to === 'string' - ? parseURL(parseQuery$1, to, currentRoute.value.path) - : assign({}, to); - } - function checkCanceledNavigation(to, from) { - if (pendingLocation !== to) { - return createRouterError(8 /* ErrorTypes.NAVIGATION_CANCELLED */, { - from, - to, - }); - } - } - function push(to) { - return pushWithRedirect(to); - } - function replace(to) { - return push(assign(locationAsObject(to), { replace: true })); - } - function handleRedirectRecord(to) { - const lastMatched = to.matched[to.matched.length - 1]; - if (lastMatched && lastMatched.redirect) { - const { redirect } = lastMatched; - let newTargetLocation = typeof redirect === 'function' ? redirect(to) : redirect; - if (typeof newTargetLocation === 'string') { - newTargetLocation = - newTargetLocation.includes('?') || newTargetLocation.includes('#') - ? (newTargetLocation = locationAsObject(newTargetLocation)) - : // force empty params - { path: newTargetLocation }; - // @ts-expect-error: force empty params when a string is passed to let - // the router parse them again - newTargetLocation.params = {}; - } - if (newTargetLocation.path == null && - !('name' in newTargetLocation)) { - warn(`Invalid redirect found:\n${JSON.stringify(newTargetLocation, null, 2)}\n when navigating to "${to.fullPath}". A redirect must contain a name or path. This will break in production.`); - throw new Error('Invalid redirect'); - } - return assign({ - query: to.query, - hash: to.hash, - // avoid transferring params if the redirect has a path - params: newTargetLocation.path != null ? {} : to.params, - }, newTargetLocation); - } - } - function pushWithRedirect(to, redirectedFrom) { - const targetLocation = (pendingLocation = resolve(to)); - const from = currentRoute.value; - const data = to.state; - const force = to.force; - // to could be a string where `replace` is a function - const replace = to.replace === true; - const shouldRedirect = handleRedirectRecord(targetLocation); - if (shouldRedirect) - return pushWithRedirect(assign(locationAsObject(shouldRedirect), { - state: typeof shouldRedirect === 'object' - ? assign({}, data, shouldRedirect.state) - : data, - force, - replace, - }), - // keep original redirectedFrom if it exists - redirectedFrom || targetLocation); - // if it was a redirect we already called `pushWithRedirect` above - const toLocation = targetLocation; - toLocation.redirectedFrom = redirectedFrom; - let failure; - if (!force && isSameRouteLocation(stringifyQuery$1, from, targetLocation)) { - failure = createRouterError(16 /* ErrorTypes.NAVIGATION_DUPLICATED */, { to: toLocation, from }); - // trigger scroll to allow scrolling to the same anchor - handleScroll(from, from, - // this is a push, the only way for it to be triggered from a - // history.listen is with a redirect, which makes it become a push - true, - // This cannot be the first navigation because the initial location - // cannot be manually navigated to - false); - } - return (failure ? Promise.resolve(failure) : navigate(toLocation, from)) - .catch((error) => isNavigationFailure(error) - ? // navigation redirects still mark the router as ready - isNavigationFailure(error, 2 /* ErrorTypes.NAVIGATION_GUARD_REDIRECT */) - ? error - : markAsReady(error) // also returns the error - : // reject any unknown error - triggerError(error, toLocation, from)) - .then((failure) => { - if (failure) { - if (isNavigationFailure(failure, 2 /* ErrorTypes.NAVIGATION_GUARD_REDIRECT */)) { - if (// we are redirecting to the same location we were already at - isSameRouteLocation(stringifyQuery$1, resolve(failure.to), toLocation) && - // and we have done it a couple of times - redirectedFrom && - // @ts-expect-error: added only in dev - (redirectedFrom._count = redirectedFrom._count - ? // @ts-expect-error - redirectedFrom._count + 1 - : 1) > 30) { - warn(`Detected a possibly infinite redirection in a navigation guard when going from "${from.fullPath}" to "${toLocation.fullPath}". Aborting to avoid a Stack Overflow.\n Are you always returning a new location within a navigation guard? That would lead to this error. Only return when redirecting or aborting, that should fix this. This might break in production if not fixed.`); - return Promise.reject(new Error('Infinite redirect in navigation guard')); - } - return pushWithRedirect( - // keep options - assign({ - // preserve an existing replacement but allow the redirect to override it - replace, - }, locationAsObject(failure.to), { - state: typeof failure.to === 'object' - ? assign({}, data, failure.to.state) - : data, - force, - }), - // preserve the original redirectedFrom if any - redirectedFrom || toLocation); - } - } - else { - // if we fail we don't finalize the navigation - failure = finalizeNavigation(toLocation, from, true, replace, data); - } - triggerAfterEach(toLocation, from, failure); - return failure; - }); - } - /** - * Helper to reject and skip all navigation guards if a new navigation happened - * @param to - * @param from - */ - function checkCanceledNavigationAndReject(to, from) { - const error = checkCanceledNavigation(to, from); - return error ? Promise.reject(error) : Promise.resolve(); - } - function runWithContext(fn) { - const app = installedApps.values().next().value; - // support Vue < 3.3 - return app && typeof app.runWithContext === 'function' - ? app.runWithContext(fn) - : fn(); - } - // TODO: refactor the whole before guards by internally using router.beforeEach - function navigate(to, from) { - let guards; - const [leavingRecords, updatingRecords, enteringRecords] = extractChangingRecords(to, from); - // all components here have been resolved once because we are leaving - guards = extractComponentsGuards(leavingRecords.reverse(), 'beforeRouteLeave', to, from); - // leavingRecords is already reversed - for (const record of leavingRecords) { - record.leaveGuards.forEach(guard => { - guards.push(guardToPromiseFn(guard, to, from)); - }); - } - const canceledNavigationCheck = checkCanceledNavigationAndReject.bind(null, to, from); - guards.push(canceledNavigationCheck); - // run the queue of per route beforeRouteLeave guards - return (runGuardQueue(guards) - .then(() => { - // check global guards beforeEach - guards = []; - for (const guard of beforeGuards.list()) { - guards.push(guardToPromiseFn(guard, to, from)); - } - guards.push(canceledNavigationCheck); - return runGuardQueue(guards); - }) - .then(() => { - // check in components beforeRouteUpdate - guards = extractComponentsGuards(updatingRecords, 'beforeRouteUpdate', to, from); - for (const record of updatingRecords) { - record.updateGuards.forEach(guard => { - guards.push(guardToPromiseFn(guard, to, from)); - }); - } - guards.push(canceledNavigationCheck); - // run the queue of per route beforeEnter guards - return runGuardQueue(guards); - }) - .then(() => { - // check the route beforeEnter - guards = []; - for (const record of enteringRecords) { - // do not trigger beforeEnter on reused views - if (record.beforeEnter) { - if (isArray(record.beforeEnter)) { - for (const beforeEnter of record.beforeEnter) - guards.push(guardToPromiseFn(beforeEnter, to, from)); - } - else { - guards.push(guardToPromiseFn(record.beforeEnter, to, from)); - } - } - } - guards.push(canceledNavigationCheck); - // run the queue of per route beforeEnter guards - return runGuardQueue(guards); - }) - .then(() => { - // NOTE: at this point to.matched is normalized and does not contain any () => Promise - // clear existing enterCallbacks, these are added by extractComponentsGuards - to.matched.forEach(record => (record.enterCallbacks = {})); - // check in-component beforeRouteEnter - guards = extractComponentsGuards(enteringRecords, 'beforeRouteEnter', to, from, runWithContext); - guards.push(canceledNavigationCheck); - // run the queue of per route beforeEnter guards - return runGuardQueue(guards); - }) - .then(() => { - // check global guards beforeResolve - guards = []; - for (const guard of beforeResolveGuards.list()) { - guards.push(guardToPromiseFn(guard, to, from)); - } - guards.push(canceledNavigationCheck); - return runGuardQueue(guards); - }) - // catch any navigation canceled - .catch(err => isNavigationFailure(err, 8 /* ErrorTypes.NAVIGATION_CANCELLED */) - ? err - : Promise.reject(err))); - } - function triggerAfterEach(to, from, failure) { - // navigation is confirmed, call afterGuards - // TODO: wrap with error handlers - afterGuards - .list() - .forEach(guard => runWithContext(() => guard(to, from, failure))); - } - /** - * - Cleans up any navigation guards - * - Changes the url if necessary - * - Calls the scrollBehavior - */ - function finalizeNavigation(toLocation, from, isPush, replace, data) { - // a more recent navigation took place - const error = checkCanceledNavigation(toLocation, from); - if (error) - return error; - // only consider as push if it's not the first navigation - const isFirstNavigation = from === START_LOCATION_NORMALIZED; - const state = !isBrowser ? {} : history.state; - // change URL only if the user did a push/replace and if it's not the initial navigation because - // it's just reflecting the url - if (isPush) { - // on the initial navigation, we want to reuse the scroll position from - // history state if it exists - if (replace || isFirstNavigation) - routerHistory.replace(toLocation.fullPath, assign({ - scroll: isFirstNavigation && state && state.scroll, - }, data)); - else - routerHistory.push(toLocation.fullPath, data); - } - // accept current navigation - currentRoute.value = toLocation; - handleScroll(toLocation, from, isPush, isFirstNavigation); - markAsReady(); - } - let removeHistoryListener; - // attach listener to history to trigger navigations - function setupListeners() { - // avoid setting up listeners twice due to an invalid first navigation - if (removeHistoryListener) - return; - removeHistoryListener = routerHistory.listen((to, _from, info) => { - if (!router.listening) - return; - // cannot be a redirect route because it was in history - const toLocation = resolve(to); - // due to dynamic routing, and to hash history with manual navigation - // (manually changing the url or calling history.hash = '#/somewhere'), - // there could be a redirect record in history - const shouldRedirect = handleRedirectRecord(toLocation); - if (shouldRedirect) { - pushWithRedirect(assign(shouldRedirect, { replace: true }), toLocation).catch(noop); - return; - } - pendingLocation = toLocation; - const from = currentRoute.value; - // TODO: should be moved to web history? - if (isBrowser) { - saveScrollPosition(getScrollKey(from.fullPath, info.delta), computeScrollPosition()); - } - navigate(toLocation, from) - .catch((error) => { - if (isNavigationFailure(error, 4 /* ErrorTypes.NAVIGATION_ABORTED */ | 8 /* ErrorTypes.NAVIGATION_CANCELLED */)) { - return error; - } - if (isNavigationFailure(error, 2 /* ErrorTypes.NAVIGATION_GUARD_REDIRECT */)) { - // Here we could call if (info.delta) routerHistory.go(-info.delta, - // false) but this is bug prone as we have no way to wait the - // navigation to be finished before calling pushWithRedirect. Using - // a setTimeout of 16ms seems to work but there is no guarantee for - // it to work on every browser. So instead we do not restore the - // history entry and trigger a new navigation as requested by the - // navigation guard. - // the error is already handled by router.push we just want to avoid - // logging the error - pushWithRedirect(error.to, toLocation - // avoid an uncaught rejection, let push call triggerError - ) - .then(failure => { - // manual change in hash history #916 ending up in the URL not - // changing, but it was changed by the manual url change, so we - // need to manually change it ourselves - if (isNavigationFailure(failure, 4 /* ErrorTypes.NAVIGATION_ABORTED */ | - 16 /* ErrorTypes.NAVIGATION_DUPLICATED */) && - !info.delta && - info.type === NavigationType.pop) { - routerHistory.go(-1, false); - } - }) - .catch(noop); - // avoid the then branch - return Promise.reject(); - } - // do not restore history on unknown direction - if (info.delta) { - routerHistory.go(-info.delta, false); - } - // unrecognized error, transfer to the global handler - return triggerError(error, toLocation, from); - }) - .then((failure) => { - failure = - failure || - finalizeNavigation( - // after navigation, all matched components are resolved - toLocation, from, false); - // revert the navigation - if (failure) { - if (info.delta && - // a new navigation has been triggered, so we do not want to revert, that will change the current history - // entry while a different route is displayed - !isNavigationFailure(failure, 8 /* ErrorTypes.NAVIGATION_CANCELLED */)) { - routerHistory.go(-info.delta, false); - } - else if (info.type === NavigationType.pop && - isNavigationFailure(failure, 4 /* ErrorTypes.NAVIGATION_ABORTED */ | 16 /* ErrorTypes.NAVIGATION_DUPLICATED */)) { - // manual change in hash history #916 - // it's like a push but lacks the information of the direction - routerHistory.go(-1, false); - } - } - triggerAfterEach(toLocation, from, failure); - }) - // avoid warnings in the console about uncaught rejections, they are logged by triggerErrors - .catch(noop); - }); - } - // Initialization and Errors - let readyHandlers = useCallbacks(); - let errorListeners = useCallbacks(); - let ready; - /** - * Trigger errorListeners added via onError and throws the error as well - * - * @param error - error to throw - * @param to - location we were navigating to when the error happened - * @param from - location we were navigating from when the error happened - * @returns the error as a rejected promise - */ - function triggerError(error, to, from) { - markAsReady(error); - const list = errorListeners.list(); - if (list.length) { - list.forEach(handler => handler(error, to, from)); - } - else { - { - warn('uncaught error during route navigation:'); - } - console.error(error); - } - // reject the error no matter there were error listeners or not - return Promise.reject(error); - } - function isReady() { - if (ready && currentRoute.value !== START_LOCATION_NORMALIZED) - return Promise.resolve(); - return new Promise((resolve, reject) => { - readyHandlers.add([resolve, reject]); - }); - } - function markAsReady(err) { - if (!ready) { - // still not ready if an error happened - ready = !err; - setupListeners(); - readyHandlers - .list() - .forEach(([resolve, reject]) => (err ? reject(err) : resolve())); - readyHandlers.reset(); - } - return err; - } - // Scroll behavior - function handleScroll(to, from, isPush, isFirstNavigation) { - const { scrollBehavior } = options; - if (!isBrowser || !scrollBehavior) - return Promise.resolve(); - const scrollPosition = (!isPush && getSavedScrollPosition(getScrollKey(to.fullPath, 0))) || - ((isFirstNavigation || !isPush) && - history.state && - history.state.scroll) || - null; - return vue.nextTick() - .then(() => scrollBehavior(to, from, scrollPosition)) - .then(position => position && scrollToPosition(position)) - .catch(err => triggerError(err, to, from)); - } - const go = (delta) => routerHistory.go(delta); - let started; - const installedApps = new Set(); - const router = { - currentRoute, - listening: true, - addRoute, - removeRoute, - clearRoutes: matcher.clearRoutes, - hasRoute, - getRoutes, - resolve, - options, - push, - replace, - go, - back: () => go(-1), - forward: () => go(1), - beforeEach: beforeGuards.add, - beforeResolve: beforeResolveGuards.add, - afterEach: afterGuards.add, - onError: errorListeners.add, - isReady, - install(app) { - const router = this; - app.component('RouterLink', RouterLink); - app.component('RouterView', RouterView); - app.config.globalProperties.$router = router; - Object.defineProperty(app.config.globalProperties, '$route', { - enumerable: true, - get: () => vue.unref(currentRoute), - }); - // this initial navigation is only necessary on client, on server it doesn't - // make sense because it will create an extra unnecessary navigation and could - // lead to problems - if (isBrowser && - // used for the initial navigation client side to avoid pushing - // multiple times when the router is used in multiple apps - !started && - currentRoute.value === START_LOCATION_NORMALIZED) { - // see above - started = true; - push(routerHistory.location).catch(err => { - warn('Unexpected error when starting the router:', err); - }); - } - const reactiveRoute = {}; - for (const key in START_LOCATION_NORMALIZED) { - Object.defineProperty(reactiveRoute, key, { - get: () => currentRoute.value[key], - enumerable: true, - }); - } - app.provide(routerKey, router); - app.provide(routeLocationKey, vue.shallowReactive(reactiveRoute)); - app.provide(routerViewLocationKey, currentRoute); - const unmountApp = app.unmount; - installedApps.add(app); - app.unmount = function () { - installedApps.delete(app); - // the router is not attached to an app anymore - if (installedApps.size < 1) { - // invalidate the current navigation - pendingLocation = START_LOCATION_NORMALIZED; - removeHistoryListener && removeHistoryListener(); - removeHistoryListener = null; - currentRoute.value = START_LOCATION_NORMALIZED; - started = false; - ready = false; - } - unmountApp(); - }; - // TODO: this probably needs to be updated so it can be used by vue-termui - if (isBrowser) { - addDevtools(app, router, matcher); - } - }, - }; - // TODO: type this as NavigationGuardReturn or similar instead of any - function runGuardQueue(guards) { - return guards.reduce((promise, guard) => promise.then(() => runWithContext(guard)), Promise.resolve()); - } - return router; - } - function extractChangingRecords(to, from) { - const leavingRecords = []; - const updatingRecords = []; - const enteringRecords = []; - const len = Math.max(from.matched.length, to.matched.length); - for (let i = 0; i < len; i++) { - const recordFrom = from.matched[i]; - if (recordFrom) { - if (to.matched.find(record => isSameRouteRecord(record, recordFrom))) - updatingRecords.push(recordFrom); - else - leavingRecords.push(recordFrom); - } - const recordTo = to.matched[i]; - if (recordTo) { - // the type doesn't matter because we are comparing per reference - if (!from.matched.find(record => isSameRouteRecord(record, recordTo))) { - enteringRecords.push(recordTo); - } - } - } - return [leavingRecords, updatingRecords, enteringRecords]; - } +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/api.js + var require_api$1 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/api.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + }) }); - /** - * Returns the router instance. Equivalent to using `$router` inside - * templates. - */ - function useRouter() { - return vue.inject(routerKey); - } - /** - * Returns the current route location. Equivalent to using `$route` inside - * templates. - */ - function useRoute(_name) { - return vue.inject(routeLocationKey); - } +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/app.js + var require_app = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/app.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + }) }); - exports.RouterLink = RouterLink; - exports.RouterView = RouterView; - exports.START_LOCATION = START_LOCATION_NORMALIZED; - exports.createMemoryHistory = createMemoryHistory; - exports.createRouter = createRouter; - exports.createRouterMatcher = createRouterMatcher; - exports.createWebHashHistory = createWebHashHistory; - exports.createWebHistory = createWebHistory; - exports.isNavigationFailure = isNavigationFailure; - exports.loadRouteLocation = loadRouteLocation; - exports.matchedRouteKey = matchedRouteKey; - exports.onBeforeRouteLeave = onBeforeRouteLeave; - exports.onBeforeRouteUpdate = onBeforeRouteUpdate; - exports.parseQuery = parseQuery; - exports.routeLocationKey = routeLocationKey; - exports.routerKey = routerKey; - exports.routerViewLocationKey = routerViewLocationKey; - exports.stringifyQuery = stringifyQuery; - exports.useLink = useLink; - exports.useRoute = useRoute; - exports.useRouter = useRouter; - exports.viewDepthKey = viewDepthKey; +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/component.js + var require_component = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/component.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + }) }); - return exports; +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/context.js + var require_context = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/context.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + }) }); -})({}, Vue); +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/hooks.js + var require_hooks = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/hooks.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + }) }); + +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/util.js + var require_util = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/util.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + }) }); + +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/index.js + var require_api = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/api/index.js": ((exports) => { + var __createBinding$1 = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) desc = { + enumerable: true, + get: function() { + return m[k]; + } + }; + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar$1 = exports && exports.__exportStar || function(m, exports$1) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports$1, p)) __createBinding$1(exports$1, m, p); + }; + Object.defineProperty(exports, "__esModule", { value: true }); + __exportStar$1(require_api$1(), exports); + __exportStar$1(require_app(), exports); + __exportStar$1(require_component(), exports); + __exportStar$1(require_context(), exports); + __exportStar$1(require_hooks(), exports); + __exportStar$1(require_util(), exports); + }) }); + +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/plugin.js + var require_plugin = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/plugin.js": ((exports) => { + Object.defineProperty(exports, "__esModule", { value: true }); + }) }); + +//#endregion +//#region ../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/index.js + var require_cjs = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/@vue+devtools-api@6.6.4/node_modules/@vue/devtools-api/lib/cjs/index.js": ((exports) => { + var __createBinding = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) desc = { + enumerable: true, + get: function() { + return m[k]; + } + }; + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar = exports && exports.__exportStar || function(m, exports$1) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports$1, p)) __createBinding(exports$1, m, p); + }; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.setupDevtoolsPlugin = void 0; + const env_js_1 = require_env(); + const const_js_1 = require_const(); + const proxy_js_1 = require_proxy(); + __exportStar(require_api(), exports); + __exportStar(require_plugin(), exports); + __exportStar(require_time(), exports); + function setupDevtoolsPlugin$1(pluginDescriptor, setupFn) { + const descriptor = pluginDescriptor; + const target = (0, env_js_1.getTarget)(); + const hook = (0, env_js_1.getDevtoolsGlobalHook)(); + const enableProxy = env_js_1.isProxyAvailable && descriptor.enableEarlyProxy; + if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) hook.emit(const_js_1.HOOK_SETUP, pluginDescriptor, setupFn); + else { + const proxy = enableProxy ? new proxy_js_1.ApiProxy(descriptor, hook) : null; + (target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || []).push({ + pluginDescriptor: descriptor, + setupFn, + proxy + }); + if (proxy) setupFn(proxy.proxiedTarget); + } + } + exports.setupDevtoolsPlugin = setupDevtoolsPlugin$1; + }) }); + +//#endregion +//#region src/devtools.ts + var import_cjs = /* @__PURE__ */ __toESM(require_cjs()); + /** + * Copies a route location and removes any problematic properties that cannot be shown in devtools (e.g. Vue instances). + * + * @param routeLocation - routeLocation to format + * @param tooltip - optional tooltip + * @returns a copy of the routeLocation + */ + function formatRouteLocation(routeLocation, tooltip) { + const copy = assign({}, routeLocation, { matched: routeLocation.matched.map((matched) => omit(matched, [ + "instances", + "children", + "aliasOf" + ])) }); + return { _custom: { + type: null, + readOnly: true, + display: routeLocation.fullPath, + tooltip, + value: copy + } }; + } + function formatDisplay(display) { + return { _custom: { display } }; + } + let routerId = 0; + function addDevtools(app, router, matcher) { + if (router.__hasDevtools) return; + router.__hasDevtools = true; + const id = routerId++; + (0, import_cjs.setupDevtoolsPlugin)({ + id: "org.vuejs.router" + (id ? "." + id : ""), + label: "Vue Router", + packageName: "vue-router", + homepage: "https://router.vuejs.org", + logo: "https://router.vuejs.org/logo.png", + componentStateTypes: ["Routing"], + app + }, (api) => { + if (typeof api.now !== "function") warn("[Vue Router]: You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html."); + api.on.inspectComponent((payload, ctx) => { + if (payload.instanceData) payload.instanceData.state.push({ + type: "Routing", + key: "$route", + editable: false, + value: formatRouteLocation(router.currentRoute.value, "Current Route") + }); + }); + api.on.visitComponentTree(({ treeNode: node, componentInstance }) => { + if (componentInstance.__vrv_devtools) { + const info = componentInstance.__vrv_devtools; + node.tags.push({ + label: (info.name ? `${info.name.toString()}: ` : "") + info.path, + textColor: 0, + tooltip: "This component is rendered by <router-view>", + backgroundColor: PINK_500 + }); + } + if (isArray(componentInstance.__vrl_devtools)) { + componentInstance.__devtoolsApi = api; + componentInstance.__vrl_devtools.forEach((devtoolsData) => { + let label = devtoolsData.route.path; + let backgroundColor = ORANGE_400; + let tooltip = ""; + let textColor = 0; + if (devtoolsData.error) { + label = devtoolsData.error; + backgroundColor = RED_100; + textColor = RED_700; + } else if (devtoolsData.isExactActive) { + backgroundColor = LIME_500; + tooltip = "This is exactly active"; + } else if (devtoolsData.isActive) { + backgroundColor = BLUE_600; + tooltip = "This link is active"; + } + node.tags.push({ + label, + textColor, + tooltip, + backgroundColor + }); + }); + } + }); + (0, vue.watch)(router.currentRoute, () => { + refreshRoutesView(); + api.notifyComponentUpdate(); + api.sendInspectorTree(routerInspectorId); + api.sendInspectorState(routerInspectorId); + }); + const navigationsLayerId = "router:navigations:" + id; + api.addTimelineLayer({ + id: navigationsLayerId, + label: `Router${id ? " " + id : ""} Navigations`, + color: 4237508 + }); + router.onError((error, to) => { + api.addTimelineEvent({ + layerId: navigationsLayerId, + event: { + title: "Error during Navigation", + subtitle: to.fullPath, + logType: "error", + time: api.now(), + data: { error }, + groupId: to.meta.__navigationId + } + }); + }); + let navigationId = 0; + router.beforeEach((to, from) => { + const data = { + guard: formatDisplay("beforeEach"), + from: formatRouteLocation(from, "Current Location during this navigation"), + to: formatRouteLocation(to, "Target location") + }; + Object.defineProperty(to.meta, "__navigationId", { value: navigationId++ }); + api.addTimelineEvent({ + layerId: navigationsLayerId, + event: { + time: api.now(), + title: "Start of navigation", + subtitle: to.fullPath, + data, + groupId: to.meta.__navigationId + } + }); + }); + router.afterEach((to, from, failure) => { + const data = { guard: formatDisplay("afterEach") }; + if (failure) { + data.failure = { _custom: { + type: Error, + readOnly: true, + display: failure ? failure.message : "", + tooltip: "Navigation Failure", + value: failure + } }; + data.status = formatDisplay("❌"); + } else data.status = formatDisplay("✅"); + data.from = formatRouteLocation(from, "Current Location during this navigation"); + data.to = formatRouteLocation(to, "Target location"); + api.addTimelineEvent({ + layerId: navigationsLayerId, + event: { + title: "End of navigation", + subtitle: to.fullPath, + time: api.now(), + data, + logType: failure ? "warning" : "default", + groupId: to.meta.__navigationId + } + }); + }); + /** + * Inspector of Existing routes + */ + const routerInspectorId = "router-inspector:" + id; + api.addInspector({ + id: routerInspectorId, + label: "Routes" + (id ? " " + id : ""), + icon: "book", + treeFilterPlaceholder: "Search routes" + }); + function refreshRoutesView() { + if (!activeRoutesPayload) return; + const payload = activeRoutesPayload; + let routes = matcher.getRoutes().filter((route) => !route.parent || !route.parent.record.components); + routes.forEach(resetMatchStateOnRouteRecord); + if (payload.filter) routes = routes.filter((route) => isRouteMatching(route, payload.filter.toLowerCase())); + routes.forEach((route) => markRouteRecordActive(route, router.currentRoute.value)); + payload.rootNodes = routes.map(formatRouteRecordForInspector); + } + let activeRoutesPayload; + api.on.getInspectorTree((payload) => { + activeRoutesPayload = payload; + if (payload.app === app && payload.inspectorId === routerInspectorId) refreshRoutesView(); + }); + /** + * Display information about the currently selected route record + */ + api.on.getInspectorState((payload) => { + if (payload.app === app && payload.inspectorId === routerInspectorId) { + const route = matcher.getRoutes().find((route$1) => route$1.record.__vd_id === payload.nodeId); + if (route) payload.state = { options: formatRouteRecordMatcherForStateInspector(route) }; + } + }); + api.sendInspectorTree(routerInspectorId); + api.sendInspectorState(routerInspectorId); + }); + } + function modifierForKey(key) { + if (key.optional) return key.repeatable ? "*" : "?"; + else return key.repeatable ? "+" : ""; + } + function formatRouteRecordMatcherForStateInspector(route) { + const { record } = route; + const fields = [{ + editable: false, + key: "path", + value: record.path + }]; + if (record.name != null) fields.push({ + editable: false, + key: "name", + value: record.name + }); + fields.push({ + editable: false, + key: "regexp", + value: route.re + }); + if (route.keys.length) fields.push({ + editable: false, + key: "keys", + value: { _custom: { + type: null, + readOnly: true, + display: route.keys.map((key) => `${key.name}${modifierForKey(key)}`).join(" "), + tooltip: "Param keys", + value: route.keys + } } + }); + if (record.redirect != null) fields.push({ + editable: false, + key: "redirect", + value: record.redirect + }); + if (route.alias.length) fields.push({ + editable: false, + key: "aliases", + value: route.alias.map((alias) => alias.record.path) + }); + if (Object.keys(route.record.meta).length) fields.push({ + editable: false, + key: "meta", + value: route.record.meta + }); + fields.push({ + key: "score", + editable: false, + value: { _custom: { + type: null, + readOnly: true, + display: route.score.map((score) => score.join(", ")).join(" | "), + tooltip: "Score used to sort routes", + value: route.score + } } + }); + return fields; + } + /** + * Extracted from tailwind palette + */ + const PINK_500 = 15485081; + const BLUE_600 = 2450411; + const LIME_500 = 8702998; + const CYAN_400 = 2282478; + const ORANGE_400 = 16486972; + const DARK = 6710886; + const RED_100 = 16704226; + const RED_700 = 12131356; + function formatRouteRecordForInspector(route) { + const tags = []; + const { record } = route; + if (record.name != null) tags.push({ + label: String(record.name), + textColor: 0, + backgroundColor: CYAN_400 + }); + if (record.aliasOf) tags.push({ + label: "alias", + textColor: 0, + backgroundColor: ORANGE_400 + }); + if (route.__vd_match) tags.push({ + label: "matches", + textColor: 0, + backgroundColor: PINK_500 + }); + if (route.__vd_exactActive) tags.push({ + label: "exact", + textColor: 0, + backgroundColor: LIME_500 + }); + if (route.__vd_active) tags.push({ + label: "active", + textColor: 0, + backgroundColor: BLUE_600 + }); + if (record.redirect) tags.push({ + label: typeof record.redirect === "string" ? `redirect: ${record.redirect}` : "redirects", + textColor: 16777215, + backgroundColor: DARK + }); + let id = record.__vd_id; + if (id == null) { + id = String(routeRecordId++); + record.__vd_id = id; + } + return { + id, + label: record.path, + tags, + children: route.children.map(formatRouteRecordForInspector) + }; + } + let routeRecordId = 0; + const EXTRACT_REGEXP_RE = /^\/(.*)\/([a-z]*)$/; + function markRouteRecordActive(route, currentRoute) { + const isExactActive = currentRoute.matched.length && isSameRouteRecord(currentRoute.matched[currentRoute.matched.length - 1], route.record); + route.__vd_exactActive = route.__vd_active = isExactActive; + if (!isExactActive) route.__vd_active = currentRoute.matched.some((match) => isSameRouteRecord(match, route.record)); + route.children.forEach((childRoute) => markRouteRecordActive(childRoute, currentRoute)); + } + function resetMatchStateOnRouteRecord(route) { + route.__vd_match = false; + route.children.forEach(resetMatchStateOnRouteRecord); + } + function isRouteMatching(route, filter) { + const found = String(route.re).match(EXTRACT_REGEXP_RE); + route.__vd_match = false; + if (!found || found.length < 3) return false; + if (new RegExp(found[1].replace(/\$$/, ""), found[2]).test(filter)) { + route.children.forEach((child) => isRouteMatching(child, filter)); + if (route.record.path !== "/" || filter === "/") { + route.__vd_match = route.re.test(filter); + return true; + } + return false; + } + const path = route.record.path.toLowerCase(); + const decodedPath = decode(path); + if (!filter.startsWith("/") && (decodedPath.includes(filter) || path.includes(filter))) return true; + if (decodedPath.startsWith(filter) || path.startsWith(filter)) return true; + if (route.record.name && String(route.record.name).includes(filter)) return true; + return route.children.some((child) => isRouteMatching(child, filter)); + } + function omit(obj, keys) { + const ret = {}; + for (const key in obj) if (!keys.includes(key)) ret[key] = obj[key]; + return ret; + } + +//#endregion +//#region src/router.ts +/** + * Creates a Router instance that can be used by a Vue app. + * + * @param options - {@link RouterOptions} + */ + function createRouter(options) { + const matcher = createRouterMatcher(options.routes, options); + const parseQuery$1 = options.parseQuery || parseQuery; + const stringifyQuery$1 = options.stringifyQuery || stringifyQuery; + const routerHistory = options.history; + if (!routerHistory) throw new Error("Provide the \"history\" option when calling \"createRouter()\": https://router.vuejs.org/api/interfaces/RouterOptions.html#history"); + const beforeGuards = useCallbacks(); + const beforeResolveGuards = useCallbacks(); + const afterGuards = useCallbacks(); + const currentRoute = (0, vue.shallowRef)(START_LOCATION_NORMALIZED); + let pendingLocation = START_LOCATION_NORMALIZED; + if (isBrowser && options.scrollBehavior && "scrollRestoration" in history) history.scrollRestoration = "manual"; + const normalizeParams = applyToParams.bind(null, (paramValue) => "" + paramValue); + const encodeParams = applyToParams.bind(null, encodeParam); + const decodeParams = applyToParams.bind(null, decode); + function addRoute(parentOrRoute, route) { + let parent; + let record; + if (isRouteName(parentOrRoute)) { + parent = matcher.getRecordMatcher(parentOrRoute); + if (!parent) warn(`Parent route "${String(parentOrRoute)}" not found when adding child route`, route); + record = route; + } else record = parentOrRoute; + return matcher.addRoute(record, parent); + } + function removeRoute(name) { + const recordMatcher = matcher.getRecordMatcher(name); + if (recordMatcher) matcher.removeRoute(recordMatcher); + else warn(`Cannot remove non-existent route "${String(name)}"`); + } + function getRoutes() { + return matcher.getRoutes().map((routeMatcher) => routeMatcher.record); + } + function hasRoute(name) { + return !!matcher.getRecordMatcher(name); + } + function resolve(rawLocation, currentLocation) { + currentLocation = assign({}, currentLocation || currentRoute.value); + if (typeof rawLocation === "string") { + const locationNormalized = parseURL(parseQuery$1, rawLocation, currentLocation.path); + const matchedRoute$1 = matcher.resolve({ path: locationNormalized.path }, currentLocation); + const href$1 = routerHistory.createHref(locationNormalized.fullPath); + if (href$1.startsWith("//")) warn(`Location "${rawLocation}" resolved to "${href$1}". A resolved location cannot start with multiple slashes.`); + else if (!matchedRoute$1.matched.length) warn(`No match found for location with path "${rawLocation}"`); + return assign(locationNormalized, matchedRoute$1, { + params: decodeParams(matchedRoute$1.params), + hash: decode(locationNormalized.hash), + redirectedFrom: void 0, + href: href$1 + }); + } + if (!isRouteLocation(rawLocation)) { + warn(`router.resolve() was passed an invalid location. This will fail in production.\n- Location:`, rawLocation); + return resolve({}); + } + let matcherLocation; + if (rawLocation.path != null) { + if ("params" in rawLocation && !("name" in rawLocation) && Object.keys(rawLocation.params).length) warn(`Path "${rawLocation.path}" was passed with params but they will be ignored. Use a named route alongside params instead.`); + matcherLocation = assign({}, rawLocation, { path: parseURL(parseQuery$1, rawLocation.path, currentLocation.path).path }); + } else { + const targetParams = assign({}, rawLocation.params); + for (const key in targetParams) if (targetParams[key] == null) delete targetParams[key]; + matcherLocation = assign({}, rawLocation, { params: encodeParams(targetParams) }); + currentLocation.params = encodeParams(currentLocation.params); + } + const matchedRoute = matcher.resolve(matcherLocation, currentLocation); + const hash = rawLocation.hash || ""; + if (hash && !hash.startsWith("#")) warn(`A \`hash\` should always start with the character "#". Replace "${hash}" with "#${hash}".`); + matchedRoute.params = normalizeParams(decodeParams(matchedRoute.params)); + const fullPath = stringifyURL(stringifyQuery$1, assign({}, rawLocation, { + hash: encodeHash(hash), + path: matchedRoute.path + })); + const href = routerHistory.createHref(fullPath); + if (href.startsWith("//")) warn(`Location "${rawLocation}" resolved to "${href}". A resolved location cannot start with multiple slashes.`); + else if (!matchedRoute.matched.length) warn(`No match found for location with path "${rawLocation.path != null ? rawLocation.path : rawLocation}"`); + return assign({ + fullPath, + hash, + query: stringifyQuery$1 === stringifyQuery ? normalizeQuery(rawLocation.query) : rawLocation.query || {} + }, matchedRoute, { + redirectedFrom: void 0, + href + }); + } + function locationAsObject(to) { + return typeof to === "string" ? parseURL(parseQuery$1, to, currentRoute.value.path) : assign({}, to); + } + function checkCanceledNavigation(to, from) { + if (pendingLocation !== to) return createRouterError(ErrorTypes.NAVIGATION_CANCELLED, { + from, + to + }); + } + function push(to) { + return pushWithRedirect(to); + } + function replace(to) { + return push(assign(locationAsObject(to), { replace: true })); + } + function handleRedirectRecord(to, from) { + const lastMatched = to.matched[to.matched.length - 1]; + if (lastMatched && lastMatched.redirect) { + const { redirect } = lastMatched; + let newTargetLocation = typeof redirect === "function" ? redirect(to, from) : redirect; + if (typeof newTargetLocation === "string") { + newTargetLocation = newTargetLocation.includes("?") || newTargetLocation.includes("#") ? newTargetLocation = locationAsObject(newTargetLocation) : { path: newTargetLocation }; + newTargetLocation.params = {}; + } + if (newTargetLocation.path == null && !("name" in newTargetLocation)) { + warn(`Invalid redirect found:\n${JSON.stringify(newTargetLocation, null, 2)}\n when navigating to "${to.fullPath}". A redirect must contain a name or path. This will break in production.`); + throw new Error("Invalid redirect"); + } + return assign({ + query: to.query, + hash: to.hash, + params: newTargetLocation.path != null ? {} : to.params + }, newTargetLocation); + } + } + function pushWithRedirect(to, redirectedFrom) { + const targetLocation = pendingLocation = resolve(to); + const from = currentRoute.value; + const data = to.state; + const force = to.force; + const replace$1 = to.replace === true; + const shouldRedirect = handleRedirectRecord(targetLocation, from); + if (shouldRedirect) return pushWithRedirect(assign(locationAsObject(shouldRedirect), { + state: typeof shouldRedirect === "object" ? assign({}, data, shouldRedirect.state) : data, + force, + replace: replace$1 + }), redirectedFrom || targetLocation); + const toLocation = targetLocation; + toLocation.redirectedFrom = redirectedFrom; + let failure; + if (!force && isSameRouteLocation(stringifyQuery$1, from, targetLocation)) { + failure = createRouterError(ErrorTypes.NAVIGATION_DUPLICATED, { + to: toLocation, + from + }); + handleScroll(from, from, true, false); + } + return (failure ? Promise.resolve(failure) : navigate(toLocation, from)).catch((error) => isNavigationFailure(error) ? isNavigationFailure(error, ErrorTypes.NAVIGATION_GUARD_REDIRECT) ? error : markAsReady(error) : triggerError(error, toLocation, from)).then((failure$1) => { + if (failure$1) { + if (isNavigationFailure(failure$1, ErrorTypes.NAVIGATION_GUARD_REDIRECT)) { + if (isSameRouteLocation(stringifyQuery$1, resolve(failure$1.to), toLocation) && redirectedFrom && (redirectedFrom._count = redirectedFrom._count ? redirectedFrom._count + 1 : 1) > 30) { + warn(`Detected a possibly infinite redirection in a navigation guard when going from "${from.fullPath}" to "${toLocation.fullPath}". Aborting to avoid a Stack Overflow.\n Are you always returning a new location within a navigation guard? That would lead to this error. Only return when redirecting or aborting, that should fix this. This might break in production if not fixed.`); + return Promise.reject(/* @__PURE__ */ new Error("Infinite redirect in navigation guard")); + } + return pushWithRedirect(assign({ replace: replace$1 }, locationAsObject(failure$1.to), { + state: typeof failure$1.to === "object" ? assign({}, data, failure$1.to.state) : data, + force + }), redirectedFrom || toLocation); + } + } else failure$1 = finalizeNavigation(toLocation, from, true, replace$1, data); + triggerAfterEach(toLocation, from, failure$1); + return failure$1; + }); + } + /** + * Helper to reject and skip all navigation guards if a new navigation happened + * @param to + * @param from + */ + function checkCanceledNavigationAndReject(to, from) { + const error = checkCanceledNavigation(to, from); + return error ? Promise.reject(error) : Promise.resolve(); + } + function runWithContext(fn) { + const app = installedApps.values().next().value; + return app && typeof app.runWithContext === "function" ? app.runWithContext(fn) : fn(); + } + function navigate(to, from) { + let guards; + const [leavingRecords, updatingRecords, enteringRecords] = extractChangingRecords(to, from); + guards = extractComponentsGuards(leavingRecords.reverse(), "beforeRouteLeave", to, from); + for (const record of leavingRecords) record.leaveGuards.forEach((guard) => { + guards.push(guardToPromiseFn(guard, to, from)); + }); + const canceledNavigationCheck = checkCanceledNavigationAndReject.bind(null, to, from); + guards.push(canceledNavigationCheck); + return runGuardQueue(guards).then(() => { + guards = []; + for (const guard of beforeGuards.list()) guards.push(guardToPromiseFn(guard, to, from)); + guards.push(canceledNavigationCheck); + return runGuardQueue(guards); + }).then(() => { + guards = extractComponentsGuards(updatingRecords, "beforeRouteUpdate", to, from); + for (const record of updatingRecords) record.updateGuards.forEach((guard) => { + guards.push(guardToPromiseFn(guard, to, from)); + }); + guards.push(canceledNavigationCheck); + return runGuardQueue(guards); + }).then(() => { + guards = []; + for (const record of enteringRecords) if (record.beforeEnter) if (isArray(record.beforeEnter)) for (const beforeEnter of record.beforeEnter) guards.push(guardToPromiseFn(beforeEnter, to, from)); + else guards.push(guardToPromiseFn(record.beforeEnter, to, from)); + guards.push(canceledNavigationCheck); + return runGuardQueue(guards); + }).then(() => { + to.matched.forEach((record) => record.enterCallbacks = {}); + guards = extractComponentsGuards(enteringRecords, "beforeRouteEnter", to, from, runWithContext); + guards.push(canceledNavigationCheck); + return runGuardQueue(guards); + }).then(() => { + guards = []; + for (const guard of beforeResolveGuards.list()) guards.push(guardToPromiseFn(guard, to, from)); + guards.push(canceledNavigationCheck); + return runGuardQueue(guards); + }).catch((err) => isNavigationFailure(err, ErrorTypes.NAVIGATION_CANCELLED) ? err : Promise.reject(err)); + } + function triggerAfterEach(to, from, failure) { + afterGuards.list().forEach((guard) => runWithContext(() => guard(to, from, failure))); + } + /** + * - Cleans up any navigation guards + * - Changes the url if necessary + * - Calls the scrollBehavior + */ + function finalizeNavigation(toLocation, from, isPush, replace$1, data) { + const error = checkCanceledNavigation(toLocation, from); + if (error) return error; + const isFirstNavigation = from === START_LOCATION_NORMALIZED; + const state = !isBrowser ? {} : history.state; + if (isPush) if (replace$1 || isFirstNavigation) routerHistory.replace(toLocation.fullPath, assign({ scroll: isFirstNavigation && state && state.scroll }, data)); + else routerHistory.push(toLocation.fullPath, data); + currentRoute.value = toLocation; + handleScroll(toLocation, from, isPush, isFirstNavigation); + markAsReady(); + } + let removeHistoryListener; + function setupListeners() { + if (removeHistoryListener) return; + removeHistoryListener = routerHistory.listen((to, _from, info) => { + if (!router.listening) return; + const toLocation = resolve(to); + const shouldRedirect = handleRedirectRecord(toLocation, router.currentRoute.value); + if (shouldRedirect) { + pushWithRedirect(assign(shouldRedirect, { + replace: true, + force: true + }), toLocation).catch(noop); + return; + } + pendingLocation = toLocation; + const from = currentRoute.value; + if (isBrowser) saveScrollPosition(getScrollKey(from.fullPath, info.delta), computeScrollPosition()); + navigate(toLocation, from).catch((error) => { + if (isNavigationFailure(error, ErrorTypes.NAVIGATION_ABORTED | ErrorTypes.NAVIGATION_CANCELLED)) return error; + if (isNavigationFailure(error, ErrorTypes.NAVIGATION_GUARD_REDIRECT)) { + pushWithRedirect(assign(locationAsObject(error.to), { force: true }), toLocation).then((failure) => { + if (isNavigationFailure(failure, ErrorTypes.NAVIGATION_ABORTED | ErrorTypes.NAVIGATION_DUPLICATED) && !info.delta && info.type === NavigationType.pop) routerHistory.go(-1, false); + }).catch(noop); + return Promise.reject(); + } + if (info.delta) routerHistory.go(-info.delta, false); + return triggerError(error, toLocation, from); + }).then((failure) => { + failure = failure || finalizeNavigation(toLocation, from, false); + if (failure) { + if (info.delta && !isNavigationFailure(failure, ErrorTypes.NAVIGATION_CANCELLED)) routerHistory.go(-info.delta, false); + else if (info.type === NavigationType.pop && isNavigationFailure(failure, ErrorTypes.NAVIGATION_ABORTED | ErrorTypes.NAVIGATION_DUPLICATED)) routerHistory.go(-1, false); + } + triggerAfterEach(toLocation, from, failure); + }).catch(noop); + }); + } + let readyHandlers = useCallbacks(); + let errorListeners = useCallbacks(); + let ready; + /** + * Trigger errorListeners added via onError and throws the error as well + * + * @param error - error to throw + * @param to - location we were navigating to when the error happened + * @param from - location we were navigating from when the error happened + * @returns the error as a rejected promise + */ + function triggerError(error, to, from) { + markAsReady(error); + const list = errorListeners.list(); + if (list.length) list.forEach((handler) => handler(error, to, from)); + else { + warn("uncaught error during route navigation:"); + console.error(error); + } + return Promise.reject(error); + } + function isReady() { + if (ready && currentRoute.value !== START_LOCATION_NORMALIZED) return Promise.resolve(); + return new Promise((resolve$1, reject) => { + readyHandlers.add([resolve$1, reject]); + }); + } + function markAsReady(err) { + if (!ready) { + ready = !err; + setupListeners(); + readyHandlers.list().forEach(([resolve$1, reject]) => err ? reject(err) : resolve$1()); + readyHandlers.reset(); + } + return err; + } + function handleScroll(to, from, isPush, isFirstNavigation) { + const { scrollBehavior } = options; + if (!isBrowser || !scrollBehavior) return Promise.resolve(); + const scrollPosition = !isPush && getSavedScrollPosition(getScrollKey(to.fullPath, 0)) || (isFirstNavigation || !isPush) && history.state && history.state.scroll || null; + return (0, vue.nextTick)().then(() => scrollBehavior(to, from, scrollPosition)).then((position) => position && scrollToPosition(position)).catch((err) => triggerError(err, to, from)); + } + const go = (delta) => routerHistory.go(delta); + let started; + const installedApps = /* @__PURE__ */ new Set(); + const router = { + currentRoute, + listening: true, + addRoute, + removeRoute, + clearRoutes: matcher.clearRoutes, + hasRoute, + getRoutes, + resolve, + options, + push, + replace, + go, + back: () => go(-1), + forward: () => go(1), + beforeEach: beforeGuards.add, + beforeResolve: beforeResolveGuards.add, + afterEach: afterGuards.add, + onError: errorListeners.add, + isReady, + install(app) { + app.component("RouterLink", RouterLink); + app.component("RouterView", RouterView); + app.config.globalProperties.$router = router; + Object.defineProperty(app.config.globalProperties, "$route", { + enumerable: true, + get: () => (0, vue.unref)(currentRoute) + }); + if (isBrowser && !started && currentRoute.value === START_LOCATION_NORMALIZED) { + started = true; + push(routerHistory.location).catch((err) => { + warn("Unexpected error when starting the router:", err); + }); + } + const reactiveRoute = {}; + for (const key in START_LOCATION_NORMALIZED) Object.defineProperty(reactiveRoute, key, { + get: () => currentRoute.value[key], + enumerable: true + }); + app.provide(routerKey, router); + app.provide(routeLocationKey, (0, vue.shallowReactive)(reactiveRoute)); + app.provide(routerViewLocationKey, currentRoute); + const unmountApp = app.unmount; + installedApps.add(app); + app.unmount = function() { + installedApps.delete(app); + if (installedApps.size < 1) { + pendingLocation = START_LOCATION_NORMALIZED; + removeHistoryListener && removeHistoryListener(); + removeHistoryListener = null; + currentRoute.value = START_LOCATION_NORMALIZED; + started = false; + ready = false; + } + unmountApp(); + }; + if (isBrowser) addDevtools(app, router, matcher); + } + }; + function runGuardQueue(guards) { + return guards.reduce((promise, guard) => promise.then(() => runWithContext(guard)), Promise.resolve()); + } + return router; + } + +//#endregion +//#region src/useApi.ts +/** + * Returns the router instance. Equivalent to using `$router` inside + * templates. + */ + function useRouter() { + return (0, vue.inject)(routerKey); + } + /** + * Returns the current route location. Equivalent to using `$route` inside + * templates. + */ + function useRoute(_name) { + return (0, vue.inject)(routeLocationKey); + } + +//#endregion +exports.NavigationFailureType = NavigationFailureType; +exports.RouterLink = RouterLink; +exports.RouterView = RouterView; +exports.START_LOCATION = START_LOCATION_NORMALIZED; +exports.createMemoryHistory = createMemoryHistory; +exports.createRouter = createRouter; +exports.createRouterMatcher = createRouterMatcher; +exports.createWebHashHistory = createWebHashHistory; +exports.createWebHistory = createWebHistory; +exports.isNavigationFailure = isNavigationFailure; +exports.loadRouteLocation = loadRouteLocation; +exports.matchedRouteKey = matchedRouteKey; +exports.onBeforeRouteLeave = onBeforeRouteLeave; +exports.onBeforeRouteUpdate = onBeforeRouteUpdate; +exports.parseQuery = parseQuery; +exports.routeLocationKey = routeLocationKey; +exports.routerKey = routerKey; +exports.routerViewLocationKey = routerViewLocationKey; +exports.stringifyQuery = stringifyQuery; +exports.useLink = useLink; +exports.useRoute = useRoute; +exports.useRouter = useRouter; +exports.viewDepthKey = viewDepthKey; +return exports; +})({}, Vue); \ No newline at end of file diff --git a/lnbits/static/vendor/vue.global.prod.js b/lnbits/static/vendor/vue.global.prod.js index 14ff2e9c..1c4d6f5f 100644 --- a/lnbits/static/vendor/vue.global.prod.js +++ b/lnbits/static/vendor/vue.global.prod.js @@ -1,9 +1,13 @@ /** -* vue v3.5.8 +* vue v3.5.25 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/var Vue=function(e){"use strict";var t,n;let r,i,l,s,o,a,c,u,d,h,p,f;/*! #__NO_SIDE_EFFECTS__ */function m(e){let t=/* @__PURE__ */Object.create(null);for(let n of e.split(","))t[n]=1;return e=>e in t}let g={},y=[],b=()=>{},_=()=>!1,S=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||97>e.charCodeAt(2)),x=e=>e.startsWith("onUpdate:"),C=Object.assign,k=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},T=Object.prototype.hasOwnProperty,w=(e,t)=>T.call(e,t),N=Array.isArray,A=e=>"[object Map]"===F(e),E=e=>"[object Set]"===F(e),I=e=>"[object Date]"===F(e),R=e=>"[object RegExp]"===F(e),O=e=>"function"==typeof e,P=e=>"string"==typeof e,M=e=>"symbol"==typeof e,L=e=>null!==e&&"object"==typeof e,$=e=>(L(e)||O(e))&&O(e.then)&&O(e.catch),D=Object.prototype.toString,F=e=>D.call(e),V=e=>F(e).slice(8,-1),B=e=>"[object Object]"===F(e),U=e=>P(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,j=/* @__PURE__ */m(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),H=/* @__PURE__ */m("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),q=e=>{let t=/* @__PURE__ */Object.create(null);return n=>t[n]||(t[n]=e(n))},W=/-(\w)/g,K=q(e=>e.replace(W,(e,t)=>t?t.toUpperCase():"")),z=/\B([A-Z])/g,J=q(e=>e.replace(z,"-$1").toLowerCase()),G=q(e=>e.charAt(0).toUpperCase()+e.slice(1)),X=q(e=>e?`on${G(e)}`:""),Q=(e,t)=>!Object.is(e,t),Z=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},ee=e=>{let t=parseFloat(e);return isNaN(t)?e:t},et=e=>{let t=P(e)?Number(e):NaN;return isNaN(t)?e:t},en=()=>r||(r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}),er=/* @__PURE__ */m("Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol");function ei(e){if(N(e)){let t={};for(let n=0;n{if(e){let n=e.split(es);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function ec(e){let t="";if(P(e))t=e;else if(N(e))for(let n=0;nem(e,t))}let ey=e=>!!(e&&!0===e.__v_isRef),ev=e=>P(e)?e:null==e?"":N(e)||L(e)&&(e.toString===D||!O(e.toString))?ey(e)?ev(e.value):JSON.stringify(e,eb,2):String(e),eb=(e,t)=>ey(t)?eb(e,t.value):A(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[e_(t,r)+" =>"]=n,e),{})}:E(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>e_(e))}:M(t)?e_(t):!L(t)||N(t)||B(t)?t:String(t),e_=(e,t="")=>{var n;return M(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};class eS{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=i,!e&&i&&(this.index=(i.scopes||(i.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){let e,t;if(this._isPaused=!0,this.scopes)for(e=0,t=this.scopes.length;e0)){for(;s;){let t=s;for(s=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,1&t.flags)try{t.trigger()}catch(t){e||(e=t)}t=n}}if(e)throw e}}function eN(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function eA(e,t=!1){let n;let r=e.depsTail,i=r;for(;i;){let e=i.prevDep;-1===i.version?(i===r&&(r=e),eR(i,t),function(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}(i)):n=i,i.dep.activeLink=i.prevActiveLink,i.prevActiveLink=void 0,i=e}e.deps=n,e.depsTail=r}function eE(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(eI(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function eI(e){if(4&e.flags&&!(16&e.flags)||(e.flags&=-17,e.globalVersion===eD))return;e.globalVersion=eD;let t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!eE(e)){e.flags&=-3;return}let n=l,r=eO;l=e,eO=!0;try{eN(e);let n=e.fn(e._value);(0===t.version||Q(n,e._value))&&(e._value=n,t.version++)}catch(e){throw t.version++,e}finally{l=n,eO=r,eA(e,!0),e.flags&=-3}}function eR(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r),!n.subs){if(n.computed){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)eR(e,!0)}else!n.map||t||(n.map.delete(n.key),n.map.size||eB.delete(n.target))}}let eO=!0,eP=[];function eM(){eP.push(eO),eO=!1}function eL(){let e=eP.pop();eO=void 0===e||e}function e$(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=l;l=void 0;try{t()}finally{l=e}}}let eD=0;class eF{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class eV{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.target=void 0,this.map=void 0,this.key=void 0}track(e){if(!l||!eO||l===this.computed)return;let t=this.activeLink;if(void 0===t||t.sub!==l)t=this.activeLink=new eF(l,this),l.deps?(t.prevDep=l.depsTail,l.depsTail.nextDep=t,l.depsTail=t):l.deps=l.depsTail=t,4&l.flags&&function e(t){let n=t.dep.computed;if(n&&!t.dep.subs){n.flags|=20;for(let t=n.deps;t;t=t.nextDep)e(t)}let r=t.dep.subs;r!==t&&(t.prevSub=r,r&&(r.nextSub=t)),t.dep.subs=t}(t);else if(-1===t.version&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=l.depsTail,t.nextDep=void 0,l.depsTail.nextDep=t,l.depsTail=t,l.deps===t&&(l.deps=e)}return t}trigger(e){this.version++,eD++,this.notify(e)}notify(e){ek++;try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{ew()}}}let eB=/* @__PURE__ */new WeakMap,eU=Symbol(""),ej=Symbol(""),eH=Symbol("");function eq(e,t,n){if(eO&&l){let t=eB.get(e);t||eB.set(e,t=/* @__PURE__ */new Map);let r=t.get(n);r||(t.set(n,r=new eV),r.target=e,r.map=t,r.key=n),r.track()}}function eW(e,t,n,r,i,l){let s=eB.get(e);if(!s){eD++;return}let o=e=>{e&&e.trigger()};if(ek++,"clear"===t)s.forEach(o);else{let i=N(e),l=i&&U(n);if(i&&"length"===n){let e=Number(r);s.forEach((t,n)=>{("length"===n||n===eH||!M(n)&&n>=e)&&o(t)})}else switch(void 0!==n&&o(s.get(n)),l&&o(s.get(eH)),t){case"add":i?l&&o(s.get("length")):(o(s.get(eU)),A(e)&&o(s.get(ej)));break;case"delete":!i&&(o(s.get(eU)),A(e)&&o(s.get(ej)));break;case"set":A(e)&&o(s.get(eU))}}ew()}function eK(e){let t=tM(e);return t===e?t:(eq(t,"iterate",eH),tO(e)?t:t.map(t$))}function ez(e){return eq(e=tM(e),"iterate",eH),e}let eJ={__proto__:null,[Symbol.iterator](){return eG(this,Symbol.iterator,t$)},concat(...e){return eK(this).concat(...e.map(e=>N(e)?eK(e):e))},entries(){return eG(this,"entries",e=>(e[1]=t$(e[1]),e))},every(e,t){return eQ(this,"every",e,t,void 0,arguments)},filter(e,t){return eQ(this,"filter",e,t,e=>e.map(t$),arguments)},find(e,t){return eQ(this,"find",e,t,t$,arguments)},findIndex(e,t){return eQ(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return eQ(this,"findLast",e,t,t$,arguments)},findLastIndex(e,t){return eQ(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return eQ(this,"forEach",e,t,void 0,arguments)},includes(...e){return eY(this,"includes",e)},indexOf(...e){return eY(this,"indexOf",e)},join(e){return eK(this).join(e)},lastIndexOf(...e){return eY(this,"lastIndexOf",e)},map(e,t){return eQ(this,"map",e,t,void 0,arguments)},pop(){return e0(this,"pop")},push(...e){return e0(this,"push",e)},reduce(e,...t){return eZ(this,"reduce",e,t)},reduceRight(e,...t){return eZ(this,"reduceRight",e,t)},shift(){return e0(this,"shift")},some(e,t){return eQ(this,"some",e,t,void 0,arguments)},splice(...e){return e0(this,"splice",e)},toReversed(){return eK(this).toReversed()},toSorted(e){return eK(this).toSorted(e)},toSpliced(...e){return eK(this).toSpliced(...e)},unshift(...e){return e0(this,"unshift",e)},values(){return eG(this,"values",t$)}};function eG(e,t,n){let r=ez(e),i=r[t]();return r===e||tO(e)||(i._next=i.next,i.next=()=>{let e=i._next();return e.value&&(e.value=n(e.value)),e}),i}let eX=Array.prototype;function eQ(e,t,n,r,i,l){let s=ez(e),o=s!==e&&!tO(e),a=s[t];if(a!==eX[t]){let t=a.apply(e,l);return o?t$(t):t}let c=n;s!==e&&(o?c=function(t,r){return n.call(this,t$(t),r,e)}:n.length>2&&(c=function(t,r){return n.call(this,t,r,e)}));let u=a.call(s,c,r);return o&&i?i(u):u}function eZ(e,t,n,r){let i=ez(e),l=n;return i!==e&&(tO(e)?n.length>3&&(l=function(t,r,i){return n.call(this,t,r,i,e)}):l=function(t,r,i){return n.call(this,t,t$(r),i,e)}),i[t](l,...r)}function eY(e,t,n){let r=tM(e);eq(r,"iterate",eH);let i=r[t](...n);return(-1===i||!1===i)&&tP(n[0])?(n[0]=tM(n[0]),r[t](...n)):i}function e0(e,t,n=[]){eM(),ek++;let r=tM(e)[t].apply(e,n);return ew(),eL(),r}let e1=/* @__PURE__ */m("__proto__,__v_isRef,__isVue"),e2=new Set(/* @__PURE__ */Object.getOwnPropertyNames(Symbol).filter(e=>"arguments"!==e&&"caller"!==e).map(e=>Symbol[e]).filter(M));function e6(e){M(e)||(e=String(e));let t=tM(this);return eq(t,"has",e),t.hasOwnProperty(e)}class e3{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){let r=this._isReadonly,i=this._isShallow;if("__v_isReactive"===t)return!r;if("__v_isReadonly"===t)return r;if("__v_isShallow"===t)return i;if("__v_raw"===t)return n===(r?i?tT:tk:i?tC:tx).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let l=N(e);if(!r){let e;if(l&&(e=eJ[t]))return e;if("hasOwnProperty"===t)return e6}let s=Reflect.get(e,t,tF(e)?e:n);return(M(t)?e2.has(t):e1(t))?s:(r||eq(e,"get",t),i)?s:tF(s)?l&&U(t)?s:s.value:L(s)?r?tA(s):tw(s):s}}class e4 extends e3{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t];if(!this._isShallow){let t=tR(i);if(tO(n)||tR(n)||(i=tM(i),n=tM(n)),!N(e)&&tF(i)&&!tF(n))return!t&&(i.value=n,!0)}let l=N(e)&&U(t)?Number(t)e,tn=e=>Reflect.getPrototypeOf(e);function tr(e,t,n=!1,r=!1){let i=tM(e=e.__v_raw),l=tM(t);n||(Q(t,l)&&eq(i,"get",t),eq(i,"get",l));let{has:s}=tn(i),o=r?tt:n?tD:t$;return s.call(i,t)?o(e.get(t)):s.call(i,l)?o(e.get(l)):void(e!==i&&e.get(t))}function ti(e,t=!1){let n=this.__v_raw,r=tM(n),i=tM(e);return t||(Q(e,i)&&eq(r,"has",e),eq(r,"has",i)),e===i?n.has(e):n.has(e)||n.has(i)}function tl(e,t=!1){return e=e.__v_raw,t||eq(tM(e),"iterate",eU),Reflect.get(e,"size",e)}function ts(e,t=!1){t||tO(e)||tR(e)||(e=tM(e));let n=tM(this);return tn(n).has.call(n,e)||(n.add(e),eW(n,"add",e,e)),this}function to(e,t,n=!1){n||tO(t)||tR(t)||(t=tM(t));let r=tM(this),{has:i,get:l}=tn(r),s=i.call(r,e);s||(e=tM(e),s=i.call(r,e));let o=l.call(r,e);return r.set(e,t),s?Q(t,o)&&eW(r,"set",e,t):eW(r,"add",e,t),this}function ta(e){let t=tM(this),{has:n,get:r}=tn(t),i=n.call(t,e);i||(e=tM(e),i=n.call(t,e)),r&&r.call(t,e);let l=t.delete(e);return i&&eW(t,"delete",e,void 0),l}function tc(){let e=tM(this),t=0!==e.size,n=e.clear();return t&&eW(e,"clear",void 0,void 0),n}function tu(e,t){return function(n,r){let i=this,l=i.__v_raw,s=tM(l),o=t?tt:e?tD:t$;return e||eq(s,"iterate",eU),l.forEach((e,t)=>n.call(r,o(e),o(t),i))}}function td(e,t,n){return function(...r){let i=this.__v_raw,l=tM(i),s=A(l),o="entries"===e||e===Symbol.iterator&&s,a=i[e](...r),c=n?tt:t?tD:t$;return t||eq(l,"iterate","keys"===e&&s?ej:eU),{next(){let{value:e,done:t}=a.next();return t?{value:e,done:t}:{value:o?[c(e[0]),c(e[1])]:c(e),done:t}},[Symbol.iterator](){return this}}}}function th(e){return function(...t){return"delete"!==e&&("clear"===e?void 0:this)}}let[tp,tf,tm,tg]=/* @__PURE__ */function(){let e={get(e){return tr(this,e)},get size(){return tl(this)},has:ti,add:ts,set:to,delete:ta,clear:tc,forEach:tu(!1,!1)},t={get(e){return tr(this,e,!1,!0)},get size(){return tl(this)},has:ti,add(e){return ts.call(this,e,!0)},set(e,t){return to.call(this,e,t,!0)},delete:ta,clear:tc,forEach:tu(!1,!0)},n={get(e){return tr(this,e,!0)},get size(){return tl(this,!0)},has(e){return ti.call(this,e,!0)},add:th("add"),set:th("set"),delete:th("delete"),clear:th("clear"),forEach:tu(!0,!1)},r={get(e){return tr(this,e,!0,!0)},get size(){return tl(this,!0)},has(e){return ti.call(this,e,!0)},add:th("add"),set:th("set"),delete:th("delete"),clear:th("clear"),forEach:tu(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=td(i,!1,!1),n[i]=td(i,!0,!1),t[i]=td(i,!1,!0),r[i]=td(i,!0,!0)}),[e,n,t,r]}();function ty(e,t){let n=t?e?tg:tm:e?tf:tp;return(t,r,i)=>"__v_isReactive"===r?!e:"__v_isReadonly"===r?e:"__v_raw"===r?t:Reflect.get(w(n,r)&&r in t?n:t,r,i)}let tv={get:/* @__PURE__ */ty(!1,!1)},tb={get:/* @__PURE__ */ty(!1,!0)},t_={get:/* @__PURE__ */ty(!0,!1)},tS={get:/* @__PURE__ */ty(!0,!0)},tx=/* @__PURE__ */new WeakMap,tC=/* @__PURE__ */new WeakMap,tk=/* @__PURE__ */new WeakMap,tT=/* @__PURE__ */new WeakMap;function tw(e){return tR(e)?e:tE(e,!1,e5,tv,tx)}function tN(e){return tE(e,!1,e7,tb,tC)}function tA(e){return tE(e,!0,e9,t_,tk)}function tE(e,t,n,r,i){if(!L(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;let l=i.get(e);if(l)return l;let s=e.__v_skip||!Object.isExtensible(e)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}(V(e));if(0===s)return e;let o=new Proxy(e,2===s?r:n);return i.set(e,o),o}function tI(e){return tR(e)?tI(e.__v_raw):!!(e&&e.__v_isReactive)}function tR(e){return!!(e&&e.__v_isReadonly)}function tO(e){return!!(e&&e.__v_isShallow)}function tP(e){return!!e&&!!e.__v_raw}function tM(e){let t=e&&e.__v_raw;return t?tM(t):e}function tL(e){return!w(e,"__v_skip")&&Object.isExtensible(e)&&Y(e,"__v_skip",!0),e}let t$=e=>L(e)?tw(e):e,tD=e=>L(e)?tA(e):e;function tF(e){return!!e&&!0===e.__v_isRef}function tV(e){return tU(e,!1)}function tB(e){return tU(e,!0)}function tU(e,t){return tF(e)?e:new tj(e,t)}class tj{constructor(e,t){this.dep=new eV,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:tM(e),this._value=t?e:t$(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||tO(e)||tR(e);Q(e=n?e:tM(e),t)&&(this._rawValue=e,this._value=n?e:t$(e),this.dep.trigger())}}function tH(e){return tF(e)?e.value:e}let tq={get:(e,t,n)=>"__v_raw"===t?e:tH(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return tF(i)&&!tF(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function tW(e){return tI(e)?e:new Proxy(e,tq)}class tK{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new eV,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}}function tz(e){return new tK(e)}class tJ{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0}get value(){let e=this._object[this._key];return this._value=void 0===e?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){var e,t,n;return e=tM(this._object),t=this._key,null==(n=eB.get(e))?void 0:n.get(t)}}class tG{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function tX(e,t,n){let r=e[t];return tF(r)?r:new tJ(e,t,n)}class tQ{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new eV(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=eD-1,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(8&this.flags)&&l!==this)return eT(this),!0}get value(){let e=this.dep.track();return eI(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}let tZ={},tY=/* @__PURE__ */new WeakMap;function t0(e,t=!1,n=p){if(n){let t=tY.get(n);t||tY.set(n,t=[]),t.push(e)}}function t1(e,t=1/0,n){if(t<=0||!L(e)||e.__v_skip||(n=n||/* @__PURE__ */new Set).has(e))return e;if(n.add(e),t--,tF(e))t1(e.value,t,n);else if(N(e))for(let r=0;r{t1(e,t,n)});else if(B(e)){for(let r in e)t1(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&t1(e[r],t,n)}return e}function t2(e,t,n,r){try{return r?e(...r):e()}catch(e){t3(e,t,n)}}function t6(e,t,n,r){if(O(e)){let i=t2(e,t,n,r);return i&&$(i)&&i.catch(e=>{t3(e,t,n)}),i}if(N(e)){let i=[];for(let l=0;l=nu(n)?t5.push(e):t5.splice(function(e){let t=t4?t9+1:0,n=t5.length;for(;t>>1,i=t5[r],l=nu(i);lnu(e)-nu(t));if(t7.length=0,ne){ne.push(...e);return}for(nt=0,ne=e;ntnull==e.id?2&e.flags?-1:1/0:e.id,nd=null,nh=null;function np(e){let t=nd;return nd=e,nh=e&&e.type.__scopeId||null,t}function nf(e,t=nd,n){if(!t||e._n)return e;let r=(...n)=>{let i;r._d&&iN(-1);let l=np(t);try{i=e(...n)}finally{np(l),r._d&&iN(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function nm(e,t,n,r){let i=e.dirs,l=t&&t.dirs;for(let s=0;se.__isTeleport,nv=e=>e&&(e.disabled||""===e.disabled),nb=e=>e&&(e.defer||""===e.defer),n_=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,nS=e=>"function"==typeof MathMLElement&&e instanceof MathMLElement,nx=(e,t)=>{let n=e&&e.to;return P(n)?t?t(n):null:n};function nC(e,t,n,{o:{insert:r},m:i},l=2){0===l&&r(e.targetAnchor,t,n);let{el:s,anchor:o,shapeFlag:a,children:c,props:u}=e,d=2===l;if(d&&r(s,t,n),(!d||nv(u))&&16&a)for(let e=0;e{e.isMounted=!0}),ri(()=>{e.isUnmounting=!0}),e}let nE=[Function,Array],nI={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:nE,onEnter:nE,onAfterEnter:nE,onEnterCancelled:nE,onBeforeLeave:nE,onLeave:nE,onAfterLeave:nE,onLeaveCancelled:nE,onBeforeAppear:nE,onAppear:nE,onAfterAppear:nE,onAppearCancelled:nE},nR=e=>{let t=e.subTree;return t.component?nR(t.component):t};function nO(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==i_){t=n;break}}return t}let nP={name:"BaseTransition",props:nI,setup(e,{slots:t}){let n=iz(),r=nA();return()=>{let i=t.default&&nV(t.default(),!0);if(!i||!i.length)return;let l=nO(i),s=tM(e),{mode:o}=s;if(r.isLeaving)return n$(l);let a=nD(l);if(!a)return n$(l);let c=nL(a,s,r,n,e=>c=e);a.type!==i_&&nF(a,c);let u=n.subTree,d=u&&nD(u);if(d&&d.type!==i_&&!iR(a,d)&&nR(n).type!==i_){let e=nL(d,s,r,n);if(nF(d,e),"out-in"===o&&a.type!==i_)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,8&n.job.flags||n.update(),delete e.afterLeave},n$(l);"in-out"===o&&a.type!==i_&&(e.delayLeave=(e,t,n)=>{nM(r,d)[String(d.key)]=d,e[nw]=()=>{t(),e[nw]=void 0,delete c.delayedLeave},c.delayedLeave=n})}return l}}};function nM(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=/* @__PURE__ */Object.create(null),n.set(t.type,r)),r}function nL(e,t,n,r,i){let{appear:l,mode:s,persisted:o=!1,onBeforeEnter:a,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:h,onLeave:p,onAfterLeave:f,onLeaveCancelled:m,onBeforeAppear:g,onAppear:y,onAfterAppear:b,onAppearCancelled:_}=t,S=String(e.key),x=nM(n,e),C=(e,t)=>{e&&t6(e,r,9,t)},k=(e,t)=>{let n=t[1];C(e,t),N(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},T={mode:s,persisted:o,beforeEnter(t){let r=a;if(!n.isMounted){if(!l)return;r=g||a}t[nw]&&t[nw](!0);let i=x[S];i&&iR(e,i)&&i.el[nw]&&i.el[nw](),C(r,[t])},enter(e){let t=c,r=u,i=d;if(!n.isMounted){if(!l)return;t=y||c,r=b||u,i=_||d}let s=!1,o=e[nN]=t=>{s||(s=!0,t?C(i,[e]):C(r,[e]),T.delayedLeave&&T.delayedLeave(),e[nN]=void 0)};t?k(t,[e,o]):o()},leave(t,r){let i=String(e.key);if(t[nN]&&t[nN](!0),n.isUnmounting)return r();C(h,[t]);let l=!1,s=t[nw]=n=>{l||(l=!0,r(),n?C(m,[t]):C(f,[t]),t[nw]=void 0,x[i]!==e||delete x[i])};x[i]=e,p?k(p,[t,s]):s()},clone(e){let l=nL(e,t,n,r,i);return i&&i(l),l}};return T}function n$(e){if(n1(e))return(e=iD(e)).children=null,e}function nD(e){if(!n1(e))return ny(e.type)&&e.children?nO(e.children):e;let{shapeFlag:t,children:n}=e;if(n){if(16&t)return n[0];if(32&t&&O(n.default))return n.default()}}function nF(e,t){6&e.shapeFlag&&e.component?(e.transition=t,nF(e.component.subTree,t)):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function nV(e,t=!1,n){let r=[],i=0;for(let l=0;l1)for(let e=0;enj(e,t&&(N(t)?t[l]:t),n,r,i));return}if(nY(r)&&!i)return;let l=4&r.shapeFlag?i6(r.component):r.el,s=i?null:l,{i:o,r:a}=e,c=t&&t.r,u=o.refs===g?o.refs={}:o.refs,d=o.setupState,h=tM(d),p=d===g?()=>!1:e=>w(h,e);if(null!=c&&c!==a&&(P(c)?(u[c]=null,p(c)&&(d[c]=null)):tF(c)&&(c.value=null)),O(a))t2(a,o,12,[s,u]);else{let t=P(a),r=tF(a);if(t||r){let o=()=>{if(e.f){let n=t?p(a)?d[a]:u[a]:a.value;i?N(n)&&k(n,l):N(n)?n.includes(l)||n.push(l):t?(u[a]=[l],p(a)&&(d[a]=u[a])):(a.value=[l],e.k&&(u[e.k]=a.value))}else t?(u[a]=s,p(a)&&(d[a]=s)):r&&(a.value=s,e.k&&(u[e.k]=s))};s?(o.id=-1,rQ(o,n)):o()}}}let nH=!1,nq=()=>{nH||(console.error("Hydration completed but contains mismatches."),nH=!0)},nW=e=>e.namespaceURI.includes("svg")&&"foreignObject"!==e.tagName,nK=e=>e.namespaceURI.includes("MathML"),nz=e=>{if(1===e.nodeType){if(nW(e))return"svg";if(nK(e))return"mathml"}},nJ=e=>8===e.nodeType;function nG(e){let{mt:t,p:n,o:{patchProp:r,createText:i,nextSibling:l,parentNode:s,remove:o,insert:a,createComment:c}}=e,u=(n,r,o,c,b,_=!1)=>{_=_||!!r.dynamicChildren;let S=nJ(n)&&"["===n.data,x=()=>f(n,r,o,c,b,S),{type:C,ref:k,shapeFlag:T,patchFlag:w}=r,N=n.nodeType;r.el=n,-2===w&&(_=!1,r.dynamicChildren=null);let A=null;switch(C){case ib:3!==N?""===r.children?(a(r.el=i(""),s(n),n),A=n):A=x():(n.data!==r.children&&(nq(),n.data=r.children),A=l(n));break;case i_:y(n)?(A=l(n),g(r.el=n.content.firstChild,n,o)):A=8!==N||S?x():l(n);break;case iS:if(S&&(N=(n=l(n)).nodeType),1===N||3===N){A=n;let e=!r.children.length;for(let t=0;t{s=s||!!t.dynamicChildren;let{type:a,props:c,patchFlag:u,shapeFlag:d,dirs:p,transition:f}=t,m="input"===a||"option"===a;if(m||-1!==u){let a;p&&nm(t,null,n,"created");let b=!1;if(y(e)){b=r2(i,f)&&n&&n.vnode.props&&n.vnode.props.appear;let r=e.content.firstChild;b&&f.beforeEnter(r),g(r,e,n),t.el=e=r}if(16&d&&!(c&&(c.innerHTML||c.textContent))){let r=h(e.firstChild,t,e,n,i,l,s);for(;r;){nZ(e,1)||nq();let t=r;r=r.nextSibling,o(t)}}else if(8&d){let n=t.children;"\n"===n[0]&&("PRE"===e.tagName||"TEXTAREA"===e.tagName)&&(n=n.slice(1)),e.textContent!==n&&(nZ(e,0)||nq(),e.textContent=t.children)}if(c){if(m||!s||48&u){let t=e.tagName.includes("-");for(let i in c)(m&&(i.endsWith("value")||"indeterminate"===i)||S(i)&&!j(i)||"."===i[0]||t)&&r(e,i,null,c[i],void 0,n)}else if(c.onClick)r(e,"onClick",null,c.onClick,void 0,n);else if(4&u&&tI(c.style))for(let e in c.style)c.style[e]}(a=c&&c.onVnodeBeforeMount)&&iH(a,n,t),p&&nm(t,null,n,"beforeMount"),((a=c&&c.onVnodeMounted)||p||b)&&ig(()=>{a&&iH(a,n,t),b&&f.enter(e),p&&nm(t,null,n,"mounted")},i)}return e.nextSibling},h=(e,t,r,s,o,c,d)=>{d=d||!!t.dynamicChildren;let h=t.children,p=h.length;for(let t=0;t{let{slotScopeIds:u}=t;u&&(i=i?i.concat(u):u);let d=s(e),p=h(l(e),t,d,n,r,i,o);return p&&nJ(p)&&"]"===p.data?l(t.anchor=p):(nq(),a(t.anchor=c("]"),d,p),p)},f=(e,t,r,i,a,c)=>{if(nZ(e.parentElement,1)||nq(),t.el=null,c){let t=m(e);for(;;){let n=l(e);if(n&&n!==t)o(n);else break}}let u=l(e),d=s(e);return o(e),n(null,t,d,u,r,i,nz(d),a),u},m=(e,t="[",n="]")=>{let r=0;for(;e;)if((e=l(e))&&nJ(e)&&(e.data===t&&r++,e.data===n)){if(0===r)return l(e);r--}return e},g=(e,t,n)=>{let r=t.parentNode;r&&r.replaceChild(e,t);let i=n;for(;i;)i.vnode.el===t&&(i.vnode.el=i.subTree.el=e),i=i.parent},y=e=>1===e.nodeType&&"TEMPLATE"===e.tagName;return[(e,t)=>{if(!t.hasChildNodes()){n(null,e,t),nc(),t._vnode=e;return}u(t.firstChild,e,null,null,null),nc(),t._vnode=e},u]}let nX="data-allow-mismatch",nQ={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function nZ(e,t){if(0===t||1===t)for(;e&&!e.hasAttribute(nX);)e=e.parentElement;let n=e&&e.getAttribute(nX);if(null==n)return!1;if(""===n)return!0;{let e=n.split(",");return!!(0===t&&e.includes("children"))||n.split(",").includes(nQ[t])}}let nY=e=>!!e.type.__asyncLoader;function n0(e,t){let{ref:n,props:r,children:i,ce:l}=t.vnode,s=iL(e,r,i);return s.ref=n,s.ce=l,delete t.vnode.ce,s}let n1=e=>e.type.__isKeepAlive;function n2(e,t){return N(e)?e.some(e=>n2(e,t)):P(e)?e.split(",").includes(t):!!R(e)&&(e.lastIndex=0,e.test(t))}function n6(e,t){n4(e,"a",t)}function n3(e,t){n4(e,"da",t)}function n4(e,t,n=iK){let r=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(n9(t,r,n),n){let e=n.parent;for(;e&&e.parent;)n1(e.parent.vnode)&&function(e,t,n,r){let i=n9(t,e,r,!0);rl(()=>{k(r[t],i)},n)}(r,t,n,e),e=e.parent}}function n8(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function n5(e){return 128&e.shapeFlag?e.ssContent:e}function n9(e,t,n=iK,r=!1){if(n){let i=n[e]||(n[e]=[]),l=t.__weh||(t.__weh=(...r)=>{eM();let i=iJ(n),l=t6(t,n,e,r);return i(),eL(),l});return r?i.unshift(l):i.push(l),l}}let n7=e=>(t,n=iK)=>{iQ&&"sp"!==e||n9(e,(...e)=>t(...e),n)},re=n7("bm"),rt=n7("m"),rn=n7("bu"),rr=n7("u"),ri=n7("bum"),rl=n7("um"),rs=n7("sp"),ro=n7("rtg"),ra=n7("rtc");function rc(e,t=iK){n9("ec",e,t)}let ru="components",rd=Symbol.for("v-ndc");function rh(e,t,n=!0,r=!1){let i=nd||iK;if(i){let n=i.type;if(e===ru){let e=i3(n,!1);if(e&&(e===t||e===K(t)||e===G(K(t))))return n}let l=rp(i[e]||n[e],t)||rp(i.appContext[e],t);return!l&&r?n:l}}function rp(e,t){return e&&(e[t]||e[K(t)]||e[G(K(t))])}let rf=e=>e?iX(e)?i6(e):rf(e.parent):null,rm=/* @__PURE__ */C(/* @__PURE__ */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=>rf(e.parent),$root:e=>rf(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>rC(e),$forceUpdate:e=>e.f||(e.f=()=>{nl(e.update)}),$nextTick:e=>e.n||(e.n=ni.bind(e.proxy)),$watch:e=>r7.bind(e)}),rg=(e,t)=>e!==g&&!e.__isScriptSetup&&w(e,t),ry={get({_:e},t){let n,r,i;if("__v_skip"===t)return!0;let{ctx:l,setupState:s,data:o,props:a,accessCache:c,type:u,appContext:d}=e;if("$"!==t[0]){let r=c[t];if(void 0!==r)switch(r){case 1:return s[t];case 2:return o[t];case 4:return l[t];case 3:return a[t]}else{if(rg(s,t))return c[t]=1,s[t];if(o!==g&&w(o,t))return c[t]=2,o[t];if((n=e.propsOptions[0])&&w(n,t))return c[t]=3,a[t];if(l!==g&&w(l,t))return c[t]=4,l[t];rS&&(c[t]=0)}}let h=rm[t];return h?("$attrs"===t&&eq(e.attrs,"get",""),h(e)):(r=u.__cssModules)&&(r=r[t])?r:l!==g&&w(l,t)?(c[t]=4,l[t]):w(i=d.config.globalProperties,t)?i[t]:void 0},set({_:e},t,n){let{data:r,setupState:i,ctx:l}=e;return rg(i,t)?(i[t]=n,!0):r!==g&&w(r,t)?(r[t]=n,!0):!w(e.props,t)&&!("$"===t[0]&&t.slice(1) in e)&&(l[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:i,propsOptions:l}},s){let o;return!!n[s]||e!==g&&w(e,s)||rg(t,s)||(o=l[0])&&w(o,s)||w(r,s)||w(rm,s)||w(i.config.globalProperties,s)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:w(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},rv=/* @__PURE__ */C({},ry,{get(e,t){if(t!==Symbol.unscopables)return ry.get(e,t,e)},has:(e,t)=>"_"!==t[0]&&!er(t)});function rb(){let e=iz();return e.setupContext||(e.setupContext=i2(e))}function r_(e){return N(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}let rS=!0;function rx(e,t,n){t6(N(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function rC(e){let t;let n=e.type,{mixins:r,extends:i}=n,{mixins:l,optionsCache:s,config:{optionMergeStrategies:o}}=e.appContext,a=s.get(n);return a?t=a:l.length||r||i?(t={},l.length&&l.forEach(e=>rk(t,e,o,!0)),rk(t,n,o)):t=n,L(n)&&s.set(n,t),t}function rk(e,t,n,r=!1){let{mixins:i,extends:l}=t;for(let s in l&&rk(e,l,n,!0),i&&i.forEach(t=>rk(e,t,n,!0)),t)if(r&&"expose"===s);else{let r=rT[s]||n&&n[s];e[s]=r?r(e[s],t[s]):t[s]}return e}let rT={data:rw,props:rI,emits:rI,methods:rE,computed:rE,beforeCreate:rA,created:rA,beforeMount:rA,mounted:rA,beforeUpdate:rA,updated:rA,beforeDestroy:rA,beforeUnmount:rA,destroyed:rA,unmounted:rA,activated:rA,deactivated:rA,errorCaptured:rA,serverPrefetch:rA,components:rE,directives:rE,watch:function(e,t){if(!e)return t;if(!t)return e;let n=C(/* @__PURE__ */Object.create(null),e);for(let r in t)n[r]=rA(e[r],t[r]);return n},provide:rw,inject:function(e,t){return rE(rN(e),rN(t))}};function rw(e,t){return t?e?function(){return C(O(e)?e.call(this,this):e,O(t)?t.call(this,this):t)}:t:e}function rN(e){if(N(e)){let t={};for(let n=0;n1)return n&&O(t)?t.call(r&&r.proxy):t}}let r$={},rD=()=>Object.create(r$),rF=e=>Object.getPrototypeOf(e)===r$;function rV(e,t,n,r){let i;let[l,s]=e.propsOptions,o=!1;if(t)for(let a in t){let c;if(j(a))continue;let u=t[a];l&&w(l,c=K(a))?s&&s.includes(c)?(i||(i={}))[c]=u:n[c]=u:ii(e.emitsOptions,a)||a in r&&u===r[a]||(r[a]=u,o=!0)}if(s){let t=tM(n),r=i||g;for(let i=0;i"_"===e[0]||"$stable"===e,rq=e=>N(e)?e.map(iV):[iV(e)],rW=(e,t,n)=>{if(t._n)return t;let r=nf((...e)=>rq(t(...e)),n);return r._c=!1,r},rK=(e,t,n)=>{let r=e._ctx;for(let n in e){if(rH(n))continue;let i=e[n];if(O(i))t[n]=rW(n,i,r);else if(null!=i){let e=rq(i);t[n]=()=>e}}},rz=(e,t)=>{let n=rq(t);e.slots.default=()=>n},rJ=(e,t,n)=>{for(let r in t)(n||"_"!==r)&&(e[r]=t[r])},rG=(e,t,n)=>{let r=e.slots=rD();if(32&e.vnode.shapeFlag){let e=t._;e?(rJ(r,t,n),n&&Y(r,"_",e,!0)):rK(t,r)}else t&&rz(e,t)},rX=(e,t,n)=>{let{vnode:r,slots:i}=e,l=!0,s=g;if(32&r.shapeFlag){let e=t._;e?n&&1===e?l=!1:rJ(i,t,n):(l=!t.$stable,rK(t,i)),s=t}else t&&(rz(e,t),s={default:1});if(l)for(let e in i)rH(e)||null!=s[e]||delete i[e]},rQ=ig;function rZ(e){return rY(e,nG)}function rY(e,t){var n;let r,i;en().__VUE__=!0;let{insert:l,remove:s,patchProp:o,createElement:c,createText:u,createComment:d,setText:h,setElementText:p,parentNode:f,nextSibling:m,setScopeId:_=b,insertStaticContent:S}=e,x=(e,t,n,r=null,i=null,l=null,s,o=null,a=!!t.dynamicChildren)=>{if(e===t)return;e&&!iR(e,t)&&(r=eo(e),et(e,i,l,!0),e=null),-2===t.patchFlag&&(a=!1,t.dynamicChildren=null);let{type:c,ref:u,shapeFlag:d}=t;switch(c){case ib:k(e,t,n,r);break;case i_:T(e,t,n,r);break;case iS:null==e&&A(t,n,r,s);break;case iv:U(e,t,n,r,i,l,s,o,a);break;default:1&d?R(e,t,n,r,i,l,s,o,a):6&d?H(e,t,n,r,i,l,s,o,a):64&d?c.process(e,t,n,r,i,l,s,o,a,eu):128&d&&c.process(e,t,n,r,i,l,s,o,a,eu)}null!=u&&i&&nj(u,e&&e.ref,l,t||e,!t)},k=(e,t,n,r)=>{if(null==e)l(t.el=u(t.children),n,r);else{let n=t.el=e.el;t.children!==e.children&&h(n,t.children)}},T=(e,t,n,r)=>{null==e?l(t.el=d(t.children||""),n,r):t.el=e.el},A=(e,t,n,r)=>{[e.el,e.anchor]=S(e.children,t,n,r,e.el,e.anchor)},E=({el:e,anchor:t},n,r)=>{let i;for(;e&&e!==t;)i=m(e),l(e,n,r),e=i;l(t,n,r)},I=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=m(e),s(e),e=n;s(t)},R=(e,t,n,r,i,l,s,o,a)=>{"svg"===t.type?s="svg":"math"===t.type&&(s="mathml"),null==e?P(t,n,r,i,l,s,o,a):F(e,t,i,l,s,o,a)},P=(e,t,n,r,i,s,a,u)=>{let d,h;let{props:f,shapeFlag:m,transition:g,dirs:y}=e;if(d=e.el=c(e.type,s,f&&f.is,f),8&m?p(d,e.children):16&m&&D(e.children,d,null,r,i,r0(e,s),a,u),y&&nm(e,null,r,"created"),M(d,e,e.scopeId,a,r),f){for(let e in f)"value"===e||j(e)||o(d,e,null,f[e],s,r);"value"in f&&o(d,"value",null,f.value,s),(h=f.onVnodeBeforeMount)&&iH(h,r,e)}y&&nm(e,null,r,"beforeMount");let b=r2(i,g);b&&g.beforeEnter(d),l(d,t,n),((h=f&&f.onVnodeMounted)||b||y)&&rQ(()=>{h&&iH(h,r,e),b&&g.enter(d),y&&nm(e,null,r,"mounted")},i)},M=(e,t,n,r,i)=>{if(n&&_(e,n),r)for(let t=0;t{for(let c=a;c{let a;let c=t.el=e.el,{patchFlag:u,dynamicChildren:d,dirs:h}=t;u|=16&e.patchFlag;let f=e.props||g,m=t.props||g;if(n&&r1(n,!1),(a=m.onVnodeBeforeUpdate)&&iH(a,n,t,e),h&&nm(t,e,n,"beforeUpdate"),n&&r1(n,!0),(f.innerHTML&&null==m.innerHTML||f.textContent&&null==m.textContent)&&p(c,""),d?V(e.dynamicChildren,d,c,n,r,r0(t,i),l):s||X(e,t,c,null,n,r,r0(t,i),l,!1),u>0){if(16&u)B(c,f,m,n,i);else if(2&u&&f.class!==m.class&&o(c,"class",null,m.class,i),4&u&&o(c,"style",f.style,m.style,i),8&u){let e=t.dynamicProps;for(let t=0;t{a&&iH(a,n,t,e),h&&nm(t,e,n,"updated")},r)},V=(e,t,n,r,i,l,s)=>{for(let o=0;o{if(t!==n){if(t!==g)for(let l in t)j(l)||l in n||o(e,l,t[l],null,i,r);for(let l in n){if(j(l))continue;let s=n[l],a=t[l];s!==a&&"value"!==l&&o(e,l,a,s,i,r)}"value"in n&&o(e,"value",t.value,n.value,i)}},U=(e,t,n,r,i,s,o,a,c)=>{let d=t.el=e?e.el:u(""),h=t.anchor=e?e.anchor:u(""),{patchFlag:p,dynamicChildren:f,slotScopeIds:m}=t;m&&(a=a?a.concat(m):m),null==e?(l(d,n,r),l(h,n,r),D(t.children||[],n,h,i,s,o,a,c)):p>0&&64&p&&f&&e.dynamicChildren?(V(e.dynamicChildren,f,n,i,s,o,a),(null!=t.key||i&&t===i.subTree)&&r6(e,t,!0)):X(e,t,n,h,i,s,o,a,c)},H=(e,t,n,r,i,l,s,o,a)=>{t.slotScopeIds=o,null==e?512&t.shapeFlag?i.ctx.activate(t,n,r,s,a):q(t,n,r,i,l,s,a):W(e,t,a)},q=(e,t,n,r,i,l,s)=>{let o=e.component=function(e,t,n){let r=e.type,i=(t?t.appContext:e.appContext)||iq,l={uid:iW++,vnode:e,type:r,parent:t,appContext:i,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new eS(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(i.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:function e(t,n,r=!1){let i=r?rU:n.propsCache,l=i.get(t);if(l)return l;let s=t.props,o={},a=[],c=!1;if(!O(t)){let i=t=>{c=!0;let[r,i]=e(t,n,!0);C(o,r),i&&a.push(...i)};!r&&n.mixins.length&&n.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}if(!s&&!c)return L(t)&&i.set(t,y),y;if(N(s))for(let e=0;e{let r=e(t,n,!0);r&&(a=!0,C(o,r))};!r&&n.mixins.length&&n.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}return s||a?(N(s)?s.forEach(e=>o[e]=null):C(o,s),L(t)&&i.set(t,o),o):(L(t)&&i.set(t,null),null)}(r,i),emit:null,emitted:null,propsDefaults:g,inheritAttrs:r.inheritAttrs,ctx:g,data:g,props:g,attrs:g,slots:g,refs:g,setupState:g,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return l.ctx={_:l},l.root=t?t.root:l,l.emit=ir.bind(null,l),e.ce&&e.ce(l),l}(e,r,i);n1(e)&&(o.ctx.renderer=eu),function(e,t=!1,n=!1){t&&a(t);let{props:r,children:i}=e.vnode,l=iX(e);(function(e,t,n,r=!1){let i={},l=rD();for(let n in e.propsDefaults=/* @__PURE__ */Object.create(null),rV(e,t,i,l),e.propsOptions[0])n in i||(i[n]=void 0);n?e.props=r?i:tN(i):e.type.props?e.props=i:e.props=l,e.attrs=l})(e,r,l,t),rG(e,i,n),l&&function(e,t){let n=e.type;e.accessCache=/* @__PURE__ */Object.create(null),e.proxy=new Proxy(e.ctx,ry);let{setup:r}=n;if(r){let n=e.setupContext=r.length>1?i2(e):null,i=iJ(e);eM();let l=t2(r,e,0,[e.props,n]);if(eL(),i(),$(l)){if(nY(e)||nU(e),l.then(iG,iG),t)return l.then(n=>{iZ(e,n,t)}).catch(t=>{t3(t,e,0)});e.asyncDep=l}else iZ(e,l,t)}else i0(e,t)}(e,t),t&&a(!1)}(o,!1,s),o.asyncDep?(i&&i.registerDep(o,z,s),e.el||T(null,o.subTree=iL(i_),t,n)):z(o,e,t,n,i,l,s)},W=(e,t,n)=>{let r=t.component=e.component;if(function(e,t,n){let{props:r,children:i,component:l}=e,{props:s,children:o,patchFlag:a}=t,c=l.emitsOptions;if(t.dirs||t.transition)return!0;if(!n||!(a>=0))return(!!i||!!o)&&(!o||!o.$stable)||r!==s&&(r?!s||ia(r,s,c):!!s);if(1024&a)return!0;if(16&a)return r?ia(r,s,c):!!s;if(8&a){let e=t.dynamicProps;for(let t=0;t{let a=()=>{if(e.isMounted){let t,{next:n,bu:r,u:i,parent:c,vnode:u}=e;{let t=function e(t){let n=t.subTree.component;if(n)return n.asyncDep&&!n.asyncResolved?n:e(n)}(e);if(t){n&&(n.el=u.el,G(e,n,o)),t.asyncDep.then(()=>{e.isUnmounted||a()});return}}let d=n;r1(e,!1),n?(n.el=u.el,G(e,n,o)):n=u,r&&Z(r),(t=n.props&&n.props.onVnodeBeforeUpdate)&&iH(t,c,n,u),r1(e,!0);let h=il(e),p=e.subTree;e.subTree=h,x(p,h,f(p.el),eo(p),e,l,s),n.el=h.el,null===d&&ic(e,h.el),i&&rQ(i,l),(t=n.props&&n.props.onVnodeUpdated)&&rQ(()=>iH(t,c,n,u),l)}else{let o;let{el:a,props:c}=t,{bm:u,m:d,parent:h,root:p,type:f}=e,m=nY(t);if(r1(e,!1),u&&Z(u),!m&&(o=c&&c.onVnodeBeforeMount)&&iH(o,h,t),r1(e,!0),a&&i){let t=()=>{e.subTree=il(e),i(a,e.subTree,e,l,null)};m&&f.__asyncHydrate?f.__asyncHydrate(a,e,t):t()}else{p.ce&&p.ce._injectChildStyle(f);let i=e.subTree=il(e);x(null,i,n,r,e,l,s),t.el=i.el}if(d&&rQ(d,l),!m&&(o=c&&c.onVnodeMounted)){let e=t;rQ(()=>iH(o,h,e),l)}(256&t.shapeFlag||h&&nY(h.vnode)&&256&h.vnode.shapeFlag)&&e.a&&rQ(e.a,l),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new eC(a);e.scope.off();let u=e.update=c.run.bind(c),d=e.job=c.runIfDirty.bind(c);d.i=e,d.id=e.uid,c.scheduler=()=>nl(d),r1(e,!0),u()},G=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,r){let{props:i,attrs:l,vnode:{patchFlag:s}}=e,o=tM(i),[a]=e.propsOptions,c=!1;if((r||s>0)&&!(16&s)){if(8&s){let n=e.vnode.dynamicProps;for(let r=0;r{let c=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:h,shapeFlag:f}=t;if(h>0){if(128&h){Y(c,d,n,r,i,l,s,o,a);return}if(256&h){Q(c,d,n,r,i,l,s,o,a);return}}8&f?(16&u&&es(c,i,l),d!==c&&p(n,d)):16&u?16&f?Y(c,d,n,r,i,l,s,o,a):es(c,i,l,!0):(8&u&&p(n,""),16&f&&D(d,n,r,i,l,s,o,a))},Q=(e,t,n,r,i,l,s,o,a)=>{let c;e=e||y,t=t||y;let u=e.length,d=t.length,h=Math.min(u,d);for(c=0;cd?es(e,i,l,!0,!1,h):D(t,n,r,i,l,s,o,a,h)},Y=(e,t,n,r,i,l,s,o,a)=>{let c=0,u=t.length,d=e.length-1,h=u-1;for(;c<=d&&c<=h;){let r=e[c],u=t[c]=a?iB(t[c]):iV(t[c]);if(iR(r,u))x(r,u,n,null,i,l,s,o,a);else break;c++}for(;c<=d&&c<=h;){let r=e[d],c=t[h]=a?iB(t[h]):iV(t[h]);if(iR(r,c))x(r,c,n,null,i,l,s,o,a);else break;d--,h--}if(c>d){if(c<=h){let e=h+1,d=eh)for(;c<=d;)et(e[c],i,l,!0),c++;else{let p;let f=c,m=c,g=/* @__PURE__ */new Map;for(c=m;c<=h;c++){let e=t[c]=a?iB(t[c]):iV(t[c]);null!=e.key&&g.set(e.key,c)}let b=0,_=h-m+1,S=!1,C=0,k=Array(_);for(c=0;c<_;c++)k[c]=0;for(c=f;c<=d;c++){let r;let u=e[c];if(b>=_){et(u,i,l,!0);continue}if(null!=u.key)r=g.get(u.key);else for(p=m;p<=h;p++)if(0===k[p-m]&&iR(u,t[p])){r=p;break}void 0===r?et(u,i,l,!0):(k[r-m]=c+1,r>=C?C=r:S=!0,x(u,t[r],n,null,i,l,s,o,a),b++)}let T=S?function(e){let t,n,r,i,l;let s=e.slice(),o=[0],a=e.length;for(t=0;t>1]]0&&(s[t]=o[r-1]),o[r]=t)}}for(r=o.length,i=o[r-1];r-- >0;)o[r]=i,i=s[i];return o}(k):y;for(p=T.length-1,c=_-1;c>=0;c--){let e=m+c,d=t[e],h=e+1{let{el:s,type:o,transition:a,children:c,shapeFlag:u}=e;if(6&u){ee(e.component.subTree,t,n,r);return}if(128&u){e.suspense.move(t,n,r);return}if(64&u){o.move(e,t,n,eu);return}if(o===iv){l(s,t,n);for(let e=0;ea.enter(s),i);else{let{leave:e,delayLeave:r,afterLeave:i}=a,o=()=>l(s,t,n),c=()=>{e(s,()=>{o(),i&&i()})};r?r(s,o,c):c()}}else l(s,t,n)},et=(e,t,n,r=!1,i=!1)=>{let l;let{type:s,props:o,ref:a,children:c,dynamicChildren:u,shapeFlag:d,patchFlag:h,dirs:p,cacheIndex:f}=e;if(-2===h&&(i=!1),null!=a&&nj(a,null,n,e,!0),null!=f&&(t.renderCache[f]=void 0),256&d){t.ctx.deactivate(e);return}let m=1&d&&p,g=!nY(e);if(g&&(l=o&&o.onVnodeBeforeUnmount)&&iH(l,t,e),6&d)el(e.component,n,r);else{if(128&d){e.suspense.unmount(n,r);return}m&&nm(e,null,t,"beforeUnmount"),64&d?e.type.remove(e,t,n,eu,r):u&&!u.hasOnce&&(s!==iv||h>0&&64&h)?es(u,t,n,!1,!0):(s===iv&&384&h||!i&&16&d)&&es(c,t,n),r&&er(e)}(g&&(l=o&&o.onVnodeUnmounted)||m)&&rQ(()=>{l&&iH(l,t,e),m&&nm(e,null,t,"unmounted")},n)},er=e=>{let{type:t,el:n,anchor:r,transition:i}=e;if(t===iv){ei(n,r);return}if(t===iS){I(e);return}let l=()=>{s(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(1&e.shapeFlag&&i&&!i.persisted){let{leave:t,delayLeave:r}=i,s=()=>t(n,l);r?r(e.el,l,s):s()}else l()},ei=(e,t)=>{let n;for(;e!==t;)n=m(e),s(e),e=n;s(t)},el=(e,t,n)=>{let{bum:r,scope:i,job:l,subTree:s,um:o,m:a,a:c}=e;r3(a),r3(c),r&&Z(r),i.stop(),l&&(l.flags|=8,et(s,e,t,n)),o&&rQ(o,t),rQ(()=>{e.isUnmounted=!0},t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},es=(e,t,n,r=!1,i=!1,l=0)=>{for(let s=l;s{if(6&e.shapeFlag)return eo(e.component.subTree);if(128&e.shapeFlag)return e.suspense.next();let t=m(e.anchor||e.el),n=t&&t[ng];return n?m(n):t},ea=!1,ec=(e,t,n)=>{null==e?t._vnode&&et(t._vnode,null,null,!0):x(t._vnode||null,e,t,null,null,null,n),t._vnode=e,ea||(ea=!0,na(),nc(),ea=!1)},eu={p:x,um:et,m:ee,r:er,mt:q,mc:D,pc:X,pbc:V,n:eo,o:e};return t&&([r,i]=t(eu)),{render:ec,hydrate:r,createApp:(n=r,function(e,t=null){O(e)||(e=C({},e)),null==t||L(t)||(t=null);let r=rR(),i=/* @__PURE__ */new WeakSet,l=[],s=!1,o=r.app={_uid:rO++,_component:e,_props:t,_container:null,_context:r,_instance:null,version:i9,get config(){return r.config},set config(v){},use:(e,...t)=>(i.has(e)||(e&&O(e.install)?(i.add(e),e.install(o,...t)):O(e)&&(i.add(e),e(o,...t))),o),mixin:e=>(r.mixins.includes(e)||r.mixins.push(e),o),component:(e,t)=>t?(r.components[e]=t,o):r.components[e],directive:(e,t)=>t?(r.directives[e]=t,o):r.directives[e],mount(i,l,a){if(!s){let c=o._ceVNode||iL(e,t);return c.appContext=r,!0===a?a="svg":!1===a&&(a=void 0),l&&n?n(c,i):ec(c,i,a),s=!0,o._container=i,i.__vue_app__=o,i6(c.component)}},onUnmount(e){l.push(e)},unmount(){s&&(t6(l,o._instance,16),ec(null,o._container),delete o._container.__vue_app__)},provide:(e,t)=>(r.provides[e]=t,o),runWithContext(e){let t=rP;rP=o;try{return e()}finally{rP=t}}};return o})}}function r0({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function r1({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function r2(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function r6(e,t,n=!1){let r=e.children,i=t.children;if(N(r)&&N(i))for(let e=0;et6(e,c,t,n);let u=!1;return"post"===s?a.scheduler=e=>{rQ(e,c&&c.suspense)}:"sync"!==s&&(u=!0,a.scheduler=(e,t)=>{t?e():nl(e)}),a.augmentJob=e=>{t&&(e.flags|=4),u&&(e.flags|=2,c&&(e.id=c.uid,e.i=c))},function(e,t,n=g){let r,l,s,o;let{immediate:a,deep:c,once:u,scheduler:d,augmentJob:h,call:f}=n,m=e=>c?e:tO(e)||!1===c||0===c?t1(e,1):t1(e),y=!1,_=!1;if(tF(e)?(l=()=>e.value,y=tO(e)):tI(e)?(l=()=>m(e),y=!0):N(e)?(_=!0,y=e.some(e=>tI(e)||tO(e)),l=()=>e.map(e=>tF(e)?e.value:tI(e)?m(e):O(e)?f?f(e,2):e():void 0)):l=O(e)?t?f?()=>f(e,2):e:()=>{if(s){eM();try{s()}finally{eL()}}let t=p;p=r;try{return f?f(e,3,[o]):e(o)}finally{p=t}}:b,t&&c){let e=l,t=!0===c?1/0:c;l=()=>t1(e(),t)}let S=i,x=()=>{r.stop(),S&&k(S.effects,r)};if(u&&t){let e=t;t=(...t)=>{e(...t),x()}}let C=_?Array(e.length).fill(tZ):tZ,T=e=>{if(1&r.flags&&(r.dirty||e)){if(t){let e=r.run();if(c||y||(_?e.some((e,t)=>Q(e,C[t])):Q(e,C))){s&&s();let n=p;p=r;try{let n=[e,C===tZ?void 0:_&&C[0]===tZ?[]:C,o];f?f(t,3,n):t(...n),C=e}finally{p=n}}}else r.run()}};return h&&h(T),(r=new eC(l)).scheduler=d?()=>d(T,!1):T,o=e=>t0(e,!1,r),s=r.onStop=()=>{let e=tY.get(r);if(e){if(f)f(e,4);else for(let t of e)t();tY.delete(r)}},t?a?T(!0):C=r.run():d?d(T.bind(null,!0),!0):r.run(),x.pause=r.pause.bind(r),x.resume=r.resume.bind(r),x.stop=x,x}(e,t,a)}function r7(e,t,n){let r;let i=this.proxy,l=P(e)?e.includes(".")?ie(i,e):()=>i[e]:e.bind(i,i);O(t)?r=t:(r=t.handler,n=t);let s=iJ(this),o=r9(l,r.bind(i),n);return s(),o}function ie(e,t){let n=t.split(".");return()=>{let t=e;for(let e=0;e"modelValue"===t||"model-value"===t?e.modelModifiers:e[`${t}Modifiers`]||e[`${K(t)}Modifiers`]||e[`${J(t)}Modifiers`];function ir(e,t,...n){let r;if(e.isUnmounted)return;let i=e.vnode.props||g,l=n,s=t.startsWith("update:"),o=s&&it(i,t.slice(7));o&&(o.trim&&(l=n.map(e=>P(e)?e.trim():e)),o.number&&(l=n.map(ee)));let a=i[r=X(t)]||i[r=X(K(t))];!a&&s&&(a=i[r=X(J(t))]),a&&t6(a,e,6,l);let c=i[r+"Once"];if(c){if(e.emitted){if(e.emitted[r])return}else e.emitted={};e.emitted[r]=!0,t6(c,e,6,l)}}function ii(e,t){return!!(e&&S(t))&&(w(e,(t=t.slice(2).replace(/Once$/,""))[0].toLowerCase()+t.slice(1))||w(e,J(t))||w(e,t))}function il(e){let t,n;let{type:r,vnode:i,proxy:l,withProxy:s,propsOptions:[o],slots:a,attrs:c,emit:u,render:d,renderCache:h,props:p,data:f,setupState:m,ctx:g,inheritAttrs:y}=e,b=np(e);try{if(4&i.shapeFlag){let e=s||l;t=iV(d.call(e,e,h,p,m,f,g)),n=c}else t=iV(r.length>1?r(p,{attrs:c,slots:a,emit:u}):r(p,null)),n=r.props?c:is(c)}catch(n){ix.length=0,t3(n,e,1),t=iL(i_)}let _=t;if(n&&!1!==y){let e=Object.keys(n),{shapeFlag:t}=_;e.length&&7&t&&(o&&e.some(x)&&(n=io(n,o)),_=iD(_,n,!1,!0))}return i.dirs&&((_=iD(_,null,!1,!0)).dirs=_.dirs?_.dirs.concat(i.dirs):i.dirs),i.transition&&nF(_,i.transition),t=_,np(b),t}let is=e=>{let t;for(let n in e)("class"===n||"style"===n||S(n))&&((t||(t={}))[n]=e[n]);return t},io=(e,t)=>{let n={};for(let r in e)x(r)&&r.slice(9) in t||(n[r]=e[r]);return n};function ia(e,t,n){let r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let i=0;ie.__isSuspense,id=0;function ih(e,t){let n=e.props&&e.props[t];O(n)&&n()}function ip(e,t,n,r,i,l,s,o,a,c,u=!1){let d;let{p:h,m:p,um:f,n:m,o:{parentNode:g,remove:y}}=c,b=function(e){let t=e.props&&e.props.suspensible;return null!=t&&!1!==t}(e);b&&t&&t.pendingBranch&&(d=t.pendingId,t.deps++);let _=e.props?et(e.props.timeout):void 0,S=l,x={vnode:e,parent:t,parentComponent:n,namespace:s,container:r,hiddenContainer:i,deps:0,pendingId:id++,timeout:"number"==typeof _?_:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){let{vnode:r,activeBranch:i,pendingBranch:s,pendingId:o,effects:a,parentComponent:c,container:u}=x,h=!1;x.isHydrating?x.isHydrating=!1:e||((h=i&&s.transition&&"out-in"===s.transition.mode)&&(i.transition.afterLeave=()=>{o===x.pendingId&&(p(s,u,l===S?m(i):l,0),no(a))}),i&&(g(i.el)===u&&(l=m(i)),f(i,c,x,!0)),h||p(s,u,l,0)),iy(x,s),x.pendingBranch=null,x.isInFallback=!1;let y=x.parent,_=!1;for(;y;){if(y.pendingBranch){y.effects.push(...a),_=!0;break}y=y.parent}_||h||no(a),x.effects=[],b&&t&&t.pendingBranch&&d===t.pendingId&&(t.deps--,0!==t.deps||n||t.resolve()),ih(r,"onResolve")},fallback(e){if(!x.pendingBranch)return;let{vnode:t,activeBranch:n,parentComponent:r,container:i,namespace:l}=x;ih(t,"onFallback");let s=m(n),c=()=>{x.isInFallback&&(h(null,e,i,s,r,null,l,o,a),iy(x,e))},u=e.transition&&"out-in"===e.transition.mode;u&&(n.transition.afterLeave=c),x.isInFallback=!0,f(n,r,null,!0),u||c()},move(e,t,n){x.activeBranch&&p(x.activeBranch,e,t,n),x.container=e},next:()=>x.activeBranch&&m(x.activeBranch),registerDep(e,t,n){let r=!!x.pendingBranch;r&&x.deps++;let i=e.vnode.el;e.asyncDep.catch(t=>{t3(t,e,0)}).then(l=>{if(e.isUnmounted||x.isUnmounted||x.pendingId!==e.suspenseId)return;e.asyncResolved=!0;let{vnode:o}=e;iZ(e,l,!1),i&&(o.el=i);let a=!i&&e.subTree.el;t(e,o,g(i||e.subTree.el),i?null:m(e.subTree),x,s,n),a&&y(a),ic(e,o.el),r&&0==--x.deps&&x.resolve()})},unmount(e,t){x.isUnmounted=!0,x.activeBranch&&f(x.activeBranch,n,e,t),x.pendingBranch&&f(x.pendingBranch,n,e,t)}};return x}function im(e){let t;if(O(e)){let n=iw&&e._c;n&&(e._d=!1,ik()),e=e(),n&&(e._d=!0,t=iC,iT())}return N(e)&&(e=function(e,t=!0){let n;for(let t=0;tt!==e)),e}function ig(e,t){t&&t.pendingBranch?N(e)?t.effects.push(...e):t.effects.push(e):no(e)}function iy(e,t){e.activeBranch=t;let{vnode:n,parentComponent:r}=e,i=t.el;for(;!i&&t.component;)i=(t=t.component.subTree).el;n.el=i,r&&r.subTree===n&&(r.vnode.el=i,ic(r,i))}let iv=Symbol.for("v-fgt"),ib=Symbol.for("v-txt"),i_=Symbol.for("v-cmt"),iS=Symbol.for("v-stc"),ix=[],iC=null;function ik(e=!1){ix.push(iC=e?null:[])}function iT(){ix.pop(),iC=ix[ix.length-1]||null}let iw=1;function iN(e){iw+=e,e<0&&iC&&(iC.hasOnce=!0)}function iA(e){return e.dynamicChildren=iw>0?iC||y:null,iT(),iw>0&&iC&&iC.push(e),e}function iE(e,t,n,r,i){return iA(iL(e,t,n,r,i,!0))}function iI(e){return!!e&&!0===e.__v_isVNode}function iR(e,t){return e.type===t.type&&e.key===t.key}let iO=({key:e})=>null!=e?e:null,iP=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?P(e)||tF(e)||O(e)?{i:nd,r:e,k:t,f:!!n}:e:null);function iM(e,t=null,n=null,r=0,i=null,l=e===iv?0:1,s=!1,o=!1){let a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&iO(t),ref:t&&iP(t),scopeId:nh,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:l,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:nd};return o?(iU(a,n),128&l&&e.normalize(a)):n&&(a.shapeFlag|=P(n)?8:16),iw>0&&!s&&iC&&(a.patchFlag>0||6&l)&&32!==a.patchFlag&&iC.push(a),a}let iL=function(e,t=null,n=null,r=0,i=null,l=!1){var s;if(e&&e!==rd||(e=i_),iI(e)){let r=iD(e,t,!0);return n&&iU(r,n),iw>0&&!l&&iC&&(6&r.shapeFlag?iC[iC.indexOf(e)]=r:iC.push(r)),r.patchFlag=-2,r}if(O(s=e)&&"__vccOpts"in s&&(e=e.__vccOpts),t){let{class:e,style:n}=t=i$(t);e&&!P(e)&&(t.class=ec(e)),L(n)&&(tP(n)&&!N(n)&&(n=C({},n)),t.style=ei(n))}let o=P(e)?1:iu(e)?128:ny(e)?64:L(e)?4:O(e)?2:0;return iM(e,t,n,r,i,o,l,!0)};function i$(e){return e?tP(e)||rF(e)?C({},e):e:null}function iD(e,t,n=!1,r=!1){let{props:i,ref:l,patchFlag:s,children:o,transition:a}=e,c=t?ij(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&iO(c),ref:t&&t.ref?n&&l?N(l)?l.concat(iP(t)):[l,iP(t)]:iP(t):l,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:o,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==iv?-1===s?16:16|s:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&iD(e.ssContent),ssFallback:e.ssFallback&&iD(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&r&&nF(u,a.clone(u)),u}function iF(e=" ",t=0){return iL(ib,null,e,t)}function iV(e){return null==e||"boolean"==typeof e?iL(i_):N(e)?iL(iv,null,e.slice()):"object"==typeof e?iB(e):iL(ib,null,String(e))}function iB(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:iD(e)}function iU(e,t){let n=0,{shapeFlag:r}=e;if(null==t)t=null;else if(N(t))n=16;else if("object"==typeof t){if(65&r){let n=t.default;n&&(n._c&&(n._d=!1),iU(e,n()),n._c&&(n._d=!0));return}{n=32;let r=t._;r||rF(t)?3===r&&nd&&(1===nd.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=nd}}else O(t)?(t={default:t,_ctx:nd},n=32):(t=String(t),64&r?(n=16,t=[iF(t)]):n=8);e.children=t,e.shapeFlag|=n}function ij(...e){let t={};for(let n=0;niK||nd;o=e=>{iK=e},a=e=>{iQ=e};let iJ=e=>{let t=iK;return o(e),e.scope.on(),()=>{e.scope.off(),o(t)}},iG=()=>{iK&&iK.scope.off(),o(null)};function iX(e){return 4&e.vnode.shapeFlag}let iQ=!1;function iZ(e,t,n){O(t)?e.render=t:L(t)&&(e.setupState=tW(t)),i0(e,n)}function iY(e){c=e,u=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,rv))}}function i0(e,t,n){let r=e.type;if(!e.render){if(!t&&c&&!r.render){let t=r.template||rC(e).template;if(t){let{isCustomElement:n,compilerOptions:i}=e.appContext.config,{delimiters:l,compilerOptions:s}=r,o=C(C({isCustomElement:n,delimiters:l},i),s);r.render=c(t,o)}}e.render=r.render||b,u&&u(e)}{let t=iJ(e);eM();try{!function(e){let t=rC(e),n=e.proxy,r=e.ctx;rS=!1,t.beforeCreate&&rx(t.beforeCreate,e,"bc");let{data:i,computed:l,methods:s,watch:o,provide:a,inject:c,created:u,beforeMount:d,mounted:h,beforeUpdate:p,updated:f,activated:m,deactivated:g,beforeDestroy:y,beforeUnmount:_,destroyed:S,unmounted:x,render:C,renderTracked:k,renderTriggered:T,errorCaptured:w,serverPrefetch:A,expose:E,inheritAttrs:I,components:R,directives:M,filters:$}=t;if(c&&function(e,t,n=b){for(let n in N(e)&&(e=rN(e)),e){let r;let i=e[n];tF(r=L(i)?"default"in i?rL(i.from||n,i.default,!0):rL(i.from||n):rL(i))?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:e=>r.value=e}):t[n]=r}}(c,r,null),s)for(let e in s){let t=s[e];O(t)&&(r[e]=t.bind(n))}if(i){let t=i.call(n,n);L(t)&&(e.data=tw(t))}if(rS=!0,l)for(let e in l){let t=l[e],i=O(t)?t.bind(n,n):O(t.get)?t.get.bind(n,n):b,s=i4({get:i,set:!O(t)&&O(t.set)?t.set.bind(n):b});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>s.value,set:e=>s.value=e})}if(o)for(let e in o)!function e(t,n,r,i){let l=i.includes(".")?ie(r,i):()=>r[i];if(P(t)){let e=n[t];O(e)&&r9(l,e,void 0)}else if(O(t)){var s;s=t.bind(r),r9(l,s,void 0)}else if(L(t)){if(N(t))t.forEach(t=>e(t,n,r,i));else{let e=O(t.handler)?t.handler.bind(r):n[t.handler];O(e)&&r9(l,e,t)}}}(o[e],r,n,e);if(a){let e=O(a)?a.call(n):a;Reflect.ownKeys(e).forEach(t=>{rM(t,e[t])})}function D(e,t){N(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(u&&rx(u,e,"c"),D(re,d),D(rt,h),D(rn,p),D(rr,f),D(n6,m),D(n3,g),D(rc,w),D(ra,k),D(ro,T),D(ri,_),D(rl,x),D(rs,A),N(E)){if(E.length){let t=e.exposed||(e.exposed={});E.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})})}else e.exposed||(e.exposed={})}C&&e.render===b&&(e.render=C),null!=I&&(e.inheritAttrs=I),R&&(e.components=R),M&&(e.directives=M)}(e)}finally{eL(),t()}}}let i1={get:(e,t)=>(eq(e,"get",""),e[t])};function i2(e){return{attrs:new Proxy(e.attrs,i1),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function i6(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(tW(tL(e.exposed)),{get:(t,n)=>n in t?t[n]:n in rm?rm[n](e):void 0,has:(e,t)=>t in e||t in rm})):e.proxy}function i3(e,t=!0){return O(e)?e.displayName||e.name:e.name||t&&e.__name}let i4=(e,t)=>(function(e,t,n=!1){let r,i;return O(e)?r=e:(r=e.get,i=e.set),new tQ(r,i,n)})(e,0,iQ);function i8(e,t,n){let r=arguments.length;return 2!==r?(r>3?n=Array.prototype.slice.call(arguments,2):3===r&&iI(n)&&(n=[n]),iL(e,t,n)):!L(t)||N(t)?iL(e,null,t):iI(t)?iL(e,null,[t]):iL(e,t)}function i5(e,t){let n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&iC&&iC.push(e),!0}let i9="3.5.8",i7="undefined"!=typeof window&&window.trustedTypes;if(i7)try{f=/* @__PURE__ */i7.createPolicy("vue",{createHTML:e=>e})}catch(e){}let le=f?e=>f.createHTML(e):e=>e,lt="undefined"!=typeof document?document:null,ln=lt&&/* @__PURE__ */lt.createElement("template"),lr="transition",li="animation",ll=Symbol("_vtc"),ls={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},lo=/* @__PURE__ */C({},nI,ls),la=((t=(e,{slots:t})=>i8(nP,ld(e),t)).displayName="Transition",t.props=lo,t),lc=(e,t=[])=>{N(e)?e.forEach(e=>e(...t)):e&&e(...t)},lu=e=>!!e&&(N(e)?e.some(e=>e.length>1):e.length>1);function ld(e){let t={};for(let n in e)n in ls||(t[n]=e[n]);if(!1===e.css)return t;let{name:n="v",type:r,duration:i,enterFromClass:l=`${n}-enter-from`,enterActiveClass:s=`${n}-enter-active`,enterToClass:o=`${n}-enter-to`,appearFromClass:a=l,appearActiveClass:c=s,appearToClass:u=o,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,f=function(e){if(null==e)return null;if(L(e))return[et(e.enter),et(e.leave)];{let t=et(e);return[t,t]}}(i),m=f&&f[0],g=f&&f[1],{onBeforeEnter:y,onEnter:b,onEnterCancelled:_,onLeave:S,onLeaveCancelled:x,onBeforeAppear:k=y,onAppear:T=b,onAppearCancelled:w=_}=t,N=(e,t,n)=>{lp(e,t?u:o),lp(e,t?c:s),n&&n()},A=(e,t)=>{e._isLeaving=!1,lp(e,d),lp(e,p),lp(e,h),t&&t()},E=e=>(t,n)=>{let i=e?T:b,s=()=>N(t,e,n);lc(i,[t,s]),lf(()=>{lp(t,e?a:l),lh(t,e?u:o),lu(i)||lg(t,r,m,s)})};return C(t,{onBeforeEnter(e){lc(y,[e]),lh(e,l),lh(e,s)},onBeforeAppear(e){lc(k,[e]),lh(e,a),lh(e,c)},onEnter:E(!1),onAppear:E(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>A(e,t);lh(e,d),lh(e,h),l_(),lf(()=>{e._isLeaving&&(lp(e,d),lh(e,p),lu(S)||lg(e,r,g,n))}),lc(S,[e,n])},onEnterCancelled(e){N(e,!1),lc(_,[e])},onAppearCancelled(e){N(e,!0),lc(w,[e])},onLeaveCancelled(e){A(e),lc(x,[e])}})}function lh(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[ll]||(e[ll]=/* @__PURE__ */new Set)).add(t)}function lp(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[ll];n&&(n.delete(t),n.size||(e[ll]=void 0))}function lf(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let lm=0;function lg(e,t,n,r){let i=e._endId=++lm,l=()=>{i===e._endId&&r()};if(null!=n)return setTimeout(l,n);let{type:s,timeout:o,propCount:a}=ly(e,t);if(!s)return r();let c=s+"end",u=0,d=()=>{e.removeEventListener(c,h),l()},h=t=>{t.target===e&&++u>=a&&d()};setTimeout(()=>{u(n[e]||"").split(", "),i=r(`${lr}Delay`),l=r(`${lr}Duration`),s=lv(i,l),o=r(`${li}Delay`),a=r(`${li}Duration`),c=lv(o,a),u=null,d=0,h=0;t===lr?s>0&&(u=lr,d=s,h=l.length):t===li?c>0&&(u=li,d=c,h=a.length):h=(u=(d=Math.max(s,c))>0?s>c?lr:li:null)?u===lr?l.length:a.length:0;let p=u===lr&&/\b(transform|all)(,|$)/.test(r(`${lr}Property`).toString());return{type:u,timeout:d,propCount:h,hasTransform:p}}function lv(e,t){for(;e.lengthlb(t)+lb(e[n])))}function lb(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}function l_(){return document.body.offsetHeight}let lS=Symbol("_vod"),lx=Symbol("_vsh");function lC(e,t){e.style.display=t?e[lS]:"none",e[lx]=!t}let lk=Symbol("");function lT(e,t){if(1===e.nodeType){let n=e.style,r="";for(let e in t)n.setProperty(`--${e}`,t[e]),r+=`--${e}: ${t[e]};`;n[lk]=r}}let lw=/(^|;)\s*display\s*:/,lN=/\s*!important$/;function lA(e,t,n){if(N(n))n.forEach(n=>lA(e,t,n));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{let r=function(e,t){let n=lI[t];if(n)return n;let r=K(t);if("filter"!==r&&r in e)return lI[t]=r;r=G(r);for(let n=0;nl$||(lD.then(()=>l$=0),l$=Date.now()),lV=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&123>e.charCodeAt(2),lB={};/*! #__NO_SIDE_EFFECTS__ */function lU(e,t,n){let r=nB(e,t);B(r)&&C(r,t);class i extends lH{constructor(e){super(r,e,n)}}return i.def=r,i}let lj="undefined"!=typeof HTMLElement?HTMLElement:class{};class lH extends lj{constructor(e,t={},n=sc){super(),this._def=e,this._props=t,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._numberProps=null,this._styleChildren=/* @__PURE__ */new WeakSet,this._ob=null,this.shadowRoot&&n!==sc?this._root=this.shadowRoot:!1!==e.shadowRoot?(this.attachShadow({mode:"open"}),this._root=this.shadowRoot):this._root=this,this._def.__asyncLoader||this._resolveProps(this._def)}connectedCallback(){if(!this.isConnected)return;this.shadowRoot||this._parseSlots(),this._connected=!0;let e=this;for(;e=e&&(e.parentNode||e.host);)if(e instanceof lH){this._parent=e;break}this._instance||(this._resolved?(this._setParent(),this._update()):e&&e._pendingResolve?this._pendingResolve=e._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._instance.provides=e._instance.provides)}disconnectedCallback(){this._connected=!1,ni(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null)})}_resolveDef(){if(this._pendingResolve)return;for(let e=0;e{for(let t of e)this._setAttr(t.attributeName)}),this._ob.observe(this,{attributes:!0});let e=(e,t=!1)=>{let n;this._resolved=!0,this._pendingResolve=void 0;let{props:r,styles:i}=e;if(r&&!N(r))for(let e in r){let t=r[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=et(this._props[e])),(n||(n=/* @__PURE__ */Object.create(null)))[K(e)]=!0)}this._numberProps=n,t&&this._resolveProps(e),this.shadowRoot&&this._applyStyles(i),this._mount(e)},t=this._def.__asyncLoader;t?this._pendingResolve=t().then(t=>e(this._def=t,!0)):e(this._def)}_mount(e){this._app=this._createApp(e),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);let t=this._instance&&this._instance.exposed;if(t)for(let e in t)w(this,e)||Object.defineProperty(this,e,{get:()=>tH(t[e])})}_resolveProps(e){let{props:t}=e,n=N(t)?t:Object.keys(t||{});for(let e of Object.keys(this))"_"!==e[0]&&n.includes(e)&&this._setProp(e,this[e]);for(let e of n.map(K))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t,!0,!0)}})}_setAttr(e){if(e.startsWith("data-v-"))return;let t=this.hasAttribute(e),n=t?this.getAttribute(e):lB,r=K(e);t&&this._numberProps&&this._numberProps[r]&&(n=et(n)),this._setProp(r,n,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,r=!1){t!==this._props[e]&&(t===lB?delete this._props[e]:(this._props[e]=t,"key"===e&&this._app&&(this._app._ceVNode.key=t)),r&&this._instance&&this._update(),n&&(!0===t?this.setAttribute(J(e),""):"string"==typeof t||"number"==typeof t?this.setAttribute(J(e),t+""):t||this.removeAttribute(J(e))))}_update(){sa(this._createVNode(),this._root)}_createVNode(){let e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));let t=iL(this._def,C(e,this._props));return this._instance||(t.ce=e=>{this._instance=e,e.ce=this,e.isCE=!0;let t=(e,t)=>{this.dispatchEvent(new CustomEvent(e,B(t[0])?C({detail:t},t[0]):{detail:t}))};e.emit=(e,...n)=>{t(e,n),J(e)!==e&&t(J(e),n)},this._setParent()}),t}_applyStyles(e,t){if(!e)return;if(t){if(t===this._def||this._styleChildren.has(t))return;this._styleChildren.add(t)}let n=this._nonce;for(let t=e.length-1;t>=0;t--){let r=document.createElement("style");n&&r.setAttribute("nonce",n),r.textContent=e[t],this.shadowRoot.prepend(r)}}_parseSlots(){let e;let t=this._slots={};for(;e=this.firstChild;){let n=1===e.nodeType&&e.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(e),this.removeChild(e)}}_renderSlots(){let e=(this._teleportTarget||this).querySelectorAll("slot"),t=this._instance.type.__scopeId;for(let n=0;n{if(!n.length)return;let t=e.moveClass||`${e.name||"v"}-move`;if(!function(e,t,n){let r=e.cloneNode(),i=e[ll];i&&i.forEach(e=>{e.split(/\s+/).forEach(e=>e&&r.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&r.classList.add(e)),r.style.display="none";let l=1===t.nodeType?t:t.parentNode;l.appendChild(r);let{hasTransform:s}=ly(r);return l.removeChild(r),s}(n[0].el,i.vnode.el,t))return;n.forEach(lX),n.forEach(lQ);let r=n.filter(lZ);l_(),r.forEach(e=>{let n=e.el,r=n.style;lh(n,t),r.transform=r.webkitTransform=r.transitionDuration="";let i=n[lz]=e=>{(!e||e.target===n)&&(!e||/transform$/.test(e.propertyName))&&(n.removeEventListener("transitionend",i),n[lz]=null,lp(n,t))};n.addEventListener("transitionend",i)})}),()=>{let s=tM(e),o=ld(s),a=s.tag||iv;if(n=[],r)for(let e=0;e{let t=e.props["onUpdate:modelValue"]||!1;return N(t)?e=>Z(t,e):t};function l0(e){e.target.composing=!0}function l1(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}let l2=Symbol("_assign"),l6={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[l2]=lY(i);let l=r||i.props&&"number"===i.props.type;lP(e,t?"change":"input",t=>{if(t.target.composing)return;let r=e.value;n&&(r=r.trim()),l&&(r=ee(r)),e[l2](r)}),n&&lP(e,"change",()=>{e.value=e.value.trim()}),t||(lP(e,"compositionstart",l0),lP(e,"compositionend",l1),lP(e,"change",l1))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:l}},s){if(e[l2]=lY(s),e.composing)return;let o=(l||"number"===e.type)&&!/^0\d/.test(e.value)?ee(e.value):e.value,a=null==t?"":t;o===a||document.activeElement===e&&"range"!==e.type&&(r&&t===n||i&&e.value.trim()===a)||(e.value=a)}},l3={deep:!0,created(e,t,n){e[l2]=lY(n),lP(e,"change",()=>{let t=e._modelValue,n=l7(e),r=e.checked,i=e[l2];if(N(t)){let e=eg(t,n),l=-1!==e;if(r&&!l)i(t.concat(n));else if(!r&&l){let n=[...t];n.splice(e,1),i(n)}}else if(E(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(se(e,r))})},mounted:l4,beforeUpdate(e,t,n){e[l2]=lY(n),l4(e,t,n)}};function l4(e,{value:t},n){let r;e._modelValue=t,r=N(t)?eg(t,n.props.value)>-1:E(t)?t.has(n.props.value):em(t,se(e,!0)),e.checked!==r&&(e.checked=r)}let l8={created(e,{value:t},n){e.checked=em(t,n.props.value),e[l2]=lY(n),lP(e,"change",()=>{e[l2](l7(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e[l2]=lY(r),t!==n&&(e.checked=em(t,r.props.value))}},l5={deep:!0,created(e,{value:t,modifiers:{number:n}},r){let i=E(t);lP(e,"change",()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?ee(l7(e)):l7(e));e[l2](e.multiple?i?new Set(t):t:t[0]),e._assigning=!0,ni(()=>{e._assigning=!1})}),e[l2]=lY(r)},mounted(e,{value:t}){l9(e,t)},beforeUpdate(e,t,n){e[l2]=lY(n)},updated(e,{value:t}){e._assigning||l9(e,t)}};function l9(e,t,n){let r=e.multiple,i=N(t);if(!r||i||E(t)){for(let n=0,l=e.options.length;nString(e)===String(s)):l.selected=eg(t,s)>-1}else l.selected=t.has(s)}else if(em(l7(l),t)){e.selectedIndex!==n&&(e.selectedIndex=n);return}}r||-1===e.selectedIndex||(e.selectedIndex=-1)}}function l7(e){return"_value"in e?e._value:e.value}function se(e,t){let n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}function st(e,t,n,r,i){let l=function(e,t){switch(e){case"SELECT":return l5;case"TEXTAREA":return l6;default:switch(t){case"checkbox":return l3;case"radio":return l8;default:return l6}}}(e.tagName,n.props&&n.props.type)[i];l&&l(e,t,n,r)}let sn=["ctrl","shift","alt","meta"],sr={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>sn.some(n=>e[`${n}Key`]&&!t.includes(n))},si={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},sl=/* @__PURE__ */C({patchProp:(e,t,n,r,i,l)=>{let s="svg"===i;"class"===t?function(e,t,n){let r=e[ll];r&&(t=(t?[t,...r]:[...r]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,r,s):"style"===t?function(e,t,n){let r=e.style,i=P(n),l=!1;if(n&&!i){if(t){if(P(t))for(let e of t.split(";")){let t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&lA(r,t,"")}else for(let e in t)null==n[e]&&lA(r,e,"")}for(let e in n)"display"===e&&(l=!0),lA(r,e,n[e])}else if(i){if(t!==n){let e=r[lk];e&&(n+=";"+e),r.cssText=n,l=lw.test(n)}}else t&&e.removeAttribute("style");lS in e&&(e[lS]=l?r.display:"",e[lx]&&(r.display="none"))}(e,n,r):S(t)?x(t)||function(e,t,n,r,i=null){let l=e[lM]||(e[lM]={}),s=l[t];if(r&&s)s.value=r;else{let[n,o]=function(e){let t;if(lL.test(e)){let n;for(t={};n=e.match(lL);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[":"===e[2]?e.slice(3):J(e.slice(2)),t]}(t);r?lP(e,n,l[t]=function(e,t){let n=e=>{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();t6(function(e,t){if(!N(t))return t;{let n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(e=>t=>!t._stopped&&e&&e(t))}}(e,n.value),t,5,[e])};return n.value=e,n.attached=lF(),n}(r,i),o):s&&(!function(e,t,n,r){e.removeEventListener(t,n,r)}(e,n,s,o),l[t]=void 0)}}(e,t,0,r,l):("."===t[0]?(t=t.slice(1),0):"^"===t[0]?(t=t.slice(1),1):!function(e,t,n,r){if(r)return!!("innerHTML"===t||"textContent"===t||t in e&&lV(t)&&O(n));if("spellcheck"===t||"draggable"===t||"translate"===t||"form"===t||"list"===t&&"INPUT"===e.tagName||"type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){let t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}return!(lV(t)&&P(n))&&!!(t in e||e._isVueCE&&(/[A-Z]/.test(t)||!P(n)))}(e,t,r,s))?("true-value"===t?e._trueValue=r:"false-value"===t&&(e._falseValue=r),lO(e,t,r,s)):(!function(e,t,n,r){if("innerHTML"===t||"textContent"===t){null!=n&&(e[t]="innerHTML"===t?le(n):n);return}let i=e.tagName;if("value"===t&&"PROGRESS"!==i&&!i.includes("-")){let r="OPTION"===i?e.getAttribute("value")||"":e.value,l=null==n?"checkbox"===e.type?"on":"":String(n);r===l&&"_value"in e||(e.value=l),null==n&&e.removeAttribute(t),e._value=n;return}let l=!1;if(""===n||null==n){let r=typeof e[t];if("boolean"===r){var s;n=!!(s=n)||""===s}else null==n&&"string"===r?(n="",l=!0):"number"===r&&(n=0,l=!0)}try{e[t]=n}catch(e){}l&&e.removeAttribute(t)}(e,t,r),e.tagName.includes("-")||"value"!==t&&"checked"!==t&&"selected"!==t||lO(e,t,r,s,l,"value"!==t))}},{insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i="svg"===t?lt.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?lt.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?lt.createElement(e,{is:n}):lt.createElement(e);return"select"===e&&r&&null!=r.multiple&&i.setAttribute("multiple",r.multiple),i},createText:e=>lt.createTextNode(e),createComment:e=>lt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>lt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,i,l){let s=n?n.previousSibling:t.lastChild;if(i&&(i===l||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),i!==l&&(i=i.nextSibling););else{ln.innerHTML=le("svg"===r?`${e}`:"mathml"===r?`${e}`:e);let i=ln.content;if("svg"===r||"mathml"===r){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[s?s.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}}),ss=!1;function so(){return d=ss?d:rZ(sl),ss=!0,d}let sa=(...e)=>{(d||(d=rY(sl))).render(...e)},sc=(...e)=>{let t=(d||(d=rY(sl))).createApp(...e),{mount:n}=t;return t.mount=e=>{let r=sh(e);if(!r)return;let i=t._component;O(i)||i.render||i.template||(i.template=r.innerHTML),1===r.nodeType&&(r.textContent="");let l=n(r,!1,sd(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),l},t},su=(...e)=>{let t=so().createApp(...e),{mount:n}=t;return t.mount=e=>{let t=sh(e);if(t)return n(t,!0,sd(t))},t};function sd(e){return e instanceof SVGElement?"svg":"function"==typeof MathMLElement&&e instanceof MathMLElement?"mathml":void 0}function sh(e){return P(e)?document.querySelector(e):e}let sp=Symbol(""),sf=Symbol(""),sm=Symbol(""),sg=Symbol(""),sy=Symbol(""),sv=Symbol(""),sb=Symbol(""),s_=Symbol(""),sS=Symbol(""),sx=Symbol(""),sC=Symbol(""),sk=Symbol(""),sT=Symbol(""),sw=Symbol(""),sN=Symbol(""),sA=Symbol(""),sE=Symbol(""),sI=Symbol(""),sR=Symbol(""),sO=Symbol(""),sP=Symbol(""),sM=Symbol(""),sL=Symbol(""),s$=Symbol(""),sD=Symbol(""),sF=Symbol(""),sV=Symbol(""),sB=Symbol(""),sU=Symbol(""),sj=Symbol(""),sH=Symbol(""),sq=Symbol(""),sW=Symbol(""),sK=Symbol(""),sz=Symbol(""),sJ=Symbol(""),sG=Symbol(""),sX=Symbol(""),sQ=Symbol(""),sZ={[sp]:"Fragment",[sf]:"Teleport",[sm]:"Suspense",[sg]:"KeepAlive",[sy]:"BaseTransition",[sv]:"openBlock",[sb]:"createBlock",[s_]:"createElementBlock",[sS]:"createVNode",[sx]:"createElementVNode",[sC]:"createCommentVNode",[sk]:"createTextVNode",[sT]:"createStaticVNode",[sw]:"resolveComponent",[sN]:"resolveDynamicComponent",[sA]:"resolveDirective",[sE]:"resolveFilter",[sI]:"withDirectives",[sR]:"renderList",[sO]:"renderSlot",[sP]:"createSlots",[sM]:"toDisplayString",[sL]:"mergeProps",[s$]:"normalizeClass",[sD]:"normalizeStyle",[sF]:"normalizeProps",[sV]:"guardReactiveProps",[sB]:"toHandlers",[sU]:"camelize",[sj]:"capitalize",[sH]:"toHandlerKey",[sq]:"setBlockTracking",[sW]:"pushScopeId",[sK]:"popScopeId",[sz]:"withCtx",[sJ]:"unref",[sG]:"isRef",[sX]:"withMemo",[sQ]:"isMemoSame"},sY={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function s0(e,t,n,r,i,l,s,o=!1,a=!1,c=!1,u=sY){return e&&(o?(e.helper(sv),e.helper(e.inSSR||c?sb:s_)):e.helper(e.inSSR||c?sS:sx),s&&e.helper(sI)),{type:13,tag:t,props:n,children:r,patchFlag:i,dynamicProps:l,directives:s,isBlock:o,disableTracking:a,isComponent:c,loc:u}}function s1(e,t=sY){return{type:17,loc:t,elements:e}}function s2(e,t=sY){return{type:15,loc:t,properties:e}}function s6(e,t){return{type:16,loc:sY,key:P(e)?s3(e,!0):e,value:t}}function s3(e,t=!1,n=sY,r=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:r}}function s4(e,t=sY){return{type:8,loc:t,children:e}}function s8(e,t=[],n=sY){return{type:14,loc:n,callee:e,arguments:t}}function s5(e,t,n=!1,r=!1,i=sY){return{type:18,params:e,returns:t,newline:n,isSlot:r,loc:i}}function s9(e,t,n,r=!0){return{type:19,test:e,consequent:t,alternate:n,newline:r,loc:sY}}function s7(e,{helper:t,removeHelper:n,inSSR:r}){if(!e.isBlock){var i,l;e.isBlock=!0,n((i=e.isComponent,r||i?sS:sx)),t(sv),t((l=e.isComponent,r||l?sb:s_))}}let oe=new Uint8Array([123,123]),ot=new Uint8Array([125,125]);function on(e){return e>=97&&e<=122||e>=65&&e<=90}function or(e){return 32===e||10===e||9===e||12===e||13===e}function oi(e){return 47===e||62===e||or(e)}function ol(e){let t=new Uint8Array(e.length);for(let n=0;n4===e.type&&e.isStatic;function od(e){switch(e){case"Teleport":case"teleport":return sf;case"Suspense":case"suspense":return sm;case"KeepAlive":case"keep-alive":return sg;case"BaseTransition":case"base-transition":return sy}}let oh=/^\d|[^\$\w\xA0-\uFFFF]/,op=e=>!oh.test(e),of=/[A-Za-z_$\xA0-\uFFFF]/,om=/[\.\?\w$\xA0-\uFFFF]/,og=/\s+[.[]\s*|\s*[.[]\s+/g,oy=e=>4===e.type?e.content:e.loc.source,ov=e=>{let t=oy(e).trim().replace(og,e=>e.trim()),n=0,r=[],i=0,l=0,s=null;for(let e=0;e|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/,o_=e=>ob.test(oy(e));function oS(e,t,n=!1){for(let r=0;r4===e.key.type&&e.key.content===r)}return n}function oR(e,t){return`_${t}_${e.replace(/[^\w]/g,(t,n)=>"-"===t?"_":e.charCodeAt(n).toString())}`}let oO=/([\s\S]*?)\s+(?:in|of)\s+(\S[\s\S]*)/,oP={parseMode:"base",ns:0,delimiters:["{{","}}"],getNamespace:()=>0,isVoidTag:_,isPreTag:_,isIgnoreNewlineTag:_,isCustomElement:_,onError:oo,onWarn:oa,comments:!1,prefixIdentifiers:!1},oM=oP,oL=null,o$="",oD=null,oF=null,oV="",oB=-1,oU=-1,oj=0,oH=!1,oq=null,oW=[],oK=new class{constructor(e,t){this.stack=e,this.cbs=t,this.state=1,this.buffer="",this.sectionStart=0,this.index=0,this.entityStart=0,this.baseState=1,this.inRCDATA=!1,this.inXML=!1,this.inVPre=!1,this.newlines=[],this.mode=0,this.delimiterOpen=oe,this.delimiterClose=ot,this.delimiterIndex=-1,this.currentSequence=void 0,this.sequenceIndex=0}get inSFCRoot(){return 2===this.mode&&0===this.stack.length}reset(){this.state=1,this.mode=0,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=1,this.inRCDATA=!1,this.currentSequence=void 0,this.newlines.length=0,this.delimiterOpen=oe,this.delimiterClose=ot}getPos(e){let t=1,n=e+1;for(let r=this.newlines.length-1;r>=0;r--){let i=this.newlines[r];if(e>i){t=r+2,n=e-i;break}}return{column:n,line:t,offset:e}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(e){60===e?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):this.inVPre||e!==this.delimiterOpen[0]||(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(e))}stateInterpolationOpen(e){if(e===this.delimiterOpen[this.delimiterIndex]){if(this.delimiterIndex===this.delimiterOpen.length-1){let e=this.index+1-this.delimiterOpen.length;e>this.sectionStart&&this.cbs.ontext(this.sectionStart,e),this.state=3,this.sectionStart=e}else this.delimiterIndex++}else this.inRCDATA?(this.state=32,this.stateInRCDATA(e)):(this.state=1,this.stateText(e))}stateInterpolation(e){e===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(e))}stateInterpolationClose(e){e===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(e))}stateSpecialStartSequence(e){let t=this.sequenceIndex===this.currentSequence.length;if(t?oi(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t){this.sequenceIndex++;return}}else this.inRCDATA=!1;this.sequenceIndex=0,this.state=6,this.stateInTagName(e)}stateInRCDATA(e){if(this.sequenceIndex===this.currentSequence.length){if(62===e||or(e)){let t=this.index-this.currentSequence.length;if(this.sectionStart=e||(28===this.state?this.currentSequence===os.CdataEnd?this.cbs.oncdata(this.sectionStart,e):this.cbs.oncomment(this.sectionStart,e):6===this.state||11===this.state||18===this.state||17===this.state||12===this.state||13===this.state||14===this.state||15===this.state||16===this.state||20===this.state||19===this.state||21===this.state||9===this.state||this.cbs.ontext(this.sectionStart,e))}emitCodePoint(e,t){}}(oW,{onerr:o9,ontext(e,t){oQ(oG(e,t),e,t)},ontextentity(e,t,n){oQ(e,t,n)},oninterpolation(e,t){if(oH)return oQ(oG(e,t),e,t);let n=e+oK.delimiterOpen.length,r=t-oK.delimiterClose.length;for(;or(o$.charCodeAt(n));)n++;for(;or(o$.charCodeAt(r-1));)r--;let i=oG(n,r);i.includes("&")&&(i=oM.decodeEntities(i,!1)),o3({type:5,content:o5(i,!1,o4(n,r)),loc:o4(e,t)})},onopentagname(e,t){let n=oG(e,t);oD={type:1,tag:n,ns:oM.getNamespace(n,oW[0],oM.ns),tagType:0,props:[],children:[],loc:o4(e-1,t),codegenNode:void 0}},onopentagend(e){oX(e)},onclosetag(e,t){let n=oG(e,t);if(!oM.isVoidTag(n)){let r=!1;for(let e=0;e0&&/* @__PURE__ *//*@__PURE__*/oW[0].loc.start.offset;for(let n=0;n<=e;n++)oZ(oW.shift(),t,n(7===e.type?e.rawName:e.name)===t)},onattribend(e,t){oD&&oF&&(o8(oF.loc,t),0!==e&&(oV.includes("&")&&(oV=oM.decodeEntities(oV,!0)),6===oF.type?("class"===oF.name&&(oV=o6(oV).trim()),oF.value={type:2,content:oV,loc:1===e?o4(oB,oU):o4(oB-1,oU+1)},oK.inSFCRoot&&"template"===oD.tag&&"lang"===oF.name&&oV&&"html"!==oV&&oK.enterRCDATA(ol("{let i=t.start.offset+n,l=i+e.length;return o5(e,!1,o4(i,l),0,r?1:0)},o={source:s(l.trim(),n.indexOf(l,i.length)),value:void 0,key:void 0,index:void 0,finalized:!1},a=i.trim().replace(oJ,"").trim(),c=i.indexOf(a),u=a.match(oz);if(u){let e;a=a.replace(oz,"").trim();let t=u[1].trim();if(t&&(e=n.indexOf(t,c+a.length),o.key=s(t,e,!0)),u[2]){let r=u[2].trim();r&&(o.index=s(r,n.indexOf(r,o.key?e+t.length:c+a.length),!0))}}return a&&(o.value=s(a,c,!0)),o}(oF.exp)))),(7!==oF.type||"pre"!==oF.name)&&oD.props.push(oF)),oV="",oB=oU=-1},oncomment(e,t){oM.comments&&o3({type:3,content:oG(e,t),loc:o4(e-4,t+3)})},onend(){let e=o$.length;for(let t=0;t64&&n<91||od(e)||oM.isBuiltInComponent&&oM.isBuiltInComponent(e)||oM.isNativeTag&&!oM.isNativeTag(e))return!0;for(let e=0;e=0;)n--;return n}let o0=/* @__PURE__ */new Set(["if","else","else-if","for","slot"]),o1=/\r\n/g;function o2(e,t){let n="preserve"!==oM.whitespace,r=!1;for(let t=0;t1)for(let i=0;i{n--};for(;nt===e:t=>e.test(t);return(e,r)=>{if(1===e.type){let{props:i}=e;if(3===e.tagType&&i.some(oT))return;let l=[];for(let s=0;s`${sZ[e]}: _${sZ[e]}`;function aa(e,t,{helper:n,push:r,newline:i,isTS:l}){let s=n("component"===t?sw:sA);for(let n=0;n3;t.push("["),n&&t.indent(),au(e,t,n),n&&t.deindent(),t.push("]")}function au(e,t,n=!1,r=!0){let{push:i,newline:l}=t;for(let s=0;se||"null")}([s,o,a,n,u]),t),r(")"),h&&r(")"),d&&(r(", "),ad(d,t),r(")"))}(e,t);break;case 14:!function(e,t){let{push:n,helper:r,pure:i}=t,l=P(e.callee)?e.callee:r(e.callee);i&&n(as),n(l+"(",-2,e),au(e.arguments,t),n(")")}(e,t);break;case 15:!function(e,t){let{push:n,indent:r,deindent:i,newline:l}=t,{properties:s}=e;if(!s.length){n("{}",-2,e);return}let o=s.length>1;n(o?"{":"{ "),o&&r();for(let e=0;e "),(a||o)&&(n("{"),r()),s?(a&&n("return "),N(s)?ac(s,t):ad(s,t)):o&&ad(o,t),(a||o)&&(i(),n("}")),c&&n(")")}(e,t);break;case 19:!function(e,t){let{test:n,consequent:r,alternate:i,newline:l}=e,{push:s,indent:o,deindent:a,newline:c}=t;if(4===n.type){let e=!op(n.content);e&&s("("),ah(n,t),e&&s(")")}else s("("),ad(n,t),s(")");l&&o(),t.indentLevel++,l||s(" "),s("? "),ad(r,t),t.indentLevel--,l&&c(),l||s(" "),s(": ");let u=19===i.type;!u&&t.indentLevel++,ad(i,t),!u&&t.indentLevel--,l&&a(!0)}(e,t);break;case 20:!function(e,t){let{push:n,helper:r,indent:i,deindent:l,newline:s}=t,{needPauseTracking:o,needArraySpread:a}=e;a&&n("[...("),n(`_cache[${e.index}] || (`),o&&(i(),n(`${r(sq)}(-1),`),s(),n("(")),n(`_cache[${e.index}] = `),ad(e.value,t),o&&(n(`).cacheIndex = ${e.index},`),s(),n(`${r(sq)}(1),`),s(),n(`_cache[${e.index}]`),l()),n(")"),a&&n(")]")}(e,t);break;case 21:au(e.body,t,!0,!1)}}function ah(e,t){let{content:n,isStatic:r}=e;t.push(r?JSON.stringify(n):n,-3,e)}function ap(e,t){for(let n=0;n(function(e,t,n,r){if("else"!==t.name&&(!t.exp||!t.exp.content.trim())){let r=t.exp?t.exp.loc:e.loc;n.onError(/* @__PURE__ *//*@__PURE__*/oc(28,t.loc)),t.exp=s3("true",!1,r)}if("if"===t.name){let i=am(e,t),l={type:9,loc:e.loc,branches:[i]};if(n.replaceNode(l),r)return r(l,i,!0)}else{let i=n.parent.children,l=i.indexOf(e);for(;l-- >=-1;){let s=i[l];if(s&&3===s.type||s&&2===s.type&&!s.content.trim().length){n.removeNode(s);continue}if(s&&9===s.type){"else-if"===t.name&&void 0===s.branches[s.branches.length-1].condition&&n.onError(/* @__PURE__ *//*@__PURE__*/oc(30,e.loc)),n.removeNode();let i=am(e,t);s.branches.push(i);let l=r&&r(s,i,!1);ai(i,n),l&&l(),n.currentNode=null}else n.onError(/* @__PURE__ *//*@__PURE__*/oc(30,e.loc));break}}})(e,t,n,(e,t,r)=>{let i=n.parent.children,l=i.indexOf(e),s=0;for(;l-- >=0;){let e=i[l];e&&9===e.type&&(s+=e.branches.length)}return()=>{r?e.codegenNode=ag(t,s,n):function(e){for(;;)if(19===e.type){if(19!==e.alternate.type)return e;e=e.alternate}else 20===e.type&&(e=e.value)}(e.codegenNode).alternate=ag(t,s+e.branches.length-1,n)}}));function am(e,t){let n=3===e.tagType;return{type:10,loc:e.loc,condition:"else"===t.name?void 0:t.exp,children:n&&!oS(e,"for")?e.children:[e],userKey:ox(e,"key"),isTemplateIf:n}}function ag(e,t,n){return e.condition?s9(e.condition,ay(e,t,n),s8(n.helper(sC),['""',"true"])):ay(e,t,n)}function ay(e,t,n){let{helper:r}=n,i=s6("key",s3(`${t}`,!1,sY,2)),{children:l}=e,s=l[0];if(1!==l.length||1!==s.type){if(1!==l.length||11!==s.type)return s0(n,r(sp),s2([i]),l,64,void 0,void 0,!0,!1,!1,e.loc);{let e=s.codegenNode;return oE(e,i,n),e}}{let e=s.codegenNode,t=14===e.type&&e.callee===sX?e.arguments[1].returns:e;return 13===t.type&&s7(t,n),oE(t,i,n),e}}let av=(e,t,n)=>{let{modifiers:r,loc:i}=e,l=e.arg,{exp:s}=e;if(s&&4===s.type&&!s.content.trim()&&(s=void 0),!s){if(4!==l.type||!l.isStatic)return n.onError(oc(52,l.loc)),{props:[s6(l,s3("",!0,i))]};ab(e),s=e.exp}return 4!==l.type?(l.children.unshift("("),l.children.push(') || ""')):l.isStatic||(l.content=`${l.content} || ""`),r.some(e=>"camel"===e.content)&&(4===l.type?l.isStatic?l.content=K(l.content):l.content=`${n.helperString(sU)}(${l.content})`:(l.children.unshift(`${n.helperString(sU)}(`),l.children.push(")"))),!n.inSSR&&(r.some(e=>"prop"===e.content)&&a_(l,"."),r.some(e=>"attr"===e.content)&&a_(l,"^")),{props:[s6(l,s)]}},ab=(e,t)=>{let n=e.arg,r=K(n.content);e.exp=s3(r,!1,n.loc)},a_=(e,t)=>{4===e.type?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},aS=al("for",(e,t,n)=>{let{helper:r,removeHelper:i}=n;return function(e,t,n,r){if(!t.exp){n.onError(/* @__PURE__ *//*@__PURE__*/oc(31,t.loc));return}let i=t.forParseResult;if(!i){n.onError(/* @__PURE__ *//*@__PURE__*/oc(32,t.loc));return}ax(i);let{addIdentifiers:l,removeIdentifiers:s,scopes:o}=n,{source:a,value:c,key:u,index:d}=i,h={type:11,loc:t.loc,source:a,valueAlias:c,keyAlias:u,objectIndexAlias:d,parseResult:i,children:ow(e)?e.children:[e]};n.replaceNode(h),o.vFor++;let p=r&&r(h);return()=>{o.vFor--,p&&p()}}(e,t,n,t=>{let l=s8(r(sR),[t.source]),s=ow(e),o=oS(e,"memo"),a=ox(e,"key",!1,!0);a&&7===a.type&&!a.exp&&ab(a);let c=a&&(6===a.type?a.value?s3(a.value.content,!0):void 0:a.exp),u=a&&c?s6("key",c):null,d=4===t.source.type&&t.source.constType>0,h=d?64:a?128:256;return t.codegenNode=s0(n,r(sp),void 0,l,h,void 0,void 0,!0,!d,!1,e.loc),()=>{let a;let{children:h}=t,p=1!==h.length||1!==h[0].type,f=oN(e)?e:s&&1===e.children.length&&oN(e.children[0])?e.children[0]:null;if(f)a=f.codegenNode,s&&u&&oE(a,u,n);else if(p)a=s0(n,r(sp),u?s2([u]):void 0,e.children,64,void 0,void 0,!0,void 0,!1);else{var m,g,y,b,_,S,x,C;a=h[0].codegenNode,s&&u&&oE(a,u,n),!d!==a.isBlock&&(a.isBlock?(i(sv),i((m=n.inSSR,g=a.isComponent,m||g?sb:s_))):i((y=n.inSSR,b=a.isComponent,y||b?sS:sx))),(a.isBlock=!d,a.isBlock)?(r(sv),r((_=n.inSSR,S=a.isComponent,_||S?sb:s_))):r((x=n.inSSR,C=a.isComponent,x||C?sS:sx))}if(o){let e=s5(aC(t.parseResult,[s3("_cached")]));e.body={type:21,body:[s4(["const _memo = (",o.exp,")"]),s4(["if (_cached",...c?[" && _cached.key === ",c]:[],` && ${n.helperString(sQ)}(_cached, _memo)) return _cached`]),s4(["const _item = ",a]),s3("_item.memo = _memo"),s3("return _item")],loc:sY},l.arguments.push(e,s3("_cache"),s3(String(n.cached.length))),n.cached.push(null)}else l.arguments.push(s5(aC(t.parseResult),a,!0))}})});function ax(e,t){e.finalized||(e.finalized=!0)}function aC({value:e,key:t,index:n},r=[]){return function(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map((e,t)=>e||s3("_".repeat(t+1),!1))}([e,t,n,...r])}let ak=s3("undefined",!1),aT=(e,t)=>{if(1===e.type&&(1===e.tagType||3===e.tagType)){let n=oS(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},aw=(e,t,n,r)=>s5(e,n,!1,!0,n.length?n[0].loc:r);function aN(e,t,n){let r=[s6("name",e),s6("fn",t)];return null!=n&&r.push(s6("key",s3(String(n),!0))),s2(r)}let aA=/* @__PURE__ */new WeakMap,aE=(e,t)=>function(){let n,r,i,l,s;if(!(1===(e=t.currentNode).type&&(0===e.tagType||1===e.tagType)))return;let{tag:o,props:a}=e,c=1===e.tagType,u=c?function(e,t,n=!1){let{tag:r}=e,i=aO(r),l=ox(e,"is",!1,!0);if(l){if(i){let e;if(6===l.type?e=l.value&&s3(l.value.content,!0):(e=l.exp)||(e=s3("is",!1,l.arg.loc)),e)return s8(t.helper(sN),[e])}else 6===l.type&&l.value.content.startsWith("vue:")&&(r=l.value.content.slice(4))}let s=od(r)||t.isBuiltInComponent(r);return s?(n||t.helper(s),s):(t.helper(sw),t.components.add(r),oR(r,"component"))}(e,t):`"${o}"`,d=L(u)&&u.callee===sN,h=0,p=d||u===sf||u===sm||!c&&("svg"===o||"foreignObject"===o||"math"===o);if(a.length>0){let r=aI(e,t,void 0,c,d);n=r.props,h=r.patchFlag,l=r.dynamicPropNames;let i=r.directives;s=i&&i.length?s1(i.map(e=>(function(e,t){let n=[],r=aA.get(e);r?n.push(t.helperString(r)):(t.helper(sA),t.directives.add(e.name),n.push(oR(e.name,"directive")));let{loc:i}=e;if(e.exp&&n.push(e.exp),e.arg&&(e.exp||n.push("void 0"),n.push(e.arg)),Object.keys(e.modifiers).length){e.arg||(e.exp||n.push("void 0"),n.push("void 0"));let t=s3("true",!1,i);n.push(s2(e.modifiers.map(e=>s6(e,t)),i))}return s1(n,e.loc)})(e,t))):void 0,r.shouldUseBlock&&(p=!0)}if(e.children.length>0){if(u===sg&&(p=!0,h|=1024),c&&u!==sf&&u!==sg){let{slots:n,hasDynamicSlots:i}=function(e,t,n=aw){t.helper(sz);let{children:r,loc:i}=e,l=[],s=[],o=t.scopes.vSlot>0||t.scopes.vFor>0,a=oS(e,"slot",!0);if(a){let{arg:e,exp:t}=a;e&&!ou(e)&&(o=!0),l.push(s6(e||s3("default",!0),n(t,void 0,r,i)))}let c=!1,u=!1,d=[],h=/* @__PURE__ */new Set,p=0;for(let e=0;es6("default",n(e,void 0,t,i));c?d.length&&d.some(e=>(function e(t){return 2!==t.type&&12!==t.type||(2===t.type?!!t.content.trim():e(t.content))})(e))&&(u?t.onError(oc(39,d[0].loc)):l.push(e(void 0,d))):l.push(e(void 0,r))}let f=o?2:!function e(t){for(let n=0;n0,f=!1,m=0,g=!1,y=!1,b=!1,_=!1,x=!1,C=!1,k=[],T=e=>{u.length&&(d.push(s2(aR(u),a)),u=[]),e&&d.push(e)},w=()=>{t.scopes.vFor>0&&u.push(s6(s3("ref_for",!0),s3("true")))},N=({key:e,value:n})=>{if(ou(e)){let l=e.content,s=S(l);s&&(!r||i)&&"onclick"!==l.toLowerCase()&&"onUpdate:modelValue"!==l&&!j(l)&&(_=!0),s&&j(l)&&(C=!0),s&&14===n.type&&(n=n.arguments[0]),20===n.type||(4===n.type||8===n.type)&&ae(n,t)>0||("ref"===l?g=!0:"class"===l?y=!0:"style"===l?b=!0:"key"===l||k.includes(l)||k.push(l),r&&("class"===l||"style"===l)&&!k.includes(l)&&k.push(l))}else x=!0};for(let i=0;i"prop"===e.content)&&(m|=32);let S=t.directiveTransforms[n];if(S){let{props:n,needRuntime:r}=S(s,e,t);l||n.forEach(N),_&&i&&!ou(i)?T(s2(n,a)):u.push(...n),r&&(h.push(s),M(r)&&aA.set(s,r))}else!H(n)&&(h.push(s),p&&(f=!0))}}if(d.length?(T(),s=d.length>1?s8(t.helper(sL),d,a):d[0]):u.length&&(s=s2(aR(u),a)),x?m|=16:(y&&!r&&(m|=2),b&&!r&&(m|=4),k.length&&(m|=8),_&&(m|=32)),!f&&(0===m||32===m)&&(g||C||h.length>0)&&(m|=512),!t.inSSR&&s)switch(s.type){case 15:let A=-1,E=-1,I=!1;for(let e=0;e{if(oN(e)){let{children:n,loc:r}=e,{slotName:i,slotProps:l}=function(e,t){let n,r='"default"',i=[];for(let t=0;t0){let{props:r,directives:l}=aI(e,t,i,!1,!1);n=r,l.length&&t.onError(oc(36,l[0].loc))}return{slotName:r,slotProps:n}}(e,t),s=[t.prefixIdentifiers?"_ctx.$slots":"$slots",i,"{}","undefined","true"],o=2;l&&(s[2]=l,o=3),n.length&&(s[3]=s5([],n,!1,!1,r),o=4),t.scopeId&&!t.slotted&&(o=5),s.splice(o),e.codegenNode=s8(t.helper(sO),s,r)}},aM=(e,t,n,r)=>{let i;let{loc:l,modifiers:s,arg:o}=e;if(e.exp||s.length,4===o.type){if(o.isStatic){let e=o.content;e.startsWith("vue:")&&(e=`vnode-${e.slice(4)}`),i=s3(0!==t.tagType||e.startsWith("vnode")||!/[A-Z]/.test(e)?X(K(e)):`on:${e}`,!0,o.loc)}else i=s4([`${n.helperString(sH)}(`,o,")"])}else(i=o).children.unshift(`${n.helperString(sH)}(`),i.children.push(")");let a=e.exp;a&&!a.content.trim()&&(a=void 0);let c=n.cacheHandlers&&!a&&!n.inVOnce;if(a){let e=ov(a),t=!(e||o_(a)),n=a.content.includes(";");(t||c&&e)&&(a=s4([`${t?"$event":"(...args)"} => ${n?"{":"("}`,a,n?"}":")"]))}let u={props:[s6(i,a||s3("() => {}",!1,l))]};return r&&(u=r(u)),c&&(u.props[0].value=n.cache(u.props[0].value)),u.props.forEach(e=>e.key.isHandlerKey=!0),u},aL=(e,t)=>{if(0===e.type||1===e.type||11===e.type||10===e.type)return()=>{let n;let r=e.children,i=!1;for(let e=0;e7===e.type&&!t.directiveTransforms[e.name]))))for(let e=0;e{if(1===e.type&&oS(e,"once",!0)&&!a$.has(e)&&!t.inVOnce&&!t.inSSR)return a$.add(e),t.inVOnce=!0,t.helper(sq),()=>{t.inVOnce=!1;let e=t.currentNode;e.codegenNode&&(e.codegenNode=t.cache(e.codegenNode,!0))}},aF=(e,t,n)=>{let r;let{exp:i,arg:l}=e;if(!i)return n.onError(/* @__PURE__ *//*@__PURE__*/oc(41,e.loc)),aV();let s=i.loc.source.trim(),o=4===i.type?i.content:s,a=n.bindingMetadata[s];if("props"===a||"props-aliased"===a)return /* @__PURE__ */i.loc,aV();if(!o.trim()||!ov(i))return n.onError(/* @__PURE__ *//*@__PURE__*/oc(42,i.loc)),aV();let c=l||s3("modelValue",!0),u=l?ou(l)?`onUpdate:${K(l.content)}`:s4(['"onUpdate:" + ',l]):"onUpdate:modelValue",d=n.isTS?"($event: any)":"$event";r=s4([`${d} => ((`,i,") = $event)"]);let h=[s6(c,e.exp),s6(u,r)];if(e.modifiers.length&&1===t.tagType){let t=e.modifiers.map(e=>e.content).map(e=>(op(e)?e:JSON.stringify(e))+": true").join(", "),n=l?ou(l)?`${l.content}Modifiers`:s4([l,' + "Modifiers"']):"modelModifiers";h.push(s6(n,s3(`{ ${t} }`,!1,e.loc,2)))}return aV(h)};function aV(e=[]){return{props:e}}let aB=/* @__PURE__ */new WeakSet,aU=(e,t)=>{if(1===e.type){let n=oS(e,"memo");if(!(!n||aB.has(e)))return aB.add(e),()=>{let r=e.codegenNode||t.currentNode.codegenNode;r&&13===r.type&&(1!==e.tagType&&s7(r,t),e.codegenNode=s8(t.helper(sX),[n.exp,s5(void 0,r),"_cache",String(t.cached.length)]),t.cached.push(null))}}},aj=Symbol(""),aH=Symbol(""),aq=Symbol(""),aW=Symbol(""),aK=Symbol(""),az=Symbol(""),aJ=Symbol(""),aG=Symbol(""),aX=Symbol(""),aQ=Symbol("");!function(e){Object.getOwnPropertySymbols(e).forEach(t=>{sZ[t]=e[t]})}({[aj]:"vModelRadio",[aH]:"vModelCheckbox",[aq]:"vModelText",[aW]:"vModelSelect",[aK]:"vModelDynamic",[az]:"withModifiers",[aJ]:"withKeys",[aG]:"vShow",[aX]:"Transition",[aQ]:"TransitionGroup"});let aZ={parseMode:"html",isVoidTag:ep,isNativeTag:e=>eu(e)||ed(e)||eh(e),isPreTag:e=>"pre"===e,isIgnoreNewlineTag:e=>"pre"===e||"textarea"===e,decodeEntities:function(e,t=!1){return(h||(h=document.createElement("div")),t)?(h.innerHTML=`
`,h.children[0].getAttribute("foo")):(h.innerHTML=e,h.textContent)},isBuiltInComponent:e=>"Transition"===e||"transition"===e?aX:"TransitionGroup"===e||"transition-group"===e?aQ:void 0,getNamespace(e,t,n){let r=t?t.ns:n;if(t&&2===r){if("annotation-xml"===t.tag){if("svg"===e)return 1;t.props.some(e=>6===e.type&&"encoding"===e.name&&null!=e.value&&("text/html"===e.value.content||"application/xhtml+xml"===e.value.content))&&(r=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&"mglyph"!==e&&"malignmark"!==e&&(r=0)}else t&&1===r&&("foreignObject"===t.tag||"desc"===t.tag||"title"===t.tag)&&(r=0);if(0===r){if("svg"===e)return 1;if("math"===e)return 2}return r}},aY=(e,t)=>s3(JSON.stringify(ea(e)),!1,t,3),a0=/* @__PURE__ */m("passive,once,capture"),a1=/* @__PURE__ */m("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),a2=/* @__PURE__ */m("left,right"),a6=/* @__PURE__ */m("onkeyup,onkeydown,onkeypress"),a3=(e,t,n,r)=>{let i=[],l=[],s=[];for(let n=0;nou(e)&&"onclick"===e.content.toLowerCase()?s3(t,!0):4!==e.type?s4(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,a8=(e,t)=>{1===e.type&&0===e.tagType&&("script"===e.tag||"style"===e.tag)&&t.removeNode()},a5=[e=>{1===e.type&&e.props.forEach((t,n)=>{6===t.type&&"style"===t.name&&t.value&&(e.props[n]={type:7,name:"bind",arg:s3("style",!0,t.loc),exp:aY(t.value.content,t.loc),modifiers:[],loc:t.loc})})}],a9={cloak:()=>({props:[]}),html:(e,t,n)=>{let{exp:r,loc:i}=e;return r||n.onError(oc(53,i)),t.children.length&&(n.onError(oc(54,i)),t.children.length=0),{props:[s6(s3("innerHTML",!0,i),r||s3("",!0))]}},text:(e,t,n)=>{let{exp:r,loc:i}=e;return r||n.onError(oc(55,i)),t.children.length&&(n.onError(oc(56,i)),t.children.length=0),{props:[s6(s3("textContent",!0),r?ae(r,n)>0?r:s8(n.helperString(sM),[r],i):s3("",!0))]}},model:(e,t,n)=>{let r=aF(e,t,n);if(!r.props.length||1===t.tagType)return r;e.arg&&n.onError(oc(58,e.arg.loc));let{tag:i}=t,l=n.isCustomElement(i);if("input"===i||"textarea"===i||"select"===i||l){let s=aq,o=!1;if("input"===i||l){let r=ox(t,"type");if(r){if(7===r.type)s=aK;else if(r.value)switch(r.value.content){case"radio":s=aj;break;case"checkbox":s=aH;break;case"file":o=!0,n.onError(oc(59,e.loc))}}else t.props.some(e=>7===e.type&&"bind"===e.name&&(!e.arg||4!==e.arg.type||!e.arg.isStatic))&&(s=aK)}else"select"===i&&(s=aW);o||(r.needRuntime=n.helper(s))}else n.onError(oc(57,e.loc));return r.props=r.props.filter(e=>!(4===e.key.type&&"modelValue"===e.key.content)),r},on:(e,t,n)=>aM(e,t,n,t=>{let{modifiers:r}=e;if(!r.length)return t;let{key:i,value:l}=t.props[0],{keyModifiers:s,nonKeyModifiers:o,eventOptionModifiers:a}=a3(i,r,n,e.loc);if(o.includes("right")&&(i=a4(i,"onContextmenu")),o.includes("middle")&&(i=a4(i,"onMouseup")),o.length&&(l=s8(n.helper(az),[l,JSON.stringify(o)])),s.length&&(!ou(i)||a6(i.content.toLowerCase()))&&(l=s8(n.helper(aJ),[l,JSON.stringify(s)])),a.length){let e=a.map(G).join("");i=ou(i)?s3(`${i.content}${e}`,!0):s4(["(",i,`) + "${e}"`])}return{props:[s6(i,l)]}}),show:(e,t,n)=>{let{exp:r,loc:i}=e;return!r&&n.onError(oc(61,i)),{props:[],needRuntime:n.helper(aG)}}},a7=/* @__PURE__ */new WeakMap;function ce(e,t){let n;if(!P(e)){if(!e.nodeType)return b;e=e.innerHTML}let r=e,i=((n=a7.get(null!=t?t:g))||(n=/* @__PURE__ */Object.create(null),a7.set(null!=t?t:g,n)),n),l=i[r];if(l)return l;if("#"===e[0]){let t=document.querySelector(e);e=t?t.innerHTML:""}let s=C({hoistStatic:!0,onError:void 0,onWarn:b},t);s.isCustomElement||"undefined"==typeof customElements||(s.isCustomElement=e=>!!customElements.get(e));let{code:o}=function(e,t={}){return function(e,t={}){let n=t.onError||oo,r="module"===t.mode;!0===t.prefixIdentifiers?n(/* @__PURE__ *//*@__PURE__*/oc(47)):r&&n(/* @__PURE__ *//*@__PURE__*/oc(48)),t.cacheHandlers&&n(/* @__PURE__ *//*@__PURE__*/oc(49)),t.scopeId&&!r&&n(/* @__PURE__ *//*@__PURE__*/oc(50));let i=C({},t,{prefixIdentifiers:!1}),l=P(e)?function(e,t){if(oK.reset(),oD=null,oF=null,oV="",oB=-1,oU=-1,oW.length=0,o$=e,oM=C({},oP),t){let e;for(e in t)null!=t[e]&&(oM[e]=t[e])}oK.mode="html"===oM.parseMode?1:"sfc"===oM.parseMode?2:0,oK.inXML=1===oM.ns||2===oM.ns;let n=t&&t.delimiters;n&&(oK.delimiterOpen=ol(n[0]),oK.delimiterClose=ol(n[1]));let r=oL=function(e,t=""){return{type:0,source:t,children:e,helpers:/* @__PURE__ */new Set,components:[],directives:[],hoists:[],imports:[],cached:[],temps:0,codegenNode:void 0,loc:sY}}([],e);return oK.parse(o$),r.loc=o4(0,e.length),r.children=o2(r.children),oL=null,r}(e,i):e,[s,o]=[[aD,af,aU,aS,aP,aE,aT,aL],{on:aM,bind:av,model:aF}];return!function(e,t){let n=function(e,{filename:t="",prefixIdentifiers:n=!1,hoistStatic:r=!1,hmr:i=!1,cacheHandlers:l=!1,nodeTransforms:s=[],directiveTransforms:o={},transformHoist:a=null,isBuiltInComponent:c=b,isCustomElement:u=b,expressionPlugins:d=[],scopeId:h=null,slotted:p=!0,ssr:f=!1,inSSR:m=!1,ssrCssVars:y="",bindingMetadata:_=g,inline:S=!1,isTS:x=!1,onError:C=oo,onWarn:k=oa,compatConfig:T}){let w=t.replace(/\?.*$/,"").match(/([^/\\]+)\.\w+$/),N={filename:t,selfName:w&&G(K(w[1])),prefixIdentifiers:n,hoistStatic:r,hmr:i,cacheHandlers:l,nodeTransforms:s,directiveTransforms:o,transformHoist:a,isBuiltInComponent:c,isCustomElement:u,expressionPlugins:d,scopeId:h,slotted:p,ssr:f,inSSR:m,ssrCssVars:y,bindingMetadata:_,inline:S,isTS:x,onError:C,onWarn:k,compatConfig:T,root:e,helpers:/* @__PURE__ */new Map,components:/* @__PURE__ */new Set,directives:/* @__PURE__ */new Set,hoists:[],imports:[],cached:[],constantCache:/* @__PURE__ */new WeakMap,temps:0,identifiers:/* @__PURE__ */Object.create(null),scopes:{vFor:0,vSlot:0,vPre:0,vOnce:0},parent:null,grandParent:null,currentNode:e,childIndex:0,inVOnce:!1,helper(e){let t=N.helpers.get(e)||0;return N.helpers.set(e,t+1),e},removeHelper(e){let t=N.helpers.get(e);if(t){let n=t-1;n?N.helpers.set(e,n):N.helpers.delete(e)}},helperString:e=>`_${sZ[N.helper(e)]}`,replaceNode(e){N.parent.children[N.childIndex]=N.currentNode=e},removeNode(e){let t=N.parent.children,n=e?t.indexOf(e):N.currentNode?N.childIndex:-1;e&&e!==N.currentNode?N.childIndex>n&&(N.childIndex--,N.onNodeRemoved()):(N.currentNode=null,N.onNodeRemoved()),N.parent.children.splice(n,1)},onNodeRemoved:b,addIdentifiers(e){},removeIdentifiers(e){},hoist(e){P(e)&&(e=s3(e)),N.hoists.push(e);let t=s3(`_hoisted_${N.hoists.length}`,!1,e.loc,2);return t.hoisted=e,t},cache(e,t=!1){let n=function(e,t,n=!1){return{type:20,index:e,value:t,needPauseTracking:n,needArraySpread:!1,loc:sY}}(N.cached.length,e,t);return N.cached.push(n),n}};return N}(e,t);ai(e,n),t.hoistStatic&&function e(t,n,r,i=!1,l=!1){let{children:s}=t,o=[];for(let n=0;n0){if(e>=2){a.codegenNode.patchFlag=-1,o.push(a);continue}}else{let e=a.codegenNode;if(13===e.type){let t=e.patchFlag;if((void 0===t||512===t||1===t)&&an(a,r)>=2){let t=ar(a);t&&(e.props=r.hoist(t))}e.dynamicProps&&(e.dynamicProps=r.hoist(e.dynamicProps))}}}else if(12===a.type&&(i?0:ae(a,r))>=2){o.push(a);continue}if(1===a.type){let n=1===a.tagType;n&&r.scopes.vSlot++,e(a,t,r,!1,l),n&&r.scopes.vSlot--}else if(11===a.type)e(a,t,r,1===a.children.length,!0);else if(9===a.type)for(let n=0;ne.key===t||e.key.content===t);return n&&n.value}}o.length&&r.transformHoist&&r.transformHoist(s,r,t)}(e,void 0,n,o7(e,e.children[0])),t.ssr||function(e,t){let{helper:n}=t,{children:r}=e;if(1===r.length){let n=r[0];if(o7(e,n)&&n.codegenNode){let r=n.codegenNode;13===r.type&&s7(r,t),e.codegenNode=r}else e.codegenNode=n}else r.length>1&&(e.codegenNode=s0(t,n(sp),void 0,e.children,64,void 0,void 0,!0,void 0,!1))}(e,n),e.helpers=/* @__PURE__ */new Set([...n.helpers.keys()]),e.components=[...n.components],e.directives=[...n.directives],e.imports=n.imports,e.hoists=n.hoists,e.temps=n.temps,e.cached=n.cached,e.transformed=!0}(l,C({},i,{nodeTransforms:[...s,...t.nodeTransforms||[]],directiveTransforms:C({},o,t.directiveTransforms||{})})),function(e,t={}){let n=function(e,{mode:t="function",prefixIdentifiers:n="module"===t,sourceMap:r=!1,filename:i="template.vue.html",scopeId:l=null,optimizeImports:s=!1,runtimeGlobalName:o="Vue",runtimeModuleName:a="vue",ssrRuntimeModuleName:c="vue/server-renderer",ssr:u=!1,isTS:d=!1,inSSR:h=!1}){let p={mode:t,prefixIdentifiers:n,sourceMap:r,filename:i,scopeId:l,optimizeImports:s,runtimeGlobalName:o,runtimeModuleName:a,ssrRuntimeModuleName:c,ssr:u,isTS:d,inSSR:h,source:e.source,code:"",column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper:e=>`_${sZ[e]}`,push(e,t=-2,n){p.code+=e},indent(){f(++p.indentLevel)},deindent(e=!1){e?--p.indentLevel:f(--p.indentLevel)},newline(){f(p.indentLevel)}};function f(e){p.push("\n"+" ".repeat(e),0)}return p}(e,t);t.onContextCreated&&t.onContextCreated(n);let{mode:r,push:i,prefixIdentifiers:l,indent:s,deindent:o,newline:a,scopeId:c,ssr:u}=n,d=Array.from(e.helpers),h=d.length>0,p=!l&&"module"!==r;(function(e,t){let{ssr:n,prefixIdentifiers:r,push:i,newline:l,runtimeModuleName:s,runtimeGlobalName:o,ssrRuntimeModuleName:a}=t,c=Array.from(e.helpers);if(c.length>0&&(i(`const _Vue = ${o} -`,-1),e.hoists.length)){let e=[sS,sx,sC,sk,sT].filter(e=>c.includes(e)).map(ao).join(", ");i(`const { ${e} } = _Vue -`,-1)}(function(e,t){if(!e.length)return;t.pure=!0;let{push:n,newline:r}=t;r();for(let i=0;i0)&&a()),e.directives.length&&(aa(e.directives,"directive",n),e.temps>0&&a()),e.temps>0){i("let ");for(let t=0;t0?", ":""}_temp${t}`)}return(e.components.length||e.directives.length||e.temps)&&(i(` -`,0),a()),u||i("return "),e.codegenNode?ad(e.codegenNode,n):i("null"),p&&(o(),i("}")),o(),i("}"),{ast:e,code:n.code,preamble:"",map:n.map?n.map.toJSON():void 0}}(l,i)}(e,C({},aZ,t,{nodeTransforms:[a8,...a5,...t.nodeTransforms||[]],directiveTransforms:C({},a9,t.directiveTransforms||{}),transformHoist:null}))}(e,s),a=Function(o)();return a._rc=!0,i[r]=a}return iY(ce),e.BaseTransition=nP,e.BaseTransitionPropsValidators=nI,e.Comment=i_,e.DeprecationTypes=null,e.EffectScope=eS,e.ErrorCodes={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},e.ErrorTypeStrings=null,e.Fragment=iv,e.KeepAlive={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){let n=iz(),r=n.ctx,i=/* @__PURE__ */new Map,l=/* @__PURE__ */new Set,s=null,o=n.suspense,{renderer:{p:a,m:c,um:u,o:{createElement:d}}}=r,h=d("div");function p(e){n8(e),u(e,n,o,!0)}function f(e){i.forEach((t,n)=>{let r=i3(t.type);r&&!e(r)&&m(n)})}function m(e){let t=i.get(e);!t||s&&iR(t,s)?s&&n8(s):p(t),i.delete(e),l.delete(e)}r.activate=(e,t,n,r,i)=>{let l=e.component;c(e,t,n,0,o),a(l.vnode,e,t,n,l,o,r,e.slotScopeIds,i),rQ(()=>{l.isDeactivated=!1,l.a&&Z(l.a);let t=e.props&&e.props.onVnodeMounted;t&&iH(t,l.parent,e)},o)},r.deactivate=e=>{let t=e.component;r3(t.m),r3(t.a),c(e,h,null,1,o),rQ(()=>{t.da&&Z(t.da);let n=e.props&&e.props.onVnodeUnmounted;n&&iH(n,t.parent,e),t.isDeactivated=!0},o)},r9(()=>[e.include,e.exclude],([e,t])=>{e&&f(t=>n2(e,t)),t&&f(e=>!n2(t,e))},{flush:"post",deep:!0});let g=null,y=()=>{null!=g&&(iu(n.subTree.type)?rQ(()=>{i.set(g,n5(n.subTree))},n.subTree.suspense):i.set(g,n5(n.subTree)))};return rt(y),rr(y),ri(()=>{i.forEach(e=>{let{subTree:t,suspense:r}=n,i=n5(t);if(e.type===i.type&&e.key===i.key){n8(i);let e=i.component.da;e&&rQ(e,r);return}p(e)})}),()=>{if(g=null,!t.default)return s=null;let n=t.default(),r=n[0];if(n.length>1)return s=null,n;if(!iI(r)||!(4&r.shapeFlag)&&!(128&r.shapeFlag))return s=null,r;let o=n5(r);if(o.type===i_)return s=null,o;let a=o.type,c=i3(nY(o)?o.type.__asyncResolved||{}:a),{include:u,exclude:d,max:h}=e;if(u&&(!c||!n2(u,c))||d&&c&&n2(d,c))return o.shapeFlag&=-257,s=o,r;let p=null==o.key?a:o.key,f=i.get(p);return o.el&&(o=iD(o),128&r.shapeFlag&&(r.ssContent=o)),g=p,f?(o.el=f.el,o.component=f.component,o.transition&&nF(o,o.transition),o.shapeFlag|=512,l.delete(p),l.add(p)):(l.add(p),h&&l.size>parseInt(h,10)&&m(l.values().next().value)),o.shapeFlag|=256,s=o,iu(r.type)?r:o}}},e.ReactiveEffect=eC,e.Static=iS,e.Suspense={name:"Suspense",__isSuspense:!0,process(e,t,n,r,i,l,s,o,a,c){if(null==e)(function(e,t,n,r,i,l,s,o,a){let{p:c,o:{createElement:u}}=a,d=u("div"),h=e.suspense=ip(e,i,r,t,d,n,l,s,o,a);c(null,h.pendingBranch=e.ssContent,d,null,r,h,l,s),h.deps>0?(ih(e,"onPending"),ih(e,"onFallback"),c(null,e.ssFallback,t,n,r,null,l,s),iy(h,e.ssFallback)):h.resolve(!1,!0)})(t,n,r,i,l,s,o,a,c);else{if(l&&l.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}(function(e,t,n,r,i,l,s,o,{p:a,um:c,o:{createElement:u}}){let d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;let h=t.ssContent,p=t.ssFallback,{activeBranch:f,pendingBranch:m,isInFallback:g,isHydrating:y}=d;if(m)d.pendingBranch=h,iR(h,m)?(a(m,h,d.hiddenContainer,null,i,d,l,s,o),d.deps<=0?d.resolve():g&&!y&&(a(f,p,n,r,i,null,l,s,o),iy(d,p))):(d.pendingId=id++,y?(d.isHydrating=!1,d.activeBranch=m):c(m,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u("div"),g?(a(null,h,d.hiddenContainer,null,i,d,l,s,o),d.deps<=0?d.resolve():(a(f,p,n,r,i,null,l,s,o),iy(d,p))):f&&iR(h,f)?(a(f,h,n,r,i,d,l,s,o),d.resolve(!0)):(a(null,h,d.hiddenContainer,null,i,d,l,s,o),d.deps<=0&&d.resolve()));else if(f&&iR(h,f))a(f,h,n,r,i,d,l,s,o),iy(d,h);else if(ih(t,"onPending"),d.pendingBranch=h,512&h.shapeFlag?d.pendingId=h.component.suspenseId:d.pendingId=id++,a(null,h,d.hiddenContainer,null,i,d,l,s,o),d.deps<=0)d.resolve();else{let{timeout:e,pendingId:t}=d;e>0?setTimeout(()=>{d.pendingId===t&&d.fallback(p)},e):0===e&&d.fallback(p)}})(e,t,n,r,i,s,o,a,c)}},hydrate:function(e,t,n,r,i,l,s,o,a){let c=t.suspense=ip(t,r,n,e.parentNode,document.createElement("div"),null,i,l,s,o,!0),u=a(e,c.pendingBranch=t.ssContent,n,c,l,s);return 0===c.deps&&c.resolve(!1,!0),u},normalize:function(e){let{shapeFlag:t,children:n}=e,r=32&t;e.ssContent=im(r?n.default:n),e.ssFallback=r?im(n.fallback):iL(i_)}},e.Teleport={name:"Teleport",__isTeleport:!0,process(e,t,n,r,i,l,s,o,a,c){let{mc:u,pc:d,pbc:h,o:{insert:p,querySelector:f,createText:m,createComment:g}}=c,y=nv(t.props),{shapeFlag:b,children:_,dynamicChildren:S}=t;if(null==e){let e=t.el=m(""),c=t.anchor=m("");p(e,n,r),p(c,n,r);let d=(e,t)=>{16&b&&(i&&i.isCE&&(i.ce._teleportTarget=e),u(_,e,t,i,l,s,o,a))},h=()=>{let e=t.target=nx(t.props,f),n=nT(e,t,m,p);e&&("svg"!==s&&n_(e)?s="svg":"mathml"!==s&&nS(e)&&(s="mathml"),y||(d(e,n),nk(t)))};y&&(d(n,c),nk(t)),nb(t.props)?rQ(h,l):h()}else{t.el=e.el,t.targetStart=e.targetStart;let r=t.anchor=e.anchor,u=t.target=e.target,p=t.targetAnchor=e.targetAnchor,m=nv(e.props),g=m?n:u;if("svg"===s||n_(u)?s="svg":("mathml"===s||nS(u))&&(s="mathml"),S?(h(e.dynamicChildren,S,g,i,l,s,o),r6(e,t,!0)):a||d(e,t,g,m?r:p,i,l,s,o,!1),y)m?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):nC(t,n,r,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=t.target=nx(t.props,f);e&&nC(t,e,null,c,0)}else m&&nC(t,u,p,c,1);nk(t)}},remove(e,t,n,{um:r,o:{remove:i}},l){let{shapeFlag:s,children:o,anchor:a,targetStart:c,targetAnchor:u,target:d,props:h}=e;if(d&&(i(c),i(u)),l&&i(a),16&s){let e=l||!nv(h);for(let i=0;ie[r]});return n},e.createRenderer=function(e){return rY(e)},e.createSSRApp=su,e.createSlots=function(e,t){for(let n=0;n{let t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e},e.createStaticVNode=function(e,t){let n=iL(iS,null,e);return n.staticCount=t,n},e.createTextVNode=iF,e.createVNode=iL,e.customRef=tz,e.defineAsyncComponent=/*! #__NO_SIDE_EFFECTS__ */function(e){let t;O(e)&&(e={loader:e});let{loader:n,loadingComponent:r,errorComponent:i,delay:l=200,hydrate:s,timeout:o,suspensible:a=!0,onError:c}=e,u=null,d=0,h=()=>(d++,u=null,p()),p=()=>{let e;return u||(e=u=n().catch(e=>{if(e=e instanceof Error?e:Error(String(e)),c)return new Promise((t,n)=>{c(e,()=>t(h()),()=>n(e),d+1)});throw e}).then(n=>e!==u&&u?u:(n&&(n.__esModule||"Module"===n[Symbol.toStringTag])&&(n=n.default),t=n,n)))};return nB({name:"AsyncComponentWrapper",__asyncLoader:p,__asyncHydrate(e,n,r){let i=s?()=>{let t=s(r,t=>(function(e,t){if(nJ(e)&&"["===e.data){let n=1,r=e.nextSibling;for(;r;){if(1===r.nodeType){if(!1===t(r))break}else if(nJ(r)){if("]"===r.data){if(0==--n)break}else"["===r.data&&n++}r=r.nextSibling}}else t(e)})(e,t));t&&(n.bum||(n.bum=[])).push(t)}:r;t?i():p().then(()=>!n.isUnmounted&&i())},get __asyncResolved(){return t},setup(){let e=iK;if(nU(e),t)return()=>n0(t,e);let n=t=>{u=null,t3(t,e,13,!i)};if(a&&e.suspense)return p().then(t=>()=>n0(t,e)).catch(e=>(n(e),()=>i?iL(i,{error:e}):null));let s=tV(!1),c=tV(),d=tV(!!l);return l&&setTimeout(()=>{d.value=!1},l),null!=o&&setTimeout(()=>{if(!s.value&&!c.value){let e=Error(`Async component timed out after ${o}ms.`);n(e),c.value=e}},o),p().then(()=>{s.value=!0,e.parent&&n1(e.parent.vnode)&&e.parent.update()}).catch(e=>{n(e),c.value=e}),()=>s.value&&t?n0(t,e):c.value&&i?iL(i,{error:c.value}):r&&!d.value?iL(r):void 0}})},e.defineComponent=nB,e.defineCustomElement=lU,e.defineEmits=function(){return null},e.defineExpose=function(e){},e.defineModel=function(){},e.defineOptions=function(e){},e.defineProps=function(){return null},e.defineSSRCustomElement=(e,t)=>/* @__PURE__ */lU(e,t,su),e.defineSlots=function(){return null},e.devtools=void 0,e.effect=function(e,t){e.effect instanceof eC&&(e=e.effect.fn);let n=new eC(e);t&&C(n,t);try{n.run()}catch(e){throw n.stop(),e}let r=n.run.bind(n);return r.effect=n,r},e.effectScope=function(e){return new eS(e)},e.getCurrentInstance=iz,e.getCurrentScope=function(){return i},e.getCurrentWatcher=function(){return p},e.getTransitionRawChildren=nV,e.guardReactiveProps=i$,e.h=i8,e.handleError=t3,e.hasInjectionContext=function(){return!!(iK||nd||rP)},e.hydrate=(...e)=>{so().hydrate(...e)},e.hydrateOnIdle=(e=1e4)=>t=>{let n=requestIdleCallback(t,{timeout:e});return()=>cancelIdleCallback(n)},e.hydrateOnInteraction=(e=[])=>(t,n)=>{P(e)&&(e=[e]);let r=!1,i=e=>{r||(r=!0,l(),t(),e.target.dispatchEvent(new e.constructor(e.type,e)))},l=()=>{n(t=>{for(let n of e)t.removeEventListener(n,i)})};return n(t=>{for(let n of e)t.addEventListener(n,i,{once:!0})}),l},e.hydrateOnMediaQuery=e=>t=>{if(e){let n=matchMedia(e);if(!n.matches)return n.addEventListener("change",t,{once:!0}),()=>n.removeEventListener("change",t);t()}},e.hydrateOnVisible=e=>(t,n)=>{let r=new IntersectionObserver(e=>{for(let n of e)if(n.isIntersecting){r.disconnect(),t();break}},e);return n(e=>{if(e instanceof Element){if(function(e){let{top:t,left:n,bottom:r,right:i}=e.getBoundingClientRect(),{innerHeight:l,innerWidth:s}=window;return(t>0&&t0&&r0&&n0&&ir.disconnect()},e.initCustomFormatter=function(){},e.initDirectivesForSSR=b,e.inject=rL,e.isMemoSame=i5,e.isProxy=tP,e.isReactive=tI,e.isReadonly=tR,e.isRef=tF,e.isRuntimeOnly=()=>!c,e.isShallow=tO,e.isVNode=iI,e.markRaw=tL,e.mergeDefaults=function(e,t){let n=r_(e);for(let e in t){if(e.startsWith("__skip"))continue;let r=n[e];r?N(r)||O(r)?r=n[e]={type:r,default:t[e]}:r.default=t[e]:null===r&&(r=n[e]={default:t[e]}),r&&t[`__skip_${e}`]&&(r.skipFactory=!0)}return n},e.mergeModels=function(e,t){return e&&t?N(e)&&N(t)?e.concat(t):C({},r_(e),r_(t)):e||t},e.mergeProps=ij,e.nextTick=ni,e.normalizeClass=ec,e.normalizeProps=function(e){if(!e)return null;let{class:t,style:n}=e;return t&&!P(t)&&(e.class=ec(t)),n&&(e.style=ei(n)),e},e.normalizeStyle=ei,e.onActivated=n6,e.onBeforeMount=re,e.onBeforeUnmount=ri,e.onBeforeUpdate=rn,e.onDeactivated=n3,e.onErrorCaptured=rc,e.onMounted=rt,e.onRenderTracked=ra,e.onRenderTriggered=ro,e.onScopeDispose=function(e,t=!1){i&&i.cleanups.push(e)},e.onServerPrefetch=rs,e.onUnmounted=rl,e.onUpdated=rr,e.onWatcherCleanup=t0,e.openBlock=ik,e.popScopeId=function(){nh=null},e.provide=rM,e.proxyRefs=tW,e.pushScopeId=function(e){nh=e},e.queuePostFlushCb=no,e.reactive=tw,e.readonly=tA,e.ref=tV,e.registerRuntimeCompiler=iY,e.render=sa,e.renderList=function(e,t,n,r){let i;let l=n&&n[r],s=N(e);if(s||P(e)){let n=s&&tI(e),r=!1;n&&(r=!tO(e),e=ez(e)),i=Array(e.length);for(let n=0,s=e.length;nt(e,n,void 0,l&&l[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,s=n.length;r!iI(t)||!!(t.type!==i_&&(t.type!==iv||e(t.children))))?t:null}(l(n)),o=iE(iv,{key:(n.key||s&&s.key||`_${t}`)+(!s&&r?"_fb":"")},s||(r?r():[]),s&&1===e._?64:-2);return!i&&o.scopeId&&(o.slotScopeIds=[o.scopeId+"-s"]),l&&l._c&&(l._d=!0),o},e.resolveComponent=function(e,t){return rh(ru,e,!0,t)||e},e.resolveDirective=function(e){return rh("directives",e)},e.resolveDynamicComponent=function(e){return P(e)?rh(ru,e,!1)||e:e||rd},e.resolveFilter=null,e.resolveTransitionHooks=nL,e.setBlockTracking=iN,e.setDevtoolsHook=b,e.setTransitionHooks=nF,e.shallowReactive=tN,e.shallowReadonly=function(e){return tE(e,!0,te,tS,tT)},e.shallowRef=tB,e.ssrContextKey=r4,e.ssrUtils=null,e.stop=function(e){e.effect.stop()},e.toDisplayString=ev,e.toHandlerKey=X,e.toHandlers=function(e,t){let n={};for(let r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:X(r)]=e[r];return n},e.toRaw=tM,e.toRef=function(e,t,n){return tF(e)?e:O(e)?new tG(e):L(e)&&arguments.length>1?tX(e,t,n):tV(e)},e.toRefs=function(e){let t=N(e)?Array(e.length):{};for(let n in e)t[n]=tX(e,n);return t},e.toValue=function(e){return O(e)?e():tH(e)},e.transformVNodeArgs=function(e){},e.triggerRef=function(e){e.dep&&e.dep.trigger()},e.unref=tH,e.useAttrs=function(){return rb().attrs},e.useCssModule=function(e="$style"){return g},e.useCssVars=function(e){let t=iz();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>lT(e,n))},r=()=>{let r=e(t.proxy);t.ce?lT(t.ce,r):function e(t,n){if(128&t.shapeFlag){let r=t.suspense;t=r.activeBranch,r.pendingBranch&&!r.isHydrating&&r.effects.push(()=>{e(r.activeBranch,n)})}for(;t.component;)t=t.component.subTree;if(1&t.shapeFlag&&t.el)lT(t.el,n);else if(t.type===iv)t.children.forEach(t=>e(t,n));else if(t.type===iS){let{el:e,anchor:r}=t;for(;e&&(lT(e,n),e!==r);)e=e.nextSibling}}(t.subTree,r),n(r)};re(()=>{r8(r)}),rt(()=>{let e=new MutationObserver(r);e.observe(t.subTree.el.parentNode,{childList:!0}),rl(()=>e.disconnect())})},e.useHost=lq,e.useId=function(){let e=iz();if(e)return(e.appContext.config.idPrefix||"v")+"-"+e.ids[0]+e.ids[1]++},e.useModel=function(e,t,n=g){let r=iz(),i=K(t),l=J(t),s=it(e,t),o=tz((s,o)=>{let a,c;let u=g;return r5(()=>{let n=e[t];Q(a,n)&&(a=n,o())}),{get:()=>(s(),n.get?n.get(a):a),set(e){let s=n.set?n.set(e):e;if(!Q(s,a)&&!(u!==g&&Q(e,u)))return;let d=r.vnode.props;d&&(t in d||i in d||l in d)&&(`onUpdate:${t}` in d||`onUpdate:${i}` in d||`onUpdate:${l}` in d)||(a=e,o()),r.emit(`update:${t}`,s),Q(e,s)&&Q(e,u)&&!Q(s,c)&&o(),u=e,c=s}}});return o[Symbol.iterator]=()=>{let e=0;return{next:()=>e<2?{value:e++?s||g:o,done:!1}:{done:!0}}},o},e.useSSRContext=()=>{},e.useShadowRoot=function(){let e=lq();return e&&e.shadowRoot},e.useSlots=function(){return rb().slots},e.useTemplateRef=function(e){let t=iz(),n=tB(null);return t&&Object.defineProperty(t.refs===g?t.refs={}:t.refs,e,{enumerable:!0,get:()=>n.value,set:e=>n.value=e}),n},e.useTransitionState=nA,e.vModelCheckbox=l3,e.vModelDynamic={created(e,t,n){st(e,t,n,null,"created")},mounted(e,t,n){st(e,t,n,null,"mounted")},beforeUpdate(e,t,n,r){st(e,t,n,r,"beforeUpdate")},updated(e,t,n,r){st(e,t,n,r,"updated")}},e.vModelRadio=l8,e.vModelSelect=l5,e.vModelText=l6,e.vShow={beforeMount(e,{value:t},{transition:n}){e[lS]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):lC(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),lC(e,!0),r.enter(e)):r.leave(e,()=>{lC(e,!1)}):lC(e,t))},beforeUnmount(e,{value:t}){lC(e,t)}},e.version=i9,e.warn=b,e.watch=function(e,t,n){return r9(e,t,n)},e.watchEffect=function(e,t){return r9(e,null,t)},e.watchPostEffect=r8,e.watchSyncEffect=r5,e.withAsyncContext=function(e){let t=iz(),n=e();return iG(),$(n)&&(n=n.catch(e=>{throw iJ(t),e})),[n,()=>iJ(t)]},e.withCtx=nf,e.withDefaults=function(e,t){return null},e.withDirectives=function(e,t){if(null===nd)return e;let n=i6(nd),r=e.dirs||(e.dirs=[]);for(let e=0;e{let n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=n=>{if(!("key"in n))return;let r=J(n.key);if(t.some(e=>e===r||si[e]===r))return e(n)})},e.withMemo=function(e,t,n,r){let i=n[r];if(i&&i5(i,e))return i;let l=t();return l.memo=e.slice(),l.cacheIndex=r,n[r]=l},e.withModifiers=(e,t)=>{let n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(n,...r)=>{for(let e=0;enf,e}({}); +**/var Vue=function(e){"use strict";var t,n,r;let i,l,s,o,a,c,u,d,p,h,f,m,g;function y(e){let t=Object.create(null);for(let n of e.split(","))t[n]=1;return e=>e in t}let b={},_=[],S=()=>{},x=()=>!1,C=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||97>e.charCodeAt(2)),k=e=>e.startsWith("onUpdate:"),T=Object.assign,w=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},N=Object.prototype.hasOwnProperty,A=(e,t)=>N.call(e,t),E=Array.isArray,I=e=>"function"==typeof e,O=e=>"string"==typeof e,R=e=>"symbol"==typeof e,M=e=>null!==e&&"object"==typeof e,P=e=>(M(e)||I(e))&&I(e.then)&&I(e.catch),L=Object.prototype.toString,$=e=>O(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,D=y(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),F=y("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),V=e=>{let t=Object.create(null);return n=>t[n]||(t[n]=e(n))},j=/-\w/g,B=V(e=>e.replace(j,e=>e.slice(1).toUpperCase())),U=/\B([A-Z])/g,H=V(e=>e.replace(U,"-$1").toLowerCase()),q=V(e=>e.charAt(0).toUpperCase()+e.slice(1)),W=V(e=>e?`on${q(e)}`:""),K=(e,t)=>!Object.is(e,t),z=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},G=e=>{let t=parseFloat(e);return isNaN(t)?e:t},X=e=>{let t=O(e)?Number(e):NaN;return isNaN(t)?e:t},Q=()=>i||(i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}),Z=y("Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol");function Y(e){if(E(e)){let t={};for(let n=0;n{if(e){let n=e.split(et);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function ei(e){let t="";if(O(e))t=e;else if(E(e))for(let n=0;neu(e,t))}let ep=e=>!!(e&&!0===e.__v_isRef),eh=e=>O(e)?e:null==e?"":E(e)||M(e)&&(e.toString===L||!I(e.toString))?ep(e)?eh(e.value):JSON.stringify(e,ef,2):String(e),ef=(e,t)=>{let n;if(ep(t))return ef(e,t.value);if("[object Map]"===(n=t,L.call(n)))return{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[em(t,r)+" =>"]=n,e),{})};{let e;if("[object Set]"===(e=t,L.call(e)))return{[`Set(${t.size})`]:[...t.values()].map(e=>em(e))};else{if(R(t))return em(t);let e;if(M(t)&&!E(t)&&"[object Object]"!==(e=t,L.call(e)))return String(t)}}return t},em=(e,t="")=>{var n;return R(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};class eg{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=l,!e&&l&&(this.index=(l.scopes||(l.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){let e,t;if(this._isPaused=!0,this.scopes)for(e=0,t=this.scopes.length;e0&&0==--this._on&&(l=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){let t,n;for(t=0,this._active=!1,n=this.effects.length;t0)){if(a){let e=a;for(a=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}for(;o;){let t=o;for(o=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,1&t.flags)try{t.trigger()}catch(t){e||(e=t)}t=n}}if(e)throw e}}function ex(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function eC(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;-1===r.version?(r===n&&(n=e),ew(r),function(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function ek(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(eT(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function eT(e){if(4&e.flags&&!(16&e.flags)||(e.flags&=-17,e.globalVersion===eR)||(e.globalVersion=eR,!e.isSSR&&128&e.flags&&(!e.deps&&!e._dirty||!ek(e))))return;e.flags|=2;let t=e.dep,n=s,r=eN;s=e,eN=!0;try{ex(e);let n=e.fn(e._value);(0===t.version||K(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{s=n,eN=r,eC(e),e.flags&=-3}}function ew(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)ew(e,!0)}t||--n.sc||!n.map||n.map.delete(n.key)}let eN=!0,eA=[];function eE(){eA.push(eN),eN=!1}function eI(){let e=eA.pop();eN=void 0===e||e}function eO(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=s;s=void 0;try{t()}finally{s=e}}}let eR=0;class eM{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class eP{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,this.__v_skip=!0}track(e){if(!s||!eN||s===this.computed)return;let t=this.activeLink;if(void 0===t||t.sub!==s)t=this.activeLink=new eM(s,this),s.deps?(t.prevDep=s.depsTail,s.depsTail.nextDep=t,s.depsTail=t):s.deps=s.depsTail=t,function e(t){if(t.dep.sc++,4&t.sub.flags){let n=t.dep.computed;if(n&&!t.dep.subs){n.flags|=20;for(let t=n.deps;t;t=t.nextDep)e(t)}let r=t.dep.subs;r!==t&&(t.prevSub=r,r&&(r.nextSub=t)),t.dep.subs=t}}(t);else if(-1===t.version&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=s.depsTail,t.nextDep=void 0,s.depsTail.nextDep=t,s.depsTail=t,s.deps===t&&(s.deps=e)}return t}trigger(e){this.version++,eR++,this.notify(e)}notify(e){eb++;try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{eS()}}}let eL=new WeakMap,e$=Symbol(""),eD=Symbol(""),eF=Symbol("");function eV(e,t,n){if(eN&&s){let t=eL.get(e);t||eL.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new eP),r.map=t,r.key=n),r.track()}}function ej(e,t,n,r,i,l){let s=eL.get(e);if(!s)return void eR++;let o=e=>{e&&e.trigger()};if(eb++,"clear"===t)s.forEach(o);else{let i=E(e),l=i&&$(n);if(i&&"length"===n){let e=Number(r);s.forEach((t,n)=>{("length"===n||n===eF||!R(n)&&n>=e)&&o(t)})}else switch((void 0!==n||s.has(void 0))&&o(s.get(n)),l&&o(s.get(eF)),t){case"add":if(i)l&&o(s.get("length"));else{let t;o(s.get(e$));"[object Map]"===(t=e,L.call(t))&&o(s.get(eD))}break;case"delete":if(!i){let t;o(s.get(e$));"[object Map]"===(t=e,L.call(t))&&o(s.get(eD))}break;case"set":let a;"[object Map]"===(a=e,L.call(a))&&o(s.get(e$))}}eS()}function eB(e){let t=tg(e);return t===e?t:(eV(t,"iterate",eF),tf(e)?t:t.map(ty))}function eU(e){return eV(e=tg(e),"iterate",eF),e}function eH(e,t){return th(e)?tp(e)?tb(ty(t)):tb(t):ty(t)}let eq={__proto__:null,[Symbol.iterator](){return eW(this,Symbol.iterator,e=>eH(this,e))},concat(...e){return eB(this).concat(...e.map(e=>E(e)?eB(e):e))},entries(){return eW(this,"entries",e=>(e[1]=eH(this,e[1]),e))},every(e,t){return ez(this,"every",e,t,void 0,arguments)},filter(e,t){return ez(this,"filter",e,t,e=>e.map(e=>eH(this,e)),arguments)},find(e,t){return ez(this,"find",e,t,e=>eH(this,e),arguments)},findIndex(e,t){return ez(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return ez(this,"findLast",e,t,e=>eH(this,e),arguments)},findLastIndex(e,t){return ez(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return ez(this,"forEach",e,t,void 0,arguments)},includes(...e){return eG(this,"includes",e)},indexOf(...e){return eG(this,"indexOf",e)},join(e){return eB(this).join(e)},lastIndexOf(...e){return eG(this,"lastIndexOf",e)},map(e,t){return ez(this,"map",e,t,void 0,arguments)},pop(){return eX(this,"pop")},push(...e){return eX(this,"push",e)},reduce(e,...t){return eJ(this,"reduce",e,t)},reduceRight(e,...t){return eJ(this,"reduceRight",e,t)},shift(){return eX(this,"shift")},some(e,t){return ez(this,"some",e,t,void 0,arguments)},splice(...e){return eX(this,"splice",e)},toReversed(){return eB(this).toReversed()},toSorted(e){return eB(this).toSorted(e)},toSpliced(...e){return eB(this).toSpliced(...e)},unshift(...e){return eX(this,"unshift",e)},values(){return eW(this,"values",e=>eH(this,e))}};function eW(e,t,n){let r=eU(e),i=r[t]();return r===e||tf(e)||(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}let eK=Array.prototype;function ez(e,t,n,r,i,l){let s=eU(e),o=s!==e&&!tf(e),a=s[t];if(a!==eK[t]){let t=a.apply(e,l);return o?ty(t):t}let c=n;s!==e&&(o?c=function(t,r){return n.call(this,eH(e,t),r,e)}:n.length>2&&(c=function(t,r){return n.call(this,t,r,e)}));let u=a.call(s,c,r);return o&&i?i(u):u}function eJ(e,t,n,r){let i=eU(e),l=n;return i!==e&&(tf(e)?n.length>3&&(l=function(t,r,i){return n.call(this,t,r,i,e)}):l=function(t,r,i){return n.call(this,t,eH(e,r),i,e)}),i[t](l,...r)}function eG(e,t,n){let r=tg(e);eV(r,"iterate",eF);let i=r[t](...n);return(-1===i||!1===i)&&tm(n[0])?(n[0]=tg(n[0]),r[t](...n)):i}function eX(e,t,n=[]){eE(),eb++;let r=tg(e)[t].apply(e,n);return eS(),eI(),r}let eQ=y("__proto__,__v_isRef,__isVue"),eZ=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>"arguments"!==e&&"caller"!==e).map(e=>Symbol[e]).filter(R));function eY(e){R(e)||(e=String(e));let t=tg(this);return eV(t,"has",e),t.hasOwnProperty(e)}class e0{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if("__v_skip"===t)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if("__v_isReactive"===t)return!r;if("__v_isReadonly"===t)return r;if("__v_isShallow"===t)return i;if("__v_raw"===t)return n===(r?i?to:ts:i?tl:ti).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let l=E(e);if(!r){let e;if(l&&(e=eq[t]))return e;if("hasOwnProperty"===t)return eY}let s=Reflect.get(e,t,t_(e)?e:n);if((R(t)?eZ.has(t):eQ(t))||(r||eV(e,"get",t),i))return s;if(t_(s)){let e=l&&$(t)?s:s.value;return r&&M(e)?tu(e):e}return M(s)?r?tu(s):ta(s):s}}class e1 extends e0{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],l=E(e)&&$(t);if(!this._isShallow){let e=th(i);if(tf(n)||th(n)||(i=tg(i),n=tg(n)),!l&&t_(i)&&!t_(n))if(e)return!0;else return i.value=n,!0}let s=l?Number(t)e;function e9(e){return function(){return"delete"!==e&&("clear"===e?void 0:this)}}function e7(e,t){let n,r=(T(n={get(n){let r=this.__v_raw,i=tg(r),l=tg(n);e||(K(n,l)&&eV(i,"get",n),eV(i,"get",l));let{has:s}=Reflect.getPrototypeOf(i),o=t?e5:e?tb:ty;return s.call(i,n)?o(r.get(n)):s.call(i,l)?o(r.get(l)):void(r!==i&&r.get(n))},get size(){let t=this.__v_raw;return e||eV(tg(t),"iterate",e$),t.size},has(t){let n=this.__v_raw,r=tg(n),i=tg(t);return e||(K(t,i)&&eV(r,"has",t),eV(r,"has",i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,l=i.__v_raw,s=tg(l),o=t?e5:e?tb:ty;return e||eV(s,"iterate",e$),l.forEach((e,t)=>n.call(r,o(e),o(t),i))}},e?{add:e9("add"),set:e9("set"),delete:e9("delete"),clear:e9("clear")}:{add(e){t||tf(e)||th(e)||(e=tg(e));let n=tg(this);return Reflect.getPrototypeOf(n).has.call(n,e)||(n.add(e),ej(n,"add",e,e)),this},set(e,n){t||tf(n)||th(n)||(n=tg(n));let r=tg(this),{has:i,get:l}=Reflect.getPrototypeOf(r),s=i.call(r,e);s||(e=tg(e),s=i.call(r,e));let o=l.call(r,e);return r.set(e,n),s?K(n,o)&&ej(r,"set",e,n):ej(r,"add",e,n),this},delete(e){let t=tg(this),{has:n,get:r}=Reflect.getPrototypeOf(t),i=n.call(t,e);i||(e=tg(e),i=n.call(t,e)),r&&r.call(t,e);let l=t.delete(e);return i&&ej(t,"delete",e,void 0),l},clear(){let e=tg(this),t=0!==e.size,n=e.clear();return t&&ej(e,"clear",void 0,void 0),n}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=function(...n){let i,l=this.__v_raw,s=tg(l),o="[object Map]"===(i=s,L.call(i)),a="entries"===r||r===Symbol.iterator&&o,c=l[r](...n),u=t?e5:e?tb:ty;return e||eV(s,"iterate","keys"===r&&o?eD:e$),{next(){let{value:e,done:t}=c.next();return t?{value:e,done:t}:{value:a?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}),n);return(t,n,i)=>"__v_isReactive"===n?!e:"__v_isReadonly"===n?e:"__v_raw"===n?t:Reflect.get(A(r,n)&&n in t?r:t,n,i)}let te={get:e7(!1,!1)},tt={get:e7(!1,!0)},tn={get:e7(!0,!1)},tr={get:e7(!0,!0)},ti=new WeakMap,tl=new WeakMap,ts=new WeakMap,to=new WeakMap;function ta(e){return th(e)?e:td(e,!1,e6,te,ti)}function tc(e){return td(e,!1,e4,tt,tl)}function tu(e){return td(e,!0,e3,tn,ts)}function td(e,t,n,r,i){var l;let s;if(!M(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;let o=(l=e).__v_skip||!Object.isExtensible(l)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}((s=l,L.call(s)).slice(8,-1));if(0===o)return e;let a=i.get(e);if(a)return a;let c=new Proxy(e,2===o?r:n);return i.set(e,c),c}function tp(e){return th(e)?tp(e.__v_raw):!!(e&&e.__v_isReactive)}function th(e){return!!(e&&e.__v_isReadonly)}function tf(e){return!!(e&&e.__v_isShallow)}function tm(e){return!!e&&!!e.__v_raw}function tg(e){let t=e&&e.__v_raw;return t?tg(t):e}function tv(e){return!A(e,"__v_skip")&&Object.isExtensible(e)&&J(e,"__v_skip",!0),e}let ty=e=>M(e)?ta(e):e,tb=e=>M(e)?tu(e):e;function t_(e){return!!e&&!0===e.__v_isRef}function tS(e){return tC(e,!1)}function tx(e){return tC(e,!0)}function tC(e,t){return t_(e)?e:new tk(e,t)}class tk{constructor(e,t){this.dep=new eP,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:tg(e),this._value=t?e:ty(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||tf(e)||th(e);K(e=n?e:tg(e),t)&&(this._rawValue=e,this._value=n?e:ty(e),this.dep.trigger())}}function tT(e){return t_(e)?e.value:e}let tw={get:(e,t,n)=>"__v_raw"===t?e:tT(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return t_(i)&&!t_(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function tN(e){return tp(e)?e:new Proxy(e,tw)}class tA{constructor(e){this.__v_isRef=!0,this._value=void 0;const t=this.dep=new eP,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}}function tE(e){return new tA(e)}class tI{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._raw=tg(e);let r=!0,i=e;if(!E(e)||!$(String(t)))do r=!tm(i)||tf(i);while(r&&(i=i.__v_raw));this._shallow=r}get value(){let e=this._object[this._key];return this._shallow&&(e=tT(e)),this._value=void 0===e?this._defaultValue:e}set value(e){if(this._shallow&&t_(this._raw[this._key])){let t=this._object[this._key];if(t_(t)){t.value=e;return}}this._object[this._key]=e}get dep(){var e,t;let n;return e=this._raw,t=this._key,(n=eL.get(e))&&n.get(t)}}class tO{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}class tR{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new eP(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=eR-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(8&this.flags)&&s!==this)return e_(this,!0),!0}get value(){let e=this.dep.track();return eT(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}let tM={},tP=new WeakMap;function tL(e,t=!1,n=m){if(n){let t=tP.get(n);t||tP.set(n,t=[]),t.push(e)}}function t$(e,t=1/0,n){if(t<=0||!M(e)||e.__v_skip||((n=n||new Map).get(e)||0)>=t)return e;if(n.set(e,t),t--,t_(e))t$(e.value,t,n);else if(E(e))for(let r=0;r{t$(e,t,n)});else{let r;if("[object Object]"===(r=e,L.call(r))){for(let r in e)t$(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&t$(e[r],t,n)}}}return e}function tD(e,t,n,r){try{return r?e(...r):e()}catch(e){tV(e,t,n)}}function tF(e,t,n,r){if(I(e)){let i=tD(e,t,n,r);return i&&P(i)&&i.catch(e=>{tV(e,t,n)}),i}if(E(e)){let i=[];for(let l=0;l=tY(n)?tj.push(e):tj.splice(function(e){let t=tB+1,n=tj.length;for(;t>>1,i=tj[r],l=tY(i);ltY(e)-tY(t));if(tU.length=0,tH)return void tH.push(...e);for(tq=0,tH=e;tqnull==e.id?2&e.flags?-1:1/0:e.id,t0=null,t1=null;function t2(e){let t=t0;return t0=e,t1=e&&e.type.__scopeId||null,t}function t6(e,t=t0,n){if(!t||e._n)return e;let r=(...n)=>{let i;r._d&&ii(-1);let l=t2(t);try{i=e(...n)}finally{t2(l),r._d&&ii(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function t3(e,t,n,r){let i=e.dirs,l=t&&t.dirs;for(let s=0;se&&(e.disabled||""===e.disabled),t5=e=>e&&(e.defer||""===e.defer),t9=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,t7=e=>"function"==typeof MathMLElement&&e instanceof MathMLElement,ne=(e,t)=>{let n=e&&e.to;return O(n)?t?t(n):null:n},nt={name:"Teleport",__isTeleport:!0,process(e,t,n,r,i,l,s,o,a,c){let{mc:u,pc:d,pbc:p,o:{insert:h,querySelector:f,createText:m}}=c,g=t8(t.props),{shapeFlag:y,children:b,dynamicChildren:_}=t;if(null==e){let e=t.el=m(""),c=t.anchor=m("");h(e,n,r),h(c,n,r);let d=(e,t)=>{16&y&&u(b,e,t,i,l,s,o,a)},p=()=>{let e=t.target=ne(t.props,f),n=ni(e,t,m,h);e&&("svg"!==s&&t9(e)?s="svg":"mathml"!==s&&t7(e)&&(s="mathml"),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(e),g||(d(e,n),nr(t,!1)))};g&&(d(n,c),nr(t,!0)),t5(t.props)?(t.el.__isMounted=!1,rH(()=>{p(),delete t.el.__isMounted},l)):p()}else{if(t5(t.props)&&!1===e.el.__isMounted)return void rH(()=>{nt.process(e,t,n,r,i,l,s,o,a,c)},l);t.el=e.el,t.targetStart=e.targetStart;let u=t.anchor=e.anchor,h=t.target=e.target,m=t.targetAnchor=e.targetAnchor,y=t8(e.props),b=y?n:h,S=y?u:m;if("svg"===s||t9(h)?s="svg":("mathml"===s||t7(h))&&(s="mathml"),_?(p(e.dynamicChildren,_,b,i,l,s,o),rG(e,t,!0)):a||d(e,t,b,S,i,l,s,o,!1),g)y?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):nn(t,n,u,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=t.target=ne(t.props,f);e&&nn(t,e,null,c,0)}else y&&nn(t,h,m,c,1);nr(t,g)}},remove(e,t,n,{um:r,o:{remove:i}},l){let{shapeFlag:s,children:o,anchor:a,targetStart:c,targetAnchor:u,target:d,props:p}=e;if(d&&(i(c),i(u)),l&&i(a),16&s){let e=l||!t8(p);for(let i=0;i{e.isMounted=!0}),nG(()=>{e.isUnmounting=!0}),e}let na=[Function,Array],nc={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:na,onEnter:na,onAfterEnter:na,onEnterCancelled:na,onBeforeLeave:na,onLeave:na,onAfterLeave:na,onLeaveCancelled:na,onBeforeAppear:na,onAppear:na,onAfterAppear:na,onAppearCancelled:na},nu=e=>{let t=e.subTree;return t.component?nu(t.component):t};function nd(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==r8){t=n;break}}return t}let np={name:"BaseTransition",props:nc,setup(e,{slots:t}){let n=iT(),r=no();return()=>{let i=t.default&&ny(t.default(),!0);if(!i||!i.length)return;let l=nd(i),s=tg(e),{mode:o}=s;if(r.isLeaving)return nm(l);let a=ng(l);if(!a)return nm(l);let c=nf(a,s,r,n,e=>c=e);a.type!==r8&&nv(a,c);let u=n.subTree&&ng(n.subTree);if(u&&u.type!==r8&&!ia(u,a)&&nu(n).type!==r8){let e=nf(u,s,r,n);if(nv(u,e),"out-in"===o&&a.type!==r8)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,8&n.job.flags||n.update(),delete e.afterLeave,u=void 0},nm(l);"in-out"===o&&a.type!==r8?e.delayLeave=(e,t,n)=>{nh(r,u)[String(u.key)]=u,e[nl]=()=>{t(),e[nl]=void 0,delete c.delayedLeave,u=void 0},c.delayedLeave=()=>{n(),delete c.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return l}}};function nh(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function nf(e,t,n,r,i){let{appear:l,mode:s,persisted:o=!1,onBeforeEnter:a,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:p,onLeave:h,onAfterLeave:f,onLeaveCancelled:m,onBeforeAppear:g,onAppear:y,onAfterAppear:b,onAppearCancelled:_}=t,S=String(e.key),x=nh(n,e),C=(e,t)=>{e&&tF(e,r,9,t)},k=(e,t)=>{let n=t[1];C(e,t),E(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},T={mode:s,persisted:o,beforeEnter(t){let r=a;if(!n.isMounted)if(!l)return;else r=g||a;t[nl]&&t[nl](!0);let i=x[S];i&&ia(e,i)&&i.el[nl]&&i.el[nl](),C(r,[t])},enter(e){let t=c,r=u,i=d;if(!n.isMounted)if(!l)return;else t=y||c,r=b||u,i=_||d;let s=!1,o=e[ns]=t=>{s||(s=!0,t?C(i,[e]):C(r,[e]),T.delayedLeave&&T.delayedLeave(),e[ns]=void 0)};t?k(t,[e,o]):o()},leave(t,r){let i=String(e.key);if(t[ns]&&t[ns](!0),n.isUnmounting)return r();C(p,[t]);let l=!1,s=t[nl]=n=>{l||(l=!0,r(),n?C(m,[t]):C(f,[t]),t[nl]=void 0,x[i]===e&&delete x[i])};x[i]=e,h?k(h,[t,s]):s()},clone(e){let l=nf(e,t,n,r,i);return i&&i(l),l}};return T}function nm(e){if(n$(e))return(e=im(e)).children=null,e}function ng(e){if(!n$(e))return e.type.__isTeleport&&e.children?nd(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(16&t)return n[0];if(32&t&&I(n.default))return n.default()}}function nv(e,t){6&e.shapeFlag&&e.component?(e.transition=t,nv(e.component.subTree,t)):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ny(e,t=!1,n){let r=[],i=0;for(let l=0;l1)for(let e=0;enx(e,t&&(E(t)?t[l]:t),n,r,i));if(nP(r)&&!i){512&r.shapeFlag&&r.type.__asyncResolved&&r.component.subTree.component&&nx(e,t,n,r.component.subTree);return}let l=4&r.shapeFlag?iL(r.component):r.el,s=i?null:l,{i:o,r:a}=e,c=t&&t.r,u=o.refs===b?o.refs={}:o.refs,d=o.setupState,p=tg(d),h=d===b?x:e=>A(p,e);if(null!=c&&c!==a&&((nC(t),O(c))?(u[c]=null,h(c)&&(d[c]=null)):t_(c)&&(c.value=null,t.k&&(u[t.k]=null))),I(a))tD(a,o,12,[s,u]);else{let t=O(a),r=t_(a);if(t||r){let o=()=>{if(e.f){let n=t?h(a)?d[a]:u[a]:a.value;if(i)E(n)&&w(n,l);else if(E(n))n.includes(l)||n.push(l);else if(t)u[a]=[l],h(a)&&(d[a]=u[a]);else{let t=[l];a.value=t,e.k&&(u[e.k]=t)}}else t?(u[a]=s,h(a)&&(d[a]=s)):r&&(a.value=s,e.k&&(u[e.k]=s))};if(s){let t=()=>{o(),nS.delete(e)};t.id=-1,nS.set(e,t),rH(t,n)}else nC(e),o()}}}function nC(e){let t=nS.get(e);t&&(t.flags|=8,nS.delete(e))}let nk=!1,nT=()=>{nk||(console.error("Hydration completed but contains mismatches."),nk=!0)},nw=e=>{if(1===e.nodeType){if(e.namespaceURI.includes("svg")&&"foreignObject"!==e.tagName)return"svg";if(e.namespaceURI.includes("MathML"))return"mathml"}},nN=e=>8===e.nodeType;function nA(e){let{mt:t,p:n,o:{patchProp:r,createText:i,nextSibling:l,parentNode:s,remove:o,insert:a,createComment:c}}=e,u=(n,r,o,c,b,_=!1)=>{_=_||!!r.dynamicChildren;let S=nN(n)&&"["===n.data,x=()=>f(n,r,o,c,b,S),{type:C,ref:k,shapeFlag:T,patchFlag:w}=r,N=n.nodeType;r.el=n,-2===w&&(_=!1,r.dynamicChildren=null);let A=null;switch(C){case r4:3!==N?""===r.children?(a(r.el=i(""),s(n),n),A=n):A=x():(n.data!==r.children&&(nT(),n.data=r.children),A=l(n));break;case r8:y(n)?(A=l(n),g(r.el=n.content.firstChild,n,o)):A=8!==N||S?x():l(n);break;case r5:if(S&&(N=(n=l(n)).nodeType),1===N||3===N){A=n;let e=!r.children.length;for(let t=0;t{s=s||!!t.dynamicChildren;let{type:a,props:c,patchFlag:u,shapeFlag:d,dirs:h,transition:f}=t,m="input"===a||"option"===a;if(m||-1!==u){let a;h&&t3(t,null,n,"created");let b=!1;if(y(e)){b=rJ(null,f)&&n&&n.vnode.props&&n.vnode.props.appear;let r=e.content.firstChild;if(b){let e=r.getAttribute("class");e&&(r.$cls=e),f.beforeEnter(r)}g(r,e,n),t.el=e=r}if(16&d&&!(c&&(c.innerHTML||c.textContent))){let r=p(e.firstChild,t,e,n,i,l,s);for(;r;){nO(e,1)||nT();let t=r;r=r.nextSibling,o(t)}}else if(8&d){let n=t.children;` +`===n[0]&&("PRE"===e.tagName||"TEXTAREA"===e.tagName)&&(n=n.slice(1));let{textContent:r}=e;r!==n&&r!==n.replace(/\r\n|\r/g,` +`)&&(nO(e,0)||nT(),e.textContent=t.children)}if(c){if(m||!s||48&u){let t=e.tagName.includes("-");for(let i in c)(m&&(i.endsWith("value")||"indeterminate"===i)||C(i)&&!D(i)||"."===i[0]||t)&&r(e,i,null,c[i],void 0,n)}else if(c.onClick)r(e,"onClick",null,c.onClick,void 0,n);else if(4&u&&tp(c.style))for(let e in c.style)c.style[e]}(a=c&&c.onVnodeBeforeMount)&&iS(a,n,t),h&&t3(t,null,n,"beforeMount"),((a=c&&c.onVnodeMounted)||h||b)&&r2(()=>{a&&iS(a,n,t),b&&f.enter(e),h&&t3(t,null,n,"mounted")},i)}return e.nextSibling},p=(e,t,r,s,o,c,d)=>{d=d||!!t.dynamicChildren;let p=t.children,h=p.length;for(let t=0;t{let{slotScopeIds:u}=t;u&&(i=i?i.concat(u):u);let d=s(e),h=p(l(e),t,d,n,r,i,o);return h&&nN(h)&&"]"===h.data?l(t.anchor=h):(nT(),a(t.anchor=c("]"),d,h),h)},f=(e,t,r,i,a,c)=>{if(nO(e.parentElement,1)||nT(),t.el=null,c){let t=m(e);for(;;){let n=l(e);if(n&&n!==t)o(n);else break}}let u=l(e),d=s(e);return o(e),n(null,t,d,u,r,i,nw(d),a),r&&(r.vnode.el=t.el,rI(r,t.el)),u},m=(e,t="[",n="]")=>{let r=0;for(;e;)if((e=l(e))&&nN(e)&&(e.data===t&&r++,e.data===n))if(0===r)return l(e);else r--;return e},g=(e,t,n)=>{let r=t.parentNode;r&&r.replaceChild(e,t);let i=n;for(;i;)i.vnode.el===t&&(i.vnode.el=i.subTree.el=e),i=i.parent},y=e=>1===e.nodeType&&"TEMPLATE"===e.tagName;return[(e,t)=>{if(!t.hasChildNodes()){n(null,e,t),tZ(),t._vnode=e;return}u(t.firstChild,e,null,null,null),tZ(),t._vnode=e},u]}let nE="data-allow-mismatch",nI={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function nO(e,t){if(0===t||1===t)for(;e&&!e.hasAttribute(nE);)e=e.parentElement;let n=e&&e.getAttribute(nE);if(null==n)return!1;{if(""===n)return!0;let e=n.split(",");return!!(0===t&&e.includes("children"))||e.includes(nI[t])}}let nR=Q().requestIdleCallback||(e=>setTimeout(e,1)),nM=Q().cancelIdleCallback||(e=>clearTimeout(e)),nP=e=>!!e.type.__asyncLoader;function nL(e,t){let{ref:n,props:r,children:i,ce:l}=t.vnode,s=ip(e,r,i);return s.ref=n,s.ce=l,delete t.vnode.ce,s}let n$=e=>e.type.__isKeepAlive;function nD(e,t){let n;if(E(e))return e.some(e=>nD(e,t));if(O(e))return e.split(",").includes(t);return"[object RegExp]"===(n=e,L.call(n))&&(e.lastIndex=0,e.test(t))}function nF(e,t){nj(e,"a",t)}function nV(e,t){nj(e,"da",t)}function nj(e,t,n=ik){let r=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(nH(t,r,n),n){let e=n.parent;for(;e&&e.parent;)n$(e.parent.vnode)&&function(e,t,n,r){let i=nH(t,e,r,!0);nX(()=>{w(r[t],i)},n)}(r,t,n,e),e=e.parent}}function nB(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function nU(e){return 128&e.shapeFlag?e.ssContent:e}function nH(e,t,n=ik,r=!1){if(n){let i=n[e]||(n[e]=[]),l=t.__weh||(t.__weh=(...r)=>{eE();let i=iw(n),l=tF(t,n,e,r);return i(),eI(),l});return r?i.unshift(l):i.push(l),l}}let nq=e=>(t,n=ik)=>{iE&&"sp"!==e||nH(e,(...e)=>t(...e),n)},nW=nq("bm"),nK=nq("m"),nz=nq("bu"),nJ=nq("u"),nG=nq("bum"),nX=nq("um"),nQ=nq("sp"),nZ=nq("rtg"),nY=nq("rtc");function n0(e,t=ik){nH("ec",e,t)}let n1="components",n2=Symbol.for("v-ndc");function n6(e,t,n=!0,r=!1){let i=t0||ik;if(i){let n=i.type;if(e===n1){let e=i$(n,!1);if(e&&(e===t||e===B(t)||e===q(B(t))))return n}let l=n3(i[e]||n[e],t)||n3(i.appContext[e],t);return!l&&r?n:l}}function n3(e,t){return e&&(e[t]||e[B(t)]||e[q(B(t))])}let n4=e=>e?iA(e)?iL(e):n4(e.parent):null,n8=T(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=>n4(e.parent),$root:e=>n4(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>ri(e),$forceUpdate:e=>e.f||(e.f=()=>{tJ(e.update)}),$nextTick:e=>e.n||(e.n=tz.bind(e.proxy)),$watch:e=>r_.bind(e)}),n5=(e,t)=>e!==b&&!e.__isScriptSetup&&A(e,t),n9={get({_:e},t){let n,r;if("__v_skip"===t)return!0;let{ctx:i,setupState:l,data:s,props:o,accessCache:a,type:c,appContext:u}=e;if("$"!==t[0]){let e=a[t];if(void 0!==e)switch(e){case 1:return l[t];case 2:return s[t];case 4:return i[t];case 3:return o[t]}else{if(n5(l,t))return a[t]=1,l[t];if(s!==b&&A(s,t))return a[t]=2,s[t];if(A(o,t))return a[t]=3,o[t];if(i!==b&&A(i,t))return a[t]=4,i[t];rn&&(a[t]=0)}}let d=n8[t];return d?("$attrs"===t&&eV(e.attrs,"get",""),d(e)):(n=c.__cssModules)&&(n=n[t])?n:i!==b&&A(i,t)?(a[t]=4,i[t]):A(r=u.config.globalProperties,t)?r[t]:void 0},set({_:e},t,n){let{data:r,setupState:i,ctx:l}=e;return n5(i,t)?(i[t]=n,!0):r!==b&&A(r,t)?(r[t]=n,!0):!A(e.props,t)&&!("$"===t[0]&&t.slice(1)in e)&&(l[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:i,props:l,type:s}},o){let a;return!!(n[o]||e!==b&&"$"!==o[0]&&A(e,o)||n5(t,o)||A(l,o)||A(r,o)||A(n8,o)||A(i.config.globalProperties,o)||(a=s.__cssModules)&&a[o])},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:A(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},n7=T({},n9,{get(e,t){if(t!==Symbol.unscopables)return n9.get(e,t,e)},has:(e,t)=>"_"!==t[0]&&!Z(t)});function re(e){let t=iT();return t.setupContext||(t.setupContext=iP(t))}function rt(e){return E(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}let rn=!0;function rr(e,t,n){tF(E(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function ri(e){let t,n=e.type,{mixins:r,extends:i}=n,{mixins:l,optionsCache:s,config:{optionMergeStrategies:o}}=e.appContext,a=s.get(n);return a?t=a:l.length||r||i?(t={},l.length&&l.forEach(e=>rl(t,e,o,!0)),rl(t,n,o)):t=n,M(n)&&s.set(n,t),t}function rl(e,t,n,r=!1){let{mixins:i,extends:l}=t;for(let s in l&&rl(e,l,n,!0),i&&i.forEach(t=>rl(e,t,n,!0)),t)if(r&&"expose"===s);else{let r=rs[s]||n&&n[s];e[s]=r?r(e[s],t[s]):t[s]}return e}let rs={data:ro,props:rd,emits:rd,methods:ru,computed:ru,beforeCreate:rc,created:rc,beforeMount:rc,mounted:rc,beforeUpdate:rc,updated:rc,beforeDestroy:rc,beforeUnmount:rc,destroyed:rc,unmounted:rc,activated:rc,deactivated:rc,errorCaptured:rc,serverPrefetch:rc,components:ru,directives:ru,watch:function(e,t){if(!e)return t;if(!t)return e;let n=T(Object.create(null),e);for(let r in t)n[r]=rc(e[r],t[r]);return n},provide:ro,inject:function(e,t){return ru(ra(e),ra(t))}};function ro(e,t){return t?e?function(){return T(I(e)?e.call(this,this):e,I(t)?t.call(this,this):t)}:t:e}function ra(e){if(E(e)){let t={};for(let n=0;n1)return n&&I(t)?t.call(r&&r.proxy):t}}let rv=Symbol.for("v-scx");function ry(e,t){return rb(e,null,{flush:"sync"})}function rb(e,t,n=b){let{flush:r}=n,i=T({},n),s=ik;i.call=(e,t,n)=>tF(e,s,t,n);let o=!1;return"post"===r?i.scheduler=e=>{rH(e,s&&s.suspense)}:"sync"!==r&&(o=!0,i.scheduler=(e,t)=>{t?e():tJ(e)}),i.augmentJob=e=>{t&&(e.flags|=4),o&&(e.flags|=2,s&&(e.id=s.uid,e.i=s))},function(e,t,n=b){let r,i,s,o,{immediate:a,deep:c,once:u,scheduler:d,augmentJob:p,call:h}=n,f=e=>c?e:tf(e)||!1===c||0===c?t$(e,1):t$(e),g=!1,y=!1;if(t_(e)?(i=()=>e.value,g=tf(e)):tp(e)?(i=()=>f(e),g=!0):E(e)?(y=!0,g=e.some(e=>tp(e)||tf(e)),i=()=>e.map(e=>t_(e)?e.value:tp(e)?f(e):I(e)?h?h(e,2):e():void 0)):i=I(e)?t?h?()=>h(e,2):e:()=>{if(s){eE();try{s()}finally{eI()}}let t=m;m=r;try{return h?h(e,3,[o]):e(o)}finally{m=t}}:S,t&&c){let e=i,t=!0===c?1/0:c;i=()=>t$(e(),t)}let _=l,x=()=>{r.stop(),_&&_.active&&w(_.effects,r)};if(u&&t){let e=t;t=(...t)=>{e(...t),x()}}let C=y?Array(e.length).fill(tM):tM,k=e=>{if(1&r.flags&&(r.dirty||e))if(t){let e=r.run();if(c||g||(y?e.some((e,t)=>K(e,C[t])):K(e,C))){s&&s();let n=m;m=r;try{let n=[e,C===tM?void 0:y&&C[0]===tM?[]:C,o];C=e,h?h(t,3,n):t(...n)}finally{m=n}}}else r.run()};return p&&p(k),(r=new ey(i)).scheduler=d?()=>d(k,!1):k,o=e=>tL(e,!1,r),s=r.onStop=()=>{let e=tP.get(r);if(e){if(h)h(e,4);else for(let t of e)t();tP.delete(r)}},t?a?k(!0):C=r.run():d?d(k.bind(null,!0),!0):r.run(),x.pause=r.pause.bind(r),x.resume=r.resume.bind(r),x.stop=x,x}(e,t,i)}function r_(e,t,n){let r,i=this.proxy,l=O(e)?e.includes(".")?rS(i,e):()=>i[e]:e.bind(i,i);I(t)?r=t:(r=t.handler,n=t);let s=iw(this),o=rb(l,r.bind(i),n);return s(),o}function rS(e,t){let n=t.split(".");return()=>{let t=e;for(let e=0;e"modelValue"===t||"model-value"===t?e.modelModifiers:e[`${t}Modifiers`]||e[`${B(t)}Modifiers`]||e[`${H(t)}Modifiers`];function rC(e,t,...n){let r;if(e.isUnmounted)return;let i=e.vnode.props||b,l=n,s=t.startsWith("update:"),o=s&&rx(i,t.slice(7));o&&(o.trim&&(l=n.map(e=>O(e)?e.trim():e)),o.number&&(l=n.map(G)));let a=i[r=W(t)]||i[r=W(B(t))];!a&&s&&(a=i[r=W(H(t))]),a&&tF(a,e,6,l);let c=i[r+"Once"];if(c){if(e.emitted){if(e.emitted[r])return}else e.emitted={};e.emitted[r]=!0,tF(c,e,6,l)}}let rk=new WeakMap;function rT(e,t){return!!e&&!!C(t)&&(A(e,(t=t.slice(2).replace(/Once$/,""))[0].toLowerCase()+t.slice(1))||A(e,H(t))||A(e,t))}function rw(e){let t,n,{type:r,vnode:i,proxy:l,withProxy:s,propsOptions:[o],slots:a,attrs:c,emit:u,render:d,renderCache:p,props:h,data:f,setupState:m,ctx:g,inheritAttrs:y}=e,b=t2(e);try{if(4&i.shapeFlag){let e=s||l;t=iv(d.call(e,e,p,h,m,f,g)),n=c}else t=iv(r.length>1?r(h,{attrs:c,slots:a,emit:u}):r(h,null)),n=r.props?c:rN(c)}catch(n){r9.length=0,tV(n,e,1),t=ip(r8)}let _=t;if(n&&!1!==y){let e=Object.keys(n),{shapeFlag:t}=_;e.length&&7&t&&(o&&e.some(k)&&(n=rA(n,o)),_=im(_,n,!1,!0))}return i.dirs&&((_=im(_,null,!1,!0)).dirs=_.dirs?_.dirs.concat(i.dirs):i.dirs),i.transition&&nv(_,i.transition),t=_,t2(b),t}let rN=e=>{let t;for(let n in e)("class"===n||"style"===n||C(n))&&((t||(t={}))[n]=e[n]);return t},rA=(e,t)=>{let n={};for(let r in e)k(r)&&r.slice(9)in t||(n[r]=e[r]);return n};function rE(e,t,n){let r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let i=0;iObject.getPrototypeOf(e)===rO;function rM(e,t,n,r){let i,[l,s]=e.propsOptions,o=!1;if(t)for(let a in t){let c;if(D(a))continue;let u=t[a];l&&A(l,c=B(a))?s&&s.includes(c)?(i||(i={}))[c]=u:n[c]=u:rT(e.emitsOptions,a)||a in r&&u===r[a]||(r[a]=u,o=!0)}if(s){let t=tg(n),r=i||b;for(let i=0;i"_"===e||"_ctx"===e||"$stable"===e,rF=e=>E(e)?e.map(iv):[iv(e)],rV=(e,t,n)=>{if(t._n)return t;let r=t6((...e)=>rF(t(...e)),n);return r._c=!1,r},rj=(e,t,n)=>{let r=e._ctx;for(let n in e){if(rD(n))continue;let i=e[n];if(I(i))t[n]=rV(n,i,r);else if(null!=i){let e=rF(i);t[n]=()=>e}}},rB=(e,t)=>{let n=rF(t);e.slots.default=()=>n},rU=(e,t,n)=>{for(let r in t)(n||!rD(r))&&(e[r]=t[r])},rH=r2;function rq(e){return rW(e,nA)}function rW(e,t){var n;let r,i;Q().__VUE__=!0;let{insert:l,remove:s,patchProp:o,createElement:a,createText:c,createComment:d,setText:p,setElementText:h,parentNode:f,nextSibling:m,setScopeId:g=S,insertStaticContent:y}=e,x=(e,t,n,r=null,i=null,l=null,s,o=null,a=!!t.dynamicChildren)=>{if(e===t)return;e&&!ia(e,t)&&(r=es(e),et(e,i,l,!0),e=null),-2===t.patchFlag&&(a=!1,t.dynamicChildren=null);let{type:c,ref:u,shapeFlag:d}=t;switch(c){case r4:C(e,t,n,r);break;case r8:k(e,t,n,r);break;case r5:null==e&&w(t,n,r,s);break;case r3:j(e,t,n,r,i,l,s,o,a);break;default:1&d?N(e,t,n,r,i,l,s,o,a):6&d?U(e,t,n,r,i,l,s,o,a):64&d?c.process(e,t,n,r,i,l,s,o,a,ec):128&d&&c.process(e,t,n,r,i,l,s,o,a,ec)}null!=u&&i?nx(u,e&&e.ref,l,t||e,!t):null==u&&e&&null!=e.ref&&nx(e.ref,null,l,e,!0)},C=(e,t,n,r)=>{if(null==e)l(t.el=c(t.children),n,r);else{let n=t.el=e.el;t.children!==e.children&&p(n,t.children)}},k=(e,t,n,r)=>{null==e?l(t.el=d(t.children||""),n,r):t.el=e.el},w=(e,t,n,r)=>{[e.el,e.anchor]=y(e.children,t,n,r,e.el,e.anchor)},N=(e,t,n,r,i,l,s,o,a)=>{if("svg"===t.type?s="svg":"math"===t.type&&(s="mathml"),null==e)O(t,n,r,i,l,s,o,a);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),$(e,t,i,l,s,o,a)}finally{n&&n._endPatch()}}},O=(e,t,n,r,i,s,c,u)=>{let d,p,{props:f,shapeFlag:m,transition:g,dirs:y}=e;if(d=e.el=a(e.type,s,f&&f.is,f),8&m?h(d,e.children):16&m&&L(e.children,d,null,r,i,rK(e,s),c,u),y&&t3(e,null,r,"created"),R(d,e,e.scopeId,c,r),f){for(let e in f)"value"===e||D(e)||o(d,e,null,f[e],s,r);"value"in f&&o(d,"value",null,f.value,s),(p=f.onVnodeBeforeMount)&&iS(p,r,e)}y&&t3(e,null,r,"beforeMount");let b=rJ(i,g);b&&g.beforeEnter(d),l(d,t,n),((p=f&&f.onVnodeMounted)||b||y)&&rH(()=>{p&&iS(p,r,e),b&&g.enter(d),y&&t3(e,null,r,"mounted")},i)},R=(e,t,n,r,i)=>{if(n&&g(e,n),r)for(let t=0;t{for(let c=a;c{let a,c=t.el=e.el,{patchFlag:u,dynamicChildren:d,dirs:p}=t;u|=16&e.patchFlag;let f=e.props||b,m=t.props||b;if(n&&rz(n,!1),(a=m.onVnodeBeforeUpdate)&&iS(a,n,t,e),p&&t3(t,e,n,"beforeUpdate"),n&&rz(n,!0),(f.innerHTML&&null==m.innerHTML||f.textContent&&null==m.textContent)&&h(c,""),d?F(e.dynamicChildren,d,c,n,r,rK(t,i),l):s||X(e,t,c,null,n,r,rK(t,i),l,!1),u>0){if(16&u)V(c,f,m,n,i);else if(2&u&&f.class!==m.class&&o(c,"class",null,m.class,i),4&u&&o(c,"style",f.style,m.style,i),8&u){let e=t.dynamicProps;for(let t=0;t{a&&iS(a,n,t,e),p&&t3(t,e,n,"updated")},r)},F=(e,t,n,r,i,l,s)=>{for(let o=0;o{if(t!==n){if(t!==b)for(let l in t)D(l)||l in n||o(e,l,t[l],null,i,r);for(let l in n){if(D(l))continue;let s=n[l],a=t[l];s!==a&&"value"!==l&&o(e,l,a,s,i,r)}"value"in n&&o(e,"value",t.value,n.value,i)}},j=(e,t,n,r,i,s,o,a,u)=>{let d=t.el=e?e.el:c(""),p=t.anchor=e?e.anchor:c(""),{patchFlag:h,dynamicChildren:f,slotScopeIds:m}=t;m&&(a=a?a.concat(m):m),null==e?(l(d,n,r),l(p,n,r),L(t.children||[],n,p,i,s,o,a,u)):h>0&&64&h&&f&&e.dynamicChildren?(F(e.dynamicChildren,f,n,i,s,o,a),(null!=t.key||i&&t===i.subTree)&&rG(e,t,!0)):X(e,t,n,p,i,s,o,a,u)},U=(e,t,n,r,i,l,s,o,a)=>{t.slotScopeIds=o,null==e?512&t.shapeFlag?i.ctx.activate(t,n,r,s,a):q(t,n,r,i,l,s,a):W(e,t,a)},q=(e,t,n,r,i,l,s)=>{var o,a,c;let d,p,h,f=(o=e,a=r,c=i,d=o.type,p=(a?a.appContext:o.appContext)||ix,(h={uid:iC++,vnode:o,type:d,parent:a,appContext:p,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new eg(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:a?a.provides:Object.create(p.provides),ids:a?a.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:function e(t,n,r=!1){let i=r?rL:n.propsCache,l=i.get(t);if(l)return l;let s=t.props,o={},a=[],c=!1;if(!I(t)){let i=t=>{c=!0;let[r,i]=e(t,n,!0);T(o,r),i&&a.push(...i)};!r&&n.mixins.length&&n.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}if(!s&&!c)return M(t)&&i.set(t,_),_;if(E(s))for(let e=0;e{let r=e(t,n,!0);r&&(a=!0,T(o,r))};!r&&n.mixins.length&&n.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}return s||a?(E(s)?s.forEach(e=>o[e]=null):T(o,s),M(t)&&i.set(t,o),o):(M(t)&&i.set(t,null),null)}(d,p),emit:null,emitted:null,propsDefaults:b,inheritAttrs:d.inheritAttrs,ctx:b,data:b,props:b,attrs:b,slots:b,refs:b,setupState:b,setupContext:null,suspense:c,suspenseId:c?c.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null}).ctx={_:h},h.root=a?a.root:h,h.emit=rC.bind(null,h),o.ce&&o.ce(h),e.component=h);if(n$(e)&&(f.ctx.renderer=ec),function(e,t=!1,n=!1){t&&u(t);let{props:r,children:i}=e.vnode,l=iA(e);!function(e,t,n,r=!1){let i={},l=Object.create(rO);for(let n in e.propsDefaults=Object.create(null),rM(e,t,i,l),e.propsOptions[0])n in i||(i[n]=void 0);n?e.props=r?i:tc(i):e.type.props?e.props=i:e.props=l,e.attrs=l}(e,r,l,t);var s=n||t;let o=e.slots=Object.create(rO);if(32&e.vnode.shapeFlag){let e=i._;e?(rU(o,i,s),s&&J(o,"_",e,!0)):rj(i,o)}else i&&rB(e,i);l&&function(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,n9);let{setup:r}=n;if(r){eE();let n=e.setupContext=r.length>1?iP(e):null,i=iw(e),l=tD(r,e,0,[e.props,n]),s=P(l);if(eI(),i(),(s||e.sp)&&!nP(e)&&n_(e),s){if(l.then(iN,iN),t)return l.then(n=>{iI(e,n,t)}).catch(t=>{tV(t,e,0)});e.asyncDep=l}else iI(e,l,t)}else iR(e,t)}(e,t),t&&u(!1)}(f,!1,s),f.asyncDep){if(i&&i.registerDep(f,K,s),!e.el){let r=f.subTree=ip(r8);k(null,r,t,n),e.placeholder=r.el}}else K(f,e,t,n,i,l,s)},W=(e,t,n)=>{let r=t.component=e.component;if(function(e,t,n){let{props:r,children:i,component:l}=e,{props:s,children:o,patchFlag:a}=t,c=l.emitsOptions;if(t.dirs||t.transition)return!0;if(!n||!(a>=0))return(!!i||!!o)&&(!o||!o.$stable)||r!==s&&(r?!s||rE(r,s,c):!!s);if(1024&a)return!0;if(16&a)return r?rE(r,s,c):!!s;if(8&a){let e=t.dynamicProps;for(let t=0;t{let a=()=>{if(e.isMounted){let t,{next:n,bu:r,u:i,parent:c,vnode:u}=e;{let t=function e(t){let n=t.subTree.component;if(n)if(n.asyncDep&&!n.asyncResolved)return n;else return e(n)}(e);if(t){n&&(n.el=u.el,G(e,n,o)),t.asyncDep.then(()=>{e.isUnmounted||a()});return}}let d=n;rz(e,!1),n?(n.el=u.el,G(e,n,o)):n=u,r&&z(r),(t=n.props&&n.props.onVnodeBeforeUpdate)&&iS(t,c,n,u),rz(e,!0);let p=rw(e),h=e.subTree;e.subTree=p,x(h,p,f(h.el),es(h),e,l,s),n.el=p.el,null===d&&rI(e,p.el),i&&rH(i,l),(t=n.props&&n.props.onVnodeUpdated)&&rH(()=>iS(t,c,n,u),l)}else{let o,{el:a,props:c}=t,{bm:u,m:d,parent:p,root:h,type:f}=e,m=nP(t);if(rz(e,!1),u&&z(u),!m&&(o=c&&c.onVnodeBeforeMount)&&iS(o,p,t),rz(e,!0),a&&i){let t=()=>{e.subTree=rw(e),i(a,e.subTree,e,l,null)};m&&f.__asyncHydrate?f.__asyncHydrate(a,e,t):t()}else{h.ce&&!1!==h.ce._def.shadowRoot&&h.ce._injectChildStyle(f);let i=e.subTree=rw(e);x(null,i,n,r,e,l,s),t.el=i.el}if(d&&rH(d,l),!m&&(o=c&&c.onVnodeMounted)){let e=t;rH(()=>iS(o,p,e),l)}(256&t.shapeFlag||p&&nP(p.vnode)&&256&p.vnode.shapeFlag)&&e.a&&rH(e.a,l),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new ey(a);e.scope.off();let u=e.update=c.run.bind(c),d=e.job=c.runIfDirty.bind(c);d.i=e,d.id=e.uid,c.scheduler=()=>tJ(d),rz(e,!0),u()},G=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,r){let{props:i,attrs:l,vnode:{patchFlag:s}}=e,o=tg(i),[a]=e.propsOptions,c=!1;if((r||s>0)&&!(16&s)){if(8&s){let n=e.vnode.dynamicProps;for(let r=0;r{let{vnode:r,slots:i}=e,l=!0,s=b;if(32&r.shapeFlag){let e=t._;e?n&&1===e?l=!1:rU(i,t,n):(l=!t.$stable,rj(t,i)),s=t}else t&&(rB(e,t),s={default:1});if(l)for(let e in i)rD(e)||null!=s[e]||delete i[e]})(e,t.children,n),eE(),tQ(e),eI()},X=(e,t,n,r,i,l,s,o,a=!1)=>{let c=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:p,shapeFlag:f}=t;if(p>0){if(128&p)return void Y(c,d,n,r,i,l,s,o,a);else if(256&p)return void Z(c,d,n,r,i,l,s,o,a)}8&f?(16&u&&el(c,i,l),d!==c&&h(n,d)):16&u?16&f?Y(c,d,n,r,i,l,s,o,a):el(c,i,l,!0):(8&u&&h(n,""),16&f&&L(d,n,r,i,l,s,o,a))},Z=(e,t,n,r,i,l,s,o,a)=>{let c;e=e||_,t=t||_;let u=e.length,d=t.length,p=Math.min(u,d);for(c=0;cd?el(e,i,l,!0,!1,p):L(t,n,r,i,l,s,o,a,p)},Y=(e,t,n,r,i,l,s,o,a)=>{let c=0,u=t.length,d=e.length-1,p=u-1;for(;c<=d&&c<=p;){let r=e[c],u=t[c]=a?iy(t[c]):iv(t[c]);if(ia(r,u))x(r,u,n,null,i,l,s,o,a);else break;c++}for(;c<=d&&c<=p;){let r=e[d],c=t[p]=a?iy(t[p]):iv(t[p]);if(ia(r,c))x(r,c,n,null,i,l,s,o,a);else break;d--,p--}if(c>d){if(c<=p){let e=p+1,d=ep)for(;c<=d;)et(e[c],i,l,!0),c++;else{let h,f=c,m=c,g=new Map;for(c=m;c<=p;c++){let e=t[c]=a?iy(t[c]):iv(t[c]);null!=e.key&&g.set(e.key,c)}let y=0,b=p-m+1,S=!1,C=0,k=Array(b);for(c=0;c=b){et(u,i,l,!0);continue}if(null!=u.key)r=g.get(u.key);else for(h=m;h<=p;h++)if(0===k[h-m]&&ia(u,t[h])){r=h;break}void 0===r?et(u,i,l,!0):(k[r-m]=c+1,r>=C?C=r:S=!0,x(u,t[r],n,null,i,l,s,o,a),y++)}let T=S?function(e){let t,n,r,i,l,s=e.slice(),o=[0],a=e.length;for(t=0;t>1]]0&&(s[t]=o[r-1]),o[r]=t)}}for(r=o.length,i=o[r-1];r-- >0;)o[r]=i,i=s[i];return o}(k):_;for(h=T.length-1,c=b-1;c>=0;c--){let e=m+c,d=t[e],p=t[e+1],f=e+1{let{el:o,type:a,transition:c,children:u,shapeFlag:d}=e;if(6&d)return void ee(e.component.subTree,t,n,r);if(128&d)return void e.suspense.move(t,n,r);if(64&d)return void a.move(e,t,n,ec);if(a===r3){l(o,t,n);for(let e=0;e{let i;for(;e&&e!==t;)i=m(e),l(e,n,r),e=i;l(t,n,r)})(e,t,n);if(2!==r&&1&d&&c)if(0===r)c.beforeEnter(o),l(o,t,n),rH(()=>c.enter(o),i);else{let{leave:r,delayLeave:i,afterLeave:a}=c,u=()=>{e.ctx.isUnmounted?s(o):l(o,t,n)},d=()=>{o._isLeaving&&o[nl](!0),r(o,()=>{u(),a&&a()})};i?i(o,u,d):d()}else l(o,t,n)},et=(e,t,n,r=!1,i=!1)=>{let l,{type:s,props:o,ref:a,children:c,dynamicChildren:u,shapeFlag:d,patchFlag:p,dirs:h,cacheIndex:f}=e;if(-2===p&&(i=!1),null!=a&&(eE(),nx(a,null,n,e,!0),eI()),null!=f&&(t.renderCache[f]=void 0),256&d)return void t.ctx.deactivate(e);let m=1&d&&h,g=!nP(e);if(g&&(l=o&&o.onVnodeBeforeUnmount)&&iS(l,t,e),6&d)ei(e.component,n,r);else{if(128&d)return void e.suspense.unmount(n,r);m&&t3(e,null,t,"beforeUnmount"),64&d?e.type.remove(e,t,n,ec,r):u&&!u.hasOnce&&(s!==r3||p>0&&64&p)?el(u,t,n,!1,!0):(s===r3&&384&p||!i&&16&d)&&el(c,t,n),r&&en(e)}(g&&(l=o&&o.onVnodeUnmounted)||m)&&rH(()=>{l&&iS(l,t,e),m&&t3(e,null,t,"unmounted")},n)},en=e=>{let{type:t,el:n,anchor:r,transition:i}=e;if(t===r3)return void er(n,r);if(t===r5)return void(({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=m(e),s(e),e=n;s(t)})(e);let l=()=>{s(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(1&e.shapeFlag&&i&&!i.persisted){let{leave:t,delayLeave:r}=i,s=()=>t(n,l);r?r(e.el,l,s):s()}else l()},er=(e,t)=>{let n;for(;e!==t;)n=m(e),s(e),e=n;s(t)},ei=(e,t,n)=>{let{bum:r,scope:i,job:l,subTree:s,um:o,m:a,a:c}=e;rX(a),rX(c),r&&z(r),i.stop(),l&&(l.flags|=8,et(s,e,t,n)),o&&rH(o,t),rH(()=>{e.isUnmounted=!0},t)},el=(e,t,n,r=!1,i=!1,l=0)=>{for(let s=l;s{if(6&e.shapeFlag)return es(e.component.subTree);if(128&e.shapeFlag)return e.suspense.next();let t=m(e.anchor||e.el),n=t&&t[t4];return n?m(n):t},eo=!1,ea=(e,t,n)=>{null==e?t._vnode&&et(t._vnode,null,null,!0):x(t._vnode||null,e,t,null,null,null,n),t._vnode=e,eo||(eo=!0,tQ(),tZ(),eo=!1)},ec={p:x,um:et,m:ee,r:en,mt:q,mc:L,pc:X,pbc:F,n:es,o:e};return t&&([r,i]=t(ec)),{render:ea,hydrate:r,createApp:(n=r,function(e,t=null){I(e)||(e=T({},e)),null==t||M(t)||(t=null);let r=rp(),i=new WeakSet,l=[],s=!1,o=r.app={_uid:rh++,_component:e,_props:t,_container:null,_context:r,_instance:null,version:ij,get config(){return r.config},set config(v){},use:(e,...t)=>(i.has(e)||(e&&I(e.install)?(i.add(e),e.install(o,...t)):I(e)&&(i.add(e),e(o,...t))),o),mixin:e=>(r.mixins.includes(e)||r.mixins.push(e),o),component:(e,t)=>t?(r.components[e]=t,o):r.components[e],directive:(e,t)=>t?(r.directives[e]=t,o):r.directives[e],mount(i,l,a){if(!s){let c=o._ceVNode||ip(e,t);return c.appContext=r,!0===a?a="svg":!1===a&&(a=void 0),l&&n?n(c,i):ea(c,i,a),s=!0,o._container=i,i.__vue_app__=o,iL(c.component)}},onUnmount(e){l.push(e)},unmount(){s&&(tF(l,o._instance,16),ea(null,o._container),delete o._container.__vue_app__)},provide:(e,t)=>(r.provides[e]=t,o),runWithContext(e){let t=rf;rf=o;try{return e()}finally{rf=t}}};return o})}}function rK({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function rz({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function rJ(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function rG(e,t,n=!1){let r=e.children,i=t.children;if(E(r)&&E(i))for(let e=0;ee.__isSuspense,rZ=0;function rY(e,t){let n=e.props&&e.props[t];I(n)&&n()}function r0(e,t,n,r,i,l,s,o,a,c,u=!1){var d;let p,h,{p:f,m:m,um:g,n:y,o:{parentNode:b,remove:_}}=c,S=null!=(p=(d=e).props&&d.props.suspensible)&&!1!==p;S&&t&&t.pendingBranch&&(h=t.pendingId,t.deps++);let x=e.props?X(e.props.timeout):void 0,C=l,k={vnode:e,parent:t,parentComponent:n,namespace:s,container:r,hiddenContainer:i,deps:0,pendingId:rZ++,timeout:"number"==typeof x?x:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){let{vnode:r,activeBranch:i,pendingBranch:s,pendingId:o,effects:a,parentComponent:c,container:u,isInFallback:d}=k,p=!1;k.isHydrating?k.isHydrating=!1:!e&&((p=i&&s.transition&&"out-in"===s.transition.mode)&&(i.transition.afterLeave=()=>{o===k.pendingId&&(m(s,u,l===C?y(i):l,0),tX(a),d&&r.ssFallback&&(r.ssFallback.el=null))}),i&&(b(i.el)===u&&(l=y(i)),g(i,c,k,!0),!p&&d&&r.ssFallback&&rH(()=>r.ssFallback.el=null,k)),p||m(s,u,l,0)),r6(k,s),k.pendingBranch=null,k.isInFallback=!1;let f=k.parent,_=!1;for(;f;){if(f.pendingBranch){f.effects.push(...a),_=!0;break}f=f.parent}_||p||tX(a),k.effects=[],S&&t&&t.pendingBranch&&h===t.pendingId&&(t.deps--,0!==t.deps||n||t.resolve()),rY(r,"onResolve")},fallback(e){if(!k.pendingBranch)return;let{vnode:t,activeBranch:n,parentComponent:r,container:i,namespace:l}=k;rY(t,"onFallback");let s=y(n),c=()=>{k.isInFallback&&(f(null,e,i,s,r,null,l,o,a),r6(k,e))},u=e.transition&&"out-in"===e.transition.mode;u&&(n.transition.afterLeave=c),k.isInFallback=!0,g(n,r,null,!0),u||c()},move(e,t,n){k.activeBranch&&m(k.activeBranch,e,t,n),k.container=e},next:()=>k.activeBranch&&y(k.activeBranch),registerDep(e,t,n){let r=!!k.pendingBranch;r&&k.deps++;let i=e.vnode.el;e.asyncDep.catch(t=>{tV(t,e,0)}).then(l=>{if(e.isUnmounted||k.isUnmounted||k.pendingId!==e.suspenseId)return;e.asyncResolved=!0;let{vnode:o}=e;iI(e,l,!1),i&&(o.el=i);let a=!i&&e.subTree.el;t(e,o,b(i||e.subTree.el),i?null:y(e.subTree),k,s,n),a&&(o.placeholder=null,_(a)),rI(e,o.el),r&&0==--k.deps&&k.resolve()})},unmount(e,t){k.isUnmounted=!0,k.activeBranch&&g(k.activeBranch,n,e,t),k.pendingBranch&&g(k.pendingBranch,n,e,t)}};return k}function r1(e){let t;if(I(e)){let n=ir&&e._c;n&&(e._d=!1,ie()),e=e(),n&&(e._d=!0,t=r7,it())}return E(e)&&(e=function(e,t=!0){let n;for(let t=0;tt!==e)),e}function r2(e,t){t&&t.pendingBranch?E(e)?t.effects.push(...e):t.effects.push(e):tX(e)}function r6(e,t){e.activeBranch=t;let{vnode:n,parentComponent:r}=e,i=t.el;for(;!i&&t.component;)i=(t=t.component.subTree).el;n.el=i,r&&r.subTree===n&&(r.vnode.el=i,rI(r,i))}let r3=Symbol.for("v-fgt"),r4=Symbol.for("v-txt"),r8=Symbol.for("v-cmt"),r5=Symbol.for("v-stc"),r9=[],r7=null;function ie(e=!1){r9.push(r7=e?null:[])}function it(){r9.pop(),r7=r9[r9.length-1]||null}let ir=1;function ii(e,t=!1){ir+=e,e<0&&r7&&t&&(r7.hasOnce=!0)}function il(e){return e.dynamicChildren=ir>0?r7||_:null,it(),ir>0&&r7&&r7.push(e),e}function is(e,t,n,r,i){return il(ip(e,t,n,r,i,!0))}function io(e){return!!e&&!0===e.__v_isVNode}function ia(e,t){return e.type===t.type&&e.key===t.key}let ic=({key:e})=>null!=e?e:null,iu=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?O(e)||t_(e)||I(e)?{i:t0,r:e,k:t,f:!!n}:e:null);function id(e,t=null,n=null,r=0,i=null,l=+(e!==r3),s=!1,o=!1){let a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ic(t),ref:t&&iu(t),scopeId:t1,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:l,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:t0};return o?(ib(a,n),128&l&&e.normalize(a)):n&&(a.shapeFlag|=O(n)?8:16),ir>0&&!s&&r7&&(a.patchFlag>0||6&l)&&32!==a.patchFlag&&r7.push(a),a}let ip=function(e,t=null,n=null,r=0,i=null,l=!1){var s;if(e&&e!==n2||(e=r8),io(e)){let r=im(e,t,!0);return n&&ib(r,n),ir>0&&!l&&r7&&(6&r.shapeFlag?r7[r7.indexOf(e)]=r:r7.push(r)),r.patchFlag=-2,r}if(I(s=e)&&"__vccOpts"in s&&(e=e.__vccOpts),t){let{class:e,style:n}=t=ih(t);e&&!O(e)&&(t.class=ei(e)),M(n)&&(tm(n)&&!E(n)&&(n=T({},n)),t.style=Y(n))}let o=O(e)?1:rQ(e)?128:e.__isTeleport?64:M(e)?4:2*!!I(e);return id(e,t,n,r,i,o,l,!0)};function ih(e){return e?tm(e)||rR(e)?T({},e):e:null}function im(e,t,n=!1,r=!1){let{props:i,ref:l,patchFlag:s,children:o,transition:a}=e,c=t?i_(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&ic(c),ref:t&&t.ref?n&&l?E(l)?l.concat(iu(t)):[l,iu(t)]:iu(t):l,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:o,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==r3?-1===s?16:16|s:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&im(e.ssContent),ssFallback:e.ssFallback&&im(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&r&&nv(u,a.clone(u)),u}function ig(e=" ",t=0){return ip(r4,null,e,t)}function iv(e){return null==e||"boolean"==typeof e?ip(r8):E(e)?ip(r3,null,e.slice()):io(e)?iy(e):ip(r4,null,String(e))}function iy(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:im(e)}function ib(e,t){let n=0,{shapeFlag:r}=e;if(null==t)t=null;else if(E(t))n=16;else if("object"==typeof t)if(65&r){let n=t.default;n&&(n._c&&(n._d=!1),ib(e,n()),n._c&&(n._d=!0));return}else{n=32;let r=t._;r||rR(t)?3===r&&t0&&(1===t0.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=t0}else I(t)?(t={default:t,_ctx:t0},n=32):(t=String(t),64&r?(n=16,t=[ig(t)]):n=8);e.children=t,e.shapeFlag|=n}function i_(...e){let t={};for(let n=0;nik||t0;c=e=>{ik=e},u=e=>{iE=e};let iw=e=>{let t=ik;return c(e),e.scope.on(),()=>{e.scope.off(),c(t)}},iN=()=>{ik&&ik.scope.off(),c(null)};function iA(e){return 4&e.vnode.shapeFlag}let iE=!1;function iI(e,t,n){I(t)?e.render=t:M(t)&&(e.setupState=tN(t)),iR(e,n)}function iO(e){d=e,p=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,n7))}}function iR(e,t,n){let r=e.type;if(!e.render){if(!t&&d&&!r.render){let t=r.template||ri(e).template;if(t){let{isCustomElement:n,compilerOptions:i}=e.appContext.config,{delimiters:l,compilerOptions:s}=r,o=T(T({isCustomElement:n,delimiters:l},i),s);r.render=d(t,o)}}e.render=r.render||S,p&&p(e)}{let t=iw(e);eE();try{!function(e){let t=ri(e),n=e.proxy,r=e.ctx;rn=!1,t.beforeCreate&&rr(t.beforeCreate,e,"bc");let{data:i,computed:l,methods:s,watch:o,provide:a,inject:c,created:u,beforeMount:d,mounted:p,beforeUpdate:h,updated:f,activated:m,deactivated:g,beforeUnmount:y,unmounted:b,render:_,renderTracked:x,renderTriggered:C,errorCaptured:k,serverPrefetch:T,expose:w,inheritAttrs:N,components:A,directives:R}=t;if(c&&function(e,t,n=S){for(let n in E(e)&&(e=ra(e)),e){let r,i=e[n];t_(r=M(i)?"default"in i?rg(i.from||n,i.default,!0):rg(i.from||n):rg(i))?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:e=>r.value=e}):t[n]=r}}(c,r,null),s)for(let e in s){let t=s[e];I(t)&&(r[e]=t.bind(n))}if(i){let t=i.call(n,n);M(t)&&(e.data=ta(t))}if(rn=!0,l)for(let e in l){let t=l[e],i=I(t)?t.bind(n,n):I(t.get)?t.get.bind(n,n):S,s=iD({get:i,set:!I(t)&&I(t.set)?t.set.bind(n):S});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>s.value,set:e=>s.value=e})}if(o)for(let e in o)!function e(t,n,r,i){var l,s,o,a,c,u,d;let p=i.includes(".")?rS(r,i):()=>r[i];if(O(t)){let e=n[t];I(e)&&(l=p,s=e,rb(l,s,void 0))}else if(I(t)){o=p,a=t.bind(r),rb(o,a,void 0)}else if(M(t))if(E(t))t.forEach(t=>e(t,n,r,i));else{let e=I(t.handler)?t.handler.bind(r):n[t.handler];I(e)&&(c=p,u=e,d=t,rb(c,u,d))}}(o[e],r,n,e);if(a){let e=I(a)?a.call(n):a;Reflect.ownKeys(e).forEach(t=>{rm(t,e[t])})}function P(e,t){E(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(u&&rr(u,e,"c"),P(nW,d),P(nK,p),P(nz,h),P(nJ,f),P(nF,m),P(nV,g),P(n0,k),P(nY,x),P(nZ,C),P(nG,y),P(nX,b),P(nQ,T),E(w))if(w.length){let t=e.exposed||(e.exposed={});w.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||(e.exposed={});_&&e.render===S&&(e.render=_),null!=N&&(e.inheritAttrs=N),A&&(e.components=A),R&&(e.directives=R)}(e)}finally{eI(),t()}}}let iM={get:(e,t)=>(eV(e,"get",""),e[t])};function iP(e){return{attrs:new Proxy(e.attrs,iM),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function iL(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(tN(tv(e.exposed)),{get:(t,n)=>n in t?t[n]:n in n8?n8[n](e):void 0,has:(e,t)=>t in e||t in n8})):e.proxy}function i$(e,t=!0){return I(e)?e.displayName||e.name:e.name||t&&e.__name}let iD=(e,t)=>(function(e,t,n=!1){let r,i;return I(e)?r=e:(r=e.get,i=e.set),new tR(r,i,n)})(e,0,iE);function iF(e,t,n){try{ii(-1);let r=arguments.length;if(2!==r)return r>3?n=Array.prototype.slice.call(arguments,2):3===r&&io(n)&&(n=[n]),ip(e,t,n);if(!M(t)||E(t))return ip(e,null,t);if(io(t))return ip(e,null,[t]);return ip(e,t)}finally{ii(1)}}function iV(e,t){let n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&r7&&r7.push(e),!0}let ij="3.5.25",iB="undefined"!=typeof window&&window.trustedTypes;if(iB)try{g=iB.createPolicy("vue",{createHTML:e=>e})}catch(e){}let iU=g?e=>g.createHTML(e):e=>e,iH="undefined"!=typeof document?document:null,iq=iH&&iH.createElement("template"),iW={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i="svg"===t?iH.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?iH.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?iH.createElement(e,{is:n}):iH.createElement(e);return"select"===e&&r&&null!=r.multiple&&i.setAttribute("multiple",r.multiple),i},createText:e=>iH.createTextNode(e),createComment:e=>iH.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>iH.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,i,l){let s=n?n.previousSibling:t.lastChild;if(i&&(i===l||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),i!==l&&(i=i.nextSibling););else{iq.innerHTML=iU("svg"===r?`${e}`:"mathml"===r?`${e}`:e);let i=iq.content;if("svg"===r||"mathml"===r){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[s?s.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},iK="transition",iz="animation",iJ=Symbol("_vtc"),iG={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},iX=T({},nc,iG),iQ=((t=(e,{slots:t})=>iF(np,i0(e),t)).displayName="Transition",t.props=iX,t),iZ=(e,t=[])=>{E(e)?e.forEach(e=>e(...t)):e&&e(...t)},iY=e=>!!e&&(E(e)?e.some(e=>e.length>1):e.length>1);function i0(e){let t={};for(let n in e)n in iG||(t[n]=e[n]);if(!1===e.css)return t;let{name:n="v",type:r,duration:i,enterFromClass:l=`${n}-enter-from`,enterActiveClass:s=`${n}-enter-active`,enterToClass:o=`${n}-enter-to`,appearFromClass:a=l,appearActiveClass:c=s,appearToClass:u=o,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,f=function(e){if(null==e)return null;{if(M(e))return[function(e){return X(e)}(e.enter),function(e){return X(e)}(e.leave)];let t=function(e){return X(e)}(e);return[t,t]}}(i),m=f&&f[0],g=f&&f[1],{onBeforeEnter:y,onEnter:b,onEnterCancelled:_,onLeave:S,onLeaveCancelled:x,onBeforeAppear:C=y,onAppear:k=b,onAppearCancelled:w=_}=t,N=(e,t,n,r)=>{e._enterCancelled=r,i2(e,t?u:o),i2(e,t?c:s),n&&n()},A=(e,t)=>{e._isLeaving=!1,i2(e,d),i2(e,h),i2(e,p),t&&t()},E=e=>(t,n)=>{let i=e?k:b,s=()=>N(t,e,n);iZ(i,[t,s]),i6(()=>{i2(t,e?a:l),i1(t,e?u:o),iY(i)||i4(t,r,m,s)})};return T(t,{onBeforeEnter(e){iZ(y,[e]),i1(e,l),i1(e,s)},onBeforeAppear(e){iZ(C,[e]),i1(e,a),i1(e,c)},onEnter:E(!1),onAppear:E(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>A(e,t);i1(e,d),e._enterCancelled?(i1(e,p),i7(e)):(i7(e),i1(e,p)),i6(()=>{e._isLeaving&&(i2(e,d),i1(e,h),iY(S)||i4(e,r,g,n))}),iZ(S,[e,n])},onEnterCancelled(e){N(e,!1,void 0,!0),iZ(_,[e])},onAppearCancelled(e){N(e,!0,void 0,!0),iZ(w,[e])},onLeaveCancelled(e){A(e),iZ(x,[e])}})}function i1(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[iJ]||(e[iJ]=new Set)).add(t)}function i2(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[iJ];n&&(n.delete(t),n.size||(e[iJ]=void 0))}function i6(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let i3=0;function i4(e,t,n,r){let i=e._endId=++i3,l=()=>{i===e._endId&&r()};if(null!=n)return setTimeout(l,n);let{type:s,timeout:o,propCount:a}=i8(e,t);if(!s)return r();let c=s+"end",u=0,d=()=>{e.removeEventListener(c,p),l()},p=t=>{t.target===e&&++u>=a&&d()};setTimeout(()=>{u(n[e]||"").split(", "),i=r(`${iK}Delay`),l=r(`${iK}Duration`),s=i5(i,l),o=r(`${iz}Delay`),a=r(`${iz}Duration`),c=i5(o,a),u=null,d=0,p=0;t===iK?s>0&&(u=iK,d=s,p=l.length):t===iz?c>0&&(u=iz,d=c,p=a.length):p=(u=(d=Math.max(s,c))>0?s>c?iK:iz:null)?u===iK?l.length:a.length:0;let h=u===iK&&/\b(?:transform|all)(?:,|$)/.test(r(`${iK}Property`).toString());return{type:u,timeout:d,propCount:p,hasTransform:h}}function i5(e,t){for(;e.lengthi9(t)+i9(e[n])))}function i9(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}function i7(e){return(e?e.ownerDocument:document).body.offsetHeight}let le=Symbol("_vod"),lt=Symbol("_vsh");function ln(e,t){e.style.display=t?e[le]:"none",e[lt]=!t}let lr=Symbol("");function li(e,t){if(1===e.nodeType){let r=e.style,i="";for(let e in t){var n;let l=null==(n=t[e])?"initial":"string"==typeof n?""===n?" ":n:String(n);r.setProperty(`--${e}`,l),i+=`--${e}: ${l};`}r[lr]=i}}let ll=/(?:^|;)\s*display\s*:/,ls=/\s*!important$/;function lo(e,t,n){if(E(n))n.forEach(n=>lo(e,t,n));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{let r=function(e,t){let n=lc[t];if(n)return n;let r=B(t);if("filter"!==r&&r in e)return lc[t]=r;r=q(r);for(let n=0;n111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&123>e.charCodeAt(2),lb=(e,t,n,r,i,l)=>{let s="svg"===i;if("class"===t){var o;let t;o=r,(t=e[iJ])&&(o=(o?[o,...t]:[...t]).join(" ")),null==o?e.removeAttribute("class"):s?e.setAttribute("class",o):e.className=o}else"style"===t?function(e,t,n){let r=e.style,i=O(n),l=!1;if(n&&!i){if(t)if(O(t))for(let e of t.split(";")){let t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&lo(r,t,"")}else for(let e in t)null==n[e]&&lo(r,e,"");for(let e in n)"display"===e&&(l=!0),lo(r,e,n[e])}else if(i){if(t!==n){let e=r[lr];e&&(n+=";"+e),r.cssText=n,l=ll.test(n)}}else t&&e.removeAttribute("style");le in e&&(e[le]=l?r.display:"",e[lt]&&(r.display="none"))}(e,n,r):C(t)?k(t)||function(e,t,n,r,i=null){let l=e[lf]||(e[lf]={}),s=l[t];if(r&&s)s.value=r;else{let[n,c]=function(e){let t;if(lm.test(e)){let n;for(t={};n=e.match(lm);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[":"===e[2]?e.slice(3):H(e.slice(2)),t]}(t);if(r){var o,a;let s;lh(e,n,l[t]=(o=r,a=i,(s=e=>{if(e._vts){if(e._vts<=s.attached)return}else e._vts=Date.now();tF(function(e,t){if(!E(t))return t;{let n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(e=>t=>!t._stopped&&e&&e(t))}}(e,s.value),a,5,[e])}).value=o,s.attached=lg||(lv.then(()=>lg=0),lg=Date.now()),s),c)}else s&&(e.removeEventListener(n,s,c),l[t]=void 0)}}(e,t,0,r,l):("."===t[0]?(t=t.slice(1),0):"^"===t[0]?(t=t.slice(1),1):!function(e,t,n,r){if(r)return!!("innerHTML"===t||"textContent"===t||t in e&&ly(t)&&I(n));if("spellcheck"===t||"draggable"===t||"translate"===t||"autocorrect"===t||"sandbox"===t&&"IFRAME"===e.tagName||"form"===t||"list"===t&&"INPUT"===e.tagName||"type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){let t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}return!(ly(t)&&O(n))&&t in e}(e,t,r,s))?e._isVueCE&&(/[A-Z]/.test(t)||!O(r))?lp(e,B(t),r,l,t):("true-value"===t?e._trueValue=r:"false-value"===t&&(e._falseValue=r),ld(e,t,r,s)):(lp(e,t,r),e.tagName.includes("-")||"value"!==t&&"checked"!==t&&"selected"!==t||ld(e,t,r,s,l,"value"!==t))},l_={};function lS(e,t,n){let r,i=nb(e,t);"[object Object]"===(r=i,L.call(r))&&(i=T({},i,t));class l extends lC{constructor(e){super(i,e,n)}}return l.def=i,l}let lx="undefined"!=typeof HTMLElement?HTMLElement:class{};class lC extends lx{constructor(e,t={},n=l0){super(),this._def=e,this._props=t,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&n!==l0?this._root=this.shadowRoot:!1!==e.shadowRoot?(this.attachShadow(T({},e.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;this.shadowRoot||this._resolved||this._parseSlots(),this._connected=!0;let e=this;for(;e=e&&(e.parentNode||e.host);)if(e instanceof lC){this._parent=e;break}this._instance||(this._resolved?this._mount(this._def):e&&e._pendingResolve?this._pendingResolve=e._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._inheritParentContext(e))}_inheritParentContext(e=this._parent){e&&this._app&&Object.setPrototypeOf(this._app._context.provides,e._instance.provides)}disconnectedCallback(){this._connected=!1,tz(()=>{!this._connected&&(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(e){for(let t of e)this._setAttr(t.attributeName)}_resolveDef(){if(this._pendingResolve)return;for(let e=0;e{let n;this._resolved=!0,this._pendingResolve=void 0;let{props:r,styles:i}=e;if(r&&!E(r))for(let e in r){let t=r[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=X(this._props[e])),(n||(n=Object.create(null)))[B(e)]=!0)}this._numberProps=n,this._resolveProps(e),this.shadowRoot&&this._applyStyles(i),this._mount(e)},t=this._def.__asyncLoader;t?this._pendingResolve=t().then(t=>{t.configureApp=this._def.configureApp,e(this._def=t,!0)}):e(this._def)}_mount(e){this._app=this._createApp(e),this._inheritParentContext(),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);let t=this._instance&&this._instance.exposed;if(t)for(let e in t)A(this,e)||Object.defineProperty(this,e,{get:()=>tT(t[e])})}_resolveProps(e){let{props:t}=e,n=E(t)?t:Object.keys(t||{});for(let e of Object.keys(this))"_"!==e[0]&&n.includes(e)&&this._setProp(e,this[e]);for(let e of n.map(B))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t,!0,!this._patching)}})}_setAttr(e){if(e.startsWith("data-v-"))return;let t=this.hasAttribute(e),n=t?this.getAttribute(e):l_,r=B(e);t&&this._numberProps&&this._numberProps[r]&&(n=X(n)),this._setProp(r,n,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,r=!1){if(t!==this._props[e]&&(this._dirty=!0,t===l_?delete this._props[e]:(this._props[e]=t,"key"===e&&this._app&&(this._app._ceVNode.key=t)),r&&this._instance&&this._update(),n)){let n=this._ob;n&&(this._processMutations(n.takeRecords()),n.disconnect()),!0===t?this.setAttribute(H(e),""):"string"==typeof t||"number"==typeof t?this.setAttribute(H(e),t+""):t||this.removeAttribute(H(e)),n&&n.observe(this,{attributes:!0})}}_update(){let e=this._createVNode();this._app&&(e.appContext=this._app._context),lY(e,this._root)}_createVNode(){let e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));let t=ip(this._def,T(e,this._props));return this._instance||(t.ce=e=>{this._instance=e,e.ce=this,e.isCE=!0;let t=(e,t)=>{let n;this.dispatchEvent(new CustomEvent(e,"[object Object]"===(n=t[0],L.call(n))?T({detail:t},t[0]):{detail:t}))};e.emit=(e,...n)=>{t(e,n),H(e)!==e&&t(H(e),n)},this._setParent()}),t}_applyStyles(e,t){if(!e)return;if(t){if(t===this._def||this._styleChildren.has(t))return;this._styleChildren.add(t)}let n=this._nonce;for(let t=e.length-1;t>=0;t--){let r=document.createElement("style");n&&r.setAttribute("nonce",n),r.textContent=e[t],this.shadowRoot.prepend(r)}}_parseSlots(){let e,t=this._slots={};for(;e=this.firstChild;){let n=1===e.nodeType&&e.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(e),this.removeChild(e)}}_renderSlots(){let e=this._getSlots(),t=this._instance.type.__scopeId;for(let n=0;n{if(!n.length)return;let t=e.moveClass||`${e.name||"v"}-move`;if(!function(e,t,n){let r=e.cloneNode(),i=e[iJ];i&&i.forEach(e=>{e.split(/\s+/).forEach(e=>e&&r.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&r.classList.add(e)),r.style.display="none";let l=1===t.nodeType?t:t.parentNode;l.appendChild(r);let{hasTransform:s}=i8(r);return l.removeChild(r),s}(n[0].el,i.vnode.el,t)){n=[];return}n.forEach(lI),n.forEach(lO);let r=n.filter(lR);i7(i.vnode.el),r.forEach(e=>{let n=e.el,r=n.style;i1(n,t),r.transform=r.webkitTransform=r.transitionDuration="";let i=n[lN]=e=>{(!e||e.target===n)&&(!e||e.propertyName.endsWith("transform"))&&(n.removeEventListener("transitionend",i),n[lN]=null,i2(n,t))};n.addEventListener("transitionend",i)}),n=[]}),()=>{let s=tg(e),o=i0(s),a=s.tag||r3;if(n=[],r)for(let e=0;e{let t=e.props["onUpdate:modelValue"]||!1;return E(t)?e=>z(t,e):t};function lP(e){e.target.composing=!0}function lL(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}let l$=Symbol("_assign");function lD(e,t,n){return t&&(e=e.trim()),n&&(e=G(e)),e}let lF={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[l$]=lM(i);let l=r||i.props&&"number"===i.props.type;lh(e,t?"change":"input",t=>{t.target.composing||e[l$](lD(e.value,n,l))}),(n||l)&&lh(e,"change",()=>{e.value=lD(e.value,n,l)}),t||(lh(e,"compositionstart",lP),lh(e,"compositionend",lL),lh(e,"change",lL))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:l}},s){if(e[l$]=lM(s),e.composing)return;let o=(l||"number"===e.type)&&!/^0\d/.test(e.value)?G(e.value):e.value,a=null==t?"":t;if(o!==a){if(document.activeElement===e&&"range"!==e.type&&(r&&t===n||i&&e.value.trim()===a))return;e.value=a}}},lV={deep:!0,created(e,t,n){e[l$]=lM(n),lh(e,"change",()=>{let t=e._modelValue,n=lq(e),r=e.checked,i=e[l$];if(E(t)){let e=ed(t,n),l=-1!==e;if(r&&!l)i(t.concat(n));else if(!r&&l){let n=[...t];n.splice(e,1),i(n)}}else{let l;if("[object Set]"===(l=t,L.call(l))){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(lW(e,r))}})},mounted:lj,beforeUpdate(e,t,n){e[l$]=lM(n),lj(e,t,n)}};function lj(e,{value:t,oldValue:n},r){let i;if(e._modelValue=t,E(t))i=ed(t,r.props.value)>-1;else{let l;if("[object Set]"===(l=t,L.call(l)))i=t.has(r.props.value);else{if(t===n)return;i=eu(t,lW(e,!0))}}e.checked!==i&&(e.checked=i)}let lB={created(e,{value:t},n){e.checked=eu(t,n.props.value),e[l$]=lM(n),lh(e,"change",()=>{e[l$](lq(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e[l$]=lM(r),t!==n&&(e.checked=eu(t,r.props.value))}},lU={deep:!0,created(e,{value:t,modifiers:{number:n}},r){let i,l="[object Set]"===(i=t,L.call(i));lh(e,"change",()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?G(lq(e)):lq(e));e[l$](e.multiple?l?new Set(t):t:t[0]),e._assigning=!0,tz(()=>{e._assigning=!1})}),e[l$]=lM(r)},mounted(e,{value:t}){lH(e,t)},beforeUpdate(e,t,n){e[l$]=lM(n)},updated(e,{value:t}){e._assigning||lH(e,t)}};function lH(e,t){let n,r=e.multiple,i=E(t);if(!r||i||"[object Set]"===(n=t,L.call(n))){for(let n=0,l=e.options.length;nString(e)===String(s)):l.selected=ed(t,s)>-1}else l.selected=t.has(s);else if(eu(lq(l),t)){e.selectedIndex!==n&&(e.selectedIndex=n);return}}r||-1===e.selectedIndex||(e.selectedIndex=-1)}}function lq(e){return"_value"in e?e._value:e.value}function lW(e,t){let n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}function lK(e,t,n,r,i){let l=function(e,t){switch(e){case"SELECT":return lU;case"TEXTAREA":return lF;default:switch(t){case"checkbox":return lV;case"radio":return lB;default:return lF}}}(e.tagName,n.props&&n.props.type)[i];l&&l(e,t,n,r)}let lz=["ctrl","shift","alt","meta"],lJ={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>lz.some(n=>e[`${n}Key`]&&!t.includes(n))},lG={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},lX=T({patchProp:lb},iW),lQ=!1;function lZ(){return h=lQ?h:rq(lX),lQ=!0,h}let lY=(...e)=>{(h||(h=rW(lX))).render(...e)},l0=(...e)=>{let t=(h||(h=rW(lX))).createApp(...e),{mount:n}=t;return t.mount=e=>{let r=l6(e);if(!r)return;let i=t._component;I(i)||i.render||i.template||(i.template=r.innerHTML),1===r.nodeType&&(r.textContent="");let l=n(r,!1,l2(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),l},t},l1=(...e)=>{let t=lZ().createApp(...e),{mount:n}=t;return t.mount=e=>{let t=l6(e);if(t)return n(t,!0,l2(t))},t};function l2(e){return e instanceof SVGElement?"svg":"function"==typeof MathMLElement&&e instanceof MathMLElement?"mathml":void 0}function l6(e){return O(e)?document.querySelector(e):e}let l3=Symbol(""),l4=Symbol(""),l8=Symbol(""),l5=Symbol(""),l9=Symbol(""),l7=Symbol(""),se=Symbol(""),st=Symbol(""),sn=Symbol(""),sr=Symbol(""),si=Symbol(""),sl=Symbol(""),ss=Symbol(""),so=Symbol(""),sa=Symbol(""),sc=Symbol(""),su=Symbol(""),sd=Symbol(""),sp=Symbol(""),sh=Symbol(""),sf=Symbol(""),sm=Symbol(""),sg=Symbol(""),sv=Symbol(""),sy=Symbol(""),sb=Symbol(""),s_=Symbol(""),sS=Symbol(""),sx=Symbol(""),sC=Symbol(""),sk=Symbol(""),sT=Symbol(""),sw=Symbol(""),sN=Symbol(""),sA=Symbol(""),sE=Symbol(""),sI=Symbol(""),sO=Symbol(""),sR=Symbol(""),sM={[l3]:"Fragment",[l4]:"Teleport",[l8]:"Suspense",[l5]:"KeepAlive",[l9]:"BaseTransition",[l7]:"openBlock",[se]:"createBlock",[st]:"createElementBlock",[sn]:"createVNode",[sr]:"createElementVNode",[si]:"createCommentVNode",[sl]:"createTextVNode",[ss]:"createStaticVNode",[so]:"resolveComponent",[sa]:"resolveDynamicComponent",[sc]:"resolveDirective",[su]:"resolveFilter",[sd]:"withDirectives",[sp]:"renderList",[sh]:"renderSlot",[sf]:"createSlots",[sm]:"toDisplayString",[sg]:"mergeProps",[sv]:"normalizeClass",[sy]:"normalizeStyle",[sb]:"normalizeProps",[s_]:"guardReactiveProps",[sS]:"toHandlers",[sx]:"camelize",[sC]:"capitalize",[sk]:"toHandlerKey",[sT]:"setBlockTracking",[sw]:"pushScopeId",[sN]:"popScopeId",[sA]:"withCtx",[sE]:"unref",[sI]:"isRef",[sO]:"withMemo",[sR]:"isMemoSame"},sP={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function sL(e,t,n,r,i,l,s,o=!1,a=!1,c=!1,u=sP){var d,p,h,f;return e&&(o?(e.helper(l7),e.helper((d=e.inSSR,p=c,d||p?se:st))):e.helper((h=e.inSSR,f=c,h||f?sn:sr)),s&&e.helper(sd)),{type:13,tag:t,props:n,children:r,patchFlag:i,dynamicProps:l,directives:s,isBlock:o,disableTracking:a,isComponent:c,loc:u}}function s$(e,t=sP){return{type:17,loc:t,elements:e}}function sD(e,t=sP){return{type:15,loc:t,properties:e}}function sF(e,t){return{type:16,loc:sP,key:O(e)?sV(e,!0):e,value:t}}function sV(e,t=!1,n=sP,r=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:r}}function sj(e,t=sP){return{type:8,loc:t,children:e}}function sB(e,t=[],n=sP){return{type:14,loc:n,callee:e,arguments:t}}function sU(e,t,n=!1,r=!1,i=sP){return{type:18,params:e,returns:t,newline:n,isSlot:r,loc:i}}function sH(e,t,n,r=!0){return{type:19,test:e,consequent:t,alternate:n,newline:r,loc:sP}}function sq(e,{helper:t,removeHelper:n,inSSR:r}){if(!e.isBlock){var i,l;e.isBlock=!0,n((i=e.isComponent,r||i?sn:sr)),t(l7),t((l=e.isComponent,r||l?se:st))}}let sW=new Uint8Array([123,123]),sK=new Uint8Array([125,125]);function sz(e){return e>=97&&e<=122||e>=65&&e<=90}function sJ(e){return 32===e||10===e||9===e||12===e||13===e}function sG(e){return 47===e||62===e||sJ(e)}function sX(e){let t=new Uint8Array(e.length);for(let n=0;n4===e.type&&e.isStatic;function s2(e){switch(e){case"Teleport":case"teleport":return l4;case"Suspense":case"suspense":return l8;case"KeepAlive":case"keep-alive":return l5;case"BaseTransition":case"base-transition":return l9}}let s6=/^$|^\d|[^\$\w\xA0-\uFFFF]/,s3=/[A-Za-z_$\xA0-\uFFFF]/,s4=/[\.\?\w$\xA0-\uFFFF]/,s8=/\s+[.[]\s*|\s*[.[]\s+/g,s5=e=>4===e.type?e.content:e.loc.source,s9=e=>{let t=s5(e).trim().replace(s8,e=>e.trim()),n=0,r=[],i=0,l=0,s=null;for(let e=0;e|^\s*(?:async\s+)?function(?:\s+[\w$]+)?\s*\(/;function oe(e,t,n=!1){for(let r=0;r4===e.key.type&&e.key.content===r)}return n}function od(e,t){return`_${t}_${e.replace(/[^\w]/g,(t,n)=>"-"===t?"_":e.charCodeAt(n).toString())}`}let op=/([\s\S]*?)\s+(?:in|of)\s+(\S[\s\S]*)/;function oh(e){for(let t=0;t0,isVoidTag:x,isPreTag:x,isIgnoreNewlineTag:x,isCustomElement:x,onError:sZ,onWarn:sY,comments:!1,prefixIdentifiers:!1},ov=og,oy=null,ob="",o_=null,oS=null,ox="",oC=-1,ok=-1,oT=0,ow=!1,oN=null,oA=[],oE=new class{constructor(e,t){this.stack=e,this.cbs=t,this.state=1,this.buffer="",this.sectionStart=0,this.index=0,this.entityStart=0,this.baseState=1,this.inRCDATA=!1,this.inXML=!1,this.inVPre=!1,this.newlines=[],this.mode=0,this.delimiterOpen=sW,this.delimiterClose=sK,this.delimiterIndex=-1,this.currentSequence=void 0,this.sequenceIndex=0}get inSFCRoot(){return 2===this.mode&&0===this.stack.length}reset(){this.state=1,this.mode=0,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=1,this.inRCDATA=!1,this.currentSequence=void 0,this.newlines.length=0,this.delimiterOpen=sW,this.delimiterClose=sK}getPos(e){let t=1,n=e+1;for(let r=this.newlines.length-1;r>=0;r--){let i=this.newlines[r];if(e>i){t=r+2,n=e-i;break}}return{column:n,line:t,offset:e}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(e){60===e?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):this.inVPre||e!==this.delimiterOpen[0]||(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(e))}stateInterpolationOpen(e){if(e===this.delimiterOpen[this.delimiterIndex])if(this.delimiterIndex===this.delimiterOpen.length-1){let e=this.index+1-this.delimiterOpen.length;e>this.sectionStart&&this.cbs.ontext(this.sectionStart,e),this.state=3,this.sectionStart=e}else this.delimiterIndex++;else this.inRCDATA?(this.state=32,this.stateInRCDATA(e)):(this.state=1,this.stateText(e))}stateInterpolation(e){e===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(e))}stateInterpolationClose(e){e===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(e))}stateSpecialStartSequence(e){let t=this.sequenceIndex===this.currentSequence.length;if(t?sG(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.inRCDATA=!1;this.sequenceIndex=0,this.state=6,this.stateInTagName(e)}stateInRCDATA(e){if(this.sequenceIndex===this.currentSequence.length){if(62===e||sJ(e)){let t=this.index-this.currentSequence.length;if(this.sectionStart=e||(28===this.state?this.currentSequence===sQ.CdataEnd?this.cbs.oncdata(this.sectionStart,e):this.cbs.oncomment(this.sectionStart,e):6===this.state||11===this.state||18===this.state||17===this.state||12===this.state||13===this.state||14===this.state||15===this.state||16===this.state||20===this.state||19===this.state||21===this.state||9===this.state||this.cbs.ontext(this.sectionStart,e))}emitCodePoint(e,t){}}(oA,{onerr:oW,ontext(e,t){oP(oR(e,t),e,t)},ontextentity(e,t,n){oP(e,t,n)},oninterpolation(e,t){if(ow)return oP(oR(e,t),e,t);let n=e+oE.delimiterOpen.length,r=t-oE.delimiterClose.length;for(;sJ(ob.charCodeAt(n));)n++;for(;sJ(ob.charCodeAt(r-1));)r--;let i=oR(n,r);i.includes("&")&&(i=ov.decodeEntities(i,!1)),oB({type:5,content:oq(i,!1,oU(n,r)),loc:oU(e,t)})},onopentagname(e,t){let n=oR(e,t);o_={type:1,tag:n,ns:ov.getNamespace(n,oA[0],ov.ns),tagType:0,props:[],children:[],loc:oU(e-1,t),codegenNode:void 0}},onopentagend(e){oM(e)},onclosetag(e,t){let n=oR(e,t);if(!ov.isVoidTag(n)){let r=!1;for(let e=0;e0&&oA[0].loc.start.offset;for(let n=0;n<=e;n++)oL(oA.shift(),t,n(7===e.type?e.rawName:e.name)===t)},onattribend(e,t){o_&&oS&&(oH(oS.loc,t),0!==e&&(ox.includes("&")&&(ox=ov.decodeEntities(ox,!0)),6===oS.type?("class"===oS.name&&(ox=oj(ox).trim()),oS.value={type:2,content:ox,loc:1===e?oU(oC,ok):oU(oC-1,ok+1)},oE.inSFCRoot&&"template"===o_.tag&&"lang"===oS.name&&ox&&"html"!==ox&&oE.enterRCDATA(sX("{let i=t.start.offset+n,l=i+e.length;return oq(e,!1,oU(i,l),0,+!!r)},o={source:s(l.trim(),n.indexOf(l,i.length)),value:void 0,key:void 0,index:void 0,finalized:!1},a=i.trim().replace(oO,"").trim(),c=i.indexOf(a),u=a.match(oI);if(u){let e;a=a.replace(oI,"").trim();let t=u[1].trim();if(t&&(e=n.indexOf(t,c+a.length),o.key=s(t,e,!0)),u[2]){let r=u[2].trim();r&&(o.index=s(r,n.indexOf(r,o.key?e+t.length:c+a.length),!0))}}return a&&(o.value=s(a,c,!0)),o}(oS.exp)))),(7!==oS.type||"pre"!==oS.name)&&o_.props.push(oS)),ox="",oC=ok=-1},oncomment(e,t){ov.comments&&oB({type:3,content:oR(e,t),loc:oU(e-4,t+3)})},onend(){let e=ob.length;for(let t=0;t64&&n<91||s2(e)||ov.isBuiltInComponent&&ov.isBuiltInComponent(e)||ov.isNativeTag&&!ov.isNativeTag(e))return!0;for(let e=0;e=0;)n--;return n}let oD=new Set(["if","else","else-if","for","slot"]),oF=/\r\n/g;function oV(e){let t="preserve"!==ov.whitespace,n=!1;for(let r=0;r3!==e.type);return 1!==t.length||1!==t[0].type||oo(t[0])?null:t[0]}function oz(e,t){let{constantCache:n}=t;switch(e.type){case 1:if(0!==e.tagType)return 0;let r=n.get(e);if(void 0!==r)return r;let i=e.codegenNode;if(13!==i.type||i.isBlock&&"svg"!==e.tag&&"foreignObject"!==e.tag&&"math"!==e.tag)return 0;if(void 0!==i.patchFlag)return n.set(e,0),0;{let r=3,c=oG(e,t);if(0===c)return n.set(e,0),0;c1)for(let i=0;i{l--};for(;lt===e:t=>e.test(t);return(e,r)=>{if(1===e.type){let{props:i}=e;if(3===e.tagType&&i.some(ol))return;let l=[];for(let s=0;s`${sM[e]}: _${sM[e]}`;function o1(e,t,{helper:n,push:r,newline:i,isTS:l}){let s=n("component"===t?so:sc);for(let n=0;n3;t.push("["),n&&t.indent(),o6(e,t,n),n&&t.deindent(),t.push("]")}function o6(e,t,n=!1,r=!0){let{push:i,newline:l}=t;for(let s=0;se||"null")}([a,c,u,i,p]),t),l(")"),f&&l(")"),h&&(l(", "),o3(h,t),l(")"))}(e,t);break;case 14:!function(e,t){let{push:n,helper:r,pure:i}=t,l=O(e.callee)?e.callee:r(e.callee);i&&n(oY),n(l+"(",-2,e),o6(e.arguments,t),n(")")}(e,t);break;case 15:!function(e,t){let{push:n,indent:r,deindent:i,newline:l}=t,{properties:s}=e;if(!s.length)return n("{}",-2,e);let o=s.length>1;n(o?"{":"{ "),o&&r();for(let e=0;e "),(a||o)&&(n("{"),r()),s?(a&&n("return "),E(s)?o2(s,t):o3(s,t)):o&&o3(o,t),(a||o)&&(i(),n("}")),c&&n(")")}(e,t);break;case 19:!function(e,t){let{test:n,consequent:r,alternate:i,newline:l}=e,{push:s,indent:o,deindent:a,newline:c}=t;if(4===n.type){let e,r=(e=n.content,!!s6.test(e));r&&s("("),o4(n,t),r&&s(")")}else s("("),o3(n,t),s(")");l&&o(),t.indentLevel++,l||s(" "),s("? "),o3(r,t),t.indentLevel--,l&&c(),l||s(" "),s(": ");let u=19===i.type;!u&&t.indentLevel++,o3(i,t),!u&&t.indentLevel--,l&&a(!0)}(e,t);break;case 20:!function(e,t){let{push:n,helper:r,indent:i,deindent:l,newline:s}=t,{needPauseTracking:o,needArraySpread:a}=e;a&&n("[...("),n(`_cache[${e.index}] || (`),o&&(i(),n(`${r(sT)}(-1`),e.inVOnce&&n(", true"),n("),"),s(),n("(")),n(`_cache[${e.index}] = `),o3(e.value,t),o&&(n(`).cacheIndex = ${e.index},`),s(),n(`${r(sT)}(1),`),s(),n(`_cache[${e.index}]`),l()),n(")"),a&&n(")]")}(e,t);break;case 21:o6(e.body,t,!0,!1)}}function o4(e,t){let{content:n,isStatic:r}=e;t.push(r?JSON.stringify(n):n,-3,e)}function o8(e,t){for(let n=0;n(function(e,t,n,r){if("else"!==t.name&&(!t.exp||!t.exp.content.trim())){let r=t.exp?t.exp.loc:e.loc;n.onError(s0(28,t.loc)),t.exp=sV("true",!1,r)}if("if"===t.name){var i;let l=o9(e,t),s={type:9,loc:oU((i=e.loc).start.offset,i.end.offset),branches:[l]};if(n.replaceNode(s),r)return r(s,l,!0)}else{let i=n.parent.children,l=i.indexOf(e);for(;l-- >=-1;){let s=i[l];if(s&&om(s)){n.removeNode(s);continue}if(s&&9===s.type){("else-if"===t.name||"else"===t.name)&&void 0===s.branches[s.branches.length-1].condition&&n.onError(s0(30,e.loc)),n.removeNode();let i=o9(e,t);s.branches.push(i);let l=r&&r(s,i,!1);oQ(i,n),l&&l(),n.currentNode=null}else n.onError(s0(30,e.loc));break}}})(e,t,n,(e,t,r)=>{let i=n.parent.children,l=i.indexOf(e),s=0;for(;l-- >=0;){let e=i[l];e&&9===e.type&&(s+=e.branches.length)}return()=>{r?e.codegenNode=o7(t,s,n):function(e){for(;;)if(19===e.type)if(19!==e.alternate.type)return e;else e=e.alternate;else 20===e.type&&(e=e.value)}(e.codegenNode).alternate=o7(t,s+e.branches.length-1,n)}}));function o9(e,t){let n=3===e.tagType;return{type:10,loc:e.loc,condition:"else"===t.name?void 0:t.exp,children:n&&!oe(e,"for")?e.children:[e],userKey:ot(e,"key"),isTemplateIf:n}}function o7(e,t,n){return e.condition?sH(e.condition,ae(e,t,n),sB(n.helper(si),['""',"true"])):ae(e,t,n)}function ae(e,t,n){let{helper:r}=n,i=sF("key",sV(`${t}`,!1,sP,2)),{children:l}=e,s=l[0];if(1!==l.length||1!==s.type)if(1!==l.length||11!==s.type)return sL(n,r(l3),sD([i]),l,64,void 0,void 0,!0,!1,!1,e.loc);else{let e=s.codegenNode;return oc(e,i,n),e}{let e=s.codegenNode,t=14===e.type&&e.callee===sO?e.arguments[1].returns:e;return 13===t.type&&sq(t,n),oc(t,i,n),e}}let at=oZ("for",(e,t,n)=>{let{helper:r,removeHelper:i}=n;return function(e,t,n,r){if(!t.exp)return void n.onError(s0(31,t.loc));let i=t.forParseResult;if(!i)return void n.onError(s0(32,t.loc));an(i);let{scopes:l}=n,{source:s,value:o,key:a,index:c}=i,u={type:11,loc:t.loc,source:s,valueAlias:o,keyAlias:a,objectIndexAlias:c,parseResult:i,children:os(e)?e.children:[e]};n.replaceNode(u),l.vFor++;let d=r&&r(u);return()=>{l.vFor--,d&&d()}}(e,t,n,t=>{let l=sB(r(sp),[t.source]),s=os(e),o=oe(e,"memo"),a=ot(e,"key",!1,!0);a&&a.type;let c=a&&(6===a.type?a.value?sV(a.value.content,!0):void 0:a.exp),u=a&&c?sF("key",c):null,d=4===t.source.type&&t.source.constType>0,p=d?64:a?128:256;return t.codegenNode=sL(n,r(l3),void 0,l,p,void 0,void 0,!0,!d,!1,e.loc),()=>{let a,{children:p}=t,h=1!==p.length||1!==p[0].type,f=oo(e)?e:s&&1===e.children.length&&oo(e.children[0])?e.children[0]:null;if(f)a=f.codegenNode,s&&u&&oc(a,u,n);else if(h)a=sL(n,r(l3),u?sD([u]):void 0,e.children,64,void 0,void 0,!0,void 0,!1);else{var m,g,y,b,_,S,x,C;a=p[0].codegenNode,s&&u&&oc(a,u,n),!d!==a.isBlock&&(a.isBlock?(i(l7),i((m=n.inSSR,g=a.isComponent,m||g?se:st))):i((y=n.inSSR,b=a.isComponent,y||b?sn:sr))),(a.isBlock=!d,a.isBlock)?(r(l7),r((_=n.inSSR,S=a.isComponent,_||S?se:st))):r((x=n.inSSR,C=a.isComponent,x||C?sn:sr))}if(o){let e=sU(ar(t.parseResult,[sV("_cached")]));e.body={type:21,body:[sj(["const _memo = (",o.exp,")"]),sj(["if (_cached",...c?[" && _cached.key === ",c]:[],` && ${n.helperString(sR)}(_cached, _memo)) return _cached`]),sj(["const _item = ",a]),sV("_item.memo = _memo"),sV("return _item")],loc:sP},l.arguments.push(e,sV("_cache"),sV(String(n.cached.length))),n.cached.push(null)}else l.arguments.push(sU(ar(t.parseResult),a,!0))}})});function an(e,t){e.finalized||(e.finalized=!0)}function ar({value:e,key:t,index:n},r=[]){var i=[e,t,n,...r];let l=i.length;for(;l--&&!i[l];);return i.slice(0,l+1).map((e,t)=>e||sV("_".repeat(t+1),!1))}let ai=sV("undefined",!1),al=(e,t)=>{if(1===e.type&&(1===e.tagType||3===e.tagType)){let n=oe(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}};function as(e,t,n){let r=[sF("name",e),sF("fn",t)];return null!=n&&r.push(sF("key",sV(String(n),!0))),sD(r)}let ao=new WeakMap,aa=(e,t)=>function(){let n,r,i,l,s;if(1!==(e=t.currentNode).type||0!==e.tagType&&1!==e.tagType)return;let{tag:o,props:a}=e,c=1===e.tagType,u=c?function(e,t,n=!1){let{tag:r}=e,i=ad(r),l=ot(e,"is",!1,!0);if(l)if(i){let e;if(6===l.type?e=l.value&&sV(l.value.content,!0):(e=l.exp)||(e=sV("is",!1,l.arg.loc)),e)return sB(t.helper(sa),[e])}else 6===l.type&&l.value.content.startsWith("vue:")&&(r=l.value.content.slice(4));let s=s2(r)||t.isBuiltInComponent(r);return s?(n||t.helper(s),s):(t.helper(so),t.components.add(r),od(r,"component"))}(e,t):`"${o}"`,d=M(u)&&u.callee===sa,p=0,h=d||u===l4||u===l8||!c&&("svg"===o||"foreignObject"===o||"math"===o);if(a.length>0){let r=ac(e,t,void 0,c,d);n=r.props,p=r.patchFlag,l=r.dynamicPropNames;let i=r.directives;s=i&&i.length?s$(i.map(e=>(function(e,t){let n=[],r=ao.get(e);r?n.push(t.helperString(r)):(t.helper(sc),t.directives.add(e.name),n.push(od(e.name,"directive")));let{loc:i}=e;if(e.exp&&n.push(e.exp),e.arg&&(e.exp||n.push("void 0"),n.push(e.arg)),Object.keys(e.modifiers).length){e.arg||(e.exp||n.push("void 0"),n.push("void 0"));let t=sV("true",!1,i);n.push(sD(e.modifiers.map(e=>sF(e,t)),i))}return s$(n,e.loc)})(e,t))):void 0,r.shouldUseBlock&&(h=!0)}if(e.children.length>0)if(u===l5&&(h=!0,p|=1024),c&&u!==l4&&u!==l5){let{slots:n,hasDynamicSlots:i}=function(e,t,n=(e,t,n,r)=>sU(e,n,!1,!0,n.length?n[0].loc:r)){t.helper(sA);let{children:r,loc:i}=e,l=[],s=[],o=t.scopes.vSlot>0||t.scopes.vFor>0,a=oe(e,"slot",!0);if(a){let{arg:e,exp:t}=a;e&&!s1(e)&&(o=!0),l.push(sF(e||sV("default",!0),n(t,void 0,r,i)))}let c=!1,u=!1,d=[],p=new Set,h=0;for(let e=0;esF("default",n(e,void 0,t,i));c?d.length&&!d.every(of)&&(u?t.onError(s0(39,d[0].loc)):l.push(e(void 0,d))):l.push(e(void 0,r))}let f=o?2:!function e(t){for(let n=0;n0,f=!1,m=0,g=!1,y=!1,b=!1,_=!1,S=!1,x=!1,k=[],T=e=>{u.length&&(d.push(sD(au(u),a)),u=[]),e&&d.push(e)},w=()=>{t.scopes.vFor>0&&u.push(sF(sV("ref_for",!0),sV("true")))},N=({key:e,value:n})=>{if(s1(e)){let l=e.content,s=C(l);s&&(!r||i)&&"onclick"!==l.toLowerCase()&&"onUpdate:modelValue"!==l&&!D(l)&&(_=!0),s&&D(l)&&(x=!0),s&&14===n.type&&(n=n.arguments[0]),20===n.type||(4===n.type||8===n.type)&&oz(n,t)>0||("ref"===l?g=!0:"class"===l?y=!0:"style"===l?b=!0:"key"===l||k.includes(l)||k.push(l),r&&("class"===l||"style"===l)&&!k.includes(l)&&k.push(l))}else S=!0};for(let i=0;i"prop"===e.content)&&(m|=32);let x=t.directiveTransforms[n];if(x){let{props:n,needRuntime:r}=x(s,e,t);l||n.forEach(N),_&&i&&!s1(i)?T(sD(n,a)):u.push(...n),r&&(p.push(s),R(r)&&ao.set(s,r))}else!F(n)&&(p.push(s),h&&(f=!0))}}if(d.length?(T(),s=d.length>1?sB(t.helper(sg),d,a):d[0]):u.length&&(s=sD(au(u),a)),S?m|=16:(y&&!r&&(m|=2),b&&!r&&(m|=4),k.length&&(m|=8),_&&(m|=32)),!f&&(0===m||32===m)&&(g||x||p.length>0)&&(m|=512),!t.inSSR&&s)switch(s.type){case 15:let A=-1,E=-1,I=!1;for(let e=0;e{if(oo(e)){let{children:n,loc:r}=e,{slotName:i,slotProps:l}=function(e,t){let n,r='"default"',i=[];for(let t=0;t0){let{props:r,directives:l}=ac(e,t,i,!1,!1);n=r,l.length&&t.onError(s0(36,l[0].loc))}return{slotName:r,slotProps:n}}(e,t),s=[t.prefixIdentifiers?"_ctx.$slots":"$slots",i,"{}","undefined","true"],o=2;l&&(s[2]=l,o=3),n.length&&(s[3]=sU([],n,!1,!1,r),o=4),t.scopeId&&!t.slotted&&(o=5),s.splice(o),e.codegenNode=sB(t.helper(sh),s,r)}},ah=(e,t,n,r)=>{let i,{loc:l,modifiers:s,arg:o}=e;if(!e.exp&&!s.length,4===o.type)if(o.isStatic){let e=o.content;e.startsWith("vue:")&&(e=`vnode-${e.slice(4)}`),i=sV(0!==t.tagType||e.startsWith("vnode")||!/[A-Z]/.test(e)?W(B(e)):`on:${e}`,!0,o.loc)}else i=sj([`${n.helperString(sk)}(`,o,")"]);else(i=o).children.unshift(`${n.helperString(sk)}(`),i.children.push(")");let a=e.exp;a&&!a.content.trim()&&(a=void 0);let c=n.cacheHandlers&&!a&&!n.inVOnce;if(a){let e,t=s9(a),n=!(t||(e=a,s7.test(s5(e)))),r=a.content.includes(";");(n||c&&t)&&(a=sj([`${n?"$event":"(...args)"} => ${r?"{":"("}`,a,r?"}":")"]))}let u={props:[sF(i,a||sV("() => {}",!1,l))]};return r&&(u=r(u)),c&&(u.props[0].value=n.cache(u.props[0].value)),u.props.forEach(e=>e.key.isHandlerKey=!0),u},af=(e,t,n)=>{let{modifiers:r}=e,i=e.arg,{exp:l}=e;return l&&4===l.type&&!l.content.trim()&&(l=void 0),4!==i.type?(i.children.unshift("("),i.children.push(') || ""')):i.isStatic||(i.content=i.content?`${i.content} || ""`:'""'),r.some(e=>"camel"===e.content)&&(4===i.type?i.isStatic?i.content=B(i.content):i.content=`${n.helperString(sx)}(${i.content})`:(i.children.unshift(`${n.helperString(sx)}(`),i.children.push(")"))),!n.inSSR&&(r.some(e=>"prop"===e.content)&&am(i,"."),r.some(e=>"attr"===e.content)&&am(i,"^")),{props:[sF(i,l)]}},am=(e,t)=>{4===e.type?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},ag=(e,t)=>{if(0===e.type||1===e.type||11===e.type||10===e.type)return()=>{let n,r=e.children,i=!1;for(let e=0;e7===e.type&&!t.directiveTransforms[e.name]))))for(let e=0;e{if(1===e.type&&oe(e,"once",!0)&&!av.has(e)&&!t.inVOnce&&!t.inSSR)return av.add(e),t.inVOnce=!0,t.helper(sT),()=>{t.inVOnce=!1;let e=t.currentNode;e.codegenNode&&(e.codegenNode=t.cache(e.codegenNode,!0,!0))}},ab=(e,t,n)=>{let r,{exp:i,arg:l}=e;if(!i)return n.onError(s0(41,e.loc)),a_();let s=i.loc.source.trim(),o=4===i.type?i.content:s,a=n.bindingMetadata[s];if("props"===a||"props-aliased"===a)return i.loc,a_();if(!o.trim()||!s9(i))return n.onError(s0(42,i.loc)),a_();let c=l||sV("modelValue",!0),u=l?s1(l)?`onUpdate:${B(l.content)}`:sj(['"onUpdate:" + ',l]):"onUpdate:modelValue",d=n.isTS?"($event: any)":"$event";r=sj([`${d} => ((`,i,") = $event)"]);let p=[sF(c,e.exp),sF(u,r)];if(e.modifiers.length&&1===t.tagType){let t=e.modifiers.map(e=>e.content).map(e=>(s6.test(e)?JSON.stringify(e):e)+": true").join(", "),n=l?s1(l)?`${l.content}Modifiers`:sj([l,' + "Modifiers"']):"modelModifiers";p.push(sF(n,sV(`{ ${t} }`,!1,e.loc,2)))}return a_(p)};function a_(e=[]){return{props:e}}let aS=new WeakSet,ax=(e,t)=>{if(1===e.type){let n=oe(e,"memo");if(!(!n||aS.has(e))&&!t.inSSR)return aS.add(e),()=>{let r=e.codegenNode||t.currentNode.codegenNode;r&&13===r.type&&(1!==e.tagType&&sq(r,t),e.codegenNode=sB(t.helper(sO),[n.exp,sU(void 0,r),"_cache",String(t.cached.length)]),t.cached.push(null))}}},aC=(e,t)=>{if(1===e.type){for(let n of e.props)if(7===n.type&&"bind"===n.name&&(!n.exp||4===n.exp.type&&!n.exp.content.trim())&&n.arg){let e=n.arg;if(4===e.type&&e.isStatic){let t=B(e.content);(s3.test(t[0])||"-"===t[0])&&(n.exp=sV(t,!1,e.loc))}else t.onError(s0(52,e.loc)),n.exp=sV("",!0,e.loc)}}},ak=Symbol(""),aT=Symbol(""),aw=Symbol(""),aN=Symbol(""),aA=Symbol(""),aE=Symbol(""),aI=Symbol(""),aO=Symbol(""),aR=Symbol(""),aM=Symbol("");Object.getOwnPropertySymbols(r={[ak]:"vModelRadio",[aT]:"vModelCheckbox",[aw]:"vModelText",[aN]:"vModelSelect",[aA]:"vModelDynamic",[aE]:"withModifiers",[aI]:"withKeys",[aO]:"vShow",[aR]:"Transition",[aM]:"TransitionGroup"}).forEach(e=>{sM[e]=r[e]});let aP={parseMode:"html",isVoidTag:ea,isNativeTag:e=>el(e)||es(e)||eo(e),isPreTag:e=>"pre"===e,isIgnoreNewlineTag:e=>"pre"===e||"textarea"===e,decodeEntities:function(e,t=!1){return(f||(f=document.createElement("div")),t)?(f.innerHTML=`
`,f.children[0].getAttribute("foo")):(f.innerHTML=e,f.textContent)},isBuiltInComponent:e=>"Transition"===e||"transition"===e?aR:"TransitionGroup"===e||"transition-group"===e?aM:void 0,getNamespace(e,t,n){let r=t?t.ns:n;if(t&&2===r)if("annotation-xml"===t.tag){if("svg"===e)return 1;t.props.some(e=>6===e.type&&"encoding"===e.name&&null!=e.value&&("text/html"===e.value.content||"application/xhtml+xml"===e.value.content))&&(r=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&"mglyph"!==e&&"malignmark"!==e&&(r=0);else t&&1===r&&("foreignObject"===t.tag||"desc"===t.tag||"title"===t.tag)&&(r=0);if(0===r){if("svg"===e)return 1;if("math"===e)return 2}return r}},aL=y("passive,once,capture"),a$=y("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),aD=y("left,right"),aF=y("onkeyup,onkeydown,onkeypress"),aV=(e,t)=>s1(e)&&"onclick"===e.content.toLowerCase()?sV(t,!0):4!==e.type?sj(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,aj=(e,t)=>{1===e.type&&0===e.tagType&&("script"===e.tag||"style"===e.tag)&&t.removeNode()},aB=[e=>{1===e.type&&e.props.forEach((t,n)=>{let r,i;6===t.type&&"style"===t.name&&t.value&&(e.props[n]={type:7,name:"bind",arg:sV("style",!0,t.loc),exp:(r=t.value.content,i=t.loc,sV(JSON.stringify(er(r)),!1,i,3)),modifiers:[],loc:t.loc})})}],aU={cloak:()=>({props:[]}),html:(e,t,n)=>{let{exp:r,loc:i}=e;return r||n.onError(s0(53,i)),t.children.length&&(n.onError(s0(54,i)),t.children.length=0),{props:[sF(sV("innerHTML",!0,i),r||sV("",!0))]}},text:(e,t,n)=>{let{exp:r,loc:i}=e;return r||n.onError(s0(55,i)),t.children.length&&(n.onError(s0(56,i)),t.children.length=0),{props:[sF(sV("textContent",!0),r?oz(r,n)>0?r:sB(n.helperString(sm),[r],i):sV("",!0))]}},model:(e,t,n)=>{let r=ab(e,t,n);if(!r.props.length||1===t.tagType)return r;e.arg&&n.onError(s0(58,e.arg.loc));let{tag:i}=t,l=n.isCustomElement(i);if("input"===i||"textarea"===i||"select"===i||l){let s=aw,o=!1;if("input"===i||l){let r=ot(t,"type");if(r){if(7===r.type)s=aA;else if(r.value)switch(r.value.content){case"radio":s=ak;break;case"checkbox":s=aT;break;case"file":o=!0,n.onError(s0(59,e.loc))}}else t.props.some(e=>7===e.type&&"bind"===e.name&&(!e.arg||4!==e.arg.type||!e.arg.isStatic))&&(s=aA)}else"select"===i&&(s=aN);o||(r.needRuntime=n.helper(s))}else n.onError(s0(57,e.loc));return r.props=r.props.filter(e=>4!==e.key.type||"modelValue"!==e.key.content),r},on:(e,t,n)=>ah(e,t,n,t=>{let{modifiers:r}=e;if(!r.length)return t;let{key:i,value:l}=t.props[0],{keyModifiers:s,nonKeyModifiers:o,eventOptionModifiers:a}=((e,t,n,r)=>{let i=[],l=[],s=[];for(let n=0;n{let{exp:r,loc:i}=e;return r||n.onError(s0(61,i)),{props:[],needRuntime:n.helper(aO)}}},aH=Object.create(null);function aq(e,t){if(!O(e))if(!e.nodeType)return S;else e=e.innerHTML;let n=e+JSON.stringify(t,(e,t)=>"function"==typeof t?t.toString():t),r=aH[n];if(r)return r;if("#"===e[0]){let t=document.querySelector(e);e=t?t.innerHTML:""}let i=T({hoistStatic:!0,onError:void 0,onWarn:S},t);i.isCustomElement||"undefined"==typeof customElements||(i.isCustomElement=e=>!!customElements.get(e));let{code:l}=function(e,t={}){return function(e,t={}){var n;let r,i=t.onError||sZ,l="module"===t.mode;!0===t.prefixIdentifiers?i(s0(47)):l&&i(s0(48)),t.cacheHandlers&&i(s0(49)),t.scopeId&&!l&&i(s0(50));let s=T({},t,{prefixIdentifiers:!1}),o=O(e)?function(e,t){if(oE.reset(),o_=null,oS=null,ox="",oC=-1,ok=-1,oA.length=0,ob=e,ov=T({},og),t){let e;for(e in t)null!=t[e]&&(ov[e]=t[e])}oE.mode="html"===ov.parseMode?1:2*("sfc"===ov.parseMode),oE.inXML=1===ov.ns||2===ov.ns;let n=t&&t.delimiters;n&&(oE.delimiterOpen=sX(n[0]),oE.delimiterClose=sX(n[1]));let r=oy=function(e,t=""){return{type:0,source:t,children:e,helpers:new Set,components:[],directives:[],hoists:[],imports:[],cached:[],temps:0,codegenNode:void 0,loc:sP}}([],e);return oE.parse(ob),r.loc=oU(0,e.length),r.children=oV(r.children),oy=null,r}(e,s):e,[a,c]=[[aC,ay,o5,ax,at,ap,aa,al,ag],{on:ah,bind:af,model:ab}];return r=function(e,{filename:t="",prefixIdentifiers:n=!1,hoistStatic:r=!1,hmr:i=!1,cacheHandlers:l=!1,nodeTransforms:s=[],directiveTransforms:o={},transformHoist:a=null,isBuiltInComponent:c=S,isCustomElement:u=S,expressionPlugins:d=[],scopeId:p=null,slotted:h=!0,ssr:f=!1,inSSR:m=!1,ssrCssVars:g="",bindingMetadata:y=b,inline:_=!1,isTS:x=!1,onError:C=sZ,onWarn:k=sY,compatConfig:T}){let w=t.replace(/\?.*$/,"").match(/([^/\\]+)\.\w+$/),N={filename:t,selfName:w&&q(B(w[1])),prefixIdentifiers:n,hoistStatic:r,hmr:i,cacheHandlers:l,nodeTransforms:s,directiveTransforms:o,transformHoist:a,isBuiltInComponent:c,isCustomElement:u,expressionPlugins:d,scopeId:p,slotted:h,ssr:f,inSSR:m,ssrCssVars:g,bindingMetadata:y,inline:_,isTS:x,onError:C,onWarn:k,compatConfig:T,root:e,helpers:new Map,components:new Set,directives:new Set,hoists:[],imports:[],cached:[],constantCache:new WeakMap,temps:0,identifiers:Object.create(null),scopes:{vFor:0,vSlot:0,vPre:0,vOnce:0},parent:null,grandParent:null,currentNode:e,childIndex:0,inVOnce:!1,helper(e){let t=N.helpers.get(e)||0;return N.helpers.set(e,t+1),e},removeHelper(e){let t=N.helpers.get(e);if(t){let n=t-1;n?N.helpers.set(e,n):N.helpers.delete(e)}},helperString:e=>`_${sM[N.helper(e)]}`,replaceNode(e){N.parent.children[N.childIndex]=N.currentNode=e},removeNode(e){let t=N.parent.children,n=e?t.indexOf(e):N.currentNode?N.childIndex:-1;e&&e!==N.currentNode?N.childIndex>n&&(N.childIndex--,N.onNodeRemoved()):(N.currentNode=null,N.onNodeRemoved()),N.parent.children.splice(n,1)},onNodeRemoved:S,addIdentifiers(e){},removeIdentifiers(e){},hoist(e){O(e)&&(e=sV(e)),N.hoists.push(e);let t=sV(`_hoisted_${N.hoists.length}`,!1,e.loc,2);return t.hoisted=e,t},cache(e,t=!1,n=!1){let r=function(e,t,n=!1,r=!1){return{type:20,index:e,value:t,needPauseTracking:n,inVOnce:r,needArraySpread:!1,loc:sP}}(N.cached.length,e,t,n);return N.cached.push(r),r}};return N}(o,n=T({},s,{nodeTransforms:[...a,...t.nodeTransforms||[]],directiveTransforms:T({},c,t.directiveTransforms||{})})),oQ(o,r),n.hoistStatic&&function e(t,n,r,i=!1,l=!1){let{children:s}=t,o=[];for(let n=0;n0){if(e>=2){a.codegenNode.patchFlag=-1,o.push(a);continue}}else{let e=a.codegenNode;if(13===e.type){let t=e.patchFlag;if((void 0===t||512===t||1===t)&&oG(a,r)>=2){let t=oX(a);t&&(e.props=r.hoist(t))}e.dynamicProps&&(e.dynamicProps=r.hoist(e.dynamicProps))}}}else if(12===a.type&&(i?0:oz(a,r))>=2){14===a.codegenNode.type&&a.codegenNode.arguments.length>0&&a.codegenNode.arguments.push("-1"),o.push(a);continue}if(1===a.type){let n=1===a.tagType;n&&r.scopes.vSlot++,e(a,t,r,!1,l),n&&r.scopes.vSlot--}else if(11===a.type)e(a,t,r,1===a.children.length,!0);else if(9===a.type)for(let n=0;ne.key===t||e.key.content===t);return n&&n.value}}o.length&&r.transformHoist&&r.transformHoist(s,r,t)}(o,void 0,r,!!oK(o)),n.ssr||function(e,t){let{helper:n}=t,{children:r}=e;if(1===r.length){let n=oK(e);if(n&&n.codegenNode){let r=n.codegenNode;13===r.type&&sq(r,t),e.codegenNode=r}else e.codegenNode=r[0]}else r.length>1&&(e.codegenNode=sL(t,n(l3),void 0,e.children,64,void 0,void 0,!0,void 0,!1))}(o,r),o.helpers=new Set([...r.helpers.keys()]),o.components=[...r.components],o.directives=[...r.directives],o.imports=r.imports,o.hoists=r.hoists,o.temps=r.temps,o.cached=r.cached,o.transformed=!0,function(e,t={}){let n=function(e,{mode:t="function",prefixIdentifiers:n="module"===t,sourceMap:r=!1,filename:i="template.vue.html",scopeId:l=null,optimizeImports:s=!1,runtimeGlobalName:o="Vue",runtimeModuleName:a="vue",ssrRuntimeModuleName:c="vue/server-renderer",ssr:u=!1,isTS:d=!1,inSSR:p=!1}){let h={mode:t,prefixIdentifiers:n,sourceMap:r,filename:i,scopeId:l,optimizeImports:s,runtimeGlobalName:o,runtimeModuleName:a,ssrRuntimeModuleName:c,ssr:u,isTS:d,inSSR:p,source:e.source,code:"",column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper:e=>`_${sM[e]}`,push(e,t=-2,n){h.code+=e},indent(){f(++h.indentLevel)},deindent(e=!1){e?--h.indentLevel:f(--h.indentLevel)},newline(){f(h.indentLevel)}};function f(e){h.push(` +`+" ".repeat(e),0)}return h}(e,t);t.onContextCreated&&t.onContextCreated(n);let{mode:r,push:i,prefixIdentifiers:l,indent:s,deindent:o,newline:a,ssr:c}=n,u=Array.from(e.helpers),d=u.length>0,p=!l&&"module"!==r;!function(e,t){let{push:n,newline:r,runtimeGlobalName:i}=t,l=Array.from(e.helpers);if(l.length>0&&(n(`const _Vue = ${i} +`,-1),e.hoists.length)){let e=[sn,sr,si,sl,ss].filter(e=>l.includes(e)).map(o0).join(", ");n(`const { ${e} } = _Vue +`,-1)}(function(e,t){if(!e.length)return;t.pure=!0;let{push:n,newline:r}=t;r();for(let i=0;i0)&&a()),e.directives.length&&(o1(e.directives,"directive",n),e.temps>0&&a()),e.temps>0){i("let ");for(let t=0;t0?", ":""}_temp${t}`)}return(e.components.length||e.directives.length||e.temps)&&(i(` +`,0),a()),c||i("return "),e.codegenNode?o3(e.codegenNode,n):i("null"),p&&(o(),i("}")),o(),i("}"),{ast:e,code:n.code,preamble:"",map:n.map?n.map.toJSON():void 0}}(o,s)}(e,T({},aP,t,{nodeTransforms:[aj,...aB,...t.nodeTransforms||[]],directiveTransforms:T({},aU,t.directiveTransforms||{}),transformHoist:null}))}(e,i),s=Function(l)();return s._rc=!0,aH[n]=s}return iO(aq),e.BaseTransition=np,e.BaseTransitionPropsValidators=nc,e.Comment=r8,e.DeprecationTypes=null,e.EffectScope=eg,e.ErrorCodes={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},e.ErrorTypeStrings=null,e.Fragment=r3,e.KeepAlive={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){let n=iT(),r=n.ctx,i=new Map,l=new Set,s=null,o=n.suspense,{renderer:{p:a,m:c,um:u,o:{createElement:d}}}=r,p=d("div");function h(e){nB(e),u(e,n,o,!0)}function f(e){i.forEach((t,n)=>{let r=i$(t.type);r&&!e(r)&&m(n)})}function m(e){let t=i.get(e);!t||s&&ia(t,s)?s&&nB(s):h(t),i.delete(e),l.delete(e)}r.activate=(e,t,n,r,i)=>{let l=e.component;c(e,t,n,0,o),a(l.vnode,e,t,n,l,o,r,e.slotScopeIds,i),rH(()=>{l.isDeactivated=!1,l.a&&z(l.a);let t=e.props&&e.props.onVnodeMounted;t&&iS(t,l.parent,e)},o)},r.deactivate=e=>{let t=e.component;rX(t.m),rX(t.a),c(e,p,null,1,o),rH(()=>{t.da&&z(t.da);let n=e.props&&e.props.onVnodeUnmounted;n&&iS(n,t.parent,e),t.isDeactivated=!0},o)},rb(()=>[e.include,e.exclude],([e,t])=>{e&&f(t=>nD(e,t)),t&&f(e=>!nD(t,e))},{flush:"post",deep:!0});let g=null,y=()=>{null!=g&&(rQ(n.subTree.type)?rH(()=>{i.set(g,nU(n.subTree))},n.subTree.suspense):i.set(g,nU(n.subTree)))};return nK(y),nJ(y),nG(()=>{i.forEach(e=>{let{subTree:t,suspense:r}=n,i=nU(t);if(e.type===i.type&&e.key===i.key){nB(i);let e=i.component.da;e&&rH(e,r);return}h(e)})}),()=>{if(g=null,!t.default)return s=null;let n=t.default(),r=n[0];if(n.length>1)return s=null,n;if(!io(r)||!(4&r.shapeFlag)&&!(128&r.shapeFlag))return s=null,r;let o=nU(r);if(o.type===r8)return s=null,o;let a=o.type,c=i$(nP(o)?o.type.__asyncResolved||{}:a),{include:u,exclude:d,max:p}=e;if(u&&(!c||!nD(u,c))||d&&c&&nD(d,c))return o.shapeFlag&=-257,s=o,r;let h=null==o.key?a:o.key,f=i.get(h);return o.el&&(o=im(o),128&r.shapeFlag&&(r.ssContent=o)),g=h,f?(o.el=f.el,o.component=f.component,o.transition&&nv(o,o.transition),o.shapeFlag|=512,l.delete(h),l.add(h)):(l.add(h),p&&l.size>parseInt(p,10)&&m(l.values().next().value)),o.shapeFlag|=256,s=o,rQ(r.type)?r:o}}},e.ReactiveEffect=ey,e.Static=r5,e.Suspense={name:"Suspense",__isSuspense:!0,process(e,t,n,r,i,l,s,o,a,c){if(null==e)!function(e,t,n,r,i,l,s,o,a){let{p:c,o:{createElement:u}}=a,d=u("div"),p=e.suspense=r0(e,i,r,t,d,n,l,s,o,a);c(null,p.pendingBranch=e.ssContent,d,null,r,p,l,s),p.deps>0?(rY(e,"onPending"),rY(e,"onFallback"),c(null,e.ssFallback,t,n,r,null,l,s),r6(p,e.ssFallback)):p.resolve(!1,!0)}(t,n,r,i,l,s,o,a,c);else{if(l&&l.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}!function(e,t,n,r,i,l,s,o,{p:a,um:c,o:{createElement:u}}){let d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;let p=t.ssContent,h=t.ssFallback,{activeBranch:f,pendingBranch:m,isInFallback:g,isHydrating:y}=d;if(m)d.pendingBranch=p,ia(m,p)?(a(m,p,d.hiddenContainer,null,i,d,l,s,o),d.deps<=0?d.resolve():g&&!y&&(a(f,h,n,r,i,null,l,s,o),r6(d,h))):(d.pendingId=rZ++,y?(d.isHydrating=!1,d.activeBranch=m):c(m,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u("div"),g?(a(null,p,d.hiddenContainer,null,i,d,l,s,o),d.deps<=0?d.resolve():(a(f,h,n,r,i,null,l,s,o),r6(d,h))):f&&ia(f,p)?(a(f,p,n,r,i,d,l,s,o),d.resolve(!0)):(a(null,p,d.hiddenContainer,null,i,d,l,s,o),d.deps<=0&&d.resolve()));else if(f&&ia(f,p))a(f,p,n,r,i,d,l,s,o),r6(d,p);else if(rY(t,"onPending"),d.pendingBranch=p,512&p.shapeFlag?d.pendingId=p.component.suspenseId:d.pendingId=rZ++,a(null,p,d.hiddenContainer,null,i,d,l,s,o),d.deps<=0)d.resolve();else{let{timeout:e,pendingId:t}=d;e>0?setTimeout(()=>{d.pendingId===t&&d.fallback(h)},e):0===e&&d.fallback(h)}}(e,t,n,r,i,s,o,a,c)}},hydrate:function(e,t,n,r,i,l,s,o,a){let c=t.suspense=r0(t,r,n,e.parentNode,document.createElement("div"),null,i,l,s,o,!0),u=a(e,c.pendingBranch=t.ssContent,n,c,l,s);return 0===c.deps&&c.resolve(!1,!0),u},normalize:function(e){let{shapeFlag:t,children:n}=e,r=32&t;e.ssContent=r1(r?n.default:n),e.ssFallback=r?r1(n.fallback):ip(r8)}},e.Teleport=nt,e.Text=r4,e.TrackOpTypes={GET:"get",HAS:"has",ITERATE:"iterate"},e.Transition=iQ,e.TransitionGroup=lE,e.TriggerOpTypes={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},e.VueElement=lC,e.assertNumber=function(e,t){},e.callWithAsyncErrorHandling=tF,e.callWithErrorHandling=tD,e.camelize=B,e.capitalize=q,e.cloneVNode=im,e.compatUtils=null,e.compile=aq,e.computed=iD,e.createApp=l0,e.createBlock=is,e.createCommentVNode=function(e="",t=!1){return t?(ie(),is(r8,null,e)):ip(r8,null,e)},e.createElementBlock=function(e,t,n,r,i,l){return il(id(e,t,n,r,i,l,!0))},e.createElementVNode=id,e.createHydrationRenderer=rq,e.createPropsRestProxy=function(e,t){let n={};for(let r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n},e.createRenderer=function(e){return rW(e)},e.createSSRApp=l1,e.createSlots=function(e,t){for(let n=0;n{let t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e},e.createStaticVNode=function(e,t){let n=ip(r5,null,e);return n.staticCount=t,n},e.createTextVNode=ig,e.createVNode=ip,e.customRef=tE,e.defineAsyncComponent=function(e){let t;I(e)&&(e={loader:e});let{loader:n,loadingComponent:r,errorComponent:i,delay:l=200,hydrate:s,timeout:o,suspensible:a=!0,onError:c}=e,u=null,d=0,p=()=>{let e;return u||(e=u=n().catch(e=>{if(e=e instanceof Error?e:Error(String(e)),c)return new Promise((t,n)=>{c(e,()=>t((d++,u=null,p())),()=>n(e),d+1)});throw e}).then(n=>e!==u&&u?u:(n&&(n.__esModule||"Module"===n[Symbol.toStringTag])&&(n=n.default),t=n,n)))};return nb({name:"AsyncComponentWrapper",__asyncLoader:p,__asyncHydrate(e,n,r){let i=!1;(n.bu||(n.bu=[])).push(()=>i=!0);let l=()=>{i||r()},o=s?()=>{let t=s(l,t=>(function(e,t){if(nN(e)&&"["===e.data){let n=1,r=e.nextSibling;for(;r;){if(1===r.nodeType){if(!1===t(r))break}else if(nN(r))if("]"===r.data){if(0==--n)break}else"["===r.data&&n++;r=r.nextSibling}}else t(e)})(e,t));t&&(n.bum||(n.bum=[])).push(t)}:l;t?o():p().then(()=>!n.isUnmounted&&o())},get __asyncResolved(){return t},setup(){let e=ik;if(n_(e),t)return()=>nL(t,e);let n=t=>{u=null,tV(t,e,13,!i)};if(a&&e.suspense)return p().then(t=>()=>nL(t,e)).catch(e=>(n(e),()=>i?ip(i,{error:e}):null));let s=tS(!1),c=tS(),d=tS(!!l);return l&&setTimeout(()=>{d.value=!1},l),null!=o&&setTimeout(()=>{if(!s.value&&!c.value){let e=Error(`Async component timed out after ${o}ms.`);n(e),c.value=e}},o),p().then(()=>{s.value=!0,e.parent&&n$(e.parent.vnode)&&e.parent.update()}).catch(e=>{n(e),c.value=e}),()=>s.value&&t?nL(t,e):c.value&&i?ip(i,{error:c.value}):r&&!d.value?nL(r,e):void 0}})},e.defineComponent=nb,e.defineCustomElement=lS,e.defineEmits=function(){return null},e.defineExpose=function(e){},e.defineModel=function(){},e.defineOptions=function(e){},e.defineProps=function(){return null},e.defineSSRCustomElement=(e,t)=>lS(e,t,l1),e.defineSlots=function(){return null},e.devtools=void 0,e.effect=function(e,t){e.effect instanceof ey&&(e=e.effect.fn);let n=new ey(e);t&&T(n,t);try{n.run()}catch(e){throw n.stop(),e}let r=n.run.bind(n);return r.effect=n,r},e.effectScope=function(e){return new eg(e)},e.getCurrentInstance=iT,e.getCurrentScope=function(){return l},e.getCurrentWatcher=function(){return m},e.getTransitionRawChildren=ny,e.guardReactiveProps=ih,e.h=iF,e.handleError=tV,e.hasInjectionContext=function(){return!!(iT()||rf)},e.hydrate=(...e)=>{lZ().hydrate(...e)},e.hydrateOnIdle=(e=1e4)=>t=>{let n=nR(t,{timeout:e});return()=>nM(n)},e.hydrateOnInteraction=(e=[])=>(t,n)=>{O(e)&&(e=[e]);let r=!1,i=e=>{r||(r=!0,l(),t(),e.target.dispatchEvent(new e.constructor(e.type,e)))},l=()=>{n(t=>{for(let n of e)t.removeEventListener(n,i)})};return n(t=>{for(let n of e)t.addEventListener(n,i,{once:!0})}),l},e.hydrateOnMediaQuery=e=>t=>{if(e){let n=matchMedia(e);if(!n.matches)return n.addEventListener("change",t,{once:!0}),()=>n.removeEventListener("change",t);t()}},e.hydrateOnVisible=e=>(t,n)=>{let r=new IntersectionObserver(e=>{for(let n of e)if(n.isIntersecting){r.disconnect(),t();break}},e);return n(e=>{if(e instanceof Element){if(function(e){let{top:t,left:n,bottom:r,right:i}=e.getBoundingClientRect(),{innerHeight:l,innerWidth:s}=window;return(t>0&&t0&&r0&&n0&&ir.disconnect()},e.initCustomFormatter=function(){},e.initDirectivesForSSR=S,e.inject=rg,e.isMemoSame=iV,e.isProxy=tm,e.isReactive=tp,e.isReadonly=th,e.isRef=t_,e.isRuntimeOnly=()=>!d,e.isShallow=tf,e.isVNode=io,e.markRaw=tv,e.mergeDefaults=function(e,t){let n=rt(e);for(let e in t){if(e.startsWith("__skip"))continue;let r=n[e];r?E(r)||I(r)?r=n[e]={type:r,default:t[e]}:r.default=t[e]:null===r&&(r=n[e]={default:t[e]}),r&&t[`__skip_${e}`]&&(r.skipFactory=!0)}return n},e.mergeModels=function(e,t){return e&&t?E(e)&&E(t)?e.concat(t):T({},rt(e),rt(t)):e||t},e.mergeProps=i_,e.nextTick=tz,e.nodeOps=iW,e.normalizeClass=ei,e.normalizeProps=function(e){if(!e)return null;let{class:t,style:n}=e;return t&&!O(t)&&(e.class=ei(t)),n&&(e.style=Y(n)),e},e.normalizeStyle=Y,e.onActivated=nF,e.onBeforeMount=nW,e.onBeforeUnmount=nG,e.onBeforeUpdate=nz,e.onDeactivated=nV,e.onErrorCaptured=n0,e.onMounted=nK,e.onRenderTracked=nY,e.onRenderTriggered=nZ,e.onScopeDispose=function(e,t=!1){l&&l.cleanups.push(e)},e.onServerPrefetch=nQ,e.onUnmounted=nX,e.onUpdated=nJ,e.onWatcherCleanup=tL,e.openBlock=ie,e.patchProp=lb,e.popScopeId=function(){t1=null},e.provide=rm,e.proxyRefs=tN,e.pushScopeId=function(e){t1=e},e.queuePostFlushCb=tX,e.reactive=ta,e.readonly=tu,e.ref=tS,e.registerRuntimeCompiler=iO,e.render=lY,e.renderList=function(e,t,n,r){let i,l=n&&n[r],s=E(e);if(s||O(e)){let n=s&&tp(e),r=!1,o=!1;n&&(r=!tf(e),o=th(e),e=eU(e)),i=Array(e.length);for(let n=0,s=e.length;nt(e,n,void 0,l&&l[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,s=n.length;r0;return"default"!==t&&(n.name=t),ie(),is(r3,null,[ip("slot",n,r&&r())],e?-2:64)}let l=e[t];l&&l._c&&(l._d=!1),ie();let s=l&&function e(t){return t.some(t=>!io(t)||t.type!==r8&&(t.type!==r3||!!e(t.children)))?t:null}(l(n)),o=n.key||s&&s.key,a=is(r3,{key:(o&&!R(o)?o:`_${t}`)+(!s&&r?"_fb":"")},s||(r?r():[]),s&&1===e._?64:-2);return!i&&a.scopeId&&(a.slotScopeIds=[a.scopeId+"-s"]),l&&l._c&&(l._d=!0),a},e.resolveComponent=function(e,t){return n6(n1,e,!0,t)||e},e.resolveDirective=function(e){return n6("directives",e)},e.resolveDynamicComponent=function(e){return O(e)?n6(n1,e,!1)||e:e||n2},e.resolveFilter=null,e.resolveTransitionHooks=nf,e.setBlockTracking=ii,e.setDevtoolsHook=S,e.setTransitionHooks=nv,e.shallowReactive=tc,e.shallowReadonly=function(e){return td(e,!0,e8,tr,to)},e.shallowRef=tx,e.ssrContextKey=rv,e.ssrUtils=null,e.stop=function(e){e.effect.stop()},e.toDisplayString=eh,e.toHandlerKey=W,e.toHandlers=function(e,t){let n={};for(let r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:W(r)]=e[r];return n},e.toRaw=tg,e.toRef=function(e,t,n){if(t_(e))return e;if(I(e))return new tO(e);if(!M(e)||!(arguments.length>1))return tS(e);return new tI(e,t,n)},e.toRefs=function(e){let t=E(e)?Array(e.length):{};for(let n in e)t[n]=new tI(e,n,void 0);return t},e.toValue=function(e){return I(e)?e():tT(e)},e.transformVNodeArgs=function(e){},e.triggerRef=function(e){e.dep&&e.dep.trigger()},e.unref=tT,e.useAttrs=function(){return re().attrs},e.useCssModule=function(e="$style"){return b},e.useCssVars=function(e){let t=iT();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>li(e,n))},r=()=>{let r=e(t.proxy);t.ce?li(t.ce,r):function e(t,n){if(128&t.shapeFlag){let r=t.suspense;t=r.activeBranch,r.pendingBranch&&!r.isHydrating&&r.effects.push(()=>{e(r.activeBranch,n)})}for(;t.component;)t=t.component.subTree;if(1&t.shapeFlag&&t.el)li(t.el,n);else if(t.type===r3)t.children.forEach(t=>e(t,n));else if(t.type===r5){let{el:e,anchor:r}=t;for(;e&&(li(e,n),e!==r);)e=e.nextSibling}}(t.subTree,r),n(r)};nz(()=>{tX(r)}),nK(()=>{rb(r,S,{flush:"post"});let e=new MutationObserver(r);e.observe(t.subTree.el.parentNode,{childList:!0}),nX(()=>e.disconnect())})},e.useHost=lk,e.useId=function(){let e=iT();return e?(e.appContext.config.idPrefix||"v")+"-"+e.ids[0]+e.ids[1]++:""},e.useModel=function(e,t,n=b){let r=iT(),i=B(t),l=H(t),s=rx(e,i),o=tE((s,o)=>{let a,c,u=b;return ry(()=>{let t=e[i];K(a,t)&&(a=t,o())}),{get:()=>(s(),n.get?n.get(a):a),set(e){let s=n.set?n.set(e):e;if(!K(s,a)&&!(u!==b&&K(e,u)))return;let d=r.vnode.props;d&&(t in d||i in d||l in d)&&(`onUpdate:${t}`in d||`onUpdate:${i}`in d||`onUpdate:${l}`in d)||(a=e,o()),r.emit(`update:${t}`,s),K(e,s)&&K(e,u)&&!K(s,c)&&o(),u=e,c=s}}});return o[Symbol.iterator]=()=>{let e=0;return{next:()=>e<2?{value:e++?s||b:o,done:!1}:{done:!0}}},o},e.useSSRContext=()=>{},e.useShadowRoot=function(){let e=lk();return e&&e.shadowRoot},e.useSlots=function(){return re().slots},e.useTemplateRef=function(e){let t=iT(),n=tx(null);return t&&Object.defineProperty(t.refs===b?t.refs={}:t.refs,e,{enumerable:!0,get:()=>n.value,set:e=>n.value=e}),n},e.useTransitionState=no,e.vModelCheckbox=lV,e.vModelDynamic={created(e,t,n){lK(e,t,n,null,"created")},mounted(e,t,n){lK(e,t,n,null,"mounted")},beforeUpdate(e,t,n,r){lK(e,t,n,r,"beforeUpdate")},updated(e,t,n,r){lK(e,t,n,r,"updated")}},e.vModelRadio=lB,e.vModelSelect=lU,e.vModelText=lF,e.vShow={name:"show",beforeMount(e,{value:t},{transition:n}){e[le]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):ln(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),ln(e,!0),r.enter(e)):r.leave(e,()=>{ln(e,!1)}):ln(e,t))},beforeUnmount(e,{value:t}){ln(e,t)}},e.version=ij,e.warn=S,e.watch=function(e,t,n){return rb(e,t,n)},e.watchEffect=function(e,t){return rb(e,null,t)},e.watchPostEffect=function(e,t){return rb(e,null,{flush:"post"})},e.watchSyncEffect=ry,e.withAsyncContext=function(e){let t=iT(),n=e();return iN(),P(n)&&(n=n.catch(e=>{throw iw(t),e})),[n,()=>iw(t)]},e.withCtx=t6,e.withDefaults=function(e,t){return null},e.withDirectives=function(e,t){if(null===t0)return e;let n=iL(t0),r=e.dirs||(e.dirs=[]);for(let e=0;e{let n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=n=>{if(!("key"in n))return;let r=H(n.key);if(t.some(e=>e===r||lG[e]===r))return e(n)})},e.withMemo=function(e,t,n,r){let i=n[r];if(i&&iV(i,e))return i;let l=t();return l.memo=e.slice(),l.cacheIndex=r,n[r]=l},e.withModifiers=(e,t)=>{let n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(n,...r)=>{for(let e=0;et6,e}({}); diff --git a/package-lock.json b/package-lock.json index c64c1ea6..bf1e362d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,50 +6,54 @@ "": { "name": "lnbits", "dependencies": { - "axios": "^1.12.0", - "chart.js": "^4.4.4", + "axios": "^1.13.2", + "chart.js": "^4.5.1", "moment": "^2.30.1", - "nostr-tools": "^2.7.2", - "qrcode.vue": "^3.4.1", - "quasar": "2.17.0", + "nostr-tools": "^2.18.2", + "qrcode.vue": "^3.6.0", + "quasar": "2.18.6", "showdown": "^2.1.0", "underscore": "^1.13.7", - "vue": "3.5.8", - "vue-i18n": "^10.0.8", - "vue-qrcode-reader": "^5.5.10", - "vue-router": "4.4.5", + "vue": "3.5.25", + "vue-i18n": "^11.2.2", + "vue-qrcode-reader": "^5.7.3", + "vue-router": "4.6.3", "vuex": "4.1.0" }, "devDependencies": { + "clean-css-cli": "^5.6.3", "concat": "^1.0.3", - "minify": "^9.2.0", - "prettier": "^3.6.2", + "prettier": "^3.7.4", "pyright": "1.1.289", - "sass": "^1.78.0" + "sass": "^1.94.2", + "terser": "^5.44.1" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", - "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", - "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", - "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", + "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", + "license": "MIT", "dependencies": { - "@babel/types": "^7.25.6" + "@babel/types": "^7.28.5" }, "bin": { "parser": "bin/babel-parser.js" @@ -59,26 +63,26 @@ } }, "node_modules/@babel/types": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", - "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.24.8", - "@babel/helper-validator-identifier": "^7.24.7", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@intlify/core-base": { - "version": "10.0.8", - "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-10.0.8.tgz", - "integrity": "sha512-FoHslNWSoHjdUBLy35bpm9PV/0LVI/DSv9L6Km6J2ad8r/mm0VaGg06C40FqlE8u2ADcGUM60lyoU7Myo4WNZQ==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-11.2.2.tgz", + "integrity": "sha512-0mCTBOLKIqFUP3BzwuFW23hYEl9g/wby6uY//AC5hTgQfTsM2srCYF2/hYGp+a5DZ/HIFIgKkLJMzXTt30r0JQ==", "license": "MIT", "dependencies": { - "@intlify/message-compiler": "10.0.8", - "@intlify/shared": "10.0.8" + "@intlify/message-compiler": "11.2.2", + "@intlify/shared": "11.2.2" }, "engines": { "node": ">= 16" @@ -88,12 +92,12 @@ } }, "node_modules/@intlify/message-compiler": { - "version": "10.0.8", - "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-10.0.8.tgz", - "integrity": "sha512-DV+sYXIkHVd5yVb2mL7br/NEUwzUoLBsMkV3H0InefWgmYa34NLZUvMCGi5oWX+Hqr2Y2qUxnVrnOWF4aBlgWg==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-11.2.2.tgz", + "integrity": "sha512-XS2p8Ff5JxWsKhgfld4/MRQzZRQ85drMMPhb7Co6Be4ZOgqJX1DzcZt0IFgGTycgqL8rkYNwgnD443Q+TapOoA==", "license": "MIT", "dependencies": { - "@intlify/shared": "10.0.8", + "@intlify/shared": "11.2.2", "source-map-js": "^1.0.2" }, "engines": { @@ -104,9 +108,9 @@ } }, "node_modules/@intlify/shared": { - "version": "10.0.8", - "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-10.0.8.tgz", - "integrity": "sha512-BcmHpb5bQyeVNrptC3UhzpBZB/YHHDoEREOUERrmF2BRxsyOEuRrq+Z96C/D4+2KJb8kuHiouzAei7BXlG0YYw==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-11.2.2.tgz", + "integrity": "sha512-OtCmyFpSXxNu/oET/aN6HtPCbZ01btXVd0f3w00YsHOb13Kverk1jzA2k47pAekM55qbUw421fvPF1yxZ+gicw==", "license": "MIT", "engines": { "node": ">= 16" @@ -116,57 +120,49 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "dev": true, + "license": "MIT", "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", - "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "version": "0.3.11", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz", + "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", "dev": true, + "license": "MIT", "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==" + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", - "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -218,6 +214,330 @@ "url": "https://paulmillr.com/funding/" } }, + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", + "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.1", + "@parcel/watcher-darwin-arm64": "2.5.1", + "@parcel/watcher-darwin-x64": "2.5.1", + "@parcel/watcher-freebsd-x64": "2.5.1", + "@parcel/watcher-linux-arm-glibc": "2.5.1", + "@parcel/watcher-linux-arm-musl": "2.5.1", + "@parcel/watcher-linux-arm64-glibc": "2.5.1", + "@parcel/watcher-linux-arm64-musl": "2.5.1", + "@parcel/watcher-linux-x64-glibc": "2.5.1", + "@parcel/watcher-linux-x64-musl": "2.5.1", + "@parcel/watcher-win32-arm64": "2.5.1", + "@parcel/watcher-win32-ia32": "2.5.1", + "@parcel/watcher-win32-x64": "2.5.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz", + "integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz", + "integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz", + "integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz", + "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz", + "integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz", + "integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz", + "integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz", + "integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", + "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz", + "integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz", + "integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz", + "integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz", + "integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher/node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "license": "Apache-2.0", + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/@scure/base": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", @@ -276,49 +596,53 @@ "integrity": "sha512-cFq+fO/isvhvmuP/+Sl4K4jtU6E23DoivtbO4r50e3odaxAiVdbfSYRDdJ4gCdxx+3aRjhphS5ZMwIH4hFy/Cw==" }, "node_modules/@vue/compiler-core": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.8.tgz", - "integrity": "sha512-Uzlxp91EPjfbpeO5KtC0KnXPkuTfGsNDeaKQJxQN718uz+RqDYarEf7UhQJGK+ZYloD2taUbHTI2J4WrUaZQNA==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.25.tgz", + "integrity": "sha512-vay5/oQJdsNHmliWoZfHPoVZZRmnSWhug0BYT34njkYTPqClh3DNWLkZNJBVSjsNMrg0CCrBfoKkjZQPM/QVUw==", + "license": "MIT", "dependencies": { - "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.8", + "@babel/parser": "^7.28.5", + "@vue/shared": "3.5.25", "entities": "^4.5.0", "estree-walker": "^2.0.2", - "source-map-js": "^1.2.0" + "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.8.tgz", - "integrity": "sha512-GUNHWvoDSbSa5ZSHT9SnV5WkStWfzJwwTd6NMGzilOE/HM5j+9EB9zGXdtu/fCNEmctBqMs6C9SvVPpVPuk1Eg==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.25.tgz", + "integrity": "sha512-4We0OAcMZsKgYoGlMjzYvaoErltdFI2/25wqanuTu+S4gismOTRTBPi4IASOjxWdzIwrYSjnqONfKvuqkXzE2Q==", + "license": "MIT", "dependencies": { - "@vue/compiler-core": "3.5.8", - "@vue/shared": "3.5.8" + "@vue/compiler-core": "3.5.25", + "@vue/shared": "3.5.25" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.8.tgz", - "integrity": "sha512-taYpngQtSysrvO9GULaOSwcG5q821zCoIQBtQQSx7Uf7DxpR6CIHR90toPr9QfDD2mqHQPCSgoWBvJu0yV9zjg==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.25.tgz", + "integrity": "sha512-PUgKp2rn8fFsI++lF2sO7gwO2d9Yj57Utr5yEsDf3GNaQcowCLKL7sf+LvVFvtJDXUp/03+dC6f2+LCv5aK1ag==", + "license": "MIT", "dependencies": { - "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.8", - "@vue/compiler-dom": "3.5.8", - "@vue/compiler-ssr": "3.5.8", - "@vue/shared": "3.5.8", + "@babel/parser": "^7.28.5", + "@vue/compiler-core": "3.5.25", + "@vue/compiler-dom": "3.5.25", + "@vue/compiler-ssr": "3.5.25", + "@vue/shared": "3.5.25", "estree-walker": "^2.0.2", - "magic-string": "^0.30.11", - "postcss": "^8.4.47", - "source-map-js": "^1.2.0" + "magic-string": "^0.30.21", + "postcss": "^8.5.6", + "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.8.tgz", - "integrity": "sha512-W96PtryNsNG9u0ZnN5Q5j27Z/feGrFV6zy9q5tzJVyJaLiwYxvC0ek4IXClZygyhjm+XKM7WD9pdKi/wIRVC/Q==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.25.tgz", + "integrity": "sha512-ritPSKLBcParnsKYi+GNtbdbrIE1mtuFEJ4U1sWeuOMlIziK5GtOL85t5RhsNy4uWIXPgk+OUdpnXiTdzn8o3A==", + "license": "MIT", "dependencies": { - "@vue/compiler-dom": "3.5.8", - "@vue/shared": "3.5.8" + "@vue/compiler-dom": "3.5.25", + "@vue/shared": "3.5.25" } }, "node_modules/@vue/devtools-api": { @@ -327,55 +651,61 @@ "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==" }, "node_modules/@vue/reactivity": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.8.tgz", - "integrity": "sha512-mlgUyFHLCUZcAYkqvzYnlBRCh0t5ZQfLYit7nukn1GR96gc48Bp4B7OIcSfVSvlG1k3BPfD+p22gi1t2n9tsXg==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.25.tgz", + "integrity": "sha512-5xfAypCQepv4Jog1U4zn8cZIcbKKFka3AgWHEFQeK65OW+Ys4XybP6z2kKgws4YB43KGpqp5D/K3go2UPPunLA==", + "license": "MIT", "dependencies": { - "@vue/shared": "3.5.8" + "@vue/shared": "3.5.25" } }, "node_modules/@vue/runtime-core": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.8.tgz", - "integrity": "sha512-fJuPelh64agZ8vKkZgp5iCkPaEqFJsYzxLk9vSC0X3G8ppknclNDr61gDc45yBGTaN5Xqc1qZWU3/NoaBMHcjQ==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.25.tgz", + "integrity": "sha512-Z751v203YWwYzy460bzsYQISDfPjHTl+6Zzwo/a3CsAf+0ccEjQ8c+0CdX1WsumRTHeywvyUFtW6KvNukT/smA==", + "license": "MIT", "dependencies": { - "@vue/reactivity": "3.5.8", - "@vue/shared": "3.5.8" + "@vue/reactivity": "3.5.25", + "@vue/shared": "3.5.25" } }, "node_modules/@vue/runtime-dom": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.8.tgz", - "integrity": "sha512-DpAUz+PKjTZPUOB6zJgkxVI3GuYc2iWZiNeeHQUw53kdrparSTG6HeXUrYDjaam8dVsCdvQxDz6ZWxnyjccUjQ==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.25.tgz", + "integrity": "sha512-a4WrkYFbb19i9pjkz38zJBg8wa/rboNERq3+hRRb0dHiJh13c+6kAbgqCPfMaJ2gg4weWD3APZswASOfmKwamA==", + "license": "MIT", "dependencies": { - "@vue/reactivity": "3.5.8", - "@vue/runtime-core": "3.5.8", - "@vue/shared": "3.5.8", + "@vue/reactivity": "3.5.25", + "@vue/runtime-core": "3.5.25", + "@vue/shared": "3.5.25", "csstype": "^3.1.3" } }, "node_modules/@vue/server-renderer": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.8.tgz", - "integrity": "sha512-7AmC9/mEeV9mmXNVyUIm1a1AjUhyeeGNbkLh39J00E7iPeGks8OGRB5blJiMmvqSh8SkaS7jkLWSpXtxUCeagA==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.25.tgz", + "integrity": "sha512-UJaXR54vMG61i8XNIzTSf2Q7MOqZHpp8+x3XLGtE3+fL+nQd+k7O5+X3D/uWrnQXOdMw5VPih+Uremcw+u1woQ==", + "license": "MIT", "dependencies": { - "@vue/compiler-ssr": "3.5.8", - "@vue/shared": "3.5.8" + "@vue/compiler-ssr": "3.5.25", + "@vue/shared": "3.5.25" }, "peerDependencies": { - "vue": "3.5.8" + "vue": "3.5.25" } }, "node_modules/@vue/shared": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.8.tgz", - "integrity": "sha512-mJleSWbAGySd2RJdX1RBtcrUBX6snyOc0qHpgk3lGi4l9/P/3ny3ELqFWqYdkXIwwNN/kdm8nD9ky8o6l/Lx2A==" + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.25.tgz", + "integrity": "sha512-AbOPdQQnAnzs58H2FrrDxYj/TJfmeS2jdfEEhgiKINy+bnOANmVizIEgq1r+C5zsbs6l1CCQxtcj71rwNQ4jWg==", + "license": "MIT" }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -388,6 +718,7 @@ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, + "license": "ISC", "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -402,9 +733,9 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "node_modules/axios": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.12.0.tgz", - "integrity": "sha512-oXTDccv8PcfjZmPGlWsPSwtOJCZ/b6W5jAMCNcfwJbCzDckwG0jrYJFaWH1yvivfCXjVzV/SPDEhMB3Q+DSurg==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.2.tgz", + "integrity": "sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==", "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", @@ -412,6 +743,13 @@ "proxy-from-env": "^1.1.0" } }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, "node_modules/barcode-detector": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/barcode-detector/-/barcode-detector-2.2.2.tgz", @@ -422,12 +760,27 @@ } }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, "node_modules/braces": { @@ -435,6 +788,7 @@ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, + "license": "MIT", "dependencies": { "fill-range": "^7.1.1" }, @@ -446,7 +800,8 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/call-bind-apply-helpers": { "version": "1.0.2", @@ -461,20 +816,11 @@ "node": ">= 0.4" } }, - "node_modules/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, "node_modules/chart.js": { - "version": "4.4.4", - "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.4.tgz", - "integrity": "sha512-emICKGBABnxhMjUjlYRR12PmOXhJ2eJjEHL2/dZlWjxRAZT1D8xplLFq5M0tMQK8ja+wBS/tuVEJB5C6r7VxJA==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.5.1.tgz", + "integrity": "sha512-GIjfiT9dbmHRiYi6Nl2yFCq7kkwdkp1W/lp2J99rX0yo9tgJGn3lKQATztIjb5tVtevcBtIdICNWqlq5+E8/Pw==", + "license": "MIT", "dependencies": { "@kurkle/color": "^0.3.0" }, @@ -483,10 +829,59 @@ } }, "node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/clean-css": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", + "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/clean-css-cli": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/clean-css-cli/-/clean-css-cli-5.6.3.tgz", + "integrity": "sha512-MUAta8pEqA/d2DKQwtZU5nm0Og8TCyAglOx3GlWwjhGdKBwY4kVF6E5M6LU/jmmuswv+HbYqG/dKKkq5p1dD0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "chokidar": "^3.5.2", + "clean-css": "^5.3.3", + "commander": "7.x", + "glob": "^7.1.6" + }, + "bin": { + "cleancss": "bin/cleancss" + }, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/clean-css-cli/node_modules/chokidar": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, + "license": "MIT", "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -506,16 +901,27 @@ "fsevents": "~2.3.2" } }, - "node_modules/clean-css": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", - "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", + "node_modules/clean-css-cli/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/clean-css-cli/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", "dependencies": { - "source-map": "~0.6.0" + "picomatch": "^2.2.1" }, "engines": { - "node": ">= 10.0" + "node": ">=8.10.0" } }, "node_modules/combined-stream": { @@ -550,39 +956,18 @@ "node": ">=6" } }, - "node_modules/css-b64-images": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/css-b64-images/-/css-b64-images-0.2.5.tgz", - "integrity": "sha512-TgQBEdP07adhrDfXvI5o6bHGukKBNMzp2Ngckc/6d09zpjD2gc1Hl3Ca1CKgb8FXjHi88+Phv2Uegs2kTL4zjg==", + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true, - "bin": { - "css-b64-images": "bin/css-b64-images" - }, - "engines": { - "node": "*" - } + "license": "MIT" }, "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT" }, "node_modules/delayed-stream": { "version": "1.0.0", @@ -592,16 +977,6 @@ "node": ">=0.4.0" } }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/dunder-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", @@ -620,6 +995,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", "engines": { "node": ">=0.12" }, @@ -675,13 +1051,15 @@ "node_modules/estree-walker": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "license": "MIT" }, "node_modules/fill-range": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, + "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -724,6 +1102,13 @@ "node": ">= 6" } }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, "node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", @@ -784,11 +1169,34 @@ "node": ">= 0.4" } }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/glob-parent": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.1" }, @@ -847,47 +1255,38 @@ "node": ">= 0.4" } }, - "node_modules/html-minifier-terser": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz", - "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==", - "dev": true, - "dependencies": { - "camel-case": "^4.1.2", - "clean-css": "~5.3.2", - "commander": "^10.0.0", - "entities": "^4.4.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.15.1" - }, - "bin": { - "html-minifier-terser": "cli.js" - }, - "engines": { - "node": "^14.13.1 || >=16.0.0" - } - }, - "node_modules/html-minifier-terser/node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "dev": true, - "engines": { - "node": ">=14" - } - }, "node_modules/immutable": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", - "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", - "dev": true + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.4.tgz", + "integrity": "sha512-p6u1bG3YSnINT5RQmx/yRZBpenIl30kVxkTLDyHLIMk0gict704Q9n+thfDI7lTRm9vXdDYutVzXhzcThxTnXA==", + "dev": true, + "license": "MIT" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, + "license": "MIT", "dependencies": { "binary-extensions": "^2.0.0" }, @@ -900,6 +1299,7 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -909,6 +1309,7 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" }, @@ -921,31 +1322,18 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.12.0" } }, - "node_modules/jju": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", - "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", - "dev": true - }, - "node_modules/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, - "dependencies": { - "tslib": "^2.0.3" - } - }, "node_modules/magic-string": { - "version": "0.30.11", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", - "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" + "@jridgewell/sourcemap-codec": "^1.5.5" } }, "node_modules/math-intrinsics": { @@ -957,6 +1345,21 @@ "node": ">= 0.4" } }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, "node_modules/mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", @@ -976,104 +1379,17 @@ "node": ">= 0.6" } }, - "node_modules/minify": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/minify/-/minify-9.2.0.tgz", - "integrity": "sha512-dfVx8j27TIZy2EE/nVMAhTVmUo6tdO4gYbKXaCYPUmpqWN2QJBgQtPfofsoA658L3Ee7e5OcyFIncJRgFtZcqQ==", + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "clean-css": "^5.0.1", - "css-b64-images": "~0.2.5", - "debug": "^4.1.0", - "find-up": "^6.1.0", - "html-minifier-terser": "^7.1.0", - "readjson": "^2.2.2", - "simport": "^1.2.0", - "terser": "^5.3.2", - "try-catch": "^3.0.0", - "try-to-catch": "^3.0.0" - }, - "bin": { - "minify": "bin/minify.js" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=16" - } - }, - "node_modules/minify/node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minify/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minify/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minify/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minify/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": "*" } }, "node_modules/moment": { @@ -1085,22 +1401,17 @@ "node": "*" } }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/nanoid": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", - "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", "funding": [ { "type": "github", "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -1108,39 +1419,37 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", "dev": true, - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } + "license": "MIT", + "optional": true }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nostr-tools": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/nostr-tools/-/nostr-tools-2.7.2.tgz", - "integrity": "sha512-Bq3Ug0SZFtgtL1+0wCnAe8AJtI7yx/00/a2nUug9SkhfOwlKS92Tef12iCK9FdwXw+oFZWMtRnSwcLayQso+xA==", + "version": "2.18.2", + "resolved": "https://registry.npmjs.org/nostr-tools/-/nostr-tools-2.18.2.tgz", + "integrity": "sha512-lUCJQd9YZG3kEvxV5Zgm7qUkBpaeuvFrtqBz4TJLAxHzUn2pE7nmZZRDQmNzp5neEw20tQS3jR16o7XzzF8ncg==", + "license": "Unlicense", "dependencies": { "@noble/ciphers": "^0.5.1", "@noble/curves": "1.2.0", "@noble/hashes": "1.3.1", "@scure/base": "1.1.1", "@scure/bip32": "1.3.1", - "@scure/bip39": "1.2.1" - }, - "optionalDependencies": { - "nostr-wasm": "v0.1.0" + "@scure/bip39": "1.2.1", + "nostr-wasm": "0.1.0" }, "peerDependencies": { "typescript": ">=5.0.0" @@ -1154,39 +1463,40 @@ "node_modules/nostr-wasm": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/nostr-wasm/-/nostr-wasm-0.1.0.tgz", - "integrity": "sha512-78BTryCLcLYv96ONU8Ws3Q1JzjlAt+43pWQhIl86xZmWeegYCNLPml7yQ+gG3vR6V5h4XGj+TxO+SS5dsThQIA==", - "optional": true + "integrity": "sha512-78BTryCLcLYv96ONU8Ws3Q1JzjlAt+43pWQhIl86xZmWeegYCNLPml7yQ+gG3vR6V5h4XGj+TxO+SS5dsThQIA==" }, - "node_modules/param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, + "license": "ISC", "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" + "wrappy": "1" } }, - "node_modules/pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, "node_modules/picocolors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", - "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, + "license": "MIT", "engines": { "node": ">=8.6" }, @@ -1195,9 +1505,9 @@ } }, "node_modules/postcss": { - "version": "8.4.47", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", - "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", "funding": [ { "type": "opencollective", @@ -1212,9 +1522,10 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.1.0", + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, "engines": { @@ -1222,9 +1533,9 @@ } }, "node_modules/prettier": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.2.tgz", - "integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==", + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.7.4.tgz", + "integrity": "sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==", "dev": true, "license": "MIT", "bin": { @@ -1257,18 +1568,19 @@ } }, "node_modules/qrcode.vue": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/qrcode.vue/-/qrcode.vue-3.4.1.tgz", - "integrity": "sha512-wq/zHsifH4FJ1GXQi8/wNxD1KfQkckIpjK1KPTc/qwYU5/Bkd4me0w4xZSg6EXk6xLBkVDE0zxVagewv5EMAVA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/qrcode.vue/-/qrcode.vue-3.6.0.tgz", + "integrity": "sha512-vQcl2fyHYHMjDO1GguCldJxepq2izQjBkDEEu9NENgfVKP6mv/e2SU62WbqYHGwTgWXLhxZ1NCD1dAZKHQq1fg==", "license": "MIT", "peerDependencies": { "vue": "^3.0.0" } }, "node_modules/quasar": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/quasar/-/quasar-2.17.0.tgz", - "integrity": "sha512-xFWwCt4FGuaC0M4/MA5drjBiCP7kj/5BsUPv2+dDIlyQG9YGvKIewCnWYYt02r4ijRqJSzPb7TsH89Gzkno1Mg==", + "version": "2.18.6", + "resolved": "https://registry.npmjs.org/quasar/-/quasar-2.18.6.tgz", + "integrity": "sha512-ZlK+vJXOBPSFDCNQDBDNwSI+AHoqaFPxK8ve6mhsYLhMKWI5b8zsGY9VU1xYjngO2aBvU4fvGWXy4tTbzrBk8Q==", + "license": "MIT", "engines": { "node": ">= 10.18.1", "npm": ">= 6.13.4", @@ -1280,47 +1592,28 @@ } }, "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", "dev": true, - "dependencies": { - "picomatch": "^2.2.1" + "license": "MIT", + "engines": { + "node": ">= 14.18.0" }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/readjson": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/readjson/-/readjson-2.2.2.tgz", - "integrity": "sha512-PdeC9tsmLWBiL8vMhJvocq+OezQ3HhsH2HrN7YkhfYcTjQSa/iraB15A7Qvt7Xpr0Yd2rDNt6GbFwVQDg3HcAw==", - "dev": true, - "dependencies": { - "jju": "^1.4.0", - "try-catch": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", - "dev": true, - "engines": { - "node": ">= 0.10" + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/sass": { - "version": "1.78.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.78.0.tgz", - "integrity": "sha512-AaIqGSrjo5lA2Yg7RvFZrlXDBCp3nV4XP73GrLGvdRWWwk+8H3l0SDvq/5bA4eF+0RFPLuWUk3E+P1U/YqnpsQ==", + "version": "1.94.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.94.2.tgz", + "integrity": "sha512-N+7WK20/wOr7CzA2snJcUSSNTCzeCGUTFY3OgeQP3mZ1aj9NMQ0mSTXwlrnd89j33zzQJGqIN52GIOmYrfq46A==", "dev": true, + "license": "MIT", "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", + "chokidar": "^4.0.0", + "immutable": "^5.0.2", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { @@ -1328,6 +1621,9 @@ }, "engines": { "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" } }, "node_modules/sdp": { @@ -1358,24 +1654,12 @@ "node": "^12.20.0 || >=14" } }, - "node_modules/simport": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/simport/-/simport-1.2.0.tgz", - "integrity": "sha512-85Bm7pKsqiiQ8rmYCaPDdlXZjJvuW6/k/FY8MTtLFMgU7f8S00CgTHfRtWB6KwSb6ek4p9YyG2enG1+yJbl+CA==", - "dev": true, - "dependencies": { - "readjson": "^2.2.0", - "try-to-catch": "^3.0.0" - }, - "engines": { - "node": ">=12.2" - } - }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -1393,19 +1677,21 @@ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, + "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" } }, "node_modules/terser": { - "version": "5.31.6", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.6.tgz", - "integrity": "sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==", + "version": "5.44.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.44.1.tgz", + "integrity": "sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", + "acorn": "^8.15.0", "commander": "^2.20.0", "source-map-support": "~0.5.20" }, @@ -1416,19 +1702,12 @@ "node": ">=10" } }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, + "license": "MIT", "dependencies": { "is-number": "^7.0.0" }, @@ -1436,45 +1715,22 @@ "node": ">=8.0" } }, - "node_modules/try-catch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/try-catch/-/try-catch-3.0.1.tgz", - "integrity": "sha512-91yfXw1rr/P6oLpHSyHDOHm0vloVvUoo9FVdw8YwY05QjJQG9OT0LUxe2VRAzmHG+0CUOmI3nhxDUMLxDN/NEQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/try-to-catch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/try-to-catch/-/try-to-catch-3.0.1.tgz", - "integrity": "sha512-hOY83V84Hx/1sCzDSaJA+Xz2IIQOHRvjxzt+F0OjbQGPZ6yLPLArMA0gw/484MlfUkQbCpKYMLX3VDCAjWKfzQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, "node_modules/underscore": { "version": "1.13.7", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.7.tgz", "integrity": "sha512-GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g==" }, "node_modules/vue": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.8.tgz", - "integrity": "sha512-hvuvuCy51nP/1fSRvrrIqTLSvrSyz2Pq+KQ8S8SXCxTWVE0nMaOnSDnSOxV1eYmGfvK7mqiwvd1C59CEEz7dAQ==", + "version": "3.5.25", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.25.tgz", + "integrity": "sha512-YLVdgv2K13WJ6n+kD5owehKtEXwdwXuj2TTyJMsO7pSeKw2bfRNZGjhB7YzrpbMYj5b5QsUebHpOqR3R3ziy/g==", + "license": "MIT", "dependencies": { - "@vue/compiler-dom": "3.5.8", - "@vue/compiler-sfc": "3.5.8", - "@vue/runtime-dom": "3.5.8", - "@vue/server-renderer": "3.5.8", - "@vue/shared": "3.5.8" + "@vue/compiler-dom": "3.5.25", + "@vue/compiler-sfc": "3.5.25", + "@vue/runtime-dom": "3.5.25", + "@vue/server-renderer": "3.5.25", + "@vue/shared": "3.5.25" }, "peerDependencies": { "typescript": "*" @@ -1486,13 +1742,13 @@ } }, "node_modules/vue-i18n": { - "version": "10.0.8", - "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-10.0.8.tgz", - "integrity": "sha512-mIjy4utxMz9lMMo6G9vYePv7gUFt4ztOMhY9/4czDJxZ26xPeJ49MAGa9wBAE3XuXbYCrtVPmPxNjej7JJJkZQ==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-11.2.2.tgz", + "integrity": "sha512-ULIKZyRluUPRCZmihVgUvpq8hJTtOqnbGZuv4Lz+byEKZq4mU0g92og414l6f/4ju+L5mORsiUuEPYrAuX2NJg==", "license": "MIT", "dependencies": { - "@intlify/core-base": "10.0.8", - "@intlify/shared": "10.0.8", + "@intlify/core-base": "11.2.2", + "@intlify/shared": "11.2.2", "@vue/devtools-api": "^6.5.0" }, "engines": { @@ -1506,9 +1762,9 @@ } }, "node_modules/vue-qrcode-reader": { - "version": "5.5.11", - "resolved": "https://registry.npmjs.org/vue-qrcode-reader/-/vue-qrcode-reader-5.5.11.tgz", - "integrity": "sha512-Ec/bVML1jgxSX+usbgdcXGhOFEFo4EzApCO2CNT1YK0Dcb0Mp7ASygz78RJJs22SU2oI7vz9iJDyr4ucSDTvjQ==", + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/vue-qrcode-reader/-/vue-qrcode-reader-5.7.3.tgz", + "integrity": "sha512-iSGko42FsEvdHyizBMBs/X+HMO9Z5ONDxjW+mQdoraOR5emRNedmjC5SEJdYzGz8ZP5ME3lwB4iHy3S7MOt5Qw==", "license": "MIT", "dependencies": { "barcode-detector": "2.2.2", @@ -1519,9 +1775,10 @@ } }, "node_modules/vue-router": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.4.5.tgz", - "integrity": "sha512-4fKZygS8cH1yCyuabAXGUAsyi1b2/o/OKgu/RUb+znIYOxPRxdkytJEx+0wGcpBE1pX6vUgh5jwWOKRGvuA/7Q==", + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.6.3.tgz", + "integrity": "sha512-ARBedLm9YlbvQomnmq91Os7ck6efydTSpRP3nuOKCvgJOHNrhRoJDSKtee8kcL1Vf7nz6U+PMBL+hTvR3bTVQg==", + "license": "MIT", "dependencies": { "@vue/devtools-api": "^6.6.4" }, @@ -1529,7 +1786,7 @@ "url": "https://github.com/sponsors/posva" }, "peerDependencies": { - "vue": "^3.2.0" + "vue": "^3.5.0" } }, "node_modules/vuex": { @@ -1555,18 +1812,12 @@ "npm": ">=3.10.0" } }, - "node_modules/yocto-queue": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", - "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "license": "ISC" }, "node_modules/zxing-wasm": { "version": "1.1.3", diff --git a/package.json b/package.json index e31a8f84..0b55dc21 100644 --- a/package.json +++ b/package.json @@ -7,31 +7,32 @@ "vendor_bundle_css": "node -e \"require('concat')(require('./package.json').bundle.css.map(a => 'lnbits/static/'+a), './lnbits/static/bundle.css')\"", "vendor_bundle_js": "node -e \"require('concat')(require('./package.json').bundle.js.map(a => 'lnbits/static/'+a),'./lnbits/static/bundle.js')\"", "vendor_bundle_components": "node -e \"require('concat')(require('./package.json').bundle.components.map(a => 'lnbits/static/'+a), './lnbits/static/bundle-components.js')\"", - "vendor_minify_css": "./node_modules/.bin/minify ./lnbits/static/bundle.css > ./lnbits/static/bundle.min.css", - "vendor_minify_js": "./node_modules/.bin/minify ./lnbits/static/bundle.js > ./lnbits/static/bundle.min.js", - "vendor_minify_components": "./node_modules/.bin/minify ./lnbits/static/bundle-components.js > ./lnbits/static/bundle-components.min.js", + "vendor_minify_css": "./node_modules/.bin/cleancss -o ./lnbits/static/bundle.min.css ./lnbits/static/bundle.css", + "vendor_minify_js": "./node_modules/.bin/terser ./lnbits/static/bundle.js -o ./lnbits/static/bundle.min.js --compress --mangle", + "vendor_minify_components": "./node_modules/.bin/terser ./lnbits/static/bundle-components.js -o ./lnbits/static/bundle-components.min.js --compress --mangle", "bundle": "npm run sass && npm run vendor_copy && npm run vendor_json && npm run vendor_bundle_css && npm run vendor_bundle_js && npm run vendor_bundle_components && npm run vendor_minify_css && npm run vendor_minify_js && npm run vendor_minify_components" }, "devDependencies": { + "clean-css-cli": "^5.6.3", "concat": "^1.0.3", - "minify": "^9.2.0", - "prettier": "^3.6.2", + "prettier": "^3.7.4", "pyright": "1.1.289", - "sass": "^1.78.0" + "sass": "^1.94.2", + "terser": "^5.44.1" }, "dependencies": { - "axios": "^1.12.0", - "chart.js": "^4.4.4", + "axios": "^1.13.2", + "chart.js": "^4.5.1", "moment": "^2.30.1", - "nostr-tools": "^2.7.2", - "qrcode.vue": "^3.4.1", - "quasar": "2.17.0", + "nostr-tools": "^2.18.2", + "qrcode.vue": "^3.6.0", + "quasar": "2.18.6", "showdown": "^2.1.0", "underscore": "^1.13.7", - "vue": "3.5.8", - "vue-i18n": "^10.0.8", - "vue-qrcode-reader": "^5.5.10", - "vue-router": "4.4.5", + "vue": "3.5.25", + "vue-i18n": "^11.2.2", + "vue-qrcode-reader": "^5.7.3", + "vue-router": "4.6.3", "vuex": "4.1.0" }, "vendor": [