From b5113141ac0f9b467deaf77b44cf0cfa9e6d9005 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 11 Aug 2025 18:42:43 +0000 Subject: [PATCH 1/3] Update actions/checkout action to v5 --- .github/workflows/test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fe409108..0f0f3788 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -21,7 +21,7 @@ jobs: - php-version: '8.4' composer-flags: '--prefer-lowest' steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -42,7 +42,7 @@ jobs: name: PHP 8.4 - Test with coverage runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -69,7 +69,7 @@ jobs: name: PHP quality checks runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -87,7 +87,7 @@ jobs: name: Typescript quality checks runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Use Node.js 22.x uses: actions/setup-node@v4 @@ -111,7 +111,7 @@ jobs: contents: write steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: ref: ${{ github.head_ref }} From a7ea48a6599f9c60ca559bd9438bdc9c8e823341 Mon Sep 17 00:00:00 2001 From: Frank Dekker Date: Tue, 26 Aug 2025 22:14:20 +0200 Subject: [PATCH 2/3] Bump node to v24 --- dev/docker/nodejs/Dockerfile | 2 +- frontend/package-lock.json | 16 +- frontend/package.json | 2 +- src/Resources/public/.vite/manifest.json | 4 +- src/Resources/public/assets/main-BKNaHnn9.js | 30 - src/Resources/public/assets/main-D9EO62UX.js | 13420 ++++++++++++++++ .../public/assets/main-D9EO62UX.js.map | 1 + .../public/assets/style-C_8gSaJq.css | 295 + .../public/assets/style-TDLn_C_M.css | 1 - 9 files changed, 13728 insertions(+), 43 deletions(-) delete mode 100644 src/Resources/public/assets/main-BKNaHnn9.js create mode 100644 src/Resources/public/assets/main-D9EO62UX.js create mode 100644 src/Resources/public/assets/main-D9EO62UX.js.map create mode 100644 src/Resources/public/assets/style-C_8gSaJq.css delete mode 100644 src/Resources/public/assets/style-TDLn_C_M.css diff --git a/dev/docker/nodejs/Dockerfile b/dev/docker/nodejs/Dockerfile index d06b0c43..f1850536 100644 --- a/dev/docker/nodejs/Dockerfile +++ b/dev/docker/nodejs/Dockerfile @@ -1,4 +1,4 @@ -FROM node:22 +FROM node:24 WORKDIR /app/frontend diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 611577d3..1bb0e387 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -17,7 +17,7 @@ "devDependencies": { "@tsconfig/node20": "^20.1.4", "@types/jsdom": "^21.1.7", - "@types/node": "^22.10.2", + "@types/node": "^24.3.0", "@vitejs/plugin-vue": "^6.0.0", "@vitejs/plugin-vue-jsx": "^5.0.0", "@vitest/eslint-plugin": "^1.1.7", @@ -2036,13 +2036,13 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.18.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.18.0.tgz", - "integrity": "sha512-m5ObIqwsUp6BZzyiy4RdZpzWGub9bqLJMvZDD0QMXhxjqMHMENlj+SqF5QxoUwaQNFe+8kz8XM8ZQhqkQPTgMQ==", + "version": "24.3.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.3.0.tgz", + "integrity": "sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~7.10.0" } }, "node_modules/@types/tough-cookie": { @@ -5995,9 +5995,9 @@ } }, "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz", + "integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==", "dev": true, "license": "MIT" }, diff --git a/frontend/package.json b/frontend/package.json index a2914dc4..307fc4ba 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -22,7 +22,7 @@ "devDependencies": { "@tsconfig/node20": "^20.1.4", "@types/jsdom": "^21.1.7", - "@types/node": "^22.10.2", + "@types/node": "^24.3.0", "@vitejs/plugin-vue": "^6.0.0", "@vitejs/plugin-vue-jsx": "^5.0.0", "@vitest/eslint-plugin": "^1.1.7", diff --git a/src/Resources/public/.vite/manifest.json b/src/Resources/public/.vite/manifest.json index 2a294b17..ae0ea81a 100644 --- a/src/Resources/public/.vite/manifest.json +++ b/src/Resources/public/.vite/manifest.json @@ -1,12 +1,12 @@ { "src/main.ts": { - "file": "assets/main-BKNaHnn9.js", + "file": "assets/main-D9EO62UX.js", "name": "main", "src": "src/main.ts", "isEntry": true }, "style.css": { - "file": "assets/style-TDLn_C_M.css", + "file": "assets/style-C_8gSaJq.css", "src": "style.css" } } \ No newline at end of file diff --git a/src/Resources/public/assets/main-BKNaHnn9.js b/src/Resources/public/assets/main-BKNaHnn9.js deleted file mode 100644 index 8de91ef3..00000000 --- a/src/Resources/public/assets/main-BKNaHnn9.js +++ /dev/null @@ -1,30 +0,0 @@ -function Ti(e,t){return function(){return e.apply(t,arguments)}}const{toString:ka}=Object.prototype,{getPrototypeOf:Lr}=Object,{iterator:Ps,toStringTag:ki}=Symbol,Ts=(e=>t=>{const n=ka.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),st=e=>(e=e.toLowerCase(),t=>Ts(t)===e),ks=e=>t=>typeof t===e,{isArray:fn}=Array,kn=ks("undefined");function Vn(e){return e!==null&&!kn(e)&&e.constructor!==null&&!kn(e.constructor)&&je(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const $i=st("ArrayBuffer");function $a(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&$i(e.buffer),t}const Da=ks("string"),je=ks("function"),Di=ks("number"),Un=e=>e!==null&&typeof e=="object",Ma=e=>e===!0||e===!1,Zn=e=>{if(Ts(e)!=="object")return!1;const t=Lr(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(ki in e)&&!(Ps in e)},Fa=e=>{if(!Un(e)||Vn(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},Ia=st("Date"),Na=st("File"),La=st("Blob"),ja=st("FileList"),Va=e=>Un(e)&&je(e.pipe),Ua=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||je(e.append)&&((t=Ts(e))==="formdata"||t==="object"&&je(e.toString)&&e.toString()==="[object FormData]"))},Ha=st("URLSearchParams"),[Ba,qa,Ka,Wa]=["ReadableStream","Request","Response","Headers"].map(st),za=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Hn(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let s,r;if(typeof e!="object"&&(e=[e]),fn(e))for(s=0,r=e.length;s0;)if(r=n[s],t===r.toLowerCase())return r;return null}const Ht=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Fi=e=>!kn(e)&&e!==Ht;function gr(){const{caseless:e}=Fi(this)&&this||{},t={},n=(s,r)=>{const o=e&&Mi(t,r)||r;Zn(t[o])&&Zn(s)?t[o]=gr(t[o],s):Zn(s)?t[o]=gr({},s):fn(s)?t[o]=s.slice():t[o]=s};for(let s=0,r=arguments.length;s(Hn(t,(r,o)=>{n&&je(r)?e[o]=Ti(r,n):e[o]=r},{allOwnKeys:s}),e),Ga=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Ya=(e,t,n,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},Qa=(e,t,n,s)=>{let r,o,i;const l={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),o=r.length;o-- >0;)i=r[o],(!s||s(i,e,t))&&!l[i]&&(t[i]=e[i],l[i]=!0);e=n!==!1&&Lr(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Xa=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const s=e.indexOf(t,n);return s!==-1&&s===n},Za=e=>{if(!e)return null;if(fn(e))return e;let t=e.length;if(!Di(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},ec=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Lr(Uint8Array)),tc=(e,t)=>{const s=(e&&e[Ps]).call(e);let r;for(;(r=s.next())&&!r.done;){const o=r.value;t.call(e,o[0],o[1])}},nc=(e,t)=>{let n;const s=[];for(;(n=e.exec(t))!==null;)s.push(n);return s},sc=st("HTMLFormElement"),rc=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,r){return s.toUpperCase()+r}),go=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),oc=st("RegExp"),Ii=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),s={};Hn(n,(r,o)=>{let i;(i=t(r,o,e))!==!1&&(s[o]=i||r)}),Object.defineProperties(e,s)},ic=e=>{Ii(e,(t,n)=>{if(je(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=e[n];if(je(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},lc=(e,t)=>{const n={},s=r=>{r.forEach(o=>{n[o]=!0})};return fn(e)?s(e):s(String(e).split(t)),n},ac=()=>{},cc=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function uc(e){return!!(e&&je(e.append)&&e[ki]==="FormData"&&e[Ps])}const fc=e=>{const t=new Array(10),n=(s,r)=>{if(Un(s)){if(t.indexOf(s)>=0)return;if(Vn(s))return s;if(!("toJSON"in s)){t[r]=s;const o=fn(s)?[]:{};return Hn(s,(i,l)=>{const a=n(i,r+1);!kn(a)&&(o[l]=a)}),t[r]=void 0,o}}return s};return n(e,0)},dc=st("AsyncFunction"),pc=e=>e&&(Un(e)||je(e))&&je(e.then)&&je(e.catch),Ni=((e,t)=>e?setImmediate:t?((n,s)=>(Ht.addEventListener("message",({source:r,data:o})=>{r===Ht&&o===n&&s.length&&s.shift()()},!1),r=>{s.push(r),Ht.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",je(Ht.postMessage)),hc=typeof queueMicrotask<"u"?queueMicrotask.bind(Ht):typeof process<"u"&&process.nextTick||Ni,mc=e=>e!=null&&je(e[Ps]),v={isArray:fn,isArrayBuffer:$i,isBuffer:Vn,isFormData:Ua,isArrayBufferView:$a,isString:Da,isNumber:Di,isBoolean:Ma,isObject:Un,isPlainObject:Zn,isEmptyObject:Fa,isReadableStream:Ba,isRequest:qa,isResponse:Ka,isHeaders:Wa,isUndefined:kn,isDate:Ia,isFile:Na,isBlob:La,isRegExp:oc,isFunction:je,isStream:Va,isURLSearchParams:Ha,isTypedArray:ec,isFileList:ja,forEach:Hn,merge:gr,extend:Ja,trim:za,stripBOM:Ga,inherits:Ya,toFlatObject:Qa,kindOf:Ts,kindOfTest:st,endsWith:Xa,toArray:Za,forEachEntry:tc,matchAll:nc,isHTMLForm:sc,hasOwnProperty:go,hasOwnProp:go,reduceDescriptors:Ii,freezeMethods:ic,toObjectSet:lc,toCamelCase:rc,noop:ac,toFiniteNumber:cc,findKey:Mi,global:Ht,isContextDefined:Fi,isSpecCompliantForm:uc,toJSONObject:fc,isAsyncFn:dc,isThenable:pc,setImmediate:Ni,asap:hc,isIterable:mc};function z(e,t,n,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),s&&(this.request=s),r&&(this.response=r,this.status=r.status?r.status:null)}v.inherits(z,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:v.toJSONObject(this.config),code:this.code,status:this.status}}});const Li=z.prototype,ji={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{ji[e]={value:e}});Object.defineProperties(z,ji);Object.defineProperty(Li,"isAxiosError",{value:!0});z.from=(e,t,n,s,r,o)=>{const i=Object.create(Li);return v.toFlatObject(e,i,function(a){return a!==Error.prototype},l=>l!=="isAxiosError"),z.call(i,e.message,t,n,s,r),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const gc=null;function br(e){return v.isPlainObject(e)||v.isArray(e)}function Vi(e){return v.endsWith(e,"[]")?e.slice(0,-2):e}function bo(e,t,n){return e?e.concat(t).map(function(r,o){return r=Vi(r),!n&&o?"["+r+"]":r}).join(n?".":""):t}function bc(e){return v.isArray(e)&&!e.some(br)}const yc=v.toFlatObject(v,{},null,function(t){return/^is[A-Z]/.test(t)});function $s(e,t,n){if(!v.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=v.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,R){return!v.isUndefined(R[_])});const s=n.metaTokens,r=n.visitor||u,o=n.dots,i=n.indexes,a=(n.Blob||typeof Blob<"u"&&Blob)&&v.isSpecCompliantForm(t);if(!v.isFunction(r))throw new TypeError("visitor must be a function");function c(y){if(y===null)return"";if(v.isDate(y))return y.toISOString();if(v.isBoolean(y))return y.toString();if(!a&&v.isBlob(y))throw new z("Blob is not supported. Use a Buffer instead.");return v.isArrayBuffer(y)||v.isTypedArray(y)?a&&typeof Blob=="function"?new Blob([y]):Buffer.from(y):y}function u(y,_,R){let k=y;if(y&&!R&&typeof y=="object"){if(v.endsWith(_,"{}"))_=s?_:_.slice(0,-2),y=JSON.stringify(y);else if(v.isArray(y)&&bc(y)||(v.isFileList(y)||v.endsWith(_,"[]"))&&(k=v.toArray(y)))return _=Vi(_),k.forEach(function(D,F){!(v.isUndefined(D)||D===null)&&t.append(i===!0?bo([_],F,o):i===null?_:_+"[]",c(D))}),!1}return br(y)?!0:(t.append(bo(R,_,o),c(y)),!1)}const f=[],p=Object.assign(yc,{defaultVisitor:u,convertValue:c,isVisitable:br});function m(y,_){if(!v.isUndefined(y)){if(f.indexOf(y)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(y),v.forEach(y,function(k,A){(!(v.isUndefined(k)||k===null)&&r.call(t,k,v.isString(A)?A.trim():A,_,p))===!0&&m(k,_?_.concat(A):[A])}),f.pop()}}if(!v.isObject(e))throw new TypeError("data must be an object");return m(e),t}function yo(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function jr(e,t){this._pairs=[],e&&$s(e,this,t)}const Ui=jr.prototype;Ui.append=function(t,n){this._pairs.push([t,n])};Ui.toString=function(t){const n=t?function(s){return t.call(this,s,yo)}:yo;return this._pairs.map(function(r){return n(r[0])+"="+n(r[1])},"").join("&")};function vc(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Hi(e,t,n){if(!t)return e;const s=n&&n.encode||vc;v.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let o;if(r?o=r(t,n):o=v.isURLSearchParams(t)?t.toString():new jr(t,n).toString(s),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class vo{constructor(){this.handlers=[]}use(t,n,s){return this.handlers.push({fulfilled:t,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){v.forEach(this.handlers,function(s){s!==null&&t(s)})}}const Bi={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},_c=typeof URLSearchParams<"u"?URLSearchParams:jr,wc=typeof FormData<"u"?FormData:null,Sc=typeof Blob<"u"?Blob:null,xc={isBrowser:!0,classes:{URLSearchParams:_c,FormData:wc,Blob:Sc},protocols:["http","https","file","blob","url","data"]},Vr=typeof window<"u"&&typeof document<"u",yr=typeof navigator=="object"&&navigator||void 0,Ec=Vr&&(!yr||["ReactNative","NativeScript","NS"].indexOf(yr.product)<0),Rc=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Cc=Vr&&window.location.href||"http://localhost",Oc=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Vr,hasStandardBrowserEnv:Ec,hasStandardBrowserWebWorkerEnv:Rc,navigator:yr,origin:Cc},Symbol.toStringTag,{value:"Module"})),Ae={...Oc,...xc};function Ac(e,t){return $s(e,new Ae.classes.URLSearchParams,{visitor:function(n,s,r,o){return Ae.isNode&&v.isBuffer(n)?(this.append(s,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...t})}function Pc(e){return v.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Tc(e){const t={},n=Object.keys(e);let s;const r=n.length;let o;for(s=0;s=n.length;return i=!i&&v.isArray(r)?r.length:i,a?(v.hasOwnProp(r,i)?r[i]=[r[i],s]:r[i]=s,!l):((!r[i]||!v.isObject(r[i]))&&(r[i]=[]),t(n,s,r[i],o)&&v.isArray(r[i])&&(r[i]=Tc(r[i])),!l)}if(v.isFormData(e)&&v.isFunction(e.entries)){const n={};return v.forEachEntry(e,(s,r)=>{t(Pc(s),r,n,0)}),n}return null}function kc(e,t,n){if(v.isString(e))try{return(t||JSON.parse)(e),v.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(e)}const Bn={transitional:Bi,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const s=n.getContentType()||"",r=s.indexOf("application/json")>-1,o=v.isObject(t);if(o&&v.isHTMLForm(t)&&(t=new FormData(t)),v.isFormData(t))return r?JSON.stringify(qi(t)):t;if(v.isArrayBuffer(t)||v.isBuffer(t)||v.isStream(t)||v.isFile(t)||v.isBlob(t)||v.isReadableStream(t))return t;if(v.isArrayBufferView(t))return t.buffer;if(v.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Ac(t,this.formSerializer).toString();if((l=v.isFileList(t))||s.indexOf("multipart/form-data")>-1){const a=this.env&&this.env.FormData;return $s(l?{"files[]":t}:t,a&&new a,this.formSerializer)}}return o||r?(n.setContentType("application/json",!1),kc(t)):t}],transformResponse:[function(t){const n=this.transitional||Bn.transitional,s=n&&n.forcedJSONParsing,r=this.responseType==="json";if(v.isResponse(t)||v.isReadableStream(t))return t;if(t&&v.isString(t)&&(s&&!this.responseType||r)){const i=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(l){if(i)throw l.name==="SyntaxError"?z.from(l,z.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Ae.classes.FormData,Blob:Ae.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};v.forEach(["delete","get","head","post","put","patch"],e=>{Bn.headers[e]={}});const $c=v.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Dc=e=>{const t={};let n,s,r;return e&&e.split(` -`).forEach(function(i){r=i.indexOf(":"),n=i.substring(0,r).trim().toLowerCase(),s=i.substring(r+1).trim(),!(!n||t[n]&&$c[n])&&(n==="set-cookie"?t[n]?t[n].push(s):t[n]=[s]:t[n]=t[n]?t[n]+", "+s:s)}),t},_o=Symbol("internals");function mn(e){return e&&String(e).trim().toLowerCase()}function es(e){return e===!1||e==null?e:v.isArray(e)?e.map(es):String(e)}function Mc(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(e);)t[s[1]]=s[2];return t}const Fc=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Xs(e,t,n,s,r){if(v.isFunction(s))return s.call(this,t,n);if(r&&(t=n),!!v.isString(t)){if(v.isString(s))return t.indexOf(s)!==-1;if(v.isRegExp(s))return s.test(t)}}function Ic(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,s)=>n.toUpperCase()+s)}function Nc(e,t){const n=v.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+n,{value:function(r,o,i){return this[s].call(this,t,r,o,i)},configurable:!0})})}let Ve=class{constructor(t){t&&this.set(t)}set(t,n,s){const r=this;function o(l,a,c){const u=mn(a);if(!u)throw new Error("header name must be a non-empty string");const f=v.findKey(r,u);(!f||r[f]===void 0||c===!0||c===void 0&&r[f]!==!1)&&(r[f||a]=es(l))}const i=(l,a)=>v.forEach(l,(c,u)=>o(c,u,a));if(v.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(v.isString(t)&&(t=t.trim())&&!Fc(t))i(Dc(t),n);else if(v.isObject(t)&&v.isIterable(t)){let l={},a,c;for(const u of t){if(!v.isArray(u))throw TypeError("Object iterator must return a key-value pair");l[c=u[0]]=(a=l[c])?v.isArray(a)?[...a,u[1]]:[a,u[1]]:u[1]}i(l,n)}else t!=null&&o(n,t,s);return this}get(t,n){if(t=mn(t),t){const s=v.findKey(this,t);if(s){const r=this[s];if(!n)return r;if(n===!0)return Mc(r);if(v.isFunction(n))return n.call(this,r,s);if(v.isRegExp(n))return n.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=mn(t),t){const s=v.findKey(this,t);return!!(s&&this[s]!==void 0&&(!n||Xs(this,this[s],s,n)))}return!1}delete(t,n){const s=this;let r=!1;function o(i){if(i=mn(i),i){const l=v.findKey(s,i);l&&(!n||Xs(s,s[l],l,n))&&(delete s[l],r=!0)}}return v.isArray(t)?t.forEach(o):o(t),r}clear(t){const n=Object.keys(this);let s=n.length,r=!1;for(;s--;){const o=n[s];(!t||Xs(this,this[o],o,t,!0))&&(delete this[o],r=!0)}return r}normalize(t){const n=this,s={};return v.forEach(this,(r,o)=>{const i=v.findKey(s,o);if(i){n[i]=es(r),delete n[o];return}const l=t?Ic(o):String(o).trim();l!==o&&delete n[o],n[l]=es(r),s[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return v.forEach(this,(s,r)=>{s!=null&&s!==!1&&(n[r]=t&&v.isArray(s)?s.join(", "):s)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` -`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const s=new this(t);return n.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[_o]=this[_o]={accessors:{}}).accessors,r=this.prototype;function o(i){const l=mn(i);s[l]||(Nc(r,i),s[l]=!0)}return v.isArray(t)?t.forEach(o):o(t),this}};Ve.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);v.reduceDescriptors(Ve.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[n]=s}}});v.freezeMethods(Ve);function Zs(e,t){const n=this||Bn,s=t||n,r=Ve.from(s.headers);let o=s.data;return v.forEach(e,function(l){o=l.call(n,o,r.normalize(),t?t.status:void 0)}),r.normalize(),o}function Ki(e){return!!(e&&e.__CANCEL__)}function dn(e,t,n){z.call(this,e??"canceled",z.ERR_CANCELED,t,n),this.name="CanceledError"}v.inherits(dn,z,{__CANCEL__:!0});function Wi(e,t,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?e(n):t(new z("Request failed with status code "+n.status,[z.ERR_BAD_REQUEST,z.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Lc(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function jc(e,t){e=e||10;const n=new Array(e),s=new Array(e);let r=0,o=0,i;return t=t!==void 0?t:1e3,function(a){const c=Date.now(),u=s[o];i||(i=c),n[r]=a,s[r]=c;let f=o,p=0;for(;f!==r;)p+=n[f++],f=f%e;if(r=(r+1)%e,r===o&&(o=(o+1)%e),c-i{n=u,r=null,o&&(clearTimeout(o),o=null),e(...c)};return[(...c)=>{const u=Date.now(),f=u-n;f>=s?i(c,u):(r=c,o||(o=setTimeout(()=>{o=null,i(r)},s-f)))},()=>r&&i(r)]}const ls=(e,t,n=3)=>{let s=0;const r=jc(50,250);return Vc(o=>{const i=o.loaded,l=o.lengthComputable?o.total:void 0,a=i-s,c=r(a),u=i<=l;s=i;const f={loaded:i,total:l,progress:l?i/l:void 0,bytes:a,rate:c||void 0,estimated:c&&l&&u?(l-i)/c:void 0,event:o,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},wo=(e,t)=>{const n=e!=null;return[s=>t[0]({lengthComputable:n,total:e,loaded:s}),t[1]]},So=e=>(...t)=>v.asap(()=>e(...t)),Uc=Ae.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,Ae.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(Ae.origin),Ae.navigator&&/(msie|trident)/i.test(Ae.navigator.userAgent)):()=>!0,Hc=Ae.hasStandardBrowserEnv?{write(e,t,n,s,r,o){const i=[e+"="+encodeURIComponent(t)];v.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),v.isString(s)&&i.push("path="+s),v.isString(r)&&i.push("domain="+r),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Bc(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function qc(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function zi(e,t,n){let s=!Bc(t);return e&&(s||n==!1)?qc(e,t):t}const xo=e=>e instanceof Ve?{...e}:e;function zt(e,t){t=t||{};const n={};function s(c,u,f,p){return v.isPlainObject(c)&&v.isPlainObject(u)?v.merge.call({caseless:p},c,u):v.isPlainObject(u)?v.merge({},u):v.isArray(u)?u.slice():u}function r(c,u,f,p){if(v.isUndefined(u)){if(!v.isUndefined(c))return s(void 0,c,f,p)}else return s(c,u,f,p)}function o(c,u){if(!v.isUndefined(u))return s(void 0,u)}function i(c,u){if(v.isUndefined(u)){if(!v.isUndefined(c))return s(void 0,c)}else return s(void 0,u)}function l(c,u,f){if(f in t)return s(c,u);if(f in e)return s(void 0,c)}const a={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:l,headers:(c,u,f)=>r(xo(c),xo(u),f,!0)};return v.forEach(Object.keys({...e,...t}),function(u){const f=a[u]||r,p=f(e[u],t[u],u);v.isUndefined(p)&&f!==l||(n[u]=p)}),n}const Ji=e=>{const t=zt({},e);let{data:n,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:o,headers:i,auth:l}=t;t.headers=i=Ve.from(i),t.url=Hi(zi(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&i.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let a;if(v.isFormData(n)){if(Ae.hasStandardBrowserEnv||Ae.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((a=i.getContentType())!==!1){const[c,...u]=a?a.split(";").map(f=>f.trim()).filter(Boolean):[];i.setContentType([c||"multipart/form-data",...u].join("; "))}}if(Ae.hasStandardBrowserEnv&&(s&&v.isFunction(s)&&(s=s(t)),s||s!==!1&&Uc(t.url))){const c=r&&o&&Hc.read(o);c&&i.set(r,c)}return t},Kc=typeof XMLHttpRequest<"u",Wc=Kc&&function(e){return new Promise(function(n,s){const r=Ji(e);let o=r.data;const i=Ve.from(r.headers).normalize();let{responseType:l,onUploadProgress:a,onDownloadProgress:c}=r,u,f,p,m,y;function _(){m&&m(),y&&y(),r.cancelToken&&r.cancelToken.unsubscribe(u),r.signal&&r.signal.removeEventListener("abort",u)}let R=new XMLHttpRequest;R.open(r.method.toUpperCase(),r.url,!0),R.timeout=r.timeout;function k(){if(!R)return;const D=Ve.from("getAllResponseHeaders"in R&&R.getAllResponseHeaders()),U={data:!l||l==="text"||l==="json"?R.responseText:R.response,status:R.status,statusText:R.statusText,headers:D,config:e,request:R};Wi(function(Q){n(Q),_()},function(Q){s(Q),_()},U),R=null}"onloadend"in R?R.onloadend=k:R.onreadystatechange=function(){!R||R.readyState!==4||R.status===0&&!(R.responseURL&&R.responseURL.indexOf("file:")===0)||setTimeout(k)},R.onabort=function(){R&&(s(new z("Request aborted",z.ECONNABORTED,e,R)),R=null)},R.onerror=function(){s(new z("Network Error",z.ERR_NETWORK,e,R)),R=null},R.ontimeout=function(){let F=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const U=r.transitional||Bi;r.timeoutErrorMessage&&(F=r.timeoutErrorMessage),s(new z(F,U.clarifyTimeoutError?z.ETIMEDOUT:z.ECONNABORTED,e,R)),R=null},o===void 0&&i.setContentType(null),"setRequestHeader"in R&&v.forEach(i.toJSON(),function(F,U){R.setRequestHeader(U,F)}),v.isUndefined(r.withCredentials)||(R.withCredentials=!!r.withCredentials),l&&l!=="json"&&(R.responseType=r.responseType),c&&([p,y]=ls(c,!0),R.addEventListener("progress",p)),a&&R.upload&&([f,m]=ls(a),R.upload.addEventListener("progress",f),R.upload.addEventListener("loadend",m)),(r.cancelToken||r.signal)&&(u=D=>{R&&(s(!D||D.type?new dn(null,e,R):D),R.abort(),R=null)},r.cancelToken&&r.cancelToken.subscribe(u),r.signal&&(r.signal.aborted?u():r.signal.addEventListener("abort",u)));const A=Lc(r.url);if(A&&Ae.protocols.indexOf(A)===-1){s(new z("Unsupported protocol "+A+":",z.ERR_BAD_REQUEST,e));return}R.send(o||null)})},zc=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let s=new AbortController,r;const o=function(c){if(!r){r=!0,l();const u=c instanceof Error?c:this.reason;s.abort(u instanceof z?u:new dn(u instanceof Error?u.message:u))}};let i=t&&setTimeout(()=>{i=null,o(new z(`timeout ${t} of ms exceeded`,z.ETIMEDOUT))},t);const l=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(o):c.removeEventListener("abort",o)}),e=null)};e.forEach(c=>c.addEventListener("abort",o));const{signal:a}=s;return a.unsubscribe=()=>v.asap(l),a}},Jc=function*(e,t){let n=e.byteLength;if(n{const r=Gc(e,t);let o=0,i,l=a=>{i||(i=!0,s&&s(a))};return new ReadableStream({async pull(a){try{const{done:c,value:u}=await r.next();if(c){l(),a.close();return}let f=u.byteLength;if(n){let p=o+=f;n(p)}a.enqueue(new Uint8Array(u))}catch(c){throw l(c),c}},cancel(a){return l(a),r.return()}},{highWaterMark:2})},Ds=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Gi=Ds&&typeof ReadableStream=="function",Qc=Ds&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),Yi=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Xc=Gi&&Yi(()=>{let e=!1;const t=new Request(Ae.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),Ro=64*1024,vr=Gi&&Yi(()=>v.isReadableStream(new Response("").body)),as={stream:vr&&(e=>e.body)};Ds&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!as[t]&&(as[t]=v.isFunction(e[t])?n=>n[t]():(n,s)=>{throw new z(`Response type '${t}' is not supported`,z.ERR_NOT_SUPPORT,s)})})})(new Response);const Zc=async e=>{if(e==null)return 0;if(v.isBlob(e))return e.size;if(v.isSpecCompliantForm(e))return(await new Request(Ae.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(v.isArrayBufferView(e)||v.isArrayBuffer(e))return e.byteLength;if(v.isURLSearchParams(e)&&(e=e+""),v.isString(e))return(await Qc(e)).byteLength},eu=async(e,t)=>{const n=v.toFiniteNumber(e.getContentLength());return n??Zc(t)},tu=Ds&&(async e=>{let{url:t,method:n,data:s,signal:r,cancelToken:o,timeout:i,onDownloadProgress:l,onUploadProgress:a,responseType:c,headers:u,withCredentials:f="same-origin",fetchOptions:p}=Ji(e);c=c?(c+"").toLowerCase():"text";let m=zc([r,o&&o.toAbortSignal()],i),y;const _=m&&m.unsubscribe&&(()=>{m.unsubscribe()});let R;try{if(a&&Xc&&n!=="get"&&n!=="head"&&(R=await eu(u,s))!==0){let U=new Request(t,{method:"POST",body:s,duplex:"half"}),ae;if(v.isFormData(s)&&(ae=U.headers.get("content-type"))&&u.setContentType(ae),U.body){const[Q,J]=wo(R,ls(So(a)));s=Eo(U.body,Ro,Q,J)}}v.isString(f)||(f=f?"include":"omit");const k="credentials"in Request.prototype;y=new Request(t,{...p,signal:m,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:s,duplex:"half",credentials:k?f:void 0});let A=await fetch(y,p);const D=vr&&(c==="stream"||c==="response");if(vr&&(l||D&&_)){const U={};["status","statusText","headers"].forEach(Y=>{U[Y]=A[Y]});const ae=v.toFiniteNumber(A.headers.get("content-length")),[Q,J]=l&&wo(ae,ls(So(l),!0))||[];A=new Response(Eo(A.body,Ro,Q,()=>{J&&J(),_&&_()}),U)}c=c||"text";let F=await as[v.findKey(as,c)||"text"](A,e);return!D&&_&&_(),await new Promise((U,ae)=>{Wi(U,ae,{data:F,headers:Ve.from(A.headers),status:A.status,statusText:A.statusText,config:e,request:y})})}catch(k){throw _&&_(),k&&k.name==="TypeError"&&/Load failed|fetch/i.test(k.message)?Object.assign(new z("Network Error",z.ERR_NETWORK,e,y),{cause:k.cause||k}):z.from(k,k&&k.code,e,y)}}),_r={http:gc,xhr:Wc,fetch:tu};v.forEach(_r,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Co=e=>`- ${e}`,nu=e=>v.isFunction(e)||e===null||e===!1,Qi={getAdapter:e=>{e=v.isArray(e)?e:[e];const{length:t}=e;let n,s;const r={};for(let o=0;o`adapter ${l} `+(a===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since : -`+o.map(Co).join(` -`):" "+Co(o[0]):"as no adapter specified";throw new z("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return s},adapters:_r};function er(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new dn(null,e)}function Oo(e){return er(e),e.headers=Ve.from(e.headers),e.data=Zs.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Qi.getAdapter(e.adapter||Bn.adapter)(e).then(function(s){return er(e),s.data=Zs.call(e,e.transformResponse,s),s.headers=Ve.from(s.headers),s},function(s){return Ki(s)||(er(e),s&&s.response&&(s.response.data=Zs.call(e,e.transformResponse,s.response),s.response.headers=Ve.from(s.response.headers))),Promise.reject(s)})}const Xi="1.11.0",Ms={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Ms[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Ao={};Ms.transitional=function(t,n,s){function r(o,i){return"[Axios v"+Xi+"] Transitional option '"+o+"'"+i+(s?". "+s:"")}return(o,i,l)=>{if(t===!1)throw new z(r(i," has been removed"+(n?" in "+n:"")),z.ERR_DEPRECATED);return n&&!Ao[i]&&(Ao[i]=!0,console.warn(r(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,l):!0}};Ms.spelling=function(t){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function su(e,t,n){if(typeof e!="object")throw new z("options must be an object",z.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const o=s[r],i=t[o];if(i){const l=e[o],a=l===void 0||i(l,o,e);if(a!==!0)throw new z("option "+o+" must be "+a,z.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new z("Unknown option "+o,z.ERR_BAD_OPTION)}}const ts={assertOptions:su,validators:Ms},at=ts.validators;let Bt=class{constructor(t){this.defaults=t||{},this.interceptors={request:new vo,response:new vo}}async request(t,n){try{return await this._request(t,n)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const o=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?o&&!String(s.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(s.stack+=` -`+o):s.stack=o}catch{}}throw s}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=zt(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:o}=n;s!==void 0&&ts.assertOptions(s,{silentJSONParsing:at.transitional(at.boolean),forcedJSONParsing:at.transitional(at.boolean),clarifyTimeoutError:at.transitional(at.boolean)},!1),r!=null&&(v.isFunction(r)?n.paramsSerializer={serialize:r}:ts.assertOptions(r,{encode:at.function,serialize:at.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),ts.assertOptions(n,{baseUrl:at.spelling("baseURL"),withXsrfToken:at.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&v.merge(o.common,o[n.method]);o&&v.forEach(["delete","get","head","post","put","patch","common"],y=>{delete o[y]}),n.headers=Ve.concat(i,o);const l=[];let a=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(a=a&&_.synchronous,l.unshift(_.fulfilled,_.rejected))});const c=[];this.interceptors.response.forEach(function(_){c.push(_.fulfilled,_.rejected)});let u,f=0,p;if(!a){const y=[Oo.bind(this),void 0];for(y.unshift(...l),y.push(...c),p=y.length,u=Promise.resolve(n);f{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](r);s._listeners=null}),this.promise.then=r=>{let o;const i=new Promise(l=>{s.subscribe(l),o=l}).then(r);return i.cancel=function(){s.unsubscribe(o)},i},t(function(o,i,l){s.reason||(s.reason=new dn(o,i,l),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=s=>{t.abort(s)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Zi(function(r){t=r}),cancel:t}}};function ou(e){return function(n){return e.apply(null,n)}}function iu(e){return v.isObject(e)&&e.isAxiosError===!0}const wr={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(wr).forEach(([e,t])=>{wr[t]=e});function el(e){const t=new Bt(e),n=Ti(Bt.prototype.request,t);return v.extend(n,Bt.prototype,t,{allOwnKeys:!0}),v.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return el(zt(e,r))},n}const ue=el(Bn);ue.Axios=Bt;ue.CanceledError=dn;ue.CancelToken=ru;ue.isCancel=Ki;ue.VERSION=Xi;ue.toFormData=$s;ue.AxiosError=z;ue.Cancel=ue.CanceledError;ue.all=function(t){return Promise.all(t)};ue.spread=ou;ue.isAxiosError=iu;ue.mergeConfig=zt;ue.AxiosHeaders=Ve;ue.formToJSON=e=>qi(v.isHTMLForm(e)?new FormData(e):e);ue.getAdapter=Qi.getAdapter;ue.HttpStatusCode=wr;ue.default=ue;const{Axios:Mg,AxiosError:tr,CanceledError:Fg,isCancel:Ig,CancelToken:Ng,VERSION:Lg,all:jg,Cancel:Vg,isAxiosError:Ug,spread:Hg,toFormData:Bg,AxiosHeaders:qg,HttpStatusCode:Kg,formToJSON:Wg,getAdapter:zg,mergeConfig:Jg}=ue;/** -* @vue/shared v3.5.20 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function Ur(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const te={},nn=[],dt=()=>{},tl=()=>!1,Fs=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Hr=e=>e.startsWith("onUpdate:"),Re=Object.assign,Br=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},lu=Object.prototype.hasOwnProperty,re=(e,t)=>lu.call(e,t),B=Array.isArray,sn=e=>qn(e)==="[object Map]",Is=e=>qn(e)==="[object Set]",Po=e=>qn(e)==="[object Date]",W=e=>typeof e=="function",_e=e=>typeof e=="string",tt=e=>typeof e=="symbol",he=e=>e!==null&&typeof e=="object",nl=e=>(he(e)||W(e))&&W(e.then)&&W(e.catch),sl=Object.prototype.toString,qn=e=>sl.call(e),au=e=>qn(e).slice(8,-1),rl=e=>qn(e)==="[object Object]",qr=e=>_e(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,wn=Ur(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Ns=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},cu=/-(\w)/g,ze=Ns(e=>e.replace(cu,(t,n)=>n?n.toUpperCase():"")),uu=/\B([A-Z])/g,Ct=Ns(e=>e.replace(uu,"-$1").toLowerCase()),Ls=Ns(e=>e.charAt(0).toUpperCase()+e.slice(1)),nr=Ns(e=>e?`on${Ls(e)}`:""),Le=(e,t)=>!Object.is(e,t),ns=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},cs=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let To;const js=()=>To||(To=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Kr(e){if(B(e)){const t={};for(let n=0;n{if(n){const s=n.split(du);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function pe(e){let t="";if(_e(e))t=e;else if(B(e))for(let n=0;nVs(n,t))}const ll=e=>!!(e&&e.__v_isRef===!0),oe=e=>_e(e)?e:e==null?"":B(e)||he(e)&&(e.toString===sl||!W(e.toString))?ll(e)?oe(e.value):JSON.stringify(e,al,2):String(e),al=(e,t)=>ll(t)?al(e,t.value):sn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],o)=>(n[sr(s,o)+" =>"]=r,n),{})}:Is(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>sr(n))}:tt(t)?sr(t):he(t)&&!B(t)&&!rl(t)?String(t):t,sr=(e,t="")=>{var n;return tt(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** -* @vue/reactivity v3.5.20 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let Ce;class cl{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Ce,!t&&Ce&&(this.index=(Ce.scopes||(Ce.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(Ce=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n0)return;if(xn){let t=xn;for(xn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Sn;){let t=Sn;for(Sn=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 ml(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function gl(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Jr(s),_u(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function Sr(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(bl(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function bl(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===$n)||(e.globalVersion=$n,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Sr(e))))return;e.flags|=2;const t=e.dep,n=de,s=Ze;de=e,Ze=!0;try{ml(e);const r=e.fn(e._value);(t.version===0||Le(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{de=n,Ze=s,gl(e),e.flags&=-3}}function Jr(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let o=n.computed.deps;o;o=o.nextDep)Jr(o,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function _u(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ze=!0;const yl=[];function xt(){yl.push(Ze),Ze=!1}function Et(){const e=yl.pop();Ze=e===void 0?!0:e}function ko(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=de;de=void 0;try{t()}finally{de=n}}}let $n=0;class wu{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 Us{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,this.__v_skip=!0}track(t){if(!de||!Ze||de===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==de)n=this.activeLink=new wu(de,this),de.deps?(n.prevDep=de.depsTail,de.depsTail.nextDep=n,de.depsTail=n):de.deps=de.depsTail=n,vl(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=de.depsTail,n.nextDep=void 0,de.depsTail.nextDep=n,de.depsTail=n,de.deps===n&&(de.deps=s)}return n}trigger(t){this.version++,$n++,this.notify(t)}notify(t){Wr();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{zr()}}}function vl(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)vl(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const us=new WeakMap,qt=Symbol(""),xr=Symbol(""),Dn=Symbol("");function Oe(e,t,n){if(Ze&&de){let s=us.get(e);s||us.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new Us),r.map=s,r.key=n),r.track()}}function wt(e,t,n,s,r,o){const i=us.get(e);if(!i){$n++;return}const l=a=>{a&&a.trigger()};if(Wr(),t==="clear")i.forEach(l);else{const a=B(e),c=a&&qr(n);if(a&&n==="length"){const u=Number(s);i.forEach((f,p)=>{(p==="length"||p===Dn||!tt(p)&&p>=u)&&l(f)})}else switch((n!==void 0||i.has(void 0))&&l(i.get(n)),c&&l(i.get(Dn)),t){case"add":a?c&&l(i.get("length")):(l(i.get(qt)),sn(e)&&l(i.get(xr)));break;case"delete":a||(l(i.get(qt)),sn(e)&&l(i.get(xr)));break;case"set":sn(e)&&l(i.get(qt));break}}zr()}function Su(e,t){const n=us.get(e);return n&&n.get(t)}function Xt(e){const t=ee(e);return t===e?t:(Oe(t,"iterate",Dn),Ye(e)?t:t.map(Se))}function Hs(e){return Oe(e=ee(e),"iterate",Dn),e}const xu={__proto__:null,[Symbol.iterator](){return or(this,Symbol.iterator,Se)},concat(...e){return Xt(this).concat(...e.map(t=>B(t)?Xt(t):t))},entries(){return or(this,"entries",e=>(e[1]=Se(e[1]),e))},every(e,t){return bt(this,"every",e,t,void 0,arguments)},filter(e,t){return bt(this,"filter",e,t,n=>n.map(Se),arguments)},find(e,t){return bt(this,"find",e,t,Se,arguments)},findIndex(e,t){return bt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return bt(this,"findLast",e,t,Se,arguments)},findLastIndex(e,t){return bt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return bt(this,"forEach",e,t,void 0,arguments)},includes(...e){return ir(this,"includes",e)},indexOf(...e){return ir(this,"indexOf",e)},join(e){return Xt(this).join(e)},lastIndexOf(...e){return ir(this,"lastIndexOf",e)},map(e,t){return bt(this,"map",e,t,void 0,arguments)},pop(){return gn(this,"pop")},push(...e){return gn(this,"push",e)},reduce(e,...t){return $o(this,"reduce",e,t)},reduceRight(e,...t){return $o(this,"reduceRight",e,t)},shift(){return gn(this,"shift")},some(e,t){return bt(this,"some",e,t,void 0,arguments)},splice(...e){return gn(this,"splice",e)},toReversed(){return Xt(this).toReversed()},toSorted(e){return Xt(this).toSorted(e)},toSpliced(...e){return Xt(this).toSpliced(...e)},unshift(...e){return gn(this,"unshift",e)},values(){return or(this,"values",Se)}};function or(e,t,n){const s=Hs(e),r=s[t]();return s!==e&&!Ye(e)&&(r._next=r.next,r.next=()=>{const o=r._next();return o.value&&(o.value=n(o.value)),o}),r}const Eu=Array.prototype;function bt(e,t,n,s,r,o){const i=Hs(e),l=i!==e&&!Ye(e),a=i[t];if(a!==Eu[t]){const f=a.apply(e,o);return l?Se(f):f}let c=n;i!==e&&(l?c=function(f,p){return n.call(this,Se(f),p,e)}:n.length>2&&(c=function(f,p){return n.call(this,f,p,e)}));const u=a.call(i,c,s);return l&&r?r(u):u}function $o(e,t,n,s){const r=Hs(e);let o=n;return r!==e&&(Ye(e)?n.length>3&&(o=function(i,l,a){return n.call(this,i,l,a,e)}):o=function(i,l,a){return n.call(this,i,Se(l),a,e)}),r[t](o,...s)}function ir(e,t,n){const s=ee(e);Oe(s,"iterate",Dn);const r=s[t](...n);return(r===-1||r===!1)&&Qr(n[0])?(n[0]=ee(n[0]),s[t](...n)):r}function gn(e,t,n=[]){xt(),Wr();const s=ee(e)[t].apply(e,n);return zr(),Et(),s}const Ru=Ur("__proto__,__v_isRef,__isVue"),_l=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(tt));function Cu(e){tt(e)||(e=String(e));const t=ee(this);return Oe(t,"has",e),t.hasOwnProperty(e)}class wl{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return o;if(n==="__v_raw")return s===(r?o?Iu:Rl:o?El:xl).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const i=B(t);if(!r){let a;if(i&&(a=xu[n]))return a;if(n==="hasOwnProperty")return Cu}const l=Reflect.get(t,n,ve(t)?t:s);return(tt(n)?_l.has(n):Ru(n))||(r||Oe(t,"get",n),o)?l:ve(l)?i&&qr(n)?l:l.value:he(l)?r?Ol(l):Kn(l):l}}class Sl extends wl{constructor(t=!1){super(!1,t)}set(t,n,s,r){let o=t[n];if(!this._isShallow){const a=It(o);if(!Ye(s)&&!It(s)&&(o=ee(o),s=ee(s)),!B(t)&&ve(o)&&!ve(s))return a||(o.value=s),!0}const i=B(t)&&qr(n)?Number(n)e,Yn=e=>Reflect.getPrototypeOf(e);function ku(e,t,n){return function(...s){const r=this.__v_raw,o=ee(r),i=sn(o),l=e==="entries"||e===Symbol.iterator&&i,a=e==="keys"&&i,c=r[e](...s),u=n?Er:t?fs:Se;return!t&&Oe(o,"iterate",a?xr:qt),{next(){const{value:f,done:p}=c.next();return p?{value:f,done:p}:{value:l?[u(f[0]),u(f[1])]:u(f),done:p}},[Symbol.iterator](){return this}}}}function Qn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function $u(e,t){const n={get(r){const o=this.__v_raw,i=ee(o),l=ee(r);e||(Le(r,l)&&Oe(i,"get",r),Oe(i,"get",l));const{has:a}=Yn(i),c=t?Er:e?fs:Se;if(a.call(i,r))return c(o.get(r));if(a.call(i,l))return c(o.get(l));o!==i&&o.get(r)},get size(){const r=this.__v_raw;return!e&&Oe(ee(r),"iterate",qt),r.size},has(r){const o=this.__v_raw,i=ee(o),l=ee(r);return e||(Le(r,l)&&Oe(i,"has",r),Oe(i,"has",l)),r===l?o.has(r):o.has(r)||o.has(l)},forEach(r,o){const i=this,l=i.__v_raw,a=ee(l),c=t?Er:e?fs:Se;return!e&&Oe(a,"iterate",qt),l.forEach((u,f)=>r.call(o,c(u),c(f),i))}};return Re(n,e?{add:Qn("add"),set:Qn("set"),delete:Qn("delete"),clear:Qn("clear")}:{add(r){!t&&!Ye(r)&&!It(r)&&(r=ee(r));const o=ee(this);return Yn(o).has.call(o,r)||(o.add(r),wt(o,"add",r,r)),this},set(r,o){!t&&!Ye(o)&&!It(o)&&(o=ee(o));const i=ee(this),{has:l,get:a}=Yn(i);let c=l.call(i,r);c||(r=ee(r),c=l.call(i,r));const u=a.call(i,r);return i.set(r,o),c?Le(o,u)&&wt(i,"set",r,o):wt(i,"add",r,o),this},delete(r){const o=ee(this),{has:i,get:l}=Yn(o);let a=i.call(o,r);a||(r=ee(r),a=i.call(o,r)),l&&l.call(o,r);const c=o.delete(r);return a&&wt(o,"delete",r,void 0),c},clear(){const r=ee(this),o=r.size!==0,i=r.clear();return o&&wt(r,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=ku(r,e,t)}),n}function Gr(e,t){const n=$u(e,t);return(s,r,o)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(re(n,r)&&r in s?n:s,r,o)}const Du={get:Gr(!1,!1)},Mu={get:Gr(!1,!0)},Fu={get:Gr(!0,!1)};const xl=new WeakMap,El=new WeakMap,Rl=new WeakMap,Iu=new WeakMap;function Nu(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Lu(e){return e.__v_skip||!Object.isExtensible(e)?0:Nu(au(e))}function Kn(e){return It(e)?e:Yr(e,!1,Au,Du,xl)}function Cl(e){return Yr(e,!1,Tu,Mu,El)}function Ol(e){return Yr(e,!0,Pu,Fu,Rl)}function Yr(e,t,n,s,r){if(!he(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=Lu(e);if(o===0)return e;const i=r.get(e);if(i)return i;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function Ft(e){return It(e)?Ft(e.__v_raw):!!(e&&e.__v_isReactive)}function It(e){return!!(e&&e.__v_isReadonly)}function Ye(e){return!!(e&&e.__v_isShallow)}function Qr(e){return e?!!e.__v_raw:!1}function ee(e){const t=e&&e.__v_raw;return t?ee(t):e}function Xr(e){return!re(e,"__v_skip")&&Object.isExtensible(e)&&ol(e,"__v_skip",!0),e}const Se=e=>he(e)?Kn(e):e,fs=e=>he(e)?Ol(e):e;function ve(e){return e?e.__v_isRef===!0:!1}function X(e){return Al(e,!1)}function ju(e){return Al(e,!0)}function Al(e,t){return ve(e)?e:new Vu(e,t)}class Vu{constructor(t,n){this.dep=new Us,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:ee(t),this._value=n?t:Se(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Ye(t)||It(t);t=s?t:ee(t),Le(t,n)&&(this._rawValue=t,this._value=s?t:Se(t),this.dep.trigger())}}function L(e){return ve(e)?e.value:e}const Uu={get:(e,t,n)=>t==="__v_raw"?e:L(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return ve(r)&&!ve(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Pl(e){return Ft(e)?e:new Proxy(e,Uu)}class Hu{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new Us,{get:s,set:r}=t(n.track.bind(n),n.trigger.bind(n));this._get=s,this._set=r}get value(){return this._value=this._get()}set value(t){this._set(t)}}function Bu(e){return new Hu(e)}function qu(e){const t=B(e)?new Array(e.length):{};for(const n in e)t[n]=Wu(e,n);return t}class Ku{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Su(ee(this._object),this._key)}}function Wu(e,t,n){const s=e[t];return ve(s)?s:new Ku(e,t,n)}class zu{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Us(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=$n-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&de!==this)return hl(this,!0),!0}get value(){const t=this.dep.track();return bl(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Ju(e,t,n=!1){let s,r;return W(e)?s=e:(s=e.get,r=e.set),new zu(s,r,n)}const Xn={},ds=new WeakMap;let Vt;function Gu(e,t=!1,n=Vt){if(n){let s=ds.get(n);s||ds.set(n,s=[]),s.push(e)}}function Yu(e,t,n=te){const{immediate:s,deep:r,once:o,scheduler:i,augmentJob:l,call:a}=n,c=F=>r?F:Ye(F)||r===!1||r===0?St(F,1):St(F);let u,f,p,m,y=!1,_=!1;if(ve(e)?(f=()=>e.value,y=Ye(e)):Ft(e)?(f=()=>c(e),y=!0):B(e)?(_=!0,y=e.some(F=>Ft(F)||Ye(F)),f=()=>e.map(F=>{if(ve(F))return F.value;if(Ft(F))return c(F);if(W(F))return a?a(F,2):F()})):W(e)?t?f=a?()=>a(e,2):e:f=()=>{if(p){xt();try{p()}finally{Et()}}const F=Vt;Vt=u;try{return a?a(e,3,[m]):e(m)}finally{Vt=F}}:f=dt,t&&r){const F=f,U=r===!0?1/0:r;f=()=>St(F(),U)}const R=fl(),k=()=>{u.stop(),R&&R.active&&Br(R.effects,u)};if(o&&t){const F=t;t=(...U)=>{F(...U),k()}}let A=_?new Array(e.length).fill(Xn):Xn;const D=F=>{if(!(!(u.flags&1)||!u.dirty&&!F))if(t){const U=u.run();if(r||y||(_?U.some((ae,Q)=>Le(ae,A[Q])):Le(U,A))){p&&p();const ae=Vt;Vt=u;try{const Q=[U,A===Xn?void 0:_&&A[0]===Xn?[]:A,m];A=U,a?a(t,3,Q):t(...Q)}finally{Vt=ae}}}else u.run()};return l&&l(D),u=new dl(f),u.scheduler=i?()=>i(D,!1):D,m=F=>Gu(F,!1,u),p=u.onStop=()=>{const F=ds.get(u);if(F){if(a)a(F,4);else for(const U of F)U();ds.delete(u)}},t?s?D(!0):A=u.run():i?i(D.bind(null,!0),!0):u.run(),k.pause=u.pause.bind(u),k.resume=u.resume.bind(u),k.stop=k,k}function St(e,t=1/0,n){if(t<=0||!he(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,ve(e))St(e.value,t,n);else if(B(e))for(let s=0;s{St(s,t,n)});else if(rl(e)){for(const s in e)St(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&St(e[s],t,n)}return e}/** -* @vue/runtime-core v3.5.20 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function Wn(e,t,n,s){try{return s?e(...s):e()}catch(r){Bs(r,t,n)}}function mt(e,t,n,s){if(W(e)){const r=Wn(e,t,n,s);return r&&nl(r)&&r.catch(o=>{Bs(o,t,n)}),r}if(B(e)){const r=[];for(let o=0;o>>1,r=De[s],o=Mn(r);o=Mn(n)?De.push(e):De.splice(Xu(t),0,e),e.flags|=1,kl()}}function kl(){ps||(ps=Tl.then(Dl))}function Zu(e){B(e)?rn.push(...e):$t&&e.id===-1?$t.splice(en+1,0,e):e.flags&1||(rn.push(e),e.flags|=1),kl()}function Do(e,t,n=ut+1){for(;nMn(n)-Mn(s));if(rn.length=0,$t){$t.push(...t);return}for($t=t,en=0;en<$t.length;en++){const n=$t[en];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}$t=null,en=0}}const Mn=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Dl(e){try{for(ut=0;ut{s._d&&Ho(-1);const o=hs(t);let i;try{i=e(...r)}finally{hs(o),s._d&&Ho(1)}return i};return s._n=!0,s._c=!0,s._d=!0,s}function pt(e,t){if(xe===null)return e;const n=Js(xe),s=e.dirs||(e.dirs=[]);for(let r=0;re.__isTeleport,nf=Symbol("_leaveCb");function eo(e,t){e.shapeFlag&6&&e.component?(e.transition=t,eo(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 be(e,t){return W(e)?Re({name:e.name},t,{setup:e}):e}function Fl(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function En(e,t,n,s,r=!1){if(B(e)){e.forEach((y,_)=>En(y,t&&(B(t)?t[_]:t),n,s,r));return}if(on(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&En(e,t,n,s.component.subTree);return}const o=s.shapeFlag&4?Js(s.component):s.el,i=r?null:o,{i:l,r:a}=e,c=t&&t.r,u=l.refs===te?l.refs={}:l.refs,f=l.setupState,p=ee(f),m=f===te?tl:y=>re(p,y);if(c!=null&&c!==a){if(_e(c))u[c]=null,m(c)&&(f[c]=null);else if(ve(c)){c.value=null;const y=t;y.k&&(u[y.k]=null)}}if(W(a))Wn(a,l,12,[i,u]);else{const y=_e(a),_=ve(a);if(y||_){const R=()=>{if(e.f){const k=y?m(a)?f[a]:u[a]:a.value;if(r)B(k)&&Br(k,o);else if(B(k))k.includes(o)||k.push(o);else if(y)u[a]=[o],m(a)&&(f[a]=u[a]);else{const A=[o];a.value=A,e.k&&(u[e.k]=A)}}else y?(u[a]=i,m(a)&&(f[a]=i)):_&&(a.value=i,e.k&&(u[e.k]=i))};i?(R.id=-1,Be(R,n)):R()}}}js().requestIdleCallback;js().cancelIdleCallback;const on=e=>!!e.type.__asyncLoader,Il=e=>e.type.__isKeepAlive;function sf(e,t){Nl(e,"a",t)}function rf(e,t){Nl(e,"da",t)}function Nl(e,t,n=Te){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(Ks(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Il(r.parent.vnode)&&of(s,t,n,r),r=r.parent}}function of(e,t,n,s){const r=Ks(t,e,s,!0);to(()=>{Br(s[t],r)},n)}function Ks(e,t,n=Te,s=!1){if(n){const r=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{xt();const l=zn(n),a=mt(t,n,e,i);return l(),Et(),a});return s?r.unshift(o):r.push(o),o}}const Ot=e=>(t,n=Te)=>{(!Nn||e==="sp")&&Ks(e,(...s)=>t(...s),n)},lf=Ot("bm"),Gt=Ot("m"),af=Ot("bu"),Ll=Ot("u"),cf=Ot("bum"),to=Ot("um"),uf=Ot("sp"),ff=Ot("rtg"),df=Ot("rtc");function pf(e,t=Te){Ks("ec",e,t)}const hf="components";function mf(e,t){return bf(hf,e,!0,t)||e}const gf=Symbol.for("v-ndc");function bf(e,t,n=!0,s=!1){const r=xe||Te;if(r){const o=r.type;{const l=rd(o,!1);if(l&&(l===t||l===ze(t)||l===Ls(ze(t))))return o}const i=Mo(r[e]||o[e],t)||Mo(r.appContext[e],t);return!i&&s?o:i}}function Mo(e,t){return e&&(e[t]||e[ze(t)]||e[Ls(ze(t))])}function ht(e,t,n,s){let r;const o=n,i=B(e);if(i||_e(e)){const l=i&&Ft(e);let a=!1,c=!1;l&&(a=!Ye(e),c=It(e),e=Hs(e)),r=new Array(e.length);for(let u=0,f=e.length;ut(l,a,void 0,o));else{const l=Object.keys(e);r=new Array(l.length);for(let a=0,c=l.length;aIn(t)?!(t.type===Rt||t.type===me&&!jl(t.children)):!0)?e:null}const Rr=e=>e?ia(e)?Js(e):Rr(e.parent):null,Rn=Re(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=>Rr(e.parent),$root:e=>Rr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ul(e),$forceUpdate:e=>e.f||(e.f=()=>{Zr(e.update)}),$nextTick:e=>e.n||(e.n=qs.bind(e.proxy)),$watch:e=>Vf.bind(e)}),ar=(e,t)=>e!==te&&!e.__isScriptSetup&&re(e,t),yf={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:o,accessCache:i,type:l,appContext:a}=e;let c;if(t[0]!=="$"){const m=i[t];if(m!==void 0)switch(m){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return o[t]}else{if(ar(s,t))return i[t]=1,s[t];if(r!==te&&re(r,t))return i[t]=2,r[t];if((c=e.propsOptions[0])&&re(c,t))return i[t]=3,o[t];if(n!==te&&re(n,t))return i[t]=4,n[t];Cr&&(i[t]=0)}}const u=Rn[t];let f,p;if(u)return t==="$attrs"&&Oe(e.attrs,"get",""),u(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==te&&re(n,t))return i[t]=4,n[t];if(p=a.config.globalProperties,re(p,t))return p[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:o}=e;return ar(r,t)?(r[t]=n,!0):s!==te&&re(s,t)?(s[t]=n,!0):re(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:o,type:i}},l){let a,c;return!!(n[l]||e!==te&&l[0]!=="$"&&re(e,l)||ar(t,l)||(a=o[0])&&re(a,l)||re(s,l)||re(Rn,l)||re(r.config.globalProperties,l)||(c=i.__cssModules)&&c[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:re(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function ms(e){return B(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function Xe(e,t){return!e||!t?e||t:B(e)&&B(t)?e.concat(t):Re({},ms(e),ms(t))}let Cr=!0;function vf(e){const t=Ul(e),n=e.proxy,s=e.ctx;Cr=!1,t.beforeCreate&&Fo(t.beforeCreate,e,"bc");const{data:r,computed:o,methods:i,watch:l,provide:a,inject:c,created:u,beforeMount:f,mounted:p,beforeUpdate:m,updated:y,activated:_,deactivated:R,beforeDestroy:k,beforeUnmount:A,destroyed:D,unmounted:F,render:U,renderTracked:ae,renderTriggered:Q,errorCaptured:J,serverPrefetch:Y,expose:ye,inheritAttrs:ke,components:Ue,directives:Me,filters:Nt}=t;if(c&&_f(c,s,null),i)for(const G in i){const ne=i[G];W(ne)&&(s[G]=ne.bind(n))}if(r){const G=r.call(n,n);he(G)&&(e.data=Kn(G))}if(Cr=!0,o)for(const G in o){const ne=o[G],gt=W(ne)?ne.bind(n,n):W(ne.get)?ne.get.bind(n,n):dt,Pt=!W(ne)&&W(ne.set)?ne.set.bind(n):dt,rt=Ge({get:gt,set:Pt});Object.defineProperty(s,G,{enumerable:!0,configurable:!0,get:()=>rt.value,set:Fe=>rt.value=Fe})}if(l)for(const G in l)Vl(l[G],s,n,G);if(a){const G=W(a)?a.call(n):a;Reflect.ownKeys(G).forEach(ne=>{ss(ne,G[ne])})}u&&Fo(u,e,"c");function ge(G,ne){B(ne)?ne.forEach(gt=>G(gt.bind(n))):ne&&G(ne.bind(n))}if(ge(lf,f),ge(Gt,p),ge(af,m),ge(Ll,y),ge(sf,_),ge(rf,R),ge(pf,J),ge(df,ae),ge(ff,Q),ge(cf,A),ge(to,F),ge(uf,Y),B(ye))if(ye.length){const G=e.exposed||(e.exposed={});ye.forEach(ne=>{Object.defineProperty(G,ne,{get:()=>n[ne],set:gt=>n[ne]=gt,enumerable:!0})})}else e.exposed||(e.exposed={});U&&e.render===dt&&(e.render=U),ke!=null&&(e.inheritAttrs=ke),Ue&&(e.components=Ue),Me&&(e.directives=Me),Y&&Fl(e)}function _f(e,t,n=dt){B(e)&&(e=Or(e));for(const s in e){const r=e[s];let o;he(r)?"default"in r?o=Qe(r.from||s,r.default,!0):o=Qe(r.from||s):o=Qe(r),ve(o)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>o.value,set:i=>o.value=i}):t[s]=o}}function Fo(e,t,n){mt(B(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Vl(e,t,n,s){let r=s.includes(".")?Zl(n,s):()=>n[s];if(_e(e)){const o=t[e];W(o)&&qe(r,o)}else if(W(e))qe(r,e.bind(n));else if(he(e))if(B(e))e.forEach(o=>Vl(o,t,n,s));else{const o=W(e.handler)?e.handler.bind(n):t[e.handler];W(o)&&qe(r,o,e)}}function Ul(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let a;return l?a=l:!r.length&&!n&&!s?a=t:(a={},r.length&&r.forEach(c=>gs(a,c,i,!0)),gs(a,t,i)),he(t)&&o.set(t,a),a}function gs(e,t,n,s=!1){const{mixins:r,extends:o}=t;o&&gs(e,o,n,!0),r&&r.forEach(i=>gs(e,i,n,!0));for(const i in t)if(!(s&&i==="expose")){const l=wf[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const wf={data:Io,props:No,emits:No,methods:_n,computed:_n,beforeCreate:$e,created:$e,beforeMount:$e,mounted:$e,beforeUpdate:$e,updated:$e,beforeDestroy:$e,beforeUnmount:$e,destroyed:$e,unmounted:$e,activated:$e,deactivated:$e,errorCaptured:$e,serverPrefetch:$e,components:_n,directives:_n,watch:xf,provide:Io,inject:Sf};function Io(e,t){return t?e?function(){return Re(W(e)?e.call(this,this):e,W(t)?t.call(this,this):t)}:t:e}function Sf(e,t){return _n(Or(e),Or(t))}function Or(e){if(B(e)){const t={};for(let n=0;n1)return n&&W(t)?t.call(s&&s.proxy):t}}function Cf(){return!!(io()||Wt)}const Bl={},ql=()=>Object.create(Bl),Kl=e=>Object.getPrototypeOf(e)===Bl;function Of(e,t,n,s=!1){const r={},o=ql();e.propsDefaults=Object.create(null),Wl(e,t,r,o);for(const i in e.propsOptions[0])i in r||(r[i]=void 0);n?e.props=s?r:Cl(r):e.type.props?e.props=r:e.props=o,e.attrs=o}function Af(e,t,n,s){const{props:r,attrs:o,vnode:{patchFlag:i}}=e,l=ee(r),[a]=e.propsOptions;let c=!1;if((s||i>0)&&!(i&16)){if(i&8){const u=e.vnode.dynamicProps;for(let f=0;f{a=!0;const[p,m]=zl(f,t,!0);Re(i,p),m&&l.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!o&&!a)return he(e)&&s.set(e,nn),nn;if(B(o))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",so=e=>B(e)?e.map(ft):[ft(e)],Tf=(e,t,n)=>{if(t._n)return t;const s=Kt((...r)=>so(t(...r)),n);return s._c=!1,s},Jl=(e,t,n)=>{const s=e._ctx;for(const r in e){if(no(r))continue;const o=e[r];if(W(o))t[r]=Tf(r,o,s);else if(o!=null){const i=so(o);t[r]=()=>i}}},Gl=(e,t)=>{const n=so(t);e.slots.default=()=>n},Yl=(e,t,n)=>{for(const s in t)(n||!no(s))&&(e[s]=t[s])},kf=(e,t,n)=>{const s=e.slots=ql();if(e.vnode.shapeFlag&32){const r=t._;r?(Yl(s,t,n),n&&ol(s,"_",r,!0)):Jl(t,s)}else t&&Gl(e,t)},$f=(e,t,n)=>{const{vnode:s,slots:r}=e;let o=!0,i=te;if(s.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:Yl(r,t,n):(o=!t.$stable,Jl(t,r)),i=t}else t&&(Gl(e,t),i={default:1});if(o)for(const l in r)!no(l)&&i[l]==null&&delete r[l]},Be=Wf;function Df(e){return Mf(e)}function Mf(e,t){const n=js();n.__VUE__=!0;const{insert:s,remove:r,patchProp:o,createElement:i,createText:l,createComment:a,setText:c,setElementText:u,parentNode:f,nextSibling:p,setScopeId:m=dt,insertStaticContent:y}=e,_=(d,h,g,S=null,E=null,w=null,$=void 0,P=null,O=!!h.dynamicChildren)=>{if(d===h)return;d&&!bn(d,h)&&(S=x(d),Fe(d,E,w,!0),d=null),h.patchFlag===-2&&(O=!1,h.dynamicChildren=null);const{type:C,ref:q,shapeFlag:I}=h;switch(C){case zs:R(d,h,g,S);break;case Rt:k(d,h,g,S);break;case rs:d==null&&A(h,g,S,$);break;case me:Ue(d,h,g,S,E,w,$,P,O);break;default:I&1?U(d,h,g,S,E,w,$,P,O):I&6?Me(d,h,g,S,E,w,$,P,O):(I&64||I&128)&&C.process(d,h,g,S,E,w,$,P,O,V)}q!=null&&E?En(q,d&&d.ref,w,h||d,!h):q==null&&d&&d.ref!=null&&En(d.ref,null,w,d,!0)},R=(d,h,g,S)=>{if(d==null)s(h.el=l(h.children),g,S);else{const E=h.el=d.el;h.children!==d.children&&c(E,h.children)}},k=(d,h,g,S)=>{d==null?s(h.el=a(h.children||""),g,S):h.el=d.el},A=(d,h,g,S)=>{[d.el,d.anchor]=y(d.children,h,g,S,d.el,d.anchor)},D=({el:d,anchor:h},g,S)=>{let E;for(;d&&d!==h;)E=p(d),s(d,g,S),d=E;s(h,g,S)},F=({el:d,anchor:h})=>{let g;for(;d&&d!==h;)g=p(d),r(d),d=g;r(h)},U=(d,h,g,S,E,w,$,P,O)=>{h.type==="svg"?$="svg":h.type==="math"&&($="mathml"),d==null?ae(h,g,S,E,w,$,P,O):Y(d,h,E,w,$,P,O)},ae=(d,h,g,S,E,w,$,P)=>{let O,C;const{props:q,shapeFlag:I,transition:H,dirs:K}=d;if(O=d.el=i(d.type,w,q&&q.is,q),I&8?u(O,d.children):I&16&&J(d.children,O,null,S,E,cr(d,w),$,P),K&&Lt(d,null,S,"created"),Q(O,d,d.scopeId,$,S),q){for(const fe in q)fe!=="value"&&!wn(fe)&&o(O,fe,null,q[fe],w,S);"value"in q&&o(O,"value",null,q.value,w),(C=q.onVnodeBeforeMount)&&ct(C,S,d)}K&&Lt(d,null,S,"beforeMount");const Z=Ff(E,H);Z&&H.beforeEnter(O),s(O,h,g),((C=q&&q.onVnodeMounted)||Z||K)&&Be(()=>{C&&ct(C,S,d),Z&&H.enter(O),K&&Lt(d,null,S,"mounted")},E)},Q=(d,h,g,S,E)=>{if(g&&m(d,g),S)for(let w=0;w{for(let C=O;C{const P=h.el=d.el;let{patchFlag:O,dynamicChildren:C,dirs:q}=h;O|=d.patchFlag&16;const I=d.props||te,H=h.props||te;let K;if(g&&jt(g,!1),(K=H.onVnodeBeforeUpdate)&&ct(K,g,h,d),q&&Lt(h,d,g,"beforeUpdate"),g&&jt(g,!0),(I.innerHTML&&H.innerHTML==null||I.textContent&&H.textContent==null)&&u(P,""),C?ye(d.dynamicChildren,C,P,g,S,cr(h,E),w):$||ne(d,h,P,null,g,S,cr(h,E),w,!1),O>0){if(O&16)ke(P,I,H,g,E);else if(O&2&&I.class!==H.class&&o(P,"class",null,H.class,E),O&4&&o(P,"style",I.style,H.style,E),O&8){const Z=h.dynamicProps;for(let fe=0;fe{K&&ct(K,g,h,d),q&&Lt(h,d,g,"updated")},S)},ye=(d,h,g,S,E,w,$)=>{for(let P=0;P{if(h!==g){if(h!==te)for(const w in h)!wn(w)&&!(w in g)&&o(d,w,h[w],null,E,S);for(const w in g){if(wn(w))continue;const $=g[w],P=h[w];$!==P&&w!=="value"&&o(d,w,P,$,E,S)}"value"in g&&o(d,"value",h.value,g.value,E)}},Ue=(d,h,g,S,E,w,$,P,O)=>{const C=h.el=d?d.el:l(""),q=h.anchor=d?d.anchor:l("");let{patchFlag:I,dynamicChildren:H,slotScopeIds:K}=h;K&&(P=P?P.concat(K):K),d==null?(s(C,g,S),s(q,g,S),J(h.children||[],g,q,E,w,$,P,O)):I>0&&I&64&&H&&d.dynamicChildren?(ye(d.dynamicChildren,H,g,E,w,$,P),(h.key!=null||E&&h===E.subTree)&&Ql(d,h,!0)):ne(d,h,g,q,E,w,$,P,O)},Me=(d,h,g,S,E,w,$,P,O)=>{h.slotScopeIds=P,d==null?h.shapeFlag&512?E.ctx.activate(h,g,S,$,O):Nt(h,g,S,E,w,$,O):At(d,h,O)},Nt=(d,h,g,S,E,w,$)=>{const P=d.component=Zf(d,S,E);if(Il(d)&&(P.ctx.renderer=V),ed(P,!1,$),P.asyncDep){if(E&&E.registerDep(P,ge,$),!d.el){const O=P.subTree=le(Rt);k(null,O,h,g),d.placeholder=O.el}}else ge(P,d,h,g,E,w,$)},At=(d,h,g)=>{const S=h.component=d.component;if(qf(d,h,g))if(S.asyncDep&&!S.asyncResolved){G(S,h,g);return}else S.next=h,S.update();else h.el=d.el,S.vnode=h},ge=(d,h,g,S,E,w,$)=>{const P=()=>{if(d.isMounted){let{next:I,bu:H,u:K,parent:Z,vnode:fe}=d;{const it=Xl(d);if(it){I&&(I.el=fe.el,G(d,I,$)),it.asyncDep.then(()=>{d.isUnmounted||P()});return}}let ie=I,Ie;jt(d,!1),I?(I.el=fe.el,G(d,I,$)):I=fe,H&&ns(H),(Ie=I.props&&I.props.onVnodeBeforeUpdate)&&ct(Ie,Z,I,fe),jt(d,!0);const Ne=Vo(d),ot=d.subTree;d.subTree=Ne,_(ot,Ne,f(ot.el),x(ot),d,E,w),I.el=Ne.el,ie===null&&Kf(d,Ne.el),K&&Be(K,E),(Ie=I.props&&I.props.onVnodeUpdated)&&Be(()=>ct(Ie,Z,I,fe),E)}else{let I;const{el:H,props:K}=h,{bm:Z,m:fe,parent:ie,root:Ie,type:Ne}=d,ot=on(h);jt(d,!1),Z&&ns(Z),!ot&&(I=K&&K.onVnodeBeforeMount)&&ct(I,ie,h),jt(d,!0);{Ie.ce&&Ie.ce._def.shadowRoot!==!1&&Ie.ce._injectChildStyle(Ne);const it=d.subTree=Vo(d);_(null,it,g,S,d,E,w),h.el=it.el}if(fe&&Be(fe,E),!ot&&(I=K&&K.onVnodeMounted)){const it=h;Be(()=>ct(I,ie,it),E)}(h.shapeFlag&256||ie&&on(ie.vnode)&&ie.vnode.shapeFlag&256)&&d.a&&Be(d.a,E),d.isMounted=!0,h=g=S=null}};d.scope.on();const O=d.effect=new dl(P);d.scope.off();const C=d.update=O.run.bind(O),q=d.job=O.runIfDirty.bind(O);q.i=d,q.id=d.uid,O.scheduler=()=>Zr(q),jt(d,!0),C()},G=(d,h,g)=>{h.component=d;const S=d.vnode.props;d.vnode=h,d.next=null,Af(d,h.props,S,g),$f(d,h.children,g),xt(),Do(d),Et()},ne=(d,h,g,S,E,w,$,P,O=!1)=>{const C=d&&d.children,q=d?d.shapeFlag:0,I=h.children,{patchFlag:H,shapeFlag:K}=h;if(H>0){if(H&128){Pt(C,I,g,S,E,w,$,P,O);return}else if(H&256){gt(C,I,g,S,E,w,$,P,O);return}}K&8?(q&16&&Je(C,E,w),I!==C&&u(g,I)):q&16?K&16?Pt(C,I,g,S,E,w,$,P,O):Je(C,E,w,!0):(q&8&&u(g,""),K&16&&J(I,g,S,E,w,$,P,O))},gt=(d,h,g,S,E,w,$,P,O)=>{d=d||nn,h=h||nn;const C=d.length,q=h.length,I=Math.min(C,q);let H;for(H=0;Hq?Je(d,E,w,!0,!1,I):J(h,g,S,E,w,$,P,O,I)},Pt=(d,h,g,S,E,w,$,P,O)=>{let C=0;const q=h.length;let I=d.length-1,H=q-1;for(;C<=I&&C<=H;){const K=d[C],Z=h[C]=O?Dt(h[C]):ft(h[C]);if(bn(K,Z))_(K,Z,g,null,E,w,$,P,O);else break;C++}for(;C<=I&&C<=H;){const K=d[I],Z=h[H]=O?Dt(h[H]):ft(h[H]);if(bn(K,Z))_(K,Z,g,null,E,w,$,P,O);else break;I--,H--}if(C>I){if(C<=H){const K=H+1,Z=KH)for(;C<=I;)Fe(d[C],E,w,!0),C++;else{const K=C,Z=C,fe=new Map;for(C=Z;C<=H;C++){const He=h[C]=O?Dt(h[C]):ft(h[C]);He.key!=null&&fe.set(He.key,C)}let ie,Ie=0;const Ne=H-Z+1;let ot=!1,it=0;const hn=new Array(Ne);for(C=0;C=Ne){Fe(He,E,w,!0);continue}let lt;if(He.key!=null)lt=fe.get(He.key);else for(ie=Z;ie<=H;ie++)if(hn[ie-Z]===0&&bn(He,h[ie])){lt=ie;break}lt===void 0?Fe(He,E,w,!0):(hn[lt-Z]=C+1,lt>=it?it=lt:ot=!0,_(He,h[lt],g,null,E,w,$,P,O),Ie++)}const po=ot?If(hn):nn;for(ie=po.length-1,C=Ne-1;C>=0;C--){const He=Z+C,lt=h[He],ho=h[He+1],mo=He+1{const{el:w,type:$,transition:P,children:O,shapeFlag:C}=d;if(C&6){rt(d.component.subTree,h,g,S);return}if(C&128){d.suspense.move(h,g,S);return}if(C&64){$.move(d,h,g,V);return}if($===me){s(w,h,g);for(let I=0;IP.enter(w),E);else{const{leave:I,delayLeave:H,afterLeave:K}=P,Z=()=>{d.ctx.isUnmounted?r(w):s(w,h,g)},fe=()=>{w._isLeaving&&w[nf](!0),I(w,()=>{Z(),K&&K()})};H?H(w,Z,fe):fe()}else s(w,h,g)},Fe=(d,h,g,S=!1,E=!1)=>{const{type:w,props:$,ref:P,children:O,dynamicChildren:C,shapeFlag:q,patchFlag:I,dirs:H,cacheIndex:K}=d;if(I===-2&&(E=!1),P!=null&&(xt(),En(P,null,g,d,!0),Et()),K!=null&&(h.renderCache[K]=void 0),q&256){h.ctx.deactivate(d);return}const Z=q&1&&H,fe=!on(d);let ie;if(fe&&(ie=$&&$.onVnodeBeforeUnmount)&&ct(ie,h,d),q&6)Gn(d.component,g,S);else{if(q&128){d.suspense.unmount(g,S);return}Z&&Lt(d,null,h,"beforeUnmount"),q&64?d.type.remove(d,h,g,V,S):C&&!C.hasOnce&&(w!==me||I>0&&I&64)?Je(C,h,g,!1,!0):(w===me&&I&384||!E&&q&16)&&Je(O,h,g),S&&Yt(d)}(fe&&(ie=$&&$.onVnodeUnmounted)||Z)&&Be(()=>{ie&&ct(ie,h,d),Z&&Lt(d,null,h,"unmounted")},g)},Yt=d=>{const{type:h,el:g,anchor:S,transition:E}=d;if(h===me){Qt(g,S);return}if(h===rs){F(d);return}const w=()=>{r(g),E&&!E.persisted&&E.afterLeave&&E.afterLeave()};if(d.shapeFlag&1&&E&&!E.persisted){const{leave:$,delayLeave:P}=E,O=()=>$(g,w);P?P(d.el,w,O):O()}else w()},Qt=(d,h)=>{let g;for(;d!==h;)g=p(d),r(d),d=g;r(h)},Gn=(d,h,g)=>{const{bum:S,scope:E,job:w,subTree:$,um:P,m:O,a:C}=d;jo(O),jo(C),S&&ns(S),E.stop(),w&&(w.flags|=8,Fe($,d,h,g)),P&&Be(P,h),Be(()=>{d.isUnmounted=!0},h)},Je=(d,h,g,S=!1,E=!1,w=0)=>{for(let $=w;${if(d.shapeFlag&6)return x(d.component.subTree);if(d.shapeFlag&128)return d.suspense.next();const h=p(d.anchor||d.el),g=h&&h[ef];return g?p(g):h};let N=!1;const M=(d,h,g)=>{d==null?h._vnode&&Fe(h._vnode,null,null,!0):_(h._vnode||null,d,h,null,null,null,g),h._vnode=d,N||(N=!0,Do(),$l(),N=!1)},V={p:_,um:Fe,m:rt,r:Yt,mt:Nt,mc:J,pc:ne,pbc:ye,n:x,o:e};return{render:M,hydrate:void 0,createApp:Rf(M)}}function cr({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 jt({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Ff(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ql(e,t,n=!1){const s=e.children,r=t.children;if(B(s)&&B(r))for(let o=0;o>1,e[n[l]]0&&(t[s]=n[o-1]),n[o]=s)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}function Xl(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Xl(t)}function jo(e){if(e)for(let t=0;tQe(Nf);function jf(e,t){return ro(e,null,{flush:"sync"})}function qe(e,t,n){return ro(e,t,n)}function ro(e,t,n=te){const{immediate:s,deep:r,flush:o,once:i}=n,l=Re({},n),a=t&&s||!t&&o!=="post";let c;if(Nn){if(o==="sync"){const m=Lf();c=m.__watcherHandles||(m.__watcherHandles=[])}else if(!a){const m=()=>{};return m.stop=dt,m.resume=dt,m.pause=dt,m}}const u=Te;l.call=(m,y,_)=>mt(m,u,y,_);let f=!1;o==="post"?l.scheduler=m=>{Be(m,u&&u.suspense)}:o!=="sync"&&(f=!0,l.scheduler=(m,y)=>{y?m():Zr(m)}),l.augmentJob=m=>{t&&(m.flags|=4),f&&(m.flags|=2,u&&(m.id=u.uid,m.i=u))};const p=Yu(e,t,l);return Nn&&(c?c.push(p):a&&p()),p}function Vf(e,t,n){const s=this.proxy,r=_e(e)?e.includes(".")?Zl(s,e):()=>s[e]:e.bind(s,s);let o;W(t)?o=t:(o=t.handler,n=t);const i=zn(this),l=ro(r,o.bind(s),n);return i(),l}function Zl(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r{let u,f=te,p;return jf(()=>{const m=e[r];Le(u,m)&&(u=m,c())}),{get(){return a(),n.get?n.get(u):u},set(m){const y=n.set?n.set(m):m;if(!Le(y,u)&&!(f!==te&&Le(m,f)))return;const _=s.vnode.props;_&&(t in _||r in _||o in _)&&(`onUpdate:${t}`in _||`onUpdate:${r}`in _||`onUpdate:${o}`in _)||(u=m,c()),s.emit(`update:${t}`,y),Le(m,y)&&Le(m,f)&&!Le(y,p)&&c(),f=m,p=y}}});return l[Symbol.iterator]=()=>{let a=0;return{next(){return a<2?{value:a++?i||te:l,done:!1}:{done:!0}}}},l}const ea=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${ze(t)}Modifiers`]||e[`${Ct(t)}Modifiers`];function Uf(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||te;let r=n;const o=t.startsWith("update:"),i=o&&ea(s,t.slice(7));i&&(i.trim&&(r=n.map(u=>_e(u)?u.trim():u)),i.number&&(r=n.map(cs)));let l,a=s[l=nr(t)]||s[l=nr(ze(t))];!a&&o&&(a=s[l=nr(Ct(t))]),a&&mt(a,e,6,r);const c=s[l+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,mt(c,e,6,r)}}function ta(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const o=e.emits;let i={},l=!1;if(!W(e)){const a=c=>{const u=ta(c,t,!0);u&&(l=!0,Re(i,u))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!o&&!l?(he(e)&&s.set(e,null),null):(B(o)?o.forEach(a=>i[a]=null):Re(i,o),he(e)&&s.set(e,i),i)}function Ws(e,t){return!e||!Fs(t)?!1:(t=t.slice(2).replace(/Once$/,""),re(e,t[0].toLowerCase()+t.slice(1))||re(e,Ct(t))||re(e,t))}function Vo(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[o],slots:i,attrs:l,emit:a,render:c,renderCache:u,props:f,data:p,setupState:m,ctx:y,inheritAttrs:_}=e,R=hs(e);let k,A;try{if(n.shapeFlag&4){const F=r||s,U=F;k=ft(c.call(U,F,u,f,m,p,y)),A=l}else{const F=t;k=ft(F.length>1?F(f,{attrs:l,slots:i,emit:a}):F(f,null)),A=t.props?l:Hf(l)}}catch(F){Cn.length=0,Bs(F,e,1),k=le(Rt)}let D=k;if(A&&_!==!1){const F=Object.keys(A),{shapeFlag:U}=D;F.length&&U&7&&(o&&F.some(Hr)&&(A=Bf(A,o)),D=an(D,A,!1,!0))}return n.dirs&&(D=an(D,null,!1,!0),D.dirs=D.dirs?D.dirs.concat(n.dirs):n.dirs),n.transition&&eo(D,n.transition),k=D,hs(R),k}const Hf=e=>{let t;for(const n in e)(n==="class"||n==="style"||Fs(n))&&((t||(t={}))[n]=e[n]);return t},Bf=(e,t)=>{const n={};for(const s in e)(!Hr(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function qf(e,t,n){const{props:s,children:r,component:o}=e,{props:i,children:l,patchFlag:a}=t,c=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?Uo(s,i,c):!!i;if(a&8){const u=t.dynamicProps;for(let f=0;fe.__isSuspense;function Wf(e,t){t&&t.pendingBranch?B(e)?t.effects.push(...e):t.effects.push(e):Zu(e)}const me=Symbol.for("v-fgt"),zs=Symbol.for("v-txt"),Rt=Symbol.for("v-cmt"),rs=Symbol.for("v-stc"),Cn=[];let We=null;function T(e=!1){Cn.push(We=e?null:[])}function zf(){Cn.pop(),We=Cn[Cn.length-1]||null}let Fn=1;function Ho(e,t=!1){Fn+=e,e<0&&We&&t&&(We.hasOnce=!0)}function sa(e){return e.dynamicChildren=Fn>0?We||nn:null,zf(),Fn>0&&We&&We.push(e),e}function j(e,t,n,s,r,o){return sa(b(e,t,n,s,r,o,!0))}function Ee(e,t,n,s,r){return sa(le(e,t,n,s,r,!0))}function In(e){return e?e.__v_isVNode===!0:!1}function bn(e,t){return e.type===t.type&&e.key===t.key}const ra=({key:e})=>e??null,os=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?_e(e)||ve(e)||W(e)?{i:xe,r:e,k:t,f:!!n}:e:null);function b(e,t=null,n=null,s=0,r=null,o=e===me?0:1,i=!1,l=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ra(t),ref:t&&os(t),scopeId:Ml,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:xe};return l?(oo(a,n),o&128&&e.normalize(a)):n&&(a.shapeFlag|=_e(n)?8:16),Fn>0&&!i&&We&&(a.patchFlag>0||o&6)&&a.patchFlag!==32&&We.push(a),a}const le=Jf;function Jf(e,t=null,n=null,s=0,r=null,o=!1){if((!e||e===gf)&&(e=Rt),In(e)){const l=an(e,t,!0);return n&&oo(l,n),Fn>0&&!o&&We&&(l.shapeFlag&6?We[We.indexOf(e)]=l:We.push(l)),l.patchFlag=-2,l}if(od(e)&&(e=e.__vccOpts),t){t=Gf(t);let{class:l,style:a}=t;l&&!_e(l)&&(t.class=pe(l)),he(a)&&(Qr(a)&&!B(a)&&(a=Re({},a)),t.style=Kr(a))}const i=_e(e)?1:na(e)?128:tf(e)?64:he(e)?4:W(e)?2:0;return b(e,t,n,s,r,i,o,!0)}function Gf(e){return e?Qr(e)||Kl(e)?Re({},e):e:null}function an(e,t,n=!1,s=!1){const{props:r,ref:o,patchFlag:i,children:l,transition:a}=e,c=t?Yf(r||{},t):r,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&ra(c),ref:t&&t.ref?n&&o?B(o)?o.concat(os(t)):[o,os(t)]:os(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==me?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&an(e.ssContent),ssFallback:e.ssFallback&&an(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&s&&eo(u,a.clone(u)),u}function et(e=" ",t=0){return le(zs,null,e,t)}function oa(e,t){const n=le(rs,null,e);return n.staticCount=t,n}function Pe(e="",t=!1){return t?(T(),Ee(Rt,null,e)):le(Rt,null,e)}function ft(e){return e==null||typeof e=="boolean"?le(Rt):B(e)?le(me,null,e.slice()):In(e)?Dt(e):le(zs,null,String(e))}function Dt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:an(e)}function oo(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(B(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),oo(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!Kl(t)?t._ctx=xe:r===3&&xe&&(xe.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else W(t)?(t={default:t,_ctx:xe},n=32):(t=String(t),s&64?(n=16,t=[et(t)]):n=8);e.children=t,e.shapeFlag|=n}function Yf(...e){const t={};for(let n=0;nTe||xe;let bs,Pr;{const e=js(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),o=>{r.length>1?r.forEach(i=>i(o)):r[0](o)}};bs=t("__VUE_INSTANCE_SETTERS__",n=>Te=n),Pr=t("__VUE_SSR_SETTERS__",n=>Nn=n)}const zn=e=>{const t=Te;return bs(e),e.scope.on(),()=>{e.scope.off(),bs(t)}},Bo=()=>{Te&&Te.scope.off(),bs(null)};function ia(e){return e.vnode.shapeFlag&4}let Nn=!1;function ed(e,t=!1,n=!1){t&&Pr(t);const{props:s,children:r}=e.vnode,o=ia(e);Of(e,s,o,t),kf(e,r,n||t);const i=o?td(e,t):void 0;return t&&Pr(!1),i}function td(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,yf);const{setup:s}=n;if(s){xt();const r=e.setupContext=s.length>1?sd(e):null,o=zn(e),i=Wn(s,e,0,[e.props,r]),l=nl(i);if(Et(),o(),(l||e.sp)&&!on(e)&&Fl(e),l){if(i.then(Bo,Bo),t)return i.then(a=>{qo(e,a)}).catch(a=>{Bs(a,e,0)});e.asyncDep=i}else qo(e,i)}else la(e)}function qo(e,t,n){W(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:he(t)&&(e.setupState=Pl(t)),la(e)}function la(e,t,n){const s=e.type;e.render||(e.render=s.render||dt);{const r=zn(e);xt();try{vf(e)}finally{Et(),r()}}}const nd={get(e,t){return Oe(e,"get",""),e[t]}};function sd(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,nd),slots:e.slots,emit:e.emit,expose:t}}function Js(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Pl(Xr(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Rn)return Rn[n](e)},has(t,n){return n in t||n in Rn}})):e.proxy}function rd(e,t=!0){return W(e)?e.displayName||e.name:e.name||t&&e.__name}function od(e){return W(e)&&"__vccOpts"in e}const Ge=(e,t)=>Ju(e,t,Nn);function aa(e,t,n){const s=arguments.length;return s===2?he(t)&&!B(t)?In(t)?le(e,null,[t]):le(e,t):le(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&In(n)&&(n=[n]),le(e,t,n))}const id="3.5.20";/** -* @vue/runtime-dom v3.5.20 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let Tr;const Ko=typeof window<"u"&&window.trustedTypes;if(Ko)try{Tr=Ko.createPolicy("vue",{createHTML:e=>e})}catch{}const ca=Tr?e=>Tr.createHTML(e):e=>e,ld="http://www.w3.org/2000/svg",ad="http://www.w3.org/1998/Math/MathML",_t=typeof document<"u"?document:null,Wo=_t&&_t.createElement("template"),cd={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"?_t.createElementNS(ld,e):t==="mathml"?_t.createElementNS(ad,e):n?_t.createElement(e,{is:n}):_t.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>_t.createTextNode(e),createComment:e=>_t.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>_t.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,o){const i=n?n.previousSibling:t.lastChild;if(r&&(r===o||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===o||!(r=r.nextSibling)););else{Wo.innerHTML=ca(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=Wo.content;if(s==="svg"||s==="mathml"){const a=l.firstChild;for(;a.firstChild;)l.appendChild(a.firstChild);l.removeChild(a)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},ud=Symbol("_vtc");function fd(e,t,n){const s=e[ud];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const ys=Symbol("_vod"),ua=Symbol("_vsh"),On={name:"show",beforeMount(e,{value:t},{transition:n}){e[ys]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):yn(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:s}){!t!=!n&&(s?t?(s.beforeEnter(e),yn(e,!0),s.enter(e)):s.leave(e,()=>{yn(e,!1)}):yn(e,t))},beforeUnmount(e,{value:t}){yn(e,t)}};function yn(e,t){e.style.display=t?e[ys]:"none",e[ua]=!t}const dd=Symbol(""),pd=/(^|;)\s*display\s*:/;function hd(e,t,n){const s=e.style,r=_e(n);let o=!1;if(n&&!r){if(t)if(_e(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&is(s,l,"")}else for(const i in t)n[i]==null&&is(s,i,"");for(const i in n)i==="display"&&(o=!0),is(s,i,n[i])}else if(r){if(t!==n){const i=s[dd];i&&(n+=";"+i),s.cssText=n,o=pd.test(n)}}else t&&e.removeAttribute("style");ys in e&&(e[ys]=o?s.display:"",e[ua]&&(s.display="none"))}const zo=/\s*!important$/;function is(e,t,n){if(B(n))n.forEach(s=>is(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=md(e,t);zo.test(n)?e.setProperty(Ct(s),n.replace(zo,""),"important"):e[s]=n}}const Jo=["Webkit","Moz","ms"],ur={};function md(e,t){const n=ur[t];if(n)return n;let s=ze(t);if(s!=="filter"&&s in e)return ur[t]=s;s=Ls(s);for(let r=0;rfr||(vd.then(()=>fr=0),fr=Date.now());function wd(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;mt(Sd(s,n.value),t,5,[s])};return n.value=e,n.attached=_d(),n}function Sd(e,t){if(B(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 ei=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,xd=(e,t,n,s,r,o)=>{const i=r==="svg";t==="class"?fd(e,s,i):t==="style"?hd(e,n,s):Fs(t)?Hr(t)||bd(e,t,n,s,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Ed(e,t,s,i))?(Qo(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Yo(e,t,s,i,o,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!_e(s))?Qo(e,ze(t),s,o,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Yo(e,t,s,i))};function Ed(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&ei(t)&&W(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return ei(t)&&_e(n)?!1:t in e}const vs=e=>{const t=e.props["onUpdate:modelValue"]||!1;return B(t)?n=>ns(t,n):t};function Rd(e){e.target.composing=!0}function ti(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ln=Symbol("_assign"),Cd={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[ln]=vs(r);const o=s||r.props&&r.props.type==="number";Ut(e,t?"change":"input",i=>{if(i.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=cs(l)),e[ln](l)}),n&&Ut(e,"change",()=>{e.value=e.value.trim()}),t||(Ut(e,"compositionstart",Rd),Ut(e,"compositionend",ti),Ut(e,"change",ti))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:o}},i){if(e[ln]=vs(i),e.composing)return;const l=(o||e.type==="number")&&!/^0\d/.test(e.value)?cs(e.value):e.value,a=t??"";l!==a&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===a)||(e.value=a))}},_s={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const r=Is(t);Ut(e,"change",()=>{const o=Array.prototype.filter.call(e.options,i=>i.selected).map(i=>n?cs(ws(i)):ws(i));e[ln](e.multiple?r?new Set(o):o:o[0]),e._assigning=!0,qs(()=>{e._assigning=!1})}),e[ln]=vs(s)},mounted(e,{value:t}){ni(e,t)},beforeUpdate(e,t,n){e[ln]=vs(n)},updated(e,{value:t}){e._assigning||ni(e,t)}};function ni(e,t){const n=e.multiple,s=B(t);if(!(n&&!s&&!Is(t))){for(let r=0,o=e.options.length;rString(c)===String(l)):i.selected=yu(t,l)>-1}else i.selected=t.has(l);else if(Vs(ws(i),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function ws(e){return"_value"in e?e._value:e.value}const Od={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},vt=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=(r=>{if(!("key"in r))return;const o=Ct(r.key);if(t.some(i=>i===o||Od[i]===o))return e(r)}))},Ad=Re({patchProp:xd},cd);let si;function Pd(){return si||(si=Df(Ad))}const Td=((...e)=>{const t=Pd().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=$d(s);if(!r)return;const o=t._component;!W(o)&&!o.render&&!o.template&&(o.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const i=n(r,!1,kd(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),i},t});function kd(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function $d(e){return _e(e)?document.querySelector(e):e}/*! - * pinia v3.0.3 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */let fa;const Gs=e=>fa=e,da=Symbol();function kr(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var An;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(An||(An={}));function Dd(){const e=ul(!0),t=e.run(()=>X({}));let n=[],s=[];const r=Xr({install(o){Gs(r),r._a=o,o.provide(da,r),o.config.globalProperties.$pinia=r,s.forEach(i=>n.push(i)),s=[]},use(o){return this._a?n.push(o):s.push(o),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return r}const pa=()=>{};function ri(e,t,n,s=pa){e.push(t);const r=()=>{const o=e.indexOf(t);o>-1&&(e.splice(o,1),s())};return!n&&fl()&&vu(r),r}function Zt(e,...t){e.slice().forEach(n=>{n(...t)})}const Md=e=>e(),oi=Symbol(),dr=Symbol();function $r(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,s)=>e.set(s,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],r=e[n];kr(r)&&kr(s)&&e.hasOwnProperty(n)&&!ve(s)&&!Ft(s)?e[n]=$r(r,s):e[n]=s}return e}const Fd=Symbol();function Id(e){return!kr(e)||!Object.prototype.hasOwnProperty.call(e,Fd)}const{assign:kt}=Object;function Nd(e){return!!(ve(e)&&e.effect)}function Ld(e,t,n,s){const{state:r,actions:o,getters:i}=t,l=n.state.value[e];let a;function c(){l||(n.state.value[e]=r?r():{});const u=qu(n.state.value[e]);return kt(u,o,Object.keys(i||{}).reduce((f,p)=>(f[p]=Xr(Ge(()=>{Gs(n);const m=n._s.get(e);return i[p].call(m,m)})),f),{}))}return a=ha(e,c,t,n,s,!0),a}function ha(e,t,n={},s,r,o){let i;const l=kt({actions:{}},n),a={deep:!0};let c,u,f=[],p=[],m;const y=s.state.value[e];!o&&!y&&(s.state.value[e]={}),X({});let _;function R(J){let Y;c=u=!1,typeof J=="function"?(J(s.state.value[e]),Y={type:An.patchFunction,storeId:e,events:m}):($r(s.state.value[e],J),Y={type:An.patchObject,payload:J,storeId:e,events:m});const ye=_=Symbol();qs().then(()=>{_===ye&&(c=!0)}),u=!0,Zt(f,Y,s.state.value[e])}const k=o?function(){const{state:Y}=n,ye=Y?Y():{};this.$patch(ke=>{kt(ke,ye)})}:pa;function A(){i.stop(),f=[],p=[],s._s.delete(e)}const D=(J,Y="")=>{if(oi in J)return J[dr]=Y,J;const ye=function(){Gs(s);const ke=Array.from(arguments),Ue=[],Me=[];function Nt(G){Ue.push(G)}function At(G){Me.push(G)}Zt(p,{args:ke,name:ye[dr],store:U,after:Nt,onError:At});let ge;try{ge=J.apply(this&&this.$id===e?this:U,ke)}catch(G){throw Zt(Me,G),G}return ge instanceof Promise?ge.then(G=>(Zt(Ue,G),G)).catch(G=>(Zt(Me,G),Promise.reject(G))):(Zt(Ue,ge),ge)};return ye[oi]=!0,ye[dr]=Y,ye},F={_p:s,$id:e,$onAction:ri.bind(null,p),$patch:R,$reset:k,$subscribe(J,Y={}){const ye=ri(f,J,Y.detached,()=>ke()),ke=i.run(()=>qe(()=>s.state.value[e],Ue=>{(Y.flush==="sync"?u:c)&&J({storeId:e,type:An.direct,events:m},Ue)},kt({},a,Y)));return ye},$dispose:A},U=Kn(F);s._s.set(e,U);const Q=(s._a&&s._a.runWithContext||Md)(()=>s._e.run(()=>(i=ul()).run(()=>t({action:D}))));for(const J in Q){const Y=Q[J];if(ve(Y)&&!Nd(Y)||Ft(Y))o||(y&&Id(Y)&&(ve(Y)?Y.value=y[J]:$r(Y,y[J])),s.state.value[e][J]=Y);else if(typeof Y=="function"){const ye=D(Y,J);Q[J]=ye,l.actions[J]=Y}}return kt(U,Q),kt(ee(U),Q),Object.defineProperty(U,"$state",{get:()=>s.state.value[e],set:J=>{R(Y=>{kt(Y,J)})}}),s._p.forEach(J=>{kt(U,i.run(()=>J({store:U,app:s._a,pinia:s,options:l})))}),y&&o&&n.hydrate&&n.hydrate(U.$state,y),c=!0,u=!0,U}/*! #__NO_SIDE_EFFECTS__ */function Jn(e,t,n){let s;const r=typeof t=="function";s=r?n:t;function o(i,l){const a=Cf();return i=i||(a?Qe(da,null):null),i&&Gs(i),i=fa,i._s.has(e)||(r?ha(e,t,s,i):Ld(e,s,i)),i._s.get(e)}return o.$id=e,o}class jd{constructor(t,n){this.elements=t,this.onClickOutside=n,this.onClick=this.onClick.bind(this)}enable(t=!0){if(t===!1){this.disable();return}document.addEventListener("click",this.onClick)}disable(){document.removeEventListener("click",this.onClick)}addElement(t){this.elements.push(t)}onClick(t){(!(t.target instanceof HTMLElement)||this.isOutside(t.target))&&this.onClickOutside()}isOutside(t){for(const n of this.elements)if(n===t||n.contains(t))return!1;return!0}}function Vd(e,t,n="right"){n==="right"?t.style.left=e.offsetWidth-t.offsetWidth+"px":t.style.left="0px",t.style.top=e.offsetHeight+"px",t.getBoundingClientRect().bottom>window.innerHeight&&(t.style.top=-t.offsetHeight+"px")}const ma=be({__name:"ButtonGroup",props:{alignment:{},split:{type:Boolean},hideOnSelected:{type:Boolean}},setup(e,{expose:t}){const n=X(!1),s=X(),r=new jd([],()=>i(!1)),o=e,i=(l=null)=>{n.value=l??!n.value};return qe(n,()=>setTimeout(()=>r.enable(n.value),1)),Gt(()=>{o.hideOnSelected!==!0&&r.addElement(s.value)}),Ll(()=>{n.value!==!1&&Vd(s.value.parentElement,s.value,o.alignment)}),t({toggle:i}),(l,a)=>(T(),j("div",{class:pe(["slv-btn-group",{"btn-group":l.split,dropdown:!l.split}])},[lr(l.$slots,"btn_left"),lr(l.$slots,"btn_right"),b("ul",{class:pe(["dropdown-menu",{"d-block":n.value}]),ref_key:"dropdownRef",ref:s},[lr(l.$slots,"dropdown")],2)],2))}});class Jt{constructor(t={}){this.parameters=t}set(t,n,s=null){return n===s&&(n=null),n!=null&&n!==""&&(this.parameters[t]=String(n)),this}all(){return this.parameters}toString(){return new URLSearchParams(this.parameters).toString()}}function Ud(e){return{all:e=e||new Map,on:function(t,n){var s=e.get(t);s?s.push(n):e.set(t,[n])},off:function(t,n){var s=e.get(t);s&&(n?s.splice(s.indexOf(n)>>>0,1):e.set(t,[]))},emit:function(t,n){var s=e.get(t);s&&s.slice().map(function(r){r(n)}),(s=e.get("*"))&&s.slice().map(function(r){r(t,n)})}}}const Ss=Ud(),pn=Jn("hosts",()=>{const e=X(JSON.parse(document.head.querySelector("[name=hosts]")?.content??"[]")),t=X(Object.keys(e.value)[0]??"localhost");return{hosts:e,selected:t}}),lo=Jn("search",()=>{const e=X(""),t=X(""),n=X("100"),s=X("desc"),r=X([]),o=pn();function i(f){r.value.includes(f)===!1&&r.value.push(f)}function l(f){if(r.value.includes(f)){r.value=r.value.filter(p=>p!==f);return}r.value.push(f)}function a(f){r.value.splice(0,r.value.length,f)}function c(f){r.value=r.value.filter(p=>p!==f)}function u(){const f=new Jt;return f.set("file",r.value.join(","),""),f.set("query",e.value,""),f.set("between",t.value,""),f.set("per_page",n.value,"100"),f.set("sort",s.value,"desc"),f.set("host",o.selected,"localhost"),f.toString()}return{files:r,query:e,between:t,perPage:n,sort:s,addFile:i,toggleFile:l,setFile:a,removeFile:c,toQueryString:u}});/*! - * vue-router v4.5.1 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */const tn=typeof document<"u";function ga(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function Hd(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&ga(e.default)}const se=Object.assign;function pr(e,t){const n={};for(const s in t){const r=t[s];n[s]=nt(r)?r.map(e):e(r)}return n}const Pn=()=>{},nt=Array.isArray,ba=/#/g,Bd=/&/g,qd=/\//g,Kd=/=/g,Wd=/\?/g,ya=/\+/g,zd=/%5B/g,Jd=/%5D/g,va=/%5E/g,Gd=/%60/g,_a=/%7B/g,Yd=/%7C/g,wa=/%7D/g,Qd=/%20/g;function ao(e){return encodeURI(""+e).replace(Yd,"|").replace(zd,"[").replace(Jd,"]")}function Xd(e){return ao(e).replace(_a,"{").replace(wa,"}").replace(va,"^")}function Dr(e){return ao(e).replace(ya,"%2B").replace(Qd,"+").replace(ba,"%23").replace(Bd,"%26").replace(Gd,"`").replace(_a,"{").replace(wa,"}").replace(va,"^")}function Zd(e){return Dr(e).replace(Kd,"%3D")}function ep(e){return ao(e).replace(ba,"%23").replace(Wd,"%3F")}function tp(e){return e==null?"":ep(e).replace(qd,"%2F")}function Ln(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const np=/\/$/,sp=e=>e.replace(np,"");function hr(e,t,n="/"){let s,r={},o="",i="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(s=t.slice(0,a),o=t.slice(a+1,l>-1?l:t.length),r=e(o)),l>-1&&(s=s||t.slice(0,l),i=t.slice(l,t.length)),s=lp(s??t,n),{fullPath:s+(o&&"?")+o+i,path:s,query:r,hash:Ln(i)}}function rp(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function ii(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function op(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&cn(t.matched[s],n.matched[r])&&Sa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function cn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Sa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!ip(e[n],t[n]))return!1;return!0}function ip(e,t){return nt(e)?li(e,t):nt(t)?li(t,e):e===t}function li(e,t){return nt(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function lp(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let o=n.length-1,i,l;for(i=0;i1&&o--;else break;return n.slice(0,o).join("/")+"/"+s.slice(i).join("/")}const Tt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var jn;(function(e){e.pop="pop",e.push="push"})(jn||(jn={}));var Tn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Tn||(Tn={}));function ap(e){if(!e)if(tn){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),sp(e)}const cp=/^[^#]+#/;function up(e,t){return e.replace(cp,"#")+t}function fp(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const Ys=()=>({left:window.scrollX,top:window.scrollY});function dp(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=fp(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function ai(e,t){return(history.state?history.state.position-t:-1)+e}const Mr=new Map;function pp(e,t){Mr.set(e,t)}function hp(e){const t=Mr.get(e);return Mr.delete(e),t}let mp=()=>location.protocol+"//"+location.host;function xa(e,t){const{pathname:n,search:s,hash:r}=t,o=e.indexOf("#");if(o>-1){let l=r.includes(e.slice(o))?e.slice(o).length:1,a=r.slice(l);return a[0]!=="/"&&(a="/"+a),ii(a,"")}return ii(n,e)+s+r}function gp(e,t,n,s){let r=[],o=[],i=null;const l=({state:p})=>{const m=xa(e,location),y=n.value,_=t.value;let R=0;if(p){if(n.value=m,t.value=p,i&&i===y){i=null;return}R=_?p.position-_.position:0}else s(m);r.forEach(k=>{k(n.value,y,{delta:R,type:jn.pop,direction:R?R>0?Tn.forward:Tn.back:Tn.unknown})})};function a(){i=n.value}function c(p){r.push(p);const m=()=>{const y=r.indexOf(p);y>-1&&r.splice(y,1)};return o.push(m),m}function u(){const{history:p}=window;p.state&&p.replaceState(se({},p.state,{scroll:Ys()}),"")}function f(){for(const p of o)p();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:f}}function ci(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?Ys():null}}function bp(e){const{history:t,location:n}=window,s={value:xa(e,n)},r={value:t.state};r.value||o(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(a,c,u){const f=e.indexOf("#"),p=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+a:mp()+e+a;try{t[u?"replaceState":"pushState"](c,"",p),r.value=c}catch(m){console.error(m),n[u?"replace":"assign"](p)}}function i(a,c){const u=se({},t.state,ci(r.value.back,a,r.value.forward,!0),c,{position:r.value.position});o(a,u,!0),s.value=a}function l(a,c){const u=se({},r.value,t.state,{forward:a,scroll:Ys()});o(u.current,u,!0);const f=se({},ci(s.value,a,null),{position:u.position+1},c);o(a,f,!1),s.value=a}return{location:s,state:r,push:l,replace:i}}function yp(e){e=ap(e);const t=bp(e),n=gp(e,t.state,t.location,t.replace);function s(o,i=!0){i||n.pauseListeners(),history.go(o)}const r=se({location:"",base:e,go:s,createHref:up.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function vp(e){return typeof e=="string"||e&&typeof e=="object"}function Ea(e){return typeof e=="string"||typeof e=="symbol"}const Ra=Symbol("");var ui;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(ui||(ui={}));function un(e,t){return se(new Error,{type:e,[Ra]:!0},t)}function yt(e,t){return e instanceof Error&&Ra in e&&(t==null||!!(e.type&t))}const fi="[^/]+?",_p={sensitive:!1,strict:!1,start:!0,end:!0},wp=/[.+*?^${}()[\]/\\]/g;function Sp(e,t){const n=se({},_p,t),s=[];let r=n.start?"^":"";const o=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let f=0;ft.length?t.length===1&&t[0]===80?1:-1:0}function Ca(e,t){let n=0;const s=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const Ep={type:0,value:""},Rp=/[a-zA-Z0-9_]/;function Cp(e){if(!e)return[[]];if(e==="/")return[[Ep]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${c}": ${m}`)}let n=0,s=n;const r=[];let o;function i(){o&&r.push(o),o=[]}let l=0,a,c="",u="";function f(){c&&(n===0?o.push({type:0,value:c}):n===1||n===2||n===3?(o.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function p(){c+=a}for(;l{i(D)}:Pn}function i(f){if(Ea(f)){const p=s.get(f);p&&(s.delete(f),n.splice(n.indexOf(p),1),p.children.forEach(i),p.alias.forEach(i))}else{const p=n.indexOf(f);p>-1&&(n.splice(p,1),f.record.name&&s.delete(f.record.name),f.children.forEach(i),f.alias.forEach(i))}}function l(){return n}function a(f){const p=kp(f,n);n.splice(p,0,f),f.record.name&&!mi(f)&&s.set(f.record.name,f)}function c(f,p){let m,y={},_,R;if("name"in f&&f.name){if(m=s.get(f.name),!m)throw un(1,{location:f});R=m.record.name,y=se(pi(p.params,m.keys.filter(D=>!D.optional).concat(m.parent?m.parent.keys.filter(D=>D.optional):[]).map(D=>D.name)),f.params&&pi(f.params,m.keys.map(D=>D.name))),_=m.stringify(y)}else if(f.path!=null)_=f.path,m=n.find(D=>D.re.test(_)),m&&(y=m.parse(_),R=m.record.name);else{if(m=p.name?s.get(p.name):n.find(D=>D.re.test(p.path)),!m)throw un(1,{location:f,currentLocation:p});R=m.record.name,y=se({},p.params,f.params),_=m.stringify(y)}const k=[];let A=m;for(;A;)k.unshift(A.record),A=A.parent;return{name:R,path:_,params:y,matched:k,meta:Tp(k)}}e.forEach(f=>o(f));function u(){n.length=0,s.clear()}return{addRoute:o,resolve:c,removeRoute:i,clearRoutes:u,getRoutes:l,getRecordMatcher:r}}function pi(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function hi(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Pp(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Pp(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function mi(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Tp(e){return e.reduce((t,n)=>se(t,n.meta),{})}function gi(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}function kp(e,t){let n=0,s=t.length;for(;n!==s;){const o=n+s>>1;Ca(e,t[o])<0?s=o:n=o+1}const r=$p(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function $p(e){let t=e;for(;t=t.parent;)if(Oa(t)&&Ca(e,t)===0)return t}function Oa({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Dp(e){const t={};if(e===""||e==="?")return t;const s=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ro&&Dr(o)):[s&&Dr(s)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function Mp(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=nt(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Fp=Symbol(""),yi=Symbol(""),Qs=Symbol(""),co=Symbol(""),Fr=Symbol("");function vn(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Mt(e,t,n,s,r,o=i=>i()){const i=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,a)=>{const c=p=>{p===!1?a(un(4,{from:n,to:t})):p instanceof Error?a(p):vp(p)?a(un(2,{from:t,to:p})):(i&&s.enterCallbacks[r]===i&&typeof p=="function"&&i.push(p),l())},u=o(()=>e.call(s&&s.instances[r],t,n,c));let f=Promise.resolve(u);e.length<3&&(f=f.then(c)),f.catch(p=>a(p))})}function mr(e,t,n,s,r=o=>o()){const o=[];for(const i of e)for(const l in i.components){let a=i.components[l];if(!(t!=="beforeRouteEnter"&&!i.instances[l]))if(ga(a)){const u=(a.__vccOpts||a)[t];u&&o.push(Mt(u,n,s,i,l,r))}else{let c=a();o.push(()=>c.then(u=>{if(!u)throw new Error(`Couldn't resolve component "${l}" at "${i.path}"`);const f=Hd(u)?u.default:u;i.mods[l]=u,i.components[l]=f;const m=(f.__vccOpts||f)[t];return m&&Mt(m,n,s,i,l,r)()}))}}return o}function vi(e){const t=Qe(Qs),n=Qe(co),s=Ge(()=>{const a=L(e.to);return t.resolve(a)}),r=Ge(()=>{const{matched:a}=s.value,{length:c}=a,u=a[c-1],f=n.matched;if(!u||!f.length)return-1;const p=f.findIndex(cn.bind(null,u));if(p>-1)return p;const m=_i(a[c-2]);return c>1&&_i(u)===m&&f[f.length-1].path!==m?f.findIndex(cn.bind(null,a[c-2])):p}),o=Ge(()=>r.value>-1&&Vp(n.params,s.value.params)),i=Ge(()=>r.value>-1&&r.value===n.matched.length-1&&Sa(n.params,s.value.params));function l(a={}){if(jp(a)){const c=t[L(e.replace)?"replace":"push"](L(e.to)).catch(Pn);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>c),c}return Promise.resolve()}return{route:s,href:Ge(()=>s.value.href),isActive:o,isExactActive:i,navigate:l}}function Ip(e){return e.length===1?e[0]:e}const Np=be({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:vi,setup(e,{slots:t}){const n=Kn(vi(e)),{options:s}=Qe(Qs),r=Ge(()=>({[wi(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[wi(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&Ip(t.default(n));return e.custom?o:aa("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}}),Lp=Np;function jp(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Vp(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!nt(r)||r.length!==s.length||s.some((o,i)=>o!==r[i]))return!1}return!0}function _i(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const wi=(e,t,n)=>e??t??n,Up=be({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Qe(Fr),r=Ge(()=>e.route||s.value),o=Qe(yi,0),i=Ge(()=>{let c=L(o);const{matched:u}=r.value;let f;for(;(f=u[c])&&!f.components;)c++;return c}),l=Ge(()=>r.value.matched[i.value]);ss(yi,Ge(()=>i.value+1)),ss(Fp,l),ss(Fr,r);const a=X();return qe(()=>[a.value,l.value,e.name],([c,u,f],[p,m,y])=>{u&&(u.instances[f]=c,m&&m!==u&&c&&c===p&&(u.leaveGuards.size||(u.leaveGuards=m.leaveGuards),u.updateGuards.size||(u.updateGuards=m.updateGuards))),c&&u&&(!m||!cn(u,m)||!p)&&(u.enterCallbacks[f]||[]).forEach(_=>_(c))},{flush:"post"}),()=>{const c=r.value,u=e.name,f=l.value,p=f&&f.components[u];if(!p)return Si(n.default,{Component:p,route:c});const m=f.props[u],y=m?m===!0?c.params:typeof m=="function"?m(c):m:null,R=aa(p,se({},y,t,{onVnodeUnmounted:k=>{k.component.isUnmounted&&(f.instances[u]=null)},ref:a}));return Si(n.default,{Component:R,route:c})||R}}});function Si(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const Hp=Up;function Bp(e){const t=Ap(e.routes,e),n=e.parseQuery||Dp,s=e.stringifyQuery||bi,r=e.history,o=vn(),i=vn(),l=vn(),a=ju(Tt);let c=Tt;tn&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=pr.bind(null,x=>""+x),f=pr.bind(null,tp),p=pr.bind(null,Ln);function m(x,N){let M,V;return Ea(x)?(M=t.getRecordMatcher(x),V=N):V=x,t.addRoute(V,M)}function y(x){const N=t.getRecordMatcher(x);N&&t.removeRoute(N)}function _(){return t.getRoutes().map(x=>x.record)}function R(x){return!!t.getRecordMatcher(x)}function k(x,N){if(N=se({},N||a.value),typeof x=="string"){const g=hr(n,x,N.path),S=t.resolve({path:g.path},N),E=r.createHref(g.fullPath);return se(g,S,{params:p(S.params),hash:Ln(g.hash),redirectedFrom:void 0,href:E})}let M;if(x.path!=null)M=se({},x,{path:hr(n,x.path,N.path).path});else{const g=se({},x.params);for(const S in g)g[S]==null&&delete g[S];M=se({},x,{params:f(g)}),N.params=f(N.params)}const V=t.resolve(M,N),ce=x.hash||"";V.params=u(p(V.params));const d=rp(s,se({},x,{hash:Xd(ce),path:V.path})),h=r.createHref(d);return se({fullPath:d,hash:ce,query:s===bi?Mp(x.query):x.query||{}},V,{redirectedFrom:void 0,href:h})}function A(x){return typeof x=="string"?hr(n,x,a.value.path):se({},x)}function D(x,N){if(c!==x)return un(8,{from:N,to:x})}function F(x){return Q(x)}function U(x){return F(se(A(x),{replace:!0}))}function ae(x){const N=x.matched[x.matched.length-1];if(N&&N.redirect){const{redirect:M}=N;let V=typeof M=="function"?M(x):M;return typeof V=="string"&&(V=V.includes("?")||V.includes("#")?V=A(V):{path:V},V.params={}),se({query:x.query,hash:x.hash,params:V.path!=null?{}:x.params},V)}}function Q(x,N){const M=c=k(x),V=a.value,ce=x.state,d=x.force,h=x.replace===!0,g=ae(M);if(g)return Q(se(A(g),{state:typeof g=="object"?se({},ce,g.state):ce,force:d,replace:h}),N||M);const S=M;S.redirectedFrom=N;let E;return!d&&op(s,V,M)&&(E=un(16,{to:S,from:V}),rt(V,V,!0,!1)),(E?Promise.resolve(E):ye(S,V)).catch(w=>yt(w)?yt(w,2)?w:Pt(w):ne(w,S,V)).then(w=>{if(w){if(yt(w,2))return Q(se({replace:h},A(w.to),{state:typeof w.to=="object"?se({},ce,w.to.state):ce,force:d}),N||S)}else w=Ue(S,V,!0,h,ce);return ke(S,V,w),w})}function J(x,N){const M=D(x,N);return M?Promise.reject(M):Promise.resolve()}function Y(x){const N=Qt.values().next().value;return N&&typeof N.runWithContext=="function"?N.runWithContext(x):x()}function ye(x,N){let M;const[V,ce,d]=qp(x,N);M=mr(V.reverse(),"beforeRouteLeave",x,N);for(const g of V)g.leaveGuards.forEach(S=>{M.push(Mt(S,x,N))});const h=J.bind(null,x,N);return M.push(h),Je(M).then(()=>{M=[];for(const g of o.list())M.push(Mt(g,x,N));return M.push(h),Je(M)}).then(()=>{M=mr(ce,"beforeRouteUpdate",x,N);for(const g of ce)g.updateGuards.forEach(S=>{M.push(Mt(S,x,N))});return M.push(h),Je(M)}).then(()=>{M=[];for(const g of d)if(g.beforeEnter)if(nt(g.beforeEnter))for(const S of g.beforeEnter)M.push(Mt(S,x,N));else M.push(Mt(g.beforeEnter,x,N));return M.push(h),Je(M)}).then(()=>(x.matched.forEach(g=>g.enterCallbacks={}),M=mr(d,"beforeRouteEnter",x,N,Y),M.push(h),Je(M))).then(()=>{M=[];for(const g of i.list())M.push(Mt(g,x,N));return M.push(h),Je(M)}).catch(g=>yt(g,8)?g:Promise.reject(g))}function ke(x,N,M){l.list().forEach(V=>Y(()=>V(x,N,M)))}function Ue(x,N,M,V,ce){const d=D(x,N);if(d)return d;const h=N===Tt,g=tn?history.state:{};M&&(V||h?r.replace(x.fullPath,se({scroll:h&&g&&g.scroll},ce)):r.push(x.fullPath,ce)),a.value=x,rt(x,N,M,h),Pt()}let Me;function Nt(){Me||(Me=r.listen((x,N,M)=>{if(!Gn.listening)return;const V=k(x),ce=ae(V);if(ce){Q(se(ce,{replace:!0,force:!0}),V).catch(Pn);return}c=V;const d=a.value;tn&&pp(ai(d.fullPath,M.delta),Ys()),ye(V,d).catch(h=>yt(h,12)?h:yt(h,2)?(Q(se(A(h.to),{force:!0}),V).then(g=>{yt(g,20)&&!M.delta&&M.type===jn.pop&&r.go(-1,!1)}).catch(Pn),Promise.reject()):(M.delta&&r.go(-M.delta,!1),ne(h,V,d))).then(h=>{h=h||Ue(V,d,!1),h&&(M.delta&&!yt(h,8)?r.go(-M.delta,!1):M.type===jn.pop&&yt(h,20)&&r.go(-1,!1)),ke(V,d,h)}).catch(Pn)}))}let At=vn(),ge=vn(),G;function ne(x,N,M){Pt(x);const V=ge.list();return V.length?V.forEach(ce=>ce(x,N,M)):console.error(x),Promise.reject(x)}function gt(){return G&&a.value!==Tt?Promise.resolve():new Promise((x,N)=>{At.add([x,N])})}function Pt(x){return G||(G=!x,Nt(),At.list().forEach(([N,M])=>x?M(x):N()),At.reset()),x}function rt(x,N,M,V){const{scrollBehavior:ce}=e;if(!tn||!ce)return Promise.resolve();const d=!M&&hp(ai(x.fullPath,0))||(V||!M)&&history.state&&history.state.scroll||null;return qs().then(()=>ce(x,N,d)).then(h=>h&&dp(h)).catch(h=>ne(h,x,N))}const Fe=x=>r.go(x);let Yt;const Qt=new Set,Gn={currentRoute:a,listening:!0,addRoute:m,removeRoute:y,clearRoutes:t.clearRoutes,hasRoute:R,getRoutes:_,resolve:k,options:e,push:F,replace:U,go:Fe,back:()=>Fe(-1),forward:()=>Fe(1),beforeEach:o.add,beforeResolve:i.add,afterEach:l.add,onError:ge.add,isReady:gt,install(x){const N=this;x.component("RouterLink",Lp),x.component("RouterView",Hp),x.config.globalProperties.$router=N,Object.defineProperty(x.config.globalProperties,"$route",{enumerable:!0,get:()=>L(a)}),tn&&!Yt&&a.value===Tt&&(Yt=!0,F(r.location).catch(ce=>{}));const M={};for(const ce in Tt)Object.defineProperty(M,ce,{get:()=>a.value[ce],enumerable:!0});x.provide(Qs,N),x.provide(co,Cl(M)),x.provide(Fr,a);const V=x.unmount;Qt.add(x),x.unmount=function(){Qt.delete(x),Qt.size<1&&(c=Tt,Me&&Me(),Me=null,a.value=Tt,Yt=!1,G=!1),V()}}};function Je(x){return x.reduce((N,M)=>N.then(()=>Y(M)),Promise.resolve())}return Gn}function qp(e,t){const n=[],s=[],r=[],o=Math.max(t.matched.length,e.matched.length);for(let i=0;icn(c,l))?s.push(l):n.push(l));const a=e.matched[i];a&&(t.matched.find(c=>cn(c,a))||r.push(a))}return[n,s,r]}function uo(){return Qe(Qs)}function Aa(e){return Qe(co)}const Kp=["title"],Wp={class:"d-block text-nowrap overflow-hidden"},zp={class:"d-block file-size text-secondary text-nowrap overflow-hidden"},Jp={key:0},Gp=["href"],Yp={key:1},Qp=be({__name:"LogFile",props:{file:{}},setup(e){const t=X(),n=uo(),s=lo(),r=pn(),o=ue.defaults.baseURL,i=a=>{const c=new Jt().set("host",r.selected,"localhost").all();ue.delete("/api/file/"+encodeURI(a),{params:c}).then(()=>{s.removeFile(a),s.files.length===0&&n.push({name:"home"}),Ss.emit("file-deleted",a)})},l=(a,c)=>{if(c?s.toggleFile(a):s.setFile(a),s.files.length===0){n.push({name:"home"});return}n.push("/log?"+s.toQueryString())};return(a,c)=>(T(),Ee(ma,{ref_key:"toggleRef",ref:t,alignment:"right",split:!0,class:"mb-1","hide-on-selected":!0},{btn_left:Kt(()=>[b("a",{onClick:c[0]||(c[0]=u=>{u.preventDefault(),l(a.file.identifier,u.ctrlKey||u.metaKey)}),href:"javascript:",class:pe(["btn btn-file text-start btn-outline-primary w-100",{"btn-outline-primary-active":L(s).files.includes(a.file.identifier)}]),title:a.file.name},[b("span",Wp,oe(a.file.name),1),b("span",zp,oe(a.file.size_formatted),1)],10,Kp)]),btn_right:Kt(()=>[b("button",{type:"button",class:pe(["slv-toggle-btn btn btn-outline-primary dropdown-toggle dropdown-toggle-split",{"btn-outline-primary-active":L(s).files.includes(a.file.identifier)}]),onClick:c[1]||(c[1]=(...u)=>t.value.toggle&&t.value.toggle(...u))},[...c[4]||(c[4]=[b("i",{class:"bi bi-three-dots-vertical"},null,-1)])],2)]),dropdown:Kt(()=>[b("li",null,[b("a",{class:"dropdown-item",href:"javascript:",onClick:c[2]||(c[2]=u=>l(a.file.identifier,!0))},[c[5]||(c[5]=b("i",{class:"bi bi-check2-circle me-3"},null,-1)),et(oe(L(s).files.includes(a.file.identifier)?"Deselect":"Select")+" ",1),c[6]||(c[6]=b("code",null,"(ctrl+click)",-1))])]),a.file.can_download?(T(),j("li",Jp,[b("a",{class:"dropdown-item",href:L(o)+"api/file/"+encodeURI(a.file.identifier)+"?"+new(L(Jt))().set("host",L(r).selected,"localhost").toString()},[...c[7]||(c[7]=[b("i",{class:"bi bi-cloud-download me-3"},null,-1),et("Download ",-1)])],8,Gp)])):Pe("",!0),a.file.can_delete?(T(),j("li",Yp,[b("a",{class:"dropdown-item",href:"javascript:",onClick:c[3]||(c[3]=u=>i(a.file.identifier))},[...c[8]||(c[8]=[b("i",{class:"bi bi-trash3 me-3"},null,-1),et("Delete ",-1)])])])):Pe("",!0)]),_:1},512))}}),we=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Xp=we(Qp,[["__scopeId","data-v-5dbbd497"]]),Zp=["aria-expanded"],eh={class:"text-nowrap"},th={key:0},nh=["href"],sh={key:1},rh={class:"ms-2 mt-1"},oh=be({__name:"LogFolder",props:{expand:{type:Boolean},folder:{}},setup(e){const t=X(),n=ue.defaults.baseURL,s=uo(),r=X(!1),o=pn(),i=lo(),l=e,a=u=>{const f=new Jt().set("host",o.selected,"localhost").all();ue.delete("/api/folder/"+encodeURI(u),{params:f}).then(()=>{s.push({name:"home"}),Ss.emit("folder-deleted",u)})},c=u=>{u.forEach(f=>i.addFile(f.identifier)),s.push("/log?"+i.toQueryString())};return Gt(()=>r.value=l.expand),(u,f)=>(T(),j("div",{class:"folder-group mt-1","aria-expanded":r.value},[le(ma,{ref_key:"toggleRef",ref:t,alignment:"right",split:!0,"hide-on-selected":!0},{btn_left:Kt(()=>[b("button",{type:"button",class:"btn btn-outline-primary text-start w-100",onClick:f[0]||(f[0]=p=>r.value=!r.value)},[f[4]||(f[4]=b("i",{class:"slv-indicator bi bi-chevron-right me-2"},null,-1)),b("span",eh,oe(u.folder.path),1)])]),btn_right:Kt(()=>[b("button",{type:"button",class:"slv-toggle-btn btn btn-outline-primary dropdown-toggle dropdown-toggle-split",onClick:f[1]||(f[1]=(...p)=>t.value.toggle&&t.value.toggle(...p))},[...f[5]||(f[5]=[b("i",{class:"bi bi-three-dots-vertical"},null,-1)])])]),dropdown:Kt(()=>[b("li",null,[b("a",{class:"dropdown-item",href:"javascript:",onClick:f[2]||(f[2]=p=>c(u.folder.files))},[...f[6]||(f[6]=[b("i",{class:"bi bi-check2-circle me-3"},null,-1),et("Select all ",-1)])])]),u.folder.can_download?(T(),j("li",th,[b("a",{class:"dropdown-item",href:L(n)+"api/folder/"+encodeURI(u.folder.identifier)+"?"+new(L(Jt))().set("host",L(o).selected,"localhost").toString()},[...f[7]||(f[7]=[b("i",{class:"bi bi-cloud-download me-3"},null,-1),et("Download ",-1)])],8,nh)])):Pe("",!0),u.folder.can_delete?(T(),j("li",sh,[b("a",{class:"dropdown-item",href:"javascript:",onClick:f[3]||(f[3]=p=>a(u.folder.identifier))},[...f[8]||(f[8]=[b("i",{class:"bi bi-trash3 me-3"},null,-1),et("Delete ",-1)])])])):Pe("",!0)]),_:1},512),pt(b("div",rh,[(T(!0),j(me,null,ht(u.folder.files,(p,m)=>(T(),Ee(Xp,{file:p,key:m},null,8,["file"]))),128))],512),[[On,r.value]])],8,Zp))}}),ih=Jn("folders",()=>{const e=pn(),t=X(!1),n=X("desc"),s=X(JSON.parse(document.head.querySelector("[name=folders]")?.content??"[]"));async function r(){t.value=!0;const o=await ue.get("/api/folders",{params:{host:e.selected,direction:n.value}});s.value=o.data,t.value=!1}return{loading:t,direction:n,folders:s,update:r}}),lh={class:"p-1 pe-2 overflow-auto"},ah={class:"slv-control-layout m-0"},ch=["value"],uh=be({__name:"FileTree",setup(e){const t=ih(),n=pn();return qe(()=>n.selected,()=>t.update()),Ss.on("file-deleted",()=>t.update()),Ss.on("folder-deleted",()=>t.update()),(s,r)=>(T(),j("div",lh,[b("div",ah,[b("div",null,[Object.keys(L(n).hosts).length>0?pt((T(),j("select",{key:0,class:"form-select pb-0 pt-0 ps-0 slv-form-select border-0","onUpdate:modelValue":r[0]||(r[0]=o=>L(n).selected=o)},[(T(!0),j(me,null,ht(L(n).hosts,(o,i)=>(T(),j("option",{value:i,key:i},oe(o),9,ch))),128))],512)),[[_s,L(n).selected]]):Pe("",!0)]),r[4]||(r[4]=b("div",null,null,-1)),b("div",null,[pt(b("select",{class:"form-select pb-0 pt-0 ps-0 slv-form-select border-0","onUpdate:modelValue":r[1]||(r[1]=o=>L(t).direction=o),onChange:r[2]||(r[2]=(...o)=>L(t).update&&L(t).update(...o))},[...r[3]||(r[3]=[b("option",{value:"desc"},"Newest First",-1),b("option",{value:"asc"},"Oldest First",-1)])],544),[[_s,L(t).direction]])])]),b("div",{class:pe(["slv-loadable",{"slv-loading":L(t).loading}])},[(T(!0),j(me,null,ht(L(t).folders,(o,i)=>(T(),Ee(oh,{folder:o,expand:!0,key:i},null,8,["folder"]))),128))],2)]))}}),fh=we(uh,[["__scopeId","data-v-bbd20e15"]]),dh={class:"slv-sidebar h-100 overflow-hidden"},ph={class:"slv-header-height slv-header bg-body position-relative"},hh=["href"],mh=be({__name:"LogViewer",setup(e){const t=Aa(),n=document.head.querySelector("[name=home-uri]").content;return(s,r)=>{const o=mf("RouterView");return T(),j(me,null,[b("div",dh,[b("header",ph,[b("a",{href:L(n),class:"slv-back text-decoration-none"},[...r[0]||(r[0]=[b("i",{class:"bi bi-arrow-left-short"},null,-1),et("Back ",-1)])],8,hh),r[1]||(r[1]=b("h4",{class:"d-block text-center slv-app-title m-0"},[b("i",{class:"bi bi-substack slv-icon-color"}),et(" Log viewer ")],-1))]),le(fh)]),(T(),Ee(o,{key:L(t).fullPath}))],64)}}}),gh=we(mh,[["__scopeId","data-v-1a1a736f"]]),bh={},yh={class:"failure"};function vh(e,t){return T(),j("div",yh,[...t[0]||(t[0]=[b("div",{class:"alert alert-danger label"}," An error occurred while reading the log file. ",-1)])])}const _h=we(bh,[["render",vh],["__scopeId","data-v-e7a86375"]]),wh={},Sh={class:"not-found"};function xh(e,t){return T(),j("div",Sh,[...t[0]||(t[0]=[b("div",{class:"alert alert-danger label"}," Log file not found. ",-1)])])}const Eh=we(wh,[["render",xh],["__scopeId","data-v-4aa842d2"]]),Rh={},Ch={class:"home"};function Oh(e,t){return T(),j("div",Ch,[...t[0]||(t[0]=[b("span",{class:"label text-secondary"},"Select a log file to view",-1)])])}const Ah=we(Rh,[["render",Oh],["__scopeId","data-v-940f0fa9"]]);class xs{static parseInt(t){const n=Number.parseInt(t);if(isNaN(n))throw new Error("Invalid number value: "+t);return n}static numeric(t){return typeof t=="number"?!0:typeof t=="string"?isNaN(Number(t))===!1:!1}}class Ph{static trim(t,n){for(;t.startsWith(n);)t=t.substring(n.length);for(;t.endsWith(n);)t=t.substring(0,t.length-n.length);return t}}const Th={key:0},kh={key:1},$h={key:2},Dh=["title"],Mh={key:3},Fh=["title"],Ih=be({__name:"JsonScalarValue",props:{path:{},data:{}},emits:["click"],setup(e,{emit:t}){const n=e,s=t;function r(o){s("click",`${Ph.trim(n.path,".")}="${o}"`)}return(o,i)=>n.data===null?(T(),j("div",Th,[b("span",{class:"slv-json-value text-info",title:"type: null",onClick:i[0]||(i[0]=l=>r(n.data))},"null")])):typeof n.data=="boolean"?(T(),j("div",kh,[b("span",{class:"slv-json-value text-info",title:"type: boolean",onClick:i[1]||(i[1]=l=>r(n.data))},oe(n.data?"true":"false"),1)])):L(xs).numeric(o.data)?(T(),j("div",$h,[b("span",{class:"slv-json-value text-info",title:"type: "+typeof n.data,onClick:i[2]||(i[2]=l=>r(n.data))},oe(n.data),9,Dh)])):(T(),j("div",Mh,[b("span",{class:"slv-json-value",title:"type: "+typeof n.data,onClick:i[3]||(i[3]=l=>r(n.data))},oe(n.data),9,Fh)]))}}),Nh=we(Ih,[["__scopeId","data-v-fd73aacd"]]);class Es{static isObject(t){return t!==null&&typeof t=="object"&&Array.isArray(t)===!1}}const Lh={key:0},jh={class:"m-0 slv-array-list"},Vh=be({__name:"JsonValue",props:{path:{},data:{}},emits:["click"],setup(e,{emit:t}){const n=e,s=t;function r(o){s("click",o)}return(o,i)=>Array.isArray(n.data)?(T(),j("div",Lh,[b("ul",jh,[(T(!0),j(me,null,ht(n.data,(l,a)=>(T(),j("li",{key:a},[L(Es).isObject(l)?(T(),Ee(Rs,{key:0,path:n.path+a+".",data:l,onClick:r},null,8,["path","data"])):(T(),Ee(Ir,{key:1,path:n.path+a+".",data:l,onClick:r},null,8,["path","data"]))]))),128))])])):L(Es).isObject(n.data)?(T(),Ee(Rs,{key:1,path:n.path,data:n.data,onClick:r},null,8,["path","data"])):(T(),Ee(Nh,{key:2,path:n.path,data:n.data,onClick:r},null,8,["path","data"]))}}),Ir=we(Vh,[["__scopeId","data-v-aadff6e1"]]),Uh={key:0},Hh={class:"text-warning"},Bh=be({__name:"JsonData",props:{path:{},data:{}},emits:["click"],setup(e,{emit:t}){const n=e,s=t;function r(o){s("click",o)}return(o,i)=>L(Es).isObject(n.data)?(T(),j("div",Uh,[(T(!0),j(me,null,ht(n.data,(l,a)=>(T(),j("div",{key:a,class:pe(["slv-indent",{"slv-key-value":L(Es).isObject(l)===!1&&Array.isArray(l)===!1}])},[b("div",Hh,oe(a)+":",1),le(Ir,{path:n.path+a+".",data:l,onClick:r},null,8,["path","data"])],2))),128))])):(T(),Ee(Ir,{key:1,path:n.path,data:n.data,onClick:r},null,8,["path","data"]))}}),Rs=we(Bh,[["__scopeId","data-v-147b6c62"]]);function xi(e){return typeof e=="string"?e===""||e==="{}"||e==="[]":Object.keys(e).length===0}function Ei(e){let t=e;if(typeof e=="string")try{t=JSON.parse(e)}catch{return e}return t.length===0?"":JSON.stringify(t,null,2)}const qh=["aria-expanded"],Kh={class:"pe-2 text-secondary"},Wh={key:0,class:"text-primary pe-2"},zh={key:0},Jh={key:1},Gh={class:"ms-0"},Yh={key:1},Qh={key:1},Xh={class:"ms-0"},Zh=be({__name:"LogRecord",props:{logRecord:{}},emits:["search"],setup(e,{emit:t}){const n=X(!1),s=X(!0),r=t;function o(i){r("search",i)}return(i,l)=>(T(),j("div",{class:pe(["slv-log-record",{"opacity-50":i.logRecord.context_line&&!n.value}]),"aria-expanded":n.value},[b("div",{class:pe(["slv-list-link list-group-item list-group-item-action border-0 p-0",{"text-nowrap":!n.value,"overflow-hidden":!n.value}]),onClick:l[0]||(l[0]=a=>n.value=!n.value)},[l[2]||(l[2]=b("i",{class:"slv-indicator bi bi-chevron-right me-1"},null,-1)),b("span",Kh,oe(i.logRecord.datetime),1),i.logRecord.channel.length>0?(T(),j("span",Wh,oe(i.logRecord.channel),1)):Pe("",!0),b("span",{class:pe(["pe-2",i.logRecord.level_class])},oe(i.logRecord.level_name),3),b("span",null,oe(i.logRecord.text),1)],2),n.value?(T(),j("div",{key:0,class:pe(["border-top pt-2 ps-2 mb-2 position-relative",{"d-block":n.value,"d-none":!n.value}])},[b("button",{class:"btn btn-outline-secondary slv-btn-raw",onClick:l[1]||(l[1]=a=>s.value=!s.value)},oe(s.value?"raw":"styled"),1),L(xi)(i.logRecord.context)?Pe("",!0):(T(),j("div",zh,[l[3]||(l[3]=b("div",{class:"fw-bold"},"Context:",-1)),s.value?(T(),Ee(Rs,{key:0,path:"context:",data:i.logRecord.context,onClick:o},null,8,["data"])):(T(),j("div",Jh,[b("pre",Gh,[b("code",null,oe(L(Ei)(i.logRecord.context)),1)])]))])),L(xi)(i.logRecord.extra)?Pe("",!0):(T(),j("div",Yh,[l[4]||(l[4]=b("div",{class:"fw-bold"},"Extra:",-1)),s.value?(T(),Ee(Rs,{key:0,path:"extra:",data:i.logRecord.extra,onClick:o},null,8,["data"])):(T(),j("div",Qh,[b("pre",Xh,[b("code",null,oe(L(Ei)(i.logRecord.extra)),1)])]))]))],2)):Pe("",!0)],10,qh))}}),em=we(Zh,[["__scopeId","data-v-38baa4dc"]]),tm={key:0,class:"me-4 small d-inline-block"},nm={class:"small"},sm={class:"small"},rm={class:"small"},om=be({__name:"PerformanceDetails",props:{performance:{}},setup(e){return(t,n)=>t.performance!==void 0?(T(),j("div",tm,[b("span",nm,"Memory: "+oe(t.performance.memoryUsage),1),n[0]||(n[0]=et(" · ",-1)),b("span",sm,"Duration: "+oe(t.performance.requestTime),1),n[1]||(n[1]=et(" · ",-1)),b("span",rm,"Version: "+oe(t.performance.version),1)])):Pe("",!0)}});function Cs(e,t,n){const s=new Date;switch(t){case"s":s.setSeconds(s.getSeconds()-e),n&&s.setMilliseconds(0);break;case"i":s.setMinutes(s.getMinutes()-e),n&&(s.setSeconds(0),s.setMilliseconds(0));break;case"h":s.setHours(s.getHours()-e),n&&(s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0));break;case"d":s.setDate(s.getDate()-e),n&&(s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0));break;case"w":s.setDate(s.getDate()-e*7),n&&(s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0));break;case"m":s.setMonth(s.getMonth()-e),n&&(s.setDate(1),s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0));break;case"y":s.setFullYear(s.getFullYear()-e),n&&(s.setMonth(0),s.setDate(1),s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0));break}return s}function Os(e){if(e===void 0)return"";const t=e.toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"}),n=Pa("H:i:s.u",e);return`${t} @ ${n}`}function As(e,t){switch(t){case"s":return`~${e} seconds ago`;case"i":return`~${e} minutes ago`;case"h":return`~${e} hours ago`;case"d":return`~${e} days ago`;case"w":return`~${e} weeks ago`;case"m":return`~${e} months ago`;case"y":return`~${e} years ago`;default:return String(e)}}function Pa(e,t){if(t===void 0)return"";let n="";for(let s=0;s(T(),j("div",hm,[(T(!0),j(me,null,ht(L(fm)(),o=>(T(),j("button",{class:pe(["btn btn-outline-primary btn-sm border-0 d-block",{"btn-outline-primary-active":t.value.getHours()===o.getHours()&&t.value.getMinutes()===o.getMinutes()}]),key:o.getHours()+":"+o.getMinutes(),"data-hour":o.getHours(),"data-minute":o.getMinutes(),onClick:i=>n(o)},oe(o.getHours().toString().padStart(2,"0"))+":"+oe(o.getMinutes().toString().padStart(2,"0")),11,mm))),128))]))}}),bm={class:"month-year mt-2 mb-2"},ym=["value","selected"],vm=["value"],_m={class:"days-time"},wm={class:"days"},Sm={class:"week-days"},xm={class:"day-of-the-month"},Em=["onClick"],Rm=be({__name:"AbsoluteDatePicker",props:Xe({activated:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=Ke(e,"modelValue"),n=e,s=X(new Date),r=X(new Date),o=X(Ci(s.value));qe(t,()=>s.value=new Date(t.value.date)),qe(s,()=>o.value=Ci(s.value)),qe(r,()=>{t.value.date=r.value,t.value.value=null,t.value.mode="absolute",t.value.formatted=Os(r.value)}),qe(()=>n.activated,()=>{n.activated&&(t.value.formatted=Os(t.value.date),t.value.mode="absolute",t.value.value=null)});function i(l,a){switch(a){case"month":s.value.setMonth(parseInt(l.target.value));break;case"year":const c=l.target;if(c.reportValidity()===!1)return;s.value.setFullYear(parseInt(c.value));break}s.value=new Date(s.value)}return(l,a)=>(T(),j("div",null,[b("div",bm,[b("button",{class:"btn btn-outline-primary btn-sm border-0",onClick:a[0]||(a[0]=c=>s.value=new Date(s.value.getFullYear(),s.value.getMonth()-1,1,12,0,0))},[...a[5]||(a[5]=[b("i",{class:"bi bi-chevron-left"},null,-1)])]),b("select",{class:"form-control form-control-sm",onChange:a[1]||(a[1]=c=>i(c,"month"))},[(T(!0),j(me,null,ht(L(dm)(),(c,u)=>(T(),j("option",{key:u,value:u,selected:u===s.value.getMonth()},oe(c),9,ym))),128))],32),b("input",{type:"number",class:"form-control form-control-sm",onInput:a[2]||(a[2]=c=>i(c,"year")),required:"",min:"1000",max:"9999",value:s.value.getFullYear()},null,40,vm),b("button",{class:"btn btn-outline-primary btn-sm border-0",onClick:a[3]||(a[3]=c=>s.value=new Date(s.value.getFullYear(),s.value.getMonth()+1,1,12,0,0))},[...a[6]||(a[6]=[b("i",{class:"bi bi-chevron-right"},null,-1)])])]),b("div",_m,[b("div",wm,[b("div",Sm,[(T(),j(me,null,ht(["Mo","Tu","We","Th","Fr","Sa","Su"],c=>b("div",{key:c,class:"text-center"},oe(c),1)),64))]),b("div",xm,[(T(!0),j(me,null,ht(o.value,c=>(T(),j("button",{key:c.toDateString(),class:pe(["btn btn-outline-primary border-0",{"btn-outline-primary-active":L(cm)(c,t.value.date),"opacity-50":L(um)(c,s.value)===!1}]),onClick:u=>r.value=L(pm)(t.value.date,c.getFullYear(),c.getMonth(),c.getDate())},oe(c.getDate()),11,Em))),128))])]),le(gm,{class:pe(["time",{"time-6-weeks":o.value.length>35}]),modelValue:r.value,"onUpdate:modelValue":a[4]||(a[4]=c=>r.value=c)},null,8,["class","modelValue"])])]))}}),Cm=we(Rm,[["__scopeId","data-v-f24727c8"]]),Om={class:"mt-5 mb-5"},Am=be({__name:"NowDatePicker",props:Xe({label:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=Ke(e,"modelValue");function n(){t.value.date=new Date,t.value.mode="now",t.value.value=null,t.value.formatted="now"}return(s,r)=>(T(),j("div",Om,[b("button",{class:"btn btn-primary w-100",onClick:r[0]||(r[0]=o=>n())}," Set "+oe(s.label.toLowerCase())+" to now ",1)]))}}),Pm={class:"d-flex flex-row mt-5 mb-5"},Tm=be({__name:"RelativeDatePicker",props:Xe({activated:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=Ke(e,"modelValue"),n=e,s=X(),r=X();qe(()=>n.activated,()=>{if(n.activated!==!1)if(t.value.mode==="relative"&&t.value.value!==null){const l=t.value.value;s.value.value=l.substring(0,l.length-1),r.value.value=l.substring(l.length-1)}else i()});function o(){const l=s.value;l.classList.toggle("is-invalid",l.checkValidity()===!1)}function i(){const l=s.value,a=r.value;l.checkValidity()!==!1&&(t.value.date=Cs(xs.parseInt(l.value),a.value,!0),t.value.formatted=As(xs.parseInt(l.value),a.value),t.value.value=l.value+a.value,t.value.mode="relative")}return(l,a)=>(T(),j("div",Pm,[b("input",{type:"number",ref_key:"valueRef",ref:s,class:"flex-fill form-control me-1 value-input",value:"15",min:"0",onInput:a[0]||(a[0]=c=>{o(),i()}),required:"","aria-required":"true"},null,544),b("select",{class:"flex-fill form-control",ref_key:"unitRef",ref:r,onChange:i},[...a[1]||(a[1]=[oa('',7)])],544)]))}}),km=we(Tm,[["__scopeId","data-v-85ee7aec"]]),$m={class:"combination-date-picker"},Dm={class:"nav nav-tabs w-100"},Mm={class:"nav-item"},Fm={class:"nav-item"},Im={class:"nav-item"},Nm={class:"panel1"},Lm={class:"panel2"},jm={class:"panel3"},Vm=be({__name:"CombiDatePicker",props:Xe({label:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=Ke(e,"modelValue"),n=X("absolute");return Gt(()=>n.value=t.value.mode),(s,r)=>(T(),j("div",$m,[b("ul",Dm,[b("li",Mm,[b("a",{class:pe(["nav-link",{active:n.value==="absolute"}]),href:"javascript:",onClick:r[0]||(r[0]=o=>n.value="absolute")},"Absolute",2)]),b("li",Fm,[b("a",{class:pe(["nav-link",{active:n.value==="relative"}]),href:"javascript:",onClick:r[1]||(r[1]=o=>n.value="relative")},"Relative",2)]),b("li",Im,[b("a",{class:pe(["nav-link",{active:n.value==="now"}]),href:"javascript:",onClick:r[2]||(r[2]=o=>n.value="now")},"Now",2)])]),pt(b("div",Nm,[le(Cm,{modelValue:t.value,"onUpdate:modelValue":r[3]||(r[3]=o=>t.value=o),activated:n.value==="absolute"},null,8,["modelValue","activated"])],512),[[On,n.value==="absolute"]]),pt(b("div",Lm,[le(km,{modelValue:t.value,"onUpdate:modelValue":r[4]||(r[4]=o=>t.value=o),activated:n.value==="relative"},null,8,["modelValue","activated"])],512),[[On,n.value==="relative"]]),pt(b("div",jm,[le(Am,{modelValue:t.value,"onUpdate:modelValue":r[5]||(r[5]=o=>t.value=o),label:s.label},null,8,["modelValue","label"])],512),[[On,n.value==="now"]])]))}}),Um=we(Vm,[["__scopeId","data-v-d2c7863e"]]),Hm={class:"input-group"},Bm=["id"],qm=["value","aria-describedby"],Km=be({__name:"DateInput",props:Xe({label:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=Ke(e,"modelValue"),n=(Math.random()+1).toString(36).substring(7);function s(r,o){const i=r.target,l=i.value.trim(),a=Date.parse(l.replace(/\s*@\s*/," "));if(isNaN(a)){i.classList.toggle("is-invalid",!0),i.setCustomValidity("Invalid date"),i.reportValidity();return}i.classList.toggle("is-invalid",!1),i.setCustomValidity(""),o&&(t.value=new Date(a))}return(r,o)=>(T(),j("div",Hm,[b("span",{class:"input-group-text",id:L(n)},oe(r.label),9,Bm),b("input",{type:"text",class:"form-control",value:L(Os)(t.value),"aria-describedby":L(n),onChange:o[0]||(o[0]=i=>s(i,!0)),onInput:o[1]||(o[1]=i=>s(i,!1))},null,40,qm)]))}}),Wm={class:"dropdown-menu p-2 slv-dropdown-menu"},zm={class:"calendar"},Jm={class:"d-flex justify-content-end mt-3"},Gm=be({__name:"DatePickerDropdown",props:Xe({label:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:Xe(["clear","apply"],["update:modelValue"]),setup(e,{emit:t}){const n=Ke(e,"modelValue"),s=t;return(r,o)=>(T(),j("div",Wm,[b("div",zm,[le(Um,{label:r.label,modelValue:n.value,"onUpdate:modelValue":o[0]||(o[0]=i=>n.value=i)},null,8,["label","modelValue"]),le(Km,{label:r.label,modelValue:n.value.date,"onUpdate:modelValue":o[1]||(o[1]=i=>n.value.date=i)},null,8,["label","modelValue"])]),b("div",Jm,[b("button",{class:"btn btn-secondary btn-sm me-2",onClick:o[2]||(o[2]=i=>s("clear"))},"Clear"),b("button",{class:"btn btn-primary btn-sm",onClick:o[3]||(o[3]=i=>s("apply"))},"Apply")])]))}}),Oi=we(Gm,[["__scopeId","data-v-d02fb122"]]);class Nr{static string(t){if(typeof t!="string"&&!(t instanceof String))throw new Error("Value is not a string: "+typeof t);return String(t)}}function Ym(e,t,n){const s=(e??"").trim().match(/^(.*)~(.*)$/);return s===null||s.length!==3?!1:Ai(Nr.string(s[1]),t)&&Ai(Nr.string(s[2]),n)}function Qm(e,t){return`${Pi(e)}~${Pi(t)}`}function Ai(e,t){if(e==="now")return t.date=new Date,t.mode="now",t.value=null,t.formatted="now",!0;if(e.match(/^\d{4}-\d{2}-\d{2} \d{1,2}:\d{2}:\d{2}$/))return t.date=new Date(e),t.mode="absolute",t.value=null,t.formatted=Os(t.date),!0;if(e.match(/^\d+[sihdwmy]$/)){const n=Nr.string(e[e.length-1]),s=xs.parseInt(e.substring(0,e.length-1));return t.date=Cs(s,n,!1),t.mode="relative",t.value=e,t.formatted=As(s,n),!0}return!1}function Pi(e){switch(e.mode){case"now":return"now";case"relative":return e.value??"";case"absolute":return Pa("Y-m-d H:i:s",e.date);default:throw new Error("Invalid date selection mode: "+e.mode)}}const Xm={class:"position-relative"},Zm={key:1,class:"ms-1 me-1"},eg=be({__name:"DatePicker",props:{modelValue:{},modelModifiers:{}},emits:Xe(["change"],["update:modelValue"]),setup(e,{emit:t}){const n=Ke(e,"modelValue"),s=t,r=X(!1),o=X("none"),i=X({date:Cs(15,"i",!0),mode:"relative",value:"15i",formatted:As(15,"i")}),l=X({date:new Date,mode:"now",value:null,formatted:"now"});let a=null;Gt(()=>c()),qe(n,()=>c());function c(){if(n.value===a)return;const y=Ym(n.value??"",i.value,l.value);a=y===!1?null:n.value??null,r.value=y!==!1}function u(){r.value!==!0&&(o.value="startDate",r.value=!0)}function f(){o.value="none",m(Qm(i.value,l.value))}function p(){o.value="none",i.value.date=Cs(15,"i",!0),i.value.mode="relative",i.value.value="15i",i.value.formatted=As(15,"i"),l.value.date=new Date,l.value.mode="now",l.value.value=null,l.value.formatted="now",r.value=!1,m("")}function m(y){n.value!==y&&(a=y,n.value=y,s("change"))}return(y,_)=>(T(),j("div",Xm,[b("div",{class:"slv-date-picker-btn form-control",onClick:u},[_[4]||(_[4]=b("button",{class:"border-0 bg-transparent",type:"button"},[b("i",{class:"bi bi-calendar3"})],-1)),r.value?(T(),j("button",{key:0,class:pe(["ms-1 slv-btn-input",{"slv-btn-input-focus":o.value==="startDate"}]),onClick:_[0]||(_[0]=R=>o.value=o.value==="startDate"?"none":"startDate")},oe(i.value.formatted),3)):Pe("",!0),r.value?(T(),j("span",Zm,"~")):Pe("",!0),r.value?(T(),j("button",{key:2,class:pe(["slv-btn-input",{"slv-btn-input-focus":o.value==="endDate"}]),onClick:_[1]||(_[1]=R=>o.value=o.value==="endDate"?"none":"endDate")},oe(l.value.formatted),3)):Pe("",!0)]),o.value==="startDate"?(T(),Ee(Oi,{key:0,class:pe(["slv-start-date",{"d-block":o.value==="startDate"}]),modelValue:i.value,"onUpdate:modelValue":_[2]||(_[2]=R=>i.value=R),onClear:p,onApply:f,label:"Start date"},null,8,["class","modelValue"])):Pe("",!0),o.value==="endDate"?(T(),Ee(Oi,{key:1,class:pe(["slv-end-date",{"d-block":o.value==="endDate"}]),"active-tab":"now",modelValue:l.value,"onUpdate:modelValue":_[3]||(_[3]=R=>l.value=R),onClear:p,onApply:f,label:"End date"},null,8,["class","modelValue"])):Pe("",!0)]))}}),tg=we(eg,[["__scopeId","data-v-70bb51e2"]]);class ng{createFilter(t,n,s){let r=!1;for(const o of t){const i=o.name;let l=o.value.trim();n!==void 0&&(l=l.replace(n,""));const a=l.indexOf(" ")===-1?l:'"'+l+'"',c=s.match("\\{"+i+"(=)?\\}");c!==null&&(s=s.replace(c[0],l===""?"":a+(c[1]??"")),r=r||l!==""),o.value=""}return[s,r]}}const sg=Jn("search_filter",()=>{const e=X(!1);function t(){e.value=!e.value}return{expanded:e,toggle:t}}),rg=["aria-expanded"],og={class:"px-2"},ig={class:"input-group mb-1","data-role":"filter","data-pattern":"lb:{value}","data-strip":" "},lg={class:"input-group mb-1","data-role":"filter","data-pattern":"la:{value}","data-strip":" "},ag={class:"input-group mb-1","data-role":"filter","data-pattern":"severity:{value}","data-strip":" "},cg={class:"input-group mb-1","data-role":"filter","data-pattern":"channel:{value}","data-strip":" "},ug={class:"input-group mb-1","data-role":"filter","data-pattern":"message:{value}"},fg={class:"input-group mb-1","data-role":"filter","data-pattern":"exclude:{value}"},dg={class:"input-group mb-1","data-role":"filter","data-pattern":"context:{key=}{value}"},pg={class:"input-group mb-1","data-role":"filter","data-pattern":"extra:{key=}{value}"},hg=be({__name:"SearchFilter",emits:["add"],setup(e,{emit:t}){const n=new ng,s=sg(),r=t,o=l=>{const c=l.target.closest("[data-role=filter]"),u=Array.from(c.querySelectorAll("input")),[f,p]=n.createFilter(u,c.dataset.strip,String(c.dataset.pattern));p&&r("add",f)},i=function(l){l.key==="Escape"&&s.expanded===!0&&(l.preventDefault(),s.toggle())};return Gt(()=>document.addEventListener("keyup",i)),to(()=>document.removeEventListener("keyup",i)),(l,a)=>(T(),j(me,null,[b("button",{ref:"filterButton",class:"btn btn-outline-secondary dropdown-toggle",type:"button","aria-expanded":L(s).expanded,onClick:a[0]||(a[0]=c=>L(s).toggle())},"Filter ",8,rg),b("div",{class:pe(["dropdown-menu slv-dropdown-menu",{"d-block":L(s).expanded}])},[b("div",og,[b("div",ig,[a[2]||(a[2]=b("span",{class:"slv-input-label input-group-text",id:"lines-before"},"Lines before",-1)),b("input",{name:"value",min:"0",type:"number",class:"form-control",placeholder:"0",onKeyup:vt(o,["enter"]),"aria-label":"Lines before","aria-describedby":"lines-before"},null,32),b("button",{class:"btn btn-outline-primary",type:"button",onClick:o},"Add")]),b("div",lg,[a[3]||(a[3]=b("span",{class:"slv-input-label input-group-text",id:"lines-before"},"Lines after",-1)),b("input",{name:"value",min:"0",type:"number",class:"form-control",onKeyup:vt(o,["enter"]),"aria-label":"Lines after","aria-describedby":"lines-after"},null,32),b("button",{class:"btn btn-outline-primary",type:"button",onClick:o},"Add")]),b("div",ag,[a[4]||(a[4]=b("span",{class:"slv-input-label input-group-text",id:"filter-severity"},"Severity",-1)),b("input",{name:"value",type:"text",class:"form-control",placeholder:"Separate multiple by pipe symbol",onKeyup:vt(o,["enter"]),"aria-label":"Severity","aria-describedby":"filter-severity"},null,32),b("button",{class:"btn btn-outline-primary",type:"button",onClick:o},"Add")]),b("div",cg,[a[5]||(a[5]=b("span",{class:"slv-input-label input-group-text",id:"filter-severity"},"Channels",-1)),b("input",{name:"value",type:"text",class:"form-control",placeholder:"Separate multiple by pipe symbol",onKeyup:vt(o,["enter"]),"aria-label":"Severity","aria-describedby":"filter-severity"},null,32),b("button",{class:"btn btn-outline-primary",type:"button",onClick:o},"Add")]),b("div",ug,[a[6]||(a[6]=b("span",{class:"slv-input-label input-group-text",id:"filter-message"},"Message",-1)),b("input",{name:"value",type:"text",class:"form-control",onKeyup:vt(o,["enter"]),"aria-label":"Search message","aria-describedby":"filter-message"},null,32),b("button",{class:"btn btn-outline-primary",type:"button",onClick:o},"Add")]),b("div",fg,[a[7]||(a[7]=b("span",{class:"slv-input-label input-group-text",id:"filter-exclude"},"Exclude",-1)),b("input",{name:"value",type:"text",class:"form-control",onKeyup:vt(o,["enter"]),"aria-label":"Exclude string","aria-describedby":"filter-exclude"},null,32),b("button",{class:"btn btn-outline-primary",type:"button",onClick:o},"Add")]),b("div",dg,[a[8]||(a[8]=b("span",{class:"slv-input-label input-group-text",id:"filter-context"},"Context",-1)),a[9]||(a[9]=b("input",{name:"key",type:"text",class:"form-control",placeholder:"key (optional)","aria-label":"Context key (optional)","aria-describedby":"filter-context"},null,-1)),b("input",{name:"value",type:"text",class:"form-control",placeholder:"search",onKeyup:vt(o,["enter"]),"aria-label":"Context","aria-describedby":"filter-context"},null,32),b("button",{class:"btn btn-outline-primary",type:"button",onClick:o},"Add")]),b("div",pg,[a[10]||(a[10]=b("span",{class:"slv-input-label input-group-text",id:"filter-extra"},"Extra",-1)),a[11]||(a[11]=b("input",{name:"key",type:"text",class:"form-control",placeholder:"key (optional)","aria-label":"Extra key (optional)","aria-describedby":"filter-extra"},null,-1)),b("input",{name:"value",type:"text",class:"form-control",placeholder:"search",onKeyup:vt(o,["enter"]),"aria-label":"Extra","aria-describedby":"filter-extra"},null,32),b("button",{class:"btn btn-outline-primary",type:"button",onClick:o},"Add")]),b("div",null,[b("button",{class:"btn btn-sm btn-primary float-end",type:"button",onClick:a[1]||(a[1]=c=>L(s).toggle())},"Close")])])],2)],64))}}),mg=we(hg,[["__scopeId","data-v-a6fa25dc"]]),gg={key:0,class:"close-position"},bg=be({__name:"SearchInput",props:Xe({invalid:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:Xe(["search"],["update:modelValue"]),setup(e,{emit:t}){const n=Ke(e,"modelValue"),s=e,r=t;function o(){n.value="",r("search")}return(i,l)=>(T(),j(me,null,[pt(b("input",{type:"text",class:pe(["form-control",{"is-invalid":s.invalid}]),ref:"searchRef",placeholder:"Search log entries.","aria-label":"Search log entries.","aria-describedby":"button-search",onKeyup:l[0]||(l[0]=vt(a=>r("search"),["enter"])),"onUpdate:modelValue":l[1]||(l[1]=a=>n.value=a)},null,34),[[Cd,n.value]]),n.value!==""?(T(),j("div",gg,[b("button",{class:"close btn btn-outline-secondary border-0",onClick:o},[...l[2]||(l[2]=[b("i",{class:"bi bi-x"},null,-1)])])])):Pe("",!0)],64))}}),yg=we(bg,[["__scopeId","data-v-76a79f4c"]]),vg={class:"input-group"},_g=be({__name:"SearchForm",props:Xe({badRequest:{type:Boolean}},{query:{},queryModifiers:{},between:{default:""},betweenModifiers:{},sort:{},sortModifiers:{},perPage:{},perPageModifiers:{}}),emits:Xe(["navigate"],["update:query","update:between","update:sort","update:perPage"]),setup(e,{expose:t,emit:n}){const s=X(),r=Ke(e,"query"),o=Ke(e,"between"),i=Ke(e,"sort"),l=Ke(e,"perPage"),a=n;return t({focus:()=>s.value?.focus()}),(u,f)=>(T(),j("div",vg,[le(mg,{onAdd:f[0]||(f[0]=p=>{r.value=r.value===""?p:r.value+" "+p,a("navigate")})}),le(yg,{invalid:u.badRequest,onSearch:f[1]||(f[1]=p=>a("navigate")),modelValue:r.value,"onUpdate:modelValue":f[2]||(f[2]=p=>r.value=p)},null,8,["invalid","modelValue"]),le(tg,{class:"slv-date-picker",modelValue:o.value,"onUpdate:modelValue":f[3]||(f[3]=p=>o.value=p),onChange:f[4]||(f[4]=p=>a("navigate"))},null,8,["modelValue"]),pt(b("select",{class:"slv-menu-sort-direction form-control","aria-label":"Sort direction",title:"Sort direction","onUpdate:modelValue":f[5]||(f[5]=p=>i.value=p),onChange:f[6]||(f[6]=p=>a("navigate"))},[...f[10]||(f[10]=[b("option",{value:"desc"},"Newest First",-1),b("option",{value:"asc"},"Oldest First",-1)])],544),[[_s,i.value]]),pt(b("select",{class:"slv-menu-page-size form-control","aria-label":"Entries per page",title:"Entries per page","onUpdate:modelValue":f[7]||(f[7]=p=>l.value=p),onChange:f[8]||(f[8]=p=>a("navigate"))},[...f[11]||(f[11]=[oa('',6)])],544),[[_s,l.value]]),b("button",{class:"slv-log-search-btn btn btn-outline-primary",type:"button",id:"button-search",onClick:f[9]||(f[9]=p=>a("navigate"))},"Search")]))}}),wg=we(_g,[["__scopeId","data-v-04f5ccac"]]),Sg=Jn("log_records",()=>{const e={logs:[],paginator:null},t=X(!1),n=X(e);async function s(r){t.value=!0;try{const o=await ue.get("/api/logs",{params:r.all()});n.value=o.data}catch(o){if(o instanceof tr&&o.response?.status===400)throw new Error("bad-request");if(o instanceof tr&&o.response?.status===404)throw new Error("file-not-found");if(o instanceof tr&&[500,501,502,503,504].includes(Number(o.response?.status)))throw new Error("error");console.error(o),n.value=e}finally{t.value=!1}}return{loading:t,records:n,fetch:s}}),xg={class:"slv-content h-100 overflow-hidden"},Eg={class:"d-flex align-items-stretch pt-1"},Rg={class:"slv-entries list-group pt-1 pe-1 pb-3"},Cg={class:"pt-1 pb-1 d-flex"},Og=["disabled"],Ag=["disabled"],Pg=be({__name:"LogView",setup(e){const t=uo(),n=Aa(),s=Sg(),r=pn(),o=lo(),i=X(),l=X(0),a=X(!1),c=()=>{const p=l.value>0&&s.records.paginator?.direction!==o.sort?0:l.value,m=new Jt().set("host",r.selected,"localhost").set("file",o.files.join(",")).set("query",o.query,"").set("between",o.between,"").set("per_page",o.perPage,"100").set("sort",o.sort,"desc").set("offset",p,0);t.push({query:m.all()})},u=()=>{a.value=!1,s.fetch(new Jt().set("host",r.selected,"localhost").set("file",o.files.join(",")).set("query",o.query,"").set("between",o.between,"").set("per_page",o.perPage,"100").set("sort",o.sort,"desc").set("offset",l.value,0).set("time_zone",Intl.DateTimeFormat().resolvedOptions().timeZone)).catch(p=>{if(p.message==="bad-request"){a.value=!0;return}t.push({name:p.message})}).finally(()=>{i.value?.focus()})};Gt(()=>{r.selected=String(n.query.host??"localhost"),o.files=String(n.query.file).split(","),o.query=String(n.query.query??""),o.between=String(n.query.between??""),o.perPage=String(n.query.per_page??"100"),o.sort=String(n.query.sort??"desc"),l.value=parseInt(String(n.query.offset??"0")),u()});function f(p){o.query=p,c()}return(p,m)=>(T(),j("div",xg,[b("div",Eg,[le(wg,{class:"flex-grow-1",ref_key:"searchRef",ref:i,"bad-request":a.value,query:L(o).query,"onUpdate:query":m[0]||(m[0]=y=>L(o).query=y),between:L(o).between,"onUpdate:between":m[1]||(m[1]=y=>L(o).between=y),sort:L(o).sort,"onUpdate:sort":m[2]||(m[2]=y=>L(o).sort=y),perPage:L(o).perPage,"onUpdate:perPage":m[3]||(m[3]=y=>L(o).perPage=y),onNavigate:c},null,8,["bad-request","query","between","sort","perPage"]),b("button",{class:"btn btn-dark ms-1 me-1",type:"button","aria-label":"Refresh",title:"Refresh",onClick:u},[...m[6]||(m[6]=[b("i",{class:"bi bi-arrow-clockwise"},null,-1)])])]),b("main",{class:pe(["overflow-auto d-none d-md-block slv-loadable",{"slv-loading":L(s).loading}])},[b("div",Rg,[(T(!0),j(me,null,ht(L(s).records.logs??[],(y,_)=>(T(),Ee(em,{logRecord:y,key:_,onSearch:f},null,8,["logRecord"]))),128))])],2),pt(b("footer",Cg,[b("button",{class:"btn btn-sm btn-outline-secondary",onClick:m[4]||(m[4]=y=>{l.value=0,c()}),disabled:L(s).records.paginator?.first!==!0}," First ",8,Og),b("button",{class:"ms-2 btn btn-sm btn-outline-secondary",onClick:m[5]||(m[5]=y=>{l.value=L(s).records.paginator?.offset??0,c()}),disabled:L(s).records.paginator?.more!==!0}," Next "+oe(L(o).perPage),9,Ag),m[7]||(m[7]=b("div",{class:"flex-grow-1"},null,-1)),le(om,{performance:L(s).records.performance},null,8,["performance"])],512),[[On,!L(s).loading]])]))}}),Tg=we(Pg,[["__scopeId","data-v-c8dea799"]]);function kg(e){return Bp({history:yp(e),routes:[{path:"/",name:"home",component:Ah},{path:"/log",name:"log",component:Tg},{path:"/404",name:"file-not-found",component:Eh},{path:"/5XX",name:"error",component:_h}]})}const Ta=document.head.querySelector("[name=base-uri]").content;ue.defaults.baseURL=Ta;const fo=Td(gh);fo.use(Dd());fo.use(kg(Ta));fo.mount("#log-viewer"); diff --git a/src/Resources/public/assets/main-D9EO62UX.js b/src/Resources/public/assets/main-D9EO62UX.js new file mode 100644 index 00000000..6ac857eb --- /dev/null +++ b/src/Resources/public/assets/main-D9EO62UX.js @@ -0,0 +1,13420 @@ +function bind(fn, thisArg) { + return function wrap() { + return fn.apply(thisArg, arguments); + }; +} +const { toString } = Object.prototype; +const { getPrototypeOf } = Object; +const { iterator: iterator$1, toStringTag } = Symbol; +const kindOf = /* @__PURE__ */ ((cache) => (thing) => { + const str = toString.call(thing); + return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); +})(/* @__PURE__ */ Object.create(null)); +const kindOfTest = (type) => { + type = type.toLowerCase(); + return (thing) => kindOf(thing) === type; +}; +const typeOfTest = (type) => (thing) => typeof thing === type; +const { isArray: isArray$2 } = Array; +const isUndefined = typeOfTest("undefined"); +function isBuffer(val) { + return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction$1(val.constructor.isBuffer) && val.constructor.isBuffer(val); +} +const isArrayBuffer = kindOfTest("ArrayBuffer"); +function isArrayBufferView(val) { + let result; + if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { + result = ArrayBuffer.isView(val); + } else { + result = val && val.buffer && isArrayBuffer(val.buffer); + } + return result; +} +const isString$1 = typeOfTest("string"); +const isFunction$1 = typeOfTest("function"); +const isNumber = typeOfTest("number"); +const isObject$1 = (thing) => thing !== null && typeof thing === "object"; +const isBoolean = (thing) => thing === true || thing === false; +const isPlainObject$2 = (val) => { + if (kindOf(val) !== "object") { + return false; + } + const prototype2 = getPrototypeOf(val); + return (prototype2 === null || prototype2 === Object.prototype || Object.getPrototypeOf(prototype2) === null) && !(toStringTag in val) && !(iterator$1 in val); +}; +const isEmptyObject = (val) => { + if (!isObject$1(val) || isBuffer(val)) { + return false; + } + try { + return Object.keys(val).length === 0 && Object.getPrototypeOf(val) === Object.prototype; + } catch (e) { + return false; + } +}; +const isDate$1 = kindOfTest("Date"); +const isFile = kindOfTest("File"); +const isBlob = kindOfTest("Blob"); +const isFileList = kindOfTest("FileList"); +const isStream = (val) => isObject$1(val) && isFunction$1(val.pipe); +const isFormData = (thing) => { + let kind; + return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction$1(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance + kind === "object" && isFunction$1(thing.toString) && thing.toString() === "[object FormData]")); +}; +const isURLSearchParams = kindOfTest("URLSearchParams"); +const [isReadableStream, isRequest, isResponse, isHeaders] = ["ReadableStream", "Request", "Response", "Headers"].map(kindOfTest); +const trim = (str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); +function forEach(obj, fn, { allOwnKeys = false } = {}) { + if (obj === null || typeof obj === "undefined") { + return; + } + let i; + let l; + if (typeof obj !== "object") { + obj = [obj]; + } + if (isArray$2(obj)) { + for (i = 0, l = obj.length; i < l; i++) { + fn.call(null, obj[i], i, obj); + } + } else { + if (isBuffer(obj)) { + return; + } + const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + fn.call(null, obj[key], key, obj); + } + } +} +function findKey(obj, key) { + if (isBuffer(obj)) { + return null; + } + key = key.toLowerCase(); + const keys = Object.keys(obj); + let i = keys.length; + let _key; + while (i-- > 0) { + _key = keys[i]; + if (key === _key.toLowerCase()) { + return _key; + } + } + return null; +} +const _global = (() => { + if (typeof globalThis !== "undefined") return globalThis; + return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global; +})(); +const isContextDefined = (context) => !isUndefined(context) && context !== _global; +function merge() { + const { caseless } = isContextDefined(this) && this || {}; + const result = {}; + const assignValue = (val, key) => { + const targetKey = caseless && findKey(result, key) || key; + if (isPlainObject$2(result[targetKey]) && isPlainObject$2(val)) { + result[targetKey] = merge(result[targetKey], val); + } else if (isPlainObject$2(val)) { + result[targetKey] = merge({}, val); + } else if (isArray$2(val)) { + result[targetKey] = val.slice(); + } else { + result[targetKey] = val; + } + }; + for (let i = 0, l = arguments.length; i < l; i++) { + arguments[i] && forEach(arguments[i], assignValue); + } + return result; +} +const extend$1 = (a, b, thisArg, { allOwnKeys } = {}) => { + forEach(b, (val, key) => { + if (thisArg && isFunction$1(val)) { + a[key] = bind(val, thisArg); + } else { + a[key] = val; + } + }, { allOwnKeys }); + return a; +}; +const stripBOM = (content) => { + if (content.charCodeAt(0) === 65279) { + content = content.slice(1); + } + return content; +}; +const inherits = (constructor, superConstructor, props, descriptors2) => { + constructor.prototype = Object.create(superConstructor.prototype, descriptors2); + constructor.prototype.constructor = constructor; + Object.defineProperty(constructor, "super", { + value: superConstructor.prototype + }); + props && Object.assign(constructor.prototype, props); +}; +const toFlatObject = (sourceObj, destObj, filter2, propFilter) => { + let props; + let i; + let prop; + const merged = {}; + destObj = destObj || {}; + if (sourceObj == null) return destObj; + do { + props = Object.getOwnPropertyNames(sourceObj); + i = props.length; + while (i-- > 0) { + prop = props[i]; + if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { + destObj[prop] = sourceObj[prop]; + merged[prop] = true; + } + } + sourceObj = filter2 !== false && getPrototypeOf(sourceObj); + } while (sourceObj && (!filter2 || filter2(sourceObj, destObj)) && sourceObj !== Object.prototype); + return destObj; +}; +const endsWith = (str, searchString, position) => { + str = String(str); + if (position === void 0 || position > str.length) { + position = str.length; + } + position -= searchString.length; + const lastIndex = str.indexOf(searchString, position); + return lastIndex !== -1 && lastIndex === position; +}; +const toArray = (thing) => { + if (!thing) return null; + if (isArray$2(thing)) return thing; + let i = thing.length; + if (!isNumber(i)) return null; + const arr = new Array(i); + while (i-- > 0) { + arr[i] = thing[i]; + } + return arr; +}; +const isTypedArray = /* @__PURE__ */ ((TypedArray) => { + return (thing) => { + return TypedArray && thing instanceof TypedArray; + }; +})(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array)); +const forEachEntry = (obj, fn) => { + const generator = obj && obj[iterator$1]; + const _iterator = generator.call(obj); + let result; + while ((result = _iterator.next()) && !result.done) { + const pair = result.value; + fn.call(obj, pair[0], pair[1]); + } +}; +const matchAll = (regExp, str) => { + let matches; + const arr = []; + while ((matches = regExp.exec(str)) !== null) { + arr.push(matches); + } + return arr; +}; +const isHTMLForm = kindOfTest("HTMLFormElement"); +const toCamelCase = (str) => { + return str.toLowerCase().replace( + /[-_\s]([a-z\d])(\w*)/g, + function replacer2(m, p1, p2) { + return p1.toUpperCase() + p2; + } + ); +}; +const hasOwnProperty$2 = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype); +const isRegExp = kindOfTest("RegExp"); +const reduceDescriptors = (obj, reducer) => { + const descriptors2 = Object.getOwnPropertyDescriptors(obj); + const reducedDescriptors = {}; + forEach(descriptors2, (descriptor, name) => { + let ret; + if ((ret = reducer(descriptor, name, obj)) !== false) { + reducedDescriptors[name] = ret || descriptor; + } + }); + Object.defineProperties(obj, reducedDescriptors); +}; +const freezeMethods = (obj) => { + reduceDescriptors(obj, (descriptor, name) => { + if (isFunction$1(obj) && ["arguments", "caller", "callee"].indexOf(name) !== -1) { + return false; + } + const value = obj[name]; + if (!isFunction$1(value)) return; + descriptor.enumerable = false; + if ("writable" in descriptor) { + descriptor.writable = false; + return; + } + if (!descriptor.set) { + descriptor.set = () => { + throw Error("Can not rewrite read-only method '" + name + "'"); + }; + } + }); +}; +const toObjectSet = (arrayOrString, delimiter) => { + const obj = {}; + const define = (arr) => { + arr.forEach((value) => { + obj[value] = true; + }); + }; + isArray$2(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter)); + return obj; +}; +const noop$2 = () => { +}; +const toFiniteNumber = (value, defaultValue) => { + return value != null && Number.isFinite(value = +value) ? value : defaultValue; +}; +function isSpecCompliantForm(thing) { + return !!(thing && isFunction$1(thing.append) && thing[toStringTag] === "FormData" && thing[iterator$1]); +} +const toJSONObject = (obj) => { + const stack2 = new Array(10); + const visit = (source, i) => { + if (isObject$1(source)) { + if (stack2.indexOf(source) >= 0) { + return; + } + if (isBuffer(source)) { + return source; + } + if (!("toJSON" in source)) { + stack2[i] = source; + const target = isArray$2(source) ? [] : {}; + forEach(source, (value, key) => { + const reducedValue = visit(value, i + 1); + !isUndefined(reducedValue) && (target[key] = reducedValue); + }); + stack2[i] = void 0; + return target; + } + } + return source; + }; + return visit(obj, 0); +}; +const isAsyncFn = kindOfTest("AsyncFunction"); +const isThenable = (thing) => thing && (isObject$1(thing) || isFunction$1(thing)) && isFunction$1(thing.then) && isFunction$1(thing.catch); +const _setImmediate = ((setImmediateSupported, postMessageSupported) => { + if (setImmediateSupported) { + return setImmediate; + } + return postMessageSupported ? ((token, callbacks) => { + _global.addEventListener("message", ({ source, data }) => { + if (source === _global && data === token) { + callbacks.length && callbacks.shift()(); + } + }, false); + return (cb) => { + callbacks.push(cb); + _global.postMessage(token, "*"); + }; + })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); +})( + typeof setImmediate === "function", + isFunction$1(_global.postMessage) +); +const asap = typeof queueMicrotask !== "undefined" ? queueMicrotask.bind(_global) : typeof process !== "undefined" && process.nextTick || _setImmediate; +const isIterable = (thing) => thing != null && isFunction$1(thing[iterator$1]); +const utils$1 = { + isArray: isArray$2, + isArrayBuffer, + isBuffer, + isFormData, + isArrayBufferView, + isString: isString$1, + isNumber, + isBoolean, + isObject: isObject$1, + isPlainObject: isPlainObject$2, + isEmptyObject, + isReadableStream, + isRequest, + isResponse, + isHeaders, + isUndefined, + isDate: isDate$1, + isFile, + isBlob, + isRegExp, + isFunction: isFunction$1, + isStream, + isURLSearchParams, + isTypedArray, + isFileList, + forEach, + merge, + extend: extend$1, + trim, + stripBOM, + inherits, + toFlatObject, + kindOf, + kindOfTest, + endsWith, + toArray, + forEachEntry, + matchAll, + isHTMLForm, + hasOwnProperty: hasOwnProperty$2, + hasOwnProp: hasOwnProperty$2, + // an alias to avoid ESLint no-prototype-builtins detection + reduceDescriptors, + freezeMethods, + toObjectSet, + toCamelCase, + noop: noop$2, + toFiniteNumber, + findKey, + global: _global, + isContextDefined, + isSpecCompliantForm, + toJSONObject, + isAsyncFn, + isThenable, + setImmediate: _setImmediate, + asap, + isIterable +}; +function AxiosError$1(message, code, config, request, response) { + Error.call(this); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + this.stack = new Error().stack; + } + this.message = message; + this.name = "AxiosError"; + code && (this.code = code); + config && (this.config = config); + request && (this.request = request); + if (response) { + this.response = response; + this.status = response.status ? response.status : null; + } +} +utils$1.inherits(AxiosError$1, Error, { + toJSON: function toJSON() { + return { + // Standard + message: this.message, + name: this.name, + // Microsoft + description: this.description, + number: this.number, + // Mozilla + fileName: this.fileName, + lineNumber: this.lineNumber, + columnNumber: this.columnNumber, + stack: this.stack, + // Axios + config: utils$1.toJSONObject(this.config), + code: this.code, + status: this.status + }; + } +}); +const prototype$1 = AxiosError$1.prototype; +const descriptors = {}; +[ + "ERR_BAD_OPTION_VALUE", + "ERR_BAD_OPTION", + "ECONNABORTED", + "ETIMEDOUT", + "ERR_NETWORK", + "ERR_FR_TOO_MANY_REDIRECTS", + "ERR_DEPRECATED", + "ERR_BAD_RESPONSE", + "ERR_BAD_REQUEST", + "ERR_CANCELED", + "ERR_NOT_SUPPORT", + "ERR_INVALID_URL" + // eslint-disable-next-line func-names +].forEach((code) => { + descriptors[code] = { value: code }; +}); +Object.defineProperties(AxiosError$1, descriptors); +Object.defineProperty(prototype$1, "isAxiosError", { value: true }); +AxiosError$1.from = (error, code, config, request, response, customProps) => { + const axiosError = Object.create(prototype$1); + utils$1.toFlatObject(error, axiosError, function filter2(obj) { + return obj !== Error.prototype; + }, (prop) => { + return prop !== "isAxiosError"; + }); + AxiosError$1.call(axiosError, error.message, code, config, request, response); + axiosError.cause = error; + axiosError.name = error.name; + customProps && Object.assign(axiosError, customProps); + return axiosError; +}; +const httpAdapter = null; +function isVisitable(thing) { + return utils$1.isPlainObject(thing) || utils$1.isArray(thing); +} +function removeBrackets(key) { + return utils$1.endsWith(key, "[]") ? key.slice(0, -2) : key; +} +function renderKey(path, key, dots) { + if (!path) return key; + return path.concat(key).map(function each(token, i) { + token = removeBrackets(token); + return !dots && i ? "[" + token + "]" : token; + }).join(dots ? "." : ""); +} +function isFlatArray(arr) { + return utils$1.isArray(arr) && !arr.some(isVisitable); +} +const predicates = utils$1.toFlatObject(utils$1, {}, null, function filter(prop) { + return /^is[A-Z]/.test(prop); +}); +function toFormData$1(obj, formData, options) { + if (!utils$1.isObject(obj)) { + throw new TypeError("target must be an object"); + } + formData = formData || new FormData(); + options = utils$1.toFlatObject(options, { + metaTokens: true, + dots: false, + indexes: false + }, false, function defined(option, source) { + return !utils$1.isUndefined(source[option]); + }); + const metaTokens = options.metaTokens; + const visitor = options.visitor || defaultVisitor; + const dots = options.dots; + const indexes = options.indexes; + const _Blob = options.Blob || typeof Blob !== "undefined" && Blob; + const useBlob = _Blob && utils$1.isSpecCompliantForm(formData); + if (!utils$1.isFunction(visitor)) { + throw new TypeError("visitor must be a function"); + } + function convertValue(value) { + if (value === null) return ""; + if (utils$1.isDate(value)) { + return value.toISOString(); + } + if (utils$1.isBoolean(value)) { + return value.toString(); + } + if (!useBlob && utils$1.isBlob(value)) { + throw new AxiosError$1("Blob is not supported. Use a Buffer instead."); + } + if (utils$1.isArrayBuffer(value) || utils$1.isTypedArray(value)) { + return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value); + } + return value; + } + function defaultVisitor(value, key, path) { + let arr = value; + if (value && !path && typeof value === "object") { + if (utils$1.endsWith(key, "{}")) { + key = metaTokens ? key : key.slice(0, -2); + value = JSON.stringify(value); + } else if (utils$1.isArray(value) && isFlatArray(value) || (utils$1.isFileList(value) || utils$1.endsWith(key, "[]")) && (arr = utils$1.toArray(value))) { + key = removeBrackets(key); + arr.forEach(function each(el, index) { + !(utils$1.isUndefined(el) || el === null) && formData.append( + // eslint-disable-next-line no-nested-ternary + indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + "[]", + convertValue(el) + ); + }); + return false; + } + } + if (isVisitable(value)) { + return true; + } + formData.append(renderKey(path, key, dots), convertValue(value)); + return false; + } + const stack2 = []; + const exposedHelpers = Object.assign(predicates, { + defaultVisitor, + convertValue, + isVisitable + }); + function build(value, path) { + if (utils$1.isUndefined(value)) return; + if (stack2.indexOf(value) !== -1) { + throw Error("Circular reference detected in " + path.join(".")); + } + stack2.push(value); + utils$1.forEach(value, function each(el, key) { + const result = !(utils$1.isUndefined(el) || el === null) && visitor.call( + formData, + el, + utils$1.isString(key) ? key.trim() : key, + path, + exposedHelpers + ); + if (result === true) { + build(el, path ? path.concat(key) : [key]); + } + }); + stack2.pop(); + } + if (!utils$1.isObject(obj)) { + throw new TypeError("data must be an object"); + } + build(obj); + return formData; +} +function encode$1(str) { + const charMap = { + "!": "%21", + "'": "%27", + "(": "%28", + ")": "%29", + "~": "%7E", + "%20": "+", + "%00": "\0" + }; + return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer2(match) { + return charMap[match]; + }); +} +function AxiosURLSearchParams(params, options) { + this._pairs = []; + params && toFormData$1(params, this, options); +} +const prototype = AxiosURLSearchParams.prototype; +prototype.append = function append(name, value) { + this._pairs.push([name, value]); +}; +prototype.toString = function toString2(encoder) { + const _encode = encoder ? function(value) { + return encoder.call(this, value, encode$1); + } : encode$1; + return this._pairs.map(function each(pair) { + return _encode(pair[0]) + "=" + _encode(pair[1]); + }, "").join("&"); +}; +function encode(val) { + return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); +} +function buildURL(url, params, options) { + if (!params) { + return url; + } + const _encode = options && options.encode || encode; + if (utils$1.isFunction(options)) { + options = { + serialize: options + }; + } + const serializeFn = options && options.serialize; + let serializedParams; + if (serializeFn) { + serializedParams = serializeFn(params, options); + } else { + serializedParams = utils$1.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams(params, options).toString(_encode); + } + if (serializedParams) { + const hashmarkIndex = url.indexOf("#"); + if (hashmarkIndex !== -1) { + url = url.slice(0, hashmarkIndex); + } + url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams; + } + return url; +} +class InterceptorManager { + constructor() { + this.handlers = []; + } + /** + * Add a new interceptor to the stack + * + * @param {Function} fulfilled The function to handle `then` for a `Promise` + * @param {Function} rejected The function to handle `reject` for a `Promise` + * + * @return {Number} An ID used to remove interceptor later + */ + use(fulfilled, rejected, options) { + this.handlers.push({ + fulfilled, + rejected, + synchronous: options ? options.synchronous : false, + runWhen: options ? options.runWhen : null + }); + return this.handlers.length - 1; + } + /** + * Remove an interceptor from the stack + * + * @param {Number} id The ID that was returned by `use` + * + * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise + */ + eject(id) { + if (this.handlers[id]) { + this.handlers[id] = null; + } + } + /** + * Clear all interceptors from the stack + * + * @returns {void} + */ + clear() { + if (this.handlers) { + this.handlers = []; + } + } + /** + * Iterate over all the registered interceptors + * + * This method is particularly useful for skipping over any + * interceptors that may have become `null` calling `eject`. + * + * @param {Function} fn The function to call for each interceptor + * + * @returns {void} + */ + forEach(fn) { + utils$1.forEach(this.handlers, function forEachHandler(h2) { + if (h2 !== null) { + fn(h2); + } + }); + } +} +const transitionalDefaults = { + silentJSONParsing: true, + forcedJSONParsing: true, + clarifyTimeoutError: false +}; +const URLSearchParams$1 = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams; +const FormData$1 = typeof FormData !== "undefined" ? FormData : null; +const Blob$1 = typeof Blob !== "undefined" ? Blob : null; +const platform$1 = { + isBrowser: true, + classes: { + URLSearchParams: URLSearchParams$1, + FormData: FormData$1, + Blob: Blob$1 + }, + protocols: ["http", "https", "file", "blob", "url", "data"] +}; +const hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined"; +const _navigator = typeof navigator === "object" && navigator || void 0; +const hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || ["ReactNative", "NativeScript", "NS"].indexOf(_navigator.product) < 0); +const hasStandardBrowserWebWorkerEnv = (() => { + return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef + self instanceof WorkerGlobalScope && typeof self.importScripts === "function"; +})(); +const origin = hasBrowserEnv && window.location.href || "http://localhost"; +const utils = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ + __proto__: null, + hasBrowserEnv, + hasStandardBrowserEnv, + hasStandardBrowserWebWorkerEnv, + navigator: _navigator, + origin +}, Symbol.toStringTag, { value: "Module" })); +const platform = { + ...utils, + ...platform$1 +}; +function toURLEncodedForm(data, options) { + return toFormData$1(data, new platform.classes.URLSearchParams(), { + visitor: function(value, key, path, helpers) { + if (platform.isNode && utils$1.isBuffer(value)) { + this.append(key, value.toString("base64")); + return false; + } + return helpers.defaultVisitor.apply(this, arguments); + }, + ...options + }); +} +function parsePropPath(name) { + return utils$1.matchAll(/\w+|\[(\w*)]/g, name).map((match) => { + return match[0] === "[]" ? "" : match[1] || match[0]; + }); +} +function arrayToObject(arr) { + const obj = {}; + const keys = Object.keys(arr); + let i; + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + obj[key] = arr[key]; + } + return obj; +} +function formDataToJSON(formData) { + function buildPath(path, value, target, index) { + let name = path[index++]; + if (name === "__proto__") return true; + const isNumericKey = Number.isFinite(+name); + const isLast = index >= path.length; + name = !name && utils$1.isArray(target) ? target.length : name; + if (isLast) { + if (utils$1.hasOwnProp(target, name)) { + target[name] = [target[name], value]; + } else { + target[name] = value; + } + return !isNumericKey; + } + if (!target[name] || !utils$1.isObject(target[name])) { + target[name] = []; + } + const result = buildPath(path, value, target[name], index); + if (result && utils$1.isArray(target[name])) { + target[name] = arrayToObject(target[name]); + } + return !isNumericKey; + } + if (utils$1.isFormData(formData) && utils$1.isFunction(formData.entries)) { + const obj = {}; + utils$1.forEachEntry(formData, (name, value) => { + buildPath(parsePropPath(name), value, obj, 0); + }); + return obj; + } + return null; +} +function stringifySafely(rawValue, parser, encoder) { + if (utils$1.isString(rawValue)) { + try { + (parser || JSON.parse)(rawValue); + return utils$1.trim(rawValue); + } catch (e) { + if (e.name !== "SyntaxError") { + throw e; + } + } + } + return (encoder || JSON.stringify)(rawValue); +} +const defaults = { + transitional: transitionalDefaults, + adapter: ["xhr", "http", "fetch"], + transformRequest: [function transformRequest(data, headers) { + const contentType = headers.getContentType() || ""; + const hasJSONContentType = contentType.indexOf("application/json") > -1; + const isObjectPayload = utils$1.isObject(data); + if (isObjectPayload && utils$1.isHTMLForm(data)) { + data = new FormData(data); + } + const isFormData2 = utils$1.isFormData(data); + if (isFormData2) { + return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data; + } + if (utils$1.isArrayBuffer(data) || utils$1.isBuffer(data) || utils$1.isStream(data) || utils$1.isFile(data) || utils$1.isBlob(data) || utils$1.isReadableStream(data)) { + return data; + } + if (utils$1.isArrayBufferView(data)) { + return data.buffer; + } + if (utils$1.isURLSearchParams(data)) { + headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false); + return data.toString(); + } + let isFileList2; + if (isObjectPayload) { + if (contentType.indexOf("application/x-www-form-urlencoded") > -1) { + return toURLEncodedForm(data, this.formSerializer).toString(); + } + if ((isFileList2 = utils$1.isFileList(data)) || contentType.indexOf("multipart/form-data") > -1) { + const _FormData = this.env && this.env.FormData; + return toFormData$1( + isFileList2 ? { "files[]": data } : data, + _FormData && new _FormData(), + this.formSerializer + ); + } + } + if (isObjectPayload || hasJSONContentType) { + headers.setContentType("application/json", false); + return stringifySafely(data); + } + return data; + }], + transformResponse: [function transformResponse(data) { + const transitional2 = this.transitional || defaults.transitional; + const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing; + const JSONRequested = this.responseType === "json"; + if (utils$1.isResponse(data) || utils$1.isReadableStream(data)) { + return data; + } + if (data && utils$1.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) { + const silentJSONParsing = transitional2 && transitional2.silentJSONParsing; + const strictJSONParsing = !silentJSONParsing && JSONRequested; + try { + return JSON.parse(data); + } catch (e) { + if (strictJSONParsing) { + if (e.name === "SyntaxError") { + throw AxiosError$1.from(e, AxiosError$1.ERR_BAD_RESPONSE, this, null, this.response); + } + throw e; + } + } + } + return data; + }], + /** + * A timeout in milliseconds to abort a request. If set to 0 (default) a + * timeout is not created. + */ + timeout: 0, + xsrfCookieName: "XSRF-TOKEN", + xsrfHeaderName: "X-XSRF-TOKEN", + maxContentLength: -1, + maxBodyLength: -1, + env: { + FormData: platform.classes.FormData, + Blob: platform.classes.Blob + }, + validateStatus: function validateStatus(status) { + return status >= 200 && status < 300; + }, + headers: { + common: { + "Accept": "application/json, text/plain, */*", + "Content-Type": void 0 + } + } +}; +utils$1.forEach(["delete", "get", "head", "post", "put", "patch"], (method) => { + defaults.headers[method] = {}; +}); +const ignoreDuplicateOf = utils$1.toObjectSet([ + "age", + "authorization", + "content-length", + "content-type", + "etag", + "expires", + "from", + "host", + "if-modified-since", + "if-unmodified-since", + "last-modified", + "location", + "max-forwards", + "proxy-authorization", + "referer", + "retry-after", + "user-agent" +]); +const parseHeaders = (rawHeaders) => { + const parsed = {}; + let key; + let val; + let i; + rawHeaders && rawHeaders.split("\n").forEach(function parser(line) { + i = line.indexOf(":"); + key = line.substring(0, i).trim().toLowerCase(); + val = line.substring(i + 1).trim(); + if (!key || parsed[key] && ignoreDuplicateOf[key]) { + return; + } + if (key === "set-cookie") { + if (parsed[key]) { + parsed[key].push(val); + } else { + parsed[key] = [val]; + } + } else { + parsed[key] = parsed[key] ? parsed[key] + ", " + val : val; + } + }); + return parsed; +}; +const $internals = Symbol("internals"); +function normalizeHeader(header) { + return header && String(header).trim().toLowerCase(); +} +function normalizeValue(value) { + if (value === false || value == null) { + return value; + } + return utils$1.isArray(value) ? value.map(normalizeValue) : String(value); +} +function parseTokens(str) { + const tokens = /* @__PURE__ */ Object.create(null); + const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; + let match; + while (match = tokensRE.exec(str)) { + tokens[match[1]] = match[2]; + } + return tokens; +} +const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); +function matchHeaderValue(context, value, header, filter2, isHeaderNameFilter) { + if (utils$1.isFunction(filter2)) { + return filter2.call(this, value, header); + } + if (isHeaderNameFilter) { + value = header; + } + if (!utils$1.isString(value)) return; + if (utils$1.isString(filter2)) { + return value.indexOf(filter2) !== -1; + } + if (utils$1.isRegExp(filter2)) { + return filter2.test(value); + } +} +function formatHeader(header) { + return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { + return char.toUpperCase() + str; + }); +} +function buildAccessors(obj, header) { + const accessorName = utils$1.toCamelCase(" " + header); + ["get", "set", "has"].forEach((methodName) => { + Object.defineProperty(obj, methodName + accessorName, { + value: function(arg1, arg2, arg3) { + return this[methodName].call(this, header, arg1, arg2, arg3); + }, + configurable: true + }); + }); +} +let AxiosHeaders$1 = class AxiosHeaders { + constructor(headers) { + headers && this.set(headers); + } + set(header, valueOrRewrite, rewrite) { + const self2 = this; + function setHeader(_value, _header, _rewrite) { + const lHeader = normalizeHeader(_header); + if (!lHeader) { + throw new Error("header name must be a non-empty string"); + } + const key = utils$1.findKey(self2, lHeader); + if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) { + self2[key || _header] = normalizeValue(_value); + } + } + const setHeaders = (headers, _rewrite) => utils$1.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); + if (utils$1.isPlainObject(header) || header instanceof this.constructor) { + setHeaders(header, valueOrRewrite); + } else if (utils$1.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { + setHeaders(parseHeaders(header), valueOrRewrite); + } else if (utils$1.isObject(header) && utils$1.isIterable(header)) { + let obj = {}, dest, key; + for (const entry of header) { + if (!utils$1.isArray(entry)) { + throw TypeError("Object iterator must return a key-value pair"); + } + obj[key = entry[0]] = (dest = obj[key]) ? utils$1.isArray(dest) ? [...dest, entry[1]] : [dest, entry[1]] : entry[1]; + } + setHeaders(obj, valueOrRewrite); + } else { + header != null && setHeader(valueOrRewrite, header, rewrite); + } + return this; + } + get(header, parser) { + header = normalizeHeader(header); + if (header) { + const key = utils$1.findKey(this, header); + if (key) { + const value = this[key]; + if (!parser) { + return value; + } + if (parser === true) { + return parseTokens(value); + } + if (utils$1.isFunction(parser)) { + return parser.call(this, value, key); + } + if (utils$1.isRegExp(parser)) { + return parser.exec(value); + } + throw new TypeError("parser must be boolean|regexp|function"); + } + } + } + has(header, matcher) { + header = normalizeHeader(header); + if (header) { + const key = utils$1.findKey(this, header); + return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher))); + } + return false; + } + delete(header, matcher) { + const self2 = this; + let deleted = false; + function deleteHeader(_header) { + _header = normalizeHeader(_header); + if (_header) { + const key = utils$1.findKey(self2, _header); + if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) { + delete self2[key]; + deleted = true; + } + } + } + if (utils$1.isArray(header)) { + header.forEach(deleteHeader); + } else { + deleteHeader(header); + } + return deleted; + } + clear(matcher) { + const keys = Object.keys(this); + let i = keys.length; + let deleted = false; + while (i--) { + const key = keys[i]; + if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { + delete this[key]; + deleted = true; + } + } + return deleted; + } + normalize(format2) { + const self2 = this; + const headers = {}; + utils$1.forEach(this, (value, header) => { + const key = utils$1.findKey(headers, header); + if (key) { + self2[key] = normalizeValue(value); + delete self2[header]; + return; + } + const normalized = format2 ? formatHeader(header) : String(header).trim(); + if (normalized !== header) { + delete self2[header]; + } + self2[normalized] = normalizeValue(value); + headers[normalized] = true; + }); + return this; + } + concat(...targets) { + return this.constructor.concat(this, ...targets); + } + toJSON(asStrings) { + const obj = /* @__PURE__ */ Object.create(null); + utils$1.forEach(this, (value, header) => { + value != null && value !== false && (obj[header] = asStrings && utils$1.isArray(value) ? value.join(", ") : value); + }); + return obj; + } + [Symbol.iterator]() { + return Object.entries(this.toJSON())[Symbol.iterator](); + } + toString() { + return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n"); + } + getSetCookie() { + return this.get("set-cookie") || []; + } + get [Symbol.toStringTag]() { + return "AxiosHeaders"; + } + static from(thing) { + return thing instanceof this ? thing : new this(thing); + } + static concat(first, ...targets) { + const computed2 = new this(first); + targets.forEach((target) => computed2.set(target)); + return computed2; + } + static accessor(header) { + const internals = this[$internals] = this[$internals] = { + accessors: {} + }; + const accessors = internals.accessors; + const prototype2 = this.prototype; + function defineAccessor(_header) { + const lHeader = normalizeHeader(_header); + if (!accessors[lHeader]) { + buildAccessors(prototype2, _header); + accessors[lHeader] = true; + } + } + utils$1.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); + return this; + } +}; +AxiosHeaders$1.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]); +utils$1.reduceDescriptors(AxiosHeaders$1.prototype, ({ value }, key) => { + let mapped = key[0].toUpperCase() + key.slice(1); + return { + get: () => value, + set(headerValue) { + this[mapped] = headerValue; + } + }; +}); +utils$1.freezeMethods(AxiosHeaders$1); +function transformData(fns, response) { + const config = this || defaults; + const context = response || config; + const headers = AxiosHeaders$1.from(context.headers); + let data = context.data; + utils$1.forEach(fns, function transform(fn) { + data = fn.call(config, data, headers.normalize(), response ? response.status : void 0); + }); + headers.normalize(); + return data; +} +function isCancel$1(value) { + return !!(value && value.__CANCEL__); +} +function CanceledError$1(message, config, request) { + AxiosError$1.call(this, message == null ? "canceled" : message, AxiosError$1.ERR_CANCELED, config, request); + this.name = "CanceledError"; +} +utils$1.inherits(CanceledError$1, AxiosError$1, { + __CANCEL__: true +}); +function settle(resolve2, reject, response) { + const validateStatus2 = response.config.validateStatus; + if (!response.status || !validateStatus2 || validateStatus2(response.status)) { + resolve2(response); + } else { + reject(new AxiosError$1( + "Request failed with status code " + response.status, + [AxiosError$1.ERR_BAD_REQUEST, AxiosError$1.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], + response.config, + response.request, + response + )); + } +} +function parseProtocol(url) { + const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); + return match && match[1] || ""; +} +function speedometer(samplesCount, min) { + samplesCount = samplesCount || 10; + const bytes = new Array(samplesCount); + const timestamps = new Array(samplesCount); + let head = 0; + let tail = 0; + let firstSampleTS; + min = min !== void 0 ? min : 1e3; + return function push(chunkLength) { + const now = Date.now(); + const startedAt = timestamps[tail]; + if (!firstSampleTS) { + firstSampleTS = now; + } + bytes[head] = chunkLength; + timestamps[head] = now; + let i = tail; + let bytesCount = 0; + while (i !== head) { + bytesCount += bytes[i++]; + i = i % samplesCount; + } + head = (head + 1) % samplesCount; + if (head === tail) { + tail = (tail + 1) % samplesCount; + } + if (now - firstSampleTS < min) { + return; + } + const passed = startedAt && now - startedAt; + return passed ? Math.round(bytesCount * 1e3 / passed) : void 0; + }; +} +function throttle(fn, freq) { + let timestamp = 0; + let threshold = 1e3 / freq; + let lastArgs; + let timer; + const invoke = (args, now = Date.now()) => { + timestamp = now; + lastArgs = null; + if (timer) { + clearTimeout(timer); + timer = null; + } + fn(...args); + }; + const throttled = (...args) => { + const now = Date.now(); + const passed = now - timestamp; + if (passed >= threshold) { + invoke(args, now); + } else { + lastArgs = args; + if (!timer) { + timer = setTimeout(() => { + timer = null; + invoke(lastArgs); + }, threshold - passed); + } + } + }; + const flush = () => lastArgs && invoke(lastArgs); + return [throttled, flush]; +} +const progressEventReducer = (listener, isDownloadStream, freq = 3) => { + let bytesNotified = 0; + const _speedometer = speedometer(50, 250); + return throttle((e) => { + const loaded = e.loaded; + const total = e.lengthComputable ? e.total : void 0; + const progressBytes = loaded - bytesNotified; + const rate = _speedometer(progressBytes); + const inRange = loaded <= total; + bytesNotified = loaded; + const data = { + loaded, + total, + progress: total ? loaded / total : void 0, + bytes: progressBytes, + rate: rate ? rate : void 0, + estimated: rate && total && inRange ? (total - loaded) / rate : void 0, + event: e, + lengthComputable: total != null, + [isDownloadStream ? "download" : "upload"]: true + }; + listener(data); + }, freq); +}; +const progressEventDecorator = (total, throttled) => { + const lengthComputable = total != null; + return [(loaded) => throttled[0]({ + lengthComputable, + total, + loaded + }), throttled[1]]; +}; +const asyncDecorator = (fn) => (...args) => utils$1.asap(() => fn(...args)); +const isURLSameOrigin = platform.hasStandardBrowserEnv ? /* @__PURE__ */ ((origin2, isMSIE) => (url) => { + url = new URL(url, platform.origin); + return origin2.protocol === url.protocol && origin2.host === url.host && (isMSIE || origin2.port === url.port); +})( + new URL(platform.origin), + platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent) +) : () => true; +const cookies = platform.hasStandardBrowserEnv ? ( + // Standard browser envs support document.cookie + { + write(name, value, expires, path, domain, secure) { + const cookie = [name + "=" + encodeURIComponent(value)]; + utils$1.isNumber(expires) && cookie.push("expires=" + new Date(expires).toGMTString()); + utils$1.isString(path) && cookie.push("path=" + path); + utils$1.isString(domain) && cookie.push("domain=" + domain); + secure === true && cookie.push("secure"); + document.cookie = cookie.join("; "); + }, + read(name) { + const match = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)")); + return match ? decodeURIComponent(match[3]) : null; + }, + remove(name) { + this.write(name, "", Date.now() - 864e5); + } + } +) : ( + // Non-standard browser env (web workers, react-native) lack needed support. + { + write() { + }, + read() { + return null; + }, + remove() { + } + } +); +function isAbsoluteURL(url) { + return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); +} +function combineURLs(baseURL, relativeURL) { + return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; +} +function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) { + let isRelativeUrl = !isAbsoluteURL(requestedURL); + if (baseURL && (isRelativeUrl || allowAbsoluteUrls == false)) { + return combineURLs(baseURL, requestedURL); + } + return requestedURL; +} +const headersToObject = (thing) => thing instanceof AxiosHeaders$1 ? { ...thing } : thing; +function mergeConfig$1(config1, config2) { + config2 = config2 || {}; + const config = {}; + function getMergedValue(target, source, prop, caseless) { + if (utils$1.isPlainObject(target) && utils$1.isPlainObject(source)) { + return utils$1.merge.call({ caseless }, target, source); + } else if (utils$1.isPlainObject(source)) { + return utils$1.merge({}, source); + } else if (utils$1.isArray(source)) { + return source.slice(); + } + return source; + } + function mergeDeepProperties(a, b, prop, caseless) { + if (!utils$1.isUndefined(b)) { + return getMergedValue(a, b, prop, caseless); + } else if (!utils$1.isUndefined(a)) { + return getMergedValue(void 0, a, prop, caseless); + } + } + function valueFromConfig2(a, b) { + if (!utils$1.isUndefined(b)) { + return getMergedValue(void 0, b); + } + } + function defaultToConfig2(a, b) { + if (!utils$1.isUndefined(b)) { + return getMergedValue(void 0, b); + } else if (!utils$1.isUndefined(a)) { + return getMergedValue(void 0, a); + } + } + function mergeDirectKeys(a, b, prop) { + if (prop in config2) { + return getMergedValue(a, b); + } else if (prop in config1) { + return getMergedValue(void 0, a); + } + } + const mergeMap = { + url: valueFromConfig2, + method: valueFromConfig2, + data: valueFromConfig2, + baseURL: defaultToConfig2, + transformRequest: defaultToConfig2, + transformResponse: defaultToConfig2, + paramsSerializer: defaultToConfig2, + timeout: defaultToConfig2, + timeoutMessage: defaultToConfig2, + withCredentials: defaultToConfig2, + withXSRFToken: defaultToConfig2, + adapter: defaultToConfig2, + responseType: defaultToConfig2, + xsrfCookieName: defaultToConfig2, + xsrfHeaderName: defaultToConfig2, + onUploadProgress: defaultToConfig2, + onDownloadProgress: defaultToConfig2, + decompress: defaultToConfig2, + maxContentLength: defaultToConfig2, + maxBodyLength: defaultToConfig2, + beforeRedirect: defaultToConfig2, + transport: defaultToConfig2, + httpAgent: defaultToConfig2, + httpsAgent: defaultToConfig2, + cancelToken: defaultToConfig2, + socketPath: defaultToConfig2, + responseEncoding: defaultToConfig2, + validateStatus: mergeDirectKeys, + headers: (a, b, prop) => mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true) + }; + utils$1.forEach(Object.keys({ ...config1, ...config2 }), function computeConfigValue(prop) { + const merge2 = mergeMap[prop] || mergeDeepProperties; + const configValue = merge2(config1[prop], config2[prop], prop); + utils$1.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue); + }); + return config; +} +const resolveConfig = (config) => { + const newConfig = mergeConfig$1({}, config); + let { data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig; + newConfig.headers = headers = AxiosHeaders$1.from(headers); + newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls), config.params, config.paramsSerializer); + if (auth) { + headers.set( + "Authorization", + "Basic " + btoa((auth.username || "") + ":" + (auth.password ? unescape(encodeURIComponent(auth.password)) : "")) + ); + } + let contentType; + if (utils$1.isFormData(data)) { + if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) { + headers.setContentType(void 0); + } else if ((contentType = headers.getContentType()) !== false) { + const [type, ...tokens] = contentType ? contentType.split(";").map((token) => token.trim()).filter(Boolean) : []; + headers.setContentType([type || "multipart/form-data", ...tokens].join("; ")); + } + } + if (platform.hasStandardBrowserEnv) { + withXSRFToken && utils$1.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); + if (withXSRFToken || withXSRFToken !== false && isURLSameOrigin(newConfig.url)) { + const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName); + if (xsrfValue) { + headers.set(xsrfHeaderName, xsrfValue); + } + } + } + return newConfig; +}; +const isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; +const xhrAdapter = isXHRAdapterSupported && function(config) { + return new Promise(function dispatchXhrRequest(resolve2, reject) { + const _config = resolveConfig(config); + let requestData = _config.data; + const requestHeaders = AxiosHeaders$1.from(_config.headers).normalize(); + let { responseType, onUploadProgress, onDownloadProgress } = _config; + let onCanceled; + let uploadThrottled, downloadThrottled; + let flushUpload, flushDownload; + function done() { + flushUpload && flushUpload(); + flushDownload && flushDownload(); + _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); + _config.signal && _config.signal.removeEventListener("abort", onCanceled); + } + let request = new XMLHttpRequest(); + request.open(_config.method.toUpperCase(), _config.url, true); + request.timeout = _config.timeout; + function onloadend() { + if (!request) { + return; + } + const responseHeaders = AxiosHeaders$1.from( + "getAllResponseHeaders" in request && request.getAllResponseHeaders() + ); + const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; + const response = { + data: responseData, + status: request.status, + statusText: request.statusText, + headers: responseHeaders, + config, + request + }; + settle(function _resolve(value) { + resolve2(value); + done(); + }, function _reject(err) { + reject(err); + done(); + }, response); + request = null; + } + if ("onloadend" in request) { + request.onloadend = onloadend; + } else { + request.onreadystatechange = function handleLoad() { + if (!request || request.readyState !== 4) { + return; + } + if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) { + return; + } + setTimeout(onloadend); + }; + } + request.onabort = function handleAbort() { + if (!request) { + return; + } + reject(new AxiosError$1("Request aborted", AxiosError$1.ECONNABORTED, config, request)); + request = null; + }; + request.onerror = function handleError2() { + reject(new AxiosError$1("Network Error", AxiosError$1.ERR_NETWORK, config, request)); + request = null; + }; + request.ontimeout = function handleTimeout() { + let timeoutErrorMessage = _config.timeout ? "timeout of " + _config.timeout + "ms exceeded" : "timeout exceeded"; + const transitional2 = _config.transitional || transitionalDefaults; + if (_config.timeoutErrorMessage) { + timeoutErrorMessage = _config.timeoutErrorMessage; + } + reject(new AxiosError$1( + timeoutErrorMessage, + transitional2.clarifyTimeoutError ? AxiosError$1.ETIMEDOUT : AxiosError$1.ECONNABORTED, + config, + request + )); + request = null; + }; + requestData === void 0 && requestHeaders.setContentType(null); + if ("setRequestHeader" in request) { + utils$1.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { + request.setRequestHeader(key, val); + }); + } + if (!utils$1.isUndefined(_config.withCredentials)) { + request.withCredentials = !!_config.withCredentials; + } + if (responseType && responseType !== "json") { + request.responseType = _config.responseType; + } + if (onDownloadProgress) { + [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true); + request.addEventListener("progress", downloadThrottled); + } + if (onUploadProgress && request.upload) { + [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress); + request.upload.addEventListener("progress", uploadThrottled); + request.upload.addEventListener("loadend", flushUpload); + } + if (_config.cancelToken || _config.signal) { + onCanceled = (cancel) => { + if (!request) { + return; + } + reject(!cancel || cancel.type ? new CanceledError$1(null, config, request) : cancel); + request.abort(); + request = null; + }; + _config.cancelToken && _config.cancelToken.subscribe(onCanceled); + if (_config.signal) { + _config.signal.aborted ? onCanceled() : _config.signal.addEventListener("abort", onCanceled); + } + } + const protocol = parseProtocol(_config.url); + if (protocol && platform.protocols.indexOf(protocol) === -1) { + reject(new AxiosError$1("Unsupported protocol " + protocol + ":", AxiosError$1.ERR_BAD_REQUEST, config)); + return; + } + request.send(requestData || null); + }); +}; +const composeSignals = (signals, timeout) => { + const { length } = signals = signals ? signals.filter(Boolean) : []; + if (timeout || length) { + let controller = new AbortController(); + let aborted; + const onabort = function(reason) { + if (!aborted) { + aborted = true; + unsubscribe(); + const err = reason instanceof Error ? reason : this.reason; + controller.abort(err instanceof AxiosError$1 ? err : new CanceledError$1(err instanceof Error ? err.message : err)); + } + }; + let timer = timeout && setTimeout(() => { + timer = null; + onabort(new AxiosError$1(`timeout ${timeout} of ms exceeded`, AxiosError$1.ETIMEDOUT)); + }, timeout); + const unsubscribe = () => { + if (signals) { + timer && clearTimeout(timer); + timer = null; + signals.forEach((signal2) => { + signal2.unsubscribe ? signal2.unsubscribe(onabort) : signal2.removeEventListener("abort", onabort); + }); + signals = null; + } + }; + signals.forEach((signal2) => signal2.addEventListener("abort", onabort)); + const { signal } = controller; + signal.unsubscribe = () => utils$1.asap(unsubscribe); + return signal; + } +}; +const streamChunk = function* (chunk, chunkSize) { + let len = chunk.byteLength; + if (len < chunkSize) { + yield chunk; + return; + } + let pos = 0; + let end; + while (pos < len) { + end = pos + chunkSize; + yield chunk.slice(pos, end); + pos = end; + } +}; +const readBytes = async function* (iterable, chunkSize) { + for await (const chunk of readStream(iterable)) { + yield* streamChunk(chunk, chunkSize); + } +}; +const readStream = async function* (stream) { + if (stream[Symbol.asyncIterator]) { + yield* stream; + return; + } + const reader = stream.getReader(); + try { + for (; ; ) { + const { done, value } = await reader.read(); + if (done) { + break; + } + yield value; + } + } finally { + await reader.cancel(); + } +}; +const trackStream = (stream, chunkSize, onProgress, onFinish) => { + const iterator2 = readBytes(stream, chunkSize); + let bytes = 0; + let done; + let _onFinish = (e) => { + if (!done) { + done = true; + onFinish && onFinish(e); + } + }; + return new ReadableStream({ + async pull(controller) { + try { + const { done: done2, value } = await iterator2.next(); + if (done2) { + _onFinish(); + controller.close(); + return; + } + let len = value.byteLength; + if (onProgress) { + let loadedBytes = bytes += len; + onProgress(loadedBytes); + } + controller.enqueue(new Uint8Array(value)); + } catch (err) { + _onFinish(err); + throw err; + } + }, + cancel(reason) { + _onFinish(reason); + return iterator2.return(); + } + }, { + highWaterMark: 2 + }); +}; +const isFetchSupported = typeof fetch === "function" && typeof Request === "function" && typeof Response === "function"; +const isReadableStreamSupported = isFetchSupported && typeof ReadableStream === "function"; +const encodeText = isFetchSupported && (typeof TextEncoder === "function" ? /* @__PURE__ */ ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Response(str).arrayBuffer())); +const test = (fn, ...args) => { + try { + return !!fn(...args); + } catch (e) { + return false; + } +}; +const supportsRequestStream = isReadableStreamSupported && test(() => { + let duplexAccessed = false; + const hasContentType = new Request(platform.origin, { + body: new ReadableStream(), + method: "POST", + get duplex() { + duplexAccessed = true; + return "half"; + } + }).headers.has("Content-Type"); + return duplexAccessed && !hasContentType; +}); +const DEFAULT_CHUNK_SIZE = 64 * 1024; +const supportsResponseStream = isReadableStreamSupported && test(() => utils$1.isReadableStream(new Response("").body)); +const resolvers = { + stream: supportsResponseStream && ((res) => res.body) +}; +isFetchSupported && ((res) => { + ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => { + !resolvers[type] && (resolvers[type] = utils$1.isFunction(res[type]) ? (res2) => res2[type]() : (_, config) => { + throw new AxiosError$1(`Response type '${type}' is not supported`, AxiosError$1.ERR_NOT_SUPPORT, config); + }); + }); +})(new Response()); +const getBodyLength = async (body) => { + if (body == null) { + return 0; + } + if (utils$1.isBlob(body)) { + return body.size; + } + if (utils$1.isSpecCompliantForm(body)) { + const _request = new Request(platform.origin, { + method: "POST", + body + }); + return (await _request.arrayBuffer()).byteLength; + } + if (utils$1.isArrayBufferView(body) || utils$1.isArrayBuffer(body)) { + return body.byteLength; + } + if (utils$1.isURLSearchParams(body)) { + body = body + ""; + } + if (utils$1.isString(body)) { + return (await encodeText(body)).byteLength; + } +}; +const resolveBodyLength = async (headers, body) => { + const length = utils$1.toFiniteNumber(headers.getContentLength()); + return length == null ? getBodyLength(body) : length; +}; +const fetchAdapter = isFetchSupported && (async (config) => { + let { + url, + method, + data, + signal, + cancelToken, + timeout, + onDownloadProgress, + onUploadProgress, + responseType, + headers, + withCredentials = "same-origin", + fetchOptions + } = resolveConfig(config); + responseType = responseType ? (responseType + "").toLowerCase() : "text"; + let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout); + let request; + const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => { + composedSignal.unsubscribe(); + }); + let requestContentLength; + try { + if (onUploadProgress && supportsRequestStream && method !== "get" && method !== "head" && (requestContentLength = await resolveBodyLength(headers, data)) !== 0) { + let _request = new Request(url, { + method: "POST", + body: data, + duplex: "half" + }); + let contentTypeHeader; + if (utils$1.isFormData(data) && (contentTypeHeader = _request.headers.get("content-type"))) { + headers.setContentType(contentTypeHeader); + } + if (_request.body) { + const [onProgress, flush] = progressEventDecorator( + requestContentLength, + progressEventReducer(asyncDecorator(onUploadProgress)) + ); + data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); + } + } + if (!utils$1.isString(withCredentials)) { + withCredentials = withCredentials ? "include" : "omit"; + } + const isCredentialsSupported = "credentials" in Request.prototype; + request = new Request(url, { + ...fetchOptions, + signal: composedSignal, + method: method.toUpperCase(), + headers: headers.normalize().toJSON(), + body: data, + duplex: "half", + credentials: isCredentialsSupported ? withCredentials : void 0 + }); + let response = await fetch(request, fetchOptions); + const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response"); + if (supportsResponseStream && (onDownloadProgress || isStreamResponse && unsubscribe)) { + const options = {}; + ["status", "statusText", "headers"].forEach((prop) => { + options[prop] = response[prop]; + }); + const responseContentLength = utils$1.toFiniteNumber(response.headers.get("content-length")); + const [onProgress, flush] = onDownloadProgress && progressEventDecorator( + responseContentLength, + progressEventReducer(asyncDecorator(onDownloadProgress), true) + ) || []; + response = new Response( + trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => { + flush && flush(); + unsubscribe && unsubscribe(); + }), + options + ); + } + responseType = responseType || "text"; + let responseData = await resolvers[utils$1.findKey(resolvers, responseType) || "text"](response, config); + !isStreamResponse && unsubscribe && unsubscribe(); + return await new Promise((resolve2, reject) => { + settle(resolve2, reject, { + data: responseData, + headers: AxiosHeaders$1.from(response.headers), + status: response.status, + statusText: response.statusText, + config, + request + }); + }); + } catch (err) { + unsubscribe && unsubscribe(); + if (err && err.name === "TypeError" && /Load failed|fetch/i.test(err.message)) { + throw Object.assign( + new AxiosError$1("Network Error", AxiosError$1.ERR_NETWORK, config, request), + { + cause: err.cause || err + } + ); + } + throw AxiosError$1.from(err, err && err.code, config, request); + } +}); +const knownAdapters = { + http: httpAdapter, + xhr: xhrAdapter, + fetch: fetchAdapter +}; +utils$1.forEach(knownAdapters, (fn, value) => { + if (fn) { + try { + Object.defineProperty(fn, "name", { value }); + } catch (e) { + } + Object.defineProperty(fn, "adapterName", { value }); + } +}); +const renderReason = (reason) => `- ${reason}`; +const isResolvedHandle = (adapter) => utils$1.isFunction(adapter) || adapter === null || adapter === false; +const adapters = { + getAdapter: (adapters2) => { + adapters2 = utils$1.isArray(adapters2) ? adapters2 : [adapters2]; + const { length } = adapters2; + let nameOrAdapter; + let adapter; + const rejectedReasons = {}; + for (let i = 0; i < length; i++) { + nameOrAdapter = adapters2[i]; + let id; + adapter = nameOrAdapter; + if (!isResolvedHandle(nameOrAdapter)) { + adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; + if (adapter === void 0) { + throw new AxiosError$1(`Unknown adapter '${id}'`); + } + } + if (adapter) { + break; + } + rejectedReasons[id || "#" + i] = adapter; + } + if (!adapter) { + const reasons = Object.entries(rejectedReasons).map( + ([id, state]) => `adapter ${id} ` + (state === false ? "is not supported by the environment" : "is not available in the build") + ); + let s = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified"; + throw new AxiosError$1( + `There is no suitable adapter to dispatch the request ` + s, + "ERR_NOT_SUPPORT" + ); + } + return adapter; + }, + adapters: knownAdapters +}; +function throwIfCancellationRequested(config) { + if (config.cancelToken) { + config.cancelToken.throwIfRequested(); + } + if (config.signal && config.signal.aborted) { + throw new CanceledError$1(null, config); + } +} +function dispatchRequest(config) { + throwIfCancellationRequested(config); + config.headers = AxiosHeaders$1.from(config.headers); + config.data = transformData.call( + config, + config.transformRequest + ); + if (["post", "put", "patch"].indexOf(config.method) !== -1) { + config.headers.setContentType("application/x-www-form-urlencoded", false); + } + const adapter = adapters.getAdapter(config.adapter || defaults.adapter); + return adapter(config).then(function onAdapterResolution(response) { + throwIfCancellationRequested(config); + response.data = transformData.call( + config, + config.transformResponse, + response + ); + response.headers = AxiosHeaders$1.from(response.headers); + return response; + }, function onAdapterRejection(reason) { + if (!isCancel$1(reason)) { + throwIfCancellationRequested(config); + if (reason && reason.response) { + reason.response.data = transformData.call( + config, + config.transformResponse, + reason.response + ); + reason.response.headers = AxiosHeaders$1.from(reason.response.headers); + } + } + return Promise.reject(reason); + }); +} +const VERSION$1 = "1.11.0"; +const validators$1 = {}; +["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { + validators$1[type] = function validator2(thing) { + return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type; + }; +}); +const deprecatedWarnings = {}; +validators$1.transitional = function transitional(validator2, version2, message) { + function formatMessage(opt, desc) { + return "[Axios v" + VERSION$1 + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : ""); + } + return (value, opt, opts) => { + if (validator2 === false) { + throw new AxiosError$1( + formatMessage(opt, " has been removed" + (version2 ? " in " + version2 : "")), + AxiosError$1.ERR_DEPRECATED + ); + } + if (version2 && !deprecatedWarnings[opt]) { + deprecatedWarnings[opt] = true; + console.warn( + formatMessage( + opt, + " has been deprecated since v" + version2 + " and will be removed in the near future" + ) + ); + } + return validator2 ? validator2(value, opt, opts) : true; + }; +}; +validators$1.spelling = function spelling(correctSpelling) { + return (value, opt) => { + console.warn(`${opt} is likely a misspelling of ${correctSpelling}`); + return true; + }; +}; +function assertOptions(options, schema, allowUnknown) { + if (typeof options !== "object") { + throw new AxiosError$1("options must be an object", AxiosError$1.ERR_BAD_OPTION_VALUE); + } + const keys = Object.keys(options); + let i = keys.length; + while (i-- > 0) { + const opt = keys[i]; + const validator2 = schema[opt]; + if (validator2) { + const value = options[opt]; + const result = value === void 0 || validator2(value, opt, options); + if (result !== true) { + throw new AxiosError$1("option " + opt + " must be " + result, AxiosError$1.ERR_BAD_OPTION_VALUE); + } + continue; + } + if (allowUnknown !== true) { + throw new AxiosError$1("Unknown option " + opt, AxiosError$1.ERR_BAD_OPTION); + } + } +} +const validator = { + assertOptions, + validators: validators$1 +}; +const validators = validator.validators; +let Axios$1 = class Axios { + constructor(instanceConfig) { + this.defaults = instanceConfig || {}; + this.interceptors = { + request: new InterceptorManager(), + response: new InterceptorManager() + }; + } + /** + * Dispatch a request + * + * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) + * @param {?Object} config + * + * @returns {Promise} The Promise to be fulfilled + */ + async request(configOrUrl, config) { + try { + return await this._request(configOrUrl, config); + } catch (err) { + if (err instanceof Error) { + let dummy = {}; + Error.captureStackTrace ? Error.captureStackTrace(dummy) : dummy = new Error(); + const stack2 = dummy.stack ? dummy.stack.replace(/^.+\n/, "") : ""; + try { + if (!err.stack) { + err.stack = stack2; + } else if (stack2 && !String(err.stack).endsWith(stack2.replace(/^.+\n.+\n/, ""))) { + err.stack += "\n" + stack2; + } + } catch (e) { + } + } + throw err; + } + } + _request(configOrUrl, config) { + if (typeof configOrUrl === "string") { + config = config || {}; + config.url = configOrUrl; + } else { + config = configOrUrl || {}; + } + config = mergeConfig$1(this.defaults, config); + const { transitional: transitional2, paramsSerializer, headers } = config; + if (transitional2 !== void 0) { + validator.assertOptions(transitional2, { + silentJSONParsing: validators.transitional(validators.boolean), + forcedJSONParsing: validators.transitional(validators.boolean), + clarifyTimeoutError: validators.transitional(validators.boolean) + }, false); + } + if (paramsSerializer != null) { + if (utils$1.isFunction(paramsSerializer)) { + config.paramsSerializer = { + serialize: paramsSerializer + }; + } else { + validator.assertOptions(paramsSerializer, { + encode: validators.function, + serialize: validators.function + }, true); + } + } + if (config.allowAbsoluteUrls !== void 0) ; + else if (this.defaults.allowAbsoluteUrls !== void 0) { + config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls; + } else { + config.allowAbsoluteUrls = true; + } + validator.assertOptions(config, { + baseUrl: validators.spelling("baseURL"), + withXsrfToken: validators.spelling("withXSRFToken") + }, true); + config.method = (config.method || this.defaults.method || "get").toLowerCase(); + let contextHeaders = headers && utils$1.merge( + headers.common, + headers[config.method] + ); + headers && utils$1.forEach( + ["delete", "get", "head", "post", "put", "patch", "common"], + (method) => { + delete headers[method]; + } + ); + config.headers = AxiosHeaders$1.concat(contextHeaders, headers); + const requestInterceptorChain = []; + let synchronousRequestInterceptors = true; + this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { + if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) { + return; + } + synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; + requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); + }); + const responseInterceptorChain = []; + this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { + responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); + }); + let promise; + let i = 0; + let len; + if (!synchronousRequestInterceptors) { + const chain = [dispatchRequest.bind(this), void 0]; + chain.unshift(...requestInterceptorChain); + chain.push(...responseInterceptorChain); + len = chain.length; + promise = Promise.resolve(config); + while (i < len) { + promise = promise.then(chain[i++], chain[i++]); + } + return promise; + } + len = requestInterceptorChain.length; + let newConfig = config; + i = 0; + while (i < len) { + const onFulfilled = requestInterceptorChain[i++]; + const onRejected = requestInterceptorChain[i++]; + try { + newConfig = onFulfilled(newConfig); + } catch (error) { + onRejected.call(this, error); + break; + } + } + try { + promise = dispatchRequest.call(this, newConfig); + } catch (error) { + return Promise.reject(error); + } + i = 0; + len = responseInterceptorChain.length; + while (i < len) { + promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); + } + return promise; + } + getUri(config) { + config = mergeConfig$1(this.defaults, config); + const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls); + return buildURL(fullPath, config.params, config.paramsSerializer); + } +}; +utils$1.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) { + Axios$1.prototype[method] = function(url, config) { + return this.request(mergeConfig$1(config || {}, { + method, + url, + data: (config || {}).data + })); + }; +}); +utils$1.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { + function generateHTTPMethod(isForm) { + return function httpMethod(url, data, config) { + return this.request(mergeConfig$1(config || {}, { + method, + headers: isForm ? { + "Content-Type": "multipart/form-data" + } : {}, + url, + data + })); + }; + } + Axios$1.prototype[method] = generateHTTPMethod(); + Axios$1.prototype[method + "Form"] = generateHTTPMethod(true); +}); +let CancelToken$1 = class CancelToken { + constructor(executor) { + if (typeof executor !== "function") { + throw new TypeError("executor must be a function."); + } + let resolvePromise; + this.promise = new Promise(function promiseExecutor(resolve2) { + resolvePromise = resolve2; + }); + const token = this; + this.promise.then((cancel) => { + if (!token._listeners) return; + let i = token._listeners.length; + while (i-- > 0) { + token._listeners[i](cancel); + } + token._listeners = null; + }); + this.promise.then = (onfulfilled) => { + let _resolve; + const promise = new Promise((resolve2) => { + token.subscribe(resolve2); + _resolve = resolve2; + }).then(onfulfilled); + promise.cancel = function reject() { + token.unsubscribe(_resolve); + }; + return promise; + }; + executor(function cancel(message, config, request) { + if (token.reason) { + return; + } + token.reason = new CanceledError$1(message, config, request); + resolvePromise(token.reason); + }); + } + /** + * Throws a `CanceledError` if cancellation has been requested. + */ + throwIfRequested() { + if (this.reason) { + throw this.reason; + } + } + /** + * Subscribe to the cancel signal + */ + subscribe(listener) { + if (this.reason) { + listener(this.reason); + return; + } + if (this._listeners) { + this._listeners.push(listener); + } else { + this._listeners = [listener]; + } + } + /** + * Unsubscribe from the cancel signal + */ + unsubscribe(listener) { + if (!this._listeners) { + return; + } + const index = this._listeners.indexOf(listener); + if (index !== -1) { + this._listeners.splice(index, 1); + } + } + toAbortSignal() { + const controller = new AbortController(); + const abort = (err) => { + controller.abort(err); + }; + this.subscribe(abort); + controller.signal.unsubscribe = () => this.unsubscribe(abort); + return controller.signal; + } + /** + * Returns an object that contains a new `CancelToken` and a function that, when called, + * cancels the `CancelToken`. + */ + static source() { + let cancel; + const token = new CancelToken(function executor(c) { + cancel = c; + }); + return { + token, + cancel + }; + } +}; +function spread$1(callback) { + return function wrap(arr) { + return callback.apply(null, arr); + }; +} +function isAxiosError$1(payload) { + return utils$1.isObject(payload) && payload.isAxiosError === true; +} +const HttpStatusCode$1 = { + Continue: 100, + SwitchingProtocols: 101, + Processing: 102, + EarlyHints: 103, + Ok: 200, + Created: 201, + Accepted: 202, + NonAuthoritativeInformation: 203, + NoContent: 204, + ResetContent: 205, + PartialContent: 206, + MultiStatus: 207, + AlreadyReported: 208, + ImUsed: 226, + MultipleChoices: 300, + MovedPermanently: 301, + Found: 302, + SeeOther: 303, + NotModified: 304, + UseProxy: 305, + Unused: 306, + TemporaryRedirect: 307, + PermanentRedirect: 308, + BadRequest: 400, + Unauthorized: 401, + PaymentRequired: 402, + Forbidden: 403, + NotFound: 404, + MethodNotAllowed: 405, + NotAcceptable: 406, + ProxyAuthenticationRequired: 407, + RequestTimeout: 408, + Conflict: 409, + Gone: 410, + LengthRequired: 411, + PreconditionFailed: 412, + PayloadTooLarge: 413, + UriTooLong: 414, + UnsupportedMediaType: 415, + RangeNotSatisfiable: 416, + ExpectationFailed: 417, + ImATeapot: 418, + MisdirectedRequest: 421, + UnprocessableEntity: 422, + Locked: 423, + FailedDependency: 424, + TooEarly: 425, + UpgradeRequired: 426, + PreconditionRequired: 428, + TooManyRequests: 429, + RequestHeaderFieldsTooLarge: 431, + UnavailableForLegalReasons: 451, + InternalServerError: 500, + NotImplemented: 501, + BadGateway: 502, + ServiceUnavailable: 503, + GatewayTimeout: 504, + HttpVersionNotSupported: 505, + VariantAlsoNegotiates: 506, + InsufficientStorage: 507, + LoopDetected: 508, + NotExtended: 510, + NetworkAuthenticationRequired: 511 +}; +Object.entries(HttpStatusCode$1).forEach(([key, value]) => { + HttpStatusCode$1[value] = key; +}); +function createInstance(defaultConfig) { + const context = new Axios$1(defaultConfig); + const instance = bind(Axios$1.prototype.request, context); + utils$1.extend(instance, Axios$1.prototype, context, { allOwnKeys: true }); + utils$1.extend(instance, context, null, { allOwnKeys: true }); + instance.create = function create(instanceConfig) { + return createInstance(mergeConfig$1(defaultConfig, instanceConfig)); + }; + return instance; +} +const axios = createInstance(defaults); +axios.Axios = Axios$1; +axios.CanceledError = CanceledError$1; +axios.CancelToken = CancelToken$1; +axios.isCancel = isCancel$1; +axios.VERSION = VERSION$1; +axios.toFormData = toFormData$1; +axios.AxiosError = AxiosError$1; +axios.Cancel = axios.CanceledError; +axios.all = function all(promises) { + return Promise.all(promises); +}; +axios.spread = spread$1; +axios.isAxiosError = isAxiosError$1; +axios.mergeConfig = mergeConfig$1; +axios.AxiosHeaders = AxiosHeaders$1; +axios.formToJSON = (thing) => formDataToJSON(utils$1.isHTMLForm(thing) ? new FormData(thing) : thing); +axios.getAdapter = adapters.getAdapter; +axios.HttpStatusCode = HttpStatusCode$1; +axios.default = axios; +const { + Axios: Axios2, + AxiosError, + CanceledError, + isCancel, + CancelToken: CancelToken2, + VERSION, + all: all2, + Cancel, + isAxiosError, + spread, + toFormData, + AxiosHeaders: AxiosHeaders2, + HttpStatusCode, + formToJSON, + getAdapter, + mergeConfig +} = axios; +/** +* @vue/shared v3.5.20 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/ +/*! #__NO_SIDE_EFFECTS__ */ +// @__NO_SIDE_EFFECTS__ +function makeMap(str) { + const map = /* @__PURE__ */ Object.create(null); + for (const key of str.split(",")) map[key] = 1; + return (val) => val in map; +} +const EMPTY_OBJ = {}; +const EMPTY_ARR = []; +const NOOP = () => { +}; +const NO = () => false; +const isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter +(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97); +const isModelListener = (key) => key.startsWith("onUpdate:"); +const extend = Object.assign; +const remove = (arr, el) => { + const i = arr.indexOf(el); + if (i > -1) { + arr.splice(i, 1); + } +}; +const hasOwnProperty$1 = Object.prototype.hasOwnProperty; +const hasOwn = (val, key) => hasOwnProperty$1.call(val, key); +const isArray$1 = Array.isArray; +const isMap = (val) => toTypeString(val) === "[object Map]"; +const isSet = (val) => toTypeString(val) === "[object Set]"; +const isDate = (val) => toTypeString(val) === "[object Date]"; +const isFunction = (val) => typeof val === "function"; +const isString = (val) => typeof val === "string"; +const isSymbol = (val) => typeof val === "symbol"; +const isObject = (val) => val !== null && typeof val === "object"; +const isPromise = (val) => { + return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch); +}; +const objectToString = Object.prototype.toString; +const toTypeString = (value) => objectToString.call(value); +const toRawType = (value) => { + return toTypeString(value).slice(8, -1); +}; +const isPlainObject$1 = (val) => toTypeString(val) === "[object Object]"; +const isIntegerKey = (key) => isString(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key; +const isReservedProp = /* @__PURE__ */ makeMap( + // the leading comma is intentional so empty string "" is also included + ",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted" +); +const cacheStringFunction = (fn) => { + const cache = /* @__PURE__ */ Object.create(null); + return ((str) => { + const hit = cache[str]; + return hit || (cache[str] = fn(str)); + }); +}; +const camelizeRE = /-(\w)/g; +const camelize = cacheStringFunction( + (str) => { + return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : ""); + } +); +const hyphenateRE = /\B([A-Z])/g; +const hyphenate = cacheStringFunction( + (str) => str.replace(hyphenateRE, "-$1").toLowerCase() +); +const capitalize = cacheStringFunction((str) => { + return str.charAt(0).toUpperCase() + str.slice(1); +}); +const toHandlerKey = cacheStringFunction( + (str) => { + const s = str ? `on${capitalize(str)}` : ``; + return s; + } +); +const hasChanged = (value, oldValue) => !Object.is(value, oldValue); +const invokeArrayFns = (fns, ...arg) => { + for (let i = 0; i < fns.length; i++) { + fns[i](...arg); + } +}; +const def = (obj, key, value, writable = false) => { + Object.defineProperty(obj, key, { + configurable: true, + enumerable: false, + writable, + value + }); +}; +const looseToNumber = (val) => { + const n = parseFloat(val); + return isNaN(n) ? val : n; +}; +let _globalThis; +const getGlobalThis = () => { + return _globalThis || (_globalThis = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {}); +}; +function normalizeStyle(value) { + if (isArray$1(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; + } +} +const listDelimiterRE = /;(?![^(]*\))/g; +const propertyDelimiterRE = /:([^]+)/; +const 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 normalizeClass(value) { + let res = ""; + if (isString(value)) { + res = value; + } else if (isArray$1(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(); +} +const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`; +const isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs); +function includeBooleanAttr(value) { + return !!value || value === ""; +} +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$1(a); + bValidType = isArray$1(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)); +} +const isRef$1 = (val) => { + return !!(val && val["__v_isRef"] === true); +}; +const toDisplayString = (val) => { + return isString(val) ? val : val == null ? "" : isArray$1(val) || isObject(val) && (val.toString === objectToString || !isFunction(val.toString)) ? isRef$1(val) ? toDisplayString(val.value) : JSON.stringify(val, replacer, 2) : String(val); +}; +const replacer = (_key, val) => { + if (isRef$1(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$1(val) && !isPlainObject$1(val)) { + return String(val); + } + return val; +}; +const 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 + ); +}; +/** +* @vue/reactivity v3.5.20 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/ +let activeEffectScope; +class EffectScope { + constructor(detached = false) { + this.detached = detached; + this._active = true; + this._on = 0; + 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; + } + } + } + /** + * This should only be called on non-detached scopes + * @internal + */ + on() { + if (++this._on === 1) { + this.prevScope = activeEffectScope; + activeEffectScope = this; + } + } + /** + * This should only be called on non-detached scopes + * @internal + */ + off() { + if (this._on > 0 && --this._on === 0) { + activeEffectScope = this.prevScope; + this.prevScope = void 0; + } + } + 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); + } +} +let activeSub; +const pausedQueueEffects = /* @__PURE__ */ new WeakSet(); +class ReactiveEffect { + 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 &= -65; + 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 { + cleanupDeps(this); + activeSub = prevEffect; + shouldTrack = prevShouldTrack; + this.flags &= -3; + } + } + 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 &= -2; + } + } + 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); + } +} +let batchDepth = 0; +let batchedSub; +let batchedComputed; +function batch(sub, isComputed2 = false) { + sub.flags |= 8; + if (isComputed2) { + 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 &= -9; + e = next; + } + } + let error; + while (batchedSub) { + let e = batchedSub; + batchedSub = void 0; + while (e) { + const next = e.next; + e.next = void 0; + e.flags &= -9; + 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(computed2) { + if (computed2.flags & 4 && !(computed2.flags & 16)) { + return; + } + computed2.flags &= -17; + if (computed2.globalVersion === globalVersion) { + return; + } + computed2.globalVersion = globalVersion; + if (!computed2.isSSR && computed2.flags & 128 && (!computed2.deps && !computed2._dirty || !isDirty(computed2))) { + return; + } + computed2.flags |= 2; + const dep = computed2.dep; + const prevSub = activeSub; + const prevShouldTrack = shouldTrack; + activeSub = computed2; + shouldTrack = true; + try { + prepareDeps(computed2); + const value = computed2.fn(computed2._value); + if (dep.version === 0 || hasChanged(value, computed2._value)) { + computed2.flags |= 128; + computed2._value = value; + dep.version++; + } + } catch (err) { + dep.version++; + throw err; + } finally { + activeSub = prevSub; + shouldTrack = prevShouldTrack; + cleanupDeps(computed2); + computed2.flags &= -3; + } +} +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.subs === link) { + dep.subs = prevSub; + if (!prevSub && dep.computed) { + dep.computed.flags &= -5; + 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; + } +} +let shouldTrack = true; +const 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; + } + } +} +let globalVersion = 0; +class Link { + 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; + } +} +class Dep { + // TODO isolatedDeclarations "__v_skip" + constructor(computed2) { + this.computed = computed2; + this.version = 0; + this.activeLink = void 0; + this.subs = void 0; + this.map = void 0; + this.key = void 0; + this.sc = 0; + this.__v_skip = true; + } + 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; + } + } + } + return link; + } + trigger(debugInfo) { + this.version++; + globalVersion++; + this.notify(debugInfo); + } + notify(debugInfo) { + startBatch(); + try { + if (false) ; + 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 computed2 = link.dep.computed; + if (computed2 && !link.dep.subs) { + computed2.flags |= 4 | 16; + for (let l = computed2.deps; l; l = l.nextDep) { + addSub(l); + } + } + const currentTail = link.dep.subs; + if (currentTail !== link) { + link.prevSub = currentTail; + if (currentTail) currentTail.nextSub = link; + } + link.dep.subs = link; + } +} +const targetMap = /* @__PURE__ */ new WeakMap(); +const ITERATE_KEY = Symbol( + "" +); +const MAP_KEY_ITERATE_KEY = Symbol( + "" +); +const ARRAY_ITERATE_KEY = Symbol( + "" +); +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; + } + { + dep.track(); + } + } +} +function trigger(target, type, key, newValue, oldValue, oldTarget) { + const depsMap = targetMap.get(target); + if (!depsMap) { + globalVersion++; + return; + } + const run = (dep) => { + if (dep) { + { + dep.trigger(); + } + } + }; + startBatch(); + if (type === "clear") { + depsMap.forEach(run); + } else { + const targetIsArray = isArray$1(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; +} +const arrayInstrumentations = { + __proto__: null, + [Symbol.iterator]() { + return iterator(this, Symbol.iterator, toReactive); + }, + concat(...args) { + return reactiveReadArray(this).concat( + ...args.map((x) => isArray$1(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 optimization 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; +} +const 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; +} +const isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`); +const builtInSymbols = new Set( + /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol) +); +function hasOwnProperty(key) { + if (!isSymbol(key)) key = String(key); + const obj = toRaw(this); + track(obj, "has", key); + return obj.hasOwnProperty(key); +} +class BaseReactiveHandler { + 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$1(target); + if (!isReadonly2) { + let fn; + if (targetIsArray && (fn = arrayInstrumentations[key])) { + return fn; + } + if (key === "hasOwnProperty") { + return hasOwnProperty; + } + } + 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 + isRef(target) ? target : receiver + ); + if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) { + return res; + } + if (!isReadonly2) { + track(target, "get", key); + } + if (isShallow2) { + return res; + } + if (isRef(res)) { + return targetIsArray && isIntegerKey(key) ? res : res.value; + } + if (isObject(res)) { + return isReadonly2 ? readonly(res) : reactive(res); + } + return res; + } +} +class MutableReactiveHandler 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$1(target) && isRef(oldValue) && !isRef(value)) { + if (isOldValueReadonly) { + return true; + } else { + oldValue.value = value; + return true; + } + } + } + const hadKey = isArray$1(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key); + const result = Reflect.set( + target, + key, + value, + isRef(target) ? target : receiver + ); + if (target === toRaw(receiver)) { + if (!hadKey) { + trigger(target, "add", key, value); + } else if (hasChanged(value, oldValue)) { + trigger(target, "set", key, value); + } + } + return result; + } + deleteProperty(target, key) { + const hadKey = hasOwn(target, key); + target[key]; + const result = Reflect.deleteProperty(target, key); + if (result && hadKey) { + trigger(target, "delete", key, void 0); + } + 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$1(target) ? "length" : ITERATE_KEY + ); + return Reflect.ownKeys(target); + } +} +class ReadonlyReactiveHandler extends BaseReactiveHandler { + constructor(isShallow2 = false) { + super(true, isShallow2); + } + set(target, key) { + return true; + } + deleteProperty(target, key) { + return true; + } +} +const mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler(); +const readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(); +const shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(true); +const shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true); +const toShallow = (value) => value; +const 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) { + 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 target.size; + }, + 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); + } + 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); + } + 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); + } + get ? get.call(target, key) : void 0; + const result = target.delete(key); + if (hadKey) { + trigger(target, "delete", key, void 0); + } + return result; + }, + clear() { + const target = toRaw(this); + const hadItems = target.size !== 0; + const result = target.clear(); + if (hadItems) { + trigger( + target, + "clear", + void 0, + void 0 + ); + } + 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 + ); + }; +} +const mutableCollectionHandlers = { + get: /* @__PURE__ */ createInstrumentationGetter(false, false) +}; +const shallowCollectionHandlers = { + get: /* @__PURE__ */ createInstrumentationGetter(false, true) +}; +const readonlyCollectionHandlers = { + get: /* @__PURE__ */ createInstrumentationGetter(true, false) +}; +const shallowReadonlyCollectionHandlers = { + get: /* @__PURE__ */ createInstrumentationGetter(true, true) +}; +const reactiveMap = /* @__PURE__ */ new WeakMap(); +const shallowReactiveMap = /* @__PURE__ */ new WeakMap(); +const readonlyMap = /* @__PURE__ */ new WeakMap(); +const 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)) { + return target; + } + if (target["__v_raw"] && !(isReadonly2 && target["__v_isReactive"])) { + return target; + } + const targetType = getTargetType(target); + if (targetType === 0) { + return target; + } + const existingProxy = proxyMap.get(target); + if (existingProxy) { + return existingProxy; + } + 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; +} +const toReactive = (value) => isObject(value) ? reactive(value) : value; +const toReadonly = (value) => isObject(value) ? readonly(value) : value; +function isRef(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 (isRef(rawValue)) { + return rawValue; + } + return new RefImpl(rawValue, shallow); +} +class RefImpl { + 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() { + { + 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); + { + this.dep.trigger(); + } + } + } +} +function unref(ref2) { + return isRef(ref2) ? ref2.value : ref2; +} +const 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 (isRef(oldValue) && !isRef(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); +} +class CustomRefImpl { + 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) { + const ret = isArray$1(object) ? new Array(object.length) : {}; + for (const key in object) { + ret[key] = propertyToRef(object, key); + } + return ret; +} +class ObjectRefImpl { + 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); + } +} +function propertyToRef(source, key, defaultValue) { + const val = source[key]; + return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue); +} +class ComputedRefImpl { + 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; + } + } + get value() { + const link = this.dep.track(); + refreshComputed(this); + if (link) { + link.version = this.dep.version; + } + return this._value; + } + set value(newValue) { + if (this.setter) { + this.setter(newValue); + } + } +} +function computed$1(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); + return cRef; +} +const INITIAL_WATCHER_VALUE = {}; +const cleanupMap = /* @__PURE__ */ new WeakMap(); +let activeWatcher = void 0; +function onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) { + if (owner) { + let cleanups = cleanupMap.get(owner); + if (!cleanups) cleanupMap.set(owner, cleanups = []); + cleanups.push(cleanupFn); + } +} +function watch$1(source, cb, options = EMPTY_OBJ) { + const { immediate, deep, once, scheduler, augmentJob, call } = options; + 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 (isRef(source)) { + getter = () => source.value; + forceTrigger = isShallow(source); + } else if (isReactive(source)) { + getter = () => reactiveGetter(source); + forceTrigger = true; + } else if (isArray$1(source)) { + isMultiSource = true; + forceTrigger = source.some((s) => isReactive(s) || isShallow(s)); + getter = () => source.map((s) => { + if (isRef(s)) { + return s.value; + } else if (isReactive(s)) { + return reactiveGetter(s); + } else if (isFunction(s)) { + return call ? call(s, 2) : s(); + } else ; + }); + } 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; + } + 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 + ]; + oldValue = newValue; + call ? call(cb, 3, args) : ( + // @ts-expect-error + cb(...args) + ); + } 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 (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 (isRef(value)) { + traverse(value.value, depth, seen); + } else if (isArray$1(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$1(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; +} +/** +* @vue/runtime-core v3.5.20 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/ +const stack = []; +let 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 (isRef(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 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$1(fn)) { + const values = []; + for (let i = 0; i < fn.length; i++) { + values.push(callWithAsyncErrorHandling(fn[i], instance, type, args)); + } + return values; + } +} +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 = `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 (throwInProd) { + throw err; + } else { + console.error(err); + } +} +const queue = []; +let flushIndex = -1; +const pendingPostFlushCbs = []; +let activePostFlushCbs = null; +let postFlushIndex = 0; +const resolvedPromise = /* @__PURE__ */ Promise.resolve(); +let currentFlushPromise = null; +function nextTick(fn) { + const p2 = currentFlushPromise || resolvedPromise; + return fn ? p2.then(this ? fn.bind(this) : fn) : p2; +} +function findInsertionIndex$1(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$1(jobId), 0, job); + } + job.flags |= 1; + queueFlush(); + } +} +function queueFlush() { + if (!currentFlushPromise) { + currentFlushPromise = resolvedPromise.then(flushJobs); + } +} +function queuePostFlushCb(cb) { + if (!isArray$1(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) { + for (; i < queue.length; i++) { + const cb = queue[i]; + if (cb && cb.flags & 2) { + if (instance && cb.id !== instance.uid) { + continue; + } + queue.splice(i, 1); + i--; + if (cb.flags & 4) { + cb.flags &= -2; + } + cb(); + if (!(cb.flags & 4)) { + cb.flags &= -2; + } + } + } +} +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; + for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) { + const cb = activePostFlushCbs[postFlushIndex]; + if (cb.flags & 4) { + cb.flags &= -2; + } + if (!(cb.flags & 8)) cb(); + cb.flags &= -2; + } + activePostFlushCbs = null; + postFlushIndex = 0; + } +} +const getId = (job) => job.id == null ? job.flags & 2 ? -1 : Infinity : job.id; +function flushJobs(seen) { + try { + for (flushIndex = 0; flushIndex < queue.length; flushIndex++) { + const job = queue[flushIndex]; + if (job && !(job.flags & 8)) { + if (false) ; + 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 &= -2; + } + } + flushIndex = -1; + queue.length = 0; + flushPostFlushCbs(); + currentFlushPromise = null; + if (queue.length || pendingPostFlushCbs.length) { + flushJobs(); + } + } +} +let currentRenderingInstance = null; +let currentScopeId = null; +function setCurrentRenderingInstance(instance) { + const prev = currentRenderingInstance; + currentRenderingInstance = instance; + currentScopeId = instance && instance.type.__scopeId || null; + return prev; +} +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); + } + } + return res; + }; + renderFnWithContext._n = true; + renderFnWithContext._c = true; + renderFnWithContext._d = true; + return renderFnWithContext; +} +function withDirectives(vnode, directives) { + if (currentRenderingInstance === null) { + 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(); + } + } +} +const TeleportEndKey = Symbol("_vte"); +const isTeleport = (type) => type.__isTeleport; +const leaveCbKey = Symbol("_leaveCb"); +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; + } +} +/*! #__NO_SIDE_EFFECTS__ */ +// @__NO_SIDE_EFFECTS__ +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. + /* @__PURE__ */ (() => extend({ name: options.name }, extraOptions, { setup: options }))() + ) : options; +} +function markAsyncBoundary(instance) { + instance.ids = [instance.ids[0] + instance.ids[2]++ + "-", 0, 0]; +} +function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) { + if (isArray$1(rawRef)) { + rawRef.forEach( + (r, i) => setRef( + r, + oldRawRef && (isArray$1(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: ref3 } = rawRef; + 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 ? NO : (key) => { + return hasOwn(rawSetupState, key); + }; + if (oldRef != null && oldRef !== ref3) { + if (isString(oldRef)) { + refs[oldRef] = null; + if (canSetSetupRef(oldRef)) { + setupState[oldRef] = null; + } + } else if (isRef(oldRef)) { + { + oldRef.value = null; + } + const oldRawRefAtom = oldRawRef; + if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null; + } + } + if (isFunction(ref3)) { + callWithErrorHandling(ref3, owner, 12, [value, refs]); + } else { + const _isString = isString(ref3); + const _isRef = isRef(ref3); + if (_isString || _isRef) { + const doSet = () => { + if (rawRef.f) { + const existing = _isString ? canSetSetupRef(ref3) ? setupState[ref3] : refs[ref3] : ref3.value; + if (isUnmount) { + isArray$1(existing) && remove(existing, refValue); + } else { + if (!isArray$1(existing)) { + if (_isString) { + refs[ref3] = [refValue]; + if (canSetSetupRef(ref3)) { + setupState[ref3] = refs[ref3]; + } + } else { + const newVal = [refValue]; + { + ref3.value = newVal; + } + if (rawRef.k) refs[rawRef.k] = newVal; + } + } else if (!existing.includes(refValue)) { + existing.push(refValue); + } + } + } else if (_isString) { + refs[ref3] = value; + if (canSetSetupRef(ref3)) { + setupState[ref3] = value; + } + } else if (_isRef) { + { + ref3.value = value; + } + if (rawRef.k) refs[rawRef.k] = value; + } else ; + }; + if (value) { + doSet.id = -1; + queuePostRenderEffect(doSet, parentSuspense); + } else { + doSet(); + } + } + } +} +getGlobalThis().requestIdleCallback || ((cb) => setTimeout(cb, 1)); +getGlobalThis().cancelIdleCallback || ((id) => clearTimeout(id)); +const isAsyncWrapper = (i) => !!i.type.__asyncLoader; +const isKeepAlive = (vnode) => vnode.type.__isKeepAlive; +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 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; + } +} +const createHook = (lifecycle) => (hook, target = currentInstance) => { + if (!isInSSRComponentSetup || lifecycle === "sp") { + injectHook(lifecycle, (...args) => hook(...args), target); + } +}; +const onBeforeMount = createHook("bm"); +const onMounted = createHook("m"); +const onBeforeUpdate = createHook( + "bu" +); +const onUpdated = createHook("u"); +const onBeforeUnmount = createHook( + "bum" +); +const onUnmounted = createHook("um"); +const onServerPrefetch = createHook( + "sp" +); +const onRenderTriggered = createHook("rtg"); +const onRenderTracked = createHook("rtc"); +function onErrorCaptured(hook, target = currentInstance) { + injectHook("ec", hook, target); +} +const COMPONENTS = "components"; +function resolveComponent(name, maybeSelfReference) { + return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name; +} +const NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc"); +function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) { + const instance = currentRenderingInstance || currentInstance; + if (instance) { + const Component = instance.type; + { + 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; + } + return res; + } +} +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; + const sourceIsArray = isArray$1(source); + if (sourceIsArray || isString(source)) { + const sourceIsReactiveArray = sourceIsArray && isReactive(source); + let needsWrap = false; + let isReadonlySource = false; + if (sourceIsReactiveArray) { + needsWrap = !isShallow(source); + isReadonlySource = isReadonly(source); + source = shallowReadArray(source); + } + ret = new Array(source.length); + for (let i = 0, l = source.length; i < l; i++) { + ret[i] = renderItem( + needsWrap ? isReadonlySource ? toReadonly(toReactive(source[i])) : toReactive(source[i]) : source[i], + i, + void 0, + cached + ); + } + } else if (typeof source === "number") { + ret = new Array(source); + for (let i = 0; i < source; i++) { + ret[i] = renderItem(i + 1, i, void 0, cached); + } + } else if (isObject(source)) { + if (source[Symbol.iterator]) { + ret = Array.from( + source, + (item, i) => renderItem(item, i, void 0, cached) + ); + } 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); + } + } + } else { + ret = []; + } + return ret; +} +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)], + 64 + ); + } + let slot = slots[name]; + 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 || [], + validSlotContent && slots._ === 1 ? 64 : -2 + ); + if (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; +} +const getPublicInstance = (i) => { + if (!i) return null; + if (isStatefulComponent(i)) return getComponentPublicInstance(i); + return getPublicInstance(i.parent); +}; +const publicPropertiesMap = ( + // Move PURE marker to new line to workaround compiler discarding it + // due to type annotation + /* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), { + $: (i) => i, + $el: (i) => i.vnode.el, + $data: (i) => i.data, + $props: (i) => i.props, + $attrs: (i) => i.attrs, + $slots: (i) => i.slots, + $refs: (i) => i.refs, + $parent: (i) => getPublicInstance(i.parent), + $root: (i) => getPublicInstance(i.root), + $host: (i) => i.ce, + $emit: (i) => i.emit, + $options: (i) => resolveMergedOptions(i), + $forceUpdate: (i) => i.f || (i.f = () => { + queueJob(i.update); + }), + $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)), + $watch: (i) => instanceWatch.bind(i) + }) +); +const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key); +const PublicInstanceProxyHandlers = { + get({ _: instance }, key) { + if (key === "__v_skip") { + return true; + } + const { ctx, setupState, data, props, accessCache, type, appContext } = instance; + 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 (shouldCacheAccess) { + accessCache[key] = 0; + } + } + const publicGetter = publicPropertiesMap[key]; + let cssModule, globalProperties; + if (publicGetter) { + if (key === "$attrs") { + track(instance.attrs, "get", ""); + } + 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 ; + }, + set({ _: instance }, key, value) { + const { data, setupState, ctx } = instance; + if (hasSetupBinding(setupState, key)) { + setupState[key] = value; + return true; + } else if (data !== EMPTY_OBJ && hasOwn(data, key)) { + data[key] = value; + return true; + } else if (hasOwn(instance.props, key)) { + return false; + } + if (key[0] === "$" && key.slice(1) in instance) { + return false; + } else { + { + ctx[key] = value; + } + } + return true; + }, + has({ + _: { data, setupState, accessCache, ctx, appContext, propsOptions, type } + }, key) { + let normalizedProps, cssModules; + return !!(accessCache[key] || data !== EMPTY_OBJ && key[0] !== "$" && hasOwn(data, key) || hasSetupBinding(setupState, key) || (normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key) || hasOwn(ctx, key) || hasOwn(publicPropertiesMap, key) || hasOwn(appContext.config.globalProperties, key) || (cssModules = type.__cssModules) && cssModules[key]); + }, + defineProperty(target, key, descriptor) { + if (descriptor.get != null) { + target._.accessCache[key] = 0; + } else if (hasOwn(descriptor, "value")) { + this.set(target, key, descriptor.value, null); + } + return Reflect.defineProperty(target, key, descriptor); + } +}; +function normalizePropsOrEmits(props) { + return isArray$1(props) ? props.reduce( + (normalized, p2) => (normalized[p2] = null, normalized), + {} + ) : props; +} +function mergeModels(a, b) { + if (!a || !b) return a || b; + if (isArray$1(a) && isArray$1(b)) return a.concat(b); + return extend({}, normalizePropsOrEmits(a), normalizePropsOrEmits(b)); +} +let shouldCacheAccess = true; +function applyOptions(instance) { + const options = resolveMergedOptions(instance); + const publicThis = instance.proxy; + const ctx = instance.ctx; + shouldCacheAccess = false; + if (options.beforeCreate) { + callHook(options.beforeCreate, instance, "bc"); + } + const { + // state + data: dataOptions, + computed: computedOptions, + methods, + watch: watchOptions, + provide: provideOptions, + inject: injectOptions, + // lifecycle + created, + beforeMount, + mounted, + beforeUpdate, + updated, + activated, + deactivated, + beforeDestroy, + beforeUnmount, + destroyed, + unmounted, + render, + renderTracked, + renderTriggered, + errorCaptured, + serverPrefetch, + // public API + expose, + inheritAttrs, + // assets + components, + directives, + filters + } = options; + const checkDuplicateProperties = null; + if (injectOptions) { + resolveInjections(injectOptions, ctx, checkDuplicateProperties); + } + if (methods) { + for (const key in methods) { + const methodHandler = methods[key]; + if (isFunction(methodHandler)) { + { + ctx[key] = methodHandler.bind(publicThis); + } + } + } + } + if (dataOptions) { + const data = dataOptions.call(publicThis, publicThis); + if (!isObject(data)) ; + else { + instance.data = reactive(data); + } + } + shouldCacheAccess = true; + if (computedOptions) { + for (const key in computedOptions) { + const opt = computedOptions[key]; + const get = isFunction(opt) ? opt.bind(publicThis, publicThis) : isFunction(opt.get) ? opt.get.bind(publicThis, publicThis) : NOOP; + const set = !isFunction(opt) && isFunction(opt.set) ? opt.set.bind(publicThis) : NOOP; + const c = computed({ + get, + set + }); + Object.defineProperty(ctx, key, { + enumerable: true, + configurable: true, + get: () => c.value, + set: (v) => c.value = v + }); + } + } + if (watchOptions) { + for (const key in watchOptions) { + createWatcher(watchOptions[key], ctx, publicThis, key); + } + } + if (provideOptions) { + const provides = isFunction(provideOptions) ? provideOptions.call(publicThis) : provideOptions; + Reflect.ownKeys(provides).forEach((key) => { + provide(key, provides[key]); + }); + } + if (created) { + callHook(created, instance, "c"); + } + function registerLifecycleHook(register, hook) { + if (isArray$1(hook)) { + hook.forEach((_hook) => register(_hook.bind(publicThis))); + } else if (hook) { + register(hook.bind(publicThis)); + } + } + registerLifecycleHook(onBeforeMount, beforeMount); + registerLifecycleHook(onMounted, mounted); + registerLifecycleHook(onBeforeUpdate, beforeUpdate); + registerLifecycleHook(onUpdated, updated); + registerLifecycleHook(onActivated, activated); + registerLifecycleHook(onDeactivated, deactivated); + registerLifecycleHook(onErrorCaptured, errorCaptured); + registerLifecycleHook(onRenderTracked, renderTracked); + registerLifecycleHook(onRenderTriggered, renderTriggered); + registerLifecycleHook(onBeforeUnmount, beforeUnmount); + registerLifecycleHook(onUnmounted, unmounted); + registerLifecycleHook(onServerPrefetch, serverPrefetch); + if (isArray$1(expose)) { + if (expose.length) { + const exposed = instance.exposed || (instance.exposed = {}); + expose.forEach((key) => { + Object.defineProperty(exposed, key, { + get: () => publicThis[key], + set: (val) => publicThis[key] = val, + enumerable: true + }); + }); + } else if (!instance.exposed) { + instance.exposed = {}; + } + } + if (render && instance.render === NOOP) { + instance.render = render; + } + if (inheritAttrs != null) { + instance.inheritAttrs = inheritAttrs; + } + if (components) instance.components = components; + if (directives) instance.directives = directives; + if (serverPrefetch) { + markAsyncBoundary(instance); + } +} +function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP) { + if (isArray$1(injectOptions)) { + injectOptions = normalizeInject(injectOptions); + } + for (const key in injectOptions) { + const opt = injectOptions[key]; + let injected; + if (isObject(opt)) { + if ("default" in opt) { + injected = inject( + opt.from || key, + opt.default, + true + ); + } else { + injected = inject(opt.from || key); + } + } else { + injected = inject(opt); + } + if (isRef(injected)) { + Object.defineProperty(ctx, key, { + enumerable: true, + configurable: true, + get: () => injected.value, + set: (v) => injected.value = v + }); + } else { + ctx[key] = injected; + } + } +} +function callHook(hook, instance, type) { + callWithAsyncErrorHandling( + isArray$1(hook) ? hook.map((h2) => h2.bind(instance.proxy)) : hook.bind(instance.proxy), + instance, + type + ); +} +function createWatcher(raw, ctx, publicThis, key) { + let getter = key.includes(".") ? createPathGetter(publicThis, key) : () => publicThis[key]; + if (isString(raw)) { + const handler = ctx[raw]; + if (isFunction(handler)) { + { + watch(getter, handler); + } + } + } else if (isFunction(raw)) { + { + watch(getter, raw.bind(publicThis)); + } + } else if (isObject(raw)) { + if (isArray$1(raw)) { + raw.forEach((r) => createWatcher(r, ctx, publicThis, key)); + } else { + const handler = isFunction(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler]; + if (isFunction(handler)) { + watch(getter, handler, raw); + } + } + } else ; +} +function resolveMergedOptions(instance) { + const base = instance.type; + const { mixins, extends: extendsOptions } = base; + const { + mixins: globalMixins, + optionsCache: cache, + config: { optionMergeStrategies } + } = instance.appContext; + const cached = cache.get(base); + let resolved; + if (cached) { + resolved = cached; + } else if (!globalMixins.length && !mixins && !extendsOptions) { + { + resolved = base; + } + } else { + resolved = {}; + if (globalMixins.length) { + globalMixins.forEach( + (m) => mergeOptions$1(resolved, m, optionMergeStrategies, true) + ); + } + mergeOptions$1(resolved, base, optionMergeStrategies); + } + if (isObject(base)) { + cache.set(base, resolved); + } + return resolved; +} +function mergeOptions$1(to, from, strats, asMixin = false) { + const { mixins, extends: extendsOptions } = from; + if (extendsOptions) { + mergeOptions$1(to, extendsOptions, strats, true); + } + if (mixins) { + mixins.forEach( + (m) => mergeOptions$1(to, m, strats, true) + ); + } + for (const key in from) { + if (asMixin && key === "expose") ; + else { + const strat = internalOptionMergeStrats[key] || strats && strats[key]; + to[key] = strat ? strat(to[key], from[key]) : from[key]; + } + } + return to; +} +const internalOptionMergeStrats = { + data: mergeDataFn, + props: mergeEmitsOrPropsOptions, + emits: mergeEmitsOrPropsOptions, + // objects + methods: mergeObjectOptions, + computed: mergeObjectOptions, + // lifecycle + beforeCreate: mergeAsArray, + created: mergeAsArray, + beforeMount: mergeAsArray, + mounted: mergeAsArray, + beforeUpdate: mergeAsArray, + updated: mergeAsArray, + beforeDestroy: mergeAsArray, + beforeUnmount: mergeAsArray, + destroyed: mergeAsArray, + unmounted: mergeAsArray, + activated: mergeAsArray, + deactivated: mergeAsArray, + errorCaptured: mergeAsArray, + serverPrefetch: mergeAsArray, + // assets + components: mergeObjectOptions, + directives: mergeObjectOptions, + // watch + watch: mergeWatchOptions, + // provide / inject + provide: mergeDataFn, + inject: mergeInject +}; +function mergeDataFn(to, from) { + if (!from) { + return to; + } + if (!to) { + return from; + } + return function mergedDataFn() { + return extend( + isFunction(to) ? to.call(this, this) : to, + isFunction(from) ? from.call(this, this) : from + ); + }; +} +function mergeInject(to, from) { + return mergeObjectOptions(normalizeInject(to), normalizeInject(from)); +} +function normalizeInject(raw) { + if (isArray$1(raw)) { + const res = {}; + for (let i = 0; i < raw.length; i++) { + res[raw[i]] = raw[i]; + } + return res; + } + return raw; +} +function mergeAsArray(to, from) { + return to ? [...new Set([].concat(to, from))] : from; +} +function mergeObjectOptions(to, from) { + return to ? extend(/* @__PURE__ */ Object.create(null), to, from) : from; +} +function mergeEmitsOrPropsOptions(to, from) { + if (to) { + if (isArray$1(to) && isArray$1(from)) { + return [.../* @__PURE__ */ new Set([...to, ...from])]; + } + return extend( + /* @__PURE__ */ Object.create(null), + normalizePropsOrEmits(to), + normalizePropsOrEmits(from != null ? from : {}) + ); + } else { + return from; + } +} +function mergeWatchOptions(to, from) { + if (!to) return from; + if (!from) return to; + const merged = extend(/* @__PURE__ */ Object.create(null), to); + for (const key in from) { + merged[key] = mergeAsArray(to[key], from[key]); + } + return merged; +} +function createAppContext() { + return { + app: null, + config: { + isNativeTag: NO, + performance: false, + globalProperties: {}, + optionMergeStrategies: {}, + errorHandler: void 0, + warnHandler: void 0, + compilerOptions: {} + }, + mixins: [], + components: {}, + directives: {}, + provides: /* @__PURE__ */ Object.create(null), + optionsCache: /* @__PURE__ */ new WeakMap(), + propsCache: /* @__PURE__ */ new WeakMap(), + emitsCache: /* @__PURE__ */ new WeakMap() + }; +} +let uid$1 = 0; +function createAppAPI(render, hydrate) { + return function createApp2(rootComponent, rootProps = null) { + if (!isFunction(rootComponent)) { + rootComponent = extend({}, rootComponent); + } + if (rootProps != null && !isObject(rootProps)) { + rootProps = null; + } + const context = createAppContext(); + const installedPlugins = /* @__PURE__ */ new WeakSet(); + const pluginCleanupFns = []; + let isMounted = false; + const app2 = context.app = { + _uid: uid$1++, + _component: rootComponent, + _props: rootProps, + _container: null, + _context: context, + _instance: null, + version, + get config() { + return context.config; + }, + set config(v) { + }, + use(plugin, ...options) { + if (installedPlugins.has(plugin)) ; + else if (plugin && isFunction(plugin.install)) { + installedPlugins.add(plugin); + plugin.install(app2, ...options); + } else if (isFunction(plugin)) { + installedPlugins.add(plugin); + plugin(app2, ...options); + } else ; + return app2; + }, + mixin(mixin) { + { + if (!context.mixins.includes(mixin)) { + context.mixins.push(mixin); + } + } + return app2; + }, + component(name, component) { + if (!component) { + return context.components[name]; + } + context.components[name] = component; + return app2; + }, + directive(name, directive) { + if (!directive) { + return context.directives[name]; + } + context.directives[name] = directive; + return app2; + }, + mount(rootContainer, isHydrate, namespace) { + if (!isMounted) { + const vnode = app2._ceVNode || createVNode(rootComponent, rootProps); + vnode.appContext = context; + if (namespace === true) { + namespace = "svg"; + } else if (namespace === false) { + namespace = void 0; + } + { + render(vnode, rootContainer, namespace); + } + isMounted = true; + app2._container = rootContainer; + rootContainer.__vue_app__ = app2; + return getComponentPublicInstance(vnode.component); + } + }, + onUnmount(cleanupFn) { + pluginCleanupFns.push(cleanupFn); + }, + unmount() { + if (isMounted) { + callWithAsyncErrorHandling( + pluginCleanupFns, + app2._instance, + 16 + ); + render(null, app2._container); + delete app2._container.__vue_app__; + } + }, + provide(key, value) { + context.provides[key] = value; + return app2; + }, + runWithContext(fn) { + const lastApp = currentApp; + currentApp = app2; + try { + return fn(); + } finally { + currentApp = lastApp; + } + } + }; + return app2; + }; +} +let currentApp = null; +function provide(key, value) { + if (!currentInstance) ; + else { + let provides = currentInstance.provides; + const parentProvides = currentInstance.parent && currentInstance.parent.provides; + if (parentProvides === provides) { + provides = currentInstance.provides = Object.create(parentProvides); + } + provides[key] = value; + } +} +function inject(key, defaultValue, treatDefaultAsFactory = false) { + const instance = getCurrentInstance(); + if (instance || currentApp) { + let provides = currentApp ? currentApp._context.provides : instance ? instance.parent == null || instance.ce ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : void 0; + if (provides && key in provides) { + return provides[key]; + } else if (arguments.length > 1) { + return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue; + } else ; + } +} +function hasInjectionContext() { + return !!(getCurrentInstance() || currentApp); +} +const internalObjectProto = {}; +const createInternalObject = () => Object.create(internalObjectProto); +const isInternalObject = (obj) => Object.getPrototypeOf(obj) === internalObjectProto; +function initProps(instance, rawProps, isStateful, isSSR = false) { + const props = {}; + const attrs = createInternalObject(); + instance.propsDefaults = /* @__PURE__ */ Object.create(null); + setFullProps(instance, rawProps, props, attrs); + for (const key in instance.propsOptions[0]) { + if (!(key in props)) { + props[key] = void 0; + } + } + if (isStateful) { + instance.props = isSSR ? props : shallowReactive(props); + } else { + if (!instance.type.props) { + instance.props = attrs; + } else { + instance.props = props; + } + } + instance.attrs = attrs; +} +function updateProps(instance, rawProps, rawPrevProps, optimized) { + const { + props, + attrs, + vnode: { patchFlag } + } = instance; + const rawCurrentProps = toRaw(props); + const [options] = instance.propsOptions; + let hasAttrsChanged = false; + if ( + // always force full diff in dev + // - #1942 if hmr is enabled with sfc component + // - vite#872 non-sfc component used by sfc component + (optimized || patchFlag > 0) && !(patchFlag & 16) + ) { + if (patchFlag & 8) { + const propsToUpdate = instance.vnode.dynamicProps; + for (let i = 0; i < propsToUpdate.length; i++) { + let key = propsToUpdate[i]; + if (isEmitListener(instance.emitsOptions, key)) { + continue; + } + const value = rawProps[key]; + if (options) { + if (hasOwn(attrs, key)) { + if (value !== attrs[key]) { + attrs[key] = value; + hasAttrsChanged = true; + } + } else { + const camelizedKey = camelize(key); + props[camelizedKey] = resolvePropValue( + options, + rawCurrentProps, + camelizedKey, + value, + instance, + false + ); + } + } else { + if (value !== attrs[key]) { + attrs[key] = value; + hasAttrsChanged = true; + } + } + } + } + } else { + if (setFullProps(instance, rawProps, props, attrs)) { + hasAttrsChanged = true; + } + let kebabKey; + for (const key in rawCurrentProps) { + if (!rawProps || // for camelCase + !hasOwn(rawProps, key) && // it's possible the original props was passed in as kebab-case + // and converted to camelCase (#955) + ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey))) { + if (options) { + if (rawPrevProps && // for camelCase + (rawPrevProps[key] !== void 0 || // for kebab-case + rawPrevProps[kebabKey] !== void 0)) { + props[key] = resolvePropValue( + options, + rawCurrentProps, + key, + void 0, + instance, + true + ); + } + } else { + delete props[key]; + } + } + } + if (attrs !== rawCurrentProps) { + for (const key in attrs) { + if (!rawProps || !hasOwn(rawProps, key) && true) { + delete attrs[key]; + hasAttrsChanged = true; + } + } + } + } + if (hasAttrsChanged) { + trigger(instance.attrs, "set", ""); + } +} +function setFullProps(instance, rawProps, props, attrs) { + const [options, needCastKeys] = instance.propsOptions; + let hasAttrsChanged = false; + let rawCastValues; + if (rawProps) { + for (let key in rawProps) { + if (isReservedProp(key)) { + continue; + } + const value = rawProps[key]; + let camelKey; + if (options && hasOwn(options, camelKey = camelize(key))) { + if (!needCastKeys || !needCastKeys.includes(camelKey)) { + props[camelKey] = value; + } else { + (rawCastValues || (rawCastValues = {}))[camelKey] = value; + } + } else if (!isEmitListener(instance.emitsOptions, key)) { + if (!(key in attrs) || value !== attrs[key]) { + attrs[key] = value; + hasAttrsChanged = true; + } + } + } + } + if (needCastKeys) { + const rawCurrentProps = toRaw(props); + const castValues = rawCastValues || EMPTY_OBJ; + for (let i = 0; i < needCastKeys.length; i++) { + const key = needCastKeys[i]; + props[key] = resolvePropValue( + options, + rawCurrentProps, + key, + castValues[key], + instance, + !hasOwn(castValues, key) + ); + } + } + return hasAttrsChanged; +} +function resolvePropValue(options, props, key, value, instance, isAbsent) { + const opt = options[key]; + if (opt != null) { + const hasDefault = hasOwn(opt, "default"); + if (hasDefault && value === void 0) { + const defaultValue = opt.default; + if (opt.type !== Function && !opt.skipFactory && isFunction(defaultValue)) { + const { propsDefaults } = instance; + if (key in propsDefaults) { + value = propsDefaults[key]; + } else { + const reset = setCurrentInstance(instance); + value = propsDefaults[key] = defaultValue.call( + null, + props + ); + reset(); + } + } else { + value = defaultValue; + } + if (instance.ce) { + instance.ce._setProp(key, value); + } + } + if (opt[ + 0 + /* shouldCast */ + ]) { + if (isAbsent && !hasDefault) { + value = false; + } else if (opt[ + 1 + /* shouldCastTrue */ + ] && (value === "" || value === hyphenate(key))) { + value = true; + } + } + } + return value; +} +const mixinPropsCache = /* @__PURE__ */ new WeakMap(); +function normalizePropsOptions(comp, appContext, asMixin = false) { + const cache = asMixin ? mixinPropsCache : appContext.propsCache; + const cached = cache.get(comp); + if (cached) { + return cached; + } + const raw = comp.props; + const normalized = {}; + const needCastKeys = []; + let hasExtends = false; + if (!isFunction(comp)) { + const extendProps = (raw2) => { + hasExtends = true; + const [props, keys] = normalizePropsOptions(raw2, appContext, true); + extend(normalized, props); + if (keys) needCastKeys.push(...keys); + }; + if (!asMixin && appContext.mixins.length) { + appContext.mixins.forEach(extendProps); + } + if (comp.extends) { + extendProps(comp.extends); + } + if (comp.mixins) { + comp.mixins.forEach(extendProps); + } + } + if (!raw && !hasExtends) { + if (isObject(comp)) { + cache.set(comp, EMPTY_ARR); + } + return EMPTY_ARR; + } + if (isArray$1(raw)) { + for (let i = 0; i < raw.length; i++) { + const normalizedKey = camelize(raw[i]); + if (validatePropName(normalizedKey)) { + normalized[normalizedKey] = EMPTY_OBJ; + } + } + } else if (raw) { + for (const key in raw) { + const normalizedKey = camelize(key); + if (validatePropName(normalizedKey)) { + const opt = raw[key]; + const prop = normalized[normalizedKey] = isArray$1(opt) || isFunction(opt) ? { type: opt } : extend({}, opt); + const propType = prop.type; + let shouldCast = false; + let shouldCastTrue = true; + if (isArray$1(propType)) { + for (let index = 0; index < propType.length; ++index) { + const type = propType[index]; + const typeName = isFunction(type) && type.name; + if (typeName === "Boolean") { + shouldCast = true; + break; + } else if (typeName === "String") { + shouldCastTrue = false; + } + } + } else { + shouldCast = isFunction(propType) && propType.name === "Boolean"; + } + prop[ + 0 + /* shouldCast */ + ] = shouldCast; + prop[ + 1 + /* shouldCastTrue */ + ] = shouldCastTrue; + if (shouldCast || hasOwn(prop, "default")) { + needCastKeys.push(normalizedKey); + } + } + } + } + const res = [normalized, needCastKeys]; + if (isObject(comp)) { + cache.set(comp, res); + } + return res; +} +function validatePropName(key) { + if (key[0] !== "$" && !isReservedProp(key)) { + return true; + } + return false; +} +const isInternalKey = (key) => key === "_" || key === "_ctx" || key === "$stable"; +const normalizeSlotValue = (value) => isArray$1(value) ? value.map(normalizeVNode) : [normalizeVNode(value)]; +const normalizeSlot$1 = (key, rawSlot, ctx) => { + if (rawSlot._n) { + return rawSlot; + } + const normalized = withCtx((...args) => { + if (false) ; + return normalizeSlotValue(rawSlot(...args)); + }, ctx); + normalized._c = false; + return normalized; +}; +const normalizeObjectSlots = (rawSlots, slots, instance) => { + const ctx = rawSlots._ctx; + for (const key in rawSlots) { + if (isInternalKey(key)) continue; + const value = rawSlots[key]; + if (isFunction(value)) { + slots[key] = normalizeSlot$1(key, value, ctx); + } else if (value != null) { + const normalized = normalizeSlotValue(value); + slots[key] = () => normalized; + } + } +}; +const normalizeVNodeSlots = (instance, children) => { + const normalized = normalizeSlotValue(children); + instance.slots.default = () => normalized; +}; +const assignSlots = (slots, children, optimized) => { + for (const key in children) { + if (optimized || !isInternalKey(key)) { + slots[key] = children[key]; + } + } +}; +const initSlots = (instance, children, optimized) => { + const slots = instance.slots = createInternalObject(); + if (instance.vnode.shapeFlag & 32) { + const type = children._; + if (type) { + assignSlots(slots, children, optimized); + if (optimized) { + def(slots, "_", type, true); + } + } else { + normalizeObjectSlots(children, slots); + } + } else if (children) { + normalizeVNodeSlots(instance, children); + } +}; +const updateSlots = (instance, children, optimized) => { + const { vnode, slots } = instance; + let needDeletionCheck = true; + let deletionComparisonTarget = EMPTY_OBJ; + if (vnode.shapeFlag & 32) { + const type = children._; + if (type) { + if (optimized && type === 1) { + needDeletionCheck = false; + } else { + assignSlots(slots, children, optimized); + } + } else { + needDeletionCheck = !children.$stable; + normalizeObjectSlots(children, slots); + } + deletionComparisonTarget = children; + } else if (children) { + normalizeVNodeSlots(instance, children); + deletionComparisonTarget = { default: 1 }; + } + if (needDeletionCheck) { + for (const key in slots) { + if (!isInternalKey(key) && deletionComparisonTarget[key] == null) { + delete slots[key]; + } + } + } +}; +const queuePostRenderEffect = queueEffectWithSuspense; +function createRenderer(options) { + return baseCreateRenderer(options); +} +function baseCreateRenderer(options, createHydrationFns) { + const target = getGlobalThis(); + target.__VUE__ = true; + const { + insert: hostInsert, + remove: hostRemove, + patchProp: hostPatchProp, + createElement: hostCreateElement, + createText: hostCreateText, + createComment: hostCreateComment, + setText: hostSetText, + setElementText: hostSetElementText, + parentNode: hostParentNode, + nextSibling: hostNextSibling, + setScopeId: hostSetScopeId = NOOP, + insertStaticContent: hostInsertStaticContent + } = options; + const patch = (n1, n2, container, anchor = null, parentComponent = null, parentSuspense = null, namespace = void 0, slotScopeIds = null, optimized = !!n2.dynamicChildren) => { + if (n1 === n2) { + return; + } + if (n1 && !isSameVNodeType(n1, n2)) { + anchor = getNextHostNode(n1); + unmount(n1, parentComponent, parentSuspense, true); + n1 = null; + } + if (n2.patchFlag === -2) { + optimized = false; + n2.dynamicChildren = null; + } + const { type, ref: ref3, shapeFlag } = n2; + switch (type) { + case Text: + processText(n1, n2, container, anchor); + break; + case Comment: + processCommentNode(n1, n2, container, anchor); + break; + case Static: + if (n1 == null) { + mountStaticNode(n2, container, anchor, namespace); + } + break; + case Fragment: + processFragment( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + break; + default: + if (shapeFlag & 1) { + processElement( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } else if (shapeFlag & 6) { + processComponent( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } else if (shapeFlag & 64) { + type.process( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized, + internals + ); + } else if (shapeFlag & 128) { + type.process( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized, + internals + ); + } else ; + } + if (ref3 != null && parentComponent) { + setRef(ref3, n1 && n1.ref, parentSuspense, n2 || n1, !n2); + } else if (ref3 == null && n1 && n1.ref != null) { + setRef(n1.ref, null, parentSuspense, n1, true); + } + }; + const processText = (n1, n2, container, anchor) => { + if (n1 == null) { + hostInsert( + n2.el = hostCreateText(n2.children), + container, + anchor + ); + } else { + const el = n2.el = n1.el; + if (n2.children !== n1.children) { + hostSetText(el, n2.children); + } + } + }; + const processCommentNode = (n1, n2, container, anchor) => { + if (n1 == null) { + hostInsert( + n2.el = hostCreateComment(n2.children || ""), + container, + anchor + ); + } else { + n2.el = n1.el; + } + }; + const mountStaticNode = (n2, container, anchor, namespace) => { + [n2.el, n2.anchor] = hostInsertStaticContent( + n2.children, + container, + anchor, + namespace, + n2.el, + n2.anchor + ); + }; + const moveStaticNode = ({ el, anchor }, container, nextSibling) => { + let next; + while (el && el !== anchor) { + next = hostNextSibling(el); + hostInsert(el, container, nextSibling); + el = next; + } + hostInsert(anchor, container, nextSibling); + }; + const removeStaticNode = ({ el, anchor }) => { + let next; + while (el && el !== anchor) { + next = hostNextSibling(el); + hostRemove(el); + el = next; + } + hostRemove(anchor); + }; + const processElement = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { + if (n2.type === "svg") { + namespace = "svg"; + } else if (n2.type === "math") { + namespace = "mathml"; + } + if (n1 == null) { + mountElement( + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } else { + patchElement( + n1, + n2, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } + }; + const mountElement = (vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { + let el; + let vnodeHook; + const { props, shapeFlag, transition, dirs } = vnode; + el = vnode.el = hostCreateElement( + vnode.type, + namespace, + props && props.is, + props + ); + if (shapeFlag & 8) { + hostSetElementText(el, vnode.children); + } else if (shapeFlag & 16) { + mountChildren( + vnode.children, + el, + null, + parentComponent, + parentSuspense, + resolveChildrenNamespace(vnode, namespace), + slotScopeIds, + optimized + ); + } + if (dirs) { + invokeDirectiveHook(vnode, null, parentComponent, "created"); + } + setScopeId(el, vnode, vnode.scopeId, slotScopeIds, parentComponent); + if (props) { + for (const key in props) { + if (key !== "value" && !isReservedProp(key)) { + hostPatchProp(el, key, null, props[key], namespace, parentComponent); + } + } + if ("value" in props) { + hostPatchProp(el, "value", null, props.value, namespace); + } + if (vnodeHook = props.onVnodeBeforeMount) { + invokeVNodeHook(vnodeHook, parentComponent, vnode); + } + } + if (dirs) { + invokeDirectiveHook(vnode, null, parentComponent, "beforeMount"); + } + const needCallTransitionHooks = needTransition(parentSuspense, transition); + if (needCallTransitionHooks) { + transition.beforeEnter(el); + } + hostInsert(el, container, anchor); + if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) { + queuePostRenderEffect(() => { + vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode); + needCallTransitionHooks && transition.enter(el); + dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted"); + }, parentSuspense); + } + }; + const setScopeId = (el, vnode, scopeId, slotScopeIds, parentComponent) => { + if (scopeId) { + hostSetScopeId(el, scopeId); + } + if (slotScopeIds) { + for (let i = 0; i < slotScopeIds.length; i++) { + hostSetScopeId(el, slotScopeIds[i]); + } + } + if (parentComponent) { + let subTree = parentComponent.subTree; + if (vnode === subTree || isSuspense(subTree.type) && (subTree.ssContent === vnode || subTree.ssFallback === vnode)) { + const parentVNode = parentComponent.vnode; + setScopeId( + el, + parentVNode, + parentVNode.scopeId, + parentVNode.slotScopeIds, + parentComponent.parent + ); + } + } + }; + const mountChildren = (children, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, start = 0) => { + for (let i = start; i < children.length; i++) { + const child = children[i] = optimized ? cloneIfMounted(children[i]) : normalizeVNode(children[i]); + patch( + null, + child, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } + }; + const patchElement = (n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { + const el = n2.el = n1.el; + let { patchFlag, dynamicChildren, dirs } = n2; + patchFlag |= n1.patchFlag & 16; + const oldProps = n1.props || EMPTY_OBJ; + const newProps = n2.props || EMPTY_OBJ; + let vnodeHook; + parentComponent && toggleRecurse(parentComponent, false); + if (vnodeHook = newProps.onVnodeBeforeUpdate) { + invokeVNodeHook(vnodeHook, parentComponent, n2, n1); + } + if (dirs) { + invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate"); + } + parentComponent && toggleRecurse(parentComponent, true); + if (oldProps.innerHTML && newProps.innerHTML == null || oldProps.textContent && newProps.textContent == null) { + hostSetElementText(el, ""); + } + if (dynamicChildren) { + patchBlockChildren( + n1.dynamicChildren, + dynamicChildren, + el, + parentComponent, + parentSuspense, + resolveChildrenNamespace(n2, namespace), + slotScopeIds + ); + } else if (!optimized) { + patchChildren( + n1, + n2, + el, + null, + parentComponent, + parentSuspense, + resolveChildrenNamespace(n2, namespace), + slotScopeIds, + false + ); + } + if (patchFlag > 0) { + if (patchFlag & 16) { + patchProps(el, oldProps, newProps, parentComponent, namespace); + } else { + if (patchFlag & 2) { + if (oldProps.class !== newProps.class) { + hostPatchProp(el, "class", null, newProps.class, namespace); + } + } + if (patchFlag & 4) { + hostPatchProp(el, "style", oldProps.style, newProps.style, namespace); + } + if (patchFlag & 8) { + const propsToUpdate = n2.dynamicProps; + for (let i = 0; i < propsToUpdate.length; i++) { + const key = propsToUpdate[i]; + const prev = oldProps[key]; + const next = newProps[key]; + if (next !== prev || key === "value") { + hostPatchProp(el, key, prev, next, namespace, parentComponent); + } + } + } + } + if (patchFlag & 1) { + if (n1.children !== n2.children) { + hostSetElementText(el, n2.children); + } + } + } else if (!optimized && dynamicChildren == null) { + patchProps(el, oldProps, newProps, parentComponent, namespace); + } + if ((vnodeHook = newProps.onVnodeUpdated) || dirs) { + queuePostRenderEffect(() => { + vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, n2, n1); + dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated"); + }, parentSuspense); + } + }; + const patchBlockChildren = (oldChildren, newChildren, fallbackContainer, parentComponent, parentSuspense, namespace, slotScopeIds) => { + for (let i = 0; i < newChildren.length; i++) { + const oldVNode = oldChildren[i]; + const newVNode = newChildren[i]; + const container = ( + // oldVNode may be an errored async setup() component inside Suspense + // which will not have a mounted element + oldVNode.el && // - In the case of a Fragment, we need to provide the actual parent + // of the Fragment itself so it can move its children. + (oldVNode.type === Fragment || // - In the case of different nodes, there is going to be a replacement + // which also requires the correct parent container + !isSameVNodeType(oldVNode, newVNode) || // - In the case of a component, it could contain anything. + oldVNode.shapeFlag & (6 | 64 | 128)) ? hostParentNode(oldVNode.el) : ( + // In other cases, the parent container is not actually used so we + // just pass the block element here to avoid a DOM parentNode call. + fallbackContainer + ) + ); + patch( + oldVNode, + newVNode, + container, + null, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + true + ); + } + }; + const patchProps = (el, oldProps, newProps, parentComponent, namespace) => { + if (oldProps !== newProps) { + if (oldProps !== EMPTY_OBJ) { + for (const key in oldProps) { + if (!isReservedProp(key) && !(key in newProps)) { + hostPatchProp( + el, + key, + oldProps[key], + null, + namespace, + parentComponent + ); + } + } + } + for (const key in newProps) { + if (isReservedProp(key)) continue; + const next = newProps[key]; + const prev = oldProps[key]; + if (next !== prev && key !== "value") { + hostPatchProp(el, key, prev, next, namespace, parentComponent); + } + } + if ("value" in newProps) { + hostPatchProp(el, "value", oldProps.value, newProps.value, namespace); + } + } + }; + const processFragment = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { + const fragmentStartAnchor = n2.el = n1 ? n1.el : hostCreateText(""); + const fragmentEndAnchor = n2.anchor = n1 ? n1.anchor : hostCreateText(""); + let { patchFlag, dynamicChildren, slotScopeIds: fragmentSlotScopeIds } = n2; + if (fragmentSlotScopeIds) { + slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds; + } + if (n1 == null) { + hostInsert(fragmentStartAnchor, container, anchor); + hostInsert(fragmentEndAnchor, container, anchor); + mountChildren( + // #10007 + // such fragment like `<>` will be compiled into + // a fragment which doesn't have a children. + // In this case fallback to an empty array + n2.children || [], + container, + fragmentEndAnchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } else { + if (patchFlag > 0 && patchFlag & 64 && dynamicChildren && // #2715 the previous fragment could've been a BAILed one as a result + // of renderSlot() with no valid children + n1.dynamicChildren) { + patchBlockChildren( + n1.dynamicChildren, + dynamicChildren, + container, + parentComponent, + parentSuspense, + namespace, + slotScopeIds + ); + if ( + // #2080 if the stable fragment has a key, it's a