From 4eb8cea525661d677553f7a279a9654f3333c03d Mon Sep 17 00:00:00 2001 From: gogacoder Date: Tue, 7 Jan 2025 22:57:39 +0700 Subject: [PATCH] feat: draft of excel export --- .task/checksum/linux-common-build-frontend | 2 +- .task/checksum/linux-common-generate-bindings | 2 +- .task/checksum/linux-common-go-mod-tidy | 2 +- .../bindings/app/internal/models/models.ts | 7 + frontend/bindings/time/index.ts | 4 + frontend/bindings/time/models.ts | 51 + .../{index-oNxRZnbe.js => index-CeF7Es-a.js} | 12 +- frontend/dist/index.html | 2 +- .../node_modules/.vite/deps/_metadata.json | 10 +- .../deps_temp_e0499671/@wailsio_runtime.js | 1620 ++ .../@wailsio_runtime.js.map | 7 + .../deps_temp_e0499671/chunk-PZ5AY32C.js | 10 + .../deps_temp_e0499671/chunk-PZ5AY32C.js.map | 7 + .../.vite/deps_temp_e0499671/package.json | 3 + .../.vite/deps_temp_e0499671/vue.js | 12543 ++++++++++++++++ .../.vite/deps_temp_e0499671/vue.js.map | 7 + .../lib/downloaded-@esbuild-linux-x64-esbuild | Bin 0 -> 9707520 bytes go.mod | 6 + go.sum | 15 + internal/dialogs/dialogs.go | 7 +- internal/extras/excel/export.go | 36 + internal/models/models.go | 6 +- 22 files changed, 14341 insertions(+), 18 deletions(-) create mode 100644 frontend/bindings/time/index.ts create mode 100644 frontend/bindings/time/models.ts rename frontend/dist/assets/{index-oNxRZnbe.js => index-CeF7Es-a.js} (87%) create mode 100644 frontend/node_modules/.vite/deps_temp_e0499671/@wailsio_runtime.js create mode 100644 frontend/node_modules/.vite/deps_temp_e0499671/@wailsio_runtime.js.map create mode 100644 frontend/node_modules/.vite/deps_temp_e0499671/chunk-PZ5AY32C.js create mode 100644 frontend/node_modules/.vite/deps_temp_e0499671/chunk-PZ5AY32C.js.map create mode 100644 frontend/node_modules/.vite/deps_temp_e0499671/package.json create mode 100644 frontend/node_modules/.vite/deps_temp_e0499671/vue.js create mode 100644 frontend/node_modules/.vite/deps_temp_e0499671/vue.js.map create mode 100755 frontend/node_modules/esbuild/lib/downloaded-@esbuild-linux-x64-esbuild diff --git a/.task/checksum/linux-common-build-frontend b/.task/checksum/linux-common-build-frontend index 292e479..b86545c 100644 --- a/.task/checksum/linux-common-build-frontend +++ b/.task/checksum/linux-common-build-frontend @@ -1 +1 @@ -1a407d8a115d4dcba0f64a4a4e445309 +e0088cba993d74efbca325beafeb26e0 diff --git a/.task/checksum/linux-common-generate-bindings b/.task/checksum/linux-common-generate-bindings index cac103a..c16a3dc 100644 --- a/.task/checksum/linux-common-generate-bindings +++ b/.task/checksum/linux-common-generate-bindings @@ -1 +1 @@ -ddc4b88644fe1db1c146bd0cc127cf98 +7923625c15ebc662cfde019f067dedd9 diff --git a/.task/checksum/linux-common-go-mod-tidy b/.task/checksum/linux-common-go-mod-tidy index de55a35..4421984 100644 --- a/.task/checksum/linux-common-go-mod-tidy +++ b/.task/checksum/linux-common-go-mod-tidy @@ -1 +1 @@ -ff91e2561ee95f47290ca5b41d1bc0ec +2f8bbf1ef861a77d4c55b91b044d0028 diff --git a/frontend/bindings/app/internal/models/models.ts b/frontend/bindings/app/internal/models/models.ts index 5153c54..720fd40 100644 --- a/frontend/bindings/app/internal/models/models.ts +++ b/frontend/bindings/app/internal/models/models.ts @@ -5,6 +5,9 @@ // @ts-ignore: Unused imports import {Create as $Create} from "@wailsio/runtime"; +/** + * Author A sample of comment + */ export class Author { "Id": number; "Name": string; @@ -33,6 +36,7 @@ export class Author { export class Post { "Id": number; "Text": string; + "CreatedAt": number; /** Creates a new Post instance. */ constructor($$source: Partial = {}) { @@ -42,6 +46,9 @@ export class Post { if (!("Text" in $$source)) { this["Text"] = ""; } + if (!("CreatedAt" in $$source)) { + this["CreatedAt"] = 0; + } Object.assign(this, $$source); } diff --git a/frontend/bindings/time/index.ts b/frontend/bindings/time/index.ts new file mode 100644 index 0000000..c9d993a --- /dev/null +++ b/frontend/bindings/time/index.ts @@ -0,0 +1,4 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +export * from "./models.js"; diff --git a/frontend/bindings/time/models.ts b/frontend/bindings/time/models.ts new file mode 100644 index 0000000..7a361a9 --- /dev/null +++ b/frontend/bindings/time/models.ts @@ -0,0 +1,51 @@ +// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL +// This file is automatically generated. DO NOT EDIT + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore: Unused imports +import {Create as $Create} from "@wailsio/runtime"; + +/** + * A Time represents an instant in time with nanosecond precision. + * + * Programs using times should typically store and pass them as values, + * not pointers. That is, time variables and struct fields should be of + * type time.Time, not *time.Time. + * + * A Time value can be used by multiple goroutines simultaneously except + * that the methods GobDecode, UnmarshalBinary, UnmarshalJSON and + * UnmarshalText are not concurrency-safe. + * + * Time instants can be compared using the Before, After, and Equal methods. + * The Sub method subtracts two instants, producing a Duration. + * The Add method adds a Time and a Duration, producing a Time. + * + * The zero value of type Time is January 1, year 1, 00:00:00.000000000 UTC. + * As this time is unlikely to come up in practice, the IsZero method gives + * a simple way of detecting a time that has not been initialized explicitly. + * + * Each time has an associated Location. The methods Local, UTC, and In return a + * Time with a specific Location. Changing the Location of a Time value with + * these methods does not change the actual instant it represents, only the time + * zone in which to interpret it. + * + * Representations of a Time value saved by the GobEncode, MarshalBinary, + * MarshalJSON, and MarshalText methods store the Time.Location's offset, but not + * the location name. They therefore lose information about Daylight Saving Time. + * + * In addition to the required “wall clock” reading, a Time may contain an optional + * reading of the current process's monotonic clock, to provide additional precision + * for comparison or subtraction. + * See the “Monotonic Clocks” section in the package documentation for details. + * + * Note that the Go == operator compares not just the time instant but also the + * Location and the monotonic clock reading. Therefore, Time values should not + * be used as map or database keys without first guaranteeing that the + * identical Location has been set for all values, which can be achieved + * through use of the UTC or Local method, and that the monotonic clock reading + * has been stripped by setting t = t.Round(0). In general, prefer t.Equal(u) + * to t == u, since t.Equal uses the most accurate comparison available and + * correctly handles the case when only one of its arguments has a monotonic + * clock reading. + */ +export type Time = any; diff --git a/frontend/dist/assets/index-oNxRZnbe.js b/frontend/dist/assets/index-CeF7Es-a.js similarity index 87% rename from frontend/dist/assets/index-oNxRZnbe.js rename to frontend/dist/assets/index-CeF7Es-a.js index 6ad96bb..61e4a1e 100644 --- a/frontend/dist/assets/index-oNxRZnbe.js +++ b/frontend/dist/assets/index-CeF7Es-a.js @@ -1,22 +1,22 @@ -var Zr=Object.defineProperty;var Xr=(e,t,n)=>t in e?Zr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var hn=(e,t,n)=>Xr(e,typeof t!="symbol"?t+"":t,n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const i of r)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function n(r){const i={};return r.integrity&&(i.integrity=r.integrity),r.referrerPolicy&&(i.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?i.credentials="include":r.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function s(r){if(r.ep)return;r.ep=!0;const i=n(r);fetch(r.href,i)}})();/** +var Zr=Object.defineProperty;var Xr=(e,t,n)=>t in e?Zr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var jt=(e,t,n)=>Xr(e,typeof t!="symbol"?t+"":t,n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const i of r)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function n(r){const i={};return r.integrity&&(i.integrity=r.integrity),r.referrerPolicy&&(i.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?i.credentials="include":r.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function s(r){if(r.ep)return;r.ep=!0;const i=n(r);fetch(r.href,i)}})();/** * @vue/shared v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function Wn(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const U={},nt=[],Se=()=>{},Qr=()=>!1,tn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),$n=e=>e.startsWith("onUpdate:"),k=Object.assign,Bn=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},kr=Object.prototype.hasOwnProperty,L=(e,t)=>kr.call(e,t),P=Array.isArray,mt=e=>nn(e)==="[object Map]",ei=e=>nn(e)==="[object Set]",A=e=>typeof e=="function",J=e=>typeof e=="string",lt=e=>typeof e=="symbol",G=e=>e!==null&&typeof e=="object",Vs=e=>(G(e)||A(e))&&A(e.then)&&A(e.catch),ti=Object.prototype.toString,nn=e=>ti.call(e),ni=e=>nn(e).slice(8,-1),si=e=>nn(e)==="[object Object]",Vn=e=>J(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,bt=Wn(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),sn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},ri=/-(\w)/g,Ne=sn(e=>e.replace(ri,(t,n)=>n?n.toUpperCase():"")),ii=/\B([A-Z])/g,Je=sn(e=>e.replace(ii,"-$1").toLowerCase()),Ks=sn(e=>e.charAt(0).toUpperCase()+e.slice(1)),pn=sn(e=>e?`on${Ks(e)}`:""),He=(e,t)=>!Object.is(e,t),Bt=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},On=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let ds;const rn=()=>ds||(ds=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Kn(e){if(P(e)){const t={};for(let n=0;n{if(n){const s=n.split(li);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function zn(e){let t="";if(J(e))t=e;else if(P(e))for(let n=0;nn in t}const U={},nt=[],Se=()=>{},Qr=()=>!1,nn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),$n=e=>e.startsWith("onUpdate:"),k=Object.assign,Bn=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},kr=Object.prototype.hasOwnProperty,L=(e,t)=>kr.call(e,t),P=Array.isArray,mt=e=>sn(e)==="[object Map]",ei=e=>sn(e)==="[object Set]",A=e=>typeof e=="function",J=e=>typeof e=="string",lt=e=>typeof e=="symbol",G=e=>e!==null&&typeof e=="object",Vs=e=>(G(e)||A(e))&&A(e.then)&&A(e.catch),ti=Object.prototype.toString,sn=e=>ti.call(e),ni=e=>sn(e).slice(8,-1),si=e=>sn(e)==="[object Object]",Vn=e=>J(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,bt=Wn(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),rn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},ri=/-(\w)/g,Ne=rn(e=>e.replace(ri,(t,n)=>n?n.toUpperCase():"")),ii=/\B([A-Z])/g,Je=rn(e=>e.replace(ii,"-$1").toLowerCase()),Ks=rn(e=>e.charAt(0).toUpperCase()+e.slice(1)),pn=rn(e=>e?`on${Ks(e)}`:""),He=(e,t)=>!Object.is(e,t),Vt=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},On=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let ds;const on=()=>ds||(ds=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Kn(e){if(P(e)){const t={};for(let n=0;n{if(n){const s=n.split(li);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function zn(e){let t="";if(J(e))t=e;else if(P(e))for(let n=0;n0)return;if(wt){let t=wt;for(wt=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;_t;){let t=_t;for(_t=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function Zs(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Xs(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),qn(s),pi(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function Rn(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Qs(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Qs(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ct))return;e.globalVersion=Ct;const t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!Rn(e)){e.flags&=-3;return}const n=B,s=de;B=e,de=!0;try{Zs(e);const r=e.fn(e._value);(t.version===0||He(r,e._value))&&(e._value=r,t.version++)}catch(r){throw t.version++,r}finally{B=n,de=s,Xs(e),e.flags&=-3}}function qn(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)qn(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function pi(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let de=!0;const ks=[];function je(){ks.push(de),de=!1}function Ue(){const e=ks.pop();de=e===void 0?!0:e}function hs(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=B;B=void 0;try{t()}finally{B=n}}}let Ct=0;class gi{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Jn{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(t){if(!B||!de||B===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==B)n=this.activeLink=new gi(B,this),B.deps?(n.prevDep=B.depsTail,B.depsTail.nextDep=n,B.depsTail=n):B.deps=B.depsTail=n,er(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=B.depsTail,n.nextDep=void 0,B.depsTail.nextDep=n,B.depsTail=n,B.deps===n&&(B.deps=s)}return n}trigger(t){this.version++,Ct++,this.notify(t)}notify(t){Gn();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Yn()}}}function er(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)er(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const An=new WeakMap,Ge=Symbol(""),Pn=Symbol(""),Mt=Symbol("");function X(e,t,n){if(de&&B){let s=An.get(e);s||An.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new Jn),r.map=s,r.key=n),r.track()}}function Oe(e,t,n,s,r,i){const o=An.get(e);if(!o){Ct++;return}const l=f=>{f&&f.trigger()};if(Gn(),t==="clear")o.forEach(l);else{const f=P(e),h=f&&Vn(n);if(f&&n==="length"){const a=Number(s);o.forEach((p,S)=>{(S==="length"||S===Mt||!lt(S)&&S>=a)&&l(p)})}else switch((n!==void 0||o.has(void 0))&&l(o.get(n)),h&&l(o.get(Mt)),t){case"add":f?h&&l(o.get("length")):(l(o.get(Ge)),mt(e)&&l(o.get(Pn)));break;case"delete":f||(l(o.get(Ge)),mt(e)&&l(o.get(Pn)));break;case"set":mt(e)&&l(o.get(Ge));break}}Yn()}function Qe(e){const t=H(e);return t===e?t:(X(t,"iterate",Mt),he(e)?t:t.map(ne))}function Zn(e){return X(e=H(e),"iterate",Mt),e}const mi={__proto__:null,[Symbol.iterator](){return mn(this,Symbol.iterator,ne)},concat(...e){return Qe(this).concat(...e.map(t=>P(t)?Qe(t):t))},entries(){return mn(this,"entries",e=>(e[1]=ne(e[1]),e))},every(e,t){return Me(this,"every",e,t,void 0,arguments)},filter(e,t){return Me(this,"filter",e,t,n=>n.map(ne),arguments)},find(e,t){return Me(this,"find",e,t,ne,arguments)},findIndex(e,t){return Me(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Me(this,"findLast",e,t,ne,arguments)},findLastIndex(e,t){return Me(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Me(this,"forEach",e,t,void 0,arguments)},includes(...e){return bn(this,"includes",e)},indexOf(...e){return bn(this,"indexOf",e)},join(e){return Qe(this).join(e)},lastIndexOf(...e){return bn(this,"lastIndexOf",e)},map(e,t){return Me(this,"map",e,t,void 0,arguments)},pop(){return dt(this,"pop")},push(...e){return dt(this,"push",e)},reduce(e,...t){return ps(this,"reduce",e,t)},reduceRight(e,...t){return ps(this,"reduceRight",e,t)},shift(){return dt(this,"shift")},some(e,t){return Me(this,"some",e,t,void 0,arguments)},splice(...e){return dt(this,"splice",e)},toReversed(){return Qe(this).toReversed()},toSorted(e){return Qe(this).toSorted(e)},toSpliced(...e){return Qe(this).toSpliced(...e)},unshift(...e){return dt(this,"unshift",e)},values(){return mn(this,"values",ne)}};function mn(e,t,n){const s=Zn(e),r=s[t]();return s!==e&&!he(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.value&&(i.value=n(i.value)),i}),r}const bi=Array.prototype;function Me(e,t,n,s,r,i){const o=Zn(e),l=o!==e&&!he(e),f=o[t];if(f!==bi[t]){const p=f.apply(e,i);return l?ne(p):p}let h=n;o!==e&&(l?h=function(p,S){return n.call(this,ne(p),S,e)}:n.length>2&&(h=function(p,S){return n.call(this,p,S,e)}));const a=f.call(o,h,s);return l&&r?r(a):a}function ps(e,t,n,s){const r=Zn(e);let i=n;return r!==e&&(he(e)?n.length>3&&(i=function(o,l,f){return n.call(this,o,l,f,e)}):i=function(o,l,f){return n.call(this,o,ne(l),f,e)}),r[t](i,...s)}function bn(e,t,n){const s=H(e);X(s,"iterate",Mt);const r=s[t](...n);return(r===-1||r===!1)&&es(n[0])?(n[0]=H(n[0]),s[t](...n)):r}function dt(e,t,n=[]){je(),Gn();const s=H(e)[t].apply(e,n);return Yn(),Ue(),s}const _i=Wn("__proto__,__v_isRef,__isVue"),tr=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(lt));function wi(e){lt(e)||(e=String(e));const t=H(this);return X(t,"has",e),t.hasOwnProperty(e)}class nr{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?Ri:or:i?ir:rr).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=P(t);if(!r){let f;if(o&&(f=mi[n]))return f;if(n==="hasOwnProperty")return wi}const l=Reflect.get(t,n,Q(t)?t:s);return(lt(n)?tr.has(n):_i(n))||(r||X(t,"get",n),i)?l:Q(l)?o&&Vn(n)?l:l.value:G(l)?r?lr(l):Qn(l):l}}class sr extends nr{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const f=Ye(i);if(!he(s)&&!Ye(s)&&(i=H(i),s=H(s)),!P(t)&&Q(i)&&!Q(s))return f?!1:(i.value=s,!0)}const o=P(t)&&Vn(n)?Number(n)e,jt=e=>Reflect.getPrototypeOf(e);function Ci(e,t,n){return function(...s){const r=this.__v_raw,i=H(r),o=mt(i),l=e==="entries"||e===Symbol.iterator&&o,f=e==="keys"&&o,h=r[e](...s),a=n?In:t?Fn:ne;return!t&&X(i,"iterate",f?Pn:Ge),{next(){const{value:p,done:S}=h.next();return S?{value:p,done:S}:{value:l?[a(p[0]),a(p[1])]:a(p),done:S}},[Symbol.iterator](){return this}}}}function Ut(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Mi(e,t){const n={get(r){const i=this.__v_raw,o=H(i),l=H(r);e||(He(r,l)&&X(o,"get",r),X(o,"get",l));const{has:f}=jt(o),h=t?In:e?Fn:ne;if(f.call(o,r))return h(i.get(r));if(f.call(o,l))return h(i.get(l));i!==o&&i.get(r)},get size(){const r=this.__v_raw;return!e&&X(H(r),"iterate",Ge),Reflect.get(r,"size",r)},has(r){const i=this.__v_raw,o=H(i),l=H(r);return e||(He(r,l)&&X(o,"has",r),X(o,"has",l)),r===l?i.has(r):i.has(r)||i.has(l)},forEach(r,i){const o=this,l=o.__v_raw,f=H(l),h=t?In:e?Fn:ne;return!e&&X(f,"iterate",Ge),l.forEach((a,p)=>r.call(i,h(a),h(p),o))}};return k(n,e?{add:Ut("add"),set:Ut("set"),delete:Ut("delete"),clear:Ut("clear")}:{add(r){!t&&!he(r)&&!Ye(r)&&(r=H(r));const i=H(this);return jt(i).has.call(i,r)||(i.add(r),Oe(i,"add",r,r)),this},set(r,i){!t&&!he(i)&&!Ye(i)&&(i=H(i));const o=H(this),{has:l,get:f}=jt(o);let h=l.call(o,r);h||(r=H(r),h=l.call(o,r));const a=f.call(o,r);return o.set(r,i),h?He(i,a)&&Oe(o,"set",r,i):Oe(o,"add",r,i),this},delete(r){const i=H(this),{has:o,get:l}=jt(i);let f=o.call(i,r);f||(r=H(r),f=o.call(i,r)),l&&l.call(i,r);const h=i.delete(r);return f&&Oe(i,"delete",r,void 0),h},clear(){const r=H(this),i=r.size!==0,o=r.clear();return i&&Oe(r,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=Ci(r,e,t)}),n}function Xn(e,t){const n=Mi(e,t);return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(L(n,r)&&r in s?n:s,r,i)}const Ei={get:Xn(!1,!1)},Ti={get:Xn(!1,!0)},Oi={get:Xn(!0,!1)};const rr=new WeakMap,ir=new WeakMap,or=new WeakMap,Ri=new WeakMap;function Ai(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Pi(e){return e.__v_skip||!Object.isExtensible(e)?0:Ai(ni(e))}function Qn(e){return Ye(e)?e:kn(e,!1,yi,Ei,rr)}function Ii(e){return kn(e,!1,Si,Ti,ir)}function lr(e){return kn(e,!0,xi,Oi,or)}function kn(e,t,n,s,r){if(!G(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=Pi(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function vt(e){return Ye(e)?vt(e.__v_raw):!!(e&&e.__v_isReactive)}function Ye(e){return!!(e&&e.__v_isReadonly)}function he(e){return!!(e&&e.__v_isShallow)}function es(e){return e?!!e.__v_raw:!1}function H(e){const t=e&&e.__v_raw;return t?H(t):e}function Fi(e){return!L(e,"__v_skip")&&Object.isExtensible(e)&&zs(e,"__v_skip",!0),e}const ne=e=>G(e)?Qn(e):e,Fn=e=>G(e)?lr(e):e;function Q(e){return e?e.__v_isRef===!0:!1}function _n(e){return Di(e,!1)}function Di(e,t){return Q(e)?e:new Hi(e,t)}class Hi{constructor(t,n){this.dep=new Jn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:H(t),this._value=n?t:ne(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||he(t)||Ye(t);t=s?t:H(t),He(t,n)&&(this._rawValue=t,this._value=s?t:ne(t),this.dep.trigger())}}function Li(e){return Q(e)?e.value:e}const Ni={get:(e,t,n)=>t==="__v_raw"?e:Li(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Q(r)&&!Q(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function cr(e){return vt(e)?e:new Proxy(e,Ni)}class ji{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Jn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ct-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&B!==this)return Js(this,!0),!0}get value(){const t=this.dep.track();return Qs(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Ui(e,t,n=!1){let s,r;return A(e)?s=e:(s=e.get,r=e.set),new ji(s,r,n)}const Wt={},Gt=new WeakMap;let ze;function Wi(e,t=!1,n=ze){if(n){let s=Gt.get(n);s||Gt.set(n,s=[]),s.push(e)}}function $i(e,t,n=U){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:f}=n,h=O=>r?O:he(O)||r===!1||r===0?Re(O,1):Re(O);let a,p,S,C,D=!1,F=!1;if(Q(e)?(p=()=>e.value,D=he(e)):vt(e)?(p=()=>h(e),D=!0):P(e)?(F=!0,D=e.some(O=>vt(O)||he(O)),p=()=>e.map(O=>{if(Q(O))return O.value;if(vt(O))return h(O);if(A(O))return f?f(O,2):O()})):A(e)?t?p=f?()=>f(e,2):e:p=()=>{if(S){je();try{S()}finally{Ue()}}const O=ze;ze=a;try{return f?f(e,3,[C]):e(C)}finally{ze=O}}:p=Se,t&&r){const O=p,Y=r===!0?1/0:r;p=()=>Re(O(),Y)}const Z=hi(),j=()=>{a.stop(),Z&&Z.active&&Bn(Z.effects,a)};if(i&&t){const O=t;t=(...Y)=>{O(...Y),j()}}let K=F?new Array(e.length).fill(Wt):Wt;const z=O=>{if(!(!(a.flags&1)||!a.dirty&&!O))if(t){const Y=a.run();if(r||D||(F?Y.some((Pe,pe)=>He(Pe,K[pe])):He(Y,K))){S&&S();const Pe=ze;ze=a;try{const pe=[Y,K===Wt?void 0:F&&K[0]===Wt?[]:K,C];f?f(t,3,pe):t(...pe),K=Y}finally{ze=Pe}}}else a.run()};return l&&l(z),a=new Ys(p),a.scheduler=o?()=>o(z,!1):z,C=O=>Wi(O,!1,a),S=a.onStop=()=>{const O=Gt.get(a);if(O){if(f)f(O,4);else for(const Y of O)Y();Gt.delete(a)}},t?s?z(!0):K=a.run():o?o(z.bind(null,!0),!0):a.run(),j.pause=a.pause.bind(a),j.resume=a.resume.bind(a),j.stop=j,j}function Re(e,t=1/0,n){if(t<=0||!G(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,Q(e))Re(e.value,t,n);else if(P(e))for(let s=0;s{Re(s,t,n)});else if(si(e)){for(const s in e)Re(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&Re(e[s],t,n)}return e}/** +**/let fe;class di{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=fe,!t&&fe&&(this.index=(fe.scopes||(fe.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0)return;if(wt){let t=wt;for(wt=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;_t;){let t=_t;for(_t=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function Zs(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Xs(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),qn(s),pi(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function Rn(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Qs(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Qs(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ct))return;e.globalVersion=Ct;const t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!Rn(e)){e.flags&=-3;return}const n=B,s=de;B=e,de=!0;try{Zs(e);const r=e.fn(e._value);(t.version===0||He(r,e._value))&&(e._value=r,t.version++)}catch(r){throw t.version++,r}finally{B=n,de=s,Xs(e),e.flags&=-3}}function qn(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)qn(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function pi(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let de=!0;const ks=[];function je(){ks.push(de),de=!1}function Ue(){const e=ks.pop();de=e===void 0?!0:e}function hs(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=B;B=void 0;try{t()}finally{B=n}}}let Ct=0;class gi{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Jn{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(t){if(!B||!de||B===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==B)n=this.activeLink=new gi(B,this),B.deps?(n.prevDep=B.depsTail,B.depsTail.nextDep=n,B.depsTail=n):B.deps=B.depsTail=n,er(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=B.depsTail,n.nextDep=void 0,B.depsTail.nextDep=n,B.depsTail=n,B.deps===n&&(B.deps=s)}return n}trigger(t){this.version++,Ct++,this.notify(t)}notify(t){Gn();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Yn()}}}function er(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)er(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const An=new WeakMap,Ge=Symbol(""),Pn=Symbol(""),Mt=Symbol("");function X(e,t,n){if(de&&B){let s=An.get(e);s||An.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new Jn),r.map=s,r.key=n),r.track()}}function Oe(e,t,n,s,r,i){const o=An.get(e);if(!o){Ct++;return}const l=f=>{f&&f.trigger()};if(Gn(),t==="clear")o.forEach(l);else{const f=P(e),h=f&&Vn(n);if(f&&n==="length"){const a=Number(s);o.forEach((p,S)=>{(S==="length"||S===Mt||!lt(S)&&S>=a)&&l(p)})}else switch((n!==void 0||o.has(void 0))&&l(o.get(n)),h&&l(o.get(Mt)),t){case"add":f?h&&l(o.get("length")):(l(o.get(Ge)),mt(e)&&l(o.get(Pn)));break;case"delete":f||(l(o.get(Ge)),mt(e)&&l(o.get(Pn)));break;case"set":mt(e)&&l(o.get(Ge));break}}Yn()}function Qe(e){const t=H(e);return t===e?t:(X(t,"iterate",Mt),he(e)?t:t.map(ne))}function Zn(e){return X(e=H(e),"iterate",Mt),e}const mi={__proto__:null,[Symbol.iterator](){return mn(this,Symbol.iterator,ne)},concat(...e){return Qe(this).concat(...e.map(t=>P(t)?Qe(t):t))},entries(){return mn(this,"entries",e=>(e[1]=ne(e[1]),e))},every(e,t){return Me(this,"every",e,t,void 0,arguments)},filter(e,t){return Me(this,"filter",e,t,n=>n.map(ne),arguments)},find(e,t){return Me(this,"find",e,t,ne,arguments)},findIndex(e,t){return Me(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Me(this,"findLast",e,t,ne,arguments)},findLastIndex(e,t){return Me(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Me(this,"forEach",e,t,void 0,arguments)},includes(...e){return bn(this,"includes",e)},indexOf(...e){return bn(this,"indexOf",e)},join(e){return Qe(this).join(e)},lastIndexOf(...e){return bn(this,"lastIndexOf",e)},map(e,t){return Me(this,"map",e,t,void 0,arguments)},pop(){return dt(this,"pop")},push(...e){return dt(this,"push",e)},reduce(e,...t){return ps(this,"reduce",e,t)},reduceRight(e,...t){return ps(this,"reduceRight",e,t)},shift(){return dt(this,"shift")},some(e,t){return Me(this,"some",e,t,void 0,arguments)},splice(...e){return dt(this,"splice",e)},toReversed(){return Qe(this).toReversed()},toSorted(e){return Qe(this).toSorted(e)},toSpliced(...e){return Qe(this).toSpliced(...e)},unshift(...e){return dt(this,"unshift",e)},values(){return mn(this,"values",ne)}};function mn(e,t,n){const s=Zn(e),r=s[t]();return s!==e&&!he(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.value&&(i.value=n(i.value)),i}),r}const bi=Array.prototype;function Me(e,t,n,s,r,i){const o=Zn(e),l=o!==e&&!he(e),f=o[t];if(f!==bi[t]){const p=f.apply(e,i);return l?ne(p):p}let h=n;o!==e&&(l?h=function(p,S){return n.call(this,ne(p),S,e)}:n.length>2&&(h=function(p,S){return n.call(this,p,S,e)}));const a=f.call(o,h,s);return l&&r?r(a):a}function ps(e,t,n,s){const r=Zn(e);let i=n;return r!==e&&(he(e)?n.length>3&&(i=function(o,l,f){return n.call(this,o,l,f,e)}):i=function(o,l,f){return n.call(this,o,ne(l),f,e)}),r[t](i,...s)}function bn(e,t,n){const s=H(e);X(s,"iterate",Mt);const r=s[t](...n);return(r===-1||r===!1)&&es(n[0])?(n[0]=H(n[0]),s[t](...n)):r}function dt(e,t,n=[]){je(),Gn();const s=H(e)[t].apply(e,n);return Yn(),Ue(),s}const _i=Wn("__proto__,__v_isRef,__isVue"),tr=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(lt));function wi(e){lt(e)||(e=String(e));const t=H(this);return X(t,"has",e),t.hasOwnProperty(e)}class nr{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?Ri:or:i?ir:rr).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=P(t);if(!r){let f;if(o&&(f=mi[n]))return f;if(n==="hasOwnProperty")return wi}const l=Reflect.get(t,n,Q(t)?t:s);return(lt(n)?tr.has(n):_i(n))||(r||X(t,"get",n),i)?l:Q(l)?o&&Vn(n)?l:l.value:G(l)?r?lr(l):Qn(l):l}}class sr extends nr{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const f=Ye(i);if(!he(s)&&!Ye(s)&&(i=H(i),s=H(s)),!P(t)&&Q(i)&&!Q(s))return f?!1:(i.value=s,!0)}const o=P(t)&&Vn(n)?Number(n)e,Ut=e=>Reflect.getPrototypeOf(e);function Ci(e,t,n){return function(...s){const r=this.__v_raw,i=H(r),o=mt(i),l=e==="entries"||e===Symbol.iterator&&o,f=e==="keys"&&o,h=r[e](...s),a=n?In:t?Fn:ne;return!t&&X(i,"iterate",f?Pn:Ge),{next(){const{value:p,done:S}=h.next();return S?{value:p,done:S}:{value:l?[a(p[0]),a(p[1])]:a(p),done:S}},[Symbol.iterator](){return this}}}}function Wt(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Mi(e,t){const n={get(r){const i=this.__v_raw,o=H(i),l=H(r);e||(He(r,l)&&X(o,"get",r),X(o,"get",l));const{has:f}=Ut(o),h=t?In:e?Fn:ne;if(f.call(o,r))return h(i.get(r));if(f.call(o,l))return h(i.get(l));i!==o&&i.get(r)},get size(){const r=this.__v_raw;return!e&&X(H(r),"iterate",Ge),Reflect.get(r,"size",r)},has(r){const i=this.__v_raw,o=H(i),l=H(r);return e||(He(r,l)&&X(o,"has",r),X(o,"has",l)),r===l?i.has(r):i.has(r)||i.has(l)},forEach(r,i){const o=this,l=o.__v_raw,f=H(l),h=t?In:e?Fn:ne;return!e&&X(f,"iterate",Ge),l.forEach((a,p)=>r.call(i,h(a),h(p),o))}};return k(n,e?{add:Wt("add"),set:Wt("set"),delete:Wt("delete"),clear:Wt("clear")}:{add(r){!t&&!he(r)&&!Ye(r)&&(r=H(r));const i=H(this);return Ut(i).has.call(i,r)||(i.add(r),Oe(i,"add",r,r)),this},set(r,i){!t&&!he(i)&&!Ye(i)&&(i=H(i));const o=H(this),{has:l,get:f}=Ut(o);let h=l.call(o,r);h||(r=H(r),h=l.call(o,r));const a=f.call(o,r);return o.set(r,i),h?He(i,a)&&Oe(o,"set",r,i):Oe(o,"add",r,i),this},delete(r){const i=H(this),{has:o,get:l}=Ut(i);let f=o.call(i,r);f||(r=H(r),f=o.call(i,r)),l&&l.call(i,r);const h=i.delete(r);return f&&Oe(i,"delete",r,void 0),h},clear(){const r=H(this),i=r.size!==0,o=r.clear();return i&&Oe(r,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=Ci(r,e,t)}),n}function Xn(e,t){const n=Mi(e,t);return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(L(n,r)&&r in s?n:s,r,i)}const Ei={get:Xn(!1,!1)},Ti={get:Xn(!1,!0)},Oi={get:Xn(!0,!1)};const rr=new WeakMap,ir=new WeakMap,or=new WeakMap,Ri=new WeakMap;function Ai(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Pi(e){return e.__v_skip||!Object.isExtensible(e)?0:Ai(ni(e))}function Qn(e){return Ye(e)?e:kn(e,!1,yi,Ei,rr)}function Ii(e){return kn(e,!1,Si,Ti,ir)}function lr(e){return kn(e,!0,xi,Oi,or)}function kn(e,t,n,s,r){if(!G(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=Pi(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function vt(e){return Ye(e)?vt(e.__v_raw):!!(e&&e.__v_isReactive)}function Ye(e){return!!(e&&e.__v_isReadonly)}function he(e){return!!(e&&e.__v_isShallow)}function es(e){return e?!!e.__v_raw:!1}function H(e){const t=e&&e.__v_raw;return t?H(t):e}function Fi(e){return!L(e,"__v_skip")&&Object.isExtensible(e)&&zs(e,"__v_skip",!0),e}const ne=e=>G(e)?Qn(e):e,Fn=e=>G(e)?lr(e):e;function Q(e){return e?e.__v_isRef===!0:!1}function _n(e){return Di(e,!1)}function Di(e,t){return Q(e)?e:new Hi(e,t)}class Hi{constructor(t,n){this.dep=new Jn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:H(t),this._value=n?t:ne(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||he(t)||Ye(t);t=s?t:H(t),He(t,n)&&(this._rawValue=t,this._value=s?t:ne(t),this.dep.trigger())}}function Li(e){return Q(e)?e.value:e}const Ni={get:(e,t,n)=>t==="__v_raw"?e:Li(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Q(r)&&!Q(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function cr(e){return vt(e)?e:new Proxy(e,Ni)}class ji{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Jn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ct-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&B!==this)return Js(this,!0),!0}get value(){const t=this.dep.track();return Qs(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Ui(e,t,n=!1){let s,r;return A(e)?s=e:(s=e.get,r=e.set),new ji(s,r,n)}const $t={},Yt=new WeakMap;let ze;function Wi(e,t=!1,n=ze){if(n){let s=Yt.get(n);s||Yt.set(n,s=[]),s.push(e)}}function $i(e,t,n=U){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:f}=n,h=O=>r?O:he(O)||r===!1||r===0?Re(O,1):Re(O);let a,p,S,C,D=!1,F=!1;if(Q(e)?(p=()=>e.value,D=he(e)):vt(e)?(p=()=>h(e),D=!0):P(e)?(F=!0,D=e.some(O=>vt(O)||he(O)),p=()=>e.map(O=>{if(Q(O))return O.value;if(vt(O))return h(O);if(A(O))return f?f(O,2):O()})):A(e)?t?p=f?()=>f(e,2):e:p=()=>{if(S){je();try{S()}finally{Ue()}}const O=ze;ze=a;try{return f?f(e,3,[C]):e(C)}finally{ze=O}}:p=Se,t&&r){const O=p,Y=r===!0?1/0:r;p=()=>Re(O(),Y)}const Z=hi(),j=()=>{a.stop(),Z&&Z.active&&Bn(Z.effects,a)};if(i&&t){const O=t;t=(...Y)=>{O(...Y),j()}}let K=F?new Array(e.length).fill($t):$t;const z=O=>{if(!(!(a.flags&1)||!a.dirty&&!O))if(t){const Y=a.run();if(r||D||(F?Y.some((Pe,pe)=>He(Pe,K[pe])):He(Y,K))){S&&S();const Pe=ze;ze=a;try{const pe=[Y,K===$t?void 0:F&&K[0]===$t?[]:K,C];f?f(t,3,pe):t(...pe),K=Y}finally{ze=Pe}}}else a.run()};return l&&l(z),a=new Ys(p),a.scheduler=o?()=>o(z,!1):z,C=O=>Wi(O,!1,a),S=a.onStop=()=>{const O=Yt.get(a);if(O){if(f)f(O,4);else for(const Y of O)Y();Yt.delete(a)}},t?s?z(!0):K=a.run():o?o(z.bind(null,!0),!0):a.run(),j.pause=a.pause.bind(a),j.resume=a.resume.bind(a),j.stop=j,j}function Re(e,t=1/0,n){if(t<=0||!G(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,Q(e))Re(e.value,t,n);else if(P(e))for(let s=0;s{Re(s,t,n)});else if(si(e)){for(const s in e)Re(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&Re(e[s],t,n)}return e}/** * @vue/runtime-core v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function Pt(e,t,n,s){try{return s?e(...s):e()}catch(r){on(r,t,n)}}function Ce(e,t,n,s){if(A(e)){const r=Pt(e,t,n,s);return r&&Vs(r)&&r.catch(i=>{on(i,t,n)}),r}if(P(e)){const r=[];for(let i=0;i>>1,r=se[s],i=Et(r);i=Et(n)?se.push(e):se.splice(Ki(t),0,e),e.flags|=1,ur()}}function ur(){Yt||(Yt=fr.then(dr))}function zi(e){P(e)?st.push(...e):Fe&&e.id===-1?Fe.splice(et+1,0,e):e.flags&1||(st.push(e),e.flags|=1),ur()}function gs(e,t,n=ve+1){for(;nEt(n)-Et(s));if(st.length=0,Fe){Fe.push(...t);return}for(Fe=t,et=0;ete.id==null?e.flags&2?-1:1/0:e.id;function dr(e){try{for(ve=0;ve{s._d&&Cs(-1);const i=qt(t);let o;try{o=e(...r)}finally{qt(i),s._d&&Cs(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function Yi(e,t){if(ae===null)return e;const n=un(ae),s=e.dirs||(e.dirs=[]);for(let r=0;re.__isTeleport;function ns(e,t){e.shapeFlag&6&&e.component?(e.transition=t,ns(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}/*! #__NO_SIDE_EFFECTS__ */function pr(e,t){return A(e)?k({name:e.name},t,{setup:e}):e}function gr(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Jt(e,t,n,s,r=!1){if(P(e)){e.forEach((D,F)=>Jt(D,t&&(P(t)?t[F]:t),n,s,r));return}if(yt(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&Jt(e,t,n,s.component.subTree);return}const i=s.shapeFlag&4?un(s.component):s.el,o=r?null:i,{i:l,r:f}=e,h=t&&t.r,a=l.refs===U?l.refs={}:l.refs,p=l.setupState,S=H(p),C=p===U?()=>!1:D=>L(S,D);if(h!=null&&h!==f&&(J(h)?(a[h]=null,C(h)&&(p[h]=null)):Q(h)&&(h.value=null)),A(f))Pt(f,l,12,[o,a]);else{const D=J(f),F=Q(f);if(D||F){const Z=()=>{if(e.f){const j=D?C(f)?p[f]:a[f]:f.value;r?P(j)&&Bn(j,i):P(j)?j.includes(i)||j.push(i):D?(a[f]=[i],C(f)&&(p[f]=a[f])):(f.value=[i],e.k&&(a[e.k]=f.value))}else D?(a[f]=o,C(f)&&(p[f]=o)):F&&(f.value=o,e.k&&(a[e.k]=o))};o?(Z.id=-1,ce(Z,n)):Z()}}}rn().requestIdleCallback;rn().cancelIdleCallback;const yt=e=>!!e.type.__asyncLoader,mr=e=>e.type.__isKeepAlive;function Zi(e,t){br(e,"a",t)}function Xi(e,t){br(e,"da",t)}function br(e,t,n=re){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(ln(t,s,n),n){let r=n.parent;for(;r&&r.parent;)mr(r.parent.vnode)&&Qi(s,t,n,r),r=r.parent}}function Qi(e,t,n,s){const r=ln(t,e,s,!0);wr(()=>{Bn(s[t],r)},n)}function ln(e,t,n=re,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{je();const l=It(n),f=Ce(t,n,e,o);return l(),Ue(),f});return s?r.unshift(i):r.push(i),i}}const Ae=e=>(t,n=re)=>{(!Rt||e==="sp")&&ln(e,(...s)=>t(...s),n)},ki=Ae("bm"),_r=Ae("m"),eo=Ae("bu"),to=Ae("u"),no=Ae("bum"),wr=Ae("um"),so=Ae("sp"),ro=Ae("rtg"),io=Ae("rtc");function oo(e,t=re){ln("ec",e,t)}const lo=Symbol.for("v-ndc"),Dn=e=>e?Br(e)?un(e):Dn(e.parent):null,xt=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=>Dn(e.parent),$root:e=>Dn(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>yr(e),$forceUpdate:e=>e.f||(e.f=()=>{ts(e.update)}),$nextTick:e=>e.n||(e.n=Vi.bind(e.proxy)),$watch:e=>Ao.bind(e)}),wn=(e,t)=>e!==U&&!e.__isScriptSetup&&L(e,t),co={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:f}=e;let h;if(t[0]!=="$"){const C=o[t];if(C!==void 0)switch(C){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(wn(s,t))return o[t]=1,s[t];if(r!==U&&L(r,t))return o[t]=2,r[t];if((h=e.propsOptions[0])&&L(h,t))return o[t]=3,i[t];if(n!==U&&L(n,t))return o[t]=4,n[t];Hn&&(o[t]=0)}}const a=xt[t];let p,S;if(a)return t==="$attrs"&&X(e.attrs,"get",""),a(e);if((p=l.__cssModules)&&(p=p[t]))return p;if(n!==U&&L(n,t))return o[t]=4,n[t];if(S=f.config.globalProperties,L(S,t))return S[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return wn(r,t)?(r[t]=n,!0):s!==U&&L(s,t)?(s[t]=n,!0):L(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:i}},o){let l;return!!n[o]||e!==U&&L(e,o)||wn(t,o)||(l=i[0])&&L(l,o)||L(s,o)||L(xt,o)||L(r.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:L(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function ms(e){return P(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Hn=!0;function fo(e){const t=yr(e),n=e.proxy,s=e.ctx;Hn=!1,t.beforeCreate&&bs(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:f,inject:h,created:a,beforeMount:p,mounted:S,beforeUpdate:C,updated:D,activated:F,deactivated:Z,beforeDestroy:j,beforeUnmount:K,destroyed:z,unmounted:O,render:Y,renderTracked:Pe,renderTriggered:pe,errorCaptured:Ie,serverPrefetch:Ft,expose:We,inheritAttrs:ct,components:Dt,directives:Ht,filters:an}=t;if(h&&uo(h,s,null),o)for(const V in o){const W=o[V];A(W)&&(s[V]=W.bind(n))}if(r){const V=r.call(n,n);G(V)&&(e.data=Qn(V))}if(Hn=!0,i)for(const V in i){const W=i[V],$e=A(W)?W.bind(n,n):A(W.get)?W.get.bind(n,n):Se,Lt=!A(W)&&A(W.set)?W.set.bind(n):Se,Be=Qo({get:$e,set:Lt});Object.defineProperty(s,V,{enumerable:!0,configurable:!0,get:()=>Be.value,set:ge=>Be.value=ge})}if(l)for(const V in l)vr(l[V],s,n,V);if(f){const V=A(f)?f.call(n):f;Reflect.ownKeys(V).forEach(W=>{bo(W,V[W])})}a&&bs(a,e,"c");function ee(V,W){P(W)?W.forEach($e=>V($e.bind(n))):W&&V(W.bind(n))}if(ee(ki,p),ee(_r,S),ee(eo,C),ee(to,D),ee(Zi,F),ee(Xi,Z),ee(oo,Ie),ee(io,Pe),ee(ro,pe),ee(no,K),ee(wr,O),ee(so,Ft),P(We))if(We.length){const V=e.exposed||(e.exposed={});We.forEach(W=>{Object.defineProperty(V,W,{get:()=>n[W],set:$e=>n[W]=$e})})}else e.exposed||(e.exposed={});Y&&e.render===Se&&(e.render=Y),ct!=null&&(e.inheritAttrs=ct),Dt&&(e.components=Dt),Ht&&(e.directives=Ht),Ft&&gr(e)}function uo(e,t,n=Se){P(e)&&(e=Ln(e));for(const s in e){const r=e[s];let i;G(r)?"default"in r?i=Vt(r.from||s,r.default,!0):i=Vt(r.from||s):i=Vt(r),Q(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function bs(e,t,n){Ce(P(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function vr(e,t,n,s){let r=s.includes(".")?Hr(n,s):()=>n[s];if(J(e)){const i=t[e];A(i)&&yn(r,i)}else if(A(e))yn(r,e.bind(n));else if(G(e))if(P(e))e.forEach(i=>vr(i,t,n,s));else{const i=A(e.handler)?e.handler.bind(n):t[e.handler];A(i)&&yn(r,i,e)}}function yr(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let f;return l?f=l:!r.length&&!n&&!s?f=t:(f={},r.length&&r.forEach(h=>Zt(f,h,o,!0)),Zt(f,t,o)),G(t)&&i.set(t,f),f}function Zt(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Zt(e,i,n,!0),r&&r.forEach(o=>Zt(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=ao[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const ao={data:_s,props:ws,emits:ws,methods:gt,computed:gt,beforeCreate:te,created:te,beforeMount:te,mounted:te,beforeUpdate:te,updated:te,beforeDestroy:te,beforeUnmount:te,destroyed:te,unmounted:te,activated:te,deactivated:te,errorCaptured:te,serverPrefetch:te,components:gt,directives:gt,watch:po,provide:_s,inject:ho};function _s(e,t){return t?e?function(){return k(A(e)?e.call(this,this):e,A(t)?t.call(this,this):t)}:t:e}function ho(e,t){return gt(Ln(e),Ln(t))}function Ln(e){if(P(e)){const t={};for(let n=0;n1)return n&&A(t)?t.call(s&&s.proxy):t}}const Sr={},Cr=()=>Object.create(Sr),Mr=e=>Object.getPrototypeOf(e)===Sr;function _o(e,t,n,s=!1){const r={},i=Cr();e.propsDefaults=Object.create(null),Er(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:Ii(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function wo(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=H(r),[f]=e.propsOptions;let h=!1;if((s||o>0)&&!(o&16)){if(o&8){const a=e.vnode.dynamicProps;for(let p=0;p{f=!0;const[S,C]=Tr(p,t,!0);k(o,S),C&&l.push(...C)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!i&&!f)return G(e)&&s.set(e,nt),nt;if(P(i))for(let a=0;ae[0]==="_"||e==="$stable",ss=e=>P(e)?e.map(xe):[xe(e)],yo=(e,t,n)=>{if(t._n)return t;const s=Gi((...r)=>ss(t(...r)),n);return s._c=!1,s},Rr=(e,t,n)=>{const s=e._ctx;for(const r in e){if(Or(r))continue;const i=e[r];if(A(i))t[r]=yo(r,i,s);else if(i!=null){const o=ss(i);t[r]=()=>o}}},Ar=(e,t)=>{const n=ss(t);e.slots.default=()=>n},Pr=(e,t,n)=>{for(const s in t)(n||s!=="_")&&(e[s]=t[s])},xo=(e,t,n)=>{const s=e.slots=Cr();if(e.vnode.shapeFlag&32){const r=t._;r?(Pr(s,t,n),n&&zs(s,"_",r,!0)):Rr(t,s)}else t&&Ar(e,t)},So=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=U;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:Pr(r,t,n):(i=!t.$stable,Rr(t,r)),o=t}else t&&(Ar(e,t),o={default:1});if(i)for(const l in r)!Or(l)&&o[l]==null&&delete r[l]},ce=No;function Co(e){return Mo(e)}function Mo(e,t){const n=rn();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:f,setText:h,setElementText:a,parentNode:p,nextSibling:S,setScopeId:C=Se,insertStaticContent:D}=e,F=(c,u,d,b=null,g=null,m=null,y=void 0,v=null,w=!!u.dynamicChildren)=>{if(c===u)return;c&&!ht(c,u)&&(b=Nt(c),ge(c,g,m,!0),c=null),u.patchFlag===-2&&(w=!1,u.dynamicChildren=null);const{type:_,ref:E,shapeFlag:x}=u;switch(_){case fn:Z(c,u,d,b);break;case Tt:j(c,u,d,b);break;case xn:c==null&&K(u,d,b,y);break;case ye:Dt(c,u,d,b,g,m,y,v,w);break;default:x&1?Y(c,u,d,b,g,m,y,v,w):x&6?Ht(c,u,d,b,g,m,y,v,w):(x&64||x&128)&&_.process(c,u,d,b,g,m,y,v,w,ut)}E!=null&&g&&Jt(E,c&&c.ref,m,u||c,!u)},Z=(c,u,d,b)=>{if(c==null)s(u.el=l(u.children),d,b);else{const g=u.el=c.el;u.children!==c.children&&h(g,u.children)}},j=(c,u,d,b)=>{c==null?s(u.el=f(u.children||""),d,b):u.el=c.el},K=(c,u,d,b)=>{[c.el,c.anchor]=D(c.children,u,d,b,c.el,c.anchor)},z=({el:c,anchor:u},d,b)=>{let g;for(;c&&c!==u;)g=S(c),s(c,d,b),c=g;s(u,d,b)},O=({el:c,anchor:u})=>{let d;for(;c&&c!==u;)d=S(c),r(c),c=d;r(u)},Y=(c,u,d,b,g,m,y,v,w)=>{u.type==="svg"?y="svg":u.type==="math"&&(y="mathml"),c==null?Pe(u,d,b,g,m,y,v,w):Ft(c,u,g,m,y,v,w)},Pe=(c,u,d,b,g,m,y,v)=>{let w,_;const{props:E,shapeFlag:x,transition:M,dirs:R}=c;if(w=c.el=o(c.type,m,E&&E.is,E),x&8?a(w,c.children):x&16&&Ie(c.children,w,null,b,g,vn(c,m),y,v),R&&Ve(c,null,b,"created"),pe(w,c,c.scopeId,y,b),E){for(const $ in E)$!=="value"&&!bt($)&&i(w,$,null,E[$],m,b);"value"in E&&i(w,"value",null,E.value,m),(_=E.onVnodeBeforeMount)&&we(_,b,c)}R&&Ve(c,null,b,"beforeMount");const I=Eo(g,M);I&&M.beforeEnter(w),s(w,u,d),((_=E&&E.onVnodeMounted)||I||R)&&ce(()=>{_&&we(_,b,c),I&&M.enter(w),R&&Ve(c,null,b,"mounted")},g)},pe=(c,u,d,b,g)=>{if(d&&C(c,d),b)for(let m=0;m{for(let _=w;_{const v=u.el=c.el;let{patchFlag:w,dynamicChildren:_,dirs:E}=u;w|=c.patchFlag&16;const x=c.props||U,M=u.props||U;let R;if(d&&Ke(d,!1),(R=M.onVnodeBeforeUpdate)&&we(R,d,u,c),E&&Ve(u,c,d,"beforeUpdate"),d&&Ke(d,!0),(x.innerHTML&&M.innerHTML==null||x.textContent&&M.textContent==null)&&a(v,""),_?We(c.dynamicChildren,_,v,d,b,vn(u,g),m):y||W(c,u,v,null,d,b,vn(u,g),m,!1),w>0){if(w&16)ct(v,x,M,d,g);else if(w&2&&x.class!==M.class&&i(v,"class",null,M.class,g),w&4&&i(v,"style",x.style,M.style,g),w&8){const I=u.dynamicProps;for(let $=0;${R&&we(R,d,u,c),E&&Ve(u,c,d,"updated")},b)},We=(c,u,d,b,g,m,y)=>{for(let v=0;v{if(u!==d){if(u!==U)for(const m in u)!bt(m)&&!(m in d)&&i(c,m,u[m],null,g,b);for(const m in d){if(bt(m))continue;const y=d[m],v=u[m];y!==v&&m!=="value"&&i(c,m,v,y,g,b)}"value"in d&&i(c,"value",u.value,d.value,g)}},Dt=(c,u,d,b,g,m,y,v,w)=>{const _=u.el=c?c.el:l(""),E=u.anchor=c?c.anchor:l("");let{patchFlag:x,dynamicChildren:M,slotScopeIds:R}=u;R&&(v=v?v.concat(R):R),c==null?(s(_,d,b),s(E,d,b),Ie(u.children||[],d,E,g,m,y,v,w)):x>0&&x&64&&M&&c.dynamicChildren?(We(c.dynamicChildren,M,d,g,m,y,v),(u.key!=null||g&&u===g.subTree)&&Ir(c,u,!0)):W(c,u,d,E,g,m,y,v,w)},Ht=(c,u,d,b,g,m,y,v,w)=>{u.slotScopeIds=v,c==null?u.shapeFlag&512?g.ctx.activate(u,d,b,y,w):an(u,d,b,g,m,y,w):ls(c,u,w)},an=(c,u,d,b,g,m,y)=>{const v=c.component=Go(c,b,g);if(mr(c)&&(v.ctx.renderer=ut),Yo(v,!1,y),v.asyncDep){if(g&&g.registerDep(v,ee,y),!c.el){const w=v.subTree=Le(Tt);j(null,w,u,d)}}else ee(v,c,u,d,g,m,y)},ls=(c,u,d)=>{const b=u.component=c.component;if(Ho(c,u,d))if(b.asyncDep&&!b.asyncResolved){V(b,u,d);return}else b.next=u,b.update();else u.el=c.el,b.vnode=u},ee=(c,u,d,b,g,m,y)=>{const v=()=>{if(c.isMounted){let{next:x,bu:M,u:R,parent:I,vnode:$}=c;{const be=Fr(c);if(be){x&&(x.el=$.el,V(c,x,y)),be.asyncDep.then(()=>{c.isUnmounted||v()});return}}let N=x,oe;Ke(c,!1),x?(x.el=$.el,V(c,x,y)):x=$,M&&Bt(M),(oe=x.props&&x.props.onVnodeBeforeUpdate)&&we(oe,I,x,$),Ke(c,!0);const ie=xs(c),me=c.subTree;c.subTree=ie,F(me,ie,p(me.el),Nt(me),c,g,m),x.el=ie.el,N===null&&Lo(c,ie.el),R&&ce(R,g),(oe=x.props&&x.props.onVnodeUpdated)&&ce(()=>we(oe,I,x,$),g)}else{let x;const{el:M,props:R}=u,{bm:I,m:$,parent:N,root:oe,type:ie}=c,me=yt(u);Ke(c,!1),I&&Bt(I),!me&&(x=R&&R.onVnodeBeforeMount)&&we(x,N,u),Ke(c,!0);{oe.ce&&oe.ce._injectChildStyle(ie);const be=c.subTree=xs(c);F(null,be,d,b,c,g,m),u.el=be.el}if($&&ce($,g),!me&&(x=R&&R.onVnodeMounted)){const be=u;ce(()=>we(x,N,be),g)}(u.shapeFlag&256||N&&yt(N.vnode)&&N.vnode.shapeFlag&256)&&c.a&&ce(c.a,g),c.isMounted=!0,u=d=b=null}};c.scope.on();const w=c.effect=new Ys(v);c.scope.off();const _=c.update=w.run.bind(w),E=c.job=w.runIfDirty.bind(w);E.i=c,E.id=c.uid,w.scheduler=()=>ts(E),Ke(c,!0),_()},V=(c,u,d)=>{u.component=c;const b=c.vnode.props;c.vnode=u,c.next=null,wo(c,u.props,b,d),So(c,u.children,d),je(),gs(c),Ue()},W=(c,u,d,b,g,m,y,v,w=!1)=>{const _=c&&c.children,E=c?c.shapeFlag:0,x=u.children,{patchFlag:M,shapeFlag:R}=u;if(M>0){if(M&128){Lt(_,x,d,b,g,m,y,v,w);return}else if(M&256){$e(_,x,d,b,g,m,y,v,w);return}}R&8?(E&16&&ft(_,g,m),x!==_&&a(d,x)):E&16?R&16?Lt(_,x,d,b,g,m,y,v,w):ft(_,g,m,!0):(E&8&&a(d,""),R&16&&Ie(x,d,b,g,m,y,v,w))},$e=(c,u,d,b,g,m,y,v,w)=>{c=c||nt,u=u||nt;const _=c.length,E=u.length,x=Math.min(_,E);let M;for(M=0;ME?ft(c,g,m,!0,!1,x):Ie(u,d,b,g,m,y,v,w,x)},Lt=(c,u,d,b,g,m,y,v,w)=>{let _=0;const E=u.length;let x=c.length-1,M=E-1;for(;_<=x&&_<=M;){const R=c[_],I=u[_]=w?De(u[_]):xe(u[_]);if(ht(R,I))F(R,I,d,null,g,m,y,v,w);else break;_++}for(;_<=x&&_<=M;){const R=c[x],I=u[M]=w?De(u[M]):xe(u[M]);if(ht(R,I))F(R,I,d,null,g,m,y,v,w);else break;x--,M--}if(_>x){if(_<=M){const R=M+1,I=RM)for(;_<=x;)ge(c[_],g,m,!0),_++;else{const R=_,I=_,$=new Map;for(_=I;_<=M;_++){const le=u[_]=w?De(u[_]):xe(u[_]);le.key!=null&&$.set(le.key,_)}let N,oe=0;const ie=M-I+1;let me=!1,be=0;const at=new Array(ie);for(_=0;_=ie){ge(le,g,m,!0);continue}let _e;if(le.key!=null)_e=$.get(le.key);else for(N=I;N<=M;N++)if(at[N-I]===0&&ht(le,u[N])){_e=N;break}_e===void 0?ge(le,g,m,!0):(at[_e-I]=_+1,_e>=be?be=_e:me=!0,F(le,u[_e],d,null,g,m,y,v,w),oe++)}const us=me?To(at):nt;for(N=us.length-1,_=ie-1;_>=0;_--){const le=I+_,_e=u[le],as=le+1{const{el:m,type:y,transition:v,children:w,shapeFlag:_}=c;if(_&6){Be(c.component.subTree,u,d,b);return}if(_&128){c.suspense.move(u,d,b);return}if(_&64){y.move(c,u,d,ut);return}if(y===ye){s(m,u,d);for(let x=0;xv.enter(m),g);else{const{leave:x,delayLeave:M,afterLeave:R}=v,I=()=>s(m,u,d),$=()=>{x(m,()=>{I(),R&&R()})};M?M(m,I,$):$()}else s(m,u,d)},ge=(c,u,d,b=!1,g=!1)=>{const{type:m,props:y,ref:v,children:w,dynamicChildren:_,shapeFlag:E,patchFlag:x,dirs:M,cacheIndex:R}=c;if(x===-2&&(g=!1),v!=null&&Jt(v,null,d,c,!0),R!=null&&(u.renderCache[R]=void 0),E&256){u.ctx.deactivate(c);return}const I=E&1&&M,$=!yt(c);let N;if($&&(N=y&&y.onVnodeBeforeUnmount)&&we(N,u,c),E&6)Jr(c.component,d,b);else{if(E&128){c.suspense.unmount(d,b);return}I&&Ve(c,null,u,"beforeUnmount"),E&64?c.type.remove(c,u,d,ut,b):_&&!_.hasOnce&&(m!==ye||x>0&&x&64)?ft(_,u,d,!1,!0):(m===ye&&x&384||!g&&E&16)&&ft(w,u,d),b&&cs(c)}($&&(N=y&&y.onVnodeUnmounted)||I)&&ce(()=>{N&&we(N,u,c),I&&Ve(c,null,u,"unmounted")},d)},cs=c=>{const{type:u,el:d,anchor:b,transition:g}=c;if(u===ye){qr(d,b);return}if(u===xn){O(c);return}const m=()=>{r(d),g&&!g.persisted&&g.afterLeave&&g.afterLeave()};if(c.shapeFlag&1&&g&&!g.persisted){const{leave:y,delayLeave:v}=g,w=()=>y(d,m);v?v(c.el,m,w):w()}else m()},qr=(c,u)=>{let d;for(;c!==u;)d=S(c),r(c),c=d;r(u)},Jr=(c,u,d)=>{const{bum:b,scope:g,job:m,subTree:y,um:v,m:w,a:_}=c;ys(w),ys(_),b&&Bt(b),g.stop(),m&&(m.flags|=8,ge(y,c,u,d)),v&&ce(v,u),ce(()=>{c.isUnmounted=!0},u),u&&u.pendingBranch&&!u.isUnmounted&&c.asyncDep&&!c.asyncResolved&&c.suspenseId===u.pendingId&&(u.deps--,u.deps===0&&u.resolve())},ft=(c,u,d,b=!1,g=!1,m=0)=>{for(let y=m;y{if(c.shapeFlag&6)return Nt(c.component.subTree);if(c.shapeFlag&128)return c.suspense.next();const u=S(c.anchor||c.el),d=u&&u[qi];return d?S(d):u};let dn=!1;const fs=(c,u,d)=>{c==null?u._vnode&&ge(u._vnode,null,null,!0):F(u._vnode||null,c,u,null,null,null,d),u._vnode=c,dn||(dn=!0,gs(),ar(),dn=!1)},ut={p:F,um:ge,m:Be,r:cs,mt:an,mc:Ie,pc:W,pbc:We,n:Nt,o:e};return{render:fs,hydrate:void 0,createApp:mo(fs)}}function vn({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Ke({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Eo(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ir(e,t,n=!1){const s=e.children,r=t.children;if(P(s)&&P(r))for(let i=0;i>1,e[n[l]]0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function Fr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Fr(t)}function ys(e){if(e)for(let t=0;tVt(Oo);function yn(e,t,n){return Dr(e,t,n)}function Dr(e,t,n=U){const{immediate:s,deep:r,flush:i,once:o}=n,l=k({},n),f=t&&s||!t&&i!=="post";let h;if(Rt){if(i==="sync"){const C=Ro();h=C.__watcherHandles||(C.__watcherHandles=[])}else if(!f){const C=()=>{};return C.stop=Se,C.resume=Se,C.pause=Se,C}}const a=re;l.call=(C,D,F)=>Ce(C,a,D,F);let p=!1;i==="post"?l.scheduler=C=>{ce(C,a&&a.suspense)}:i!=="sync"&&(p=!0,l.scheduler=(C,D)=>{D?C():ts(C)}),l.augmentJob=C=>{t&&(C.flags|=4),p&&(C.flags|=2,a&&(C.id=a.uid,C.i=a))};const S=$i(e,t,l);return Rt&&(h?h.push(S):f&&S()),S}function Ao(e,t,n){const s=this.proxy,r=J(e)?e.includes(".")?Hr(s,e):()=>s[e]:e.bind(s,s);let i;A(t)?i=t:(i=t.handler,n=t);const o=It(this),l=Dr(r,i.bind(s),n);return o(),l}function Hr(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;rt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ne(t)}Modifiers`]||e[`${Je(t)}Modifiers`];function Io(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||U;let r=n;const i=t.startsWith("update:"),o=i&&Po(s,t.slice(7));o&&(o.trim&&(r=n.map(a=>J(a)?a.trim():a)),o.number&&(r=n.map(On)));let l,f=s[l=pn(t)]||s[l=pn(Ne(t))];!f&&i&&(f=s[l=pn(Je(t))]),f&&Ce(f,e,6,r);const h=s[l+"Once"];if(h){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Ce(h,e,6,r)}}function Lr(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!A(e)){const f=h=>{const a=Lr(h,t,!0);a&&(l=!0,k(o,a))};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}return!i&&!l?(G(e)&&s.set(e,null),null):(P(i)?i.forEach(f=>o[f]=null):k(o,i),G(e)&&s.set(e,o),o)}function cn(e,t){return!e||!tn(t)?!1:(t=t.slice(2).replace(/Once$/,""),L(e,t[0].toLowerCase()+t.slice(1))||L(e,Je(t))||L(e,t))}function xs(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:f,render:h,renderCache:a,props:p,data:S,setupState:C,ctx:D,inheritAttrs:F}=e,Z=qt(e);let j,K;try{if(n.shapeFlag&4){const O=r||s,Y=O;j=xe(h.call(Y,O,a,p,C,S,D)),K=l}else{const O=t;j=xe(O.length>1?O(p,{attrs:l,slots:o,emit:f}):O(p,null)),K=t.props?l:Fo(l)}}catch(O){St.length=0,on(O,e,1),j=Le(Tt)}let z=j;if(K&&F!==!1){const O=Object.keys(K),{shapeFlag:Y}=z;O.length&&Y&7&&(i&&O.some($n)&&(K=Do(K,i)),z=it(z,K,!1,!0))}return n.dirs&&(z=it(z,null,!1,!0),z.dirs=z.dirs?z.dirs.concat(n.dirs):n.dirs),n.transition&&ns(z,n.transition),j=z,qt(Z),j}const Fo=e=>{let t;for(const n in e)(n==="class"||n==="style"||tn(n))&&((t||(t={}))[n]=e[n]);return t},Do=(e,t)=>{const n={};for(const s in e)(!$n(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Ho(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:f}=t,h=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&f>=0){if(f&1024)return!0;if(f&16)return s?Ss(s,o,h):!!o;if(f&8){const a=t.dynamicProps;for(let p=0;pe.__isSuspense;function No(e,t){t&&t.pendingBranch?P(e)?t.effects.push(...e):t.effects.push(e):zi(e)}const ye=Symbol.for("v-fgt"),fn=Symbol.for("v-txt"),Tt=Symbol.for("v-cmt"),xn=Symbol.for("v-stc"),St=[];let ue=null;function jr(e=!1){St.push(ue=e?null:[])}function jo(){St.pop(),ue=St[St.length-1]||null}let Ot=1;function Cs(e,t=!1){Ot+=e,e<0&&ue&&t&&(ue.hasOnce=!0)}function Uo(e){return e.dynamicChildren=Ot>0?ue||nt:null,jo(),Ot>0&&ue&&ue.push(e),e}function Ur(e,t,n,s,r,i){return Uo(q(e,t,n,s,r,i,!0))}function Wr(e){return e?e.__v_isVNode===!0:!1}function ht(e,t){return e.type===t.type&&e.key===t.key}const $r=({key:e})=>e??null,Kt=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?J(e)||Q(e)||A(e)?{i:ae,r:e,k:t,f:!!n}:e:null);function q(e,t=null,n=null,s=0,r=null,i=e===ye?0:1,o=!1,l=!1){const f={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&$r(t),ref:t&&Kt(t),scopeId:hr,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:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:ae};return l?(rs(f,n),i&128&&e.normalize(f)):n&&(f.shapeFlag|=J(n)?8:16),Ot>0&&!o&&ue&&(f.patchFlag>0||i&6)&&f.patchFlag!==32&&ue.push(f),f}const Le=Wo;function Wo(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===lo)&&(e=Tt),Wr(e)){const l=it(e,t,!0);return n&&rs(l,n),Ot>0&&!i&&ue&&(l.shapeFlag&6?ue[ue.indexOf(e)]=l:ue.push(l)),l.patchFlag=-2,l}if(Xo(e)&&(e=e.__vccOpts),t){t=$o(t);let{class:l,style:f}=t;l&&!J(l)&&(t.class=zn(l)),G(f)&&(es(f)&&!P(f)&&(f=k({},f)),t.style=Kn(f))}const o=J(e)?1:Nr(e)?128:Ji(e)?64:G(e)?4:A(e)?2:0;return q(e,t,n,s,r,o,i,!0)}function $o(e){return e?es(e)||Mr(e)?k({},e):e:null}function it(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:f}=e,h=t?Vo(r||{},t):r,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:h,key:h&&$r(h),ref:t&&t.ref?n&&i?P(i)?i.concat(Kt(t)):[i,Kt(t)]:Kt(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ye?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:f,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&it(e.ssContent),ssFallback:e.ssFallback&&it(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return f&&s&&ns(a,f.clone(a)),a}function Bo(e=" ",t=0){return Le(fn,null,e,t)}function xe(e){return e==null||typeof e=="boolean"?Le(Tt):P(e)?Le(ye,null,e.slice()):Wr(e)?De(e):Le(fn,null,String(e))}function De(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:it(e)}function rs(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(P(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),rs(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!Mr(t)?t._ctx=ae:r===3&&ae&&(ae.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else A(t)?(t={default:t,_ctx:ae},n=32):(t=String(t),s&64?(n=16,t=[Bo(t)]):n=8);e.children=t,e.shapeFlag|=n}function Vo(...e){const t={};for(let n=0;n{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Xt=t("__VUE_INSTANCE_SETTERS__",n=>re=n),jn=t("__VUE_SSR_SETTERS__",n=>Rt=n)}const It=e=>{const t=re;return Xt(e),e.scope.on(),()=>{e.scope.off(),Xt(t)}},Ms=()=>{re&&re.scope.off(),Xt(null)};function Br(e){return e.vnode.shapeFlag&4}let Rt=!1;function Yo(e,t=!1,n=!1){t&&jn(t);const{props:s,children:r}=e.vnode,i=Br(e);_o(e,s,i,t),xo(e,r,n);const o=i?qo(e,t):void 0;return t&&jn(!1),o}function qo(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,co);const{setup:s}=n;if(s){je();const r=e.setupContext=s.length>1?Zo(e):null,i=It(e),o=Pt(s,e,0,[e.props,r]),l=Vs(o);if(Ue(),i(),(l||e.sp)&&!yt(e)&&gr(e),l){if(o.then(Ms,Ms),t)return o.then(f=>{Es(e,f)}).catch(f=>{on(f,e,0)});e.asyncDep=o}else Es(e,o)}else Vr(e)}function Es(e,t,n){A(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:G(t)&&(e.setupState=cr(t)),Vr(e)}function Vr(e,t,n){const s=e.type;e.render||(e.render=s.render||Se);{const r=It(e);je();try{fo(e)}finally{Ue(),r()}}}const Jo={get(e,t){return X(e,"get",""),e[t]}};function Zo(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Jo),slots:e.slots,emit:e.emit,expose:t}}function un(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(cr(Fi(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in xt)return xt[n](e)},has(t,n){return n in t||n in xt}})):e.proxy}function Xo(e){return A(e)&&"__vccOpts"in e}const Qo=(e,t)=>Ui(e,t,Rt),ko="3.5.13";/** +**/function Pt(e,t,n,s){try{return s?e(...s):e()}catch(r){ln(r,t,n)}}function Ce(e,t,n,s){if(A(e)){const r=Pt(e,t,n,s);return r&&Vs(r)&&r.catch(i=>{ln(i,t,n)}),r}if(P(e)){const r=[];for(let i=0;i>>1,r=se[s],i=Et(r);i=Et(n)?se.push(e):se.splice(Ki(t),0,e),e.flags|=1,ur()}}function ur(){qt||(qt=fr.then(dr))}function zi(e){P(e)?st.push(...e):Fe&&e.id===-1?Fe.splice(et+1,0,e):e.flags&1||(st.push(e),e.flags|=1),ur()}function gs(e,t,n=ve+1){for(;nEt(n)-Et(s));if(st.length=0,Fe){Fe.push(...t);return}for(Fe=t,et=0;ete.id==null?e.flags&2?-1:1/0:e.id;function dr(e){try{for(ve=0;ve{s._d&&Cs(-1);const i=Jt(t);let o;try{o=e(...r)}finally{Jt(i),s._d&&Cs(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function Yi(e,t){if(ae===null)return e;const n=an(ae),s=e.dirs||(e.dirs=[]);for(let r=0;re.__isTeleport;function ns(e,t){e.shapeFlag&6&&e.component?(e.transition=t,ns(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}/*! #__NO_SIDE_EFFECTS__ */function pr(e,t){return A(e)?k({name:e.name},t,{setup:e}):e}function gr(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Zt(e,t,n,s,r=!1){if(P(e)){e.forEach((D,F)=>Zt(D,t&&(P(t)?t[F]:t),n,s,r));return}if(yt(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&Zt(e,t,n,s.component.subTree);return}const i=s.shapeFlag&4?an(s.component):s.el,o=r?null:i,{i:l,r:f}=e,h=t&&t.r,a=l.refs===U?l.refs={}:l.refs,p=l.setupState,S=H(p),C=p===U?()=>!1:D=>L(S,D);if(h!=null&&h!==f&&(J(h)?(a[h]=null,C(h)&&(p[h]=null)):Q(h)&&(h.value=null)),A(f))Pt(f,l,12,[o,a]);else{const D=J(f),F=Q(f);if(D||F){const Z=()=>{if(e.f){const j=D?C(f)?p[f]:a[f]:f.value;r?P(j)&&Bn(j,i):P(j)?j.includes(i)||j.push(i):D?(a[f]=[i],C(f)&&(p[f]=a[f])):(f.value=[i],e.k&&(a[e.k]=f.value))}else D?(a[f]=o,C(f)&&(p[f]=o)):F&&(f.value=o,e.k&&(a[e.k]=o))};o?(Z.id=-1,ce(Z,n)):Z()}}}on().requestIdleCallback;on().cancelIdleCallback;const yt=e=>!!e.type.__asyncLoader,mr=e=>e.type.__isKeepAlive;function Zi(e,t){br(e,"a",t)}function Xi(e,t){br(e,"da",t)}function br(e,t,n=re){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(cn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)mr(r.parent.vnode)&&Qi(s,t,n,r),r=r.parent}}function Qi(e,t,n,s){const r=cn(t,e,s,!0);wr(()=>{Bn(s[t],r)},n)}function cn(e,t,n=re,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{je();const l=It(n),f=Ce(t,n,e,o);return l(),Ue(),f});return s?r.unshift(i):r.push(i),i}}const Ae=e=>(t,n=re)=>{(!Rt||e==="sp")&&cn(e,(...s)=>t(...s),n)},ki=Ae("bm"),_r=Ae("m"),eo=Ae("bu"),to=Ae("u"),no=Ae("bum"),wr=Ae("um"),so=Ae("sp"),ro=Ae("rtg"),io=Ae("rtc");function oo(e,t=re){cn("ec",e,t)}const lo=Symbol.for("v-ndc"),Dn=e=>e?Br(e)?an(e):Dn(e.parent):null,xt=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=>Dn(e.parent),$root:e=>Dn(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>yr(e),$forceUpdate:e=>e.f||(e.f=()=>{ts(e.update)}),$nextTick:e=>e.n||(e.n=Vi.bind(e.proxy)),$watch:e=>Ao.bind(e)}),wn=(e,t)=>e!==U&&!e.__isScriptSetup&&L(e,t),co={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:f}=e;let h;if(t[0]!=="$"){const C=o[t];if(C!==void 0)switch(C){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(wn(s,t))return o[t]=1,s[t];if(r!==U&&L(r,t))return o[t]=2,r[t];if((h=e.propsOptions[0])&&L(h,t))return o[t]=3,i[t];if(n!==U&&L(n,t))return o[t]=4,n[t];Hn&&(o[t]=0)}}const a=xt[t];let p,S;if(a)return t==="$attrs"&&X(e.attrs,"get",""),a(e);if((p=l.__cssModules)&&(p=p[t]))return p;if(n!==U&&L(n,t))return o[t]=4,n[t];if(S=f.config.globalProperties,L(S,t))return S[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return wn(r,t)?(r[t]=n,!0):s!==U&&L(s,t)?(s[t]=n,!0):L(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:i}},o){let l;return!!n[o]||e!==U&&L(e,o)||wn(t,o)||(l=i[0])&&L(l,o)||L(s,o)||L(xt,o)||L(r.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:L(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function ms(e){return P(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Hn=!0;function fo(e){const t=yr(e),n=e.proxy,s=e.ctx;Hn=!1,t.beforeCreate&&bs(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:f,inject:h,created:a,beforeMount:p,mounted:S,beforeUpdate:C,updated:D,activated:F,deactivated:Z,beforeDestroy:j,beforeUnmount:K,destroyed:z,unmounted:O,render:Y,renderTracked:Pe,renderTriggered:pe,errorCaptured:Ie,serverPrefetch:Ft,expose:We,inheritAttrs:ct,components:Dt,directives:Ht,filters:dn}=t;if(h&&uo(h,s,null),o)for(const V in o){const W=o[V];A(W)&&(s[V]=W.bind(n))}if(r){const V=r.call(n,n);G(V)&&(e.data=Qn(V))}if(Hn=!0,i)for(const V in i){const W=i[V],$e=A(W)?W.bind(n,n):A(W.get)?W.get.bind(n,n):Se,Lt=!A(W)&&A(W.set)?W.set.bind(n):Se,Be=Qo({get:$e,set:Lt});Object.defineProperty(s,V,{enumerable:!0,configurable:!0,get:()=>Be.value,set:ge=>Be.value=ge})}if(l)for(const V in l)vr(l[V],s,n,V);if(f){const V=A(f)?f.call(n):f;Reflect.ownKeys(V).forEach(W=>{bo(W,V[W])})}a&&bs(a,e,"c");function ee(V,W){P(W)?W.forEach($e=>V($e.bind(n))):W&&V(W.bind(n))}if(ee(ki,p),ee(_r,S),ee(eo,C),ee(to,D),ee(Zi,F),ee(Xi,Z),ee(oo,Ie),ee(io,Pe),ee(ro,pe),ee(no,K),ee(wr,O),ee(so,Ft),P(We))if(We.length){const V=e.exposed||(e.exposed={});We.forEach(W=>{Object.defineProperty(V,W,{get:()=>n[W],set:$e=>n[W]=$e})})}else e.exposed||(e.exposed={});Y&&e.render===Se&&(e.render=Y),ct!=null&&(e.inheritAttrs=ct),Dt&&(e.components=Dt),Ht&&(e.directives=Ht),Ft&&gr(e)}function uo(e,t,n=Se){P(e)&&(e=Ln(e));for(const s in e){const r=e[s];let i;G(r)?"default"in r?i=Kt(r.from||s,r.default,!0):i=Kt(r.from||s):i=Kt(r),Q(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function bs(e,t,n){Ce(P(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function vr(e,t,n,s){let r=s.includes(".")?Hr(n,s):()=>n[s];if(J(e)){const i=t[e];A(i)&&yn(r,i)}else if(A(e))yn(r,e.bind(n));else if(G(e))if(P(e))e.forEach(i=>vr(i,t,n,s));else{const i=A(e.handler)?e.handler.bind(n):t[e.handler];A(i)&&yn(r,i,e)}}function yr(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let f;return l?f=l:!r.length&&!n&&!s?f=t:(f={},r.length&&r.forEach(h=>Xt(f,h,o,!0)),Xt(f,t,o)),G(t)&&i.set(t,f),f}function Xt(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Xt(e,i,n,!0),r&&r.forEach(o=>Xt(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=ao[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const ao={data:_s,props:ws,emits:ws,methods:gt,computed:gt,beforeCreate:te,created:te,beforeMount:te,mounted:te,beforeUpdate:te,updated:te,beforeDestroy:te,beforeUnmount:te,destroyed:te,unmounted:te,activated:te,deactivated:te,errorCaptured:te,serverPrefetch:te,components:gt,directives:gt,watch:po,provide:_s,inject:ho};function _s(e,t){return t?e?function(){return k(A(e)?e.call(this,this):e,A(t)?t.call(this,this):t)}:t:e}function ho(e,t){return gt(Ln(e),Ln(t))}function Ln(e){if(P(e)){const t={};for(let n=0;n1)return n&&A(t)?t.call(s&&s.proxy):t}}const Sr={},Cr=()=>Object.create(Sr),Mr=e=>Object.getPrototypeOf(e)===Sr;function _o(e,t,n,s=!1){const r={},i=Cr();e.propsDefaults=Object.create(null),Er(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:Ii(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function wo(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=H(r),[f]=e.propsOptions;let h=!1;if((s||o>0)&&!(o&16)){if(o&8){const a=e.vnode.dynamicProps;for(let p=0;p{f=!0;const[S,C]=Tr(p,t,!0);k(o,S),C&&l.push(...C)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!i&&!f)return G(e)&&s.set(e,nt),nt;if(P(i))for(let a=0;ae[0]==="_"||e==="$stable",ss=e=>P(e)?e.map(xe):[xe(e)],yo=(e,t,n)=>{if(t._n)return t;const s=Gi((...r)=>ss(t(...r)),n);return s._c=!1,s},Rr=(e,t,n)=>{const s=e._ctx;for(const r in e){if(Or(r))continue;const i=e[r];if(A(i))t[r]=yo(r,i,s);else if(i!=null){const o=ss(i);t[r]=()=>o}}},Ar=(e,t)=>{const n=ss(t);e.slots.default=()=>n},Pr=(e,t,n)=>{for(const s in t)(n||s!=="_")&&(e[s]=t[s])},xo=(e,t,n)=>{const s=e.slots=Cr();if(e.vnode.shapeFlag&32){const r=t._;r?(Pr(s,t,n),n&&zs(s,"_",r,!0)):Rr(t,s)}else t&&Ar(e,t)},So=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=U;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:Pr(r,t,n):(i=!t.$stable,Rr(t,r)),o=t}else t&&(Ar(e,t),o={default:1});if(i)for(const l in r)!Or(l)&&o[l]==null&&delete r[l]},ce=No;function Co(e){return Mo(e)}function Mo(e,t){const n=on();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:f,setText:h,setElementText:a,parentNode:p,nextSibling:S,setScopeId:C=Se,insertStaticContent:D}=e,F=(c,u,d,b=null,g=null,m=null,y=void 0,v=null,w=!!u.dynamicChildren)=>{if(c===u)return;c&&!ht(c,u)&&(b=Nt(c),ge(c,g,m,!0),c=null),u.patchFlag===-2&&(w=!1,u.dynamicChildren=null);const{type:_,ref:E,shapeFlag:x}=u;switch(_){case un:Z(c,u,d,b);break;case Tt:j(c,u,d,b);break;case xn:c==null&&K(u,d,b,y);break;case ye:Dt(c,u,d,b,g,m,y,v,w);break;default:x&1?Y(c,u,d,b,g,m,y,v,w):x&6?Ht(c,u,d,b,g,m,y,v,w):(x&64||x&128)&&_.process(c,u,d,b,g,m,y,v,w,ut)}E!=null&&g&&Zt(E,c&&c.ref,m,u||c,!u)},Z=(c,u,d,b)=>{if(c==null)s(u.el=l(u.children),d,b);else{const g=u.el=c.el;u.children!==c.children&&h(g,u.children)}},j=(c,u,d,b)=>{c==null?s(u.el=f(u.children||""),d,b):u.el=c.el},K=(c,u,d,b)=>{[c.el,c.anchor]=D(c.children,u,d,b,c.el,c.anchor)},z=({el:c,anchor:u},d,b)=>{let g;for(;c&&c!==u;)g=S(c),s(c,d,b),c=g;s(u,d,b)},O=({el:c,anchor:u})=>{let d;for(;c&&c!==u;)d=S(c),r(c),c=d;r(u)},Y=(c,u,d,b,g,m,y,v,w)=>{u.type==="svg"?y="svg":u.type==="math"&&(y="mathml"),c==null?Pe(u,d,b,g,m,y,v,w):Ft(c,u,g,m,y,v,w)},Pe=(c,u,d,b,g,m,y,v)=>{let w,_;const{props:E,shapeFlag:x,transition:M,dirs:R}=c;if(w=c.el=o(c.type,m,E&&E.is,E),x&8?a(w,c.children):x&16&&Ie(c.children,w,null,b,g,vn(c,m),y,v),R&&Ve(c,null,b,"created"),pe(w,c,c.scopeId,y,b),E){for(const $ in E)$!=="value"&&!bt($)&&i(w,$,null,E[$],m,b);"value"in E&&i(w,"value",null,E.value,m),(_=E.onVnodeBeforeMount)&&we(_,b,c)}R&&Ve(c,null,b,"beforeMount");const I=Eo(g,M);I&&M.beforeEnter(w),s(w,u,d),((_=E&&E.onVnodeMounted)||I||R)&&ce(()=>{_&&we(_,b,c),I&&M.enter(w),R&&Ve(c,null,b,"mounted")},g)},pe=(c,u,d,b,g)=>{if(d&&C(c,d),b)for(let m=0;m{for(let _=w;_{const v=u.el=c.el;let{patchFlag:w,dynamicChildren:_,dirs:E}=u;w|=c.patchFlag&16;const x=c.props||U,M=u.props||U;let R;if(d&&Ke(d,!1),(R=M.onVnodeBeforeUpdate)&&we(R,d,u,c),E&&Ve(u,c,d,"beforeUpdate"),d&&Ke(d,!0),(x.innerHTML&&M.innerHTML==null||x.textContent&&M.textContent==null)&&a(v,""),_?We(c.dynamicChildren,_,v,d,b,vn(u,g),m):y||W(c,u,v,null,d,b,vn(u,g),m,!1),w>0){if(w&16)ct(v,x,M,d,g);else if(w&2&&x.class!==M.class&&i(v,"class",null,M.class,g),w&4&&i(v,"style",x.style,M.style,g),w&8){const I=u.dynamicProps;for(let $=0;${R&&we(R,d,u,c),E&&Ve(u,c,d,"updated")},b)},We=(c,u,d,b,g,m,y)=>{for(let v=0;v{if(u!==d){if(u!==U)for(const m in u)!bt(m)&&!(m in d)&&i(c,m,u[m],null,g,b);for(const m in d){if(bt(m))continue;const y=d[m],v=u[m];y!==v&&m!=="value"&&i(c,m,v,y,g,b)}"value"in d&&i(c,"value",u.value,d.value,g)}},Dt=(c,u,d,b,g,m,y,v,w)=>{const _=u.el=c?c.el:l(""),E=u.anchor=c?c.anchor:l("");let{patchFlag:x,dynamicChildren:M,slotScopeIds:R}=u;R&&(v=v?v.concat(R):R),c==null?(s(_,d,b),s(E,d,b),Ie(u.children||[],d,E,g,m,y,v,w)):x>0&&x&64&&M&&c.dynamicChildren?(We(c.dynamicChildren,M,d,g,m,y,v),(u.key!=null||g&&u===g.subTree)&&Ir(c,u,!0)):W(c,u,d,E,g,m,y,v,w)},Ht=(c,u,d,b,g,m,y,v,w)=>{u.slotScopeIds=v,c==null?u.shapeFlag&512?g.ctx.activate(u,d,b,y,w):dn(u,d,b,g,m,y,w):ls(c,u,w)},dn=(c,u,d,b,g,m,y)=>{const v=c.component=Go(c,b,g);if(mr(c)&&(v.ctx.renderer=ut),Yo(v,!1,y),v.asyncDep){if(g&&g.registerDep(v,ee,y),!c.el){const w=v.subTree=Le(Tt);j(null,w,u,d)}}else ee(v,c,u,d,g,m,y)},ls=(c,u,d)=>{const b=u.component=c.component;if(Ho(c,u,d))if(b.asyncDep&&!b.asyncResolved){V(b,u,d);return}else b.next=u,b.update();else u.el=c.el,b.vnode=u},ee=(c,u,d,b,g,m,y)=>{const v=()=>{if(c.isMounted){let{next:x,bu:M,u:R,parent:I,vnode:$}=c;{const be=Fr(c);if(be){x&&(x.el=$.el,V(c,x,y)),be.asyncDep.then(()=>{c.isUnmounted||v()});return}}let N=x,oe;Ke(c,!1),x?(x.el=$.el,V(c,x,y)):x=$,M&&Vt(M),(oe=x.props&&x.props.onVnodeBeforeUpdate)&&we(oe,I,x,$),Ke(c,!0);const ie=xs(c),me=c.subTree;c.subTree=ie,F(me,ie,p(me.el),Nt(me),c,g,m),x.el=ie.el,N===null&&Lo(c,ie.el),R&&ce(R,g),(oe=x.props&&x.props.onVnodeUpdated)&&ce(()=>we(oe,I,x,$),g)}else{let x;const{el:M,props:R}=u,{bm:I,m:$,parent:N,root:oe,type:ie}=c,me=yt(u);Ke(c,!1),I&&Vt(I),!me&&(x=R&&R.onVnodeBeforeMount)&&we(x,N,u),Ke(c,!0);{oe.ce&&oe.ce._injectChildStyle(ie);const be=c.subTree=xs(c);F(null,be,d,b,c,g,m),u.el=be.el}if($&&ce($,g),!me&&(x=R&&R.onVnodeMounted)){const be=u;ce(()=>we(x,N,be),g)}(u.shapeFlag&256||N&&yt(N.vnode)&&N.vnode.shapeFlag&256)&&c.a&&ce(c.a,g),c.isMounted=!0,u=d=b=null}};c.scope.on();const w=c.effect=new Ys(v);c.scope.off();const _=c.update=w.run.bind(w),E=c.job=w.runIfDirty.bind(w);E.i=c,E.id=c.uid,w.scheduler=()=>ts(E),Ke(c,!0),_()},V=(c,u,d)=>{u.component=c;const b=c.vnode.props;c.vnode=u,c.next=null,wo(c,u.props,b,d),So(c,u.children,d),je(),gs(c),Ue()},W=(c,u,d,b,g,m,y,v,w=!1)=>{const _=c&&c.children,E=c?c.shapeFlag:0,x=u.children,{patchFlag:M,shapeFlag:R}=u;if(M>0){if(M&128){Lt(_,x,d,b,g,m,y,v,w);return}else if(M&256){$e(_,x,d,b,g,m,y,v,w);return}}R&8?(E&16&&ft(_,g,m),x!==_&&a(d,x)):E&16?R&16?Lt(_,x,d,b,g,m,y,v,w):ft(_,g,m,!0):(E&8&&a(d,""),R&16&&Ie(x,d,b,g,m,y,v,w))},$e=(c,u,d,b,g,m,y,v,w)=>{c=c||nt,u=u||nt;const _=c.length,E=u.length,x=Math.min(_,E);let M;for(M=0;ME?ft(c,g,m,!0,!1,x):Ie(u,d,b,g,m,y,v,w,x)},Lt=(c,u,d,b,g,m,y,v,w)=>{let _=0;const E=u.length;let x=c.length-1,M=E-1;for(;_<=x&&_<=M;){const R=c[_],I=u[_]=w?De(u[_]):xe(u[_]);if(ht(R,I))F(R,I,d,null,g,m,y,v,w);else break;_++}for(;_<=x&&_<=M;){const R=c[x],I=u[M]=w?De(u[M]):xe(u[M]);if(ht(R,I))F(R,I,d,null,g,m,y,v,w);else break;x--,M--}if(_>x){if(_<=M){const R=M+1,I=RM)for(;_<=x;)ge(c[_],g,m,!0),_++;else{const R=_,I=_,$=new Map;for(_=I;_<=M;_++){const le=u[_]=w?De(u[_]):xe(u[_]);le.key!=null&&$.set(le.key,_)}let N,oe=0;const ie=M-I+1;let me=!1,be=0;const at=new Array(ie);for(_=0;_=ie){ge(le,g,m,!0);continue}let _e;if(le.key!=null)_e=$.get(le.key);else for(N=I;N<=M;N++)if(at[N-I]===0&&ht(le,u[N])){_e=N;break}_e===void 0?ge(le,g,m,!0):(at[_e-I]=_+1,_e>=be?be=_e:me=!0,F(le,u[_e],d,null,g,m,y,v,w),oe++)}const us=me?To(at):nt;for(N=us.length-1,_=ie-1;_>=0;_--){const le=I+_,_e=u[le],as=le+1{const{el:m,type:y,transition:v,children:w,shapeFlag:_}=c;if(_&6){Be(c.component.subTree,u,d,b);return}if(_&128){c.suspense.move(u,d,b);return}if(_&64){y.move(c,u,d,ut);return}if(y===ye){s(m,u,d);for(let x=0;xv.enter(m),g);else{const{leave:x,delayLeave:M,afterLeave:R}=v,I=()=>s(m,u,d),$=()=>{x(m,()=>{I(),R&&R()})};M?M(m,I,$):$()}else s(m,u,d)},ge=(c,u,d,b=!1,g=!1)=>{const{type:m,props:y,ref:v,children:w,dynamicChildren:_,shapeFlag:E,patchFlag:x,dirs:M,cacheIndex:R}=c;if(x===-2&&(g=!1),v!=null&&Zt(v,null,d,c,!0),R!=null&&(u.renderCache[R]=void 0),E&256){u.ctx.deactivate(c);return}const I=E&1&&M,$=!yt(c);let N;if($&&(N=y&&y.onVnodeBeforeUnmount)&&we(N,u,c),E&6)Jr(c.component,d,b);else{if(E&128){c.suspense.unmount(d,b);return}I&&Ve(c,null,u,"beforeUnmount"),E&64?c.type.remove(c,u,d,ut,b):_&&!_.hasOnce&&(m!==ye||x>0&&x&64)?ft(_,u,d,!1,!0):(m===ye&&x&384||!g&&E&16)&&ft(w,u,d),b&&cs(c)}($&&(N=y&&y.onVnodeUnmounted)||I)&&ce(()=>{N&&we(N,u,c),I&&Ve(c,null,u,"unmounted")},d)},cs=c=>{const{type:u,el:d,anchor:b,transition:g}=c;if(u===ye){qr(d,b);return}if(u===xn){O(c);return}const m=()=>{r(d),g&&!g.persisted&&g.afterLeave&&g.afterLeave()};if(c.shapeFlag&1&&g&&!g.persisted){const{leave:y,delayLeave:v}=g,w=()=>y(d,m);v?v(c.el,m,w):w()}else m()},qr=(c,u)=>{let d;for(;c!==u;)d=S(c),r(c),c=d;r(u)},Jr=(c,u,d)=>{const{bum:b,scope:g,job:m,subTree:y,um:v,m:w,a:_}=c;ys(w),ys(_),b&&Vt(b),g.stop(),m&&(m.flags|=8,ge(y,c,u,d)),v&&ce(v,u),ce(()=>{c.isUnmounted=!0},u),u&&u.pendingBranch&&!u.isUnmounted&&c.asyncDep&&!c.asyncResolved&&c.suspenseId===u.pendingId&&(u.deps--,u.deps===0&&u.resolve())},ft=(c,u,d,b=!1,g=!1,m=0)=>{for(let y=m;y{if(c.shapeFlag&6)return Nt(c.component.subTree);if(c.shapeFlag&128)return c.suspense.next();const u=S(c.anchor||c.el),d=u&&u[qi];return d?S(d):u};let hn=!1;const fs=(c,u,d)=>{c==null?u._vnode&&ge(u._vnode,null,null,!0):F(u._vnode||null,c,u,null,null,null,d),u._vnode=c,hn||(hn=!0,gs(),ar(),hn=!1)},ut={p:F,um:ge,m:Be,r:cs,mt:dn,mc:Ie,pc:W,pbc:We,n:Nt,o:e};return{render:fs,hydrate:void 0,createApp:mo(fs)}}function vn({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Ke({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Eo(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ir(e,t,n=!1){const s=e.children,r=t.children;if(P(s)&&P(r))for(let i=0;i>1,e[n[l]]0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function Fr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Fr(t)}function ys(e){if(e)for(let t=0;tKt(Oo);function yn(e,t,n){return Dr(e,t,n)}function Dr(e,t,n=U){const{immediate:s,deep:r,flush:i,once:o}=n,l=k({},n),f=t&&s||!t&&i!=="post";let h;if(Rt){if(i==="sync"){const C=Ro();h=C.__watcherHandles||(C.__watcherHandles=[])}else if(!f){const C=()=>{};return C.stop=Se,C.resume=Se,C.pause=Se,C}}const a=re;l.call=(C,D,F)=>Ce(C,a,D,F);let p=!1;i==="post"?l.scheduler=C=>{ce(C,a&&a.suspense)}:i!=="sync"&&(p=!0,l.scheduler=(C,D)=>{D?C():ts(C)}),l.augmentJob=C=>{t&&(C.flags|=4),p&&(C.flags|=2,a&&(C.id=a.uid,C.i=a))};const S=$i(e,t,l);return Rt&&(h?h.push(S):f&&S()),S}function Ao(e,t,n){const s=this.proxy,r=J(e)?e.includes(".")?Hr(s,e):()=>s[e]:e.bind(s,s);let i;A(t)?i=t:(i=t.handler,n=t);const o=It(this),l=Dr(r,i.bind(s),n);return o(),l}function Hr(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;rt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ne(t)}Modifiers`]||e[`${Je(t)}Modifiers`];function Io(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||U;let r=n;const i=t.startsWith("update:"),o=i&&Po(s,t.slice(7));o&&(o.trim&&(r=n.map(a=>J(a)?a.trim():a)),o.number&&(r=n.map(On)));let l,f=s[l=pn(t)]||s[l=pn(Ne(t))];!f&&i&&(f=s[l=pn(Je(t))]),f&&Ce(f,e,6,r);const h=s[l+"Once"];if(h){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Ce(h,e,6,r)}}function Lr(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!A(e)){const f=h=>{const a=Lr(h,t,!0);a&&(l=!0,k(o,a))};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}return!i&&!l?(G(e)&&s.set(e,null),null):(P(i)?i.forEach(f=>o[f]=null):k(o,i),G(e)&&s.set(e,o),o)}function fn(e,t){return!e||!nn(t)?!1:(t=t.slice(2).replace(/Once$/,""),L(e,t[0].toLowerCase()+t.slice(1))||L(e,Je(t))||L(e,t))}function xs(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:f,render:h,renderCache:a,props:p,data:S,setupState:C,ctx:D,inheritAttrs:F}=e,Z=Jt(e);let j,K;try{if(n.shapeFlag&4){const O=r||s,Y=O;j=xe(h.call(Y,O,a,p,C,S,D)),K=l}else{const O=t;j=xe(O.length>1?O(p,{attrs:l,slots:o,emit:f}):O(p,null)),K=t.props?l:Fo(l)}}catch(O){St.length=0,ln(O,e,1),j=Le(Tt)}let z=j;if(K&&F!==!1){const O=Object.keys(K),{shapeFlag:Y}=z;O.length&&Y&7&&(i&&O.some($n)&&(K=Do(K,i)),z=it(z,K,!1,!0))}return n.dirs&&(z=it(z,null,!1,!0),z.dirs=z.dirs?z.dirs.concat(n.dirs):n.dirs),n.transition&&ns(z,n.transition),j=z,Jt(Z),j}const Fo=e=>{let t;for(const n in e)(n==="class"||n==="style"||nn(n))&&((t||(t={}))[n]=e[n]);return t},Do=(e,t)=>{const n={};for(const s in e)(!$n(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Ho(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:f}=t,h=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&f>=0){if(f&1024)return!0;if(f&16)return s?Ss(s,o,h):!!o;if(f&8){const a=t.dynamicProps;for(let p=0;pe.__isSuspense;function No(e,t){t&&t.pendingBranch?P(e)?t.effects.push(...e):t.effects.push(e):zi(e)}const ye=Symbol.for("v-fgt"),un=Symbol.for("v-txt"),Tt=Symbol.for("v-cmt"),xn=Symbol.for("v-stc"),St=[];let ue=null;function jr(e=!1){St.push(ue=e?null:[])}function jo(){St.pop(),ue=St[St.length-1]||null}let Ot=1;function Cs(e,t=!1){Ot+=e,e<0&&ue&&t&&(ue.hasOnce=!0)}function Uo(e){return e.dynamicChildren=Ot>0?ue||nt:null,jo(),Ot>0&&ue&&ue.push(e),e}function Ur(e,t,n,s,r,i){return Uo(q(e,t,n,s,r,i,!0))}function Wr(e){return e?e.__v_isVNode===!0:!1}function ht(e,t){return e.type===t.type&&e.key===t.key}const $r=({key:e})=>e??null,zt=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?J(e)||Q(e)||A(e)?{i:ae,r:e,k:t,f:!!n}:e:null);function q(e,t=null,n=null,s=0,r=null,i=e===ye?0:1,o=!1,l=!1){const f={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&$r(t),ref:t&&zt(t),scopeId:hr,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:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:ae};return l?(rs(f,n),i&128&&e.normalize(f)):n&&(f.shapeFlag|=J(n)?8:16),Ot>0&&!o&&ue&&(f.patchFlag>0||i&6)&&f.patchFlag!==32&&ue.push(f),f}const Le=Wo;function Wo(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===lo)&&(e=Tt),Wr(e)){const l=it(e,t,!0);return n&&rs(l,n),Ot>0&&!i&&ue&&(l.shapeFlag&6?ue[ue.indexOf(e)]=l:ue.push(l)),l.patchFlag=-2,l}if(Xo(e)&&(e=e.__vccOpts),t){t=$o(t);let{class:l,style:f}=t;l&&!J(l)&&(t.class=zn(l)),G(f)&&(es(f)&&!P(f)&&(f=k({},f)),t.style=Kn(f))}const o=J(e)?1:Nr(e)?128:Ji(e)?64:G(e)?4:A(e)?2:0;return q(e,t,n,s,r,o,i,!0)}function $o(e){return e?es(e)||Mr(e)?k({},e):e:null}function it(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:f}=e,h=t?Vo(r||{},t):r,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:h,key:h&&$r(h),ref:t&&t.ref?n&&i?P(i)?i.concat(zt(t)):[i,zt(t)]:zt(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ye?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:f,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&it(e.ssContent),ssFallback:e.ssFallback&&it(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return f&&s&&ns(a,f.clone(a)),a}function Bo(e=" ",t=0){return Le(un,null,e,t)}function xe(e){return e==null||typeof e=="boolean"?Le(Tt):P(e)?Le(ye,null,e.slice()):Wr(e)?De(e):Le(un,null,String(e))}function De(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:it(e)}function rs(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(P(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),rs(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!Mr(t)?t._ctx=ae:r===3&&ae&&(ae.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else A(t)?(t={default:t,_ctx:ae},n=32):(t=String(t),s&64?(n=16,t=[Bo(t)]):n=8);e.children=t,e.shapeFlag|=n}function Vo(...e){const t={};for(let n=0;n{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Qt=t("__VUE_INSTANCE_SETTERS__",n=>re=n),jn=t("__VUE_SSR_SETTERS__",n=>Rt=n)}const It=e=>{const t=re;return Qt(e),e.scope.on(),()=>{e.scope.off(),Qt(t)}},Ms=()=>{re&&re.scope.off(),Qt(null)};function Br(e){return e.vnode.shapeFlag&4}let Rt=!1;function Yo(e,t=!1,n=!1){t&&jn(t);const{props:s,children:r}=e.vnode,i=Br(e);_o(e,s,i,t),xo(e,r,n);const o=i?qo(e,t):void 0;return t&&jn(!1),o}function qo(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,co);const{setup:s}=n;if(s){je();const r=e.setupContext=s.length>1?Zo(e):null,i=It(e),o=Pt(s,e,0,[e.props,r]),l=Vs(o);if(Ue(),i(),(l||e.sp)&&!yt(e)&&gr(e),l){if(o.then(Ms,Ms),t)return o.then(f=>{Es(e,f)}).catch(f=>{ln(f,e,0)});e.asyncDep=o}else Es(e,o)}else Vr(e)}function Es(e,t,n){A(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:G(t)&&(e.setupState=cr(t)),Vr(e)}function Vr(e,t,n){const s=e.type;e.render||(e.render=s.render||Se);{const r=It(e);je();try{fo(e)}finally{Ue(),r()}}}const Jo={get(e,t){return X(e,"get",""),e[t]}};function Zo(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Jo),slots:e.slots,emit:e.emit,expose:t}}function an(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(cr(Fi(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in xt)return xt[n](e)},has(t,n){return n in t||n in xt}})):e.proxy}function Xo(e){return A(e)&&"__vccOpts"in e}const Qo=(e,t)=>Ui(e,t,Rt),ko="3.5.13";/** * @vue/runtime-dom v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Un;const Ts=typeof window<"u"&&window.trustedTypes;if(Ts)try{Un=Ts.createPolicy("vue",{createHTML:e=>e})}catch{}const Kr=Un?e=>Un.createHTML(e):e=>e,el="http://www.w3.org/2000/svg",tl="http://www.w3.org/1998/Math/MathML",Te=typeof document<"u"?document:null,Os=Te&&Te.createElement("template"),nl={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?Te.createElementNS(el,e):t==="mathml"?Te.createElementNS(tl,e):n?Te.createElement(e,{is:n}):Te.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Te.createTextNode(e),createComment:e=>Te.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Te.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{Os.innerHTML=Kr(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=Os.content;if(s==="svg"||s==="mathml"){const f=l.firstChild;for(;f.firstChild;)l.appendChild(f.firstChild);l.removeChild(f)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},sl=Symbol("_vtc");function rl(e,t,n){const s=e[sl];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Rs=Symbol("_vod"),il=Symbol("_vsh"),ol=Symbol(""),ll=/(^|;)\s*display\s*:/;function cl(e,t,n){const s=e.style,r=J(n);let i=!1;if(n&&!r){if(t)if(J(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&zt(s,l,"")}else for(const o in t)n[o]==null&&zt(s,o,"");for(const o in n)o==="display"&&(i=!0),zt(s,o,n[o])}else if(r){if(t!==n){const o=s[ol];o&&(n+=";"+o),s.cssText=n,i=ll.test(n)}}else t&&e.removeAttribute("style");Rs in e&&(e[Rs]=i?s.display:"",e[il]&&(s.display="none"))}const As=/\s*!important$/;function zt(e,t,n){if(P(n))n.forEach(s=>zt(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=fl(e,t);As.test(n)?e.setProperty(Je(s),n.replace(As,""),"important"):e[s]=n}}const Ps=["Webkit","Moz","ms"],Sn={};function fl(e,t){const n=Sn[t];if(n)return n;let s=Ne(t);if(s!=="filter"&&s in e)return Sn[t]=s;s=Ks(s);for(let r=0;rCn||(hl.then(()=>Cn=0),Cn=Date.now());function gl(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;Ce(ml(s,n.value),t,5,[s])};return n.value=e,n.attached=pl(),n}function ml(e,t){if(P(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Ns=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,bl=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?rl(e,s,o):t==="style"?cl(e,n,s):tn(t)?$n(t)||al(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):_l(e,t,s,o))?(Ds(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Fs(e,t,s,o,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!J(s))?Ds(e,Ne(t),s,i,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Fs(e,t,s,o))};function _l(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ns(t)&&A(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Ns(t)&&J(n)?!1:t in e}const js=e=>{const t=e.props["onUpdate:modelValue"]||!1;return P(t)?n=>Bt(t,n):t};function wl(e){e.target.composing=!0}function Us(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Mn=Symbol("_assign"),vl={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[Mn]=js(r);const i=s||r.props&&r.props.type==="number";tt(e,t?"change":"input",o=>{if(o.target.composing)return;let l=e.value;n&&(l=l.trim()),i&&(l=On(l)),e[Mn](l)}),n&&tt(e,"change",()=>{e.value=e.value.trim()}),t||(tt(e,"compositionstart",wl),tt(e,"compositionend",Us),tt(e,"change",Us))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[Mn]=js(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?On(e.value):e.value,f=t??"";l!==f&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===f)||(e.value=f))}},yl=k({patchProp:bl},nl);let Ws;function xl(){return Ws||(Ws=Co(yl))}const Sl=(...e)=>{const t=xl().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Ml(s);if(!r)return;const i=t._component;!A(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,Cl(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t};function Cl(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Ml(e){return J(e)?document.querySelector(e):e}const El="/wails.png",Tl="/vue.svg";let Ol="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",is=(e=21)=>{let t="",n=e|0;for(;n--;)t+=Ol[Math.random()*64|0];return t};const Rl=window.location.origin+"/wails/runtime",Ze={Call:0,Clipboard:1,Application:2,Events:3,ContextMenu:4,Dialog:5,Window:6,Screens:7,System:8,Browser:9,CancelCall:10};let Al=is();function Xe(e,t){return function(n,s=null){return Pl(e,n,t,s)}}function Pl(e,t,n,s){let r=new URL(Rl);r.searchParams.append("object",e),r.searchParams.append("method",t);let i={headers:{}};return n&&(i.headers["x-wails-window-name"]=n),s&&r.searchParams.append("args",JSON.stringify(s)),i.headers["x-wails-client-id"]=Al,new Promise((o,l)=>{fetch(r,i).then(f=>{if(f.ok)return f.headers.get("Content-Type")&&f.headers.get("Content-Type").indexOf("application/json")!==-1?f.json():f.text();l(Error(f.statusText))}).then(f=>o(f)).catch(f=>l(f))})}const $s=(()=>{var e,t,n;try{if((e=window==null?void 0:window.chrome)!=null&&e.webview)return s=>window.chrome.webview.postMessage(s);if((n=(t=window==null?void 0:window.webkit)==null?void 0:t.messageHandlers)!=null&&n.external)return s=>window.webkit.messageHandlers.external.postMessage(s)}catch{console.warn(` +**/let Un;const Ts=typeof window<"u"&&window.trustedTypes;if(Ts)try{Un=Ts.createPolicy("vue",{createHTML:e=>e})}catch{}const Kr=Un?e=>Un.createHTML(e):e=>e,el="http://www.w3.org/2000/svg",tl="http://www.w3.org/1998/Math/MathML",Te=typeof document<"u"?document:null,Os=Te&&Te.createElement("template"),nl={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?Te.createElementNS(el,e):t==="mathml"?Te.createElementNS(tl,e):n?Te.createElement(e,{is:n}):Te.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Te.createTextNode(e),createComment:e=>Te.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Te.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{Os.innerHTML=Kr(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=Os.content;if(s==="svg"||s==="mathml"){const f=l.firstChild;for(;f.firstChild;)l.appendChild(f.firstChild);l.removeChild(f)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},sl=Symbol("_vtc");function rl(e,t,n){const s=e[sl];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Rs=Symbol("_vod"),il=Symbol("_vsh"),ol=Symbol(""),ll=/(^|;)\s*display\s*:/;function cl(e,t,n){const s=e.style,r=J(n);let i=!1;if(n&&!r){if(t)if(J(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&Gt(s,l,"")}else for(const o in t)n[o]==null&&Gt(s,o,"");for(const o in n)o==="display"&&(i=!0),Gt(s,o,n[o])}else if(r){if(t!==n){const o=s[ol];o&&(n+=";"+o),s.cssText=n,i=ll.test(n)}}else t&&e.removeAttribute("style");Rs in e&&(e[Rs]=i?s.display:"",e[il]&&(s.display="none"))}const As=/\s*!important$/;function Gt(e,t,n){if(P(n))n.forEach(s=>Gt(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=fl(e,t);As.test(n)?e.setProperty(Je(s),n.replace(As,""),"important"):e[s]=n}}const Ps=["Webkit","Moz","ms"],Sn={};function fl(e,t){const n=Sn[t];if(n)return n;let s=Ne(t);if(s!=="filter"&&s in e)return Sn[t]=s;s=Ks(s);for(let r=0;rCn||(hl.then(()=>Cn=0),Cn=Date.now());function gl(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;Ce(ml(s,n.value),t,5,[s])};return n.value=e,n.attached=pl(),n}function ml(e,t){if(P(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Ns=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,bl=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?rl(e,s,o):t==="style"?cl(e,n,s):nn(t)?$n(t)||al(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):_l(e,t,s,o))?(Ds(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Fs(e,t,s,o,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!J(s))?Ds(e,Ne(t),s,i,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Fs(e,t,s,o))};function _l(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ns(t)&&A(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Ns(t)&&J(n)?!1:t in e}const js=e=>{const t=e.props["onUpdate:modelValue"]||!1;return P(t)?n=>Vt(t,n):t};function wl(e){e.target.composing=!0}function Us(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Mn=Symbol("_assign"),vl={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[Mn]=js(r);const i=s||r.props&&r.props.type==="number";tt(e,t?"change":"input",o=>{if(o.target.composing)return;let l=e.value;n&&(l=l.trim()),i&&(l=On(l)),e[Mn](l)}),n&&tt(e,"change",()=>{e.value=e.value.trim()}),t||(tt(e,"compositionstart",wl),tt(e,"compositionend",Us),tt(e,"change",Us))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[Mn]=js(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?On(e.value):e.value,f=t??"";l!==f&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===f)||(e.value=f))}},yl=k({patchProp:bl},nl);let Ws;function xl(){return Ws||(Ws=Co(yl))}const Sl=(...e)=>{const t=xl().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Ml(s);if(!r)return;const i=t._component;!A(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,Cl(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t};function Cl(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Ml(e){return J(e)?document.querySelector(e):e}const El="/wails.png",Tl="/vue.svg";let Ol="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",is=(e=21)=>{let t="",n=e|0;for(;n--;)t+=Ol[Math.random()*64|0];return t};const Rl=window.location.origin+"/wails/runtime",Ze={Call:0,Clipboard:1,Application:2,Events:3,ContextMenu:4,Dialog:5,Window:6,Screens:7,System:8,Browser:9,CancelCall:10};let Al=is();function Xe(e,t){return function(n,s=null){return Pl(e,n,t,s)}}function Pl(e,t,n,s){let r=new URL(Rl);r.searchParams.append("object",e),r.searchParams.append("method",t);let i={headers:{}};return n&&(i.headers["x-wails-window-name"]=n),s&&r.searchParams.append("args",JSON.stringify(s)),i.headers["x-wails-client-id"]=Al,new Promise((o,l)=>{fetch(r,i).then(f=>{if(f.ok)return f.headers.get("Content-Type")&&f.headers.get("Content-Type").indexOf("application/json")!==-1?f.json():f.text();l(Error(f.statusText))}).then(f=>o(f)).catch(f=>l(f))})}const $s=(()=>{var e,t,n;try{if((e=window==null?void 0:window.chrome)!=null&&e.webview)return s=>window.chrome.webview.postMessage(s);if((n=(t=window==null?void 0:window.webkit)==null?void 0:t.messageHandlers)!=null&&n.external)return s=>window.webkit.messageHandlers.external.postMessage(s)}catch{console.warn(` %c⚠️ Browser Environment Detected %c %cOnly UI previews are available in the browser. For full functionality, please run the application in desktop mode. More information at: https://v3alpha.wails.io/learn/build/#using-a-browser-for-development -`,"background: #ffffff; color: #000000; font-weight: bold; padding: 4px 8px; border-radius: 4px; border: 2px solid #000000;","background: transparent;","color: #ffffff; font-style: italic; font-weight: bold;")}return null})();function Qt(e){if($s)return $s(e)}function Il(){return window._wails.environment.OS==="windows"}function Fl(){return window._wails.environment.Debug===!0}window.addEventListener("contextmenu",Nl);const Dl=Xe(Ze.ContextMenu,""),Hl=0;function Ll(e,t,n,s){Dl(Hl,{id:e,x:t,y:n,data:s})}function Nl(e){let t=e.target,n=window.getComputedStyle(t).getPropertyValue("--custom-contextmenu");if(n=n?n.trim():"",n){e.preventDefault();let s=window.getComputedStyle(t).getPropertyValue("--custom-contextmenu-data");Ll(n,e.clientX,e.clientY,s);return}jl(e)}function jl(e){if(Fl())return;const t=e.target;switch(window.getComputedStyle(t).getPropertyValue("--default-contextmenu").trim()){case"show":return;case"hide":e.preventDefault();return;default:if(t.isContentEditable)return;const r=window.getSelection(),i=r.toString().length>0;if(i)for(let o=0;oe.target.clientWidth||e.offsetY>e.target.clientHeight)return;ot=!0}else ot=!1}function Bl(){ot=!1}function Ee(e){document.documentElement.style.cursor=e||Ul,kt=e}function Vl(e){if(ot&&(ot=!1,(e.buttons!==void 0?e.buttons:e.which)>0)){Qt("wails:drag");return}if(!zr||!Il())return;let t=En("system.resizeHandleHeight")||5,n=En("system.resizeHandleWidth")||5,s=En("resizeCornerExtra")||10,r=window.outerWidth-e.clientXJl(e,{"call-id":n});let r=!1,i=!1,o=new Promise((l,f)=>{t["call-id"]=n,At.set(n,{resolve:l,reject:f}),ql(e,t).then(h=>{if(i=!0,r)return s()}).catch(h=>{f(h),At.delete(n)})});return o.cancel=()=>{if(i)return s();r=!0},o}function ec(e,...t){return kl(Yl,{methodID:e,args:t})}function Bs(e){return e}function tc(e){return e===Bs?Bs:t=>t===null?null:e(t)}window._wails=window._wails||{};window._wails.dialogErrorCallback=lc;window._wails.dialogResultCallback=oc;const nc=3,sc=Xe(Ze.Dialog,""),qe=new Map;function rc(){let e;do e=is();while(qe.has(e));return e}function ic(e,t={}){const n=rc();return t["dialog-id"]=n,new Promise((s,r)=>{qe.set(n,{resolve:s,reject:r}),sc(e,t).catch(i=>{r(i),qe.delete(n)})})}function oc(e,t,n){let s=qe.get(e);s&&(n?s.resolve(JSON.parse(t)):s.resolve(t),qe.delete(e))}function lc(e,t){let n=qe.get(e);n&&(n.reject(t),qe.delete(e))}const cc=e=>ic(nc,e);window._wails=window._wails||{};window._wails.dispatchWailsEvent=dc;const fc=Xe(Ze.Events,""),uc=0,Tn=new Map;class ac{constructor(t,n=null){this.name=t,this.data=n}}function dc(e){let t=Tn.get(e.name);if(t){let n=t.filter(s=>{if(s.Callback(e))return!0});n.length>0&&(t=t.filter(s=>!n.includes(s)),t.length===0?Tn.delete(e.name):Tn.set(e.name,t))}}function hc(e){return fc(uc,e)}const pc=0,gc=1,mc=2,bc=3,_c=4,wc=5,vc=6,yc=7,xc=8,Sc=9,Cc=10,Mc=11,Ec=12,Tc=13,Oc=14,Rc=15,Ac=16,Pc=17,Ic=18,Fc=19,Dc=20,Hc=21,Lc=22,Nc=23,jc=24,Uc=25,Wc=26,$c=27,Bc=28,Vc=29,Kc=30,zc=31,Gc=32,Yc=33,qc=34,Jc=35,Zc=36,Xc=37,Qc=38,kc=39,ef=40,tf=41,nf=42,sf=43,rf=44,of=45,lf=46,cf=47,T=Symbol();class en{constructor(t=""){this[T]=Xe(Ze.Window,t);for(const n of Object.getOwnPropertyNames(en.prototype))n!=="constructor"&&typeof this[n]=="function"&&(this[n]=this[n].bind(this))}Get(t){return new en(t)}Position(){return this[T](pc)}Center(){return this[T](gc)}Close(){return this[T](mc)}DisableSizeConstraints(){return this[T](bc)}EnableSizeConstraints(){return this[T](_c)}Focus(){return this[T](wc)}ForceReload(){return this[T](vc)}Fullscreen(){return this[T](yc)}GetScreen(){return this[T](xc)}GetZoom(){return this[T](Sc)}Height(){return this[T](Cc)}Hide(){return this[T](Mc)}IsFocused(){return this[T](Ec)}IsFullscreen(){return this[T](Tc)}IsMaximised(){return this[T](Oc)}IsMinimised(){return this[T](Rc)}Maximise(){return this[T](Ac)}Minimise(){return this[T](Pc)}Name(){return this[T](Ic)}OpenDevTools(){return this[T](Fc)}RelativePosition(){return this[T](Dc)}Reload(){return this[T](Hc)}Resizable(){return this[T](Lc)}Restore(){return this[T](Nc)}SetPosition(t,n){return this[T](jc,{x:t,y:n})}SetAlwaysOnTop(t){return this[T](Uc,{alwaysOnTop:t})}SetBackgroundColour(t,n,s,r){return this[T](Wc,{r:t,g:n,b:s,a:r})}SetFrameless(t){return this[T]($c,{frameless:t})}SetFullscreenButtonEnabled(t){return this[T](Bc,{enabled:t})}SetMaxSize(t,n){return this[T](Vc,{width:t,height:n})}SetMinSize(t,n){return this[T](Kc,{width:t,height:n})}SetRelativePosition(t,n){return this[T](zc,{x:t,y:n})}SetResizable(t){return this[T](Gc,{resizable:t})}SetSize(t,n){return this[T](Yc,{width:t,height:n})}SetTitle(t){return this[T](qc,{title:t})}SetZoom(t){return this[T](Jc,{zoom:t})}Show(){return this[T](Zc)}Size(){return this[T](Xc)}ToggleFullscreen(){return this[T](Qc)}ToggleMaximise(){return this[T](kc)}UnFullscreen(){return this[T](ef)}UnMaximise(){return this[T](tf)}UnMinimise(){return this[T](nf)}Width(){return this[T](sf)}Zoom(){return this[T](rf)}ZoomIn(){return this[T](of)}ZoomOut(){return this[T](lf)}ZoomReset(){return this[T](cf)}}const ff=new en("");function uf(){if(!EventTarget||!AbortSignal||!AbortController)return!1;let e=!0;const t=new EventTarget,n=new AbortController;return t.addEventListener("test",()=>{e=!1},{signal:n.signal}),n.abort(),t.dispatchEvent(new CustomEvent("test")),e}document.addEventListener("DOMContentLoaded",()=>!0);function af(e,t=null){hc(new ac(e,t))}function df(e,t){const n=ff.Get(e),s=n[t];if(typeof s!="function"){console.error(`Window method '${t}' not found`);return}try{s.call(n)}catch(r){console.error(`Error calling window method '${t}': `,r)}}function hf(e){const t=e.currentTarget;function n(r="Yes"){if(r!=="Yes")return;const i=t.getAttribute("wml-event"),o=t.getAttribute("wml-target-window")||"",l=t.getAttribute("wml-window"),f=t.getAttribute("wml-openurl");i!==null&&af(i),l!==null&&df(o,l),f!==null&&Gl(f)}const s=t.getAttribute("wml-confirm");s?cc({Title:"Confirm",Message:s,Detached:!1,Buttons:[{Label:"Yes"},{Label:"No",IsDefault:!0}]}).then(n):n()}const $t=Symbol();class pf{constructor(){this[$t]=new AbortController}set(t,n){return{signal:this[$t].signal}}reset(){this[$t].abort(),this[$t]=new AbortController}}const pt=Symbol(),ke=Symbol();class gf{constructor(){this[pt]=new WeakMap,this[ke]=0}set(t,n){return this[ke]+=!this[pt].has(t),this[pt].set(t,n),{}}reset(){if(!(this[ke]<=0)){for(const t of document.body.querySelectorAll("*")){if(this[ke]<=0)break;const n=this[pt].get(t);this[ke]-=typeof n<"u";for(const s of n||[])t.removeEventListener(s,hf)}this[pt]=new WeakMap,this[ke]=0}}}uf()?new pf:new gf;window._wails=window._wails||{};let Yr=!1;function mf(){window._wails.invoke=Qt,Qt("wails:runtime:ready"),Yr=!0}window.addEventListener("load",()=>{Yr||mf()});class os{constructor(t={}){hn(this,"Id");hn(this,"Text");"Id"in t||(this.Id=0),"Text"in t||(this.Text=""),Object.assign(this,t)}static createFrom(t={}){let n=typeof t=="string"?JSON.parse(t):t;return new os(n)}}function bf(e){let t=ec(4074736792,e),n=t.then(s=>wf(s));return n.cancel=t.cancel.bind(t),n}const _f=os.createFrom,wf=tc(_f),vf={class:"card"},yf={class:"input-box"},xf=pr({__name:"HelloWorld",setup(e){const t=_n("");_n("Please enter your name below 👇"),_n("Listening for Time event...");const n=()=>{t.value};return _r(async()=>{console.log(await bf(5))}),(s,r)=>(jr(),Ur(ye,null,[r[1]||(r[1]=q("h1",null,"Kuzbass",-1)),r[2]||(r[2]=q("div",{class:"result"},null,-1)),q("div",vf,[q("div",yf,[Yi(q("input",{class:"input","onUpdate:modelValue":r[0]||(r[0]=i=>t.value=i),type:"text",autocomplete:"off"},null,512),[[vl,t.value]]),q("button",{class:"btn",onClick:n},"Greet")])]),r[3]||(r[3]=q("div",{class:"footer"},[q("div",null,[q("p",null,"Click on the Wails logo to learn more")]),q("div",null,[q("p")])],-1))],64))}}),Sf={class:"container"},Cf=pr({__name:"App",setup(e){return(t,n)=>(jr(),Ur("div",Sf,[n[0]||(n[0]=q("div",null,[q("a",{"wml-openURL":"https://wails.io"},[q("img",{src:El,class:"logo",alt:"Wails logo"})]),q("a",{"wml-openURL":"https://vuejs.org/"},[q("img",{src:Tl,class:"logo vue",alt:"Vue logo"})])],-1)),Le(xf,{msg:"Wails + Vue"})]))}}),Mf=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Ef=Mf(Cf,[["__scopeId","data-v-737f9f9b"]]);Sl(Ef).mount("#app"); +`,"background: #ffffff; color: #000000; font-weight: bold; padding: 4px 8px; border-radius: 4px; border: 2px solid #000000;","background: transparent;","color: #ffffff; font-style: italic; font-weight: bold;")}return null})();function kt(e){if($s)return $s(e)}function Il(){return window._wails.environment.OS==="windows"}function Fl(){return window._wails.environment.Debug===!0}window.addEventListener("contextmenu",Nl);const Dl=Xe(Ze.ContextMenu,""),Hl=0;function Ll(e,t,n,s){Dl(Hl,{id:e,x:t,y:n,data:s})}function Nl(e){let t=e.target,n=window.getComputedStyle(t).getPropertyValue("--custom-contextmenu");if(n=n?n.trim():"",n){e.preventDefault();let s=window.getComputedStyle(t).getPropertyValue("--custom-contextmenu-data");Ll(n,e.clientX,e.clientY,s);return}jl(e)}function jl(e){if(Fl())return;const t=e.target;switch(window.getComputedStyle(t).getPropertyValue("--default-contextmenu").trim()){case"show":return;case"hide":e.preventDefault();return;default:if(t.isContentEditable)return;const r=window.getSelection(),i=r.toString().length>0;if(i)for(let o=0;oe.target.clientWidth||e.offsetY>e.target.clientHeight)return;ot=!0}else ot=!1}function Bl(){ot=!1}function Ee(e){document.documentElement.style.cursor=e||Ul,en=e}function Vl(e){if(ot&&(ot=!1,(e.buttons!==void 0?e.buttons:e.which)>0)){kt("wails:drag");return}if(!zr||!Il())return;let t=En("system.resizeHandleHeight")||5,n=En("system.resizeHandleWidth")||5,s=En("resizeCornerExtra")||10,r=window.outerWidth-e.clientXJl(e,{"call-id":n});let r=!1,i=!1,o=new Promise((l,f)=>{t["call-id"]=n,At.set(n,{resolve:l,reject:f}),ql(e,t).then(h=>{if(i=!0,r)return s()}).catch(h=>{f(h),At.delete(n)})});return o.cancel=()=>{if(i)return s();r=!0},o}function ec(e,...t){return kl(Yl,{methodID:e,args:t})}function Bs(e){return e}function tc(e){return e===Bs?Bs:t=>t===null?null:e(t)}window._wails=window._wails||{};window._wails.dialogErrorCallback=lc;window._wails.dialogResultCallback=oc;const nc=3,sc=Xe(Ze.Dialog,""),qe=new Map;function rc(){let e;do e=is();while(qe.has(e));return e}function ic(e,t={}){const n=rc();return t["dialog-id"]=n,new Promise((s,r)=>{qe.set(n,{resolve:s,reject:r}),sc(e,t).catch(i=>{r(i),qe.delete(n)})})}function oc(e,t,n){let s=qe.get(e);s&&(n?s.resolve(JSON.parse(t)):s.resolve(t),qe.delete(e))}function lc(e,t){let n=qe.get(e);n&&(n.reject(t),qe.delete(e))}const cc=e=>ic(nc,e);window._wails=window._wails||{};window._wails.dispatchWailsEvent=dc;const fc=Xe(Ze.Events,""),uc=0,Tn=new Map;class ac{constructor(t,n=null){this.name=t,this.data=n}}function dc(e){let t=Tn.get(e.name);if(t){let n=t.filter(s=>{if(s.Callback(e))return!0});n.length>0&&(t=t.filter(s=>!n.includes(s)),t.length===0?Tn.delete(e.name):Tn.set(e.name,t))}}function hc(e){return fc(uc,e)}const pc=0,gc=1,mc=2,bc=3,_c=4,wc=5,vc=6,yc=7,xc=8,Sc=9,Cc=10,Mc=11,Ec=12,Tc=13,Oc=14,Rc=15,Ac=16,Pc=17,Ic=18,Fc=19,Dc=20,Hc=21,Lc=22,Nc=23,jc=24,Uc=25,Wc=26,$c=27,Bc=28,Vc=29,Kc=30,zc=31,Gc=32,Yc=33,qc=34,Jc=35,Zc=36,Xc=37,Qc=38,kc=39,ef=40,tf=41,nf=42,sf=43,rf=44,of=45,lf=46,cf=47,T=Symbol();class tn{constructor(t=""){this[T]=Xe(Ze.Window,t);for(const n of Object.getOwnPropertyNames(tn.prototype))n!=="constructor"&&typeof this[n]=="function"&&(this[n]=this[n].bind(this))}Get(t){return new tn(t)}Position(){return this[T](pc)}Center(){return this[T](gc)}Close(){return this[T](mc)}DisableSizeConstraints(){return this[T](bc)}EnableSizeConstraints(){return this[T](_c)}Focus(){return this[T](wc)}ForceReload(){return this[T](vc)}Fullscreen(){return this[T](yc)}GetScreen(){return this[T](xc)}GetZoom(){return this[T](Sc)}Height(){return this[T](Cc)}Hide(){return this[T](Mc)}IsFocused(){return this[T](Ec)}IsFullscreen(){return this[T](Tc)}IsMaximised(){return this[T](Oc)}IsMinimised(){return this[T](Rc)}Maximise(){return this[T](Ac)}Minimise(){return this[T](Pc)}Name(){return this[T](Ic)}OpenDevTools(){return this[T](Fc)}RelativePosition(){return this[T](Dc)}Reload(){return this[T](Hc)}Resizable(){return this[T](Lc)}Restore(){return this[T](Nc)}SetPosition(t,n){return this[T](jc,{x:t,y:n})}SetAlwaysOnTop(t){return this[T](Uc,{alwaysOnTop:t})}SetBackgroundColour(t,n,s,r){return this[T](Wc,{r:t,g:n,b:s,a:r})}SetFrameless(t){return this[T]($c,{frameless:t})}SetFullscreenButtonEnabled(t){return this[T](Bc,{enabled:t})}SetMaxSize(t,n){return this[T](Vc,{width:t,height:n})}SetMinSize(t,n){return this[T](Kc,{width:t,height:n})}SetRelativePosition(t,n){return this[T](zc,{x:t,y:n})}SetResizable(t){return this[T](Gc,{resizable:t})}SetSize(t,n){return this[T](Yc,{width:t,height:n})}SetTitle(t){return this[T](qc,{title:t})}SetZoom(t){return this[T](Jc,{zoom:t})}Show(){return this[T](Zc)}Size(){return this[T](Xc)}ToggleFullscreen(){return this[T](Qc)}ToggleMaximise(){return this[T](kc)}UnFullscreen(){return this[T](ef)}UnMaximise(){return this[T](tf)}UnMinimise(){return this[T](nf)}Width(){return this[T](sf)}Zoom(){return this[T](rf)}ZoomIn(){return this[T](of)}ZoomOut(){return this[T](lf)}ZoomReset(){return this[T](cf)}}const ff=new tn("");function uf(){if(!EventTarget||!AbortSignal||!AbortController)return!1;let e=!0;const t=new EventTarget,n=new AbortController;return t.addEventListener("test",()=>{e=!1},{signal:n.signal}),n.abort(),t.dispatchEvent(new CustomEvent("test")),e}document.addEventListener("DOMContentLoaded",()=>!0);function af(e,t=null){hc(new ac(e,t))}function df(e,t){const n=ff.Get(e),s=n[t];if(typeof s!="function"){console.error(`Window method '${t}' not found`);return}try{s.call(n)}catch(r){console.error(`Error calling window method '${t}': `,r)}}function hf(e){const t=e.currentTarget;function n(r="Yes"){if(r!=="Yes")return;const i=t.getAttribute("wml-event"),o=t.getAttribute("wml-target-window")||"",l=t.getAttribute("wml-window"),f=t.getAttribute("wml-openurl");i!==null&&af(i),l!==null&&df(o,l),f!==null&&Gl(f)}const s=t.getAttribute("wml-confirm");s?cc({Title:"Confirm",Message:s,Detached:!1,Buttons:[{Label:"Yes"},{Label:"No",IsDefault:!0}]}).then(n):n()}const Bt=Symbol();class pf{constructor(){this[Bt]=new AbortController}set(t,n){return{signal:this[Bt].signal}}reset(){this[Bt].abort(),this[Bt]=new AbortController}}const pt=Symbol(),ke=Symbol();class gf{constructor(){this[pt]=new WeakMap,this[ke]=0}set(t,n){return this[ke]+=!this[pt].has(t),this[pt].set(t,n),{}}reset(){if(!(this[ke]<=0)){for(const t of document.body.querySelectorAll("*")){if(this[ke]<=0)break;const n=this[pt].get(t);this[ke]-=typeof n<"u";for(const s of n||[])t.removeEventListener(s,hf)}this[pt]=new WeakMap,this[ke]=0}}}uf()?new pf:new gf;window._wails=window._wails||{};let Yr=!1;function mf(){window._wails.invoke=kt,kt("wails:runtime:ready"),Yr=!0}window.addEventListener("load",()=>{Yr||mf()});class os{constructor(t={}){jt(this,"Id");jt(this,"Text");jt(this,"CreatedAt");"Id"in t||(this.Id=0),"Text"in t||(this.Text=""),"CreatedAt"in t||(this.CreatedAt=0),Object.assign(this,t)}static createFrom(t={}){let n=typeof t=="string"?JSON.parse(t):t;return new os(n)}}function bf(e){let t=ec(4074736792,e),n=t.then(s=>wf(s));return n.cancel=t.cancel.bind(t),n}const _f=os.createFrom,wf=tc(_f),vf={class:"card"},yf={class:"input-box"},xf=pr({__name:"HelloWorld",setup(e){const t=_n("");_n("Please enter your name below 👇"),_n("Listening for Time event...");const n=()=>{t.value};return _r(async()=>{console.log(await bf(5))}),(s,r)=>(jr(),Ur(ye,null,[r[1]||(r[1]=q("h1",null,"Kuzbass",-1)),r[2]||(r[2]=q("div",{class:"result"},null,-1)),q("div",vf,[q("div",yf,[Yi(q("input",{class:"input","onUpdate:modelValue":r[0]||(r[0]=i=>t.value=i),type:"text",autocomplete:"off"},null,512),[[vl,t.value]]),q("button",{class:"btn",onClick:n},"Greet")])]),r[3]||(r[3]=q("div",{class:"footer"},[q("div",null,[q("p",null,"Click on the Wails logo to learn more")]),q("div",null,[q("p")])],-1))],64))}}),Sf={class:"container"},Cf=pr({__name:"App",setup(e){return(t,n)=>(jr(),Ur("div",Sf,[n[0]||(n[0]=q("div",null,[q("a",{"wml-openURL":"https://wails.io"},[q("img",{src:El,class:"logo",alt:"Wails logo"})]),q("a",{"wml-openURL":"https://vuejs.org/"},[q("img",{src:Tl,class:"logo vue",alt:"Vue logo"})])],-1)),Le(xf,{msg:"Wails + Vue"})]))}}),Mf=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Ef=Mf(Cf,[["__scopeId","data-v-737f9f9b"]]);Sl(Ef).mount("#app"); diff --git a/frontend/dist/index.html b/frontend/dist/index.html index ef24a51..22e27b1 100644 --- a/frontend/dist/index.html +++ b/frontend/dist/index.html @@ -6,7 +6,7 @@ Wails + Vue + TS - + diff --git a/frontend/node_modules/.vite/deps/_metadata.json b/frontend/node_modules/.vite/deps/_metadata.json index b002e2e..47395de 100644 --- a/frontend/node_modules/.vite/deps/_metadata.json +++ b/frontend/node_modules/.vite/deps/_metadata.json @@ -1,19 +1,19 @@ { - "hash": "257bd7a5", - "configHash": "b9bde7bc", + "hash": "63964395", + "configHash": "d64a9a31", "lockfileHash": "21c581ed", - "browserHash": "d3139d3b", + "browserHash": "f28abe22", "optimized": { "@wailsio/runtime": { "src": "../../@wailsio/runtime/src/index.js", "file": "@wailsio_runtime.js", - "fileHash": "aba6d6fb", + "fileHash": "b57ae746", "needsInterop": false }, "vue": { "src": "../../vue/dist/vue.runtime.esm-bundler.js", "file": "vue.js", - "fileHash": "cec76e90", + "fileHash": "616b6ec4", "needsInterop": false } }, diff --git a/frontend/node_modules/.vite/deps_temp_e0499671/@wailsio_runtime.js b/frontend/node_modules/.vite/deps_temp_e0499671/@wailsio_runtime.js new file mode 100644 index 0000000..651a3d5 --- /dev/null +++ b/frontend/node_modules/.vite/deps_temp_e0499671/@wailsio_runtime.js @@ -0,0 +1,1620 @@ +import { + __export +} from "./chunk-PZ5AY32C.js"; + +// node_modules/nanoid/non-secure/index.js +var urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"; +var nanoid = (size = 21) => { + let id = ""; + let i = size | 0; + while (i--) { + id += urlAlphabet[Math.random() * 64 | 0]; + } + return id; +}; + +// node_modules/@wailsio/runtime/src/runtime.js +var runtimeURL = window.location.origin + "/wails/runtime"; +var objectNames = { + Call: 0, + Clipboard: 1, + Application: 2, + Events: 3, + ContextMenu: 4, + Dialog: 5, + Window: 6, + Screens: 7, + System: 8, + Browser: 9, + CancelCall: 10 +}; +var clientId = nanoid(); +function newRuntimeCallerWithID(object, windowName) { + return function(method, args = null) { + return runtimeCallWithID(object, method, windowName, args); + }; +} +function runtimeCallWithID(objectID, method, windowName, args) { + let url = new URL(runtimeURL); + url.searchParams.append("object", objectID); + url.searchParams.append("method", method); + let fetchOptions = { + headers: {} + }; + if (windowName) { + fetchOptions.headers["x-wails-window-name"] = windowName; + } + if (args) { + url.searchParams.append("args", JSON.stringify(args)); + } + fetchOptions.headers["x-wails-client-id"] = clientId; + return new Promise((resolve, reject) => { + fetch(url, fetchOptions).then((response) => { + if (response.ok) { + if (response.headers.get("Content-Type") && response.headers.get("Content-Type").indexOf("application/json") !== -1) { + return response.json(); + } else { + return response.text(); + } + } + reject(Error(response.statusText)); + }).then((data) => resolve(data)).catch((error) => reject(error)); + }); +} + +// node_modules/@wailsio/runtime/src/system.js +var system_exports = {}; +__export(system_exports, { + Capabilities: () => Capabilities, + Environment: () => Environment, + IsAMD64: () => IsAMD64, + IsARM: () => IsARM, + IsARM64: () => IsARM64, + IsDarkMode: () => IsDarkMode, + IsDebug: () => IsDebug, + IsLinux: () => IsLinux, + IsMac: () => IsMac, + IsWindows: () => IsWindows, + invoke: () => invoke +}); +var call = newRuntimeCallerWithID(objectNames.System, ""); +var systemIsDarkMode = 0; +var environment = 1; +var _invoke = (() => { + var _a, _b, _c; + try { + if ((_a = window == null ? void 0 : window.chrome) == null ? void 0 : _a.webview) { + return (msg) => window.chrome.webview.postMessage(msg); + } + if ((_c = (_b = window == null ? void 0 : window.webkit) == null ? void 0 : _b.messageHandlers) == null ? void 0 : _c.external) { + return (msg) => window.webkit.messageHandlers.external.postMessage(msg); + } + } catch (e) { + console.warn( + "\n%c⚠️ Browser Environment Detected %c\n\n%cOnly UI previews are available in the browser. For full functionality, please run the application in desktop mode.\nMore information at: https://v3alpha.wails.io/learn/build/#using-a-browser-for-development\n", + "background: #ffffff; color: #000000; font-weight: bold; padding: 4px 8px; border-radius: 4px; border: 2px solid #000000;", + "background: transparent;", + "color: #ffffff; font-style: italic; font-weight: bold;" + ); + } + return null; +})(); +function invoke(msg) { + if (!_invoke) return; + return _invoke(msg); +} +function IsDarkMode() { + return call(systemIsDarkMode); +} +function Capabilities() { + let response = fetch("/wails/capabilities"); + return response.json(); +} +function Environment() { + return call(environment); +} +function IsWindows() { + return window._wails.environment.OS === "windows"; +} +function IsLinux() { + return window._wails.environment.OS === "linux"; +} +function IsMac() { + return window._wails.environment.OS === "darwin"; +} +function IsAMD64() { + return window._wails.environment.Arch === "amd64"; +} +function IsARM() { + return window._wails.environment.Arch === "arm"; +} +function IsARM64() { + return window._wails.environment.Arch === "arm64"; +} +function IsDebug() { + return window._wails.environment.Debug === true; +} + +// node_modules/@wailsio/runtime/src/contextmenu.js +window.addEventListener("contextmenu", contextMenuHandler); +var call2 = newRuntimeCallerWithID(objectNames.ContextMenu, ""); +var ContextMenuOpen = 0; +function openContextMenu(id, x, y, data) { + void call2(ContextMenuOpen, { id, x, y, data }); +} +function contextMenuHandler(event) { + let element = event.target; + let customContextMenu = window.getComputedStyle(element).getPropertyValue("--custom-contextmenu"); + customContextMenu = customContextMenu ? customContextMenu.trim() : ""; + if (customContextMenu) { + event.preventDefault(); + let customContextMenuData = window.getComputedStyle(element).getPropertyValue("--custom-contextmenu-data"); + openContextMenu(customContextMenu, event.clientX, event.clientY, customContextMenuData); + return; + } + processDefaultContextMenu(event); +} +function processDefaultContextMenu(event) { + if (IsDebug()) { + return; + } + const element = event.target; + const computedStyle = window.getComputedStyle(element); + const defaultContextMenuAction = computedStyle.getPropertyValue("--default-contextmenu").trim(); + switch (defaultContextMenuAction) { + case "show": + return; + case "hide": + event.preventDefault(); + return; + default: + if (element.isContentEditable) { + return; + } + const selection = window.getSelection(); + const hasSelection = selection.toString().length > 0; + if (hasSelection) { + for (let i = 0; i < selection.rangeCount; i++) { + const range = selection.getRangeAt(i); + const rects = range.getClientRects(); + for (let j = 0; j < rects.length; j++) { + const rect = rects[j]; + if (document.elementFromPoint(rect.left, rect.top) === element) { + return; + } + } + } + } + if (element.tagName === "INPUT" || element.tagName === "TEXTAREA") { + if (hasSelection || !element.readOnly && !element.disabled) { + return; + } + } + event.preventDefault(); + } +} + +// node_modules/@wailsio/runtime/src/flags.js +var flags_exports = {}; +__export(flags_exports, { + GetFlag: () => GetFlag +}); +function GetFlag(keyString) { + try { + return window._wails.flags[keyString]; + } catch (e) { + throw new Error("Unable to retrieve flag '" + keyString + "': " + e); + } +} + +// node_modules/@wailsio/runtime/src/drag.js +var shouldDrag = false; +var resizable = false; +var resizeEdge = null; +var defaultCursor = "auto"; +window._wails = window._wails || {}; +window._wails.setResizable = function(value) { + resizable = value; +}; +window._wails.endDrag = function() { + document.body.style.cursor = "default"; + shouldDrag = false; +}; +window.addEventListener("mousedown", onMouseDown); +window.addEventListener("mousemove", onMouseMove); +window.addEventListener("mouseup", onMouseUp); +function dragTest(e) { + let val = window.getComputedStyle(e.target).getPropertyValue("--wails-draggable"); + let mousePressed = e.buttons !== void 0 ? e.buttons : e.which; + if (!val || val === "" || val.trim() !== "drag" || mousePressed === 0) { + return false; + } + return e.detail === 1; +} +function onMouseDown(e) { + if (resizeEdge) { + invoke("wails:resize:" + resizeEdge); + e.preventDefault(); + return; + } + if (dragTest(e)) { + if (e.offsetX > e.target.clientWidth || e.offsetY > e.target.clientHeight) { + return; + } + shouldDrag = true; + } else { + shouldDrag = false; + } +} +function onMouseUp() { + shouldDrag = false; +} +function setResize(cursor) { + document.documentElement.style.cursor = cursor || defaultCursor; + resizeEdge = cursor; +} +function onMouseMove(e) { + if (shouldDrag) { + shouldDrag = false; + let mousePressed = e.buttons !== void 0 ? e.buttons : e.which; + if (mousePressed > 0) { + invoke("wails:drag"); + return; + } + } + if (!resizable || !IsWindows()) { + return; + } + if (defaultCursor == null) { + defaultCursor = document.documentElement.style.cursor; + } + let resizeHandleHeight = GetFlag("system.resizeHandleHeight") || 5; + let resizeHandleWidth = GetFlag("system.resizeHandleWidth") || 5; + let cornerExtra = GetFlag("resizeCornerExtra") || 10; + let rightBorder = window.outerWidth - e.clientX < resizeHandleWidth; + let leftBorder = e.clientX < resizeHandleWidth; + let topBorder = e.clientY < resizeHandleHeight; + let bottomBorder = window.outerHeight - e.clientY < resizeHandleHeight; + let rightCorner = window.outerWidth - e.clientX < resizeHandleWidth + cornerExtra; + let leftCorner = e.clientX < resizeHandleWidth + cornerExtra; + let topCorner = e.clientY < resizeHandleHeight + cornerExtra; + let bottomCorner = window.outerHeight - e.clientY < resizeHandleHeight + cornerExtra; + if (!leftBorder && !rightBorder && !topBorder && !bottomBorder && resizeEdge !== void 0) { + setResize(); + } else if (rightCorner && bottomCorner) setResize("se-resize"); + else if (leftCorner && bottomCorner) setResize("sw-resize"); + else if (leftCorner && topCorner) setResize("nw-resize"); + else if (topCorner && rightCorner) setResize("ne-resize"); + else if (leftBorder) setResize("w-resize"); + else if (topBorder) setResize("n-resize"); + else if (bottomBorder) setResize("s-resize"); + else if (rightBorder) setResize("e-resize"); +} + +// node_modules/@wailsio/runtime/src/application.js +var application_exports = {}; +__export(application_exports, { + Hide: () => Hide, + Quit: () => Quit, + Show: () => Show +}); +var call3 = newRuntimeCallerWithID(objectNames.Application, ""); +var HideMethod = 0; +var ShowMethod = 1; +var QuitMethod = 2; +function Hide() { + return call3(HideMethod); +} +function Show() { + return call3(ShowMethod); +} +function Quit() { + return call3(QuitMethod); +} + +// node_modules/@wailsio/runtime/src/browser.js +var browser_exports = {}; +__export(browser_exports, { + OpenURL: () => OpenURL +}); +var call4 = newRuntimeCallerWithID(objectNames.Browser, ""); +var BrowserOpenURL = 0; +function OpenURL(url) { + return call4(BrowserOpenURL, { url }); +} + +// node_modules/@wailsio/runtime/src/calls.js +var calls_exports = {}; +__export(calls_exports, { + ByID: () => ByID, + ByName: () => ByName, + Call: () => Call, + Plugin: () => Plugin +}); +window._wails = window._wails || {}; +window._wails.callResultHandler = resultHandler; +window._wails.callErrorHandler = errorHandler; +var CallBinding = 0; +var call5 = newRuntimeCallerWithID(objectNames.Call, ""); +var cancelCall = newRuntimeCallerWithID(objectNames.CancelCall, ""); +var callResponses = /* @__PURE__ */ new Map(); +function generateID() { + let result; + do { + result = nanoid(); + } while (callResponses.has(result)); + return result; +} +function resultHandler(id, data, isJSON) { + const promiseHandler = getAndDeleteResponse(id); + if (promiseHandler) { + promiseHandler.resolve(isJSON ? JSON.parse(data) : data); + } +} +function errorHandler(id, message) { + const promiseHandler = getAndDeleteResponse(id); + if (promiseHandler) { + promiseHandler.reject(message); + } +} +function getAndDeleteResponse(id) { + const response = callResponses.get(id); + callResponses.delete(id); + return response; +} +function callBinding(type, options = {}) { + const id = generateID(); + const doCancel = () => { + return cancelCall(type, { "call-id": id }); + }; + let queuedCancel = false, callRunning = false; + let p = new Promise((resolve, reject) => { + options["call-id"] = id; + callResponses.set(id, { resolve, reject }); + call5(type, options).then((_) => { + callRunning = true; + if (queuedCancel) { + return doCancel(); + } + }).catch((error) => { + reject(error); + callResponses.delete(id); + }); + }); + p.cancel = () => { + if (callRunning) { + return doCancel(); + } else { + queuedCancel = true; + } + }; + return p; +} +function Call(options) { + return callBinding(CallBinding, options); +} +function ByName(methodName, ...args) { + return callBinding(CallBinding, { + methodName, + args + }); +} +function ByID(methodID, ...args) { + return callBinding(CallBinding, { + methodID, + args + }); +} +function Plugin(pluginName, methodName, ...args) { + return callBinding(CallBinding, { + packageName: "wails-plugins", + structName: pluginName, + methodName, + args + }); +} + +// node_modules/@wailsio/runtime/src/clipboard.js +var clipboard_exports = {}; +__export(clipboard_exports, { + SetText: () => SetText, + Text: () => Text +}); +var call6 = newRuntimeCallerWithID(objectNames.Clipboard, ""); +var ClipboardSetText = 0; +var ClipboardText = 1; +function SetText(text) { + return call6(ClipboardSetText, { text }); +} +function Text() { + return call6(ClipboardText); +} + +// node_modules/@wailsio/runtime/src/create.js +var create_exports = {}; +__export(create_exports, { + Any: () => Any, + Array: () => Array, + ByteSlice: () => ByteSlice, + Map: () => Map2, + Nullable: () => Nullable, + Struct: () => Struct +}); +function Any(source) { + return ( + /** @type {T} */ + source + ); +} +function ByteSlice(source) { + return ( + /** @type {any} */ + source == null ? "" : source + ); +} +function Array(element) { + if (element === Any) { + return (source) => source === null ? [] : source; + } + return (source) => { + if (source === null) { + return []; + } + for (let i = 0; i < source.length; i++) { + source[i] = element(source[i]); + } + return source; + }; +} +function Map2(key, value) { + if (value === Any) { + return (source) => source === null ? {} : source; + } + return (source) => { + if (source === null) { + return {}; + } + for (const key2 in source) { + source[key2] = value(source[key2]); + } + return source; + }; +} +function Nullable(element) { + if (element === Any) { + return Any; + } + return (source) => source === null ? null : element(source); +} +function Struct(createField) { + let allAny = true; + for (const name in createField) { + if (createField[name] !== Any) { + allAny = false; + break; + } + } + if (allAny) { + return Any; + } + return (source) => { + for (const name in createField) { + if (name in source) { + source[name] = createField[name](source[name]); + } + } + return source; + }; +} + +// node_modules/@wailsio/runtime/src/dialogs.js +var dialogs_exports = {}; +__export(dialogs_exports, { + Error: () => Error2, + Info: () => Info, + OpenFile: () => OpenFile, + Question: () => Question, + SaveFile: () => SaveFile, + Warning: () => Warning +}); +window._wails = window._wails || {}; +window._wails.dialogErrorCallback = dialogErrorCallback; +window._wails.dialogResultCallback = dialogResultCallback; +var DialogInfo = 0; +var DialogWarning = 1; +var DialogError = 2; +var DialogQuestion = 3; +var DialogOpenFile = 4; +var DialogSaveFile = 5; +var call7 = newRuntimeCallerWithID(objectNames.Dialog, ""); +var dialogResponses = /* @__PURE__ */ new Map(); +function generateID2() { + let result; + do { + result = nanoid(); + } while (dialogResponses.has(result)); + return result; +} +function dialog(type, options = {}) { + const id = generateID2(); + options["dialog-id"] = id; + return new Promise((resolve, reject) => { + dialogResponses.set(id, { resolve, reject }); + call7(type, options).catch((error) => { + reject(error); + dialogResponses.delete(id); + }); + }); +} +function dialogResultCallback(id, data, isJSON) { + let p = dialogResponses.get(id); + if (p) { + if (isJSON) { + p.resolve(JSON.parse(data)); + } else { + p.resolve(data); + } + dialogResponses.delete(id); + } +} +function dialogErrorCallback(id, message) { + let p = dialogResponses.get(id); + if (p) { + p.reject(message); + dialogResponses.delete(id); + } +} +var Info = (options) => dialog(DialogInfo, options); +var Warning = (options) => dialog(DialogWarning, options); +var Error2 = (options) => dialog(DialogError, options); +var Question = (options) => dialog(DialogQuestion, options); +var OpenFile = (options) => dialog(DialogOpenFile, options); +var SaveFile = (options) => dialog(DialogSaveFile, options); + +// node_modules/@wailsio/runtime/src/events.js +var events_exports = {}; +__export(events_exports, { + Emit: () => Emit, + Off: () => Off, + OffAll: () => OffAll, + On: () => On, + OnMultiple: () => OnMultiple, + Once: () => Once, + Types: () => Types, + WailsEvent: () => WailsEvent, + setup: () => setup +}); + +// node_modules/@wailsio/runtime/src/event_types.js +var EventTypes = { + Windows: { + SystemThemeChanged: "windows:SystemThemeChanged", + APMPowerStatusChange: "windows:APMPowerStatusChange", + APMSuspend: "windows:APMSuspend", + APMResumeAutomatic: "windows:APMResumeAutomatic", + APMResumeSuspend: "windows:APMResumeSuspend", + APMPowerSettingChange: "windows:APMPowerSettingChange", + ApplicationStarted: "windows:ApplicationStarted", + WebViewNavigationCompleted: "windows:WebViewNavigationCompleted", + WindowInactive: "windows:WindowInactive", + WindowActive: "windows:WindowActive", + WindowClickActive: "windows:WindowClickActive", + WindowMaximise: "windows:WindowMaximise", + WindowUnMaximise: "windows:WindowUnMaximise", + WindowFullscreen: "windows:WindowFullscreen", + WindowUnFullscreen: "windows:WindowUnFullscreen", + WindowRestore: "windows:WindowRestore", + WindowMinimise: "windows:WindowMinimise", + WindowUnMinimise: "windows:WindowUnMinimise", + WindowClosing: "windows:WindowClosing", + WindowSetFocus: "windows:WindowSetFocus", + WindowKillFocus: "windows:WindowKillFocus", + WindowDragDrop: "windows:WindowDragDrop", + WindowDragEnter: "windows:WindowDragEnter", + WindowDragLeave: "windows:WindowDragLeave", + WindowDragOver: "windows:WindowDragOver", + WindowDidMove: "windows:WindowDidMove", + WindowDidResize: "windows:WindowDidResize", + WindowShow: "windows:WindowShow", + WindowHide: "windows:WindowHide", + WindowStartMove: "windows:WindowStartMove", + WindowEndMove: "windows:WindowEndMove", + WindowStartResize: "windows:WindowStartResize", + WindowEndResize: "windows:WindowEndResize", + WindowKeyDown: "windows:WindowKeyDown", + WindowKeyUp: "windows:WindowKeyUp", + WindowZOrderChanged: "windows:WindowZOrderChanged", + WindowPaint: "windows:WindowPaint", + WindowBackgroundErase: "windows:WindowBackgroundErase", + WindowNonClientHit: "windows:WindowNonClientHit", + WindowNonClientMouseDown: "windows:WindowNonClientMouseDown", + WindowNonClientMouseUp: "windows:WindowNonClientMouseUp", + WindowNonClientMouseMove: "windows:WindowNonClientMouseMove", + WindowNonClientMouseLeave: "windows:WindowNonClientMouseLeave" + }, + Mac: { + ApplicationDidBecomeActive: "mac:ApplicationDidBecomeActive", + ApplicationDidChangeBackingProperties: "mac:ApplicationDidChangeBackingProperties", + ApplicationDidChangeEffectiveAppearance: "mac:ApplicationDidChangeEffectiveAppearance", + ApplicationDidChangeIcon: "mac:ApplicationDidChangeIcon", + ApplicationDidChangeOcclusionState: "mac:ApplicationDidChangeOcclusionState", + ApplicationDidChangeScreenParameters: "mac:ApplicationDidChangeScreenParameters", + ApplicationDidChangeStatusBarFrame: "mac:ApplicationDidChangeStatusBarFrame", + ApplicationDidChangeStatusBarOrientation: "mac:ApplicationDidChangeStatusBarOrientation", + ApplicationDidFinishLaunching: "mac:ApplicationDidFinishLaunching", + ApplicationDidHide: "mac:ApplicationDidHide", + ApplicationDidResignActiveNotification: "mac:ApplicationDidResignActiveNotification", + ApplicationDidUnhide: "mac:ApplicationDidUnhide", + ApplicationDidUpdate: "mac:ApplicationDidUpdate", + ApplicationWillBecomeActive: "mac:ApplicationWillBecomeActive", + ApplicationWillFinishLaunching: "mac:ApplicationWillFinishLaunching", + ApplicationWillHide: "mac:ApplicationWillHide", + ApplicationWillResignActive: "mac:ApplicationWillResignActive", + ApplicationWillTerminate: "mac:ApplicationWillTerminate", + ApplicationWillUnhide: "mac:ApplicationWillUnhide", + ApplicationWillUpdate: "mac:ApplicationWillUpdate", + ApplicationDidChangeTheme: "mac:ApplicationDidChangeTheme!", + ApplicationShouldHandleReopen: "mac:ApplicationShouldHandleReopen!", + WindowDidBecomeKey: "mac:WindowDidBecomeKey", + WindowDidBecomeMain: "mac:WindowDidBecomeMain", + WindowDidBeginSheet: "mac:WindowDidBeginSheet", + WindowDidChangeAlpha: "mac:WindowDidChangeAlpha", + WindowDidChangeBackingLocation: "mac:WindowDidChangeBackingLocation", + WindowDidChangeBackingProperties: "mac:WindowDidChangeBackingProperties", + WindowDidChangeCollectionBehavior: "mac:WindowDidChangeCollectionBehavior", + WindowDidChangeEffectiveAppearance: "mac:WindowDidChangeEffectiveAppearance", + WindowDidChangeOcclusionState: "mac:WindowDidChangeOcclusionState", + WindowDidChangeOrderingMode: "mac:WindowDidChangeOrderingMode", + WindowDidChangeScreen: "mac:WindowDidChangeScreen", + WindowDidChangeScreenParameters: "mac:WindowDidChangeScreenParameters", + WindowDidChangeScreenProfile: "mac:WindowDidChangeScreenProfile", + WindowDidChangeScreenSpace: "mac:WindowDidChangeScreenSpace", + WindowDidChangeScreenSpaceProperties: "mac:WindowDidChangeScreenSpaceProperties", + WindowDidChangeSharingType: "mac:WindowDidChangeSharingType", + WindowDidChangeSpace: "mac:WindowDidChangeSpace", + WindowDidChangeSpaceOrderingMode: "mac:WindowDidChangeSpaceOrderingMode", + WindowDidChangeTitle: "mac:WindowDidChangeTitle", + WindowDidChangeToolbar: "mac:WindowDidChangeToolbar", + WindowDidDeminiaturize: "mac:WindowDidDeminiaturize", + WindowDidEndSheet: "mac:WindowDidEndSheet", + WindowDidEnterFullScreen: "mac:WindowDidEnterFullScreen", + WindowMaximise: "mac:WindowMaximise", + WindowUnMaximise: "mac:WindowUnMaximise", + WindowDidZoom: "mac:WindowDidZoom!", + WindowZoomIn: "mac:WindowZoomIn!", + WindowZoomOut: "mac:WindowZoomOut!", + WindowZoomReset: "mac:WindowZoomReset!", + WindowDidEnterVersionBrowser: "mac:WindowDidEnterVersionBrowser", + WindowDidExitFullScreen: "mac:WindowDidExitFullScreen", + WindowDidExitVersionBrowser: "mac:WindowDidExitVersionBrowser", + WindowDidExpose: "mac:WindowDidExpose", + WindowDidFocus: "mac:WindowDidFocus", + WindowDidMiniaturize: "mac:WindowDidMiniaturize", + WindowDidMove: "mac:WindowDidMove", + WindowDidOrderOffScreen: "mac:WindowDidOrderOffScreen", + WindowDidOrderOnScreen: "mac:WindowDidOrderOnScreen", + WindowDidResignKey: "mac:WindowDidResignKey", + WindowDidResignMain: "mac:WindowDidResignMain", + WindowDidResize: "mac:WindowDidResize", + WindowDidUpdate: "mac:WindowDidUpdate", + WindowDidUpdateAlpha: "mac:WindowDidUpdateAlpha", + WindowDidUpdateCollectionBehavior: "mac:WindowDidUpdateCollectionBehavior", + WindowDidUpdateCollectionProperties: "mac:WindowDidUpdateCollectionProperties", + WindowDidUpdateShadow: "mac:WindowDidUpdateShadow", + WindowDidUpdateTitle: "mac:WindowDidUpdateTitle", + WindowDidUpdateToolbar: "mac:WindowDidUpdateToolbar", + WindowShouldClose: "mac:WindowShouldClose!", + WindowWillBecomeKey: "mac:WindowWillBecomeKey", + WindowWillBecomeMain: "mac:WindowWillBecomeMain", + WindowWillBeginSheet: "mac:WindowWillBeginSheet", + WindowWillChangeOrderingMode: "mac:WindowWillChangeOrderingMode", + WindowWillClose: "mac:WindowWillClose", + WindowWillDeminiaturize: "mac:WindowWillDeminiaturize", + WindowWillEnterFullScreen: "mac:WindowWillEnterFullScreen", + WindowWillEnterVersionBrowser: "mac:WindowWillEnterVersionBrowser", + WindowWillExitFullScreen: "mac:WindowWillExitFullScreen", + WindowWillExitVersionBrowser: "mac:WindowWillExitVersionBrowser", + WindowWillFocus: "mac:WindowWillFocus", + WindowWillMiniaturize: "mac:WindowWillMiniaturize", + WindowWillMove: "mac:WindowWillMove", + WindowWillOrderOffScreen: "mac:WindowWillOrderOffScreen", + WindowWillOrderOnScreen: "mac:WindowWillOrderOnScreen", + WindowWillResignMain: "mac:WindowWillResignMain", + WindowWillResize: "mac:WindowWillResize", + WindowWillUnfocus: "mac:WindowWillUnfocus", + WindowWillUpdate: "mac:WindowWillUpdate", + WindowWillUpdateAlpha: "mac:WindowWillUpdateAlpha", + WindowWillUpdateCollectionBehavior: "mac:WindowWillUpdateCollectionBehavior", + WindowWillUpdateCollectionProperties: "mac:WindowWillUpdateCollectionProperties", + WindowWillUpdateShadow: "mac:WindowWillUpdateShadow", + WindowWillUpdateTitle: "mac:WindowWillUpdateTitle", + WindowWillUpdateToolbar: "mac:WindowWillUpdateToolbar", + WindowWillUpdateVisibility: "mac:WindowWillUpdateVisibility", + WindowWillUseStandardFrame: "mac:WindowWillUseStandardFrame", + MenuWillOpen: "mac:MenuWillOpen", + MenuDidOpen: "mac:MenuDidOpen", + MenuDidClose: "mac:MenuDidClose", + MenuWillSendAction: "mac:MenuWillSendAction", + MenuDidSendAction: "mac:MenuDidSendAction", + MenuWillHighlightItem: "mac:MenuWillHighlightItem", + MenuDidHighlightItem: "mac:MenuDidHighlightItem", + MenuWillDisplayItem: "mac:MenuWillDisplayItem", + MenuDidDisplayItem: "mac:MenuDidDisplayItem", + MenuWillAddItem: "mac:MenuWillAddItem", + MenuDidAddItem: "mac:MenuDidAddItem", + MenuWillRemoveItem: "mac:MenuWillRemoveItem", + MenuDidRemoveItem: "mac:MenuDidRemoveItem", + MenuWillBeginTracking: "mac:MenuWillBeginTracking", + MenuDidBeginTracking: "mac:MenuDidBeginTracking", + MenuWillEndTracking: "mac:MenuWillEndTracking", + MenuDidEndTracking: "mac:MenuDidEndTracking", + MenuWillUpdate: "mac:MenuWillUpdate", + MenuDidUpdate: "mac:MenuDidUpdate", + MenuWillPopUp: "mac:MenuWillPopUp", + MenuDidPopUp: "mac:MenuDidPopUp", + MenuWillSendActionToItem: "mac:MenuWillSendActionToItem", + MenuDidSendActionToItem: "mac:MenuDidSendActionToItem", + WebViewDidStartProvisionalNavigation: "mac:WebViewDidStartProvisionalNavigation", + WebViewDidReceiveServerRedirectForProvisionalNavigation: "mac:WebViewDidReceiveServerRedirectForProvisionalNavigation", + WebViewDidFinishNavigation: "mac:WebViewDidFinishNavigation", + WebViewDidCommitNavigation: "mac:WebViewDidCommitNavigation", + WindowFileDraggingEntered: "mac:WindowFileDraggingEntered", + WindowFileDraggingPerformed: "mac:WindowFileDraggingPerformed", + WindowFileDraggingExited: "mac:WindowFileDraggingExited", + WindowShow: "mac:WindowShow", + WindowHide: "mac:WindowHide" + }, + Linux: { + SystemThemeChanged: "linux:SystemThemeChanged", + WindowLoadChanged: "linux:WindowLoadChanged", + WindowDeleteEvent: "linux:WindowDeleteEvent", + WindowDidMove: "linux:WindowDidMove", + WindowDidResize: "linux:WindowDidResize", + WindowFocusIn: "linux:WindowFocusIn", + WindowFocusOut: "linux:WindowFocusOut", + ApplicationStartup: "linux:ApplicationStartup" + }, + Common: { + ApplicationStarted: "common:ApplicationStarted", + WindowMaximise: "common:WindowMaximise", + WindowUnMaximise: "common:WindowUnMaximise", + WindowFullscreen: "common:WindowFullscreen", + WindowUnFullscreen: "common:WindowUnFullscreen", + WindowRestore: "common:WindowRestore", + WindowMinimise: "common:WindowMinimise", + WindowUnMinimise: "common:WindowUnMinimise", + WindowClosing: "common:WindowClosing", + WindowZoom: "common:WindowZoom", + WindowZoomIn: "common:WindowZoomIn", + WindowZoomOut: "common:WindowZoomOut", + WindowZoomReset: "common:WindowZoomReset", + WindowFocus: "common:WindowFocus", + WindowLostFocus: "common:WindowLostFocus", + WindowShow: "common:WindowShow", + WindowHide: "common:WindowHide", + WindowDPIChanged: "common:WindowDPIChanged", + WindowFilesDropped: "common:WindowFilesDropped", + WindowRuntimeReady: "common:WindowRuntimeReady", + ThemeChanged: "common:ThemeChanged", + WindowDidMove: "common:WindowDidMove", + WindowDidResize: "common:WindowDidResize", + ApplicationOpenedWithFile: "common:ApplicationOpenedWithFile" + } +}; + +// node_modules/@wailsio/runtime/src/events.js +var Types = EventTypes; +window._wails = window._wails || {}; +window._wails.dispatchWailsEvent = dispatchWailsEvent; +var call8 = newRuntimeCallerWithID(objectNames.Events, ""); +var EmitMethod = 0; +var eventListeners = /* @__PURE__ */ new Map(); +var Listener = class { + constructor(eventName, callback, maxCallbacks) { + this.eventName = eventName; + this.maxCallbacks = maxCallbacks || -1; + this.Callback = (data) => { + callback(data); + if (this.maxCallbacks === -1) return false; + this.maxCallbacks -= 1; + return this.maxCallbacks === 0; + }; + } +}; +var WailsEvent = class { + constructor(name, data = null) { + this.name = name; + this.data = data; + } +}; +function setup() { +} +function dispatchWailsEvent(event) { + let listeners = eventListeners.get(event.name); + if (listeners) { + let toRemove = listeners.filter((listener) => { + let remove = listener.Callback(event); + if (remove) return true; + }); + if (toRemove.length > 0) { + listeners = listeners.filter((l) => !toRemove.includes(l)); + if (listeners.length === 0) eventListeners.delete(event.name); + else eventListeners.set(event.name, listeners); + } + } +} +function OnMultiple(eventName, callback, maxCallbacks) { + let listeners = eventListeners.get(eventName) || []; + const thisListener = new Listener(eventName, callback, maxCallbacks); + listeners.push(thisListener); + eventListeners.set(eventName, listeners); + return () => listenerOff(thisListener); +} +function On(eventName, callback) { + return OnMultiple(eventName, callback, -1); +} +function Once(eventName, callback) { + return OnMultiple(eventName, callback, 1); +} +function listenerOff(listener) { + const eventName = listener.eventName; + let listeners = eventListeners.get(eventName).filter((l) => l !== listener); + if (listeners.length === 0) eventListeners.delete(eventName); + else eventListeners.set(eventName, listeners); +} +function Off(eventName, ...additionalEventNames) { + let eventsToRemove = [eventName, ...additionalEventNames]; + eventsToRemove.forEach((eventName2) => eventListeners.delete(eventName2)); +} +function OffAll() { + eventListeners.clear(); +} +function Emit(event) { + return call8(EmitMethod, event); +} + +// node_modules/@wailsio/runtime/src/screens.js +var screens_exports = {}; +__export(screens_exports, { + GetAll: () => GetAll, + GetCurrent: () => GetCurrent, + GetPrimary: () => GetPrimary +}); +var call9 = newRuntimeCallerWithID(objectNames.Screens, ""); +var getAll = 0; +var getPrimary = 1; +var getCurrent = 2; +function GetAll() { + return call9(getAll); +} +function GetPrimary() { + return call9(getPrimary); +} +function GetCurrent() { + return call9(getCurrent); +} + +// node_modules/@wailsio/runtime/src/window.js +var PositionMethod = 0; +var CenterMethod = 1; +var CloseMethod = 2; +var DisableSizeConstraintsMethod = 3; +var EnableSizeConstraintsMethod = 4; +var FocusMethod = 5; +var ForceReloadMethod = 6; +var FullscreenMethod = 7; +var GetScreenMethod = 8; +var GetZoomMethod = 9; +var HeightMethod = 10; +var HideMethod2 = 11; +var IsFocusedMethod = 12; +var IsFullscreenMethod = 13; +var IsMaximisedMethod = 14; +var IsMinimisedMethod = 15; +var MaximiseMethod = 16; +var MinimiseMethod = 17; +var NameMethod = 18; +var OpenDevToolsMethod = 19; +var RelativePositionMethod = 20; +var ReloadMethod = 21; +var ResizableMethod = 22; +var RestoreMethod = 23; +var SetPositionMethod = 24; +var SetAlwaysOnTopMethod = 25; +var SetBackgroundColourMethod = 26; +var SetFramelessMethod = 27; +var SetFullscreenButtonEnabledMethod = 28; +var SetMaxSizeMethod = 29; +var SetMinSizeMethod = 30; +var SetRelativePositionMethod = 31; +var SetResizableMethod = 32; +var SetSizeMethod = 33; +var SetTitleMethod = 34; +var SetZoomMethod = 35; +var ShowMethod2 = 36; +var SizeMethod = 37; +var ToggleFullscreenMethod = 38; +var ToggleMaximiseMethod = 39; +var UnFullscreenMethod = 40; +var UnMaximiseMethod = 41; +var UnMinimiseMethod = 42; +var WidthMethod = 43; +var ZoomMethod = 44; +var ZoomInMethod = 45; +var ZoomOutMethod = 46; +var ZoomResetMethod = 47; +var caller = Symbol(); +var Window = class _Window { + /** + * Initialises a window object with the specified name. + * + * @private + * @param {string} name - The name of the target window. + */ + constructor(name = "") { + this[caller] = newRuntimeCallerWithID(objectNames.Window, name); + for (const method of Object.getOwnPropertyNames(_Window.prototype)) { + if (method !== "constructor" && typeof this[method] === "function") { + this[method] = this[method].bind(this); + } + } + } + /** + * Gets the specified window. + * + * @public + * @param {string} name - The name of the window to get. + * @return {Window} - The corresponding window object. + */ + Get(name) { + return new _Window(name); + } + /** + * Returns the absolute position of the window. + * + * @public + * @return {Promise} - The current absolute position of the window. + */ + Position() { + return this[caller](PositionMethod); + } + /** + * Centers the window on the screen. + * + * @public + * @return {Promise} + */ + Center() { + return this[caller](CenterMethod); + } + /** + * Closes the window. + * + * @public + * @return {Promise} + */ + Close() { + return this[caller](CloseMethod); + } + /** + * Disables min/max size constraints. + * + * @public + * @return {Promise} + */ + DisableSizeConstraints() { + return this[caller](DisableSizeConstraintsMethod); + } + /** + * Enables min/max size constraints. + * + * @public + * @return {Promise} + */ + EnableSizeConstraints() { + return this[caller](EnableSizeConstraintsMethod); + } + /** + * Focuses the window. + * + * @public + * @return {Promise} + */ + Focus() { + return this[caller](FocusMethod); + } + /** + * Forces the window to reload the page assets. + * + * @public + * @return {Promise} + */ + ForceReload() { + return this[caller](ForceReloadMethod); + } + /** + * Doc. + * + * @public + * @return {Promise} + */ + Fullscreen() { + return this[caller](FullscreenMethod); + } + /** + * Returns the screen that the window is on. + * + * @public + * @return {Promise} - The screen the window is currently on + */ + GetScreen() { + return this[caller](GetScreenMethod); + } + /** + * Returns the current zoom level of the window. + * + * @public + * @return {Promise} - The current zoom level + */ + GetZoom() { + return this[caller](GetZoomMethod); + } + /** + * Returns the height of the window. + * + * @public + * @return {Promise} - The current height of the window + */ + Height() { + return this[caller](HeightMethod); + } + /** + * Hides the window. + * + * @public + * @return {Promise} + */ + Hide() { + return this[caller](HideMethod2); + } + /** + * Returns true if the window is focused. + * + * @public + * @return {Promise} - Whether the window is currently focused + */ + IsFocused() { + return this[caller](IsFocusedMethod); + } + /** + * Returns true if the window is fullscreen. + * + * @public + * @return {Promise} - Whether the window is currently fullscreen + */ + IsFullscreen() { + return this[caller](IsFullscreenMethod); + } + /** + * Returns true if the window is maximised. + * + * @public + * @return {Promise} - Whether the window is currently maximised + */ + IsMaximised() { + return this[caller](IsMaximisedMethod); + } + /** + * Returns true if the window is minimised. + * + * @public + * @return {Promise} - Whether the window is currently minimised + */ + IsMinimised() { + return this[caller](IsMinimisedMethod); + } + /** + * Maximises the window. + * + * @public + * @return {Promise} + */ + Maximise() { + return this[caller](MaximiseMethod); + } + /** + * Minimises the window. + * + * @public + * @return {Promise} + */ + Minimise() { + return this[caller](MinimiseMethod); + } + /** + * Returns the name of the window. + * + * @public + * @return {Promise} - The name of the window + */ + Name() { + return this[caller](NameMethod); + } + /** + * Opens the development tools pane. + * + * @public + * @return {Promise} + */ + OpenDevTools() { + return this[caller](OpenDevToolsMethod); + } + /** + * Returns the relative position of the window to the screen. + * + * @public + * @return {Promise} - The current relative position of the window + */ + RelativePosition() { + return this[caller](RelativePositionMethod); + } + /** + * Reloads the page assets. + * + * @public + * @return {Promise} + */ + Reload() { + return this[caller](ReloadMethod); + } + /** + * Returns true if the window is resizable. + * + * @public + * @return {Promise} - Whether the window is currently resizable + */ + Resizable() { + return this[caller](ResizableMethod); + } + /** + * Restores the window to its previous state if it was previously minimised, maximised or fullscreen. + * + * @public + * @return {Promise} + */ + Restore() { + return this[caller](RestoreMethod); + } + /** + * Sets the absolute position of the window. + * + * @public + * @param {number} x - The desired horizontal absolute position of the window + * @param {number} y - The desired vertical absolute position of the window + * @return {Promise} + */ + SetPosition(x, y) { + return this[caller](SetPositionMethod, { x, y }); + } + /** + * Sets the window to be always on top. + * + * @public + * @param {boolean} alwaysOnTop - Whether the window should stay on top + * @return {Promise} + */ + SetAlwaysOnTop(alwaysOnTop) { + return this[caller](SetAlwaysOnTopMethod, { alwaysOnTop }); + } + /** + * Sets the background colour of the window. + * + * @public + * @param {number} r - The desired red component of the window background + * @param {number} g - The desired green component of the window background + * @param {number} b - The desired blue component of the window background + * @param {number} a - The desired alpha component of the window background + * @return {Promise} + */ + SetBackgroundColour(r, g, b, a) { + return this[caller](SetBackgroundColourMethod, { r, g, b, a }); + } + /** + * Removes the window frame and title bar. + * + * @public + * @param {boolean} frameless - Whether the window should be frameless + * @return {Promise} + */ + SetFrameless(frameless) { + return this[caller](SetFramelessMethod, { frameless }); + } + /** + * Disables the system fullscreen button. + * + * @public + * @param {boolean} enabled - Whether the fullscreen button should be enabled + * @return {Promise} + */ + SetFullscreenButtonEnabled(enabled) { + return this[caller](SetFullscreenButtonEnabledMethod, { enabled }); + } + /** + * Sets the maximum size of the window. + * + * @public + * @param {number} width - The desired maximum width of the window + * @param {number} height - The desired maximum height of the window + * @return {Promise} + */ + SetMaxSize(width, height) { + return this[caller](SetMaxSizeMethod, { width, height }); + } + /** + * Sets the minimum size of the window. + * + * @public + * @param {number} width - The desired minimum width of the window + * @param {number} height - The desired minimum height of the window + * @return {Promise} + */ + SetMinSize(width, height) { + return this[caller](SetMinSizeMethod, { width, height }); + } + /** + * Sets the relative position of the window to the screen. + * + * @public + * @param {number} x - The desired horizontal relative position of the window + * @param {number} y - The desired vertical relative position of the window + * @return {Promise} + */ + SetRelativePosition(x, y) { + return this[caller](SetRelativePositionMethod, { x, y }); + } + /** + * Sets whether the window is resizable. + * + * @public + * @param {boolean} resizable - Whether the window should be resizable + * @return {Promise} + */ + SetResizable(resizable2) { + return this[caller](SetResizableMethod, { resizable: resizable2 }); + } + /** + * Sets the size of the window. + * + * @public + * @param {number} width - The desired width of the window + * @param {number} height - The desired height of the window + * @return {Promise} + */ + SetSize(width, height) { + return this[caller](SetSizeMethod, { width, height }); + } + /** + * Sets the title of the window. + * + * @public + * @param {string} title - The desired title of the window + * @return {Promise} + */ + SetTitle(title) { + return this[caller](SetTitleMethod, { title }); + } + /** + * Sets the zoom level of the window. + * + * @public + * @param {number} zoom - The desired zoom level + * @return {Promise} + */ + SetZoom(zoom) { + return this[caller](SetZoomMethod, { zoom }); + } + /** + * Shows the window. + * + * @public + * @return {Promise} + */ + Show() { + return this[caller](ShowMethod2); + } + /** + * Returns the size of the window. + * + * @public + * @return {Promise} - The current size of the window + */ + Size() { + return this[caller](SizeMethod); + } + /** + * Toggles the window between fullscreen and normal. + * + * @public + * @return {Promise} + */ + ToggleFullscreen() { + return this[caller](ToggleFullscreenMethod); + } + /** + * Toggles the window between maximised and normal. + * + * @public + * @return {Promise} + */ + ToggleMaximise() { + return this[caller](ToggleMaximiseMethod); + } + /** + * Un-fullscreens the window. + * + * @public + * @return {Promise} + */ + UnFullscreen() { + return this[caller](UnFullscreenMethod); + } + /** + * Un-maximises the window. + * + * @public + * @return {Promise} + */ + UnMaximise() { + return this[caller](UnMaximiseMethod); + } + /** + * Un-minimises the window. + * + * @public + * @return {Promise} + */ + UnMinimise() { + return this[caller](UnMinimiseMethod); + } + /** + * Returns the width of the window. + * + * @public + * @return {Promise} - The current width of the window + */ + Width() { + return this[caller](WidthMethod); + } + /** + * Zooms the window. + * + * @public + * @return {Promise} + */ + Zoom() { + return this[caller](ZoomMethod); + } + /** + * Increases the zoom level of the webview content. + * + * @public + * @return {Promise} + */ + ZoomIn() { + return this[caller](ZoomInMethod); + } + /** + * Decreases the zoom level of the webview content. + * + * @public + * @return {Promise} + */ + ZoomOut() { + return this[caller](ZoomOutMethod); + } + /** + * Resets the zoom level of the webview content. + * + * @public + * @return {Promise} + */ + ZoomReset() { + return this[caller](ZoomResetMethod); + } +}; +var thisWindow = new Window(""); +var window_default = thisWindow; + +// node_modules/@wailsio/runtime/src/wml.js +var wml_exports = {}; +__export(wml_exports, { + Enable: () => Enable, + Reload: () => Reload +}); + +// node_modules/@wailsio/runtime/src/utils.js +function canAbortListeners() { + if (!EventTarget || !AbortSignal || !AbortController) + return false; + let result = true; + const target = new EventTarget(); + const controller2 = new AbortController(); + target.addEventListener("test", () => { + result = false; + }, { signal: controller2.signal }); + controller2.abort(); + target.dispatchEvent(new CustomEvent("test")); + return result; +} +var isReady = false; +document.addEventListener("DOMContentLoaded", () => isReady = true); +function whenReady(callback) { + if (isReady || document.readyState === "complete") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); + } +} + +// node_modules/@wailsio/runtime/src/wml.js +function sendEvent(eventName, data = null) { + Emit(new WailsEvent(eventName, data)); +} +function callWindowMethod(windowName, methodName) { + const targetWindow = window_default.Get(windowName); + const method = targetWindow[methodName]; + if (typeof method !== "function") { + console.error(`Window method '${methodName}' not found`); + return; + } + try { + method.call(targetWindow); + } catch (e) { + console.error(`Error calling window method '${methodName}': `, e); + } +} +function onWMLTriggered(ev) { + const element = ev.currentTarget; + function runEffect(choice = "Yes") { + if (choice !== "Yes") + return; + const eventType = element.getAttribute("wml-event"); + const targetWindow = element.getAttribute("wml-target-window") || ""; + const windowMethod = element.getAttribute("wml-window"); + const url = element.getAttribute("wml-openurl"); + if (eventType !== null) + sendEvent(eventType); + if (windowMethod !== null) + callWindowMethod(targetWindow, windowMethod); + if (url !== null) + void OpenURL(url); + } + const confirm = element.getAttribute("wml-confirm"); + if (confirm) { + Question({ + Title: "Confirm", + Message: confirm, + Detached: false, + Buttons: [ + { Label: "Yes" }, + { Label: "No", IsDefault: true } + ] + }).then(runEffect); + } else { + runEffect(); + } +} +var controller = Symbol(); +var AbortControllerRegistry = class { + constructor() { + this[controller] = new AbortController(); + } + /** + * Returns an options object for addEventListener that ties the listener + * to the AbortSignal from the current AbortController. + * + * @param {HTMLElement} element An HTML element + * @param {string[]} triggers The list of active WML trigger events for the specified elements + * @returns {AddEventListenerOptions} + */ + set(element, triggers) { + return { signal: this[controller].signal }; + } + /** + * Removes all registered event listeners. + * + * @returns {void} + */ + reset() { + this[controller].abort(); + this[controller] = new AbortController(); + } +}; +var triggerMap = Symbol(); +var elementCount = Symbol(); +var WeakMapRegistry = class { + constructor() { + this[triggerMap] = /* @__PURE__ */ new WeakMap(); + this[elementCount] = 0; + } + /** + * Sets the active triggers for the specified element. + * + * @param {HTMLElement} element An HTML element + * @param {string[]} triggers The list of active WML trigger events for the specified element + * @returns {AddEventListenerOptions} + */ + set(element, triggers) { + this[elementCount] += !this[triggerMap].has(element); + this[triggerMap].set(element, triggers); + return {}; + } + /** + * Removes all registered event listeners. + * + * @returns {void} + */ + reset() { + if (this[elementCount] <= 0) + return; + for (const element of document.body.querySelectorAll("*")) { + if (this[elementCount] <= 0) + break; + const triggers = this[triggerMap].get(element); + this[elementCount] -= typeof triggers !== "undefined"; + for (const trigger of triggers || []) + element.removeEventListener(trigger, onWMLTriggered); + } + this[triggerMap] = /* @__PURE__ */ new WeakMap(); + this[elementCount] = 0; + } +}; +var triggerRegistry = canAbortListeners() ? new AbortControllerRegistry() : new WeakMapRegistry(); +function addWMLListeners(element) { + const triggerRegExp = /\S+/g; + const triggerAttr = element.getAttribute("wml-trigger") || "click"; + const triggers = []; + let match; + while ((match = triggerRegExp.exec(triggerAttr)) !== null) + triggers.push(match[0]); + const options = triggerRegistry.set(element, triggers); + for (const trigger of triggers) + element.addEventListener(trigger, onWMLTriggered, options); +} +function Enable() { + whenReady(Reload); +} +function Reload() { + triggerRegistry.reset(); + document.body.querySelectorAll("[wml-event], [wml-window], [wml-openurl]").forEach(addWMLListeners); +} + +// node_modules/@wailsio/runtime/src/index.js +window._wails = window._wails || {}; +var initialised = false; +function init() { + window._wails.invoke = invoke; + invoke("wails:runtime:ready"); + initialised = true; +} +window.addEventListener("load", () => { + if (!initialised) { + init(); + } +}); +export { + application_exports as Application, + browser_exports as Browser, + calls_exports as Call, + clipboard_exports as Clipboard, + create_exports as Create, + dialogs_exports as Dialogs, + events_exports as Events, + flags_exports as Flags, + screens_exports as Screens, + system_exports as System, + wml_exports as WML, + window_default as Window, + init +}; +//# sourceMappingURL=@wailsio_runtime.js.map diff --git a/frontend/node_modules/.vite/deps_temp_e0499671/@wailsio_runtime.js.map b/frontend/node_modules/.vite/deps_temp_e0499671/@wailsio_runtime.js.map new file mode 100644 index 0000000..d39b39b --- /dev/null +++ b/frontend/node_modules/.vite/deps_temp_e0499671/@wailsio_runtime.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../nanoid/non-secure/index.js", "../../@wailsio/runtime/src/runtime.js", "../../@wailsio/runtime/src/system.js", "../../@wailsio/runtime/src/contextmenu.js", "../../@wailsio/runtime/src/flags.js", "../../@wailsio/runtime/src/drag.js", "../../@wailsio/runtime/src/application.js", "../../@wailsio/runtime/src/browser.js", "../../@wailsio/runtime/src/calls.js", "../../@wailsio/runtime/src/clipboard.js", "../../@wailsio/runtime/src/create.js", "../../@wailsio/runtime/src/dialogs.js", "../../@wailsio/runtime/src/events.js", "../../@wailsio/runtime/src/event_types.js", "../../@wailsio/runtime/src/screens.js", "../../@wailsio/runtime/src/window.js", "../../@wailsio/runtime/src/wml.js", "../../@wailsio/runtime/src/utils.js", "../../@wailsio/runtime/src/index.js"], + "sourcesContent": ["let urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\nexport let customAlphabet = (alphabet, defaultSize = 21) => {\n return (size = defaultSize) => {\n let id = ''\n let i = size | 0\n while (i--) {\n id += alphabet[(Math.random() * alphabet.length) | 0]\n }\n return id\n }\n}\nexport let nanoid = (size = 21) => {\n let id = ''\n let i = size | 0\n while (i--) {\n id += urlAlphabet[(Math.random() * 64) | 0]\n }\n return id\n}\n", "/*\n _ __ _ __\n| | / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\nimport { nanoid } from 'nanoid/non-secure';\n\nconst runtimeURL = window.location.origin + \"/wails/runtime\";\n\n// Object Names\nexport const objectNames = {\n Call: 0,\n Clipboard: 1,\n Application: 2,\n Events: 3,\n ContextMenu: 4,\n Dialog: 5,\n Window: 6,\n Screens: 7,\n System: 8,\n Browser: 9,\n CancelCall: 10,\n}\nexport let clientId = nanoid();\n\n/**\n * Creates a runtime caller function that invokes a specified method on a given object within a specified window context.\n *\n * @param {Object} object - The object on which the method is to be invoked.\n * @param {string} windowName - The name of the window context in which the method should be called.\n * @returns {Function} A runtime caller function that takes the method name and optionally arguments and invokes the method within the specified window context.\n */\nexport function newRuntimeCaller(object, windowName) {\n return function (method, args=null) {\n return runtimeCall(object + \".\" + method, windowName, args);\n };\n}\n\n/**\n * Creates a new runtime caller with specified ID.\n *\n * @param {object} object - The object to invoke the method on.\n * @param {string} windowName - The name of the window.\n * @return {Function} - The new runtime caller function.\n */\nexport function newRuntimeCallerWithID(object, windowName) {\n return function (method, args=null) {\n return runtimeCallWithID(object, method, windowName, args);\n };\n}\n\n\nfunction runtimeCall(method, windowName, args) {\n let url = new URL(runtimeURL);\n if( method ) {\n url.searchParams.append(\"method\", method);\n }\n let fetchOptions = {\n headers: {},\n };\n if (windowName) {\n fetchOptions.headers[\"x-wails-window-name\"] = windowName;\n }\n if (args) {\n url.searchParams.append(\"args\", JSON.stringify(args));\n }\n fetchOptions.headers[\"x-wails-client-id\"] = clientId;\n\n return new Promise((resolve, reject) => {\n fetch(url, fetchOptions)\n .then(response => {\n if (response.ok) {\n // check content type\n if (response.headers.get(\"Content-Type\") && response.headers.get(\"Content-Type\").indexOf(\"application/json\") !== -1) {\n return response.json();\n } else {\n return response.text();\n }\n }\n reject(Error(response.statusText));\n })\n .then(data => resolve(data))\n .catch(error => reject(error));\n });\n}\n\nfunction runtimeCallWithID(objectID, method, windowName, args) {\n let url = new URL(runtimeURL);\n url.searchParams.append(\"object\", objectID);\n url.searchParams.append(\"method\", method);\n let fetchOptions = {\n headers: {},\n };\n if (windowName) {\n fetchOptions.headers[\"x-wails-window-name\"] = windowName;\n }\n if (args) {\n url.searchParams.append(\"args\", JSON.stringify(args));\n }\n fetchOptions.headers[\"x-wails-client-id\"] = clientId;\n return new Promise((resolve, reject) => {\n fetch(url, fetchOptions)\n .then(response => {\n if (response.ok) {\n // check content type\n if (response.headers.get(\"Content-Type\") && response.headers.get(\"Content-Type\").indexOf(\"application/json\") !== -1) {\n return response.json();\n } else {\n return response.text();\n }\n }\n reject(Error(response.statusText));\n })\n .then(data => resolve(data))\n .catch(error => reject(error));\n });\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\nimport {newRuntimeCallerWithID, objectNames} from \"./runtime\";\nlet call = newRuntimeCallerWithID(objectNames.System, '');\nconst systemIsDarkMode = 0;\nconst environment = 1;\n\nconst _invoke = (() => {\n try {\n if(window?.chrome?.webview) {\n return (msg) => window.chrome.webview.postMessage(msg);\n }\n if(window?.webkit?.messageHandlers?.external) {\n return (msg) => window.webkit.messageHandlers.external.postMessage(msg);\n }\n } catch(e) {\n console.warn('\\n%c⚠️ Browser Environment Detected %c\\n\\n%cOnly UI previews are available in the browser. For full functionality, please run the application in desktop mode.\\nMore information at: https://v3alpha.wails.io/learn/build/#using-a-browser-for-development\\n',\n 'background: #ffffff; color: #000000; font-weight: bold; padding: 4px 8px; border-radius: 4px; border: 2px solid #000000;',\n 'background: transparent;',\n 'color: #ffffff; font-style: italic; font-weight: bold;');\n }\n return null;\n})();\n\nexport function invoke(msg) {\n if (!_invoke) return;\n return _invoke(msg);\n}\n\n/**\n * @function\n * Retrieves the system dark mode status.\n * @returns {Promise} - A promise that resolves to a boolean value indicating if the system is in dark mode.\n */\nexport function IsDarkMode() {\n return call(systemIsDarkMode);\n}\n\n/**\n * Fetches the capabilities of the application from the server.\n *\n * @async\n * @function Capabilities\n * @returns {Promise} A promise that resolves to an object containing the capabilities.\n */\nexport function Capabilities() {\n let response = fetch(\"/wails/capabilities\");\n return response.json();\n}\n\n/**\n * @typedef {Object} OSInfo\n * @property {string} Branding - The branding of the OS.\n * @property {string} ID - The ID of the OS.\n * @property {string} Name - The name of the OS.\n * @property {string} Version - The version of the OS.\n */\n\n/**\n * @typedef {Object} EnvironmentInfo\n * @property {string} Arch - The architecture of the system.\n * @property {boolean} Debug - True if the application is running in debug mode, otherwise false.\n * @property {string} OS - The operating system in use.\n * @property {OSInfo} OSInfo - Details of the operating system.\n * @property {Object} PlatformInfo - Additional platform information.\n */\n\n/**\n * @function\n * Retrieves environment details.\n * @returns {Promise} - A promise that resolves to an object containing OS and system architecture.\n */\nexport function Environment() {\n return call(environment);\n}\n\n/**\n * Checks if the current operating system is Windows.\n *\n * @return {boolean} True if the operating system is Windows, otherwise false.\n */\nexport function IsWindows() {\n return window._wails.environment.OS === \"windows\";\n}\n\n/**\n * Checks if the current operating system is Linux.\n *\n * @returns {boolean} Returns true if the current operating system is Linux, false otherwise.\n */\nexport function IsLinux() {\n return window._wails.environment.OS === \"linux\";\n}\n\n/**\n * Checks if the current environment is a macOS operating system.\n *\n * @returns {boolean} True if the environment is macOS, false otherwise.\n */\nexport function IsMac() {\n return window._wails.environment.OS === \"darwin\";\n}\n\n/**\n * Checks if the current environment architecture is AMD64.\n * @returns {boolean} True if the current environment architecture is AMD64, false otherwise.\n */\nexport function IsAMD64() {\n return window._wails.environment.Arch === \"amd64\";\n}\n\n/**\n * Checks if the current architecture is ARM.\n *\n * @returns {boolean} True if the current architecture is ARM, false otherwise.\n */\nexport function IsARM() {\n return window._wails.environment.Arch === \"arm\";\n}\n\n/**\n * Checks if the current environment is ARM64 architecture.\n *\n * @returns {boolean} - Returns true if the environment is ARM64 architecture, otherwise returns false.\n */\nexport function IsARM64() {\n return window._wails.environment.Arch === \"arm64\";\n}\n\nexport function IsDebug() {\n return window._wails.environment.Debug === true;\n}\n\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\nimport {newRuntimeCallerWithID, objectNames} from \"./runtime\";\nimport {IsDebug} from \"./system\";\n\n// setup\nwindow.addEventListener('contextmenu', contextMenuHandler);\n\nconst call = newRuntimeCallerWithID(objectNames.ContextMenu, '');\nconst ContextMenuOpen = 0;\n\nfunction openContextMenu(id, x, y, data) {\n void call(ContextMenuOpen, {id, x, y, data});\n}\n\nfunction contextMenuHandler(event) {\n // Check for custom context menu\n let element = event.target;\n let customContextMenu = window.getComputedStyle(element).getPropertyValue(\"--custom-contextmenu\");\n customContextMenu = customContextMenu ? customContextMenu.trim() : \"\";\n if (customContextMenu) {\n event.preventDefault();\n let customContextMenuData = window.getComputedStyle(element).getPropertyValue(\"--custom-contextmenu-data\");\n openContextMenu(customContextMenu, event.clientX, event.clientY, customContextMenuData);\n return\n }\n\n processDefaultContextMenu(event);\n}\n\n\n/*\n--default-contextmenu: auto; (default) will show the default context menu if contentEditable is true OR text has been selected OR element is input or textarea\n--default-contextmenu: show; will always show the default context menu\n--default-contextmenu: hide; will always hide the default context menu\n\nThis rule is inherited like normal CSS rules, so nesting works as expected\n*/\nfunction processDefaultContextMenu(event) {\n\n // Debug builds always show the menu\n if (IsDebug()) {\n return;\n }\n\n // Process default context menu\n const element = event.target;\n const computedStyle = window.getComputedStyle(element);\n const defaultContextMenuAction = computedStyle.getPropertyValue(\"--default-contextmenu\").trim();\n switch (defaultContextMenuAction) {\n case \"show\":\n return;\n case \"hide\":\n event.preventDefault();\n return;\n default:\n // Check if contentEditable is true\n if (element.isContentEditable) {\n return;\n }\n\n // Check if text has been selected\n const selection = window.getSelection();\n const hasSelection = (selection.toString().length > 0)\n if (hasSelection) {\n for (let i = 0; i < selection.rangeCount; i++) {\n const range = selection.getRangeAt(i);\n const rects = range.getClientRects();\n for (let j = 0; j < rects.length; j++) {\n const rect = rects[j];\n if (document.elementFromPoint(rect.left, rect.top) === element) {\n return;\n }\n }\n }\n }\n // Check if tagname is input or textarea\n if (element.tagName === \"INPUT\" || element.tagName === \"TEXTAREA\") {\n if (hasSelection || (!element.readOnly && !element.disabled)) {\n return;\n }\n }\n\n // hide default context menu\n event.preventDefault();\n }\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\n/**\n * Retrieves the value associated with the specified key from the flag map.\n *\n * @param {string} keyString - The key to retrieve the value for.\n * @return {*} - The value associated with the specified key.\n */\nexport function GetFlag(keyString) {\n try {\n return window._wails.flags[keyString];\n } catch (e) {\n throw new Error(\"Unable to retrieve flag '\" + keyString + \"': \" + e);\n }\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n/* jshint esversion: 9 */\nimport {invoke, IsWindows} from \"./system\";\nimport {GetFlag} from \"./flags\";\n\n// Setup\nlet shouldDrag = false;\nlet resizable = false;\nlet resizeEdge = null;\nlet defaultCursor = \"auto\";\n\nwindow._wails = window._wails || {};\n\nwindow._wails.setResizable = function(value) {\n resizable = value;\n};\n\nwindow._wails.endDrag = function() {\n document.body.style.cursor = 'default';\n shouldDrag = false;\n};\n\nwindow.addEventListener('mousedown', onMouseDown);\nwindow.addEventListener('mousemove', onMouseMove);\nwindow.addEventListener('mouseup', onMouseUp);\n\n\nfunction dragTest(e) {\n let val = window.getComputedStyle(e.target).getPropertyValue(\"--wails-draggable\");\n let mousePressed = e.buttons !== undefined ? e.buttons : e.which;\n if (!val || val === \"\" || val.trim() !== \"drag\" || mousePressed === 0) {\n return false;\n }\n return e.detail === 1;\n}\n\nfunction onMouseDown(e) {\n\n // Check for resizing\n if (resizeEdge) {\n invoke(\"wails:resize:\" + resizeEdge);\n e.preventDefault();\n return;\n }\n\n if (dragTest(e)) {\n // This checks for clicks on the scroll bar\n if (e.offsetX > e.target.clientWidth || e.offsetY > e.target.clientHeight) {\n return;\n }\n shouldDrag = true;\n } else {\n shouldDrag = false;\n }\n}\n\nfunction onMouseUp() {\n shouldDrag = false;\n}\n\nfunction setResize(cursor) {\n document.documentElement.style.cursor = cursor || defaultCursor;\n resizeEdge = cursor;\n}\n\nfunction onMouseMove(e) {\n if (shouldDrag) {\n shouldDrag = false;\n let mousePressed = e.buttons !== undefined ? e.buttons : e.which;\n if (mousePressed > 0) {\n invoke(\"wails:drag\");\n return;\n }\n }\n if (!resizable || !IsWindows()) {\n return;\n }\n if (defaultCursor == null) {\n defaultCursor = document.documentElement.style.cursor;\n }\n let resizeHandleHeight = GetFlag(\"system.resizeHandleHeight\") || 5;\n let resizeHandleWidth = GetFlag(\"system.resizeHandleWidth\") || 5;\n\n // Extra pixels for the corner areas\n let cornerExtra = GetFlag(\"resizeCornerExtra\") || 10;\n\n let rightBorder = window.outerWidth - e.clientX < resizeHandleWidth;\n let leftBorder = e.clientX < resizeHandleWidth;\n let topBorder = e.clientY < resizeHandleHeight;\n let bottomBorder = window.outerHeight - e.clientY < resizeHandleHeight;\n\n // Adjust for corners\n let rightCorner = window.outerWidth - e.clientX < (resizeHandleWidth + cornerExtra);\n let leftCorner = e.clientX < (resizeHandleWidth + cornerExtra);\n let topCorner = e.clientY < (resizeHandleHeight + cornerExtra);\n let bottomCorner = window.outerHeight - e.clientY < (resizeHandleHeight + cornerExtra);\n\n // If we aren't on an edge, but were, reset the cursor to default\n if (!leftBorder && !rightBorder && !topBorder && !bottomBorder && resizeEdge !== undefined) {\n setResize();\n }\n // Adjusted for corner areas\n else if (rightCorner && bottomCorner) setResize(\"se-resize\");\n else if (leftCorner && bottomCorner) setResize(\"sw-resize\");\n else if (leftCorner && topCorner) setResize(\"nw-resize\");\n else if (topCorner && rightCorner) setResize(\"ne-resize\");\n else if (leftBorder) setResize(\"w-resize\");\n else if (topBorder) setResize(\"n-resize\");\n else if (bottomBorder) setResize(\"s-resize\");\n else if (rightBorder) setResize(\"e-resize\");\n}", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\nimport { newRuntimeCallerWithID, objectNames } from \"./runtime\";\nconst call = newRuntimeCallerWithID(objectNames.Application, '');\n\nconst HideMethod = 0;\nconst ShowMethod = 1;\nconst QuitMethod = 2;\n\n/**\n * Hides a certain method by calling the HideMethod function.\n *\n * @return {Promise}\n *\n */\nexport function Hide() {\n return call(HideMethod);\n}\n\n/**\n * Calls the ShowMethod and returns the result.\n *\n * @return {Promise}\n */\nexport function Show() {\n return call(ShowMethod);\n}\n\n/**\n * Calls the QuitMethod to terminate the program.\n *\n * @return {Promise}\n */\nexport function Quit() {\n return call(QuitMethod);\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\nimport {newRuntimeCallerWithID, objectNames} from \"./runtime\";\n\nconst call = newRuntimeCallerWithID(objectNames.Browser, '');\nconst BrowserOpenURL = 0;\n\n/**\n * Open a browser window to the given URL\n * @param {string} url - The URL to open\n * @returns {Promise}\n */\nexport function OpenURL(url) {\n return call(BrowserOpenURL, {url});\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\nimport { newRuntimeCallerWithID, objectNames } from \"./runtime\";\nimport { nanoid } from 'nanoid/non-secure';\n\n// Setup\nwindow._wails = window._wails || {};\nwindow._wails.callResultHandler = resultHandler;\nwindow._wails.callErrorHandler = errorHandler;\n\n\nconst CallBinding = 0;\nconst call = newRuntimeCallerWithID(objectNames.Call, '');\nconst cancelCall = newRuntimeCallerWithID(objectNames.CancelCall, '');\nlet callResponses = new Map();\n\n/**\n * Generates a unique ID using the nanoid library.\n *\n * @return {string} - A unique ID that does not exist in the callResponses set.\n */\nfunction generateID() {\n let result;\n do {\n result = nanoid();\n } while (callResponses.has(result));\n return result;\n}\n\n/**\n * Handles the result of a call request.\n *\n * @param {string} id - The id of the request to handle the result for.\n * @param {string} data - The result data of the request.\n * @param {boolean} isJSON - Indicates whether the data is JSON or not.\n *\n * @return {undefined} - This method does not return any value.\n */\nfunction resultHandler(id, data, isJSON) {\n const promiseHandler = getAndDeleteResponse(id);\n if (promiseHandler) {\n promiseHandler.resolve(isJSON ? JSON.parse(data) : data);\n }\n}\n\n/**\n * Handles the error from a call request.\n *\n * @param {string} id - The id of the promise handler.\n * @param {string} message - The error message to reject the promise handler with.\n *\n * @return {void}\n */\nfunction errorHandler(id, message) {\n const promiseHandler = getAndDeleteResponse(id);\n if (promiseHandler) {\n promiseHandler.reject(message);\n }\n}\n\n/**\n * Retrieves and removes the response associated with the given ID from the callResponses map.\n *\n * @param {any} id - The ID of the response to be retrieved and removed.\n *\n * @returns {any} The response object associated with the given ID.\n */\nfunction getAndDeleteResponse(id) {\n const response = callResponses.get(id);\n callResponses.delete(id);\n return response;\n}\n\n/**\n * Executes a call using the provided type and options.\n *\n * @param {string|number} type - The type of call to execute.\n * @param {Object} [options={}] - Additional options for the call.\n * @return {Promise} - A promise that will be resolved or rejected based on the result of the call. It also has a cancel method to cancel a long running request.\n */\nfunction callBinding(type, options = {}) {\n const id = generateID();\n const doCancel = () => { return cancelCall(type, {\"call-id\": id}) };\n let queuedCancel = false, callRunning = false;\n let p = new Promise((resolve, reject) => {\n options[\"call-id\"] = id;\n callResponses.set(id, { resolve, reject });\n call(type, options).\n then((_) => {\n callRunning = true;\n if (queuedCancel) {\n return doCancel();\n }\n }).\n catch((error) => {\n reject(error);\n callResponses.delete(id);\n });\n });\n p.cancel = () => {\n if (callRunning) {\n return doCancel();\n } else {\n queuedCancel = true;\n }\n };\n\n return p;\n}\n\n/**\n * Call method.\n *\n * @param {Object} options - The options for the method.\n * @returns {Object} - The result of the call.\n */\nexport function Call(options) {\n return callBinding(CallBinding, options);\n}\n\n/**\n * Executes a method by name.\n *\n * @param {string} methodName - The name of the method in the format 'package.struct.method'.\n * @param {...*} args - The arguments to pass to the method.\n * @throws {Error} If the name is not a string or is not in the correct format.\n * @returns {*} The result of the method execution.\n */\nexport function ByName(methodName, ...args) {\n return callBinding(CallBinding, {\n methodName,\n args\n });\n}\n\n/**\n * Calls a method by its ID with the specified arguments.\n *\n * @param {number} methodID - The ID of the method to call.\n * @param {...*} args - The arguments to pass to the method.\n * @return {*} - The result of the method call.\n */\nexport function ByID(methodID, ...args) {\n return callBinding(CallBinding, {\n methodID,\n args\n });\n}\n\n/**\n * Calls a method on a plugin.\n *\n * @param {string} pluginName - The name of the plugin.\n * @param {string} methodName - The name of the method to call.\n * @param {...*} args - The arguments to pass to the method.\n * @returns {*} - The result of the method call.\n */\nexport function Plugin(pluginName, methodName, ...args) {\n return callBinding(CallBinding, {\n packageName: \"wails-plugins\",\n structName: pluginName,\n methodName,\n args\n });\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\nimport {newRuntimeCallerWithID, objectNames} from \"./runtime\";\n\nconst call = newRuntimeCallerWithID(objectNames.Clipboard, '');\nconst ClipboardSetText = 0;\nconst ClipboardText = 1;\n\n/**\n * Sets the text to the Clipboard.\n *\n * @param {string} text - The text to be set to the Clipboard.\n * @return {Promise} - A Promise that resolves when the operation is successful.\n */\nexport function SetText(text) {\n return call(ClipboardSetText, {text});\n}\n\n/**\n * Get the Clipboard text\n * @returns {Promise} A promise that resolves with the text from the Clipboard.\n */\nexport function Text() {\n return call(ClipboardText);\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\n/**\n * Any is a dummy creation function for simple or unknown types.\n * @template T\n * @param {any} source\n * @returns {T}\n */\nexport function Any(source) {\n return /** @type {T} */(source);\n}\n\n/**\n * ByteSlice is a creation function that replaces\n * null strings with empty strings.\n * @param {any} source\n * @returns {string}\n */\nexport function ByteSlice(source) {\n return /** @type {any} */((source == null) ? \"\" : source);\n}\n\n/**\n * Array takes a creation function for an arbitrary type\n * and returns an in-place creation function for an array\n * whose elements are of that type.\n * @template T\n * @param {(source: any) => T} element\n * @returns {(source: any) => T[]}\n */\nexport function Array(element) {\n if (element === Any) {\n return (source) => (source === null ? [] : source);\n }\n\n return (source) => {\n if (source === null) {\n return [];\n }\n for (let i = 0; i < source.length; i++) {\n source[i] = element(source[i]);\n }\n return source;\n };\n}\n\n/**\n * Map takes creation functions for two arbitrary types\n * and returns an in-place creation function for an object\n * whose keys and values are of those types.\n * @template K, V\n * @param {(source: any) => K} key\n * @param {(source: any) => V} value\n * @returns {(source: any) => { [_: K]: V }}\n */\nexport function Map(key, value) {\n if (value === Any) {\n return (source) => (source === null ? {} : source);\n }\n\n return (source) => {\n if (source === null) {\n return {};\n }\n for (const key in source) {\n source[key] = value(source[key]);\n }\n return source;\n };\n}\n\n/**\n * Nullable takes a creation function for an arbitrary type\n * and returns a creation function for a nullable value of that type.\n * @template T\n * @param {(source: any) => T} element\n * @returns {(source: any) => (T | null)}\n */\nexport function Nullable(element) {\n if (element === Any) {\n return Any;\n }\n\n return (source) => (source === null ? null : element(source));\n}\n\n/**\n * Struct takes an object mapping field names to creation functions\n * and returns an in-place creation function for a struct.\n * @template {{ [_: string]: ((source: any) => any) }} T\n * @template {{ [Key in keyof T]?: ReturnType }} U\n * @param {T} createField\n * @returns {(source: any) => U}\n */\nexport function Struct(createField) {\n let allAny = true;\n for (const name in createField) {\n if (createField[name] !== Any) {\n allAny = false;\n break;\n }\n }\n if (allAny) {\n return Any;\n }\n\n return (source) => {\n for (const name in createField) {\n if (name in source) {\n source[name] = createField[name](source[name]);\n }\n }\n return source;\n };\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\n/**\n * @typedef {Object} OpenFileDialogOptions\n * @property {boolean} [CanChooseDirectories] - Indicates if directories can be chosen.\n * @property {boolean} [CanChooseFiles] - Indicates if files can be chosen.\n * @property {boolean} [CanCreateDirectories] - Indicates if directories can be created.\n * @property {boolean} [ShowHiddenFiles] - Indicates if hidden files should be shown.\n * @property {boolean} [ResolvesAliases] - Indicates if aliases should be resolved.\n * @property {boolean} [AllowsMultipleSelection] - Indicates if multiple selection is allowed.\n * @property {boolean} [HideExtension] - Indicates if the extension should be hidden.\n * @property {boolean} [CanSelectHiddenExtension] - Indicates if hidden extensions can be selected.\n * @property {boolean} [TreatsFilePackagesAsDirectories] - Indicates if file packages should be treated as directories.\n * @property {boolean} [AllowsOtherFiletypes] - Indicates if other file types are allowed.\n * @property {FileFilter[]} [Filters] - Array of file filters.\n * @property {string} [Title] - Title of the dialog.\n * @property {string} [Message] - Message to show in the dialog.\n * @property {string} [ButtonText] - Text to display on the button.\n * @property {string} [Directory] - Directory to open in the dialog.\n * @property {boolean} [Detached] - Indicates if the dialog should appear detached from the main window.\n */\n\n\n/**\n * @typedef {Object} SaveFileDialogOptions\n * @property {string} [Filename] - Default filename to use in the dialog.\n * @property {boolean} [CanChooseDirectories] - Indicates if directories can be chosen.\n * @property {boolean} [CanChooseFiles] - Indicates if files can be chosen.\n * @property {boolean} [CanCreateDirectories] - Indicates if directories can be created.\n * @property {boolean} [ShowHiddenFiles] - Indicates if hidden files should be shown.\n * @property {boolean} [ResolvesAliases] - Indicates if aliases should be resolved.\n * @property {boolean} [AllowsMultipleSelection] - Indicates if multiple selection is allowed.\n * @property {boolean} [HideExtension] - Indicates if the extension should be hidden.\n * @property {boolean} [CanSelectHiddenExtension] - Indicates if hidden extensions can be selected.\n * @property {boolean} [TreatsFilePackagesAsDirectories] - Indicates if file packages should be treated as directories.\n * @property {boolean} [AllowsOtherFiletypes] - Indicates if other file types are allowed.\n * @property {FileFilter[]} [Filters] - Array of file filters.\n * @property {string} [Title] - Title of the dialog.\n * @property {string} [Message] - Message to show in the dialog.\n * @property {string} [ButtonText] - Text to display on the button.\n * @property {string} [Directory] - Directory to open in the dialog.\n * @property {boolean} [Detached] - Indicates if the dialog should appear detached from the main window.\n */\n\n/**\n * @typedef {Object} MessageDialogOptions\n * @property {string} [Title] - The title of the dialog window.\n * @property {string} [Message] - The main message to show in the dialog.\n * @property {Button[]} [Buttons] - Array of button options to show in the dialog.\n * @property {boolean} [Detached] - True if the dialog should appear detached from the main window (if applicable).\n */\n\n/**\n * @typedef {Object} Button\n * @property {string} [Label] - Text that appears within the button.\n * @property {boolean} [IsCancel] - True if the button should cancel an operation when clicked.\n * @property {boolean} [IsDefault] - True if the button should be the default action when the user presses enter.\n */\n\n/**\n * @typedef {Object} FileFilter\n * @property {string} [DisplayName] - Display name for the filter, it could be \"Text Files\", \"Images\" etc.\n * @property {string} [Pattern] - Pattern to match for the filter, e.g. \"*.txt;*.md\" for text markdown files.\n */\n\n// setup\nwindow._wails = window._wails || {};\nwindow._wails.dialogErrorCallback = dialogErrorCallback;\nwindow._wails.dialogResultCallback = dialogResultCallback;\n\nimport {newRuntimeCallerWithID, objectNames} from \"./runtime\";\n\nimport { nanoid } from 'nanoid/non-secure';\n\n// Define constants from the `methods` object in Title Case\nconst DialogInfo = 0;\nconst DialogWarning = 1;\nconst DialogError = 2;\nconst DialogQuestion = 3;\nconst DialogOpenFile = 4;\nconst DialogSaveFile = 5;\n\nconst call = newRuntimeCallerWithID(objectNames.Dialog, '');\nconst dialogResponses = new Map();\n\n/**\n * Generates a unique id that is not present in dialogResponses.\n * @returns {string} unique id\n */\nfunction generateID() {\n let result;\n do {\n result = nanoid();\n } while (dialogResponses.has(result));\n return result;\n}\n\n/**\n * Shows a dialog of specified type with the given options.\n * @param {number} type - type of dialog\n * @param {MessageDialogOptions|OpenFileDialogOptions|SaveFileDialogOptions} options - options for the dialog\n * @returns {Promise} promise that resolves with result of dialog\n */\nfunction dialog(type, options = {}) {\n const id = generateID();\n options[\"dialog-id\"] = id;\n return new Promise((resolve, reject) => {\n dialogResponses.set(id, {resolve, reject});\n call(type, options).catch((error) => {\n reject(error);\n dialogResponses.delete(id);\n });\n });\n}\n\n/**\n * Handles the callback from a dialog.\n *\n * @param {string} id - The ID of the dialog response.\n * @param {string} data - The data received from the dialog.\n * @param {boolean} isJSON - Flag indicating whether the data is in JSON format.\n *\n * @return {undefined}\n */\nfunction dialogResultCallback(id, data, isJSON) {\n let p = dialogResponses.get(id);\n if (p) {\n if (isJSON) {\n p.resolve(JSON.parse(data));\n } else {\n p.resolve(data);\n }\n dialogResponses.delete(id);\n }\n}\n\n/**\n * Callback function for handling errors in dialog.\n *\n * @param {string} id - The id of the dialog response.\n * @param {string} message - The error message.\n *\n * @return {void}\n */\nfunction dialogErrorCallback(id, message) {\n let p = dialogResponses.get(id);\n if (p) {\n p.reject(message);\n dialogResponses.delete(id);\n }\n}\n\n\n// Replace `methods` with constants in Title Case\n\n/**\n * @param {MessageDialogOptions} options - Dialog options\n * @returns {Promise} - The label of the button pressed\n */\nexport const Info = (options) => dialog(DialogInfo, options);\n\n/**\n * @param {MessageDialogOptions} options - Dialog options\n * @returns {Promise} - The label of the button pressed\n */\nexport const Warning = (options) => dialog(DialogWarning, options);\n\n/**\n * @param {MessageDialogOptions} options - Dialog options\n * @returns {Promise} - The label of the button pressed\n */\nexport const Error = (options) => dialog(DialogError, options);\n\n/**\n * @param {MessageDialogOptions} options - Dialog options\n * @returns {Promise} - The label of the button pressed\n */\nexport const Question = (options) => dialog(DialogQuestion, options);\n\n/**\n * @param {OpenFileDialogOptions} options - Dialog options\n * @returns {Promise} Returns selected file or list of files. Returns blank string if no file is selected.\n */\nexport const OpenFile = (options) => dialog(DialogOpenFile, options);\n\n/**\n * @param {SaveFileDialogOptions} options - Dialog options\n * @returns {Promise} Returns the selected file. Returns blank string if no file is selected.\n */\nexport const SaveFile = (options) => dialog(DialogSaveFile, options);\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\n/**\n * @typedef {import(\"./types\").WailsEvent} WailsEvent\n */\nimport {newRuntimeCallerWithID, objectNames} from \"./runtime\";\n\nimport {EventTypes} from \"./event_types\";\nexport const Types = EventTypes;\n\n// Setup\nwindow._wails = window._wails || {};\nwindow._wails.dispatchWailsEvent = dispatchWailsEvent;\n\nconst call = newRuntimeCallerWithID(objectNames.Events, '');\nconst EmitMethod = 0;\nconst eventListeners = new Map();\n\nclass Listener {\n constructor(eventName, callback, maxCallbacks) {\n this.eventName = eventName;\n this.maxCallbacks = maxCallbacks || -1;\n this.Callback = (data) => {\n callback(data);\n if (this.maxCallbacks === -1) return false;\n this.maxCallbacks -= 1;\n return this.maxCallbacks === 0;\n };\n }\n}\n\nexport class WailsEvent {\n constructor(name, data = null) {\n this.name = name;\n this.data = data;\n }\n}\n\nexport function setup() {\n}\n\nfunction dispatchWailsEvent(event) {\n let listeners = eventListeners.get(event.name);\n if (listeners) {\n let toRemove = listeners.filter(listener => {\n let remove = listener.Callback(event);\n if (remove) return true;\n });\n if (toRemove.length > 0) {\n listeners = listeners.filter(l => !toRemove.includes(l));\n if (listeners.length === 0) eventListeners.delete(event.name);\n else eventListeners.set(event.name, listeners);\n }\n }\n}\n\n/**\n * Register a callback function to be called multiple times for a specific event.\n *\n * @param {string} eventName - The name of the event to register the callback for.\n * @param {function} callback - The callback function to be called when the event is triggered.\n * @param {number} maxCallbacks - The maximum number of times the callback can be called for the event. Once the maximum number is reached, the callback will no longer be called.\n *\n @return {function} - A function that, when called, will unregister the callback from the event.\n */\nexport function OnMultiple(eventName, callback, maxCallbacks) {\n let listeners = eventListeners.get(eventName) || [];\n const thisListener = new Listener(eventName, callback, maxCallbacks);\n listeners.push(thisListener);\n eventListeners.set(eventName, listeners);\n return () => listenerOff(thisListener);\n}\n\n/**\n * Registers a callback function to be executed when the specified event occurs.\n *\n * @param {string} eventName - The name of the event.\n * @param {function} callback - The callback function to be executed. It takes no parameters.\n * @return {function} - A function that, when called, will unregister the callback from the event. */\nexport function On(eventName, callback) { return OnMultiple(eventName, callback, -1); }\n\n/**\n * Registers a callback function to be executed only once for the specified event.\n *\n * @param {string} eventName - The name of the event.\n * @param {function} callback - The function to be executed when the event occurs.\n * @return {function} - A function that, when called, will unregister the callback from the event.\n */\nexport function Once(eventName, callback) { return OnMultiple(eventName, callback, 1); }\n\n/**\n * Removes the specified listener from the event listeners collection.\n * If all listeners for the event are removed, the event key is deleted from the collection.\n *\n * @param {Object} listener - The listener to be removed.\n */\nfunction listenerOff(listener) {\n const eventName = listener.eventName;\n let listeners = eventListeners.get(eventName).filter(l => l !== listener);\n if (listeners.length === 0) eventListeners.delete(eventName);\n else eventListeners.set(eventName, listeners);\n}\n\n\n/**\n * Removes event listeners for the specified event names.\n *\n * @param {string} eventName - The name of the event to remove listeners for.\n * @param {...string} additionalEventNames - Additional event names to remove listeners for.\n * @return {undefined}\n */\nexport function Off(eventName, ...additionalEventNames) {\n let eventsToRemove = [eventName, ...additionalEventNames];\n eventsToRemove.forEach(eventName => eventListeners.delete(eventName));\n}\n/**\n * Removes all event listeners.\n *\n * @function OffAll\n * @returns {void}\n */\nexport function OffAll() { eventListeners.clear(); }\n\n/**\n * Emits an event using the given event name.\n *\n * @param {WailsEvent} event - The name of the event to emit.\n * @returns {any} - The result of the emitted event.\n */\nexport function Emit(event) { return call(EmitMethod, event); }\n", "\nexport const EventTypes = {\n\tWindows: {\n\t\tSystemThemeChanged: \"windows:SystemThemeChanged\",\n\t\tAPMPowerStatusChange: \"windows:APMPowerStatusChange\",\n\t\tAPMSuspend: \"windows:APMSuspend\",\n\t\tAPMResumeAutomatic: \"windows:APMResumeAutomatic\",\n\t\tAPMResumeSuspend: \"windows:APMResumeSuspend\",\n\t\tAPMPowerSettingChange: \"windows:APMPowerSettingChange\",\n\t\tApplicationStarted: \"windows:ApplicationStarted\",\n\t\tWebViewNavigationCompleted: \"windows:WebViewNavigationCompleted\",\n\t\tWindowInactive: \"windows:WindowInactive\",\n\t\tWindowActive: \"windows:WindowActive\",\n\t\tWindowClickActive: \"windows:WindowClickActive\",\n\t\tWindowMaximise: \"windows:WindowMaximise\",\n\t\tWindowUnMaximise: \"windows:WindowUnMaximise\",\n\t\tWindowFullscreen: \"windows:WindowFullscreen\",\n\t\tWindowUnFullscreen: \"windows:WindowUnFullscreen\",\n\t\tWindowRestore: \"windows:WindowRestore\",\n\t\tWindowMinimise: \"windows:WindowMinimise\",\n\t\tWindowUnMinimise: \"windows:WindowUnMinimise\",\n\t\tWindowClosing: \"windows:WindowClosing\",\n\t\tWindowSetFocus: \"windows:WindowSetFocus\",\n\t\tWindowKillFocus: \"windows:WindowKillFocus\",\n\t\tWindowDragDrop: \"windows:WindowDragDrop\",\n\t\tWindowDragEnter: \"windows:WindowDragEnter\",\n\t\tWindowDragLeave: \"windows:WindowDragLeave\",\n\t\tWindowDragOver: \"windows:WindowDragOver\",\n\t\tWindowDidMove: \"windows:WindowDidMove\",\n\t\tWindowDidResize: \"windows:WindowDidResize\",\n\t\tWindowShow: \"windows:WindowShow\",\n\t\tWindowHide: \"windows:WindowHide\",\n\t\tWindowStartMove: \"windows:WindowStartMove\",\n\t\tWindowEndMove: \"windows:WindowEndMove\",\n\t\tWindowStartResize: \"windows:WindowStartResize\",\n\t\tWindowEndResize: \"windows:WindowEndResize\",\n\t\tWindowKeyDown: \"windows:WindowKeyDown\",\n\t\tWindowKeyUp: \"windows:WindowKeyUp\",\n\t\tWindowZOrderChanged: \"windows:WindowZOrderChanged\",\n\t\tWindowPaint: \"windows:WindowPaint\",\n\t\tWindowBackgroundErase: \"windows:WindowBackgroundErase\",\n\t\tWindowNonClientHit: \"windows:WindowNonClientHit\",\n\t\tWindowNonClientMouseDown: \"windows:WindowNonClientMouseDown\",\n\t\tWindowNonClientMouseUp: \"windows:WindowNonClientMouseUp\",\n\t\tWindowNonClientMouseMove: \"windows:WindowNonClientMouseMove\",\n\t\tWindowNonClientMouseLeave: \"windows:WindowNonClientMouseLeave\",\n\t},\n\tMac: {\n\t\tApplicationDidBecomeActive: \"mac:ApplicationDidBecomeActive\",\n\t\tApplicationDidChangeBackingProperties: \"mac:ApplicationDidChangeBackingProperties\",\n\t\tApplicationDidChangeEffectiveAppearance: \"mac:ApplicationDidChangeEffectiveAppearance\",\n\t\tApplicationDidChangeIcon: \"mac:ApplicationDidChangeIcon\",\n\t\tApplicationDidChangeOcclusionState: \"mac:ApplicationDidChangeOcclusionState\",\n\t\tApplicationDidChangeScreenParameters: \"mac:ApplicationDidChangeScreenParameters\",\n\t\tApplicationDidChangeStatusBarFrame: \"mac:ApplicationDidChangeStatusBarFrame\",\n\t\tApplicationDidChangeStatusBarOrientation: \"mac:ApplicationDidChangeStatusBarOrientation\",\n\t\tApplicationDidFinishLaunching: \"mac:ApplicationDidFinishLaunching\",\n\t\tApplicationDidHide: \"mac:ApplicationDidHide\",\n\t\tApplicationDidResignActiveNotification: \"mac:ApplicationDidResignActiveNotification\",\n\t\tApplicationDidUnhide: \"mac:ApplicationDidUnhide\",\n\t\tApplicationDidUpdate: \"mac:ApplicationDidUpdate\",\n\t\tApplicationWillBecomeActive: \"mac:ApplicationWillBecomeActive\",\n\t\tApplicationWillFinishLaunching: \"mac:ApplicationWillFinishLaunching\",\n\t\tApplicationWillHide: \"mac:ApplicationWillHide\",\n\t\tApplicationWillResignActive: \"mac:ApplicationWillResignActive\",\n\t\tApplicationWillTerminate: \"mac:ApplicationWillTerminate\",\n\t\tApplicationWillUnhide: \"mac:ApplicationWillUnhide\",\n\t\tApplicationWillUpdate: \"mac:ApplicationWillUpdate\",\n\t\tApplicationDidChangeTheme: \"mac:ApplicationDidChangeTheme!\",\n\t\tApplicationShouldHandleReopen: \"mac:ApplicationShouldHandleReopen!\",\n\t\tWindowDidBecomeKey: \"mac:WindowDidBecomeKey\",\n\t\tWindowDidBecomeMain: \"mac:WindowDidBecomeMain\",\n\t\tWindowDidBeginSheet: \"mac:WindowDidBeginSheet\",\n\t\tWindowDidChangeAlpha: \"mac:WindowDidChangeAlpha\",\n\t\tWindowDidChangeBackingLocation: \"mac:WindowDidChangeBackingLocation\",\n\t\tWindowDidChangeBackingProperties: \"mac:WindowDidChangeBackingProperties\",\n\t\tWindowDidChangeCollectionBehavior: \"mac:WindowDidChangeCollectionBehavior\",\n\t\tWindowDidChangeEffectiveAppearance: \"mac:WindowDidChangeEffectiveAppearance\",\n\t\tWindowDidChangeOcclusionState: \"mac:WindowDidChangeOcclusionState\",\n\t\tWindowDidChangeOrderingMode: \"mac:WindowDidChangeOrderingMode\",\n\t\tWindowDidChangeScreen: \"mac:WindowDidChangeScreen\",\n\t\tWindowDidChangeScreenParameters: \"mac:WindowDidChangeScreenParameters\",\n\t\tWindowDidChangeScreenProfile: \"mac:WindowDidChangeScreenProfile\",\n\t\tWindowDidChangeScreenSpace: \"mac:WindowDidChangeScreenSpace\",\n\t\tWindowDidChangeScreenSpaceProperties: \"mac:WindowDidChangeScreenSpaceProperties\",\n\t\tWindowDidChangeSharingType: \"mac:WindowDidChangeSharingType\",\n\t\tWindowDidChangeSpace: \"mac:WindowDidChangeSpace\",\n\t\tWindowDidChangeSpaceOrderingMode: \"mac:WindowDidChangeSpaceOrderingMode\",\n\t\tWindowDidChangeTitle: \"mac:WindowDidChangeTitle\",\n\t\tWindowDidChangeToolbar: \"mac:WindowDidChangeToolbar\",\n\t\tWindowDidDeminiaturize: \"mac:WindowDidDeminiaturize\",\n\t\tWindowDidEndSheet: \"mac:WindowDidEndSheet\",\n\t\tWindowDidEnterFullScreen: \"mac:WindowDidEnterFullScreen\",\n\t\tWindowMaximise: \"mac:WindowMaximise\",\n\t\tWindowUnMaximise: \"mac:WindowUnMaximise\",\n\t\tWindowDidZoom: \"mac:WindowDidZoom!\",\n\t\tWindowZoomIn: \"mac:WindowZoomIn!\",\n\t\tWindowZoomOut: \"mac:WindowZoomOut!\",\n\t\tWindowZoomReset: \"mac:WindowZoomReset!\",\n\t\tWindowDidEnterVersionBrowser: \"mac:WindowDidEnterVersionBrowser\",\n\t\tWindowDidExitFullScreen: \"mac:WindowDidExitFullScreen\",\n\t\tWindowDidExitVersionBrowser: \"mac:WindowDidExitVersionBrowser\",\n\t\tWindowDidExpose: \"mac:WindowDidExpose\",\n\t\tWindowDidFocus: \"mac:WindowDidFocus\",\n\t\tWindowDidMiniaturize: \"mac:WindowDidMiniaturize\",\n\t\tWindowDidMove: \"mac:WindowDidMove\",\n\t\tWindowDidOrderOffScreen: \"mac:WindowDidOrderOffScreen\",\n\t\tWindowDidOrderOnScreen: \"mac:WindowDidOrderOnScreen\",\n\t\tWindowDidResignKey: \"mac:WindowDidResignKey\",\n\t\tWindowDidResignMain: \"mac:WindowDidResignMain\",\n\t\tWindowDidResize: \"mac:WindowDidResize\",\n\t\tWindowDidUpdate: \"mac:WindowDidUpdate\",\n\t\tWindowDidUpdateAlpha: \"mac:WindowDidUpdateAlpha\",\n\t\tWindowDidUpdateCollectionBehavior: \"mac:WindowDidUpdateCollectionBehavior\",\n\t\tWindowDidUpdateCollectionProperties: \"mac:WindowDidUpdateCollectionProperties\",\n\t\tWindowDidUpdateShadow: \"mac:WindowDidUpdateShadow\",\n\t\tWindowDidUpdateTitle: \"mac:WindowDidUpdateTitle\",\n\t\tWindowDidUpdateToolbar: \"mac:WindowDidUpdateToolbar\",\n\t\tWindowShouldClose: \"mac:WindowShouldClose!\",\n\t\tWindowWillBecomeKey: \"mac:WindowWillBecomeKey\",\n\t\tWindowWillBecomeMain: \"mac:WindowWillBecomeMain\",\n\t\tWindowWillBeginSheet: \"mac:WindowWillBeginSheet\",\n\t\tWindowWillChangeOrderingMode: \"mac:WindowWillChangeOrderingMode\",\n\t\tWindowWillClose: \"mac:WindowWillClose\",\n\t\tWindowWillDeminiaturize: \"mac:WindowWillDeminiaturize\",\n\t\tWindowWillEnterFullScreen: \"mac:WindowWillEnterFullScreen\",\n\t\tWindowWillEnterVersionBrowser: \"mac:WindowWillEnterVersionBrowser\",\n\t\tWindowWillExitFullScreen: \"mac:WindowWillExitFullScreen\",\n\t\tWindowWillExitVersionBrowser: \"mac:WindowWillExitVersionBrowser\",\n\t\tWindowWillFocus: \"mac:WindowWillFocus\",\n\t\tWindowWillMiniaturize: \"mac:WindowWillMiniaturize\",\n\t\tWindowWillMove: \"mac:WindowWillMove\",\n\t\tWindowWillOrderOffScreen: \"mac:WindowWillOrderOffScreen\",\n\t\tWindowWillOrderOnScreen: \"mac:WindowWillOrderOnScreen\",\n\t\tWindowWillResignMain: \"mac:WindowWillResignMain\",\n\t\tWindowWillResize: \"mac:WindowWillResize\",\n\t\tWindowWillUnfocus: \"mac:WindowWillUnfocus\",\n\t\tWindowWillUpdate: \"mac:WindowWillUpdate\",\n\t\tWindowWillUpdateAlpha: \"mac:WindowWillUpdateAlpha\",\n\t\tWindowWillUpdateCollectionBehavior: \"mac:WindowWillUpdateCollectionBehavior\",\n\t\tWindowWillUpdateCollectionProperties: \"mac:WindowWillUpdateCollectionProperties\",\n\t\tWindowWillUpdateShadow: \"mac:WindowWillUpdateShadow\",\n\t\tWindowWillUpdateTitle: \"mac:WindowWillUpdateTitle\",\n\t\tWindowWillUpdateToolbar: \"mac:WindowWillUpdateToolbar\",\n\t\tWindowWillUpdateVisibility: \"mac:WindowWillUpdateVisibility\",\n\t\tWindowWillUseStandardFrame: \"mac:WindowWillUseStandardFrame\",\n\t\tMenuWillOpen: \"mac:MenuWillOpen\",\n\t\tMenuDidOpen: \"mac:MenuDidOpen\",\n\t\tMenuDidClose: \"mac:MenuDidClose\",\n\t\tMenuWillSendAction: \"mac:MenuWillSendAction\",\n\t\tMenuDidSendAction: \"mac:MenuDidSendAction\",\n\t\tMenuWillHighlightItem: \"mac:MenuWillHighlightItem\",\n\t\tMenuDidHighlightItem: \"mac:MenuDidHighlightItem\",\n\t\tMenuWillDisplayItem: \"mac:MenuWillDisplayItem\",\n\t\tMenuDidDisplayItem: \"mac:MenuDidDisplayItem\",\n\t\tMenuWillAddItem: \"mac:MenuWillAddItem\",\n\t\tMenuDidAddItem: \"mac:MenuDidAddItem\",\n\t\tMenuWillRemoveItem: \"mac:MenuWillRemoveItem\",\n\t\tMenuDidRemoveItem: \"mac:MenuDidRemoveItem\",\n\t\tMenuWillBeginTracking: \"mac:MenuWillBeginTracking\",\n\t\tMenuDidBeginTracking: \"mac:MenuDidBeginTracking\",\n\t\tMenuWillEndTracking: \"mac:MenuWillEndTracking\",\n\t\tMenuDidEndTracking: \"mac:MenuDidEndTracking\",\n\t\tMenuWillUpdate: \"mac:MenuWillUpdate\",\n\t\tMenuDidUpdate: \"mac:MenuDidUpdate\",\n\t\tMenuWillPopUp: \"mac:MenuWillPopUp\",\n\t\tMenuDidPopUp: \"mac:MenuDidPopUp\",\n\t\tMenuWillSendActionToItem: \"mac:MenuWillSendActionToItem\",\n\t\tMenuDidSendActionToItem: \"mac:MenuDidSendActionToItem\",\n\t\tWebViewDidStartProvisionalNavigation: \"mac:WebViewDidStartProvisionalNavigation\",\n\t\tWebViewDidReceiveServerRedirectForProvisionalNavigation: \"mac:WebViewDidReceiveServerRedirectForProvisionalNavigation\",\n\t\tWebViewDidFinishNavigation: \"mac:WebViewDidFinishNavigation\",\n\t\tWebViewDidCommitNavigation: \"mac:WebViewDidCommitNavigation\",\n\t\tWindowFileDraggingEntered: \"mac:WindowFileDraggingEntered\",\n\t\tWindowFileDraggingPerformed: \"mac:WindowFileDraggingPerformed\",\n\t\tWindowFileDraggingExited: \"mac:WindowFileDraggingExited\",\n\t\tWindowShow: \"mac:WindowShow\",\n\t\tWindowHide: \"mac:WindowHide\",\n\t},\n\tLinux: {\n\t\tSystemThemeChanged: \"linux:SystemThemeChanged\",\n\t\tWindowLoadChanged: \"linux:WindowLoadChanged\",\n\t\tWindowDeleteEvent: \"linux:WindowDeleteEvent\",\n\t\tWindowDidMove: \"linux:WindowDidMove\",\n\t\tWindowDidResize: \"linux:WindowDidResize\",\n\t\tWindowFocusIn: \"linux:WindowFocusIn\",\n\t\tWindowFocusOut: \"linux:WindowFocusOut\",\n\t\tApplicationStartup: \"linux:ApplicationStartup\",\n\t},\n\tCommon: {\n\t\tApplicationStarted: \"common:ApplicationStarted\",\n\t\tWindowMaximise: \"common:WindowMaximise\",\n\t\tWindowUnMaximise: \"common:WindowUnMaximise\",\n\t\tWindowFullscreen: \"common:WindowFullscreen\",\n\t\tWindowUnFullscreen: \"common:WindowUnFullscreen\",\n\t\tWindowRestore: \"common:WindowRestore\",\n\t\tWindowMinimise: \"common:WindowMinimise\",\n\t\tWindowUnMinimise: \"common:WindowUnMinimise\",\n\t\tWindowClosing: \"common:WindowClosing\",\n\t\tWindowZoom: \"common:WindowZoom\",\n\t\tWindowZoomIn: \"common:WindowZoomIn\",\n\t\tWindowZoomOut: \"common:WindowZoomOut\",\n\t\tWindowZoomReset: \"common:WindowZoomReset\",\n\t\tWindowFocus: \"common:WindowFocus\",\n\t\tWindowLostFocus: \"common:WindowLostFocus\",\n\t\tWindowShow: \"common:WindowShow\",\n\t\tWindowHide: \"common:WindowHide\",\n\t\tWindowDPIChanged: \"common:WindowDPIChanged\",\n\t\tWindowFilesDropped: \"common:WindowFilesDropped\",\n\t\tWindowRuntimeReady: \"common:WindowRuntimeReady\",\n\t\tThemeChanged: \"common:ThemeChanged\",\n\t\tWindowDidMove: \"common:WindowDidMove\",\n\t\tWindowDidResize: \"common:WindowDidResize\",\n\t\tApplicationOpenedWithFile: \"common:ApplicationOpenedWithFile\",\n\t},\n};\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\n/**\n * @typedef {Object} Size\n * @property {number} Width - The width.\n * @property {number} Height - The height.\n */\n\n/**\n * @typedef {Object} Rect\n * @property {number} X - The X coordinate of the origin.\n * @property {number} Y - The Y coordinate of the origin.\n * @property {number} Width - The width of the rectangle.\n * @property {number} Height - The height of the rectangle.\n */\n\n/**\n * @typedef {Object} Screen\n * @property {string} ID - Unique identifier for the screen.\n * @property {string} Name - Human readable name of the screen.\n * @property {number} ScaleFactor - The scale factor of the screen (DPI/96). 1 = standard DPI, 2 = HiDPI (Retina), etc.\n * @property {number} X - The X coordinate of the screen.\n * @property {number} Y - The Y coordinate of the screen.\n * @property {Size} Size - Contains the width and height of the screen.\n * @property {Rect} Bounds - Contains the bounds of the screen in terms of X, Y, Width, and Height.\n * @property {Rect} PhysicalBounds - Contains the physical bounds of the screen in terms of X, Y, Width, and Height (before scaling).\n * @property {Rect} WorkArea - Contains the area of the screen that is actually usable (excluding taskbar and other system UI).\n * @property {Rect} PhysicalWorkArea - Contains the physical WorkArea of the screen (before scaling).\n * @property {boolean} IsPrimary - True if this is the primary monitor selected by the user in the operating system.\n * @property {number} Rotation - The rotation of the screen.\n */\n\nimport { newRuntimeCallerWithID, objectNames } from \"./runtime\";\nconst call = newRuntimeCallerWithID(objectNames.Screens, \"\");\n\nconst getAll = 0;\nconst getPrimary = 1;\nconst getCurrent = 2;\n\n/**\n * Gets all screens.\n * @returns {Promise} A promise that resolves to an array of Screen objects.\n */\nexport function GetAll() {\n return call(getAll);\n}\n/**\n * Gets the primary screen.\n * @returns {Promise} A promise that resolves to the primary screen.\n */\nexport function GetPrimary() {\n return call(getPrimary);\n}\n/**\n * Gets the current active screen.\n *\n * @returns {Promise} A promise that resolves with the current active screen.\n */\nexport function GetCurrent() {\n return call(getCurrent);\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/* jshint esversion: 9 */\n\n// Import screen jsdoc definition from ./screens.js\n/**\n * @typedef {import(\"./screens\").Screen} Screen\n */\n\n\n/**\n * A record describing the position of a window.\n *\n * @typedef {Object} Position\n * @property {number} x - The horizontal position of the window\n * @property {number} y - The vertical position of the window\n */\n\n\n/**\n * A record describing the size of a window.\n *\n * @typedef {Object} Size\n * @property {number} width - The width of the window\n * @property {number} height - The height of the window\n */\n\n\nimport {newRuntimeCallerWithID, objectNames} from \"./runtime\";\n\nconst PositionMethod = 0;\nconst CenterMethod = 1;\nconst CloseMethod = 2;\nconst DisableSizeConstraintsMethod = 3;\nconst EnableSizeConstraintsMethod = 4;\nconst FocusMethod = 5;\nconst ForceReloadMethod = 6;\nconst FullscreenMethod = 7;\nconst GetScreenMethod = 8;\nconst GetZoomMethod = 9;\nconst HeightMethod = 10;\nconst HideMethod = 11;\nconst IsFocusedMethod = 12;\nconst IsFullscreenMethod = 13;\nconst IsMaximisedMethod = 14;\nconst IsMinimisedMethod = 15;\nconst MaximiseMethod = 16;\nconst MinimiseMethod = 17;\nconst NameMethod = 18;\nconst OpenDevToolsMethod = 19;\nconst RelativePositionMethod = 20;\nconst ReloadMethod = 21;\nconst ResizableMethod = 22;\nconst RestoreMethod = 23;\nconst SetPositionMethod = 24;\nconst SetAlwaysOnTopMethod = 25;\nconst SetBackgroundColourMethod = 26;\nconst SetFramelessMethod = 27;\nconst SetFullscreenButtonEnabledMethod = 28;\nconst SetMaxSizeMethod = 29;\nconst SetMinSizeMethod = 30;\nconst SetRelativePositionMethod = 31;\nconst SetResizableMethod = 32;\nconst SetSizeMethod = 33;\nconst SetTitleMethod = 34;\nconst SetZoomMethod = 35;\nconst ShowMethod = 36;\nconst SizeMethod = 37;\nconst ToggleFullscreenMethod = 38;\nconst ToggleMaximiseMethod = 39;\nconst UnFullscreenMethod = 40;\nconst UnMaximiseMethod = 41;\nconst UnMinimiseMethod = 42;\nconst WidthMethod = 43;\nconst ZoomMethod = 44;\nconst ZoomInMethod = 45;\nconst ZoomOutMethod = 46;\nconst ZoomResetMethod = 47;\n\n/**\n * @type {symbol}\n */\nconst caller = Symbol();\n\nexport class Window {\n /**\n * Initialises a window object with the specified name.\n *\n * @private\n * @param {string} name - The name of the target window.\n */\n constructor(name = '') {\n /**\n * @private\n * @name {@link caller}\n * @type {(...args: any[]) => any}\n */\n this[caller] = newRuntimeCallerWithID(objectNames.Window, name)\n\n // bind instance method to make them easily usable in event handlers\n for (const method of Object.getOwnPropertyNames(Window.prototype)) {\n if (\n method !== \"constructor\"\n && typeof this[method] === \"function\"\n ) {\n this[method] = this[method].bind(this);\n }\n }\n }\n\n /**\n * Gets the specified window.\n *\n * @public\n * @param {string} name - The name of the window to get.\n * @return {Window} - The corresponding window object.\n */\n Get(name) {\n return new Window(name);\n }\n\n /**\n * Returns the absolute position of the window.\n *\n * @public\n * @return {Promise} - The current absolute position of the window.\n */\n Position() {\n return this[caller](PositionMethod);\n }\n\n /**\n * Centers the window on the screen.\n *\n * @public\n * @return {Promise}\n */\n Center() {\n return this[caller](CenterMethod);\n }\n\n /**\n * Closes the window.\n *\n * @public\n * @return {Promise}\n */\n Close() {\n return this[caller](CloseMethod);\n }\n\n /**\n * Disables min/max size constraints.\n *\n * @public\n * @return {Promise}\n */\n DisableSizeConstraints() {\n return this[caller](DisableSizeConstraintsMethod);\n }\n\n /**\n * Enables min/max size constraints.\n *\n * @public\n * @return {Promise}\n */\n EnableSizeConstraints() {\n return this[caller](EnableSizeConstraintsMethod);\n }\n\n /**\n * Focuses the window.\n *\n * @public\n * @return {Promise}\n */\n Focus() {\n return this[caller](FocusMethod);\n }\n\n /**\n * Forces the window to reload the page assets.\n *\n * @public\n * @return {Promise}\n */\n ForceReload() {\n return this[caller](ForceReloadMethod);\n }\n\n /**\n * Doc.\n *\n * @public\n * @return {Promise}\n */\n Fullscreen() {\n return this[caller](FullscreenMethod);\n }\n\n /**\n * Returns the screen that the window is on.\n *\n * @public\n * @return {Promise} - The screen the window is currently on\n */\n GetScreen() {\n return this[caller](GetScreenMethod);\n }\n\n /**\n * Returns the current zoom level of the window.\n *\n * @public\n * @return {Promise} - The current zoom level\n */\n GetZoom() {\n return this[caller](GetZoomMethod);\n }\n\n /**\n * Returns the height of the window.\n *\n * @public\n * @return {Promise} - The current height of the window\n */\n Height() {\n return this[caller](HeightMethod);\n }\n\n /**\n * Hides the window.\n *\n * @public\n * @return {Promise}\n */\n Hide() {\n return this[caller](HideMethod);\n }\n\n /**\n * Returns true if the window is focused.\n *\n * @public\n * @return {Promise} - Whether the window is currently focused\n */\n IsFocused() {\n return this[caller](IsFocusedMethod);\n }\n\n /**\n * Returns true if the window is fullscreen.\n *\n * @public\n * @return {Promise} - Whether the window is currently fullscreen\n */\n IsFullscreen() {\n return this[caller](IsFullscreenMethod);\n }\n\n /**\n * Returns true if the window is maximised.\n *\n * @public\n * @return {Promise} - Whether the window is currently maximised\n */\n IsMaximised() {\n return this[caller](IsMaximisedMethod);\n }\n\n /**\n * Returns true if the window is minimised.\n *\n * @public\n * @return {Promise} - Whether the window is currently minimised\n */\n IsMinimised() {\n return this[caller](IsMinimisedMethod);\n }\n\n /**\n * Maximises the window.\n *\n * @public\n * @return {Promise}\n */\n Maximise() {\n return this[caller](MaximiseMethod);\n }\n\n /**\n * Minimises the window.\n *\n * @public\n * @return {Promise}\n */\n Minimise() {\n return this[caller](MinimiseMethod);\n }\n\n /**\n * Returns the name of the window.\n *\n * @public\n * @return {Promise} - The name of the window\n */\n Name() {\n return this[caller](NameMethod);\n }\n\n /**\n * Opens the development tools pane.\n *\n * @public\n * @return {Promise}\n */\n OpenDevTools() {\n return this[caller](OpenDevToolsMethod);\n }\n\n /**\n * Returns the relative position of the window to the screen.\n *\n * @public\n * @return {Promise} - The current relative position of the window\n */\n RelativePosition() {\n return this[caller](RelativePositionMethod);\n }\n\n /**\n * Reloads the page assets.\n *\n * @public\n * @return {Promise}\n */\n Reload() {\n return this[caller](ReloadMethod);\n }\n\n /**\n * Returns true if the window is resizable.\n *\n * @public\n * @return {Promise} - Whether the window is currently resizable\n */\n Resizable() {\n return this[caller](ResizableMethod);\n }\n\n /**\n * Restores the window to its previous state if it was previously minimised, maximised or fullscreen.\n *\n * @public\n * @return {Promise}\n */\n Restore() {\n return this[caller](RestoreMethod);\n }\n\n /**\n * Sets the absolute position of the window.\n *\n * @public\n * @param {number} x - The desired horizontal absolute position of the window\n * @param {number} y - The desired vertical absolute position of the window\n * @return {Promise}\n */\n SetPosition(x, y) {\n return this[caller](SetPositionMethod, { x, y });\n }\n\n /**\n * Sets the window to be always on top.\n *\n * @public\n * @param {boolean} alwaysOnTop - Whether the window should stay on top\n * @return {Promise}\n */\n SetAlwaysOnTop(alwaysOnTop) {\n return this[caller](SetAlwaysOnTopMethod, { alwaysOnTop });\n }\n\n /**\n * Sets the background colour of the window.\n *\n * @public\n * @param {number} r - The desired red component of the window background\n * @param {number} g - The desired green component of the window background\n * @param {number} b - The desired blue component of the window background\n * @param {number} a - The desired alpha component of the window background\n * @return {Promise}\n */\n SetBackgroundColour(r, g, b, a) {\n return this[caller](SetBackgroundColourMethod, { r, g, b, a });\n }\n\n /**\n * Removes the window frame and title bar.\n *\n * @public\n * @param {boolean} frameless - Whether the window should be frameless\n * @return {Promise}\n */\n SetFrameless(frameless) {\n return this[caller](SetFramelessMethod, { frameless });\n }\n\n /**\n * Disables the system fullscreen button.\n *\n * @public\n * @param {boolean} enabled - Whether the fullscreen button should be enabled\n * @return {Promise}\n */\n SetFullscreenButtonEnabled(enabled) {\n return this[caller](SetFullscreenButtonEnabledMethod, { enabled });\n }\n\n /**\n * Sets the maximum size of the window.\n *\n * @public\n * @param {number} width - The desired maximum width of the window\n * @param {number} height - The desired maximum height of the window\n * @return {Promise}\n */\n SetMaxSize(width, height) {\n return this[caller](SetMaxSizeMethod, { width, height });\n }\n\n /**\n * Sets the minimum size of the window.\n *\n * @public\n * @param {number} width - The desired minimum width of the window\n * @param {number} height - The desired minimum height of the window\n * @return {Promise}\n */\n SetMinSize(width, height) {\n return this[caller](SetMinSizeMethod, { width, height });\n }\n\n /**\n * Sets the relative position of the window to the screen.\n *\n * @public\n * @param {number} x - The desired horizontal relative position of the window\n * @param {number} y - The desired vertical relative position of the window\n * @return {Promise}\n */\n SetRelativePosition(x, y) {\n return this[caller](SetRelativePositionMethod, { x, y });\n }\n\n /**\n * Sets whether the window is resizable.\n *\n * @public\n * @param {boolean} resizable - Whether the window should be resizable\n * @return {Promise}\n */\n SetResizable(resizable) {\n return this[caller](SetResizableMethod, { resizable });\n }\n\n /**\n * Sets the size of the window.\n *\n * @public\n * @param {number} width - The desired width of the window\n * @param {number} height - The desired height of the window\n * @return {Promise}\n */\n SetSize(width, height) {\n return this[caller](SetSizeMethod, { width, height });\n }\n\n /**\n * Sets the title of the window.\n *\n * @public\n * @param {string} title - The desired title of the window\n * @return {Promise}\n */\n SetTitle(title) {\n return this[caller](SetTitleMethod, { title });\n }\n\n /**\n * Sets the zoom level of the window.\n *\n * @public\n * @param {number} zoom - The desired zoom level\n * @return {Promise}\n */\n SetZoom(zoom) {\n return this[caller](SetZoomMethod, { zoom });\n }\n\n /**\n * Shows the window.\n *\n * @public\n * @return {Promise}\n */\n Show() {\n return this[caller](ShowMethod);\n }\n\n /**\n * Returns the size of the window.\n *\n * @public\n * @return {Promise} - The current size of the window\n */\n Size() {\n return this[caller](SizeMethod);\n }\n\n /**\n * Toggles the window between fullscreen and normal.\n *\n * @public\n * @return {Promise}\n */\n ToggleFullscreen() {\n return this[caller](ToggleFullscreenMethod);\n }\n\n /**\n * Toggles the window between maximised and normal.\n *\n * @public\n * @return {Promise}\n */\n ToggleMaximise() {\n return this[caller](ToggleMaximiseMethod);\n }\n\n /**\n * Un-fullscreens the window.\n *\n * @public\n * @return {Promise}\n */\n UnFullscreen() {\n return this[caller](UnFullscreenMethod);\n }\n\n /**\n * Un-maximises the window.\n *\n * @public\n * @return {Promise}\n */\n UnMaximise() {\n return this[caller](UnMaximiseMethod);\n }\n\n /**\n * Un-minimises the window.\n *\n * @public\n * @return {Promise}\n */\n UnMinimise() {\n return this[caller](UnMinimiseMethod);\n }\n\n /**\n * Returns the width of the window.\n *\n * @public\n * @return {Promise} - The current width of the window\n */\n Width() {\n return this[caller](WidthMethod);\n }\n\n /**\n * Zooms the window.\n *\n * @public\n * @return {Promise}\n */\n Zoom() {\n return this[caller](ZoomMethod);\n }\n\n /**\n * Increases the zoom level of the webview content.\n *\n * @public\n * @return {Promise}\n */\n ZoomIn() {\n return this[caller](ZoomInMethod);\n }\n\n /**\n * Decreases the zoom level of the webview content.\n *\n * @public\n * @return {Promise}\n */\n ZoomOut() {\n return this[caller](ZoomOutMethod);\n }\n\n /**\n * Resets the zoom level of the webview content.\n *\n * @public\n * @return {Promise}\n */\n ZoomReset() {\n return this[caller](ZoomResetMethod);\n }\n}\n\n/**\n * The window within which the script is running.\n *\n * @type {Window}\n */\nconst thisWindow = new Window('');\n\nexport default thisWindow;\n", "/*\n _ __ _ __\n| | / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\nimport {OpenURL} from \"./browser\";\nimport {Question} from \"./dialogs\";\nimport {Emit, WailsEvent} from \"./events\";\nimport {canAbortListeners, whenReady} from \"./utils\";\nimport Window from \"./window\";\n\n/**\n * Sends an event with the given name and optional data.\n *\n * @param {string} eventName - The name of the event to send.\n * @param {any} [data=null] - Optional data to send along with the event.\n *\n * @return {void}\n */\nfunction sendEvent(eventName, data=null) {\n Emit(new WailsEvent(eventName, data));\n}\n\n/**\n * Calls a method on a specified window.\n * @param {string} windowName - The name of the window to call the method on.\n * @param {string} methodName - The name of the method to call.\n */\nfunction callWindowMethod(windowName, methodName) {\n const targetWindow = Window.Get(windowName);\n const method = targetWindow[methodName];\n\n if (typeof method !== \"function\") {\n console.error(`Window method '${methodName}' not found`);\n return;\n }\n\n try {\n method.call(targetWindow);\n } catch (e) {\n console.error(`Error calling window method '${methodName}': `, e);\n }\n}\n\n/**\n * Responds to a triggering event by running appropriate WML actions for the current target\n *\n * @param {Event} ev\n * @return {void}\n */\nfunction onWMLTriggered(ev) {\n const element = ev.currentTarget;\n\n function runEffect(choice = \"Yes\") {\n if (choice !== \"Yes\")\n return;\n\n const eventType = element.getAttribute('wml-event');\n const targetWindow = element.getAttribute('wml-target-window') || \"\";\n const windowMethod = element.getAttribute('wml-window');\n const url = element.getAttribute('wml-openurl');\n\n if (eventType !== null)\n sendEvent(eventType);\n if (windowMethod !== null)\n callWindowMethod(targetWindow, windowMethod);\n if (url !== null)\n void OpenURL(url);\n }\n\n const confirm = element.getAttribute('wml-confirm');\n\n if (confirm) {\n Question({\n Title: \"Confirm\",\n Message: confirm,\n Detached: false,\n Buttons: [\n { Label: \"Yes\" },\n { Label: \"No\", IsDefault: true }\n ]\n }).then(runEffect);\n } else {\n runEffect();\n }\n}\n\n/**\n * @type {symbol}\n */\nconst controller = Symbol();\n\n/**\n * AbortControllerRegistry does not actually remember active event listeners: instead\n * it ties them to an AbortSignal and uses an AbortController to remove them all at once.\n */\nclass AbortControllerRegistry {\n constructor() {\n /**\n * Stores the AbortController that can be used to remove all currently active listeners.\n *\n * @private\n * @name {@link controller}\n * @member {AbortController}\n */\n this[controller] = new AbortController();\n }\n\n /**\n * Returns an options object for addEventListener that ties the listener\n * to the AbortSignal from the current AbortController.\n *\n * @param {HTMLElement} element An HTML element\n * @param {string[]} triggers The list of active WML trigger events for the specified elements\n * @returns {AddEventListenerOptions}\n */\n set(element, triggers) {\n return { signal: this[controller].signal };\n }\n\n /**\n * Removes all registered event listeners.\n *\n * @returns {void}\n */\n reset() {\n this[controller].abort();\n this[controller] = new AbortController();\n }\n}\n\n/**\n * @type {symbol}\n */\nconst triggerMap = Symbol();\n\n/**\n * @type {symbol}\n */\nconst elementCount = Symbol();\n\n/**\n * WeakMapRegistry maps active trigger events to each DOM element through a WeakMap.\n * This ensures that the mapping remains private to this module, while still allowing garbage\n * collection of the involved elements.\n */\nclass WeakMapRegistry {\n constructor() {\n /**\n * Stores the current element-to-trigger mapping.\n *\n * @private\n * @name {@link triggerMap}\n * @member {WeakMap}\n */\n this[triggerMap] = new WeakMap();\n\n /**\n * Counts the number of elements with active WML triggers.\n *\n * @private\n * @name {@link elementCount}\n * @member {number}\n */\n this[elementCount] = 0;\n }\n\n /**\n * Sets the active triggers for the specified element.\n *\n * @param {HTMLElement} element An HTML element\n * @param {string[]} triggers The list of active WML trigger events for the specified element\n * @returns {AddEventListenerOptions}\n */\n set(element, triggers) {\n this[elementCount] += !this[triggerMap].has(element);\n this[triggerMap].set(element, triggers);\n return {};\n }\n\n /**\n * Removes all registered event listeners.\n *\n * @returns {void}\n */\n reset() {\n if (this[elementCount] <= 0)\n return;\n\n for (const element of document.body.querySelectorAll('*')) {\n if (this[elementCount] <= 0)\n break;\n\n const triggers = this[triggerMap].get(element);\n this[elementCount] -= (typeof triggers !== \"undefined\");\n\n for (const trigger of triggers || [])\n element.removeEventListener(trigger, onWMLTriggered);\n }\n\n this[triggerMap] = new WeakMap();\n this[elementCount] = 0;\n }\n}\n\nconst triggerRegistry = canAbortListeners() ? new AbortControllerRegistry() : new WeakMapRegistry();\n\n/**\n * Adds event listeners to the specified element.\n *\n * @param {HTMLElement} element\n * @return {void}\n */\nfunction addWMLListeners(element) {\n const triggerRegExp = /\\S+/g;\n const triggerAttr = (element.getAttribute('wml-trigger') || \"click\");\n const triggers = [];\n\n let match;\n while ((match = triggerRegExp.exec(triggerAttr)) !== null)\n triggers.push(match[0]);\n\n const options = triggerRegistry.set(element, triggers);\n for (const trigger of triggers)\n element.addEventListener(trigger, onWMLTriggered, options);\n}\n\n/**\n * Schedules an automatic reload of WML to be performed as soon as the document is fully loaded.\n *\n * @return {void}\n */\nexport function Enable() {\n whenReady(Reload);\n}\n\n/**\n * Reloads the WML page by adding necessary event listeners and browser listeners.\n *\n * @return {void}\n */\nexport function Reload() {\n triggerRegistry.reset();\n document.body.querySelectorAll('[wml-event], [wml-window], [wml-openurl]').forEach(addWMLListeners);\n}\n", "/*\n _ __ _ __\n| | / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n/**\n * Logs a message to the console with custom formatting.\n * @param {string} message - The message to be logged.\n * @return {void}\n */\nexport function debugLog(message) {\n // eslint-disable-next-line\n console.log(\n '%c wails3 %c ' + message + ' ',\n 'background: #aa0000; color: #fff; border-radius: 3px 0px 0px 3px; padding: 1px; font-size: 0.7rem',\n 'background: #009900; color: #fff; border-radius: 0px 3px 3px 0px; padding: 1px; font-size: 0.7rem'\n );\n}\n\n/**\n * Checks whether the browser supports removing listeners by triggering an AbortSignal\n * (see https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#signal)\n *\n * @return {boolean}\n */\nexport function canAbortListeners() {\n if (!EventTarget || !AbortSignal || !AbortController)\n return false;\n\n let result = true;\n\n const target = new EventTarget();\n const controller = new AbortController();\n target.addEventListener('test', () => { result = false; }, { signal: controller.signal });\n controller.abort();\n target.dispatchEvent(new CustomEvent('test'));\n\n return result;\n}\n\n/***\n This technique for proper load detection is taken from HTMX:\n\n BSD 2-Clause License\n\n Copyright (c) 2020, Big Sky Software\n All rights reserved.\n\n Redistribution and use in source and binary forms, with or without\n modification, are permitted provided that the following conditions are met:\n\n 1. Redistributions of source code must retain the above copyright notice, this\n list of conditions and the following disclaimer.\n\n 2. Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n\n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\n FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n ***/\n\nlet isReady = false;\ndocument.addEventListener('DOMContentLoaded', () => isReady = true);\n\nexport function whenReady(callback) {\n if (isReady || document.readyState === 'complete') {\n callback();\n } else {\n document.addEventListener('DOMContentLoaded', callback);\n }\n}\n", "/*\n _\t __\t _ __\n| |\t / /___ _(_) /____\n| | /| / / __ `/ / / ___/\n| |/ |/ / /_/ / / (__ )\n|__/|__/\\__,_/_/_/____/\nThe electron alternative for Go\n(c) Lea Anthony 2019-present\n*/\n\n// Setup\nwindow._wails = window._wails || {};\n\nimport \"./contextmenu\";\nimport \"./drag\";\n\n// Re-export public API\nimport * as Application from \"./application\";\nimport * as Browser from \"./browser\";\nimport * as Call from \"./calls\";\nimport * as Clipboard from \"./clipboard\";\nimport * as Create from \"./create\";\nimport * as Dialogs from \"./dialogs\";\nimport * as Events from \"./events\";\nimport * as Flags from \"./flags\";\nimport * as Screens from \"./screens\";\nimport * as System from \"./system\";\nimport Window from \"./window\";\nimport * as WML from \"./wml\";\n\nexport {\n Application,\n Browser,\n Call,\n Clipboard,\n Create,\n Dialogs,\n Events,\n Flags,\n Screens,\n System,\n Window,\n WML\n};\n\nlet initialised = false;\nexport function init() {\n window._wails.invoke = System.invoke;\n System.invoke(\"wails:runtime:ready\");\n initialised = true;\n}\n\nwindow.addEventListener(\"load\", () => {\n if (!initialised) {\n init();\n }\n});\n\n// Notify backend\n\n"], + "mappings": ";;;;;AAAA,IAAI,cACF;AAWK,IAAI,SAAS,CAAC,OAAO,OAAO;AACjC,MAAI,KAAK;AACT,MAAI,IAAI,OAAO;AACf,SAAO,KAAK;AACV,UAAM,YAAa,KAAK,OAAO,IAAI,KAAM,CAAC;AAAA,EAC5C;AACA,SAAO;AACT;;;ACNA,IAAM,aAAa,OAAO,SAAS,SAAS;AAGrC,IAAM,cAAc;AAAA,EACvB,MAAM;AAAA,EACN,WAAW;AAAA,EACX,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,YAAY;AAChB;AACO,IAAI,WAAW,OAAO;AAsBtB,SAAS,uBAAuB,QAAQ,YAAY;AACvD,SAAO,SAAU,QAAQ,OAAK,MAAM;AAChC,WAAO,kBAAkB,QAAQ,QAAQ,YAAY,IAAI;AAAA,EAC7D;AACJ;AAqCA,SAAS,kBAAkB,UAAU,QAAQ,YAAY,MAAM;AAC3D,MAAI,MAAM,IAAI,IAAI,UAAU;AAC5B,MAAI,aAAa,OAAO,UAAU,QAAQ;AAC1C,MAAI,aAAa,OAAO,UAAU,MAAM;AACxC,MAAI,eAAe;AAAA,IACf,SAAS,CAAC;AAAA,EACd;AACA,MAAI,YAAY;AACZ,iBAAa,QAAQ,qBAAqB,IAAI;AAAA,EAClD;AACA,MAAI,MAAM;AACN,QAAI,aAAa,OAAO,QAAQ,KAAK,UAAU,IAAI,CAAC;AAAA,EACxD;AACA,eAAa,QAAQ,mBAAmB,IAAI;AAC5C,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACpC,UAAM,KAAK,YAAY,EAClB,KAAK,cAAY;AACd,UAAI,SAAS,IAAI;AAEb,YAAI,SAAS,QAAQ,IAAI,cAAc,KAAK,SAAS,QAAQ,IAAI,cAAc,EAAE,QAAQ,kBAAkB,MAAM,IAAI;AACjH,iBAAO,SAAS,KAAK;AAAA,QACzB,OAAO;AACH,iBAAO,SAAS,KAAK;AAAA,QACzB;AAAA,MACJ;AACA,aAAO,MAAM,SAAS,UAAU,CAAC;AAAA,IACrC,CAAC,EACA,KAAK,UAAQ,QAAQ,IAAI,CAAC,EAC1B,MAAM,WAAS,OAAO,KAAK,CAAC;AAAA,EACrC,CAAC;AACL;;;AC1HA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA,IAAI,OAAO,uBAAuB,YAAY,QAAQ,EAAE;AACxD,IAAM,mBAAmB;AACzB,IAAM,cAAc;AAEpB,IAAM,WAAW,MAAM;AAjBvB;AAkBI,MAAI;AACA,SAAG,sCAAQ,WAAR,mBAAgB,SAAS;AACxB,aAAO,CAAC,QAAQ,OAAO,OAAO,QAAQ,YAAY,GAAG;AAAA,IACzD;AACA,SAAG,4CAAQ,WAAR,mBAAgB,oBAAhB,mBAAiC,UAAU;AAC1C,aAAO,CAAC,QAAQ,OAAO,OAAO,gBAAgB,SAAS,YAAY,GAAG;AAAA,IAC1E;AAAA,EACJ,SAAQ,GAAG;AACP,YAAQ;AAAA,MAAK;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,IAAwD;AAAA,EAChE;AACA,SAAO;AACX,GAAG;AAEI,SAAS,OAAO,KAAK;AACxB,MAAI,CAAC,QAAS;AACd,SAAO,QAAQ,GAAG;AACtB;AAOO,SAAS,aAAa;AACzB,SAAO,KAAK,gBAAgB;AAChC;AASO,SAAS,eAAe;AAC3B,MAAI,WAAW,MAAM,qBAAqB;AAC1C,SAAO,SAAS,KAAK;AACzB;AAwBO,SAAS,cAAc;AAC1B,SAAO,KAAK,WAAW;AAC3B;AAOO,SAAS,YAAY;AACxB,SAAO,OAAO,OAAO,YAAY,OAAO;AAC5C;AAOO,SAAS,UAAU;AACtB,SAAO,OAAO,OAAO,YAAY,OAAO;AAC5C;AAOO,SAAS,QAAQ;AACpB,SAAO,OAAO,OAAO,YAAY,OAAO;AAC5C;AAMO,SAAS,UAAU;AACtB,SAAO,OAAO,OAAO,YAAY,SAAS;AAC9C;AAOO,SAAS,QAAQ;AACpB,SAAO,OAAO,OAAO,YAAY,SAAS;AAC9C;AAOO,SAAS,UAAU;AACtB,SAAO,OAAO,OAAO,YAAY,SAAS;AAC9C;AAEO,SAAS,UAAU;AACtB,SAAO,OAAO,OAAO,YAAY,UAAU;AAC/C;;;AC7HA,OAAO,iBAAiB,eAAe,kBAAkB;AAEzD,IAAMA,QAAO,uBAAuB,YAAY,aAAa,EAAE;AAC/D,IAAM,kBAAkB;AAExB,SAAS,gBAAgB,IAAI,GAAG,GAAG,MAAM;AACrC,OAAKA,MAAK,iBAAiB,EAAC,IAAI,GAAG,GAAG,KAAI,CAAC;AAC/C;AAEA,SAAS,mBAAmB,OAAO;AAE/B,MAAI,UAAU,MAAM;AACpB,MAAI,oBAAoB,OAAO,iBAAiB,OAAO,EAAE,iBAAiB,sBAAsB;AAChG,sBAAoB,oBAAoB,kBAAkB,KAAK,IAAI;AACnE,MAAI,mBAAmB;AACnB,UAAM,eAAe;AACrB,QAAI,wBAAwB,OAAO,iBAAiB,OAAO,EAAE,iBAAiB,2BAA2B;AACzG,oBAAgB,mBAAmB,MAAM,SAAS,MAAM,SAAS,qBAAqB;AACtF;AAAA,EACJ;AAEA,4BAA0B,KAAK;AACnC;AAUA,SAAS,0BAA0B,OAAO;AAGtC,MAAI,QAAQ,GAAG;AACX;AAAA,EACJ;AAGA,QAAM,UAAU,MAAM;AACtB,QAAM,gBAAgB,OAAO,iBAAiB,OAAO;AACrD,QAAM,2BAA2B,cAAc,iBAAiB,uBAAuB,EAAE,KAAK;AAC9F,UAAQ,0BAA0B;AAAA,IAC9B,KAAK;AACD;AAAA,IACJ,KAAK;AACD,YAAM,eAAe;AACrB;AAAA,IACJ;AAEI,UAAI,QAAQ,mBAAmB;AAC3B;AAAA,MACJ;AAGA,YAAM,YAAY,OAAO,aAAa;AACtC,YAAM,eAAgB,UAAU,SAAS,EAAE,SAAS;AACpD,UAAI,cAAc;AACd,iBAAS,IAAI,GAAG,IAAI,UAAU,YAAY,KAAK;AAC3C,gBAAM,QAAQ,UAAU,WAAW,CAAC;AACpC,gBAAM,QAAQ,MAAM,eAAe;AACnC,mBAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACnC,kBAAM,OAAO,MAAM,CAAC;AACpB,gBAAI,SAAS,iBAAiB,KAAK,MAAM,KAAK,GAAG,MAAM,SAAS;AAC5D;AAAA,YACJ;AAAA,UACJ;AAAA,QACJ;AAAA,MACJ;AAEA,UAAI,QAAQ,YAAY,WAAW,QAAQ,YAAY,YAAY;AAC/D,YAAI,gBAAiB,CAAC,QAAQ,YAAY,CAAC,QAAQ,UAAW;AAC1D;AAAA,QACJ;AAAA,MACJ;AAGA,YAAM,eAAe;AAAA,EAC7B;AACJ;;;AChGA;AAAA;AAAA;AAAA;AAkBO,SAAS,QAAQ,WAAW;AAC/B,MAAI;AACA,WAAO,OAAO,OAAO,MAAM,SAAS;AAAA,EACxC,SAAS,GAAG;AACR,UAAM,IAAI,MAAM,8BAA8B,YAAY,QAAQ,CAAC;AAAA,EACvE;AACJ;;;ACVA,IAAI,aAAa;AACjB,IAAI,YAAY;AAChB,IAAI,aAAa;AACjB,IAAI,gBAAgB;AAEpB,OAAO,SAAS,OAAO,UAAU,CAAC;AAElC,OAAO,OAAO,eAAe,SAAS,OAAO;AACzC,cAAY;AAChB;AAEA,OAAO,OAAO,UAAU,WAAW;AAC/B,WAAS,KAAK,MAAM,SAAS;AAC7B,eAAa;AACjB;AAEA,OAAO,iBAAiB,aAAa,WAAW;AAChD,OAAO,iBAAiB,aAAa,WAAW;AAChD,OAAO,iBAAiB,WAAW,SAAS;AAG5C,SAAS,SAAS,GAAG;AACjB,MAAI,MAAM,OAAO,iBAAiB,EAAE,MAAM,EAAE,iBAAiB,mBAAmB;AAChF,MAAI,eAAe,EAAE,YAAY,SAAY,EAAE,UAAU,EAAE;AAC3D,MAAI,CAAC,OAAO,QAAQ,MAAM,IAAI,KAAK,MAAM,UAAU,iBAAiB,GAAG;AACnE,WAAO;AAAA,EACX;AACA,SAAO,EAAE,WAAW;AACxB;AAEA,SAAS,YAAY,GAAG;AAGpB,MAAI,YAAY;AACZ,WAAO,kBAAkB,UAAU;AACnC,MAAE,eAAe;AACjB;AAAA,EACJ;AAEA,MAAI,SAAS,CAAC,GAAG;AAEb,QAAI,EAAE,UAAU,EAAE,OAAO,eAAe,EAAE,UAAU,EAAE,OAAO,cAAc;AACvE;AAAA,IACJ;AACA,iBAAa;AAAA,EACjB,OAAO;AACH,iBAAa;AAAA,EACjB;AACJ;AAEA,SAAS,YAAY;AACjB,eAAa;AACjB;AAEA,SAAS,UAAU,QAAQ;AACvB,WAAS,gBAAgB,MAAM,SAAS,UAAU;AAClD,eAAa;AACjB;AAEA,SAAS,YAAY,GAAG;AACpB,MAAI,YAAY;AACZ,iBAAa;AACb,QAAI,eAAe,EAAE,YAAY,SAAY,EAAE,UAAU,EAAE;AAC3D,QAAI,eAAe,GAAG;AAClB,aAAO,YAAY;AACnB;AAAA,IACJ;AAAA,EACJ;AACA,MAAI,CAAC,aAAa,CAAC,UAAU,GAAG;AAC5B;AAAA,EACJ;AACA,MAAI,iBAAiB,MAAM;AACvB,oBAAgB,SAAS,gBAAgB,MAAM;AAAA,EACnD;AACA,MAAI,qBAAqB,QAAQ,2BAA2B,KAAK;AACjE,MAAI,oBAAoB,QAAQ,0BAA0B,KAAK;AAG/D,MAAI,cAAc,QAAQ,mBAAmB,KAAK;AAElD,MAAI,cAAc,OAAO,aAAa,EAAE,UAAU;AAClD,MAAI,aAAa,EAAE,UAAU;AAC7B,MAAI,YAAY,EAAE,UAAU;AAC5B,MAAI,eAAe,OAAO,cAAc,EAAE,UAAU;AAGpD,MAAI,cAAc,OAAO,aAAa,EAAE,UAAW,oBAAoB;AACvE,MAAI,aAAa,EAAE,UAAW,oBAAoB;AAClD,MAAI,YAAY,EAAE,UAAW,qBAAqB;AAClD,MAAI,eAAe,OAAO,cAAc,EAAE,UAAW,qBAAqB;AAG1E,MAAI,CAAC,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,gBAAgB,eAAe,QAAW;AACxF,cAAU;AAAA,EACd,WAES,eAAe,aAAc,WAAU,WAAW;AAAA,WAClD,cAAc,aAAc,WAAU,WAAW;AAAA,WACjD,cAAc,UAAW,WAAU,WAAW;AAAA,WAC9C,aAAa,YAAa,WAAU,WAAW;AAAA,WAC/C,WAAY,WAAU,UAAU;AAAA,WAChC,UAAW,WAAU,UAAU;AAAA,WAC/B,aAAc,WAAU,UAAU;AAAA,WAClC,YAAa,WAAU,UAAU;AAC9C;;;ACtHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA,IAAMC,QAAO,uBAAuB,YAAY,aAAa,EAAE;AAE/D,IAAM,aAAa;AACnB,IAAM,aAAa;AACnB,IAAM,aAAa;AAQZ,SAAS,OAAO;AACnB,SAAOA,MAAK,UAAU;AAC1B;AAOO,SAAS,OAAO;AACnB,SAAOA,MAAK,UAAU;AAC1B;AAOO,SAAS,OAAO;AACnB,SAAOA,MAAK,UAAU;AAC1B;;;AC7CA;AAAA;AAAA;AAAA;AAaA,IAAMC,QAAO,uBAAuB,YAAY,SAAS,EAAE;AAC3D,IAAM,iBAAiB;AAOhB,SAAS,QAAQ,KAAK;AACzB,SAAOA,MAAK,gBAAgB,EAAC,IAAG,CAAC;AACrC;;;ACvBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAeA,OAAO,SAAS,OAAO,UAAU,CAAC;AAClC,OAAO,OAAO,oBAAoB;AAClC,OAAO,OAAO,mBAAmB;AAGjC,IAAM,cAAc;AACpB,IAAMC,QAAO,uBAAuB,YAAY,MAAM,EAAE;AACxD,IAAM,aAAa,uBAAuB,YAAY,YAAY,EAAE;AACpE,IAAI,gBAAgB,oBAAI,IAAI;AAO5B,SAAS,aAAa;AAClB,MAAI;AACJ,KAAG;AACC,aAAS,OAAO;AAAA,EACpB,SAAS,cAAc,IAAI,MAAM;AACjC,SAAO;AACX;AAWA,SAAS,cAAc,IAAI,MAAM,QAAQ;AACrC,QAAM,iBAAiB,qBAAqB,EAAE;AAC9C,MAAI,gBAAgB;AAChB,mBAAe,QAAQ,SAAS,KAAK,MAAM,IAAI,IAAI,IAAI;AAAA,EAC3D;AACJ;AAUA,SAAS,aAAa,IAAI,SAAS;AAC/B,QAAM,iBAAiB,qBAAqB,EAAE;AAC9C,MAAI,gBAAgB;AAChB,mBAAe,OAAO,OAAO;AAAA,EACjC;AACJ;AASA,SAAS,qBAAqB,IAAI;AAC9B,QAAM,WAAW,cAAc,IAAI,EAAE;AACrC,gBAAc,OAAO,EAAE;AACvB,SAAO;AACX;AASA,SAAS,YAAY,MAAM,UAAU,CAAC,GAAG;AACrC,QAAM,KAAK,WAAW;AACtB,QAAM,WAAW,MAAM;AAAE,WAAO,WAAW,MAAM,EAAC,WAAW,GAAE,CAAC;AAAA,EAAE;AAClE,MAAI,eAAe,OAAO,cAAc;AACxC,MAAI,IAAI,IAAI,QAAQ,CAAC,SAAS,WAAW;AACrC,YAAQ,SAAS,IAAI;AACrB,kBAAc,IAAI,IAAI,EAAE,SAAS,OAAO,CAAC;AACzC,IAAAA,MAAK,MAAM,OAAO,EACd,KAAK,CAAC,MAAM;AACR,oBAAc;AACd,UAAI,cAAc;AACd,eAAO,SAAS;AAAA,MACpB;AAAA,IACJ,CAAC,EACD,MAAM,CAAC,UAAU;AACb,aAAO,KAAK;AACZ,oBAAc,OAAO,EAAE;AAAA,IAC3B,CAAC;AAAA,EACT,CAAC;AACD,IAAE,SAAS,MAAM;AACb,QAAI,aAAa;AACb,aAAO,SAAS;AAAA,IACpB,OAAO;AACH,qBAAe;AAAA,IACnB;AAAA,EACJ;AAEA,SAAO;AACX;AAQO,SAAS,KAAK,SAAS;AAC1B,SAAO,YAAY,aAAa,OAAO;AAC3C;AAUO,SAAS,OAAO,eAAe,MAAM;AACxC,SAAO,YAAY,aAAa;AAAA,IAC5B;AAAA,IACA;AAAA,EACJ,CAAC;AACL;AASO,SAAS,KAAK,aAAa,MAAM;AACpC,SAAO,YAAY,aAAa;AAAA,IAC5B;AAAA,IACA;AAAA,EACJ,CAAC;AACL;AAUO,SAAS,OAAO,YAAY,eAAe,MAAM;AACpD,SAAO,YAAY,aAAa;AAAA,IAC5B,aAAa;AAAA,IACb,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,EACJ,CAAC;AACL;;;AC7KA;AAAA;AAAA;AAAA;AAAA;AAcA,IAAMC,QAAO,uBAAuB,YAAY,WAAW,EAAE;AAC7D,IAAM,mBAAmB;AACzB,IAAM,gBAAgB;AAQf,SAAS,QAAQ,MAAM;AAC1B,SAAOA,MAAK,kBAAkB,EAAC,KAAI,CAAC;AACxC;AAMO,SAAS,OAAO;AACnB,SAAOA,MAAK,aAAa;AAC7B;;;AClCA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAAC;AAAA,EAAA;AAAA;AAAA;AAkBO,SAAS,IAAI,QAAQ;AACxB;AAAA;AAAA,IAAwB;AAAA;AAC5B;AAQO,SAAS,UAAU,QAAQ;AAC9B;AAAA;AAAA,IAA2B,UAAU,OAAQ,KAAK;AAAA;AACtD;AAUO,SAAS,MAAM,SAAS;AAC3B,MAAI,YAAY,KAAK;AACjB,WAAO,CAAC,WAAY,WAAW,OAAO,CAAC,IAAI;AAAA,EAC/C;AAEA,SAAO,CAAC,WAAW;AACf,QAAI,WAAW,MAAM;AACjB,aAAO,CAAC;AAAA,IACZ;AACA,aAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AACpC,aAAO,CAAC,IAAI,QAAQ,OAAO,CAAC,CAAC;AAAA,IACjC;AACA,WAAO;AAAA,EACX;AACJ;AAWO,SAASA,KAAI,KAAK,OAAO;AAC5B,MAAI,UAAU,KAAK;AACf,WAAO,CAAC,WAAY,WAAW,OAAO,CAAC,IAAI;AAAA,EAC/C;AAEA,SAAO,CAAC,WAAW;AACf,QAAI,WAAW,MAAM;AACjB,aAAO,CAAC;AAAA,IACZ;AACA,eAAWC,QAAO,QAAQ;AACtB,aAAOA,IAAG,IAAI,MAAM,OAAOA,IAAG,CAAC;AAAA,IACnC;AACA,WAAO;AAAA,EACX;AACJ;AASO,SAAS,SAAS,SAAS;AAC9B,MAAI,YAAY,KAAK;AACjB,WAAO;AAAA,EACX;AAEA,SAAO,CAAC,WAAY,WAAW,OAAO,OAAO,QAAQ,MAAM;AAC/D;AAUO,SAAS,OAAO,aAAa;AAChC,MAAI,SAAS;AACb,aAAW,QAAQ,aAAa;AAC5B,QAAI,YAAY,IAAI,MAAM,KAAK;AAC3B,eAAS;AACT;AAAA,IACJ;AAAA,EACJ;AACA,MAAI,QAAQ;AACR,WAAO;AAAA,EACX;AAEA,SAAO,CAAC,WAAW;AACf,eAAW,QAAQ,aAAa;AAC5B,UAAI,QAAQ,QAAQ;AAChB,eAAO,IAAI,IAAI,YAAY,IAAI,EAAE,OAAO,IAAI,CAAC;AAAA,MACjD;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AACJ;;;AC5HA;AAAA;AAAA,eAAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA4EA,OAAO,SAAS,OAAO,UAAU,CAAC;AAClC,OAAO,OAAO,sBAAsB;AACpC,OAAO,OAAO,uBAAuB;AAOrC,IAAM,aAAa;AACnB,IAAM,gBAAgB;AACtB,IAAM,cAAc;AACpB,IAAM,iBAAiB;AACvB,IAAM,iBAAiB;AACvB,IAAM,iBAAiB;AAEvB,IAAMC,QAAO,uBAAuB,YAAY,QAAQ,EAAE;AAC1D,IAAM,kBAAkB,oBAAI,IAAI;AAMhC,SAASC,cAAa;AAClB,MAAI;AACJ,KAAG;AACC,aAAS,OAAO;AAAA,EACpB,SAAS,gBAAgB,IAAI,MAAM;AACnC,SAAO;AACX;AAQA,SAAS,OAAO,MAAM,UAAU,CAAC,GAAG;AAChC,QAAM,KAAKA,YAAW;AACtB,UAAQ,WAAW,IAAI;AACvB,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACpC,oBAAgB,IAAI,IAAI,EAAC,SAAS,OAAM,CAAC;AACzC,IAAAD,MAAK,MAAM,OAAO,EAAE,MAAM,CAAC,UAAU;AACjC,aAAO,KAAK;AACZ,sBAAgB,OAAO,EAAE;AAAA,IAC7B,CAAC;AAAA,EACL,CAAC;AACL;AAWA,SAAS,qBAAqB,IAAI,MAAM,QAAQ;AAC5C,MAAI,IAAI,gBAAgB,IAAI,EAAE;AAC9B,MAAI,GAAG;AACH,QAAI,QAAQ;AACR,QAAE,QAAQ,KAAK,MAAM,IAAI,CAAC;AAAA,IAC9B,OAAO;AACH,QAAE,QAAQ,IAAI;AAAA,IAClB;AACA,oBAAgB,OAAO,EAAE;AAAA,EAC7B;AACJ;AAUA,SAAS,oBAAoB,IAAI,SAAS;AACtC,MAAI,IAAI,gBAAgB,IAAI,EAAE;AAC9B,MAAI,GAAG;AACH,MAAE,OAAO,OAAO;AAChB,oBAAgB,OAAO,EAAE;AAAA,EAC7B;AACJ;AASO,IAAM,OAAO,CAAC,YAAY,OAAO,YAAY,OAAO;AAMpD,IAAM,UAAU,CAAC,YAAY,OAAO,eAAe,OAAO;AAM1D,IAAME,SAAQ,CAAC,YAAY,OAAO,aAAa,OAAO;AAMtD,IAAM,WAAW,CAAC,YAAY,OAAO,gBAAgB,OAAO;AAM5D,IAAM,WAAW,CAAC,YAAY,OAAO,gBAAgB,OAAO;AAM5D,IAAM,WAAW,CAAC,YAAY,OAAO,gBAAgB,OAAO;;;ACvMnE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCO,IAAM,aAAa;AAAA,EACzB,SAAS;AAAA,IACR,oBAAoB;AAAA,IACpB,sBAAsB;AAAA,IACtB,YAAY;AAAA,IACZ,oBAAoB;AAAA,IACpB,kBAAkB;AAAA,IAClB,uBAAuB;AAAA,IACvB,oBAAoB;AAAA,IACpB,4BAA4B;AAAA,IAC5B,gBAAgB;AAAA,IAChB,cAAc;AAAA,IACd,mBAAmB;AAAA,IACnB,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,IAChB,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,iBAAiB;AAAA,IACjB,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,iBAAiB;AAAA,IACjB,eAAe;AAAA,IACf,aAAa;AAAA,IACb,qBAAqB;AAAA,IACrB,aAAa;AAAA,IACb,uBAAuB;AAAA,IACvB,oBAAoB;AAAA,IACpB,0BAA0B;AAAA,IAC1B,wBAAwB;AAAA,IACxB,0BAA0B;AAAA,IAC1B,2BAA2B;AAAA,EAC5B;AAAA,EACA,KAAK;AAAA,IACJ,4BAA4B;AAAA,IAC5B,uCAAuC;AAAA,IACvC,yCAAyC;AAAA,IACzC,0BAA0B;AAAA,IAC1B,oCAAoC;AAAA,IACpC,sCAAsC;AAAA,IACtC,oCAAoC;AAAA,IACpC,0CAA0C;AAAA,IAC1C,+BAA+B;AAAA,IAC/B,oBAAoB;AAAA,IACpB,wCAAwC;AAAA,IACxC,sBAAsB;AAAA,IACtB,sBAAsB;AAAA,IACtB,6BAA6B;AAAA,IAC7B,gCAAgC;AAAA,IAChC,qBAAqB;AAAA,IACrB,6BAA6B;AAAA,IAC7B,0BAA0B;AAAA,IAC1B,uBAAuB;AAAA,IACvB,uBAAuB;AAAA,IACvB,2BAA2B;AAAA,IAC3B,+BAA+B;AAAA,IAC/B,oBAAoB;AAAA,IACpB,qBAAqB;AAAA,IACrB,qBAAqB;AAAA,IACrB,sBAAsB;AAAA,IACtB,gCAAgC;AAAA,IAChC,kCAAkC;AAAA,IAClC,mCAAmC;AAAA,IACnC,oCAAoC;AAAA,IACpC,+BAA+B;AAAA,IAC/B,6BAA6B;AAAA,IAC7B,uBAAuB;AAAA,IACvB,iCAAiC;AAAA,IACjC,8BAA8B;AAAA,IAC9B,4BAA4B;AAAA,IAC5B,sCAAsC;AAAA,IACtC,4BAA4B;AAAA,IAC5B,sBAAsB;AAAA,IACtB,kCAAkC;AAAA,IAClC,sBAAsB;AAAA,IACtB,wBAAwB;AAAA,IACxB,wBAAwB;AAAA,IACxB,mBAAmB;AAAA,IACnB,0BAA0B;AAAA,IAC1B,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,cAAc;AAAA,IACd,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,8BAA8B;AAAA,IAC9B,yBAAyB;AAAA,IACzB,6BAA6B;AAAA,IAC7B,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,IAChB,sBAAsB;AAAA,IACtB,eAAe;AAAA,IACf,yBAAyB;AAAA,IACzB,wBAAwB;AAAA,IACxB,oBAAoB;AAAA,IACpB,qBAAqB;AAAA,IACrB,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,sBAAsB;AAAA,IACtB,mCAAmC;AAAA,IACnC,qCAAqC;AAAA,IACrC,uBAAuB;AAAA,IACvB,sBAAsB;AAAA,IACtB,wBAAwB;AAAA,IACxB,mBAAmB;AAAA,IACnB,qBAAqB;AAAA,IACrB,sBAAsB;AAAA,IACtB,sBAAsB;AAAA,IACtB,8BAA8B;AAAA,IAC9B,iBAAiB;AAAA,IACjB,yBAAyB;AAAA,IACzB,2BAA2B;AAAA,IAC3B,+BAA+B;AAAA,IAC/B,0BAA0B;AAAA,IAC1B,8BAA8B;AAAA,IAC9B,iBAAiB;AAAA,IACjB,uBAAuB;AAAA,IACvB,gBAAgB;AAAA,IAChB,0BAA0B;AAAA,IAC1B,yBAAyB;AAAA,IACzB,sBAAsB;AAAA,IACtB,kBAAkB;AAAA,IAClB,mBAAmB;AAAA,IACnB,kBAAkB;AAAA,IAClB,uBAAuB;AAAA,IACvB,oCAAoC;AAAA,IACpC,sCAAsC;AAAA,IACtC,wBAAwB;AAAA,IACxB,uBAAuB;AAAA,IACvB,yBAAyB;AAAA,IACzB,4BAA4B;AAAA,IAC5B,4BAA4B;AAAA,IAC5B,cAAc;AAAA,IACd,aAAa;AAAA,IACb,cAAc;AAAA,IACd,oBAAoB;AAAA,IACpB,mBAAmB;AAAA,IACnB,uBAAuB;AAAA,IACvB,sBAAsB;AAAA,IACtB,qBAAqB;AAAA,IACrB,oBAAoB;AAAA,IACpB,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,IAChB,oBAAoB;AAAA,IACpB,mBAAmB;AAAA,IACnB,uBAAuB;AAAA,IACvB,sBAAsB;AAAA,IACtB,qBAAqB;AAAA,IACrB,oBAAoB;AAAA,IACpB,gBAAgB;AAAA,IAChB,eAAe;AAAA,IACf,eAAe;AAAA,IACf,cAAc;AAAA,IACd,0BAA0B;AAAA,IAC1B,yBAAyB;AAAA,IACzB,sCAAsC;AAAA,IACtC,yDAAyD;AAAA,IACzD,4BAA4B;AAAA,IAC5B,4BAA4B;AAAA,IAC5B,2BAA2B;AAAA,IAC3B,6BAA6B;AAAA,IAC7B,0BAA0B;AAAA,IAC1B,YAAY;AAAA,IACZ,YAAY;AAAA,EACb;AAAA,EACA,OAAO;AAAA,IACN,oBAAoB;AAAA,IACpB,mBAAmB;AAAA,IACnB,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB,oBAAoB;AAAA,EACrB;AAAA,EACA,QAAQ;AAAA,IACP,oBAAoB;AAAA,IACpB,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,aAAa;AAAA,IACb,iBAAiB;AAAA,IACjB,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,oBAAoB;AAAA,IACpB,cAAc;AAAA,IACd,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,2BAA2B;AAAA,EAC5B;AACD;;;ADrMO,IAAM,QAAQ;AAGrB,OAAO,SAAS,OAAO,UAAU,CAAC;AAClC,OAAO,OAAO,qBAAqB;AAEnC,IAAMC,QAAO,uBAAuB,YAAY,QAAQ,EAAE;AAC1D,IAAM,aAAa;AACnB,IAAM,iBAAiB,oBAAI,IAAI;AAE/B,IAAM,WAAN,MAAe;AAAA,EACX,YAAY,WAAW,UAAU,cAAc;AAC3C,SAAK,YAAY;AACjB,SAAK,eAAe,gBAAgB;AACpC,SAAK,WAAW,CAAC,SAAS;AACtB,eAAS,IAAI;AACb,UAAI,KAAK,iBAAiB,GAAI,QAAO;AACrC,WAAK,gBAAgB;AACrB,aAAO,KAAK,iBAAiB;AAAA,IACjC;AAAA,EACJ;AACJ;AAEO,IAAM,aAAN,MAAiB;AAAA,EACpB,YAAY,MAAM,OAAO,MAAM;AAC3B,SAAK,OAAO;AACZ,SAAK,OAAO;AAAA,EAChB;AACJ;AAEO,SAAS,QAAQ;AACxB;AAEA,SAAS,mBAAmB,OAAO;AAC/B,MAAI,YAAY,eAAe,IAAI,MAAM,IAAI;AAC7C,MAAI,WAAW;AACX,QAAI,WAAW,UAAU,OAAO,cAAY;AACxC,UAAI,SAAS,SAAS,SAAS,KAAK;AACpC,UAAI,OAAQ,QAAO;AAAA,IACvB,CAAC;AACD,QAAI,SAAS,SAAS,GAAG;AACrB,kBAAY,UAAU,OAAO,OAAK,CAAC,SAAS,SAAS,CAAC,CAAC;AACvD,UAAI,UAAU,WAAW,EAAG,gBAAe,OAAO,MAAM,IAAI;AAAA,UACvD,gBAAe,IAAI,MAAM,MAAM,SAAS;AAAA,IACjD;AAAA,EACJ;AACJ;AAWO,SAAS,WAAW,WAAW,UAAU,cAAc;AAC1D,MAAI,YAAY,eAAe,IAAI,SAAS,KAAK,CAAC;AAClD,QAAM,eAAe,IAAI,SAAS,WAAW,UAAU,YAAY;AACnE,YAAU,KAAK,YAAY;AAC3B,iBAAe,IAAI,WAAW,SAAS;AACvC,SAAO,MAAM,YAAY,YAAY;AACzC;AAQO,SAAS,GAAG,WAAW,UAAU;AAAE,SAAO,WAAW,WAAW,UAAU,EAAE;AAAG;AAS/E,SAAS,KAAK,WAAW,UAAU;AAAE,SAAO,WAAW,WAAW,UAAU,CAAC;AAAG;AAQvF,SAAS,YAAY,UAAU;AAC3B,QAAM,YAAY,SAAS;AAC3B,MAAI,YAAY,eAAe,IAAI,SAAS,EAAE,OAAO,OAAK,MAAM,QAAQ;AACxE,MAAI,UAAU,WAAW,EAAG,gBAAe,OAAO,SAAS;AAAA,MACtD,gBAAe,IAAI,WAAW,SAAS;AAChD;AAUO,SAAS,IAAI,cAAc,sBAAsB;AACpD,MAAI,iBAAiB,CAAC,WAAW,GAAG,oBAAoB;AACxD,iBAAe,QAAQ,CAAAC,eAAa,eAAe,OAAOA,UAAS,CAAC;AACxE;AAOO,SAAS,SAAS;AAAE,iBAAe,MAAM;AAAG;AAQ5C,SAAS,KAAK,OAAO;AAAE,SAAOD,MAAK,YAAY,KAAK;AAAG;;;AE3I9D;AAAA;AAAA;AAAA;AAAA;AAAA;AA2CA,IAAME,QAAO,uBAAuB,YAAY,SAAS,EAAE;AAE3D,IAAM,SAAS;AACf,IAAM,aAAa;AACnB,IAAM,aAAa;AAMZ,SAAS,SAAS;AACrB,SAAOA,MAAK,MAAM;AACtB;AAKO,SAAS,aAAa;AACzB,SAAOA,MAAK,UAAU;AAC1B;AAMO,SAAS,aAAa;AACzB,SAAOA,MAAK,UAAU;AAC1B;;;AChCA,IAAM,iBAAoC;AAC1C,IAAM,eAAoC;AAC1C,IAAM,cAAoC;AAC1C,IAAM,+BAAoC;AAC1C,IAAM,8BAAoC;AAC1C,IAAM,cAAoC;AAC1C,IAAM,oBAAoC;AAC1C,IAAM,mBAAoC;AAC1C,IAAM,kBAAoC;AAC1C,IAAM,gBAAoC;AAC1C,IAAM,eAAoC;AAC1C,IAAMC,cAAoC;AAC1C,IAAM,kBAAoC;AAC1C,IAAM,qBAAoC;AAC1C,IAAM,oBAAoC;AAC1C,IAAM,oBAAoC;AAC1C,IAAM,iBAAoC;AAC1C,IAAM,iBAAoC;AAC1C,IAAM,aAAoC;AAC1C,IAAM,qBAAoC;AAC1C,IAAM,yBAAoC;AAC1C,IAAM,eAAoC;AAC1C,IAAM,kBAAoC;AAC1C,IAAM,gBAAoC;AAC1C,IAAM,oBAAoC;AAC1C,IAAM,uBAAoC;AAC1C,IAAM,4BAAoC;AAC1C,IAAM,qBAAoC;AAC1C,IAAM,mCAAoC;AAC1C,IAAM,mBAAoC;AAC1C,IAAM,mBAAoC;AAC1C,IAAM,4BAAoC;AAC1C,IAAM,qBAAoC;AAC1C,IAAM,gBAAoC;AAC1C,IAAM,iBAAoC;AAC1C,IAAM,gBAAoC;AAC1C,IAAMC,cAAoC;AAC1C,IAAM,aAAoC;AAC1C,IAAM,yBAAoC;AAC1C,IAAM,uBAAoC;AAC1C,IAAM,qBAAoC;AAC1C,IAAM,mBAAoC;AAC1C,IAAM,mBAAoC;AAC1C,IAAM,cAAoC;AAC1C,IAAM,aAAoC;AAC1C,IAAM,eAAoC;AAC1C,IAAM,gBAAoC;AAC1C,IAAM,kBAAoC;AAK1C,IAAM,SAAS,OAAO;AAEf,IAAM,SAAN,MAAM,QAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOhB,YAAY,OAAO,IAAI;AAMnB,SAAK,MAAM,IAAI,uBAAuB,YAAY,QAAQ,IAAI;AAG9D,eAAW,UAAU,OAAO,oBAAoB,QAAO,SAAS,GAAG;AAC/D,UACI,WAAW,iBACR,OAAO,KAAK,MAAM,MAAM,YAC7B;AACE,aAAK,MAAM,IAAI,KAAK,MAAM,EAAE,KAAK,IAAI;AAAA,MACzC;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,IAAI,MAAM;AACN,WAAO,IAAI,QAAO,IAAI;AAAA,EAC1B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WAAW;AACP,WAAO,KAAK,MAAM,EAAE,cAAc;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,SAAS;AACL,WAAO,KAAK,MAAM,EAAE,YAAY;AAAA,EACpC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,QAAQ;AACJ,WAAO,KAAK,MAAM,EAAE,WAAW;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,yBAAyB;AACrB,WAAO,KAAK,MAAM,EAAE,4BAA4B;AAAA,EACpD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,wBAAwB;AACpB,WAAO,KAAK,MAAM,EAAE,2BAA2B;AAAA,EACnD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,QAAQ;AACJ,WAAO,KAAK,MAAM,EAAE,WAAW;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,cAAc;AACV,WAAO,KAAK,MAAM,EAAE,iBAAiB;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,aAAa;AACT,WAAO,KAAK,MAAM,EAAE,gBAAgB;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,YAAY;AACR,WAAO,KAAK,MAAM,EAAE,eAAe;AAAA,EACvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,UAAU;AACN,WAAO,KAAK,MAAM,EAAE,aAAa;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,SAAS;AACL,WAAO,KAAK,MAAM,EAAE,YAAY;AAAA,EACpC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO;AACH,WAAO,KAAK,MAAM,EAAED,WAAU;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,YAAY;AACR,WAAO,KAAK,MAAM,EAAE,eAAe;AAAA,EACvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,eAAe;AACX,WAAO,KAAK,MAAM,EAAE,kBAAkB;AAAA,EAC1C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,cAAc;AACV,WAAO,KAAK,MAAM,EAAE,iBAAiB;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,cAAc;AACV,WAAO,KAAK,MAAM,EAAE,iBAAiB;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WAAW;AACP,WAAO,KAAK,MAAM,EAAE,cAAc;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WAAW;AACP,WAAO,KAAK,MAAM,EAAE,cAAc;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO;AACH,WAAO,KAAK,MAAM,EAAE,UAAU;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,eAAe;AACX,WAAO,KAAK,MAAM,EAAE,kBAAkB;AAAA,EAC1C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,mBAAmB;AACf,WAAO,KAAK,MAAM,EAAE,sBAAsB;AAAA,EAC9C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,SAAS;AACL,WAAO,KAAK,MAAM,EAAE,YAAY;AAAA,EACpC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,YAAY;AACR,WAAO,KAAK,MAAM,EAAE,eAAe;AAAA,EACvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,UAAU;AACN,WAAO,KAAK,MAAM,EAAE,aAAa;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,YAAY,GAAG,GAAG;AACd,WAAO,KAAK,MAAM,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAC;AAAA,EACnD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,eAAe,aAAa;AACxB,WAAO,KAAK,MAAM,EAAE,sBAAsB,EAAE,YAAY,CAAC;AAAA,EAC7D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,oBAAoB,GAAG,GAAG,GAAG,GAAG;AAC5B,WAAO,KAAK,MAAM,EAAE,2BAA2B,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC;AAAA,EACjE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,aAAa,WAAW;AACpB,WAAO,KAAK,MAAM,EAAE,oBAAoB,EAAE,UAAU,CAAC;AAAA,EACzD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,2BAA2B,SAAS;AAChC,WAAO,KAAK,MAAM,EAAE,kCAAkC,EAAE,QAAQ,CAAC;AAAA,EACrE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,WAAW,OAAO,QAAQ;AACtB,WAAO,KAAK,MAAM,EAAE,kBAAkB,EAAE,OAAO,OAAO,CAAC;AAAA,EAC3D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,WAAW,OAAO,QAAQ;AACtB,WAAO,KAAK,MAAM,EAAE,kBAAkB,EAAE,OAAO,OAAO,CAAC;AAAA,EAC3D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,oBAAoB,GAAG,GAAG;AACtB,WAAO,KAAK,MAAM,EAAE,2BAA2B,EAAE,GAAG,EAAE,CAAC;AAAA,EAC3D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,aAAaE,YAAW;AACpB,WAAO,KAAK,MAAM,EAAE,oBAAoB,EAAE,WAAAA,WAAU,CAAC;AAAA,EACzD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,QAAQ,OAAO,QAAQ;AACnB,WAAO,KAAK,MAAM,EAAE,eAAe,EAAE,OAAO,OAAO,CAAC;AAAA,EACxD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,SAAS,OAAO;AACZ,WAAO,KAAK,MAAM,EAAE,gBAAgB,EAAE,MAAM,CAAC;AAAA,EACjD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,QAAQ,MAAM;AACV,WAAO,KAAK,MAAM,EAAE,eAAe,EAAE,KAAK,CAAC;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO;AACH,WAAO,KAAK,MAAM,EAAED,WAAU;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO;AACH,WAAO,KAAK,MAAM,EAAE,UAAU;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,mBAAmB;AACf,WAAO,KAAK,MAAM,EAAE,sBAAsB;AAAA,EAC9C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,iBAAiB;AACb,WAAO,KAAK,MAAM,EAAE,oBAAoB;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,eAAe;AACX,WAAO,KAAK,MAAM,EAAE,kBAAkB;AAAA,EAC1C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,aAAa;AACT,WAAO,KAAK,MAAM,EAAE,gBAAgB;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,aAAa;AACT,WAAO,KAAK,MAAM,EAAE,gBAAgB;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,QAAQ;AACJ,WAAO,KAAK,MAAM,EAAE,WAAW;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO;AACH,WAAO,KAAK,MAAM,EAAE,UAAU;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,SAAS;AACL,WAAO,KAAK,MAAM,EAAE,YAAY;AAAA,EACpC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,UAAU;AACN,WAAO,KAAK,MAAM,EAAE,aAAa;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,YAAY;AACR,WAAO,KAAK,MAAM,EAAE,eAAe;AAAA,EACvC;AACJ;AAOA,IAAM,aAAa,IAAI,OAAO,EAAE;AAEhC,IAAO,iBAAQ;;;AC7nBf;AAAA;AAAA;AAAA;AAAA;;;AC8BO,SAAS,oBAAoB;AAChC,MAAI,CAAC,eAAe,CAAC,eAAe,CAAC;AACjC,WAAO;AAEX,MAAI,SAAS;AAEb,QAAM,SAAS,IAAI,YAAY;AAC/B,QAAME,cAAa,IAAI,gBAAgB;AACvC,SAAO,iBAAiB,QAAQ,MAAM;AAAE,aAAS;AAAA,EAAO,GAAG,EAAE,QAAQA,YAAW,OAAO,CAAC;AACxF,EAAAA,YAAW,MAAM;AACjB,SAAO,cAAc,IAAI,YAAY,MAAM,CAAC;AAE5C,SAAO;AACX;AAiCA,IAAI,UAAU;AACd,SAAS,iBAAiB,oBAAoB,MAAM,UAAU,IAAI;AAE3D,SAAS,UAAU,UAAU;AAChC,MAAI,WAAW,SAAS,eAAe,YAAY;AAC/C,aAAS;AAAA,EACb,OAAO;AACH,aAAS,iBAAiB,oBAAoB,QAAQ;AAAA,EAC1D;AACJ;;;AD7DA,SAAS,UAAU,WAAW,OAAK,MAAM;AACrC,OAAK,IAAI,WAAW,WAAW,IAAI,CAAC;AACxC;AAOA,SAAS,iBAAiB,YAAY,YAAY;AAC9C,QAAM,eAAe,eAAO,IAAI,UAAU;AAC1C,QAAM,SAAS,aAAa,UAAU;AAEtC,MAAI,OAAO,WAAW,YAAY;AAC9B,YAAQ,MAAM,kBAAkB,UAAU,aAAa;AACvD;AAAA,EACJ;AAEA,MAAI;AACA,WAAO,KAAK,YAAY;AAAA,EAC5B,SAAS,GAAG;AACR,YAAQ,MAAM,gCAAgC,UAAU,OAAO,CAAC;AAAA,EACpE;AACJ;AAQA,SAAS,eAAe,IAAI;AACxB,QAAM,UAAU,GAAG;AAEnB,WAAS,UAAU,SAAS,OAAO;AAC/B,QAAI,WAAW;AACX;AAEJ,UAAM,YAAY,QAAQ,aAAa,WAAW;AAClD,UAAM,eAAe,QAAQ,aAAa,mBAAmB,KAAK;AAClE,UAAM,eAAe,QAAQ,aAAa,YAAY;AACtD,UAAM,MAAM,QAAQ,aAAa,aAAa;AAE9C,QAAI,cAAc;AACd,gBAAU,SAAS;AACvB,QAAI,iBAAiB;AACjB,uBAAiB,cAAc,YAAY;AAC/C,QAAI,QAAQ;AACR,WAAK,QAAQ,GAAG;AAAA,EACxB;AAEA,QAAM,UAAU,QAAQ,aAAa,aAAa;AAElD,MAAI,SAAS;AACT,aAAS;AAAA,MACL,OAAO;AAAA,MACP,SAAS;AAAA,MACT,UAAU;AAAA,MACV,SAAS;AAAA,QACL,EAAE,OAAO,MAAM;AAAA,QACf,EAAE,OAAO,MAAM,WAAW,KAAK;AAAA,MACnC;AAAA,IACJ,CAAC,EAAE,KAAK,SAAS;AAAA,EACrB,OAAO;AACH,cAAU;AAAA,EACd;AACJ;AAKA,IAAM,aAAa,OAAO;AAM1B,IAAM,0BAAN,MAA8B;AAAA,EAC1B,cAAc;AAQV,SAAK,UAAU,IAAI,IAAI,gBAAgB;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,IAAI,SAAS,UAAU;AACnB,WAAO,EAAE,QAAQ,KAAK,UAAU,EAAE,OAAO;AAAA,EAC7C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,QAAQ;AACJ,SAAK,UAAU,EAAE,MAAM;AACvB,SAAK,UAAU,IAAI,IAAI,gBAAgB;AAAA,EAC3C;AACJ;AAKA,IAAM,aAAa,OAAO;AAK1B,IAAM,eAAe,OAAO;AAO5B,IAAM,kBAAN,MAAsB;AAAA,EAClB,cAAc;AAQV,SAAK,UAAU,IAAI,oBAAI,QAAQ;AAS/B,SAAK,YAAY,IAAI;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,IAAI,SAAS,UAAU;AACnB,SAAK,YAAY,KAAK,CAAC,KAAK,UAAU,EAAE,IAAI,OAAO;AACnD,SAAK,UAAU,EAAE,IAAI,SAAS,QAAQ;AACtC,WAAO,CAAC;AAAA,EACZ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,QAAQ;AACJ,QAAI,KAAK,YAAY,KAAK;AACtB;AAEJ,eAAW,WAAW,SAAS,KAAK,iBAAiB,GAAG,GAAG;AACvD,UAAI,KAAK,YAAY,KAAK;AACtB;AAEJ,YAAM,WAAW,KAAK,UAAU,EAAE,IAAI,OAAO;AAC7C,WAAK,YAAY,KAAM,OAAO,aAAa;AAE3C,iBAAW,WAAW,YAAY,CAAC;AAC/B,gBAAQ,oBAAoB,SAAS,cAAc;AAAA,IAC3D;AAEA,SAAK,UAAU,IAAI,oBAAI,QAAQ;AAC/B,SAAK,YAAY,IAAI;AAAA,EACzB;AACJ;AAEA,IAAM,kBAAkB,kBAAkB,IAAI,IAAI,wBAAwB,IAAI,IAAI,gBAAgB;AAQlG,SAAS,gBAAgB,SAAS;AAC9B,QAAM,gBAAgB;AACtB,QAAM,cAAe,QAAQ,aAAa,aAAa,KAAK;AAC5D,QAAM,WAAW,CAAC;AAElB,MAAI;AACJ,UAAQ,QAAQ,cAAc,KAAK,WAAW,OAAO;AACjD,aAAS,KAAK,MAAM,CAAC,CAAC;AAE1B,QAAM,UAAU,gBAAgB,IAAI,SAAS,QAAQ;AACrD,aAAW,WAAW;AAClB,YAAQ,iBAAiB,SAAS,gBAAgB,OAAO;AACjE;AAOO,SAAS,SAAS;AACrB,YAAU,MAAM;AACpB;AAOO,SAAS,SAAS;AACrB,kBAAgB,MAAM;AACtB,WAAS,KAAK,iBAAiB,0CAA0C,EAAE,QAAQ,eAAe;AACtG;;;AE9OA,OAAO,SAAS,OAAO,UAAU,CAAC;AAkClC,IAAI,cAAc;AACX,SAAS,OAAO;AACnB,SAAO,OAAO,SAAgB;AAC9B,EAAO,OAAO,qBAAqB;AACnC,gBAAc;AAClB;AAEA,OAAO,iBAAiB,QAAQ,MAAM;AAClC,MAAI,CAAC,aAAa;AACd,SAAK;AAAA,EACT;AACJ,CAAC;", + "names": ["call", "call", "call", "call", "call", "Map", "key", "Error", "call", "generateID", "Error", "call", "eventName", "call", "HideMethod", "ShowMethod", "resizable", "controller"] +} diff --git a/frontend/node_modules/.vite/deps_temp_e0499671/chunk-PZ5AY32C.js b/frontend/node_modules/.vite/deps_temp_e0499671/chunk-PZ5AY32C.js new file mode 100644 index 0000000..29b14b2 --- /dev/null +++ b/frontend/node_modules/.vite/deps_temp_e0499671/chunk-PZ5AY32C.js @@ -0,0 +1,10 @@ +var __defProp = Object.defineProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; + +export { + __export +}; +//# sourceMappingURL=chunk-PZ5AY32C.js.map diff --git a/frontend/node_modules/.vite/deps_temp_e0499671/chunk-PZ5AY32C.js.map b/frontend/node_modules/.vite/deps_temp_e0499671/chunk-PZ5AY32C.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/frontend/node_modules/.vite/deps_temp_e0499671/chunk-PZ5AY32C.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/frontend/node_modules/.vite/deps_temp_e0499671/package.json b/frontend/node_modules/.vite/deps_temp_e0499671/package.json new file mode 100644 index 0000000..3dbc1ca --- /dev/null +++ b/frontend/node_modules/.vite/deps_temp_e0499671/package.json @@ -0,0 +1,3 @@ +{ + "type": "module" +} diff --git a/frontend/node_modules/.vite/deps_temp_e0499671/vue.js b/frontend/node_modules/.vite/deps_temp_e0499671/vue.js new file mode 100644 index 0000000..c288450 --- /dev/null +++ b/frontend/node_modules/.vite/deps_temp_e0499671/vue.js @@ -0,0 +1,12543 @@ +import "./chunk-PZ5AY32C.js"; + +// node_modules/@vue/shared/dist/shared.esm-bundler.js +function makeMap(str) { + const map2 = /* @__PURE__ */ Object.create(null); + for (const key of str.split(",")) map2[key] = 1; + return (val) => val in map2; +} +var EMPTY_OBJ = true ? Object.freeze({}) : {}; +var EMPTY_ARR = true ? Object.freeze([]) : []; +var NOOP = () => { +}; +var NO = () => false; +var isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter +(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97); +var isModelListener = (key) => key.startsWith("onUpdate:"); +var extend = Object.assign; +var remove = (arr, el) => { + const i = arr.indexOf(el); + if (i > -1) { + arr.splice(i, 1); + } +}; +var hasOwnProperty = Object.prototype.hasOwnProperty; +var hasOwn = (val, key) => hasOwnProperty.call(val, key); +var isArray = Array.isArray; +var isMap = (val) => toTypeString(val) === "[object Map]"; +var isSet = (val) => toTypeString(val) === "[object Set]"; +var isDate = (val) => toTypeString(val) === "[object Date]"; +var isRegExp = (val) => toTypeString(val) === "[object RegExp]"; +var isFunction = (val) => typeof val === "function"; +var isString = (val) => typeof val === "string"; +var isSymbol = (val) => typeof val === "symbol"; +var isObject = (val) => val !== null && typeof val === "object"; +var isPromise = (val) => { + return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch); +}; +var objectToString = Object.prototype.toString; +var toTypeString = (value) => objectToString.call(value); +var toRawType = (value) => { + return toTypeString(value).slice(8, -1); +}; +var isPlainObject = (val) => toTypeString(val) === "[object Object]"; +var isIntegerKey = (key) => isString(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key; +var isReservedProp = makeMap( + // the leading comma is intentional so empty string "" is also included + ",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted" +); +var isBuiltInDirective = makeMap( + "bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo" +); +var cacheStringFunction = (fn) => { + const cache = /* @__PURE__ */ Object.create(null); + return (str) => { + const hit = cache[str]; + return hit || (cache[str] = fn(str)); + }; +}; +var camelizeRE = /-(\w)/g; +var camelize = cacheStringFunction( + (str) => { + return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : ""); + } +); +var hyphenateRE = /\B([A-Z])/g; +var hyphenate = cacheStringFunction( + (str) => str.replace(hyphenateRE, "-$1").toLowerCase() +); +var capitalize = cacheStringFunction((str) => { + return str.charAt(0).toUpperCase() + str.slice(1); +}); +var toHandlerKey = cacheStringFunction( + (str) => { + const s = str ? `on${capitalize(str)}` : ``; + return s; + } +); +var hasChanged = (value, oldValue) => !Object.is(value, oldValue); +var invokeArrayFns = (fns, ...arg) => { + for (let i = 0; i < fns.length; i++) { + fns[i](...arg); + } +}; +var def = (obj, key, value, writable = false) => { + Object.defineProperty(obj, key, { + configurable: true, + enumerable: false, + writable, + value + }); +}; +var looseToNumber = (val) => { + const n = parseFloat(val); + return isNaN(n) ? val : n; +}; +var toNumber = (val) => { + const n = isString(val) ? Number(val) : NaN; + return isNaN(n) ? val : n; +}; +var _globalThis; +var getGlobalThis = () => { + return _globalThis || (_globalThis = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {}); +}; +var GLOBALS_ALLOWED = "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"; +var isGloballyAllowed = makeMap(GLOBALS_ALLOWED); +function normalizeStyle(value) { + if (isArray(value)) { + const res = {}; + for (let i = 0; i < value.length; i++) { + const item = value[i]; + const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item); + if (normalized) { + for (const key in normalized) { + res[key] = normalized[key]; + } + } + } + return res; + } else if (isString(value) || isObject(value)) { + return value; + } +} +var listDelimiterRE = /;(?![^(]*\))/g; +var propertyDelimiterRE = /:([^]+)/; +var styleCommentRE = /\/\*[^]*?\*\//g; +function parseStringStyle(cssText) { + const ret = {}; + cssText.replace(styleCommentRE, "").split(listDelimiterRE).forEach((item) => { + if (item) { + const tmp = item.split(propertyDelimiterRE); + tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim()); + } + }); + return ret; +} +function stringifyStyle(styles) { + if (!styles) return ""; + if (isString(styles)) return styles; + let ret = ""; + for (const key in styles) { + const value = styles[key]; + if (isString(value) || typeof value === "number") { + const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key); + ret += `${normalizedKey}:${value};`; + } + } + return ret; +} +function normalizeClass(value) { + let res = ""; + if (isString(value)) { + res = value; + } else if (isArray(value)) { + for (let i = 0; i < value.length; i++) { + const normalized = normalizeClass(value[i]); + if (normalized) { + res += normalized + " "; + } + } + } else if (isObject(value)) { + for (const name in value) { + if (value[name]) { + res += name + " "; + } + } + } + return res.trim(); +} +function normalizeProps(props) { + if (!props) return null; + let { class: klass, style } = props; + if (klass && !isString(klass)) { + props.class = normalizeClass(klass); + } + if (style) { + props.style = normalizeStyle(style); + } + return props; +} +var HTML_TAGS = "html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot"; +var SVG_TAGS = "svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,text,textPath,title,tspan,unknown,use,view"; +var MATH_TAGS = "annotation,annotation-xml,maction,maligngroup,malignmark,math,menclose,merror,mfenced,mfrac,mfraction,mglyph,mi,mlabeledtr,mlongdiv,mmultiscripts,mn,mo,mover,mpadded,mphantom,mprescripts,mroot,mrow,ms,mscarries,mscarry,msgroup,msline,mspace,msqrt,msrow,mstack,mstyle,msub,msubsup,msup,mtable,mtd,mtext,mtr,munder,munderover,none,semantics"; +var VOID_TAGS = "area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr"; +var isHTMLTag = makeMap(HTML_TAGS); +var isSVGTag = makeMap(SVG_TAGS); +var isMathMLTag = makeMap(MATH_TAGS); +var isVoidTag = makeMap(VOID_TAGS); +var specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`; +var isSpecialBooleanAttr = makeMap(specialBooleanAttrs); +var isBooleanAttr = makeMap( + specialBooleanAttrs + `,async,autofocus,autoplay,controls,default,defer,disabled,hidden,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected` +); +function includeBooleanAttr(value) { + return !!value || value === ""; +} +var isKnownHtmlAttr = makeMap( + `accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap` +); +var isKnownSvgAttr = makeMap( + `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan` +); +var isKnownMathMLAttr = makeMap( + `accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns` +); +function isRenderableAttrValue(value) { + if (value == null) { + return false; + } + const type = typeof value; + return type === "string" || type === "number" || type === "boolean"; +} +var cssVarNameEscapeSymbolsRE = /[ !"#$%&'()*+,./:;<=>?@[\\\]^`{|}~]/g; +function getEscapedCssVarName(key, doubleEscape) { + return key.replace( + cssVarNameEscapeSymbolsRE, + (s) => doubleEscape ? s === '"' ? '\\\\\\"' : `\\\\${s}` : `\\${s}` + ); +} +function looseCompareArrays(a, b) { + if (a.length !== b.length) return false; + let equal = true; + for (let i = 0; equal && i < a.length; i++) { + equal = looseEqual(a[i], b[i]); + } + return equal; +} +function looseEqual(a, b) { + if (a === b) return true; + let aValidType = isDate(a); + let bValidType = isDate(b); + if (aValidType || bValidType) { + return aValidType && bValidType ? a.getTime() === b.getTime() : false; + } + aValidType = isSymbol(a); + bValidType = isSymbol(b); + if (aValidType || bValidType) { + return a === b; + } + aValidType = isArray(a); + bValidType = isArray(b); + if (aValidType || bValidType) { + return aValidType && bValidType ? looseCompareArrays(a, b) : false; + } + aValidType = isObject(a); + bValidType = isObject(b); + if (aValidType || bValidType) { + if (!aValidType || !bValidType) { + return false; + } + const aKeysCount = Object.keys(a).length; + const bKeysCount = Object.keys(b).length; + if (aKeysCount !== bKeysCount) { + return false; + } + for (const key in a) { + const aHasKey = a.hasOwnProperty(key); + const bHasKey = b.hasOwnProperty(key); + if (aHasKey && !bHasKey || !aHasKey && bHasKey || !looseEqual(a[key], b[key])) { + return false; + } + } + } + return String(a) === String(b); +} +function looseIndexOf(arr, val) { + return arr.findIndex((item) => looseEqual(item, val)); +} +var isRef = (val) => { + return !!(val && val["__v_isRef"] === true); +}; +var toDisplayString = (val) => { + return isString(val) ? val : val == null ? "" : isArray(val) || isObject(val) && (val.toString === objectToString || !isFunction(val.toString)) ? isRef(val) ? toDisplayString(val.value) : JSON.stringify(val, replacer, 2) : String(val); +}; +var replacer = (_key, val) => { + if (isRef(val)) { + return replacer(_key, val.value); + } else if (isMap(val)) { + return { + [`Map(${val.size})`]: [...val.entries()].reduce( + (entries, [key, val2], i) => { + entries[stringifySymbol(key, i) + " =>"] = val2; + return entries; + }, + {} + ) + }; + } else if (isSet(val)) { + return { + [`Set(${val.size})`]: [...val.values()].map((v) => stringifySymbol(v)) + }; + } else if (isSymbol(val)) { + return stringifySymbol(val); + } else if (isObject(val) && !isArray(val) && !isPlainObject(val)) { + return String(val); + } + return val; +}; +var stringifySymbol = (v, i = "") => { + var _a; + return ( + // Symbol.description in es2019+ so we need to cast here to pass + // the lib: es2016 check + isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v + ); +}; + +// node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js +function warn(msg, ...args) { + console.warn(`[Vue warn] ${msg}`, ...args); +} +var activeEffectScope; +var EffectScope = class { + constructor(detached = false) { + this.detached = detached; + this._active = true; + this.effects = []; + this.cleanups = []; + this._isPaused = false; + this.parent = activeEffectScope; + if (!detached && activeEffectScope) { + this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push( + this + ) - 1; + } + } + get active() { + return this._active; + } + pause() { + if (this._active) { + this._isPaused = true; + let i, l; + if (this.scopes) { + for (i = 0, l = this.scopes.length; i < l; i++) { + this.scopes[i].pause(); + } + } + for (i = 0, l = this.effects.length; i < l; i++) { + this.effects[i].pause(); + } + } + } + /** + * Resumes the effect scope, including all child scopes and effects. + */ + resume() { + if (this._active) { + if (this._isPaused) { + this._isPaused = false; + let i, l; + if (this.scopes) { + for (i = 0, l = this.scopes.length; i < l; i++) { + this.scopes[i].resume(); + } + } + for (i = 0, l = this.effects.length; i < l; i++) { + this.effects[i].resume(); + } + } + } + } + run(fn) { + if (this._active) { + const currentEffectScope = activeEffectScope; + try { + activeEffectScope = this; + return fn(); + } finally { + activeEffectScope = currentEffectScope; + } + } else if (true) { + warn(`cannot run an inactive effect scope.`); + } + } + /** + * This should only be called on non-detached scopes + * @internal + */ + on() { + activeEffectScope = this; + } + /** + * This should only be called on non-detached scopes + * @internal + */ + off() { + activeEffectScope = this.parent; + } + stop(fromParent) { + if (this._active) { + this._active = false; + let i, l; + for (i = 0, l = this.effects.length; i < l; i++) { + this.effects[i].stop(); + } + this.effects.length = 0; + for (i = 0, l = this.cleanups.length; i < l; i++) { + this.cleanups[i](); + } + this.cleanups.length = 0; + if (this.scopes) { + for (i = 0, l = this.scopes.length; i < l; i++) { + this.scopes[i].stop(true); + } + this.scopes.length = 0; + } + if (!this.detached && this.parent && !fromParent) { + const last = this.parent.scopes.pop(); + if (last && last !== this) { + this.parent.scopes[this.index] = last; + last.index = this.index; + } + } + this.parent = void 0; + } + } +}; +function effectScope(detached) { + return new EffectScope(detached); +} +function getCurrentScope() { + return activeEffectScope; +} +function onScopeDispose(fn, failSilently = false) { + if (activeEffectScope) { + activeEffectScope.cleanups.push(fn); + } else if (!failSilently) { + warn( + `onScopeDispose() is called when there is no active effect scope to be associated with.` + ); + } +} +var activeSub; +var pausedQueueEffects = /* @__PURE__ */ new WeakSet(); +var ReactiveEffect = class { + constructor(fn) { + this.fn = fn; + this.deps = void 0; + this.depsTail = void 0; + this.flags = 1 | 4; + this.next = void 0; + this.cleanup = void 0; + this.scheduler = void 0; + if (activeEffectScope && activeEffectScope.active) { + activeEffectScope.effects.push(this); + } + } + pause() { + this.flags |= 64; + } + resume() { + if (this.flags & 64) { + this.flags &= ~64; + if (pausedQueueEffects.has(this)) { + pausedQueueEffects.delete(this); + this.trigger(); + } + } + } + /** + * @internal + */ + notify() { + if (this.flags & 2 && !(this.flags & 32)) { + return; + } + if (!(this.flags & 8)) { + batch(this); + } + } + run() { + if (!(this.flags & 1)) { + return this.fn(); + } + this.flags |= 2; + cleanupEffect(this); + prepareDeps(this); + const prevEffect = activeSub; + const prevShouldTrack = shouldTrack; + activeSub = this; + shouldTrack = true; + try { + return this.fn(); + } finally { + if (activeSub !== this) { + warn( + "Active effect was not restored correctly - this is likely a Vue internal bug." + ); + } + cleanupDeps(this); + activeSub = prevEffect; + shouldTrack = prevShouldTrack; + this.flags &= ~2; + } + } + stop() { + if (this.flags & 1) { + for (let link = this.deps; link; link = link.nextDep) { + removeSub(link); + } + this.deps = this.depsTail = void 0; + cleanupEffect(this); + this.onStop && this.onStop(); + this.flags &= ~1; + } + } + trigger() { + if (this.flags & 64) { + pausedQueueEffects.add(this); + } else if (this.scheduler) { + this.scheduler(); + } else { + this.runIfDirty(); + } + } + /** + * @internal + */ + runIfDirty() { + if (isDirty(this)) { + this.run(); + } + } + get dirty() { + return isDirty(this); + } +}; +var batchDepth = 0; +var batchedSub; +var batchedComputed; +function batch(sub, isComputed = false) { + sub.flags |= 8; + if (isComputed) { + sub.next = batchedComputed; + batchedComputed = sub; + return; + } + sub.next = batchedSub; + batchedSub = sub; +} +function startBatch() { + batchDepth++; +} +function endBatch() { + if (--batchDepth > 0) { + return; + } + if (batchedComputed) { + let e = batchedComputed; + batchedComputed = void 0; + while (e) { + const next = e.next; + e.next = void 0; + e.flags &= ~8; + e = next; + } + } + let error; + while (batchedSub) { + let e = batchedSub; + batchedSub = void 0; + while (e) { + const next = e.next; + e.next = void 0; + e.flags &= ~8; + if (e.flags & 1) { + try { + ; + e.trigger(); + } catch (err) { + if (!error) error = err; + } + } + e = next; + } + } + if (error) throw error; +} +function prepareDeps(sub) { + for (let link = sub.deps; link; link = link.nextDep) { + link.version = -1; + link.prevActiveLink = link.dep.activeLink; + link.dep.activeLink = link; + } +} +function cleanupDeps(sub) { + let head; + let tail = sub.depsTail; + let link = tail; + while (link) { + const prev = link.prevDep; + if (link.version === -1) { + if (link === tail) tail = prev; + removeSub(link); + removeDep(link); + } else { + head = link; + } + link.dep.activeLink = link.prevActiveLink; + link.prevActiveLink = void 0; + link = prev; + } + sub.deps = head; + sub.depsTail = tail; +} +function isDirty(sub) { + for (let link = sub.deps; link; link = link.nextDep) { + if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) { + return true; + } + } + if (sub._dirty) { + return true; + } + return false; +} +function refreshComputed(computed3) { + if (computed3.flags & 4 && !(computed3.flags & 16)) { + return; + } + computed3.flags &= ~16; + if (computed3.globalVersion === globalVersion) { + return; + } + computed3.globalVersion = globalVersion; + const dep = computed3.dep; + computed3.flags |= 2; + if (dep.version > 0 && !computed3.isSSR && computed3.deps && !isDirty(computed3)) { + computed3.flags &= ~2; + return; + } + const prevSub = activeSub; + const prevShouldTrack = shouldTrack; + activeSub = computed3; + shouldTrack = true; + try { + prepareDeps(computed3); + const value = computed3.fn(computed3._value); + if (dep.version === 0 || hasChanged(value, computed3._value)) { + computed3._value = value; + dep.version++; + } + } catch (err) { + dep.version++; + throw err; + } finally { + activeSub = prevSub; + shouldTrack = prevShouldTrack; + cleanupDeps(computed3); + computed3.flags &= ~2; + } +} +function removeSub(link, soft = false) { + const { dep, prevSub, nextSub } = link; + if (prevSub) { + prevSub.nextSub = nextSub; + link.prevSub = void 0; + } + if (nextSub) { + nextSub.prevSub = prevSub; + link.nextSub = void 0; + } + if (dep.subsHead === link) { + dep.subsHead = nextSub; + } + if (dep.subs === link) { + dep.subs = prevSub; + if (!prevSub && dep.computed) { + dep.computed.flags &= ~4; + for (let l = dep.computed.deps; l; l = l.nextDep) { + removeSub(l, true); + } + } + } + if (!soft && !--dep.sc && dep.map) { + dep.map.delete(dep.key); + } +} +function removeDep(link) { + const { prevDep, nextDep } = link; + if (prevDep) { + prevDep.nextDep = nextDep; + link.prevDep = void 0; + } + if (nextDep) { + nextDep.prevDep = prevDep; + link.nextDep = void 0; + } +} +function effect(fn, options) { + if (fn.effect instanceof ReactiveEffect) { + fn = fn.effect.fn; + } + const e = new ReactiveEffect(fn); + if (options) { + extend(e, options); + } + try { + e.run(); + } catch (err) { + e.stop(); + throw err; + } + const runner = e.run.bind(e); + runner.effect = e; + return runner; +} +function stop(runner) { + runner.effect.stop(); +} +var shouldTrack = true; +var trackStack = []; +function pauseTracking() { + trackStack.push(shouldTrack); + shouldTrack = false; +} +function resetTracking() { + const last = trackStack.pop(); + shouldTrack = last === void 0 ? true : last; +} +function cleanupEffect(e) { + const { cleanup } = e; + e.cleanup = void 0; + if (cleanup) { + const prevSub = activeSub; + activeSub = void 0; + try { + cleanup(); + } finally { + activeSub = prevSub; + } + } +} +var globalVersion = 0; +var Link = class { + constructor(sub, dep) { + this.sub = sub; + this.dep = dep; + this.version = dep.version; + this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0; + } +}; +var Dep = class { + constructor(computed3) { + this.computed = computed3; + this.version = 0; + this.activeLink = void 0; + this.subs = void 0; + this.map = void 0; + this.key = void 0; + this.sc = 0; + if (true) { + this.subsHead = void 0; + } + } + track(debugInfo) { + if (!activeSub || !shouldTrack || activeSub === this.computed) { + return; + } + let link = this.activeLink; + if (link === void 0 || link.sub !== activeSub) { + link = this.activeLink = new Link(activeSub, this); + if (!activeSub.deps) { + activeSub.deps = activeSub.depsTail = link; + } else { + link.prevDep = activeSub.depsTail; + activeSub.depsTail.nextDep = link; + activeSub.depsTail = link; + } + addSub(link); + } else if (link.version === -1) { + link.version = this.version; + if (link.nextDep) { + const next = link.nextDep; + next.prevDep = link.prevDep; + if (link.prevDep) { + link.prevDep.nextDep = next; + } + link.prevDep = activeSub.depsTail; + link.nextDep = void 0; + activeSub.depsTail.nextDep = link; + activeSub.depsTail = link; + if (activeSub.deps === link) { + activeSub.deps = next; + } + } + } + if (activeSub.onTrack) { + activeSub.onTrack( + extend( + { + effect: activeSub + }, + debugInfo + ) + ); + } + return link; + } + trigger(debugInfo) { + this.version++; + globalVersion++; + this.notify(debugInfo); + } + notify(debugInfo) { + startBatch(); + try { + if (true) { + for (let head = this.subsHead; head; head = head.nextSub) { + if (head.sub.onTrigger && !(head.sub.flags & 8)) { + head.sub.onTrigger( + extend( + { + effect: head.sub + }, + debugInfo + ) + ); + } + } + } + for (let link = this.subs; link; link = link.prevSub) { + if (link.sub.notify()) { + ; + link.sub.dep.notify(); + } + } + } finally { + endBatch(); + } + } +}; +function addSub(link) { + link.dep.sc++; + if (link.sub.flags & 4) { + const computed3 = link.dep.computed; + if (computed3 && !link.dep.subs) { + computed3.flags |= 4 | 16; + for (let l = computed3.deps; l; l = l.nextDep) { + addSub(l); + } + } + const currentTail = link.dep.subs; + if (currentTail !== link) { + link.prevSub = currentTail; + if (currentTail) currentTail.nextSub = link; + } + if (link.dep.subsHead === void 0) { + link.dep.subsHead = link; + } + link.dep.subs = link; + } +} +var targetMap = /* @__PURE__ */ new WeakMap(); +var ITERATE_KEY = Symbol( + true ? "Object iterate" : "" +); +var MAP_KEY_ITERATE_KEY = Symbol( + true ? "Map keys iterate" : "" +); +var ARRAY_ITERATE_KEY = Symbol( + true ? "Array iterate" : "" +); +function track(target, type, key) { + if (shouldTrack && activeSub) { + let depsMap = targetMap.get(target); + if (!depsMap) { + targetMap.set(target, depsMap = /* @__PURE__ */ new Map()); + } + let dep = depsMap.get(key); + if (!dep) { + depsMap.set(key, dep = new Dep()); + dep.map = depsMap; + dep.key = key; + } + if (true) { + dep.track({ + target, + type, + key + }); + } else { + dep.track(); + } + } +} +function trigger(target, type, key, newValue, oldValue, oldTarget) { + const depsMap = targetMap.get(target); + if (!depsMap) { + globalVersion++; + return; + } + const run = (dep) => { + if (dep) { + if (true) { + dep.trigger({ + target, + type, + key, + newValue, + oldValue, + oldTarget + }); + } else { + dep.trigger(); + } + } + }; + startBatch(); + if (type === "clear") { + depsMap.forEach(run); + } else { + const targetIsArray = isArray(target); + const isArrayIndex = targetIsArray && isIntegerKey(key); + if (targetIsArray && key === "length") { + const newLength = Number(newValue); + depsMap.forEach((dep, key2) => { + if (key2 === "length" || key2 === ARRAY_ITERATE_KEY || !isSymbol(key2) && key2 >= newLength) { + run(dep); + } + }); + } else { + if (key !== void 0 || depsMap.has(void 0)) { + run(depsMap.get(key)); + } + if (isArrayIndex) { + run(depsMap.get(ARRAY_ITERATE_KEY)); + } + switch (type) { + case "add": + if (!targetIsArray) { + run(depsMap.get(ITERATE_KEY)); + if (isMap(target)) { + run(depsMap.get(MAP_KEY_ITERATE_KEY)); + } + } else if (isArrayIndex) { + run(depsMap.get("length")); + } + break; + case "delete": + if (!targetIsArray) { + run(depsMap.get(ITERATE_KEY)); + if (isMap(target)) { + run(depsMap.get(MAP_KEY_ITERATE_KEY)); + } + } + break; + case "set": + if (isMap(target)) { + run(depsMap.get(ITERATE_KEY)); + } + break; + } + } + } + endBatch(); +} +function getDepFromReactive(object, key) { + const depMap = targetMap.get(object); + return depMap && depMap.get(key); +} +function reactiveReadArray(array) { + const raw = toRaw(array); + if (raw === array) return raw; + track(raw, "iterate", ARRAY_ITERATE_KEY); + return isShallow(array) ? raw : raw.map(toReactive); +} +function shallowReadArray(arr) { + track(arr = toRaw(arr), "iterate", ARRAY_ITERATE_KEY); + return arr; +} +var arrayInstrumentations = { + __proto__: null, + [Symbol.iterator]() { + return iterator(this, Symbol.iterator, toReactive); + }, + concat(...args) { + return reactiveReadArray(this).concat( + ...args.map((x) => isArray(x) ? reactiveReadArray(x) : x) + ); + }, + entries() { + return iterator(this, "entries", (value) => { + value[1] = toReactive(value[1]); + return value; + }); + }, + every(fn, thisArg) { + return apply(this, "every", fn, thisArg, void 0, arguments); + }, + filter(fn, thisArg) { + return apply(this, "filter", fn, thisArg, (v) => v.map(toReactive), arguments); + }, + find(fn, thisArg) { + return apply(this, "find", fn, thisArg, toReactive, arguments); + }, + findIndex(fn, thisArg) { + return apply(this, "findIndex", fn, thisArg, void 0, arguments); + }, + findLast(fn, thisArg) { + return apply(this, "findLast", fn, thisArg, toReactive, arguments); + }, + findLastIndex(fn, thisArg) { + return apply(this, "findLastIndex", fn, thisArg, void 0, arguments); + }, + // flat, flatMap could benefit from ARRAY_ITERATE but are not straight-forward to implement + forEach(fn, thisArg) { + return apply(this, "forEach", fn, thisArg, void 0, arguments); + }, + includes(...args) { + return searchProxy(this, "includes", args); + }, + indexOf(...args) { + return searchProxy(this, "indexOf", args); + }, + join(separator) { + return reactiveReadArray(this).join(separator); + }, + // keys() iterator only reads `length`, no optimisation required + lastIndexOf(...args) { + return searchProxy(this, "lastIndexOf", args); + }, + map(fn, thisArg) { + return apply(this, "map", fn, thisArg, void 0, arguments); + }, + pop() { + return noTracking(this, "pop"); + }, + push(...args) { + return noTracking(this, "push", args); + }, + reduce(fn, ...args) { + return reduce(this, "reduce", fn, args); + }, + reduceRight(fn, ...args) { + return reduce(this, "reduceRight", fn, args); + }, + shift() { + return noTracking(this, "shift"); + }, + // slice could use ARRAY_ITERATE but also seems to beg for range tracking + some(fn, thisArg) { + return apply(this, "some", fn, thisArg, void 0, arguments); + }, + splice(...args) { + return noTracking(this, "splice", args); + }, + toReversed() { + return reactiveReadArray(this).toReversed(); + }, + toSorted(comparer) { + return reactiveReadArray(this).toSorted(comparer); + }, + toSpliced(...args) { + return reactiveReadArray(this).toSpliced(...args); + }, + unshift(...args) { + return noTracking(this, "unshift", args); + }, + values() { + return iterator(this, "values", toReactive); + } +}; +function iterator(self2, method, wrapValue) { + const arr = shallowReadArray(self2); + const iter = arr[method](); + if (arr !== self2 && !isShallow(self2)) { + iter._next = iter.next; + iter.next = () => { + const result = iter._next(); + if (result.value) { + result.value = wrapValue(result.value); + } + return result; + }; + } + return iter; +} +var arrayProto = Array.prototype; +function apply(self2, method, fn, thisArg, wrappedRetFn, args) { + const arr = shallowReadArray(self2); + const needsWrap = arr !== self2 && !isShallow(self2); + const methodFn = arr[method]; + if (methodFn !== arrayProto[method]) { + const result2 = methodFn.apply(self2, args); + return needsWrap ? toReactive(result2) : result2; + } + let wrappedFn = fn; + if (arr !== self2) { + if (needsWrap) { + wrappedFn = function(item, index) { + return fn.call(this, toReactive(item), index, self2); + }; + } else if (fn.length > 2) { + wrappedFn = function(item, index) { + return fn.call(this, item, index, self2); + }; + } + } + const result = methodFn.call(arr, wrappedFn, thisArg); + return needsWrap && wrappedRetFn ? wrappedRetFn(result) : result; +} +function reduce(self2, method, fn, args) { + const arr = shallowReadArray(self2); + let wrappedFn = fn; + if (arr !== self2) { + if (!isShallow(self2)) { + wrappedFn = function(acc, item, index) { + return fn.call(this, acc, toReactive(item), index, self2); + }; + } else if (fn.length > 3) { + wrappedFn = function(acc, item, index) { + return fn.call(this, acc, item, index, self2); + }; + } + } + return arr[method](wrappedFn, ...args); +} +function searchProxy(self2, method, args) { + const arr = toRaw(self2); + track(arr, "iterate", ARRAY_ITERATE_KEY); + const res = arr[method](...args); + if ((res === -1 || res === false) && isProxy(args[0])) { + args[0] = toRaw(args[0]); + return arr[method](...args); + } + return res; +} +function noTracking(self2, method, args = []) { + pauseTracking(); + startBatch(); + const res = toRaw(self2)[method].apply(self2, args); + endBatch(); + resetTracking(); + return res; +} +var isNonTrackableKeys = makeMap(`__proto__,__v_isRef,__isVue`); +var builtInSymbols = new Set( + Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol) +); +function hasOwnProperty2(key) { + if (!isSymbol(key)) key = String(key); + const obj = toRaw(this); + track(obj, "has", key); + return obj.hasOwnProperty(key); +} +var BaseReactiveHandler = class { + constructor(_isReadonly = false, _isShallow = false) { + this._isReadonly = _isReadonly; + this._isShallow = _isShallow; + } + get(target, key, receiver) { + if (key === "__v_skip") return target["__v_skip"]; + const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow; + if (key === "__v_isReactive") { + return !isReadonly2; + } else if (key === "__v_isReadonly") { + return isReadonly2; + } else if (key === "__v_isShallow") { + return isShallow2; + } else if (key === "__v_raw") { + if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype + // this means the receiver is a user proxy of the reactive proxy + Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) { + return target; + } + return; + } + const targetIsArray = isArray(target); + if (!isReadonly2) { + let fn; + if (targetIsArray && (fn = arrayInstrumentations[key])) { + return fn; + } + if (key === "hasOwnProperty") { + return hasOwnProperty2; + } + } + const res = Reflect.get( + target, + key, + // if this is a proxy wrapping a ref, return methods using the raw ref + // as receiver so that we don't have to call `toRaw` on the ref in all + // its class methods + isRef2(target) ? target : receiver + ); + if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) { + return res; + } + if (!isReadonly2) { + track(target, "get", key); + } + if (isShallow2) { + return res; + } + if (isRef2(res)) { + return targetIsArray && isIntegerKey(key) ? res : res.value; + } + if (isObject(res)) { + return isReadonly2 ? readonly(res) : reactive(res); + } + return res; + } +}; +var MutableReactiveHandler = class extends BaseReactiveHandler { + constructor(isShallow2 = false) { + super(false, isShallow2); + } + set(target, key, value, receiver) { + let oldValue = target[key]; + if (!this._isShallow) { + const isOldValueReadonly = isReadonly(oldValue); + if (!isShallow(value) && !isReadonly(value)) { + oldValue = toRaw(oldValue); + value = toRaw(value); + } + if (!isArray(target) && isRef2(oldValue) && !isRef2(value)) { + if (isOldValueReadonly) { + return false; + } else { + oldValue.value = value; + return true; + } + } + } + const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key); + const result = Reflect.set( + target, + key, + value, + isRef2(target) ? target : receiver + ); + if (target === toRaw(receiver)) { + if (!hadKey) { + trigger(target, "add", key, value); + } else if (hasChanged(value, oldValue)) { + trigger(target, "set", key, value, oldValue); + } + } + return result; + } + deleteProperty(target, key) { + const hadKey = hasOwn(target, key); + const oldValue = target[key]; + const result = Reflect.deleteProperty(target, key); + if (result && hadKey) { + trigger(target, "delete", key, void 0, oldValue); + } + return result; + } + has(target, key) { + const result = Reflect.has(target, key); + if (!isSymbol(key) || !builtInSymbols.has(key)) { + track(target, "has", key); + } + return result; + } + ownKeys(target) { + track( + target, + "iterate", + isArray(target) ? "length" : ITERATE_KEY + ); + return Reflect.ownKeys(target); + } +}; +var ReadonlyReactiveHandler = class extends BaseReactiveHandler { + constructor(isShallow2 = false) { + super(true, isShallow2); + } + set(target, key) { + if (true) { + warn( + `Set operation on key "${String(key)}" failed: target is readonly.`, + target + ); + } + return true; + } + deleteProperty(target, key) { + if (true) { + warn( + `Delete operation on key "${String(key)}" failed: target is readonly.`, + target + ); + } + return true; + } +}; +var mutableHandlers = new MutableReactiveHandler(); +var readonlyHandlers = new ReadonlyReactiveHandler(); +var shallowReactiveHandlers = new MutableReactiveHandler(true); +var shallowReadonlyHandlers = new ReadonlyReactiveHandler(true); +var toShallow = (value) => value; +var getProto = (v) => Reflect.getPrototypeOf(v); +function createIterableMethod(method, isReadonly2, isShallow2) { + return function(...args) { + const target = this["__v_raw"]; + const rawTarget = toRaw(target); + const targetIsMap = isMap(rawTarget); + const isPair = method === "entries" || method === Symbol.iterator && targetIsMap; + const isKeyOnly = method === "keys" && targetIsMap; + const innerIterator = target[method](...args); + const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive; + !isReadonly2 && track( + rawTarget, + "iterate", + isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY + ); + return { + // iterator protocol + next() { + const { value, done } = innerIterator.next(); + return done ? { value, done } : { + value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value), + done + }; + }, + // iterable protocol + [Symbol.iterator]() { + return this; + } + }; + }; +} +function createReadonlyMethod(type) { + return function(...args) { + if (true) { + const key = args[0] ? `on key "${args[0]}" ` : ``; + warn( + `${capitalize(type)} operation ${key}failed: target is readonly.`, + toRaw(this) + ); + } + return type === "delete" ? false : type === "clear" ? void 0 : this; + }; +} +function createInstrumentations(readonly2, shallow) { + const instrumentations = { + get(key) { + const target = this["__v_raw"]; + const rawTarget = toRaw(target); + const rawKey = toRaw(key); + if (!readonly2) { + if (hasChanged(key, rawKey)) { + track(rawTarget, "get", key); + } + track(rawTarget, "get", rawKey); + } + const { has } = getProto(rawTarget); + const wrap = shallow ? toShallow : readonly2 ? toReadonly : toReactive; + if (has.call(rawTarget, key)) { + return wrap(target.get(key)); + } else if (has.call(rawTarget, rawKey)) { + return wrap(target.get(rawKey)); + } else if (target !== rawTarget) { + target.get(key); + } + }, + get size() { + const target = this["__v_raw"]; + !readonly2 && track(toRaw(target), "iterate", ITERATE_KEY); + return Reflect.get(target, "size", target); + }, + has(key) { + const target = this["__v_raw"]; + const rawTarget = toRaw(target); + const rawKey = toRaw(key); + if (!readonly2) { + if (hasChanged(key, rawKey)) { + track(rawTarget, "has", key); + } + track(rawTarget, "has", rawKey); + } + return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey); + }, + forEach(callback, thisArg) { + const observed = this; + const target = observed["__v_raw"]; + const rawTarget = toRaw(target); + const wrap = shallow ? toShallow : readonly2 ? toReadonly : toReactive; + !readonly2 && track(rawTarget, "iterate", ITERATE_KEY); + return target.forEach((value, key) => { + return callback.call(thisArg, wrap(value), wrap(key), observed); + }); + } + }; + extend( + instrumentations, + readonly2 ? { + add: createReadonlyMethod("add"), + set: createReadonlyMethod("set"), + delete: createReadonlyMethod("delete"), + clear: createReadonlyMethod("clear") + } : { + add(value) { + if (!shallow && !isShallow(value) && !isReadonly(value)) { + value = toRaw(value); + } + const target = toRaw(this); + const proto = getProto(target); + const hadKey = proto.has.call(target, value); + if (!hadKey) { + target.add(value); + trigger(target, "add", value, value); + } + return this; + }, + set(key, value) { + if (!shallow && !isShallow(value) && !isReadonly(value)) { + value = toRaw(value); + } + const target = toRaw(this); + const { has, get } = getProto(target); + let hadKey = has.call(target, key); + if (!hadKey) { + key = toRaw(key); + hadKey = has.call(target, key); + } else if (true) { + checkIdentityKeys(target, has, key); + } + const oldValue = get.call(target, key); + target.set(key, value); + if (!hadKey) { + trigger(target, "add", key, value); + } else if (hasChanged(value, oldValue)) { + trigger(target, "set", key, value, oldValue); + } + return this; + }, + delete(key) { + const target = toRaw(this); + const { has, get } = getProto(target); + let hadKey = has.call(target, key); + if (!hadKey) { + key = toRaw(key); + hadKey = has.call(target, key); + } else if (true) { + checkIdentityKeys(target, has, key); + } + const oldValue = get ? get.call(target, key) : void 0; + const result = target.delete(key); + if (hadKey) { + trigger(target, "delete", key, void 0, oldValue); + } + return result; + }, + clear() { + const target = toRaw(this); + const hadItems = target.size !== 0; + const oldTarget = true ? isMap(target) ? new Map(target) : new Set(target) : void 0; + const result = target.clear(); + if (hadItems) { + trigger( + target, + "clear", + void 0, + void 0, + oldTarget + ); + } + return result; + } + } + ); + const iteratorMethods = [ + "keys", + "values", + "entries", + Symbol.iterator + ]; + iteratorMethods.forEach((method) => { + instrumentations[method] = createIterableMethod(method, readonly2, shallow); + }); + return instrumentations; +} +function createInstrumentationGetter(isReadonly2, shallow) { + const instrumentations = createInstrumentations(isReadonly2, shallow); + return (target, key, receiver) => { + if (key === "__v_isReactive") { + return !isReadonly2; + } else if (key === "__v_isReadonly") { + return isReadonly2; + } else if (key === "__v_raw") { + return target; + } + return Reflect.get( + hasOwn(instrumentations, key) && key in target ? instrumentations : target, + key, + receiver + ); + }; +} +var mutableCollectionHandlers = { + get: createInstrumentationGetter(false, false) +}; +var shallowCollectionHandlers = { + get: createInstrumentationGetter(false, true) +}; +var readonlyCollectionHandlers = { + get: createInstrumentationGetter(true, false) +}; +var shallowReadonlyCollectionHandlers = { + get: createInstrumentationGetter(true, true) +}; +function checkIdentityKeys(target, has, key) { + const rawKey = toRaw(key); + if (rawKey !== key && has.call(target, rawKey)) { + const type = toRawType(target); + warn( + `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.` + ); + } +} +var reactiveMap = /* @__PURE__ */ new WeakMap(); +var shallowReactiveMap = /* @__PURE__ */ new WeakMap(); +var readonlyMap = /* @__PURE__ */ new WeakMap(); +var shallowReadonlyMap = /* @__PURE__ */ new WeakMap(); +function targetTypeMap(rawType) { + switch (rawType) { + case "Object": + case "Array": + return 1; + case "Map": + case "Set": + case "WeakMap": + case "WeakSet": + return 2; + default: + return 0; + } +} +function getTargetType(value) { + return value["__v_skip"] || !Object.isExtensible(value) ? 0 : targetTypeMap(toRawType(value)); +} +function reactive(target) { + if (isReadonly(target)) { + return target; + } + return createReactiveObject( + target, + false, + mutableHandlers, + mutableCollectionHandlers, + reactiveMap + ); +} +function shallowReactive(target) { + return createReactiveObject( + target, + false, + shallowReactiveHandlers, + shallowCollectionHandlers, + shallowReactiveMap + ); +} +function readonly(target) { + return createReactiveObject( + target, + true, + readonlyHandlers, + readonlyCollectionHandlers, + readonlyMap + ); +} +function shallowReadonly(target) { + return createReactiveObject( + target, + true, + shallowReadonlyHandlers, + shallowReadonlyCollectionHandlers, + shallowReadonlyMap + ); +} +function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) { + if (!isObject(target)) { + if (true) { + warn( + `value cannot be made ${isReadonly2 ? "readonly" : "reactive"}: ${String( + target + )}` + ); + } + return target; + } + if (target["__v_raw"] && !(isReadonly2 && target["__v_isReactive"])) { + return target; + } + const existingProxy = proxyMap.get(target); + if (existingProxy) { + return existingProxy; + } + const targetType = getTargetType(target); + if (targetType === 0) { + return target; + } + const proxy = new Proxy( + target, + targetType === 2 ? collectionHandlers : baseHandlers + ); + proxyMap.set(target, proxy); + return proxy; +} +function isReactive(value) { + if (isReadonly(value)) { + return isReactive(value["__v_raw"]); + } + return !!(value && value["__v_isReactive"]); +} +function isReadonly(value) { + return !!(value && value["__v_isReadonly"]); +} +function isShallow(value) { + return !!(value && value["__v_isShallow"]); +} +function isProxy(value) { + return value ? !!value["__v_raw"] : false; +} +function toRaw(observed) { + const raw = observed && observed["__v_raw"]; + return raw ? toRaw(raw) : observed; +} +function markRaw(value) { + if (!hasOwn(value, "__v_skip") && Object.isExtensible(value)) { + def(value, "__v_skip", true); + } + return value; +} +var toReactive = (value) => isObject(value) ? reactive(value) : value; +var toReadonly = (value) => isObject(value) ? readonly(value) : value; +function isRef2(r) { + return r ? r["__v_isRef"] === true : false; +} +function ref(value) { + return createRef(value, false); +} +function shallowRef(value) { + return createRef(value, true); +} +function createRef(rawValue, shallow) { + if (isRef2(rawValue)) { + return rawValue; + } + return new RefImpl(rawValue, shallow); +} +var RefImpl = class { + constructor(value, isShallow2) { + this.dep = new Dep(); + this["__v_isRef"] = true; + this["__v_isShallow"] = false; + this._rawValue = isShallow2 ? value : toRaw(value); + this._value = isShallow2 ? value : toReactive(value); + this["__v_isShallow"] = isShallow2; + } + get value() { + if (true) { + this.dep.track({ + target: this, + type: "get", + key: "value" + }); + } else { + this.dep.track(); + } + return this._value; + } + set value(newValue) { + const oldValue = this._rawValue; + const useDirectValue = this["__v_isShallow"] || isShallow(newValue) || isReadonly(newValue); + newValue = useDirectValue ? newValue : toRaw(newValue); + if (hasChanged(newValue, oldValue)) { + this._rawValue = newValue; + this._value = useDirectValue ? newValue : toReactive(newValue); + if (true) { + this.dep.trigger({ + target: this, + type: "set", + key: "value", + newValue, + oldValue + }); + } else { + this.dep.trigger(); + } + } + } +}; +function triggerRef(ref2) { + if (ref2.dep) { + if (true) { + ref2.dep.trigger({ + target: ref2, + type: "set", + key: "value", + newValue: ref2._value + }); + } else { + ref2.dep.trigger(); + } + } +} +function unref(ref2) { + return isRef2(ref2) ? ref2.value : ref2; +} +function toValue(source) { + return isFunction(source) ? source() : unref(source); +} +var shallowUnwrapHandlers = { + get: (target, key, receiver) => key === "__v_raw" ? target : unref(Reflect.get(target, key, receiver)), + set: (target, key, value, receiver) => { + const oldValue = target[key]; + if (isRef2(oldValue) && !isRef2(value)) { + oldValue.value = value; + return true; + } else { + return Reflect.set(target, key, value, receiver); + } + } +}; +function proxyRefs(objectWithRefs) { + return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers); +} +var CustomRefImpl = class { + constructor(factory) { + this["__v_isRef"] = true; + this._value = void 0; + const dep = this.dep = new Dep(); + const { get, set } = factory(dep.track.bind(dep), dep.trigger.bind(dep)); + this._get = get; + this._set = set; + } + get value() { + return this._value = this._get(); + } + set value(newVal) { + this._set(newVal); + } +}; +function customRef(factory) { + return new CustomRefImpl(factory); +} +function toRefs(object) { + if (!isProxy(object)) { + warn(`toRefs() expects a reactive object but received a plain one.`); + } + const ret = isArray(object) ? new Array(object.length) : {}; + for (const key in object) { + ret[key] = propertyToRef(object, key); + } + return ret; +} +var ObjectRefImpl = class { + constructor(_object, _key, _defaultValue) { + this._object = _object; + this._key = _key; + this._defaultValue = _defaultValue; + this["__v_isRef"] = true; + this._value = void 0; + } + get value() { + const val = this._object[this._key]; + return this._value = val === void 0 ? this._defaultValue : val; + } + set value(newVal) { + this._object[this._key] = newVal; + } + get dep() { + return getDepFromReactive(toRaw(this._object), this._key); + } +}; +var GetterRefImpl = class { + constructor(_getter) { + this._getter = _getter; + this["__v_isRef"] = true; + this["__v_isReadonly"] = true; + this._value = void 0; + } + get value() { + return this._value = this._getter(); + } +}; +function toRef(source, key, defaultValue) { + if (isRef2(source)) { + return source; + } else if (isFunction(source)) { + return new GetterRefImpl(source); + } else if (isObject(source) && arguments.length > 1) { + return propertyToRef(source, key, defaultValue); + } else { + return ref(source); + } +} +function propertyToRef(source, key, defaultValue) { + const val = source[key]; + return isRef2(val) ? val : new ObjectRefImpl(source, key, defaultValue); +} +var ComputedRefImpl = class { + constructor(fn, setter, isSSR) { + this.fn = fn; + this.setter = setter; + this._value = void 0; + this.dep = new Dep(this); + this.__v_isRef = true; + this.deps = void 0; + this.depsTail = void 0; + this.flags = 16; + this.globalVersion = globalVersion - 1; + this.next = void 0; + this.effect = this; + this["__v_isReadonly"] = !setter; + this.isSSR = isSSR; + } + /** + * @internal + */ + notify() { + this.flags |= 16; + if (!(this.flags & 8) && // avoid infinite self recursion + activeSub !== this) { + batch(this, true); + return true; + } else if (true) ; + } + get value() { + const link = true ? this.dep.track({ + target: this, + type: "get", + key: "value" + }) : this.dep.track(); + refreshComputed(this); + if (link) { + link.version = this.dep.version; + } + return this._value; + } + set value(newValue) { + if (this.setter) { + this.setter(newValue); + } else if (true) { + warn("Write operation failed: computed value is readonly"); + } + } +}; +function computed(getterOrOptions, debugOptions, isSSR = false) { + let getter; + let setter; + if (isFunction(getterOrOptions)) { + getter = getterOrOptions; + } else { + getter = getterOrOptions.get; + setter = getterOrOptions.set; + } + const cRef = new ComputedRefImpl(getter, setter, isSSR); + if (debugOptions && !isSSR) { + cRef.onTrack = debugOptions.onTrack; + cRef.onTrigger = debugOptions.onTrigger; + } + return cRef; +} +var TrackOpTypes = { + "GET": "get", + "HAS": "has", + "ITERATE": "iterate" +}; +var TriggerOpTypes = { + "SET": "set", + "ADD": "add", + "DELETE": "delete", + "CLEAR": "clear" +}; +var INITIAL_WATCHER_VALUE = {}; +var cleanupMap = /* @__PURE__ */ new WeakMap(); +var activeWatcher = void 0; +function getCurrentWatcher() { + return activeWatcher; +} +function onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) { + if (owner) { + let cleanups = cleanupMap.get(owner); + if (!cleanups) cleanupMap.set(owner, cleanups = []); + cleanups.push(cleanupFn); + } else if (!failSilently) { + warn( + `onWatcherCleanup() was called when there was no active watcher to associate with.` + ); + } +} +function watch(source, cb, options = EMPTY_OBJ) { + const { immediate, deep, once, scheduler, augmentJob, call } = options; + const warnInvalidSource = (s) => { + (options.onWarn || warn)( + `Invalid watch source: `, + s, + `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.` + ); + }; + const reactiveGetter = (source2) => { + if (deep) return source2; + if (isShallow(source2) || deep === false || deep === 0) + return traverse(source2, 1); + return traverse(source2); + }; + let effect2; + let getter; + let cleanup; + let boundCleanup; + let forceTrigger = false; + let isMultiSource = false; + if (isRef2(source)) { + getter = () => source.value; + forceTrigger = isShallow(source); + } else if (isReactive(source)) { + getter = () => reactiveGetter(source); + forceTrigger = true; + } else if (isArray(source)) { + isMultiSource = true; + forceTrigger = source.some((s) => isReactive(s) || isShallow(s)); + getter = () => source.map((s) => { + if (isRef2(s)) { + return s.value; + } else if (isReactive(s)) { + return reactiveGetter(s); + } else if (isFunction(s)) { + return call ? call(s, 2) : s(); + } else { + warnInvalidSource(s); + } + }); + } else if (isFunction(source)) { + if (cb) { + getter = call ? () => call(source, 2) : source; + } else { + getter = () => { + if (cleanup) { + pauseTracking(); + try { + cleanup(); + } finally { + resetTracking(); + } + } + const currentEffect = activeWatcher; + activeWatcher = effect2; + try { + return call ? call(source, 3, [boundCleanup]) : source(boundCleanup); + } finally { + activeWatcher = currentEffect; + } + }; + } + } else { + getter = NOOP; + warnInvalidSource(source); + } + if (cb && deep) { + const baseGetter = getter; + const depth = deep === true ? Infinity : deep; + getter = () => traverse(baseGetter(), depth); + } + const scope = getCurrentScope(); + const watchHandle = () => { + effect2.stop(); + if (scope && scope.active) { + remove(scope.effects, effect2); + } + }; + if (once && cb) { + const _cb = cb; + cb = (...args) => { + _cb(...args); + watchHandle(); + }; + } + let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE; + const job = (immediateFirstRun) => { + if (!(effect2.flags & 1) || !effect2.dirty && !immediateFirstRun) { + return; + } + if (cb) { + const newValue = effect2.run(); + if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue))) { + if (cleanup) { + cleanup(); + } + const currentWatcher = activeWatcher; + activeWatcher = effect2; + try { + const args = [ + newValue, + // pass undefined as the old value when it's changed for the first time + oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue, + boundCleanup + ]; + call ? call(cb, 3, args) : ( + // @ts-expect-error + cb(...args) + ); + oldValue = newValue; + } finally { + activeWatcher = currentWatcher; + } + } + } else { + effect2.run(); + } + }; + if (augmentJob) { + augmentJob(job); + } + effect2 = new ReactiveEffect(getter); + effect2.scheduler = scheduler ? () => scheduler(job, false) : job; + boundCleanup = (fn) => onWatcherCleanup(fn, false, effect2); + cleanup = effect2.onStop = () => { + const cleanups = cleanupMap.get(effect2); + if (cleanups) { + if (call) { + call(cleanups, 4); + } else { + for (const cleanup2 of cleanups) cleanup2(); + } + cleanupMap.delete(effect2); + } + }; + if (true) { + effect2.onTrack = options.onTrack; + effect2.onTrigger = options.onTrigger; + } + if (cb) { + if (immediate) { + job(true); + } else { + oldValue = effect2.run(); + } + } else if (scheduler) { + scheduler(job.bind(null, true), true); + } else { + effect2.run(); + } + watchHandle.pause = effect2.pause.bind(effect2); + watchHandle.resume = effect2.resume.bind(effect2); + watchHandle.stop = watchHandle; + return watchHandle; +} +function traverse(value, depth = Infinity, seen) { + if (depth <= 0 || !isObject(value) || value["__v_skip"]) { + return value; + } + seen = seen || /* @__PURE__ */ new Set(); + if (seen.has(value)) { + return value; + } + seen.add(value); + depth--; + if (isRef2(value)) { + traverse(value.value, depth, seen); + } else if (isArray(value)) { + for (let i = 0; i < value.length; i++) { + traverse(value[i], depth, seen); + } + } else if (isSet(value) || isMap(value)) { + value.forEach((v) => { + traverse(v, depth, seen); + }); + } else if (isPlainObject(value)) { + for (const key in value) { + traverse(value[key], depth, seen); + } + for (const key of Object.getOwnPropertySymbols(value)) { + if (Object.prototype.propertyIsEnumerable.call(value, key)) { + traverse(value[key], depth, seen); + } + } + } + return value; +} + +// node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js +var stack = []; +function pushWarningContext(vnode) { + stack.push(vnode); +} +function popWarningContext() { + stack.pop(); +} +var isWarning = false; +function warn$1(msg, ...args) { + if (isWarning) return; + isWarning = true; + pauseTracking(); + const instance = stack.length ? stack[stack.length - 1].component : null; + const appWarnHandler = instance && instance.appContext.config.warnHandler; + const trace = getComponentTrace(); + if (appWarnHandler) { + callWithErrorHandling( + appWarnHandler, + instance, + 11, + [ + // eslint-disable-next-line no-restricted-syntax + msg + args.map((a) => { + var _a, _b; + return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a); + }).join(""), + instance && instance.proxy, + trace.map( + ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>` + ).join("\n"), + trace + ] + ); + } else { + const warnArgs = [`[Vue warn]: ${msg}`, ...args]; + if (trace.length && // avoid spamming console during tests + true) { + warnArgs.push(` +`, ...formatTrace(trace)); + } + console.warn(...warnArgs); + } + resetTracking(); + isWarning = false; +} +function getComponentTrace() { + let currentVNode = stack[stack.length - 1]; + if (!currentVNode) { + return []; + } + const normalizedStack = []; + while (currentVNode) { + const last = normalizedStack[0]; + if (last && last.vnode === currentVNode) { + last.recurseCount++; + } else { + normalizedStack.push({ + vnode: currentVNode, + recurseCount: 0 + }); + } + const parentInstance = currentVNode.component && currentVNode.component.parent; + currentVNode = parentInstance && parentInstance.vnode; + } + return normalizedStack; +} +function formatTrace(trace) { + const logs = []; + trace.forEach((entry, i) => { + logs.push(...i === 0 ? [] : [` +`], ...formatTraceEntry(entry)); + }); + return logs; +} +function formatTraceEntry({ vnode, recurseCount }) { + const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``; + const isRoot = vnode.component ? vnode.component.parent == null : false; + const open = ` at <${formatComponentName( + vnode.component, + vnode.type, + isRoot + )}`; + const close = `>` + postfix; + return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close]; +} +function formatProps(props) { + const res = []; + const keys = Object.keys(props); + keys.slice(0, 3).forEach((key) => { + res.push(...formatProp(key, props[key])); + }); + if (keys.length > 3) { + res.push(` ...`); + } + return res; +} +function formatProp(key, value, raw) { + if (isString(value)) { + value = JSON.stringify(value); + return raw ? value : [`${key}=${value}`]; + } else if (typeof value === "number" || typeof value === "boolean" || value == null) { + return raw ? value : [`${key}=${value}`]; + } else if (isRef2(value)) { + value = formatProp(key, toRaw(value.value), true); + return raw ? value : [`${key}=Ref<`, value, `>`]; + } else if (isFunction(value)) { + return [`${key}=fn${value.name ? `<${value.name}>` : ``}`]; + } else { + value = toRaw(value); + return raw ? value : [`${key}=`, value]; + } +} +function assertNumber(val, type) { + if (false) return; + if (val === void 0) { + return; + } else if (typeof val !== "number") { + warn$1(`${type} is not a valid number - got ${JSON.stringify(val)}.`); + } else if (isNaN(val)) { + warn$1(`${type} is NaN - the duration expression might be incorrect.`); + } +} +var 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" +}; +var ErrorTypeStrings$1 = { + ["sp"]: "serverPrefetch hook", + ["bc"]: "beforeCreate hook", + ["c"]: "created hook", + ["bm"]: "beforeMount hook", + ["m"]: "mounted hook", + ["bu"]: "beforeUpdate hook", + ["u"]: "updated", + ["bum"]: "beforeUnmount hook", + ["um"]: "unmounted hook", + ["a"]: "activated hook", + ["da"]: "deactivated hook", + ["ec"]: "errorCaptured hook", + ["rtc"]: "renderTracked hook", + ["rtg"]: "renderTriggered hook", + [0]: "setup function", + [1]: "render function", + [2]: "watcher getter", + [3]: "watcher callback", + [4]: "watcher cleanup function", + [5]: "native event handler", + [6]: "component event handler", + [7]: "vnode hook", + [8]: "directive hook", + [9]: "transition hook", + [10]: "app errorHandler", + [11]: "app warnHandler", + [12]: "ref function", + [13]: "async component loader", + [14]: "scheduler flush", + [15]: "component update", + [16]: "app unmount cleanup function" +}; +function callWithErrorHandling(fn, instance, type, args) { + try { + return args ? fn(...args) : fn(); + } catch (err) { + handleError(err, instance, type); + } +} +function callWithAsyncErrorHandling(fn, instance, type, args) { + if (isFunction(fn)) { + const res = callWithErrorHandling(fn, instance, type, args); + if (res && isPromise(res)) { + res.catch((err) => { + handleError(err, instance, type); + }); + } + return res; + } + if (isArray(fn)) { + const values = []; + for (let i = 0; i < fn.length; i++) { + values.push(callWithAsyncErrorHandling(fn[i], instance, type, args)); + } + return values; + } else if (true) { + warn$1( + `Invalid value type passed to callWithAsyncErrorHandling(): ${typeof fn}` + ); + } +} +function handleError(err, instance, type, throwInDev = true) { + const contextVNode = instance ? instance.vnode : null; + const { errorHandler, throwUnhandledErrorInProduction } = instance && instance.appContext.config || EMPTY_OBJ; + if (instance) { + let cur = instance.parent; + const exposedInstance = instance.proxy; + const errorInfo = true ? ErrorTypeStrings$1[type] : `https://vuejs.org/error-reference/#runtime-${type}`; + while (cur) { + const errorCapturedHooks = cur.ec; + if (errorCapturedHooks) { + for (let i = 0; i < errorCapturedHooks.length; i++) { + if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) { + return; + } + } + } + cur = cur.parent; + } + if (errorHandler) { + pauseTracking(); + callWithErrorHandling(errorHandler, null, 10, [ + err, + exposedInstance, + errorInfo + ]); + resetTracking(); + return; + } + } + logError(err, type, contextVNode, throwInDev, throwUnhandledErrorInProduction); +} +function logError(err, type, contextVNode, throwInDev = true, throwInProd = false) { + if (true) { + const info = ErrorTypeStrings$1[type]; + if (contextVNode) { + pushWarningContext(contextVNode); + } + warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`); + if (contextVNode) { + popWarningContext(); + } + if (throwInDev) { + throw err; + } else { + console.error(err); + } + } else if (throwInProd) { + throw err; + } else { + console.error(err); + } +} +var queue = []; +var flushIndex = -1; +var pendingPostFlushCbs = []; +var activePostFlushCbs = null; +var postFlushIndex = 0; +var resolvedPromise = Promise.resolve(); +var currentFlushPromise = null; +var RECURSION_LIMIT = 100; +function nextTick(fn) { + const p2 = currentFlushPromise || resolvedPromise; + return fn ? p2.then(this ? fn.bind(this) : fn) : p2; +} +function findInsertionIndex(id) { + let start = flushIndex + 1; + let end = queue.length; + while (start < end) { + const middle = start + end >>> 1; + const middleJob = queue[middle]; + const middleJobId = getId(middleJob); + if (middleJobId < id || middleJobId === id && middleJob.flags & 2) { + start = middle + 1; + } else { + end = middle; + } + } + return start; +} +function queueJob(job) { + if (!(job.flags & 1)) { + const jobId = getId(job); + const lastJob = queue[queue.length - 1]; + if (!lastJob || // fast path when the job id is larger than the tail + !(job.flags & 2) && jobId >= getId(lastJob)) { + queue.push(job); + } else { + queue.splice(findInsertionIndex(jobId), 0, job); + } + job.flags |= 1; + queueFlush(); + } +} +function queueFlush() { + if (!currentFlushPromise) { + currentFlushPromise = resolvedPromise.then(flushJobs); + } +} +function queuePostFlushCb(cb) { + if (!isArray(cb)) { + if (activePostFlushCbs && cb.id === -1) { + activePostFlushCbs.splice(postFlushIndex + 1, 0, cb); + } else if (!(cb.flags & 1)) { + pendingPostFlushCbs.push(cb); + cb.flags |= 1; + } + } else { + pendingPostFlushCbs.push(...cb); + } + queueFlush(); +} +function flushPreFlushCbs(instance, seen, i = flushIndex + 1) { + if (true) { + seen = seen || /* @__PURE__ */ new Map(); + } + for (; i < queue.length; i++) { + const cb = queue[i]; + if (cb && cb.flags & 2) { + if (instance && cb.id !== instance.uid) { + continue; + } + if (checkRecursiveUpdates(seen, cb)) { + continue; + } + queue.splice(i, 1); + i--; + if (cb.flags & 4) { + cb.flags &= ~1; + } + cb(); + if (!(cb.flags & 4)) { + cb.flags &= ~1; + } + } + } +} +function flushPostFlushCbs(seen) { + if (pendingPostFlushCbs.length) { + const deduped = [...new Set(pendingPostFlushCbs)].sort( + (a, b) => getId(a) - getId(b) + ); + pendingPostFlushCbs.length = 0; + if (activePostFlushCbs) { + activePostFlushCbs.push(...deduped); + return; + } + activePostFlushCbs = deduped; + if (true) { + seen = seen || /* @__PURE__ */ new Map(); + } + for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) { + const cb = activePostFlushCbs[postFlushIndex]; + if (checkRecursiveUpdates(seen, cb)) { + continue; + } + if (cb.flags & 4) { + cb.flags &= ~1; + } + if (!(cb.flags & 8)) cb(); + cb.flags &= ~1; + } + activePostFlushCbs = null; + postFlushIndex = 0; + } +} +var getId = (job) => job.id == null ? job.flags & 2 ? -1 : Infinity : job.id; +function flushJobs(seen) { + if (true) { + seen = seen || /* @__PURE__ */ new Map(); + } + const check = true ? (job) => checkRecursiveUpdates(seen, job) : NOOP; + try { + for (flushIndex = 0; flushIndex < queue.length; flushIndex++) { + const job = queue[flushIndex]; + if (job && !(job.flags & 8)) { + if (check(job)) { + continue; + } + if (job.flags & 4) { + job.flags &= ~1; + } + callWithErrorHandling( + job, + job.i, + job.i ? 15 : 14 + ); + if (!(job.flags & 4)) { + job.flags &= ~1; + } + } + } + } finally { + for (; flushIndex < queue.length; flushIndex++) { + const job = queue[flushIndex]; + if (job) { + job.flags &= ~1; + } + } + flushIndex = -1; + queue.length = 0; + flushPostFlushCbs(seen); + currentFlushPromise = null; + if (queue.length || pendingPostFlushCbs.length) { + flushJobs(seen); + } + } +} +function checkRecursiveUpdates(seen, fn) { + const count = seen.get(fn) || 0; + if (count > RECURSION_LIMIT) { + const instance = fn.i; + const componentName = instance && getComponentName(instance.type); + handleError( + `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`, + null, + 10 + ); + return true; + } + seen.set(fn, count + 1); + return false; +} +var isHmrUpdating = false; +var hmrDirtyComponents = /* @__PURE__ */ new Map(); +if (true) { + getGlobalThis().__VUE_HMR_RUNTIME__ = { + createRecord: tryWrap(createRecord), + rerender: tryWrap(rerender), + reload: tryWrap(reload) + }; +} +var map = /* @__PURE__ */ new Map(); +function registerHMR(instance) { + const id = instance.type.__hmrId; + let record = map.get(id); + if (!record) { + createRecord(id, instance.type); + record = map.get(id); + } + record.instances.add(instance); +} +function unregisterHMR(instance) { + map.get(instance.type.__hmrId).instances.delete(instance); +} +function createRecord(id, initialDef) { + if (map.has(id)) { + return false; + } + map.set(id, { + initialDef: normalizeClassComponent(initialDef), + instances: /* @__PURE__ */ new Set() + }); + return true; +} +function normalizeClassComponent(component) { + return isClassComponent(component) ? component.__vccOpts : component; +} +function rerender(id, newRender) { + const record = map.get(id); + if (!record) { + return; + } + record.initialDef.render = newRender; + [...record.instances].forEach((instance) => { + if (newRender) { + instance.render = newRender; + normalizeClassComponent(instance.type).render = newRender; + } + instance.renderCache = []; + isHmrUpdating = true; + instance.update(); + isHmrUpdating = false; + }); +} +function reload(id, newComp) { + const record = map.get(id); + if (!record) return; + newComp = normalizeClassComponent(newComp); + updateComponentDef(record.initialDef, newComp); + const instances = [...record.instances]; + for (let i = 0; i < instances.length; i++) { + const instance = instances[i]; + const oldComp = normalizeClassComponent(instance.type); + let dirtyInstances = hmrDirtyComponents.get(oldComp); + if (!dirtyInstances) { + if (oldComp !== record.initialDef) { + updateComponentDef(oldComp, newComp); + } + hmrDirtyComponents.set(oldComp, dirtyInstances = /* @__PURE__ */ new Set()); + } + dirtyInstances.add(instance); + instance.appContext.propsCache.delete(instance.type); + instance.appContext.emitsCache.delete(instance.type); + instance.appContext.optionsCache.delete(instance.type); + if (instance.ceReload) { + dirtyInstances.add(instance); + instance.ceReload(newComp.styles); + dirtyInstances.delete(instance); + } else if (instance.parent) { + queueJob(() => { + isHmrUpdating = true; + instance.parent.update(); + isHmrUpdating = false; + dirtyInstances.delete(instance); + }); + } else if (instance.appContext.reload) { + instance.appContext.reload(); + } else if (typeof window !== "undefined") { + window.location.reload(); + } else { + console.warn( + "[HMR] Root or manually mounted instance modified. Full reload required." + ); + } + if (instance.root.ce && instance !== instance.root) { + instance.root.ce._removeChildStyle(oldComp); + } + } + queuePostFlushCb(() => { + hmrDirtyComponents.clear(); + }); +} +function updateComponentDef(oldComp, newComp) { + extend(oldComp, newComp); + for (const key in oldComp) { + if (key !== "__file" && !(key in newComp)) { + delete oldComp[key]; + } + } +} +function tryWrap(fn) { + return (id, arg) => { + try { + return fn(id, arg); + } catch (e) { + console.error(e); + console.warn( + `[HMR] Something went wrong during Vue component hot-reload. Full reload required.` + ); + } + }; +} +var devtools$1; +var buffer = []; +var devtoolsNotInstalled = false; +function emit$1(event, ...args) { + if (devtools$1) { + devtools$1.emit(event, ...args); + } else if (!devtoolsNotInstalled) { + buffer.push({ event, args }); + } +} +function setDevtoolsHook$1(hook, target) { + var _a, _b; + devtools$1 = hook; + if (devtools$1) { + devtools$1.enabled = true; + buffer.forEach(({ event, args }) => devtools$1.emit(event, ...args)); + buffer = []; + } else if ( + // handle late devtools injection - only do this if we are in an actual + // browser environment to avoid the timer handle stalling test runner exit + // (#4815) + typeof window !== "undefined" && // some envs mock window but not fully + window.HTMLElement && // also exclude jsdom + // eslint-disable-next-line no-restricted-syntax + !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes("jsdom")) + ) { + const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []; + replay.push((newHook) => { + setDevtoolsHook$1(newHook, target); + }); + setTimeout(() => { + if (!devtools$1) { + target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null; + devtoolsNotInstalled = true; + buffer = []; + } + }, 3e3); + } else { + devtoolsNotInstalled = true; + buffer = []; + } +} +function devtoolsInitApp(app, version2) { + emit$1("app:init", app, version2, { + Fragment, + Text, + Comment, + Static + }); +} +function devtoolsUnmountApp(app) { + emit$1("app:unmount", app); +} +var devtoolsComponentAdded = createDevtoolsComponentHook( + "component:added" + /* COMPONENT_ADDED */ +); +var devtoolsComponentUpdated = createDevtoolsComponentHook( + "component:updated" + /* COMPONENT_UPDATED */ +); +var _devtoolsComponentRemoved = createDevtoolsComponentHook( + "component:removed" + /* COMPONENT_REMOVED */ +); +var devtoolsComponentRemoved = (component) => { + if (devtools$1 && typeof devtools$1.cleanupBuffer === "function" && // remove the component if it wasn't buffered + !devtools$1.cleanupBuffer(component)) { + _devtoolsComponentRemoved(component); + } +}; +function createDevtoolsComponentHook(hook) { + return (component) => { + emit$1( + hook, + component.appContext.app, + component.uid, + component.parent ? component.parent.uid : void 0, + component + ); + }; +} +var devtoolsPerfStart = createDevtoolsPerformanceHook( + "perf:start" + /* PERFORMANCE_START */ +); +var devtoolsPerfEnd = createDevtoolsPerformanceHook( + "perf:end" + /* PERFORMANCE_END */ +); +function createDevtoolsPerformanceHook(hook) { + return (component, type, time) => { + emit$1(hook, component.appContext.app, component.uid, component, type, time); + }; +} +function devtoolsComponentEmit(component, event, params) { + emit$1( + "component:emit", + component.appContext.app, + component, + event, + params + ); +} +var currentRenderingInstance = null; +var currentScopeId = null; +function setCurrentRenderingInstance(instance) { + const prev = currentRenderingInstance; + currentRenderingInstance = instance; + currentScopeId = instance && instance.type.__scopeId || null; + return prev; +} +function pushScopeId(id) { + currentScopeId = id; +} +function popScopeId() { + currentScopeId = null; +} +var withScopeId = (_id) => withCtx; +function withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) { + if (!ctx) return fn; + if (fn._n) { + return fn; + } + const renderFnWithContext = (...args) => { + if (renderFnWithContext._d) { + setBlockTracking(-1); + } + const prevInstance = setCurrentRenderingInstance(ctx); + let res; + try { + res = fn(...args); + } finally { + setCurrentRenderingInstance(prevInstance); + if (renderFnWithContext._d) { + setBlockTracking(1); + } + } + if (true) { + devtoolsComponentUpdated(ctx); + } + return res; + }; + renderFnWithContext._n = true; + renderFnWithContext._c = true; + renderFnWithContext._d = true; + return renderFnWithContext; +} +function validateDirectiveName(name) { + if (isBuiltInDirective(name)) { + warn$1("Do not use built-in directive ids as custom directive id: " + name); + } +} +function withDirectives(vnode, directives) { + if (currentRenderingInstance === null) { + warn$1(`withDirectives can only be used inside render functions.`); + return vnode; + } + const instance = getComponentPublicInstance(currentRenderingInstance); + const bindings = vnode.dirs || (vnode.dirs = []); + for (let i = 0; i < directives.length; i++) { + let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i]; + if (dir) { + if (isFunction(dir)) { + dir = { + mounted: dir, + updated: dir + }; + } + if (dir.deep) { + traverse(value); + } + bindings.push({ + dir, + instance, + value, + oldValue: void 0, + arg, + modifiers + }); + } + } + return vnode; +} +function invokeDirectiveHook(vnode, prevVNode, instance, name) { + const bindings = vnode.dirs; + const oldBindings = prevVNode && prevVNode.dirs; + for (let i = 0; i < bindings.length; i++) { + const binding = bindings[i]; + if (oldBindings) { + binding.oldValue = oldBindings[i].value; + } + let hook = binding.dir[name]; + if (hook) { + pauseTracking(); + callWithAsyncErrorHandling(hook, instance, 8, [ + vnode.el, + binding, + vnode, + prevVNode + ]); + resetTracking(); + } + } +} +var TeleportEndKey = Symbol("_vte"); +var isTeleport = (type) => type.__isTeleport; +var isTeleportDisabled = (props) => props && (props.disabled || props.disabled === ""); +var isTeleportDeferred = (props) => props && (props.defer || props.defer === ""); +var isTargetSVG = (target) => typeof SVGElement !== "undefined" && target instanceof SVGElement; +var isTargetMathML = (target) => typeof MathMLElement === "function" && target instanceof MathMLElement; +var resolveTarget = (props, select) => { + const targetSelector = props && props.to; + if (isString(targetSelector)) { + if (!select) { + warn$1( + `Current renderer does not support string target for Teleports. (missing querySelector renderer option)` + ); + return null; + } else { + const target = select(targetSelector); + if (!target && !isTeleportDisabled(props)) { + warn$1( + `Failed to locate Teleport target with selector "${targetSelector}". Note the target element must exist before the component is mounted - i.e. the target cannot be rendered by the component itself, and ideally should be outside of the entire Vue component tree.` + ); + } + return target; + } + } else { + if (!targetSelector && !isTeleportDisabled(props)) { + warn$1(`Invalid Teleport target: ${targetSelector}`); + } + return targetSelector; + } +}; +var TeleportImpl = { + name: "Teleport", + __isTeleport: true, + process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, internals) { + const { + mc: mountChildren, + pc: patchChildren, + pbc: patchBlockChildren, + o: { insert, querySelector, createText, createComment } + } = internals; + const disabled = isTeleportDisabled(n2.props); + let { shapeFlag, children, dynamicChildren } = n2; + if (isHmrUpdating) { + optimized = false; + dynamicChildren = null; + } + if (n1 == null) { + const placeholder = n2.el = true ? createComment("teleport start") : createText(""); + const mainAnchor = n2.anchor = true ? createComment("teleport end") : createText(""); + insert(placeholder, container, anchor); + insert(mainAnchor, container, anchor); + const mount = (container2, anchor2) => { + if (shapeFlag & 16) { + if (parentComponent && parentComponent.isCE) { + parentComponent.ce._teleportTarget = container2; + } + mountChildren( + children, + container2, + anchor2, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } + }; + const mountToTarget = () => { + const target = n2.target = resolveTarget(n2.props, querySelector); + const targetAnchor = prepareAnchor(target, n2, createText, insert); + if (target) { + if (namespace !== "svg" && isTargetSVG(target)) { + namespace = "svg"; + } else if (namespace !== "mathml" && isTargetMathML(target)) { + namespace = "mathml"; + } + if (!disabled) { + mount(target, targetAnchor); + updateCssVars(n2, false); + } + } else if (!disabled) { + warn$1( + "Invalid Teleport target on mount:", + target, + `(${typeof target})` + ); + } + }; + if (disabled) { + mount(container, mainAnchor); + updateCssVars(n2, true); + } + if (isTeleportDeferred(n2.props)) { + queuePostRenderEffect(() => { + mountToTarget(); + n2.el.__isMounted = true; + }, parentSuspense); + } else { + mountToTarget(); + } + } else { + if (isTeleportDeferred(n2.props) && !n1.el.__isMounted) { + queuePostRenderEffect(() => { + TeleportImpl.process( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized, + internals + ); + delete n1.el.__isMounted; + }, parentSuspense); + return; + } + n2.el = n1.el; + n2.targetStart = n1.targetStart; + const mainAnchor = n2.anchor = n1.anchor; + const target = n2.target = n1.target; + const targetAnchor = n2.targetAnchor = n1.targetAnchor; + const wasDisabled = isTeleportDisabled(n1.props); + const currentContainer = wasDisabled ? container : target; + const currentAnchor = wasDisabled ? mainAnchor : targetAnchor; + if (namespace === "svg" || isTargetSVG(target)) { + namespace = "svg"; + } else if (namespace === "mathml" || isTargetMathML(target)) { + namespace = "mathml"; + } + if (dynamicChildren) { + patchBlockChildren( + n1.dynamicChildren, + dynamicChildren, + currentContainer, + parentComponent, + parentSuspense, + namespace, + slotScopeIds + ); + traverseStaticChildren(n1, n2, true); + } else if (!optimized) { + patchChildren( + n1, + n2, + currentContainer, + currentAnchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + false + ); + } + if (disabled) { + if (!wasDisabled) { + moveTeleport( + n2, + container, + mainAnchor, + internals, + 1 + ); + } else { + if (n2.props && n1.props && n2.props.to !== n1.props.to) { + n2.props.to = n1.props.to; + } + } + } else { + if ((n2.props && n2.props.to) !== (n1.props && n1.props.to)) { + const nextTarget = n2.target = resolveTarget( + n2.props, + querySelector + ); + if (nextTarget) { + moveTeleport( + n2, + nextTarget, + null, + internals, + 0 + ); + } else if (true) { + warn$1( + "Invalid Teleport target on update:", + target, + `(${typeof target})` + ); + } + } else if (wasDisabled) { + moveTeleport( + n2, + target, + targetAnchor, + internals, + 1 + ); + } + } + updateCssVars(n2, disabled); + } + }, + remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) { + const { + shapeFlag, + children, + anchor, + targetStart, + targetAnchor, + target, + props + } = vnode; + if (target) { + hostRemove(targetStart); + hostRemove(targetAnchor); + } + doRemove && hostRemove(anchor); + if (shapeFlag & 16) { + const shouldRemove = doRemove || !isTeleportDisabled(props); + for (let i = 0; i < children.length; i++) { + const child = children[i]; + unmount( + child, + parentComponent, + parentSuspense, + shouldRemove, + !!child.dynamicChildren + ); + } + } + }, + move: moveTeleport, + hydrate: hydrateTeleport +}; +function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }, moveType = 2) { + if (moveType === 0) { + insert(vnode.targetAnchor, container, parentAnchor); + } + const { el, anchor, shapeFlag, children, props } = vnode; + const isReorder = moveType === 2; + if (isReorder) { + insert(el, container, parentAnchor); + } + if (!isReorder || isTeleportDisabled(props)) { + if (shapeFlag & 16) { + for (let i = 0; i < children.length; i++) { + move( + children[i], + container, + parentAnchor, + 2 + ); + } + } + } + if (isReorder) { + insert(anchor, container, parentAnchor); + } +} +function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, { + o: { nextSibling, parentNode, querySelector, insert, createText } +}, hydrateChildren) { + const target = vnode.target = resolveTarget( + vnode.props, + querySelector + ); + if (target) { + const disabled = isTeleportDisabled(vnode.props); + const targetNode = target._lpa || target.firstChild; + if (vnode.shapeFlag & 16) { + if (disabled) { + vnode.anchor = hydrateChildren( + nextSibling(node), + vnode, + parentNode(node), + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + vnode.targetStart = targetNode; + vnode.targetAnchor = targetNode && nextSibling(targetNode); + } else { + vnode.anchor = nextSibling(node); + let targetAnchor = targetNode; + while (targetAnchor) { + if (targetAnchor && targetAnchor.nodeType === 8) { + if (targetAnchor.data === "teleport start anchor") { + vnode.targetStart = targetAnchor; + } else if (targetAnchor.data === "teleport anchor") { + vnode.targetAnchor = targetAnchor; + target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor); + break; + } + } + targetAnchor = nextSibling(targetAnchor); + } + if (!vnode.targetAnchor) { + prepareAnchor(target, vnode, createText, insert); + } + hydrateChildren( + targetNode && nextSibling(targetNode), + vnode, + target, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + } + } + updateCssVars(vnode, disabled); + } + return vnode.anchor && nextSibling(vnode.anchor); +} +var Teleport = TeleportImpl; +function updateCssVars(vnode, isDisabled) { + const ctx = vnode.ctx; + if (ctx && ctx.ut) { + let node, anchor; + if (isDisabled) { + node = vnode.el; + anchor = vnode.anchor; + } else { + node = vnode.targetStart; + anchor = vnode.targetAnchor; + } + while (node && node !== anchor) { + if (node.nodeType === 1) node.setAttribute("data-v-owner", ctx.uid); + node = node.nextSibling; + } + ctx.ut(); + } +} +function prepareAnchor(target, vnode, createText, insert) { + const targetStart = vnode.targetStart = createText(""); + const targetAnchor = vnode.targetAnchor = createText(""); + targetStart[TeleportEndKey] = targetAnchor; + if (target) { + insert(targetStart, target); + insert(targetAnchor, target); + } + return targetAnchor; +} +var leaveCbKey = Symbol("_leaveCb"); +var enterCbKey = Symbol("_enterCb"); +function useTransitionState() { + const state = { + isMounted: false, + isLeaving: false, + isUnmounting: false, + leavingVNodes: /* @__PURE__ */ new Map() + }; + onMounted(() => { + state.isMounted = true; + }); + onBeforeUnmount(() => { + state.isUnmounting = true; + }); + return state; +} +var TransitionHookValidator = [Function, Array]; +var BaseTransitionPropsValidators = { + mode: String, + appear: Boolean, + persisted: Boolean, + // enter + onBeforeEnter: TransitionHookValidator, + onEnter: TransitionHookValidator, + onAfterEnter: TransitionHookValidator, + onEnterCancelled: TransitionHookValidator, + // leave + onBeforeLeave: TransitionHookValidator, + onLeave: TransitionHookValidator, + onAfterLeave: TransitionHookValidator, + onLeaveCancelled: TransitionHookValidator, + // appear + onBeforeAppear: TransitionHookValidator, + onAppear: TransitionHookValidator, + onAfterAppear: TransitionHookValidator, + onAppearCancelled: TransitionHookValidator +}; +var recursiveGetSubtree = (instance) => { + const subTree = instance.subTree; + return subTree.component ? recursiveGetSubtree(subTree.component) : subTree; +}; +var BaseTransitionImpl = { + name: `BaseTransition`, + props: BaseTransitionPropsValidators, + setup(props, { slots }) { + const instance = getCurrentInstance(); + const state = useTransitionState(); + return () => { + const children = slots.default && getTransitionRawChildren(slots.default(), true); + if (!children || !children.length) { + return; + } + const child = findNonCommentChild(children); + const rawProps = toRaw(props); + const { mode } = rawProps; + if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") { + warn$1(`invalid mode: ${mode}`); + } + if (state.isLeaving) { + return emptyPlaceholder(child); + } + const innerChild = getInnerChild$1(child); + if (!innerChild) { + return emptyPlaceholder(child); + } + let enterHooks = resolveTransitionHooks( + innerChild, + rawProps, + state, + instance, + // #11061, ensure enterHooks is fresh after clone + (hooks) => enterHooks = hooks + ); + if (innerChild.type !== Comment) { + setTransitionHooks(innerChild, enterHooks); + } + let oldInnerChild = instance.subTree && getInnerChild$1(instance.subTree); + if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(innerChild, oldInnerChild) && recursiveGetSubtree(instance).type !== Comment) { + let leavingHooks = resolveTransitionHooks( + oldInnerChild, + rawProps, + state, + instance + ); + setTransitionHooks(oldInnerChild, leavingHooks); + if (mode === "out-in" && innerChild.type !== Comment) { + state.isLeaving = true; + leavingHooks.afterLeave = () => { + state.isLeaving = false; + if (!(instance.job.flags & 8)) { + instance.update(); + } + delete leavingHooks.afterLeave; + oldInnerChild = void 0; + }; + return emptyPlaceholder(child); + } else if (mode === "in-out" && innerChild.type !== Comment) { + leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => { + const leavingVNodesCache = getLeavingNodesForType( + state, + oldInnerChild + ); + leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild; + el[leaveCbKey] = () => { + earlyRemove(); + el[leaveCbKey] = void 0; + delete enterHooks.delayedLeave; + oldInnerChild = void 0; + }; + enterHooks.delayedLeave = () => { + delayedLeave(); + delete enterHooks.delayedLeave; + oldInnerChild = void 0; + }; + }; + } else { + oldInnerChild = void 0; + } + } else if (oldInnerChild) { + oldInnerChild = void 0; + } + return child; + }; + } +}; +function findNonCommentChild(children) { + let child = children[0]; + if (children.length > 1) { + let hasFound = false; + for (const c of children) { + if (c.type !== Comment) { + if (hasFound) { + warn$1( + " can only be used on a single element or component. Use for lists." + ); + break; + } + child = c; + hasFound = true; + if (false) break; + } + } + } + return child; +} +var BaseTransition = BaseTransitionImpl; +function getLeavingNodesForType(state, vnode) { + const { leavingVNodes } = state; + let leavingVNodesCache = leavingVNodes.get(vnode.type); + if (!leavingVNodesCache) { + leavingVNodesCache = /* @__PURE__ */ Object.create(null); + leavingVNodes.set(vnode.type, leavingVNodesCache); + } + return leavingVNodesCache; +} +function resolveTransitionHooks(vnode, props, state, instance, postClone) { + const { + appear, + mode, + persisted = false, + onBeforeEnter, + onEnter, + onAfterEnter, + onEnterCancelled, + onBeforeLeave, + onLeave, + onAfterLeave, + onLeaveCancelled, + onBeforeAppear, + onAppear, + onAfterAppear, + onAppearCancelled + } = props; + const key = String(vnode.key); + const leavingVNodesCache = getLeavingNodesForType(state, vnode); + const callHook3 = (hook, args) => { + hook && callWithAsyncErrorHandling( + hook, + instance, + 9, + args + ); + }; + const callAsyncHook = (hook, args) => { + const done = args[1]; + callHook3(hook, args); + if (isArray(hook)) { + if (hook.every((hook2) => hook2.length <= 1)) done(); + } else if (hook.length <= 1) { + done(); + } + }; + const hooks = { + mode, + persisted, + beforeEnter(el) { + let hook = onBeforeEnter; + if (!state.isMounted) { + if (appear) { + hook = onBeforeAppear || onBeforeEnter; + } else { + return; + } + } + if (el[leaveCbKey]) { + el[leaveCbKey]( + true + /* cancelled */ + ); + } + const leavingVNode = leavingVNodesCache[key]; + if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el[leaveCbKey]) { + leavingVNode.el[leaveCbKey](); + } + callHook3(hook, [el]); + }, + enter(el) { + let hook = onEnter; + let afterHook = onAfterEnter; + let cancelHook = onEnterCancelled; + if (!state.isMounted) { + if (appear) { + hook = onAppear || onEnter; + afterHook = onAfterAppear || onAfterEnter; + cancelHook = onAppearCancelled || onEnterCancelled; + } else { + return; + } + } + let called = false; + const done = el[enterCbKey] = (cancelled) => { + if (called) return; + called = true; + if (cancelled) { + callHook3(cancelHook, [el]); + } else { + callHook3(afterHook, [el]); + } + if (hooks.delayedLeave) { + hooks.delayedLeave(); + } + el[enterCbKey] = void 0; + }; + if (hook) { + callAsyncHook(hook, [el, done]); + } else { + done(); + } + }, + leave(el, remove2) { + const key2 = String(vnode.key); + if (el[enterCbKey]) { + el[enterCbKey]( + true + /* cancelled */ + ); + } + if (state.isUnmounting) { + return remove2(); + } + callHook3(onBeforeLeave, [el]); + let called = false; + const done = el[leaveCbKey] = (cancelled) => { + if (called) return; + called = true; + remove2(); + if (cancelled) { + callHook3(onLeaveCancelled, [el]); + } else { + callHook3(onAfterLeave, [el]); + } + el[leaveCbKey] = void 0; + if (leavingVNodesCache[key2] === vnode) { + delete leavingVNodesCache[key2]; + } + }; + leavingVNodesCache[key2] = vnode; + if (onLeave) { + callAsyncHook(onLeave, [el, done]); + } else { + done(); + } + }, + clone(vnode2) { + const hooks2 = resolveTransitionHooks( + vnode2, + props, + state, + instance, + postClone + ); + if (postClone) postClone(hooks2); + return hooks2; + } + }; + return hooks; +} +function emptyPlaceholder(vnode) { + if (isKeepAlive(vnode)) { + vnode = cloneVNode(vnode); + vnode.children = null; + return vnode; + } +} +function getInnerChild$1(vnode) { + if (!isKeepAlive(vnode)) { + if (isTeleport(vnode.type) && vnode.children) { + return findNonCommentChild(vnode.children); + } + return vnode; + } + if (vnode.component) { + return vnode.component.subTree; + } + const { shapeFlag, children } = vnode; + if (children) { + if (shapeFlag & 16) { + return children[0]; + } + if (shapeFlag & 32 && isFunction(children.default)) { + return children.default(); + } + } +} +function setTransitionHooks(vnode, hooks) { + if (vnode.shapeFlag & 6 && vnode.component) { + vnode.transition = hooks; + setTransitionHooks(vnode.component.subTree, hooks); + } else if (vnode.shapeFlag & 128) { + vnode.ssContent.transition = hooks.clone(vnode.ssContent); + vnode.ssFallback.transition = hooks.clone(vnode.ssFallback); + } else { + vnode.transition = hooks; + } +} +function getTransitionRawChildren(children, keepComment = false, parentKey) { + let ret = []; + let keyedFragmentCount = 0; + for (let i = 0; i < children.length; i++) { + let child = children[i]; + const key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i); + if (child.type === Fragment) { + if (child.patchFlag & 128) keyedFragmentCount++; + ret = ret.concat( + getTransitionRawChildren(child.children, keepComment, key) + ); + } else if (keepComment || child.type !== Comment) { + ret.push(key != null ? cloneVNode(child, { key }) : child); + } + } + if (keyedFragmentCount > 1) { + for (let i = 0; i < ret.length; i++) { + ret[i].patchFlag = -2; + } + } + return ret; +} +function defineComponent(options, extraOptions) { + return isFunction(options) ? ( + // #8236: extend call and options.name access are considered side-effects + // by Rollup, so we have to wrap it in a pure-annotated IIFE. + (() => extend({ name: options.name }, extraOptions, { setup: options }))() + ) : options; +} +function useId() { + const i = getCurrentInstance(); + if (i) { + return (i.appContext.config.idPrefix || "v") + "-" + i.ids[0] + i.ids[1]++; + } else if (true) { + warn$1( + `useId() is called when there is no active component instance to be associated with.` + ); + } + return ""; +} +function markAsyncBoundary(instance) { + instance.ids = [instance.ids[0] + instance.ids[2]++ + "-", 0, 0]; +} +var knownTemplateRefs = /* @__PURE__ */ new WeakSet(); +function useTemplateRef(key) { + const i = getCurrentInstance(); + const r = shallowRef(null); + if (i) { + const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs; + let desc; + if ((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) { + warn$1(`useTemplateRef('${key}') already exists.`); + } else { + Object.defineProperty(refs, key, { + enumerable: true, + get: () => r.value, + set: (val) => r.value = val + }); + } + } else if (true) { + warn$1( + `useTemplateRef() is called when there is no active component instance to be associated with.` + ); + } + const ret = true ? readonly(r) : r; + if (true) { + knownTemplateRefs.add(ret); + } + return ret; +} +function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) { + if (isArray(rawRef)) { + rawRef.forEach( + (r, i) => setRef( + r, + oldRawRef && (isArray(oldRawRef) ? oldRawRef[i] : oldRawRef), + parentSuspense, + vnode, + isUnmount + ) + ); + return; + } + if (isAsyncWrapper(vnode) && !isUnmount) { + if (vnode.shapeFlag & 512 && vnode.type.__asyncResolved && vnode.component.subTree.component) { + setRef(rawRef, oldRawRef, parentSuspense, vnode.component.subTree); + } + return; + } + const refValue = vnode.shapeFlag & 4 ? getComponentPublicInstance(vnode.component) : vnode.el; + const value = isUnmount ? null : refValue; + const { i: owner, r: ref2 } = rawRef; + if (!owner) { + warn$1( + `Missing ref owner context. ref cannot be used on hoisted vnodes. A vnode with ref must be created inside the render function.` + ); + return; + } + const oldRef = oldRawRef && oldRawRef.r; + const refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs; + const setupState = owner.setupState; + const rawSetupState = toRaw(setupState); + const canSetSetupRef = setupState === EMPTY_OBJ ? () => false : (key) => { + if (true) { + if (hasOwn(rawSetupState, key) && !isRef2(rawSetupState[key])) { + warn$1( + `Template ref "${key}" used on a non-ref value. It will not work in the production build.` + ); + } + if (knownTemplateRefs.has(rawSetupState[key])) { + return false; + } + } + return hasOwn(rawSetupState, key); + }; + if (oldRef != null && oldRef !== ref2) { + if (isString(oldRef)) { + refs[oldRef] = null; + if (canSetSetupRef(oldRef)) { + setupState[oldRef] = null; + } + } else if (isRef2(oldRef)) { + oldRef.value = null; + } + } + if (isFunction(ref2)) { + callWithErrorHandling(ref2, owner, 12, [value, refs]); + } else { + const _isString = isString(ref2); + const _isRef = isRef2(ref2); + if (_isString || _isRef) { + const doSet = () => { + if (rawRef.f) { + const existing = _isString ? canSetSetupRef(ref2) ? setupState[ref2] : refs[ref2] : ref2.value; + if (isUnmount) { + isArray(existing) && remove(existing, refValue); + } else { + if (!isArray(existing)) { + if (_isString) { + refs[ref2] = [refValue]; + if (canSetSetupRef(ref2)) { + setupState[ref2] = refs[ref2]; + } + } else { + ref2.value = [refValue]; + if (rawRef.k) refs[rawRef.k] = ref2.value; + } + } else if (!existing.includes(refValue)) { + existing.push(refValue); + } + } + } else if (_isString) { + refs[ref2] = value; + if (canSetSetupRef(ref2)) { + setupState[ref2] = value; + } + } else if (_isRef) { + ref2.value = value; + if (rawRef.k) refs[rawRef.k] = value; + } else if (true) { + warn$1("Invalid template ref type:", ref2, `(${typeof ref2})`); + } + }; + if (value) { + doSet.id = -1; + queuePostRenderEffect(doSet, parentSuspense); + } else { + doSet(); + } + } else if (true) { + warn$1("Invalid template ref type:", ref2, `(${typeof ref2})`); + } + } +} +var hasLoggedMismatchError = false; +var logMismatchError = () => { + if (hasLoggedMismatchError) { + return; + } + console.error("Hydration completed but contains mismatches."); + hasLoggedMismatchError = true; +}; +var isSVGContainer = (container) => container.namespaceURI.includes("svg") && container.tagName !== "foreignObject"; +var isMathMLContainer = (container) => container.namespaceURI.includes("MathML"); +var getContainerType = (container) => { + if (container.nodeType !== 1) return void 0; + if (isSVGContainer(container)) return "svg"; + if (isMathMLContainer(container)) return "mathml"; + return void 0; +}; +var isComment = (node) => node.nodeType === 8; +function createHydrationFunctions(rendererInternals) { + const { + mt: mountComponent, + p: patch, + o: { + patchProp: patchProp2, + createText, + nextSibling, + parentNode, + remove: remove2, + insert, + createComment + } + } = rendererInternals; + const hydrate2 = (vnode, container) => { + if (!container.hasChildNodes()) { + warn$1( + `Attempting to hydrate existing markup but container is empty. Performing full mount instead.` + ); + patch(null, vnode, container); + flushPostFlushCbs(); + container._vnode = vnode; + return; + } + hydrateNode(container.firstChild, vnode, null, null, null); + flushPostFlushCbs(); + container._vnode = vnode; + }; + const hydrateNode = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized = false) => { + optimized = optimized || !!vnode.dynamicChildren; + const isFragmentStart = isComment(node) && node.data === "["; + const onMismatch = () => handleMismatch( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + isFragmentStart + ); + const { type, ref: ref2, shapeFlag, patchFlag } = vnode; + let domType = node.nodeType; + vnode.el = node; + if (true) { + def(node, "__vnode", vnode, true); + def(node, "__vueParentComponent", parentComponent, true); + } + if (patchFlag === -2) { + optimized = false; + vnode.dynamicChildren = null; + } + let nextNode = null; + switch (type) { + case Text: + if (domType !== 3) { + if (vnode.children === "") { + insert(vnode.el = createText(""), parentNode(node), node); + nextNode = node; + } else { + nextNode = onMismatch(); + } + } else { + if (node.data !== vnode.children) { + warn$1( + `Hydration text mismatch in`, + node.parentNode, + ` + - rendered on server: ${JSON.stringify( + node.data + )} + - expected on client: ${JSON.stringify(vnode.children)}` + ); + logMismatchError(); + node.data = vnode.children; + } + nextNode = nextSibling(node); + } + break; + case Comment: + if (isTemplateNode(node)) { + nextNode = nextSibling(node); + replaceNode( + vnode.el = node.content.firstChild, + node, + parentComponent + ); + } else if (domType !== 8 || isFragmentStart) { + nextNode = onMismatch(); + } else { + nextNode = nextSibling(node); + } + break; + case Static: + if (isFragmentStart) { + node = nextSibling(node); + domType = node.nodeType; + } + if (domType === 1 || domType === 3) { + nextNode = node; + const needToAdoptContent = !vnode.children.length; + for (let i = 0; i < vnode.staticCount; i++) { + if (needToAdoptContent) + vnode.children += nextNode.nodeType === 1 ? nextNode.outerHTML : nextNode.data; + if (i === vnode.staticCount - 1) { + vnode.anchor = nextNode; + } + nextNode = nextSibling(nextNode); + } + return isFragmentStart ? nextSibling(nextNode) : nextNode; + } else { + onMismatch(); + } + break; + case Fragment: + if (!isFragmentStart) { + nextNode = onMismatch(); + } else { + nextNode = hydrateFragment( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + } + break; + default: + if (shapeFlag & 1) { + if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode(node)) { + nextNode = onMismatch(); + } else { + nextNode = hydrateElement( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + } + } else if (shapeFlag & 6) { + vnode.slotScopeIds = slotScopeIds; + const container = parentNode(node); + if (isFragmentStart) { + nextNode = locateClosingAnchor(node); + } else if (isComment(node) && node.data === "teleport start") { + nextNode = locateClosingAnchor(node, node.data, "teleport end"); + } else { + nextNode = nextSibling(node); + } + mountComponent( + vnode, + container, + null, + parentComponent, + parentSuspense, + getContainerType(container), + optimized + ); + if (isAsyncWrapper(vnode) && !vnode.type.__asyncResolved) { + let subTree; + if (isFragmentStart) { + subTree = createVNode(Fragment); + subTree.anchor = nextNode ? nextNode.previousSibling : container.lastChild; + } else { + subTree = node.nodeType === 3 ? createTextVNode("") : createVNode("div"); + } + subTree.el = node; + vnode.component.subTree = subTree; + } + } else if (shapeFlag & 64) { + if (domType !== 8) { + nextNode = onMismatch(); + } else { + nextNode = vnode.type.hydrate( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + optimized, + rendererInternals, + hydrateChildren + ); + } + } else if (shapeFlag & 128) { + nextNode = vnode.type.hydrate( + node, + vnode, + parentComponent, + parentSuspense, + getContainerType(parentNode(node)), + slotScopeIds, + optimized, + rendererInternals, + hydrateNode + ); + } else if (true) { + warn$1("Invalid HostVNode type:", type, `(${typeof type})`); + } + } + if (ref2 != null) { + setRef(ref2, null, parentSuspense, vnode); + } + return nextNode; + }; + const hydrateElement = (el, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => { + optimized = optimized || !!vnode.dynamicChildren; + const { type, props, patchFlag, shapeFlag, dirs, transition } = vnode; + const forcePatch = type === "input" || type === "option"; + if (true) { + if (dirs) { + invokeDirectiveHook(vnode, null, parentComponent, "created"); + } + let needCallTransitionHooks = false; + if (isTemplateNode(el)) { + needCallTransitionHooks = needTransition( + null, + // no need check parentSuspense in hydration + transition + ) && parentComponent && parentComponent.vnode.props && parentComponent.vnode.props.appear; + const content = el.content.firstChild; + if (needCallTransitionHooks) { + transition.beforeEnter(content); + } + replaceNode(content, el, parentComponent); + vnode.el = el = content; + } + if (shapeFlag & 16 && // skip if element has innerHTML / textContent + !(props && (props.innerHTML || props.textContent))) { + let next = hydrateChildren( + el.firstChild, + vnode, + el, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + let hasWarned2 = false; + while (next) { + if (!isMismatchAllowed( + el, + 1 + /* CHILDREN */ + )) { + if (!hasWarned2) { + warn$1( + `Hydration children mismatch on`, + el, + ` +Server rendered element contains more child nodes than client vdom.` + ); + hasWarned2 = true; + } + logMismatchError(); + } + const cur = next; + next = next.nextSibling; + remove2(cur); + } + } else if (shapeFlag & 8) { + let clientText = vnode.children; + if (clientText[0] === "\n" && (el.tagName === "PRE" || el.tagName === "TEXTAREA")) { + clientText = clientText.slice(1); + } + if (el.textContent !== clientText) { + if (!isMismatchAllowed( + el, + 0 + /* TEXT */ + )) { + warn$1( + `Hydration text content mismatch on`, + el, + ` + - rendered on server: ${el.textContent} + - expected on client: ${vnode.children}` + ); + logMismatchError(); + } + el.textContent = vnode.children; + } + } + if (props) { + if (true) { + const isCustomElement = el.tagName.includes("-"); + for (const key in props) { + if (// #11189 skip if this node has directives that have created hooks + // as it could have mutated the DOM in any possible way + !(dirs && dirs.some((d) => d.dir.created)) && propHasMismatch(el, key, props[key], vnode, parentComponent)) { + logMismatchError(); + } + if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers + key[0] === "." || isCustomElement) { + patchProp2(el, key, null, props[key], void 0, parentComponent); + } + } + } else if (props.onClick) { + patchProp2( + el, + "onClick", + null, + props.onClick, + void 0, + parentComponent + ); + } else if (patchFlag & 4 && isReactive(props.style)) { + for (const key in props.style) props.style[key]; + } + } + let vnodeHooks; + if (vnodeHooks = props && props.onVnodeBeforeMount) { + invokeVNodeHook(vnodeHooks, parentComponent, vnode); + } + if (dirs) { + invokeDirectiveHook(vnode, null, parentComponent, "beforeMount"); + } + if ((vnodeHooks = props && props.onVnodeMounted) || dirs || needCallTransitionHooks) { + queueEffectWithSuspense(() => { + vnodeHooks && invokeVNodeHook(vnodeHooks, parentComponent, vnode); + needCallTransitionHooks && transition.enter(el); + dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted"); + }, parentSuspense); + } + } + return el.nextSibling; + }; + const hydrateChildren = (node, parentVNode, container, parentComponent, parentSuspense, slotScopeIds, optimized) => { + optimized = optimized || !!parentVNode.dynamicChildren; + const children = parentVNode.children; + const l = children.length; + let hasWarned2 = false; + for (let i = 0; i < l; i++) { + const vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]); + const isText = vnode.type === Text; + if (node) { + if (isText && !optimized) { + if (i + 1 < l && normalizeVNode(children[i + 1]).type === Text) { + insert( + createText( + node.data.slice(vnode.children.length) + ), + container, + nextSibling(node) + ); + node.data = vnode.children; + } + } + node = hydrateNode( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + } else if (isText && !vnode.children) { + insert(vnode.el = createText(""), container); + } else { + if (!isMismatchAllowed( + container, + 1 + /* CHILDREN */ + )) { + if (!hasWarned2) { + warn$1( + `Hydration children mismatch on`, + container, + ` +Server rendered element contains fewer child nodes than client vdom.` + ); + hasWarned2 = true; + } + logMismatchError(); + } + patch( + null, + vnode, + container, + null, + parentComponent, + parentSuspense, + getContainerType(container), + slotScopeIds + ); + } + } + return node; + }; + const hydrateFragment = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => { + const { slotScopeIds: fragmentSlotScopeIds } = vnode; + if (fragmentSlotScopeIds) { + slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds; + } + const container = parentNode(node); + const next = hydrateChildren( + nextSibling(node), + vnode, + container, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + if (next && isComment(next) && next.data === "]") { + return nextSibling(vnode.anchor = next); + } else { + logMismatchError(); + insert(vnode.anchor = createComment(`]`), container, next); + return next; + } + }; + const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => { + if (!isMismatchAllowed( + node.parentElement, + 1 + /* CHILDREN */ + )) { + warn$1( + `Hydration node mismatch: +- rendered on server:`, + node, + node.nodeType === 3 ? `(text)` : isComment(node) && node.data === "[" ? `(start of fragment)` : ``, + ` +- expected on client:`, + vnode.type + ); + logMismatchError(); + } + vnode.el = null; + if (isFragment) { + const end = locateClosingAnchor(node); + while (true) { + const next2 = nextSibling(node); + if (next2 && next2 !== end) { + remove2(next2); + } else { + break; + } + } + } + const next = nextSibling(node); + const container = parentNode(node); + remove2(node); + patch( + null, + vnode, + container, + next, + parentComponent, + parentSuspense, + getContainerType(container), + slotScopeIds + ); + if (parentComponent) { + parentComponent.vnode.el = vnode.el; + updateHOCHostEl(parentComponent, vnode.el); + } + return next; + }; + const locateClosingAnchor = (node, open = "[", close = "]") => { + let match = 0; + while (node) { + node = nextSibling(node); + if (node && isComment(node)) { + if (node.data === open) match++; + if (node.data === close) { + if (match === 0) { + return nextSibling(node); + } else { + match--; + } + } + } + } + return node; + }; + const replaceNode = (newNode, oldNode, parentComponent) => { + const parentNode2 = oldNode.parentNode; + if (parentNode2) { + parentNode2.replaceChild(newNode, oldNode); + } + let parent = parentComponent; + while (parent) { + if (parent.vnode.el === oldNode) { + parent.vnode.el = parent.subTree.el = newNode; + } + parent = parent.parent; + } + }; + const isTemplateNode = (node) => { + return node.nodeType === 1 && node.tagName === "TEMPLATE"; + }; + return [hydrate2, hydrateNode]; +} +function propHasMismatch(el, key, clientValue, vnode, instance) { + let mismatchType; + let mismatchKey; + let actual; + let expected; + if (key === "class") { + actual = el.getAttribute("class"); + expected = normalizeClass(clientValue); + if (!isSetEqual(toClassSet(actual || ""), toClassSet(expected))) { + mismatchType = 2; + mismatchKey = `class`; + } + } else if (key === "style") { + actual = el.getAttribute("style") || ""; + expected = isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue)); + const actualMap = toStyleMap(actual); + const expectedMap = toStyleMap(expected); + if (vnode.dirs) { + for (const { dir, value } of vnode.dirs) { + if (dir.name === "show" && !value) { + expectedMap.set("display", "none"); + } + } + } + if (instance) { + resolveCssVars(instance, vnode, expectedMap); + } + if (!isMapEqual(actualMap, expectedMap)) { + mismatchType = 3; + mismatchKey = "style"; + } + } else if (el instanceof SVGElement && isKnownSvgAttr(key) || el instanceof HTMLElement && (isBooleanAttr(key) || isKnownHtmlAttr(key))) { + if (isBooleanAttr(key)) { + actual = el.hasAttribute(key); + expected = includeBooleanAttr(clientValue); + } else if (clientValue == null) { + actual = el.hasAttribute(key); + expected = false; + } else { + if (el.hasAttribute(key)) { + actual = el.getAttribute(key); + } else if (key === "value" && el.tagName === "TEXTAREA") { + actual = el.value; + } else { + actual = false; + } + expected = isRenderableAttrValue(clientValue) ? String(clientValue) : false; + } + if (actual !== expected) { + mismatchType = 4; + mismatchKey = key; + } + } + if (mismatchType != null && !isMismatchAllowed(el, mismatchType)) { + const format = (v) => v === false ? `(not rendered)` : `${mismatchKey}="${v}"`; + const preSegment = `Hydration ${MismatchTypeString[mismatchType]} mismatch on`; + const postSegment = ` + - rendered on server: ${format(actual)} + - expected on client: ${format(expected)} + Note: this mismatch is check-only. The DOM will not be rectified in production due to performance overhead. + You should fix the source of the mismatch.`; + { + warn$1(preSegment, el, postSegment); + } + return true; + } + return false; +} +function toClassSet(str) { + return new Set(str.trim().split(/\s+/)); +} +function isSetEqual(a, b) { + if (a.size !== b.size) { + return false; + } + for (const s of a) { + if (!b.has(s)) { + return false; + } + } + return true; +} +function toStyleMap(str) { + const styleMap = /* @__PURE__ */ new Map(); + for (const item of str.split(";")) { + let [key, value] = item.split(":"); + key = key.trim(); + value = value && value.trim(); + if (key && value) { + styleMap.set(key, value); + } + } + return styleMap; +} +function isMapEqual(a, b) { + if (a.size !== b.size) { + return false; + } + for (const [key, value] of a) { + if (value !== b.get(key)) { + return false; + } + } + return true; +} +function resolveCssVars(instance, vnode, expectedMap) { + const root = instance.subTree; + if (instance.getCssVars && (vnode === root || root && root.type === Fragment && root.children.includes(vnode))) { + const cssVars = instance.getCssVars(); + for (const key in cssVars) { + expectedMap.set( + `--${getEscapedCssVarName(key, false)}`, + String(cssVars[key]) + ); + } + } + if (vnode === root && instance.parent) { + resolveCssVars(instance.parent, instance.vnode, expectedMap); + } +} +var allowMismatchAttr = "data-allow-mismatch"; +var MismatchTypeString = { + [ + 0 + /* TEXT */ + ]: "text", + [ + 1 + /* CHILDREN */ + ]: "children", + [ + 2 + /* CLASS */ + ]: "class", + [ + 3 + /* STYLE */ + ]: "style", + [ + 4 + /* ATTRIBUTE */ + ]: "attribute" +}; +function isMismatchAllowed(el, allowedType) { + if (allowedType === 0 || allowedType === 1) { + while (el && !el.hasAttribute(allowMismatchAttr)) { + el = el.parentElement; + } + } + const allowedAttr = el && el.getAttribute(allowMismatchAttr); + if (allowedAttr == null) { + return false; + } else if (allowedAttr === "") { + return true; + } else { + const list = allowedAttr.split(","); + if (allowedType === 0 && list.includes("children")) { + return true; + } + return allowedAttr.split(",").includes(MismatchTypeString[allowedType]); + } +} +var requestIdleCallback = getGlobalThis().requestIdleCallback || ((cb) => setTimeout(cb, 1)); +var cancelIdleCallback = getGlobalThis().cancelIdleCallback || ((id) => clearTimeout(id)); +var hydrateOnIdle = (timeout = 1e4) => (hydrate2) => { + const id = requestIdleCallback(hydrate2, { timeout }); + return () => cancelIdleCallback(id); +}; +function elementIsVisibleInViewport(el) { + const { top, left, bottom, right } = el.getBoundingClientRect(); + const { innerHeight, innerWidth } = window; + return (top > 0 && top < innerHeight || bottom > 0 && bottom < innerHeight) && (left > 0 && left < innerWidth || right > 0 && right < innerWidth); +} +var hydrateOnVisible = (opts) => (hydrate2, forEach) => { + const ob = new IntersectionObserver((entries) => { + for (const e of entries) { + if (!e.isIntersecting) continue; + ob.disconnect(); + hydrate2(); + break; + } + }, opts); + forEach((el) => { + if (!(el instanceof Element)) return; + if (elementIsVisibleInViewport(el)) { + hydrate2(); + ob.disconnect(); + return false; + } + ob.observe(el); + }); + return () => ob.disconnect(); +}; +var hydrateOnMediaQuery = (query) => (hydrate2) => { + if (query) { + const mql = matchMedia(query); + if (mql.matches) { + hydrate2(); + } else { + mql.addEventListener("change", hydrate2, { once: true }); + return () => mql.removeEventListener("change", hydrate2); + } + } +}; +var hydrateOnInteraction = (interactions = []) => (hydrate2, forEach) => { + if (isString(interactions)) interactions = [interactions]; + let hasHydrated = false; + const doHydrate = (e) => { + if (!hasHydrated) { + hasHydrated = true; + teardown(); + hydrate2(); + e.target.dispatchEvent(new e.constructor(e.type, e)); + } + }; + const teardown = () => { + forEach((el) => { + for (const i of interactions) { + el.removeEventListener(i, doHydrate); + } + }); + }; + forEach((el) => { + for (const i of interactions) { + el.addEventListener(i, doHydrate, { once: true }); + } + }); + return teardown; +}; +function forEachElement(node, cb) { + if (isComment(node) && node.data === "[") { + let depth = 1; + let next = node.nextSibling; + while (next) { + if (next.nodeType === 1) { + const result = cb(next); + if (result === false) { + break; + } + } else if (isComment(next)) { + if (next.data === "]") { + if (--depth === 0) break; + } else if (next.data === "[") { + depth++; + } + } + next = next.nextSibling; + } + } else { + cb(node); + } +} +var isAsyncWrapper = (i) => !!i.type.__asyncLoader; +function defineAsyncComponent(source) { + if (isFunction(source)) { + source = { loader: source }; + } + const { + loader, + loadingComponent, + errorComponent, + delay = 200, + hydrate: hydrateStrategy, + timeout, + // undefined = never times out + suspensible = true, + onError: userOnError + } = source; + let pendingRequest = null; + let resolvedComp; + let retries = 0; + const retry = () => { + retries++; + pendingRequest = null; + return load(); + }; + const load = () => { + let thisRequest; + return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => { + err = err instanceof Error ? err : new Error(String(err)); + if (userOnError) { + return new Promise((resolve2, reject) => { + const userRetry = () => resolve2(retry()); + const userFail = () => reject(err); + userOnError(err, userRetry, userFail, retries + 1); + }); + } else { + throw err; + } + }).then((comp) => { + if (thisRequest !== pendingRequest && pendingRequest) { + return pendingRequest; + } + if (!comp) { + warn$1( + `Async component loader resolved to undefined. If you are using retry(), make sure to return its return value.` + ); + } + if (comp && (comp.__esModule || comp[Symbol.toStringTag] === "Module")) { + comp = comp.default; + } + if (comp && !isObject(comp) && !isFunction(comp)) { + throw new Error(`Invalid async component load result: ${comp}`); + } + resolvedComp = comp; + return comp; + })); + }; + return defineComponent({ + name: "AsyncComponentWrapper", + __asyncLoader: load, + __asyncHydrate(el, instance, hydrate2) { + const doHydrate = hydrateStrategy ? () => { + const teardown = hydrateStrategy( + hydrate2, + (cb) => forEachElement(el, cb) + ); + if (teardown) { + (instance.bum || (instance.bum = [])).push(teardown); + } + } : hydrate2; + if (resolvedComp) { + doHydrate(); + } else { + load().then(() => !instance.isUnmounted && doHydrate()); + } + }, + get __asyncResolved() { + return resolvedComp; + }, + setup() { + const instance = currentInstance; + markAsyncBoundary(instance); + if (resolvedComp) { + return () => createInnerComp(resolvedComp, instance); + } + const onError = (err) => { + pendingRequest = null; + handleError( + err, + instance, + 13, + !errorComponent + ); + }; + if (suspensible && instance.suspense || isInSSRComponentSetup) { + return load().then((comp) => { + return () => createInnerComp(comp, instance); + }).catch((err) => { + onError(err); + return () => errorComponent ? createVNode(errorComponent, { + error: err + }) : null; + }); + } + const loaded = ref(false); + const error = ref(); + const delayed = ref(!!delay); + if (delay) { + setTimeout(() => { + delayed.value = false; + }, delay); + } + if (timeout != null) { + setTimeout(() => { + if (!loaded.value && !error.value) { + const err = new Error( + `Async component timed out after ${timeout}ms.` + ); + onError(err); + error.value = err; + } + }, timeout); + } + load().then(() => { + loaded.value = true; + if (instance.parent && isKeepAlive(instance.parent.vnode)) { + instance.parent.update(); + } + }).catch((err) => { + onError(err); + error.value = err; + }); + return () => { + if (loaded.value && resolvedComp) { + return createInnerComp(resolvedComp, instance); + } else if (error.value && errorComponent) { + return createVNode(errorComponent, { + error: error.value + }); + } else if (loadingComponent && !delayed.value) { + return createVNode(loadingComponent); + } + }; + } + }); +} +function createInnerComp(comp, parent) { + const { ref: ref2, props, children, ce } = parent.vnode; + const vnode = createVNode(comp, props, children); + vnode.ref = ref2; + vnode.ce = ce; + delete parent.vnode.ce; + return vnode; +} +var isKeepAlive = (vnode) => vnode.type.__isKeepAlive; +var KeepAliveImpl = { + name: `KeepAlive`, + // Marker for special handling inside the renderer. We are not using a === + // check directly on KeepAlive in the renderer, because importing it directly + // would prevent it from being tree-shaken. + __isKeepAlive: true, + props: { + include: [String, RegExp, Array], + exclude: [String, RegExp, Array], + max: [String, Number] + }, + setup(props, { slots }) { + const instance = getCurrentInstance(); + const sharedContext = instance.ctx; + if (!sharedContext.renderer) { + return () => { + const children = slots.default && slots.default(); + return children && children.length === 1 ? children[0] : children; + }; + } + const cache = /* @__PURE__ */ new Map(); + const keys = /* @__PURE__ */ new Set(); + let current = null; + if (true) { + instance.__v_cache = cache; + } + const parentSuspense = instance.suspense; + const { + renderer: { + p: patch, + m: move, + um: _unmount, + o: { createElement } + } + } = sharedContext; + const storageContainer = createElement("div"); + sharedContext.activate = (vnode, container, anchor, namespace, optimized) => { + const instance2 = vnode.component; + move(vnode, container, anchor, 0, parentSuspense); + patch( + instance2.vnode, + vnode, + container, + anchor, + instance2, + parentSuspense, + namespace, + vnode.slotScopeIds, + optimized + ); + queuePostRenderEffect(() => { + instance2.isDeactivated = false; + if (instance2.a) { + invokeArrayFns(instance2.a); + } + const vnodeHook = vnode.props && vnode.props.onVnodeMounted; + if (vnodeHook) { + invokeVNodeHook(vnodeHook, instance2.parent, vnode); + } + }, parentSuspense); + if (true) { + devtoolsComponentAdded(instance2); + } + }; + sharedContext.deactivate = (vnode) => { + const instance2 = vnode.component; + invalidateMount(instance2.m); + invalidateMount(instance2.a); + move(vnode, storageContainer, null, 1, parentSuspense); + queuePostRenderEffect(() => { + if (instance2.da) { + invokeArrayFns(instance2.da); + } + const vnodeHook = vnode.props && vnode.props.onVnodeUnmounted; + if (vnodeHook) { + invokeVNodeHook(vnodeHook, instance2.parent, vnode); + } + instance2.isDeactivated = true; + }, parentSuspense); + if (true) { + devtoolsComponentAdded(instance2); + } + }; + function unmount(vnode) { + resetShapeFlag(vnode); + _unmount(vnode, instance, parentSuspense, true); + } + function pruneCache(filter) { + cache.forEach((vnode, key) => { + const name = getComponentName(vnode.type); + if (name && !filter(name)) { + pruneCacheEntry(key); + } + }); + } + function pruneCacheEntry(key) { + const cached = cache.get(key); + if (cached && (!current || !isSameVNodeType(cached, current))) { + unmount(cached); + } else if (current) { + resetShapeFlag(current); + } + cache.delete(key); + keys.delete(key); + } + watch2( + () => [props.include, props.exclude], + ([include, exclude]) => { + include && pruneCache((name) => matches(include, name)); + exclude && pruneCache((name) => !matches(exclude, name)); + }, + // prune post-render after `current` has been updated + { flush: "post", deep: true } + ); + let pendingCacheKey = null; + const cacheSubtree = () => { + if (pendingCacheKey != null) { + if (isSuspense(instance.subTree.type)) { + queuePostRenderEffect(() => { + cache.set(pendingCacheKey, getInnerChild(instance.subTree)); + }, instance.subTree.suspense); + } else { + cache.set(pendingCacheKey, getInnerChild(instance.subTree)); + } + } + }; + onMounted(cacheSubtree); + onUpdated(cacheSubtree); + onBeforeUnmount(() => { + cache.forEach((cached) => { + const { subTree, suspense } = instance; + const vnode = getInnerChild(subTree); + if (cached.type === vnode.type && cached.key === vnode.key) { + resetShapeFlag(vnode); + const da = vnode.component.da; + da && queuePostRenderEffect(da, suspense); + return; + } + unmount(cached); + }); + }); + return () => { + pendingCacheKey = null; + if (!slots.default) { + return current = null; + } + const children = slots.default(); + const rawVNode = children[0]; + if (children.length > 1) { + if (true) { + warn$1(`KeepAlive should contain exactly one component child.`); + } + current = null; + return children; + } else if (!isVNode(rawVNode) || !(rawVNode.shapeFlag & 4) && !(rawVNode.shapeFlag & 128)) { + current = null; + return rawVNode; + } + let vnode = getInnerChild(rawVNode); + if (vnode.type === Comment) { + current = null; + return vnode; + } + const comp = vnode.type; + const name = getComponentName( + isAsyncWrapper(vnode) ? vnode.type.__asyncResolved || {} : comp + ); + const { include, exclude, max } = props; + if (include && (!name || !matches(include, name)) || exclude && name && matches(exclude, name)) { + vnode.shapeFlag &= ~256; + current = vnode; + return rawVNode; + } + const key = vnode.key == null ? comp : vnode.key; + const cachedVNode = cache.get(key); + if (vnode.el) { + vnode = cloneVNode(vnode); + if (rawVNode.shapeFlag & 128) { + rawVNode.ssContent = vnode; + } + } + pendingCacheKey = key; + if (cachedVNode) { + vnode.el = cachedVNode.el; + vnode.component = cachedVNode.component; + if (vnode.transition) { + setTransitionHooks(vnode, vnode.transition); + } + vnode.shapeFlag |= 512; + keys.delete(key); + keys.add(key); + } else { + keys.add(key); + if (max && keys.size > parseInt(max, 10)) { + pruneCacheEntry(keys.values().next().value); + } + } + vnode.shapeFlag |= 256; + current = vnode; + return isSuspense(rawVNode.type) ? rawVNode : vnode; + }; + } +}; +var KeepAlive = KeepAliveImpl; +function matches(pattern, name) { + if (isArray(pattern)) { + return pattern.some((p2) => matches(p2, name)); + } else if (isString(pattern)) { + return pattern.split(",").includes(name); + } else if (isRegExp(pattern)) { + pattern.lastIndex = 0; + return pattern.test(name); + } + return false; +} +function onActivated(hook, target) { + registerKeepAliveHook(hook, "a", target); +} +function onDeactivated(hook, target) { + registerKeepAliveHook(hook, "da", target); +} +function registerKeepAliveHook(hook, type, target = currentInstance) { + const wrappedHook = hook.__wdc || (hook.__wdc = () => { + let current = target; + while (current) { + if (current.isDeactivated) { + return; + } + current = current.parent; + } + return hook(); + }); + injectHook(type, wrappedHook, target); + if (target) { + let current = target.parent; + while (current && current.parent) { + if (isKeepAlive(current.parent.vnode)) { + injectToKeepAliveRoot(wrappedHook, type, target, current); + } + current = current.parent; + } + } +} +function injectToKeepAliveRoot(hook, type, target, keepAliveRoot) { + const injected = injectHook( + type, + hook, + keepAliveRoot, + true + /* prepend */ + ); + onUnmounted(() => { + remove(keepAliveRoot[type], injected); + }, target); +} +function resetShapeFlag(vnode) { + vnode.shapeFlag &= ~256; + vnode.shapeFlag &= ~512; +} +function getInnerChild(vnode) { + return vnode.shapeFlag & 128 ? vnode.ssContent : vnode; +} +function injectHook(type, hook, target = currentInstance, prepend = false) { + if (target) { + const hooks = target[type] || (target[type] = []); + const wrappedHook = hook.__weh || (hook.__weh = (...args) => { + pauseTracking(); + const reset = setCurrentInstance(target); + const res = callWithAsyncErrorHandling(hook, target, type, args); + reset(); + resetTracking(); + return res; + }); + if (prepend) { + hooks.unshift(wrappedHook); + } else { + hooks.push(wrappedHook); + } + return wrappedHook; + } else if (true) { + const apiName = toHandlerKey(ErrorTypeStrings$1[type].replace(/ hook$/, "")); + warn$1( + `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup(). If you are using async setup(), make sure to register lifecycle hooks before the first await statement.` + ); + } +} +var createHook = (lifecycle) => (hook, target = currentInstance) => { + if (!isInSSRComponentSetup || lifecycle === "sp") { + injectHook(lifecycle, (...args) => hook(...args), target); + } +}; +var onBeforeMount = createHook("bm"); +var onMounted = createHook("m"); +var onBeforeUpdate = createHook( + "bu" +); +var onUpdated = createHook("u"); +var onBeforeUnmount = createHook( + "bum" +); +var onUnmounted = createHook("um"); +var onServerPrefetch = createHook( + "sp" +); +var onRenderTriggered = createHook("rtg"); +var onRenderTracked = createHook("rtc"); +function onErrorCaptured(hook, target = currentInstance) { + injectHook("ec", hook, target); +} +var COMPONENTS = "components"; +var DIRECTIVES = "directives"; +function resolveComponent(name, maybeSelfReference) { + return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name; +} +var NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc"); +function resolveDynamicComponent(component) { + if (isString(component)) { + return resolveAsset(COMPONENTS, component, false) || component; + } else { + return component || NULL_DYNAMIC_COMPONENT; + } +} +function resolveDirective(name) { + return resolveAsset(DIRECTIVES, name); +} +function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) { + const instance = currentRenderingInstance || currentInstance; + if (instance) { + const Component = instance.type; + if (type === COMPONENTS) { + const selfName = getComponentName( + Component, + false + ); + if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) { + return Component; + } + } + const res = ( + // local registration + // check instance[type] first which is resolved for options API + resolve(instance[type] || Component[type], name) || // global registration + resolve(instance.appContext[type], name) + ); + if (!res && maybeSelfReference) { + return Component; + } + if (warnMissing && !res) { + const extra = type === COMPONENTS ? ` +If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``; + warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`); + } + return res; + } else if (true) { + warn$1( + `resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().` + ); + } +} +function resolve(registry, name) { + return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]); +} +function renderList(source, renderItem, cache, index) { + let ret; + const cached = cache && cache[index]; + const sourceIsArray = isArray(source); + if (sourceIsArray || isString(source)) { + const sourceIsReactiveArray = sourceIsArray && isReactive(source); + let needsWrap = false; + if (sourceIsReactiveArray) { + needsWrap = !isShallow(source); + source = shallowReadArray(source); + } + ret = new Array(source.length); + for (let i = 0, l = source.length; i < l; i++) { + ret[i] = renderItem( + needsWrap ? toReactive(source[i]) : source[i], + i, + void 0, + cached && cached[i] + ); + } + } else if (typeof source === "number") { + if (!Number.isInteger(source)) { + warn$1(`The v-for range expect an integer value but got ${source}.`); + } + ret = new Array(source); + for (let i = 0; i < source; i++) { + ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]); + } + } else if (isObject(source)) { + if (source[Symbol.iterator]) { + ret = Array.from( + source, + (item, i) => renderItem(item, i, void 0, cached && cached[i]) + ); + } else { + const keys = Object.keys(source); + ret = new Array(keys.length); + for (let i = 0, l = keys.length; i < l; i++) { + const key = keys[i]; + ret[i] = renderItem(source[key], key, i, cached && cached[i]); + } + } + } else { + ret = []; + } + if (cache) { + cache[index] = ret; + } + return ret; +} +function createSlots(slots, dynamicSlots) { + for (let i = 0; i < dynamicSlots.length; i++) { + const slot = dynamicSlots[i]; + if (isArray(slot)) { + for (let j = 0; j < slot.length; j++) { + slots[slot[j].name] = slot[j].fn; + } + } else if (slot) { + slots[slot.name] = slot.key ? (...args) => { + const res = slot.fn(...args); + if (res) res.key = slot.key; + return res; + } : slot.fn; + } + } + return slots; +} +function renderSlot(slots, name, props = {}, fallback, noSlotted) { + if (currentRenderingInstance.ce || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.ce) { + if (name !== "default") props.name = name; + return openBlock(), createBlock( + Fragment, + null, + [createVNode("slot", props, fallback && fallback())], + 64 + ); + } + let slot = slots[name]; + if (slot && slot.length > 1) { + warn$1( + `SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template.` + ); + slot = () => []; + } + if (slot && slot._c) { + slot._d = false; + } + openBlock(); + const validSlotContent = slot && ensureValidVNode(slot(props)); + const slotKey = props.key || // slot content array of a dynamic conditional slot may have a branch + // key attached in the `createSlots` helper, respect that + validSlotContent && validSlotContent.key; + const rendered = createBlock( + Fragment, + { + key: (slotKey && !isSymbol(slotKey) ? slotKey : `_${name}`) + // #7256 force differentiate fallback content from actual content + (!validSlotContent && fallback ? "_fb" : "") + }, + validSlotContent || (fallback ? fallback() : []), + validSlotContent && slots._ === 1 ? 64 : -2 + ); + if (!noSlotted && rendered.scopeId) { + rendered.slotScopeIds = [rendered.scopeId + "-s"]; + } + if (slot && slot._c) { + slot._d = true; + } + return rendered; +} +function ensureValidVNode(vnodes) { + return vnodes.some((child) => { + if (!isVNode(child)) return true; + if (child.type === Comment) return false; + if (child.type === Fragment && !ensureValidVNode(child.children)) + return false; + return true; + }) ? vnodes : null; +} +function toHandlers(obj, preserveCaseIfNecessary) { + const ret = {}; + if (!isObject(obj)) { + warn$1(`v-on with no argument expects an object value.`); + return ret; + } + for (const key in obj) { + ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key]; + } + return ret; +} +var getPublicInstance = (i) => { + if (!i) return null; + if (isStatefulComponent(i)) return getComponentPublicInstance(i); + return getPublicInstance(i.parent); +}; +var publicPropertiesMap = ( + // Move PURE marker to new line to workaround compiler discarding it + // due to type annotation + extend(/* @__PURE__ */ Object.create(null), { + $: (i) => i, + $el: (i) => i.vnode.el, + $data: (i) => i.data, + $props: (i) => true ? shallowReadonly(i.props) : i.props, + $attrs: (i) => true ? shallowReadonly(i.attrs) : i.attrs, + $slots: (i) => true ? shallowReadonly(i.slots) : i.slots, + $refs: (i) => true ? shallowReadonly(i.refs) : i.refs, + $parent: (i) => getPublicInstance(i.parent), + $root: (i) => getPublicInstance(i.root), + $host: (i) => i.ce, + $emit: (i) => i.emit, + $options: (i) => __VUE_OPTIONS_API__ ? resolveMergedOptions(i) : i.type, + $forceUpdate: (i) => i.f || (i.f = () => { + queueJob(i.update); + }), + $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)), + $watch: (i) => __VUE_OPTIONS_API__ ? instanceWatch.bind(i) : NOOP + }) +); +var isReservedPrefix = (key) => key === "_" || key === "$"; +var hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key); +var PublicInstanceProxyHandlers = { + get({ _: instance }, key) { + if (key === "__v_skip") { + return true; + } + const { ctx, setupState, data, props, accessCache, type, appContext } = instance; + if (key === "__isVue") { + return true; + } + let normalizedProps; + if (key[0] !== "$") { + const n = accessCache[key]; + if (n !== void 0) { + switch (n) { + case 1: + return setupState[key]; + case 2: + return data[key]; + case 4: + return ctx[key]; + case 3: + return props[key]; + } + } else if (hasSetupBinding(setupState, key)) { + accessCache[key] = 1; + return setupState[key]; + } else if (data !== EMPTY_OBJ && hasOwn(data, key)) { + accessCache[key] = 2; + return data[key]; + } else if ( + // only cache other properties when instance has declared (thus stable) + // props + (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key) + ) { + accessCache[key] = 3; + return props[key]; + } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) { + accessCache[key] = 4; + return ctx[key]; + } else if (!__VUE_OPTIONS_API__ || shouldCacheAccess) { + accessCache[key] = 0; + } + } + const publicGetter = publicPropertiesMap[key]; + let cssModule, globalProperties; + if (publicGetter) { + if (key === "$attrs") { + track(instance.attrs, "get", ""); + markAttrsAccessed(); + } else if (key === "$slots") { + track(instance, "get", key); + } + return publicGetter(instance); + } else if ( + // css module (injected by vue-loader) + (cssModule = type.__cssModules) && (cssModule = cssModule[key]) + ) { + return cssModule; + } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) { + accessCache[key] = 4; + return ctx[key]; + } else if ( + // global properties + globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key) + ) { + { + return globalProperties[key]; + } + } else if (currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading + // to infinite warning loop + key.indexOf("__v") !== 0)) { + if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) { + warn$1( + `Property ${JSON.stringify( + key + )} must be accessed via $data because it starts with a reserved character ("$" or "_") and is not proxied on the render context.` + ); + } else if (instance === currentRenderingInstance) { + warn$1( + `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.` + ); + } + } + }, + set({ _: instance }, key, value) { + const { data, setupState, ctx } = instance; + if (hasSetupBinding(setupState, key)) { + setupState[key] = value; + return true; + } else if (setupState.__isScriptSetup && hasOwn(setupState, key)) { + warn$1(`Cannot mutate