@kitbag/router 0.20.4 → 0.20.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- (function(A,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],i):(A=typeof globalThis<"u"?globalThis:A||self,i(A["@kitbag/router"]={},A.Vue))})(this,function(A,i){"use strict";var Uo=Object.defineProperty;var Lo=(A,i,Z)=>i in A?Uo(A,i,{enumerable:!0,configurable:!0,writable:!0,value:Z}):A[i]=Z;var G=(A,i,Z)=>Lo(A,typeof i!="symbol"?i+"":i,Z);function Z(t){return typeof t!="string"?!1:/^(https?:\/\/|\/).*/g.test(t)}function _t(t){return Z(t)?t:`/${t}`}class pe extends Error{constructor(e){super(`Invalid Param "${e}": Router does not support multiple params by the same name. All param names must be unique.`)}}class he extends Error{constructor(e){super(`Child property on meta for ${e} conflicts with the parent meta.`)}}class tt extends Error{constructor(){super("Router not installed")}}class ye extends Error{constructor(e,r){super(`useRoute called with incorrect route. Given ${e}, expected ${r}`)}}const me=Symbol();function Rt(){const t=i.inject(me);if(!t)throw new tt;return t}function it(t){return Array.isArray(t)?t:[t]}function ge(t,e){return t.filter(r=>e===r).length}function ct(...t){const e=t.flatMap(r=>Array.isArray(r)?r:Object.keys(r));for(const r of e)if(ge(e,r)>1)throw new pe(r)}class Q extends Error{}const wt="[",At="]";function kr(t){return t!==String&&t!==Boolean&&t!==Number&&t!==Date}function Ur(t){return typeof t=="function"&&kr(t)}function vt(t){return typeof t=="object"&&"get"in t&&typeof t.get=="function"&&"set"in t&&typeof t.set=="function"}function Re(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"}function we(t,e){return vt(t)?{...t,defaultValue:e??t.defaultValue}:{get:r=>et(r,t),set:r=>z(r,t),defaultValue:e}}function Lr(t){return vt(t)&&t.defaultValue!==void 0}function Nr(t,e){return we(t,e)}function Vr(t){return t!==void 0}function ut(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function F(t){return typeof t=="string"&&t.length>0}let E=null;async function Br(){const{ZodSchema:t,ZodString:e,ZodBoolean:r,ZodDate:n,ZodNumber:o,ZodLiteral:a,ZodObject:s,ZodEnum:p,ZodNativeEnum:y,ZodArray:f,ZodTuple:g,ZodUnion:w,ZodDiscriminatedUnion:B,ZodRecord:v,ZodMap:C,ZodSet:b,ZodIntersection:c,ZodPromise:l,ZodFunction:u}=await import("zod");return{ZodSchema:t,ZodString:e,ZodBoolean:r,ZodDate:n,ZodNumber:o,ZodLiteral:a,ZodObject:s,ZodEnum:p,ZodNativeEnum:y,ZodArray:f,ZodTuple:g,ZodUnion:w,ZodDiscriminatedUnion:B,ZodRecord:v,ZodMap:C,ZodSet:b,ZodIntersection:c,ZodPromise:l,ZodFunction:u}}function Cr(t){return Object.values(t).some(e=>Object.values(e.host.params).some(r=>qt(r))||Object.values(e.path.params).some(r=>qt(r))||Object.values(e.query.params).some(r=>qt(r)))}function qt(t){return ut(t)&&"parse"in t&&typeof t.parse=="function"&&"~standard"in t&&ut(t["~standard"])&&"vendor"in t["~standard"]&&t["~standard"].vendor==="zod"}async function xr(){try{E=await Br()}catch{throw new Error("Failed to initialize Zod")}}function Ee(t){return E?t instanceof E.ZodSchema:!1}function be(t){return{get:(e,{invalid:r})=>{try{return Ht(e,t)}catch{throw r()}},set:(e,{invalid:r})=>{try{return It(e,t)}catch{throw r()}}}}const jr=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/;function ft(t,e){if(typeof e=="string"&&jr.test(e)){const r=new Date(e);return isNaN(r.getTime())?e:r}return e}function lt(t){for(const e of t)try{return e()}catch{continue}throw new Error("All functions failed")}function kt(t,e){return E!=null&&E.ZodString&&t instanceof E.ZodString?1:E!=null&&E.ZodString&&e instanceof E.ZodString?-1:0}function Ht(t,e){if(!E)throw new Error("Zod is not initialized");if(e instanceof E.ZodString)return e.parse(t);if(e instanceof E.ZodBoolean)return e.parse(!!t);if(e instanceof E.ZodDate)return e.parse(new Date(t));if(e instanceof E.ZodNumber)return e.parse(Number(t));if(e instanceof E.ZodLiteral)return lt([()=>e.parse(Number(t)),()=>e.parse(!!t),()=>e.parse(t)]);if(e instanceof E.ZodObject)return e.parse(JSON.parse(t,ft));if(e instanceof E.ZodEnum)return e.parse(t);if(e instanceof E.ZodNativeEnum)return lt([()=>e.parse(Number(t)),()=>e.parse(t)]);if(e instanceof E.ZodArray||e instanceof E.ZodTuple)return e.parse(JSON.parse(t,ft));if(e instanceof E.ZodUnion){const r=Array.from(e._def.options).sort(kt).map(n=>()=>Ht(t,n));return lt(r)}if(e instanceof E.ZodDiscriminatedUnion){const r=Array.from(e.options).sort(kt).map(n=>()=>Ht(t,n));return lt(r)}if(e instanceof E.ZodRecord)return e.parse(JSON.parse(t,ft));if(e instanceof E.ZodMap)return e.parse(new Map(JSON.parse(t,ft)));if(e instanceof E.ZodSet)return e.parse(new Set(JSON.parse(t,ft)));if(e instanceof E.ZodIntersection)throw new Error("Intersection schemas are not supported");if(e instanceof E.ZodPromise)throw new Error("Promise schemas are not supported");if(e instanceof E.ZodFunction)throw new Error("Function schemas are not supported");return e.parse(t)}function It(t,e){if(!E)throw new Error("Zod is not initialized");if(e instanceof E.ZodString)return e.parse(t);if(e instanceof E.ZodBoolean)return e.parse(t).toString();if(e instanceof E.ZodDate)return e.parse(t).toISOString();if(e instanceof E.ZodNumber)return e.parse(Number(t)).toString();if(e instanceof E.ZodLiteral)return e.parse(t).toString();if(e instanceof E.ZodObject)return JSON.stringify(e.parse(t));if(e instanceof E.ZodEnum)return e.parse(t);if(e instanceof E.ZodNativeEnum)return e.parse(t).toString();if(e instanceof E.ZodArray||e instanceof E.ZodTuple)return JSON.stringify(e.parse(t));if(e instanceof E.ZodUnion){const r=Array.from(e._def.options).sort(kt).map(n=>()=>It(t,n));return lt(r)}if(e instanceof E.ZodDiscriminatedUnion){const r=Array.from(e.options).sort(kt).map(n=>()=>It(t,n));return lt(r)}if(e instanceof E.ZodRecord)return JSON.stringify(e.parse(t));if(e instanceof E.ZodMap){const r=e.parse(t);return JSON.stringify(Array.from(r.entries()))}if(e instanceof E.ZodSet){const r=e.parse(t);return JSON.stringify(Array.from(r.values()))}if(e instanceof E.ZodIntersection)throw new Error("Intersection schemas are not supported");if(e instanceof E.ZodPromise)throw new Error("Promise schemas are not supported");if(e instanceof E.ZodFunction)throw new Error("Function schemas are not supported");return JSON.stringify(e.parse(t))}function Dt(t){return typeof t=="object"&&t!==null&&"then"in t}function N(t,e){const r=t["~standard"].validate(e);if(Dt(r))throw new Error("Promise schemas are not supported");if(r.issues)throw new Error("Validation failed");return r.value}function Or(t){return ut(t)&&"type"in t&&typeof t.type=="string"&&"~standard"in t&&ut(t["~standard"])&&"vendor"in t["~standard"]&&t["~standard"].vendor==="valibot"}function Se(t){return Or(t)}function Pe(t){return{get:(e,{invalid:r})=>{try{return Jt(e,t)}catch{throw r()}},set:(e,{invalid:r})=>{try{return Tt(e,t)}catch{throw r()}}}}const Zr=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/;function dt(t,e){if(typeof e=="string"&&Zr.test(e)){const r=new Date(e);return isNaN(r.getTime())?e:r}return e}function pt(t){for(const e of t)try{return e()}catch{continue}throw new Error("All functions failed")}function Ut(t,e){return t.type==="string"?1:e.type==="string"?-1:0}function Jt(t,e){if(e.type==="boolean")return N(e,!!t);if(e.type==="date")return N(e,new Date(t));if(e.type==="number")return N(e,Number(t));if(e.type==="literal")return pt([()=>N(e,Number(t)),()=>N(e,!!t),()=>N(e,t)]);if(e.type==="object")return N(e,JSON.parse(t,dt));if(e.type==="enum")return pt([()=>N(e,Number(t)),()=>N(e,!!t),()=>N(e,t)]);if(e.type==="array"||e.type==="tuple")return N(e,JSON.parse(t,dt));if(e.type==="union"&&"options"in e){const r=e.options.sort(Ut).map(n=>()=>Jt(t,n));return pt(r)}if(e.type==="variant"&&"options"in e){const r=e.options.sort(Ut).map(n=>()=>Jt(t,n));return pt(r)}if(e.type==="record")return N(e,JSON.parse(t,dt));if(e.type==="map")return N(e,new Map(JSON.parse(t,dt)));if(e.type==="set")return N(e,new Set(JSON.parse(t,dt)));if(e.type==="intersection")throw new Error("Intersection schemas are not supported");if(e.type==="promise")throw new Error("Promise schemas are not supported");if(e.type==="function")throw new Error("Function schemas are not supported");return N(e,t)}function Tt(t,e){if(e.type==="string"||e.type==="boolean")return N(e,t).toString();if(e.type==="date")return N(e,t).toISOString();if(e.type==="number")return N(e,Number(t)).toString();if(e.type==="literal")return N(e,t).toString();if(e.type==="object")return JSON.stringify(N(e,t));if(e.type==="enum"||e.type==="nativeEnum")return N(e,t).toString();if(e.type==="array"||e.type==="tuple")return JSON.stringify(N(e,t));if(e.type==="union"&&"options"in e){const r=e.options.sort(Ut).map(n=>()=>Tt(t,n));return pt(r)}if(e.type==="variant"&&"options"in e){const r=e.options.sort(Ut).map(n=>()=>Tt(t,n));return pt(r)}if(e.type==="record")return JSON.stringify(N(e,t));if(e.type==="map"){const r=N(e,t);return JSON.stringify(Array.from(r.entries()))}if(e.type==="set"){const r=N(e,t);return JSON.stringify(Array.from(r.values()))}if(e.type==="intersection")throw new Error("Intersection schemas are not supported");if(e.type==="promise")throw new Error("Promise schemas are not supported");if(e.type==="function")throw new Error("Function schemas are not supported");return JSON.stringify(N(e,t))}function $r(t,e){return t[e]??String}const j={invalid:t=>{throw new Q(t)}},Ae={get:t=>t,set:(t,{invalid:e})=>{if(typeof t!="string")throw e();return t}},Ft={get:(t,{invalid:e})=>{if(t==="true")return!0;if(t==="false")return!1;throw e()},set:(t,{invalid:e})=>{if(typeof t!="boolean")throw e();return t.toString()}},Mt={get:(t,{invalid:e})=>{const r=Number(t);if(isNaN(r))throw e();return r},set:(t,{invalid:e})=>{if(typeof t!="number")throw e();return t.toString()}},ve={get:(t,{invalid:e})=>{const r=new Date(t);if(isNaN(r.getTime()))throw e();return r},set:(t,{invalid:e})=>{if(typeof t!="object"||!(t instanceof Date))throw e();return t.toISOString()}},ke={get:(t,{invalid:e})=>{try{return JSON.parse(t)}catch{throw e()}},set:(t,{invalid:e})=>{try{return JSON.stringify(t)}catch{throw e()}}};function _r(t,e){switch(typeof e){case"string":return Ae.get(t,j)===e;case"number":return Mt.get(t,j)===e;case"boolean":return Ft.get(t,j)===e;default:return!1}}function et(t,e,r=!1){if(t===void 0||!F(t)){if(Lr(e))return e.defaultValue;if(r)return;throw new Q}if(e===String)return Ae.get(t,j);if(e===Boolean)return Ft.get(t,j);if(e===Number)return Mt.get(t,j);if(e===Date)return ve.get(t,j);if(e===JSON)return ke.get(t,j);if(Ur(e))return e(t,j);if(vt(e))return e.get(t,j);if(e instanceof RegExp){if(e.test(t))return t;throw new Q}if(Re(e)){if(_r(t,e))return e;throw new Q}return Ee(e)?be(e).get(t,j):Se(e)?Pe(e).get(t,j):t}function Wt(t,e,r=!1){try{return et(t,e,r)}catch(n){if(n instanceof Q)return;throw n}}function qr(t,e,r=!1){try{return z(t,e,r)}catch(n){if(n instanceof Q)return;throw n}}function z(t,e,r=!1){if(t===void 0){if(r)return"";throw new Q}if(e===Boolean)return Ft.set(t,j);if(e===Number)return Mt.set(t,j);if(e===Date)return ve.set(t,j);if(e===JSON)return ke.set(t,j);if(vt(e))return e.set(t,j);if(Re(e)){if(e!==t)throw new Q;return t.toString()}if(Ee(e))return be(e).set(t,j);if(Se(e))return Pe(e).set(t,j);try{return t.toString()}catch{throw new Q}}function Gt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Hr(t,e){const r=Array.from(t.matchAll(e));if(r.length===0)return[t];let n=0;const o=r.reduce((s,p)=>{const y=Gt(t.slice(n,p.index));y.length&&s.push(y);const[f]=p;return s.push(f),n=p.index+f.length,s},[]),a=t.slice(n);return a&&o.push(a),o}function Ir(t){const e=Ue(t.path.value);return new RegExp(`^${e}$`,"i")}function Dr(t){const e=new URLSearchParams(t.query.value);return Array.from(e.entries()).filter(([,r])=>!zt(r)).map(([r,n])=>{const o=Ue(n);return new RegExp(`${Gt(r)}=${o}(&|$)`,"i")})}function Ue(t){return Hr(t,new RegExp(Lt,"g")).map(e=>e.startsWith(wt)?Le(e):Gt(e)).join("")}function Le(t){return t.replace(new RegExp(Lt,"g"),".+")}function Jr(t,e){const r=Ne(e);return t.replace(r,"(.*)")}function Qt(t,e){return Fr(e).test(t.value)}function zt(t){return new RegExp(Tr,"g").test(t)}const Lt=`\\${wt}\\??([\\w-_]+)\\${At}`,Tr=`\\${wt}\\?([\\w-_]+)\\${At}`;function Kt(t){const[e]=Ve(t,new RegExp(Lt,"g"));return e}function Ne(t){return new RegExp(`\\${wt}\\??${t}\\${At}`,"g")}function Fr(t){return new RegExp(`\\${wt}\\?${t}\\${At}`,"g")}function Ve(t,e){return Array.from(t.matchAll(e)).flatMap(([,...n])=>n.map(o=>F(o)?o:""))}function Mr(t="",e={}){return F(t)?Array.from(t.matchAll(new RegExp(Lt,"g"))).reduce((n,[o,a])=>{const s=Kt(o);if(!s)return n;const p=$r(e,s);return ct([s],n),n[a]=p,n},{}):{}}function Wr(t){return ut(t)&&typeof t.value=="string"}function rt(t){return t===void 0?M():Wr(t)?t:M(t,{})}function M(t,e){return{value:t??"",params:Mr(t,e)}}function Be(t,e){ct(t.params,e.params);const r=`${t.value}${e.value}`;return M(r,{...t.params,...e.params})}function Gr(t,e){return Be(t,e)}function Qr(t,e){return zr(t,e),{...t,...e}}function zr(t,e){const r=Object.keys(t).find(n=>n in e&&typeof e[n]!=typeof t[n]);if(r)throw new he(r)}function Kr(t,e){ct(t.params,e.params);const r=[t.value,e.value].filter(F).join("&");return M(r,{...t.params,...e.params})}function Yr(t,e){return ct(t,e),{...t,...e}}function Ce(t){return"parent"in t&&!!t.parent}function xe(t){return"component"in t&&!!t.component}function je(t){return"props"in t&&typeof t.props=="function"}function Oe(t){return"components"in t&&!!t.components}function Ze(t){return"props"in t&&typeof t.props=="object"}function $e(t,e){return{...e,path:Be(t.path,e.path),query:Kr(t.query,e.query),meta:Qr(t.meta,e.meta),state:Yr(t.state,e.state),hash:Gr(t.hash,e.hash),matches:[...t.matches,e.matched],host:t.host,depth:t.depth+1}}function Yt(){return typeof window<"u"&&typeof window.document<"u"}function Xt(t){const e=new URLSearchParams(t);return{get:(...r)=>e.get(...r),getAll:(...r)=>e.getAll(...r),set:(...r)=>{e.set(...r)},append:(...r)=>{e.append(...r)},delete:(...r)=>{e.delete(...r)},toString:(...r)=>e.toString(...r),forEach:(...r)=>{e.forEach(...r)},entries:(...r)=>e.entries(...r),keys:(...r)=>e.keys(...r),values:(...r)=>e.values(...r),has:(...r)=>e.has(...r),size:e.size,sort:()=>{e.sort()},[Symbol.iterator]:()=>e[Symbol.iterator]()}}function te(){let t=0;return()=>(++t).toString()}const Xr=te()();function tn(t){return t===Xr}const ee=te();function _e(t){return t===void 0?"":t}function nt(t,e){const r=ee(),n=_e(t.name),o=rt(t.path),a=rt(t.query),s=rt(t.hash),p=t.meta??{},y=t.state??{},f=i.markRaw({id:r,meta:p,state:y,...t,props:e}),g={id:r,matched:f,matches:[f],name:n,path:o,query:a,hash:s,meta:p,state:y,depth:1,host:M(),prefetch:t.prefetch},w=Ce(t)?$e(t.parent,g):g;return ct(w.path.params,w.query.params,w.hash.params),w}const Nt={template:"<div>This is component</div>"},re=nt({name:"parentA",path:"/parentA/[paramA]"}),qe=nt({parent:re,name:"parentA.childA",path:"/childA/[?paramB]"}),en=nt({parent:re,name:"parentA.childB",path:"/childB/[paramD]",component:Nt}),rn=nt({parent:qe,name:"parentA.childA.grandChildA",path:"/[paramC]",component:Nt});nt({name:"parentB",path:"/parentB",component:Nt}),nt({name:"parentC",path:"/",component:Nt});const nn="lazy",on={components:!0,props:!1};function Vt(t){return["eager","lazy","intent"].includes(t)}function He({routerPrefetch:t,routePrefetch:e,linkPrefetch:r},n){const o=ne(r,n),a=ne(e,n),s=ne(t,n),p=[o,a,s,on[n],nn].reduce((y,f)=>Vt(y)?y:y===!0&&Vt(f)?f:y===!0&&!Vt(f)?y:y===void 0?f:y,void 0);return Vt(p)?p:!1}function ne(t,e){return ut(t)?t[e]:t}class Ie extends Error{constructor(){super("Uncaught CallbackContextAbortError");G(this,"response");this.response={status:"ABORT"}}}class ht extends Error{constructor(r){super("Uncaught CallbackContextPushError");G(this,"response");this.response={status:"PUSH",to:r}}}class Bt extends Error{constructor(r){super("Uncaught CallbackContextRejectionError");G(this,"response");this.response={status:"REJECT",type:r}}}function De(){return{reject:o=>{throw new Bt(o)},push:(...o)=>{throw new ht(o)},replace:(o,a,s)=>{if(Z(o)){const f=a??{};throw new ht([o,{...f,replace:!0}])}const p=a,y=s??{};throw new ht([o,p,{...y,replace:!0}])},abort:()=>{throw new Ie}}}function Je(t){try{const e=t();return Dt(e)?e.catch(r=>r):e}catch(e){return e}}function Te(){let t=null;function e(n){t=n}function r(n){return t?t.runWithContext(n):n()}return{setVueApp:e,runWithContext:r}}const Fe=Symbol();function an(){const{setVueApp:t,runWithContext:e}=Te(),r=i.reactive(new Map),{push:n,replace:o,reject:a}=De(),s=(b,c,l)=>c.matches.filter(u=>He({...l,routePrefetch:u.prefetch},"props")===b).flatMap(u=>v(u)).reduce((u,{id:d,name:S,props:U})=>{if(!U)return u;const k=B(d,S,c),R=e(()=>Je(()=>U(c,{push:n,replace:o,reject:a,parent:g(c,!0)})));return u[k]=R,u},{}),p=b=>{Object.entries(b).forEach(([c,l])=>{r.set(c,l)})},y=async b=>{const c=b.matches.flatMap(v),l=[],u=[];for(const{id:d,name:S,props:U}of c){if(!U)continue;const k=B(d,S,b);if(l.push(k),!r.has(k)){const R=e(()=>Je(()=>U(b,{push:n,replace:o,reject:a,parent:g(b)})));r.set(k,R)}u.push((async()=>{const R=await r.get(k);if(R instanceof Error)throw R})())}C(l);try{return await Promise.all(u),{status:"SUCCESS"}}catch(d){if(d instanceof ht||d instanceof Bt)return d.response;throw d}},f=(b,c,l)=>{const u=B(b,c,l);return r.get(u)};function g(b,c=!1){const l=b.matches.at(-2);if(l)return je(l)?{name:l.name??"",get props(){return w(l,"default",b,c)}}:Ze(l)?{name:l.name??"",props:new Proxy({},{get(u,d){return typeof d!="string"?Reflect.get(u,d):w(l,d,b,c)}})}:{name:l.name??"",props:void 0}}function w(b,c,l,u=!1){const d=f(b.id,c,l);if(u&&!d){const S=b.name??"unknown",U=l.name||"unknown";console.warn(`
1
+ (function(A,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],i):(A=typeof globalThis<"u"?globalThis:A||self,i(A["@kitbag/router"]={},A.Vue))})(this,function(A,i){"use strict";var No=Object.defineProperty;var Vo=(A,i,Z)=>i in A?No(A,i,{enumerable:!0,configurable:!0,writable:!0,value:Z}):A[i]=Z;var G=(A,i,Z)=>Vo(A,typeof i!="symbol"?i+"":i,Z);function Z(t){return typeof t!="string"?!1:/^(https?:\/\/|\/).*/g.test(t)}function _t(t){return Z(t)?t:`/${t}`}class pe extends Error{constructor(e){super(`Invalid Param "${e}": Router does not support multiple params by the same name. All param names must be unique.`)}}class he extends Error{constructor(e){super(`Child property on meta for ${e} conflicts with the parent meta.`)}}class tt extends Error{constructor(){super("Router not installed")}}class ye extends Error{constructor(e,r){super(`useRoute called with incorrect route. Given ${e}, expected ${r}`)}}const me=Symbol();function Rt(){const t=i.inject(me);if(!t)throw new tt;return t}function it(t){return Array.isArray(t)?t:[t]}function ge(t,e){return t.filter(r=>e===r).length}function ct(...t){const e=t.flatMap(r=>Array.isArray(r)?r:Object.keys(r));for(const r of e)if(ge(e,r)>1)throw new pe(r)}class Q extends Error{}const wt="[",At="]";function kr(t){return t!==String&&t!==Boolean&&t!==Number&&t!==Date}function Ur(t){return typeof t=="function"&&kr(t)}function vt(t){return typeof t=="object"&&"get"in t&&typeof t.get=="function"&&"set"in t&&typeof t.set=="function"}function Re(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"}function we(t,e){return vt(t)?{...t,defaultValue:e??t.defaultValue}:{get:r=>et(r,t),set:r=>z(r,t),defaultValue:e}}function Lr(t){return vt(t)&&t.defaultValue!==void 0}function Nr(t,e){return we(t,e)}function Vr(t){return t!==void 0}function ut(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function F(t){return typeof t=="string"&&t.length>0}let E=null;async function Cr(){const{ZodSchema:t,ZodString:e,ZodBoolean:r,ZodDate:n,ZodNumber:o,ZodLiteral:a,ZodObject:s,ZodEnum:p,ZodNativeEnum:y,ZodArray:f,ZodTuple:g,ZodUnion:w,ZodDiscriminatedUnion:C,ZodRecord:v,ZodMap:B,ZodSet:b,ZodIntersection:c,ZodPromise:l,ZodFunction:u}=await import("zod");return{ZodSchema:t,ZodString:e,ZodBoolean:r,ZodDate:n,ZodNumber:o,ZodLiteral:a,ZodObject:s,ZodEnum:p,ZodNativeEnum:y,ZodArray:f,ZodTuple:g,ZodUnion:w,ZodDiscriminatedUnion:C,ZodRecord:v,ZodMap:B,ZodSet:b,ZodIntersection:c,ZodPromise:l,ZodFunction:u}}function Br(t){return Object.values(t).some(e=>Object.values(e.host.params).some(r=>qt(r))||Object.values(e.path.params).some(r=>qt(r))||Object.values(e.query.params).some(r=>qt(r)))}function qt(t){return ut(t)&&"parse"in t&&typeof t.parse=="function"&&"~standard"in t&&ut(t["~standard"])&&"vendor"in t["~standard"]&&t["~standard"].vendor==="zod"}async function xr(){try{E=await Cr()}catch{throw new Error("Failed to initialize Zod")}}function Ee(t){return E?t instanceof E.ZodSchema:!1}function be(t){return{get:(e,{invalid:r})=>{try{return Ht(e,t)}catch{throw r()}},set:(e,{invalid:r})=>{try{return It(e,t)}catch{throw r()}}}}const jr=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/;function ft(t,e){if(typeof e=="string"&&jr.test(e)){const r=new Date(e);return isNaN(r.getTime())?e:r}return e}function lt(t){for(const e of t)try{return e()}catch{continue}throw new Error("All functions failed")}function kt(t,e){return E!=null&&E.ZodString&&t instanceof E.ZodString?1:E!=null&&E.ZodString&&e instanceof E.ZodString?-1:0}function Ht(t,e){if(!E)throw new Error("Zod is not initialized");if(e instanceof E.ZodString)return e.parse(t);if(e instanceof E.ZodBoolean)return e.parse(!!t);if(e instanceof E.ZodDate)return e.parse(new Date(t));if(e instanceof E.ZodNumber)return e.parse(Number(t));if(e instanceof E.ZodLiteral)return lt([()=>e.parse(Number(t)),()=>e.parse(!!t),()=>e.parse(t)]);if(e instanceof E.ZodObject)return e.parse(JSON.parse(t,ft));if(e instanceof E.ZodEnum)return e.parse(t);if(e instanceof E.ZodNativeEnum)return lt([()=>e.parse(Number(t)),()=>e.parse(t)]);if(e instanceof E.ZodArray||e instanceof E.ZodTuple)return e.parse(JSON.parse(t,ft));if(e instanceof E.ZodUnion){const r=Array.from(e._def.options).sort(kt).map(n=>()=>Ht(t,n));return lt(r)}if(e instanceof E.ZodDiscriminatedUnion){const r=Array.from(e.options).sort(kt).map(n=>()=>Ht(t,n));return lt(r)}if(e instanceof E.ZodRecord)return e.parse(JSON.parse(t,ft));if(e instanceof E.ZodMap)return e.parse(new Map(JSON.parse(t,ft)));if(e instanceof E.ZodSet)return e.parse(new Set(JSON.parse(t,ft)));if(e instanceof E.ZodIntersection)throw new Error("Intersection schemas are not supported");if(e instanceof E.ZodPromise)throw new Error("Promise schemas are not supported");if(e instanceof E.ZodFunction)throw new Error("Function schemas are not supported");return e.parse(t)}function It(t,e){if(!E)throw new Error("Zod is not initialized");if(e instanceof E.ZodString)return e.parse(t);if(e instanceof E.ZodBoolean)return e.parse(t).toString();if(e instanceof E.ZodDate)return e.parse(t).toISOString();if(e instanceof E.ZodNumber)return e.parse(Number(t)).toString();if(e instanceof E.ZodLiteral)return e.parse(t).toString();if(e instanceof E.ZodObject)return JSON.stringify(e.parse(t));if(e instanceof E.ZodEnum)return e.parse(t);if(e instanceof E.ZodNativeEnum)return e.parse(t).toString();if(e instanceof E.ZodArray||e instanceof E.ZodTuple)return JSON.stringify(e.parse(t));if(e instanceof E.ZodUnion){const r=Array.from(e._def.options).sort(kt).map(n=>()=>It(t,n));return lt(r)}if(e instanceof E.ZodDiscriminatedUnion){const r=Array.from(e.options).sort(kt).map(n=>()=>It(t,n));return lt(r)}if(e instanceof E.ZodRecord)return JSON.stringify(e.parse(t));if(e instanceof E.ZodMap){const r=e.parse(t);return JSON.stringify(Array.from(r.entries()))}if(e instanceof E.ZodSet){const r=e.parse(t);return JSON.stringify(Array.from(r.values()))}if(e instanceof E.ZodIntersection)throw new Error("Intersection schemas are not supported");if(e instanceof E.ZodPromise)throw new Error("Promise schemas are not supported");if(e instanceof E.ZodFunction)throw new Error("Function schemas are not supported");return JSON.stringify(e.parse(t))}function Dt(t){return typeof t=="object"&&t!==null&&"then"in t}function N(t,e){const r=t["~standard"].validate(e);if(Dt(r))throw new Error("Promise schemas are not supported");if(r.issues)throw new Error("Validation failed");return r.value}function Or(t){return ut(t)&&"type"in t&&typeof t.type=="string"&&"~standard"in t&&ut(t["~standard"])&&"vendor"in t["~standard"]&&t["~standard"].vendor==="valibot"}function Se(t){return Or(t)}function Pe(t){return{get:(e,{invalid:r})=>{try{return Jt(e,t)}catch{throw r()}},set:(e,{invalid:r})=>{try{return Tt(e,t)}catch{throw r()}}}}const Zr=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/;function dt(t,e){if(typeof e=="string"&&Zr.test(e)){const r=new Date(e);return isNaN(r.getTime())?e:r}return e}function pt(t){for(const e of t)try{return e()}catch{continue}throw new Error("All functions failed")}function Ut(t,e){return t.type==="string"?1:e.type==="string"?-1:0}function Jt(t,e){if(e.type==="boolean")return N(e,!!t);if(e.type==="date")return N(e,new Date(t));if(e.type==="number")return N(e,Number(t));if(e.type==="literal")return pt([()=>N(e,Number(t)),()=>N(e,!!t),()=>N(e,t)]);if(e.type==="object")return N(e,JSON.parse(t,dt));if(e.type==="enum")return pt([()=>N(e,Number(t)),()=>N(e,!!t),()=>N(e,t)]);if(e.type==="array"||e.type==="tuple")return N(e,JSON.parse(t,dt));if(e.type==="union"&&"options"in e){const r=e.options.sort(Ut).map(n=>()=>Jt(t,n));return pt(r)}if(e.type==="variant"&&"options"in e){const r=e.options.sort(Ut).map(n=>()=>Jt(t,n));return pt(r)}if(e.type==="record")return N(e,JSON.parse(t,dt));if(e.type==="map")return N(e,new Map(JSON.parse(t,dt)));if(e.type==="set")return N(e,new Set(JSON.parse(t,dt)));if(e.type==="intersection")throw new Error("Intersection schemas are not supported");if(e.type==="promise")throw new Error("Promise schemas are not supported");if(e.type==="function")throw new Error("Function schemas are not supported");return N(e,t)}function Tt(t,e){if(e.type==="string"||e.type==="boolean")return N(e,t).toString();if(e.type==="date")return N(e,t).toISOString();if(e.type==="number")return N(e,Number(t)).toString();if(e.type==="literal")return N(e,t).toString();if(e.type==="object")return JSON.stringify(N(e,t));if(e.type==="enum"||e.type==="nativeEnum")return N(e,t).toString();if(e.type==="array"||e.type==="tuple")return JSON.stringify(N(e,t));if(e.type==="union"&&"options"in e){const r=e.options.sort(Ut).map(n=>()=>Tt(t,n));return pt(r)}if(e.type==="variant"&&"options"in e){const r=e.options.sort(Ut).map(n=>()=>Tt(t,n));return pt(r)}if(e.type==="record")return JSON.stringify(N(e,t));if(e.type==="map"){const r=N(e,t);return JSON.stringify(Array.from(r.entries()))}if(e.type==="set"){const r=N(e,t);return JSON.stringify(Array.from(r.values()))}if(e.type==="intersection")throw new Error("Intersection schemas are not supported");if(e.type==="promise")throw new Error("Promise schemas are not supported");if(e.type==="function")throw new Error("Function schemas are not supported");return JSON.stringify(N(e,t))}function $r(t,e){return t[e]??String}const j={invalid:t=>{throw new Q(t)}},Ae={get:t=>t,set:(t,{invalid:e})=>{if(typeof t!="string")throw e();return t}},Ft={get:(t,{invalid:e})=>{if(t==="true")return!0;if(t==="false")return!1;throw e()},set:(t,{invalid:e})=>{if(typeof t!="boolean")throw e();return t.toString()}},Mt={get:(t,{invalid:e})=>{const r=Number(t);if(isNaN(r))throw e();return r},set:(t,{invalid:e})=>{if(typeof t!="number")throw e();return t.toString()}},ve={get:(t,{invalid:e})=>{const r=new Date(t);if(isNaN(r.getTime()))throw e();return r},set:(t,{invalid:e})=>{if(typeof t!="object"||!(t instanceof Date))throw e();return t.toISOString()}},ke={get:(t,{invalid:e})=>{try{return JSON.parse(t)}catch{throw e()}},set:(t,{invalid:e})=>{try{return JSON.stringify(t)}catch{throw e()}}};function _r(t,e){switch(typeof e){case"string":return Ae.get(t,j)===e;case"number":return Mt.get(t,j)===e;case"boolean":return Ft.get(t,j)===e;default:return!1}}function et(t,e,r=!1){if(t===void 0||!F(t)){if(Lr(e))return e.defaultValue;if(r)return;throw new Q}if(e===String)return Ae.get(t,j);if(e===Boolean)return Ft.get(t,j);if(e===Number)return Mt.get(t,j);if(e===Date)return ve.get(t,j);if(e===JSON)return ke.get(t,j);if(Ur(e))return e(t,j);if(vt(e))return e.get(t,j);if(e instanceof RegExp){if(e.test(t))return t;throw new Q}if(Re(e)){if(_r(t,e))return e;throw new Q}return Ee(e)?be(e).get(t,j):Se(e)?Pe(e).get(t,j):t}function Wt(t,e,r=!1){try{return et(t,e,r)}catch(n){if(n instanceof Q)return;throw n}}function qr(t,e,r=!1){try{return z(t,e,r)}catch(n){if(n instanceof Q)return;throw n}}function z(t,e,r=!1){if(t===void 0){if(r)return"";throw new Q}if(e===Boolean)return Ft.set(t,j);if(e===Number)return Mt.set(t,j);if(e===Date)return ve.set(t,j);if(e===JSON)return ke.set(t,j);if(vt(e))return e.set(t,j);if(Re(e)){if(e!==t)throw new Q;return t.toString()}if(Ee(e))return be(e).set(t,j);if(Se(e))return Pe(e).set(t,j);try{return t.toString()}catch{throw new Q}}function Gt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Hr(t,e){const r=Array.from(t.matchAll(e));if(r.length===0)return[t];let n=0;const o=r.reduce((s,p)=>{const y=Gt(t.slice(n,p.index));y.length&&s.push(y);const[f]=p;return s.push(f),n=p.index+f.length,s},[]),a=t.slice(n);return a&&o.push(a),o}function Ir(t){const e=Ue(t.path.value);return new RegExp(`^${e}$`,"i")}function Dr(t){const e=new URLSearchParams(t.query.value);return Array.from(e.entries()).filter(([,r])=>!zt(r)).map(([r,n])=>{const o=Ue(n);return new RegExp(`${Gt(r)}=${o}(&|$)`,"i")})}function Ue(t){return Hr(t,new RegExp(Lt,"g")).map(e=>e.startsWith(wt)?Le(e):Gt(e)).join("")}function Le(t){return t.replace(new RegExp(Lt,"g"),Fr)}function Jr(t,e){const r=Ne(e);return t.replace(r,Mr)}function Qt(t,e){return Wr(e).test(t.value)}function zt(t){return new RegExp(Tr,"g").test(t)}const Lt=`\\${wt}\\??([\\w-_]+)\\${At}`,Tr=`\\${wt}\\?([\\w-_]+)\\${At}`,Fr=".*",Mr="(.*)";function Kt(t){const[e]=Ve(t,new RegExp(Lt,"g"));return e}function Ne(t){return new RegExp(`\\${wt}\\??${t}\\${At}`,"g")}function Wr(t){return new RegExp(`\\${wt}\\?${t}\\${At}`,"g")}function Ve(t,e){return Array.from(t.matchAll(e)).flatMap(([,...n])=>n.map(o=>F(o)?o:""))}function Gr(t="",e={}){return F(t)?Array.from(t.matchAll(new RegExp(Lt,"g"))).reduce((n,[o,a])=>{const s=Kt(o);if(!s)return n;const p=$r(e,s);return ct([s],n),n[a]=p,n},{}):{}}function Qr(t){return ut(t)&&typeof t.value=="string"}function rt(t){return t===void 0?M():Qr(t)?t:M(t,{})}function M(t,e){return{value:t??"",params:Gr(t,e)}}function Ce(t,e){ct(t.params,e.params);const r=`${t.value}${e.value}`;return M(r,{...t.params,...e.params})}function zr(t,e){return Ce(t,e)}function Kr(t,e){return Yr(t,e),{...t,...e}}function Yr(t,e){const r=Object.keys(t).find(n=>n in e&&typeof e[n]!=typeof t[n]);if(r)throw new he(r)}function Xr(t,e){ct(t.params,e.params);const r=[t.value,e.value].filter(F).join("&");return M(r,{...t.params,...e.params})}function tn(t,e){return ct(t,e),{...t,...e}}function Be(t){return"parent"in t&&!!t.parent}function xe(t){return"component"in t&&!!t.component}function je(t){return"props"in t&&typeof t.props=="function"}function Oe(t){return"components"in t&&!!t.components}function Ze(t){return"props"in t&&typeof t.props=="object"}function $e(t,e){return{...e,path:Ce(t.path,e.path),query:Xr(t.query,e.query),meta:Kr(t.meta,e.meta),state:tn(t.state,e.state),hash:zr(t.hash,e.hash),matches:[...t.matches,e.matched],host:t.host,depth:t.depth+1}}function Yt(){return typeof window<"u"&&typeof window.document<"u"}function Xt(t){const e=new URLSearchParams(t);return{get:(...r)=>e.get(...r),getAll:(...r)=>e.getAll(...r),set:(...r)=>{e.set(...r)},append:(...r)=>{e.append(...r)},delete:(...r)=>{e.delete(...r)},toString:(...r)=>e.toString(...r),forEach:(...r)=>{e.forEach(...r)},entries:(...r)=>e.entries(...r),keys:(...r)=>e.keys(...r),values:(...r)=>e.values(...r),has:(...r)=>e.has(...r),size:e.size,sort:()=>{e.sort()},[Symbol.iterator]:()=>e[Symbol.iterator]()}}function te(){let t=0;return()=>(++t).toString()}const en=te()();function rn(t){return t===en}const ee=te();function _e(t){return t===void 0?"":t}function nt(t,e){const r=ee(),n=_e(t.name),o=rt(t.path),a=rt(t.query),s=rt(t.hash),p=t.meta??{},y=t.state??{},f=i.markRaw({id:r,meta:p,state:y,...t,props:e}),g={id:r,matched:f,matches:[f],name:n,path:o,query:a,hash:s,meta:p,state:y,depth:1,host:M(),prefetch:t.prefetch},w=Be(t)?$e(t.parent,g):g;return ct(w.path.params,w.query.params,w.hash.params),w}const Nt={template:"<div>This is component</div>"},re=nt({name:"parentA",path:"/parentA/[paramA]"}),qe=nt({parent:re,name:"parentA.childA",path:"/childA/[?paramB]"}),nn=nt({parent:re,name:"parentA.childB",path:"/childB/[paramD]",component:Nt}),on=nt({parent:qe,name:"parentA.childA.grandChildA",path:"/[paramC]",component:Nt});nt({name:"parentB",path:"/parentB",component:Nt}),nt({name:"parentC",path:"/",component:Nt});const an="lazy",sn={components:!0,props:!1};function Vt(t){return["eager","lazy","intent"].includes(t)}function He({routerPrefetch:t,routePrefetch:e,linkPrefetch:r},n){const o=ne(r,n),a=ne(e,n),s=ne(t,n),p=[o,a,s,sn[n],an].reduce((y,f)=>Vt(y)?y:y===!0&&Vt(f)?f:y===!0&&!Vt(f)?y:y===void 0?f:y,void 0);return Vt(p)?p:!1}function ne(t,e){return ut(t)?t[e]:t}class Ie extends Error{constructor(){super("Uncaught CallbackContextAbortError");G(this,"response");this.response={status:"ABORT"}}}class ht extends Error{constructor(r){super("Uncaught CallbackContextPushError");G(this,"response");this.response={status:"PUSH",to:r}}}class Ct extends Error{constructor(r){super("Uncaught CallbackContextRejectionError");G(this,"response");this.response={status:"REJECT",type:r}}}function De(){return{reject:o=>{throw new Ct(o)},push:(...o)=>{throw new ht(o)},replace:(o,a,s)=>{if(Z(o)){const f=a??{};throw new ht([o,{...f,replace:!0}])}const p=a,y=s??{};throw new ht([o,p,{...y,replace:!0}])},abort:()=>{throw new Ie}}}function Je(t){try{const e=t();return Dt(e)?e.catch(r=>r):e}catch(e){return e}}function Te(){let t=null;function e(n){t=n}function r(n){return t?t.runWithContext(n):n()}return{setVueApp:e,runWithContext:r}}const Fe=Symbol();function cn(){const{setVueApp:t,runWithContext:e}=Te(),r=i.reactive(new Map),{push:n,replace:o,reject:a}=De(),s=(b,c,l)=>c.matches.filter(u=>He({...l,routePrefetch:u.prefetch},"props")===b).flatMap(u=>v(u)).reduce((u,{id:d,name:S,props:U})=>{if(!U)return u;const k=C(d,S,c),R=e(()=>Je(()=>U(c,{push:n,replace:o,reject:a,parent:g(c,!0)})));return u[k]=R,u},{}),p=b=>{Object.entries(b).forEach(([c,l])=>{r.set(c,l)})},y=async b=>{const c=b.matches.flatMap(v),l=[],u=[];for(const{id:d,name:S,props:U}of c){if(!U)continue;const k=C(d,S,b);if(l.push(k),!r.has(k)){const R=e(()=>Je(()=>U(b,{push:n,replace:o,reject:a,parent:g(b)})));r.set(k,R)}u.push((async()=>{const R=await r.get(k);if(R instanceof Error)throw R})())}B(l);try{return await Promise.all(u),{status:"SUCCESS"}}catch(d){if(d instanceof ht||d instanceof Ct)return d.response;throw d}},f=(b,c,l)=>{const u=C(b,c,l);return r.get(u)};function g(b,c=!1){const l=b.matches.at(-2);if(l)return je(l)?{name:l.name??"",get props(){return w(l,"default",b,c)}}:Ze(l)?{name:l.name??"",props:new Proxy({},{get(u,d){return typeof d!="string"?Reflect.get(u,d):w(l,d,b,c)}})}:{name:l.name??"",props:void 0}}function w(b,c,l,u=!1){const d=f(b.id,c,l);if(u&&!d){const S=b.name??"unknown",U=l.name||"unknown";console.warn(`
2
2
  Unable to access parent props "${c}" from route "${S}" while prefetching props for route "${U}".
3
3
  This may occur if the parent route's props were not also prefetched.
4
- `)}return d}function B(b,c,l){return[b,c,l.id,JSON.stringify(l.params)].join("-")}function v(b){return je(b)?[{id:b.id,name:"default",props:b.props}]:Ze(b)?Object.entries(b.props).map(([c,l])=>({id:b.id,name:c,props:l})):[]}function C(b){for(const c of r.keys())b.includes(c)||r.delete(c)}return{getPrefetchProps:s,setPrefetchProps:p,getProps:f,setProps:y,setVueApp:t}}function Me(){const t=i.inject(Fe);if(!t)throw new tt;return t}const sn=i.defineAsyncComponent(()=>new Promise(t=>{t({default:{template:"foo"}})}));function We(t){return t.name===sn.name&&"__asyncLoader"in t}const Ge=Symbol("visibilityObserver");function cn(t){const e=i.inject(Ge);if(!e)throw new tt;return i.watch(t,(n,o)=>{n&&e.observe(n),o&&e.unobserve(o)},{immediate:!0}),i.onUnmounted(()=>{t.value&&e.unobserve(t.value)}),{isElementVisible:i.computed(()=>t.value?e.isElementVisible(t.value):!1)}}function Qe(t,e,r){i.watch(t,(n,o)=>{n&&n.addEventListener(e,r),o&&o.removeEventListener(e,r)},{immediate:!0}),i.onUnmounted(()=>{t.value&&t.value.removeEventListener(e,r)})}function un(t){const e=new Map,r=i.ref(),{getPrefetchProps:n,setPrefetchProps:o}=Me(),{isElementVisible:a}=cn(r),s=()=>{const f=Array.from(e.values()).reduce((g,w)=>(Object.assign(g,w),g),{});o(f)};i.watch(()=>i.toValue(t),({route:f,...g})=>{e.clear(),f&&y("eager",f,g)},{immediate:!0}),i.watch(a,f=>{const{route:g,...w}=i.toValue(t);!g||!f||y("lazy",g,w)},{immediate:!0}),Qe(r,"focusin",p),Qe(r,"mouseover",p);function p(){const{route:f,...g}=i.toValue(t);f&&y("intent",f,g)}function y(f,g,w){fn(f,g,w),e.has(f)||e.set(f,n(f,g,w))}return{element:r,commit:s}}function fn(t,e,r){e.matches.forEach(n=>{He({...r,routePrefetch:n.prefetch},"components")===t&&(xe(n)&&We(n.component)&&n.component.__asyncLoader(),Oe(n)&&Object.values(n.components).forEach(a=>{We(a)&&a.__asyncLoader()}))})}const ze=Symbol("isRouterRouteSymbol");function ln(t){return typeof t=="object"&&t!==null&&ze in t}function dn(t,e){function r(c,l,u){if(typeof c=="object"){const S={...t.params,...c};return e(t.name,S,l)}const d={...t.params,[c]:l};return e(t.name,d,u)}const n=(...c)=>{const l=new URLSearchParams(t.query);l.set(...c),r({},{query:l})},o=(...c)=>{const l=new URLSearchParams(t.query);l.append(...c),r({},{query:l})},a=(...c)=>{const l=new URLSearchParams(t.query);l.delete(...c),r({},{query:l})},{id:s,matched:p,matches:y,name:f,hash:g,href:w}=i.toRefs(t),B=i.computed({get(){return new Proxy(t.params,{set(c,l,u){return r(l,u),!0}})},set(c){r(c)}}),v=i.computed({get(){return new Proxy(t.query,{get(c,l,u){switch(l){case"append":return o;case"set":return n;case"delete":return a;default:return Reflect.get(c,l,u)}}})},set(c){r({},{query:c})}}),C=i.computed({get(){return new Proxy(t.state,{set(c,l,u){return r({},{state:{...t.state,[l]:u}}),!0}})},set(c){r({},{state:c})}});return i.reactive({id:s,matched:p,matches:y,state:C,query:v,hash:g,params:B,name:f,href:w,update:r,[ze]:!0})}function Ct(t,e,{exact:r}={}){return ln(t)?e===void 0?!0:r?t.matched.name===e:t.matches.map(n=>n.name).includes(e):!1}function oe(...t){const e=new URLSearchParams;for(const r of t){const n=new URLSearchParams(r);for(const[o,a]of n.entries())e.append(o,a)}return e}function Ke(t,e={},r={}){const n=Rt(),o=i.computed(()=>{const c=i.toValue(t);return typeof c!="string"?c:Z(c)?n.find(c,i.toValue(r)):n.resolve(c,i.toValue(e),i.toValue(r))}),a=i.computed(()=>{if(o.value)return o.value.href;const c=i.toValue(t);if(Z(c))return c;console.error(new Error("Failed to resolve route in RouterLink."))}),s=i.computed(()=>Ct(n.route)&&n.route.matches.some(c=>{var l;return c.id===((l=o.value)==null?void 0:l.id)})),p=i.computed(()=>{var c;return n.route.id===((c=o.value)==null?void 0:c.id)}),y=i.computed(()=>Ct(n.route)&&Vr(o.value)&&n.route.href.startsWith(o.value.href)),f=i.computed(()=>{var c;return n.route.href===((c=o.value)==null?void 0:c.href)}),g=i.computed(()=>!!a.value&&n.isExternal(a.value)),w=i.computed(()=>{const c=i.toValue(t);return typeof c!="string"||Z(c)?i.toValue(e):i.toValue(r)}),{element:B,commit:v}=un(()=>({route:o.value,routerPrefetch:n.prefetch,linkPrefetch:w.value.prefetch})),C=c=>{v();const l={replace:(c==null?void 0:c.replace)??w.value.replace,query:oe(w.value.query,c==null?void 0:c.query),hash:(c==null?void 0:c.hash)??w.value.hash,state:{...w.value.state,...c==null?void 0:c.state}},u=i.toValue(t);return Z(u)||typeof u=="object"?n.push(u,l):n.push(u,i.toValue(e),l)};return{element:B,route:o,href:a,isMatch:s,isExactMatch:p,isActive:y,isExactActive:f,isExternal:g,push:C,replace:c=>C({...c,replace:!0})}}const pn=["href"],hn={name:"RouterLink"},Ye=i.defineComponent({...hn,props:{to:{},prefetch:{type:[Boolean,String,Object],default:void 0},query:{},hash:{},replace:{type:Boolean},state:{}},setup(t){const e=t,r=Rt(),n=i.computed(()=>C(e.to)),o=i.computed(()=>b(e.to)),a=i.computed(()=>{const{to:l,...u}=e;return u}),{element:s,isMatch:p,isExactMatch:y,isActive:f,isExactActive:g,isExternal:w,push:B}=Ke(()=>typeof e.to=="function"?e.to(r.resolve):e.to,a),v=i.computed(()=>({"router-link--match":p.value,"router-link--exact-match":y.value,"router-link--active":f.value,"router-link--exact-active":g.value}));function C(l){if(typeof l=="function"){const u=l(r.resolve);return C(u)}return Z(l)?r.find(l):l}function b(l){if(typeof l=="function"){const u=l(r.resolve);return b(u)}return Z(l)?l:l==null?void 0:l.href}function c(l){l.preventDefault(),B()}return(l,u)=>(i.openBlock(),i.createElementBlock("a",{ref_key:"element",ref:s,href:o.value,class:i.normalizeClass(["router-link",v.value]),onClick:c},[i.renderSlot(l.$slots,"default",i.normalizeProps(i.guardReactiveProps({route:n.value,isMatch:i.unref(p),isExactMatch:i.unref(y),isActive:i.unref(f),isExactActive:i.unref(g),isExternal:i.unref(w)})))],10,pn))}}),Xe=Symbol();function yn(){const t=i.inject(Xe);if(!t)throw new tt;return t}function xt(t,e){const r=Rt();function n(){if(!t)return;if(!Ct(r.route,t,e))throw new ye(t,r.route.name)}return i.watch(r.route,n,{immediate:!0,deep:!0}),r.route}const tr=Symbol();function ae(){return i.inject(tr,0)}function mn(t,e,r){return i.defineComponent({name:"PropsWrapper",expose:[],setup(){const n=i.getCurrentInstance(),o=Me(),a=xt();return()=>{const s=o.getProps(t.id,e,a);return s instanceof Error?"":Dt(s)?n!=null&&n.suspense?i.h(Rn,{component:r,props:s}):i.h(gn,{component:r,props:s}):i.h(r,s)}}})}const gn=i.defineComponent(t=>{const e=i.ref();return i.watch(()=>t.props,async r=>{e.value=await r},{immediate:!0,deep:!0}),()=>e.value instanceof Error?"":e.value?i.h(t.component,e.value):""},{props:["component","props"]}),Rn=i.defineComponent(async t=>{const e=i.ref();return e.value=await t.props,i.watch(()=>e.value,async r=>{e.value=await r},{deep:!0}),()=>e.value instanceof Error?"":e.value?i.h(t.component,e.value):""},{props:["component","props"]}),er=Symbol();function wn(){const t=new Map;return{getRouteComponents:r=>{const n=t.get(r.id);if(n)return n;const o=En(r);return t.set(r.id,o),o}}}function En(t){return Oe(t)?rr(t,t.components):xe(t)?rr(t,{default:t.component}):{default:se}}function rr(t,e){return Object.fromEntries(Object.entries(e).map(([r,n])=>[r,mn(t,r,n)]))}function bn(){const t=i.inject(er);if(!t)throw new tt;return t}const Sn={name:"RouterView"},se=i.defineComponent({...Sn,props:{name:{default:"default"}},setup(t){const e=xt(),r=Rt(),n=yn(),o=ae();i.onServerPrefetch(async()=>{await r.start()});const{getRouteComponents:a}=bn();i.provide(tr,o+1);const s=i.computed(()=>{if(!r.started.value)return null;if(n.value)return n.value.component;const p=e.matches.at(o);return p?a(p)[t.name]:null});return(p,y)=>s.value?i.renderSlot(p.$slots,"default",i.normalizeProps(i.mergeProps({key:0},{route:i.unref(e),component:s.value,rejection:i.unref(n)})),()=>[(i.openBlock(),i.createBlock(i.resolveDynamicComponent(s.value)))]):i.createCommentVNode("",!0)}});function Pn(t,e=String){const r=xt(),n=i.computed({get(){const a=r.query.get(i.toValue(t));return a===null?null:Wt(a,e)},set(a){r.query.set(i.toValue(t),z(a,e))}}),o=i.computed({get(){return r.query.getAll(i.toValue(t)).map(s=>Wt(s,e)).filter(s=>s!==null)},set(a){const s=new URLSearchParams(r.query);s.delete(i.toValue(t)),a.forEach(p=>{s.append(i.toValue(t),z(p,e))}),r.query=s}});return{value:n,values:o,remove:()=>{r.query.delete(i.toValue(t))}}}class ot{constructor(){G(this,"onBeforeRouteEnter",new Set);G(this,"onBeforeRouteUpdate",new Set);G(this,"onBeforeRouteLeave",new Set);G(this,"onAfterRouteEnter",new Set);G(this,"onAfterRouteUpdate",new Set);G(this,"onAfterRouteLeave",new Set)}}const Et=(t,e,r)=>{var a,s;const n=t.matches,o=(e==null?void 0:e.matches)??[];return((a=n.at(r))==null?void 0:a.id)!==((s=o.at(r))==null?void 0:s.id)},bt=(t,e,r)=>{var a,s;const n=t.matches,o=(e==null?void 0:e.matches)??[];return((a=n.at(r))==null?void 0:a.id)!==((s=o.at(r))==null?void 0:s.id)},St=(t,e,r)=>{var n,o;return((n=t.matches.at(r))==null?void 0:n.id)===((o=e==null?void 0:e.matches.at(r))==null?void 0:o.id)};function nr(t){switch(t){case"onBeforeRouteEnter":case"onAfterRouteEnter":return Et;case"onBeforeRouteUpdate":case"onAfterRouteUpdate":return St;case"onBeforeRouteLeave":case"onAfterRouteLeave":return bt;default:throw new Error(`Switch is not exhaustive for lifecycle: ${t}`)}}function An(t,e){const r=new ot;return t.matches.forEach((n,o)=>{n.onBeforeRouteEnter&&Et(t,e,o)&&it(n.onBeforeRouteEnter).forEach(a=>r.onBeforeRouteEnter.add(a)),n.onBeforeRouteUpdate&&St(t,e,o)&&it(n.onBeforeRouteUpdate).forEach(a=>r.onBeforeRouteUpdate.add(a))}),e==null||e.matches.forEach((n,o)=>{n.onBeforeRouteLeave&&bt(t,e,o)&&it(n.onBeforeRouteLeave).forEach(a=>r.onBeforeRouteLeave.add(a))}),r}function vn(t,e){const r=new ot;return t.matches.forEach((n,o)=>{n.onAfterRouteEnter&&Et(t,e,o)&&it(n.onAfterRouteEnter).forEach(a=>r.onAfterRouteEnter.add(a)),n.onAfterRouteUpdate&&St(t,e,o)&&it(n.onAfterRouteUpdate).forEach(a=>r.onAfterRouteUpdate.add(a))}),e==null||e.matches.forEach((n,o)=>{n.onAfterRouteLeave&&bt(t,e,o)&&it(n.onAfterRouteLeave).forEach(a=>r.onAfterRouteLeave.add(a))}),r}function kn(t,e,r){const n=new ot;return t.matches.forEach((o,a)=>{Et(t,e,a)&&r.onBeforeRouteEnter.forEach(s=>n.onBeforeRouteEnter.add(s)),St(t,e,a)&&r.onBeforeRouteUpdate.forEach(s=>n.onBeforeRouteUpdate.add(s))}),e==null||e.matches.forEach((o,a)=>{bt(t,e,a)&&r.onBeforeRouteLeave.forEach(s=>n.onBeforeRouteLeave.add(s))}),n}function Un(t,e,r){const n=new ot;return t.matches.forEach((o,a)=>{Et(t,e,a)&&r.onAfterRouteEnter.forEach(s=>n.onAfterRouteEnter.add(s)),St(t,e,a)&&r.onAfterRouteUpdate.forEach(s=>n.onAfterRouteUpdate.add(s))}),e==null||e.matches.forEach((o,a)=>{bt(t,e,a)&&r.onAfterRouteLeave.forEach(s=>n.onAfterRouteLeave.add(s))}),n}const or=Symbol();function Ln(){const{setVueApp:t,runWithContext:e}=Te(),r={global:new ot,component:new ot},{reject:n,push:o,replace:a,abort:s}=De(),p=u=>(r.global.onBeforeRouteEnter.add(u),()=>r.global.onBeforeRouteEnter.delete(u)),y=u=>(r.global.onBeforeRouteUpdate.add(u),()=>r.global.onBeforeRouteUpdate.delete(u)),f=u=>(r.global.onBeforeRouteLeave.add(u),()=>r.global.onBeforeRouteLeave.delete(u)),g=u=>(r.global.onAfterRouteEnter.add(u),()=>r.global.onAfterRouteEnter.delete(u)),w=u=>(r.global.onAfterRouteUpdate.add(u),()=>r.global.onAfterRouteUpdate.delete(u)),B=u=>(r.global.onAfterRouteLeave.add(u),()=>r.global.onAfterRouteLeave.delete(u));async function v({to:u,from:d}){const{global:S,component:U}=r,k=An(u,d),R=kn(u,d,S),h=[...R.onBeforeRouteEnter,...k.onBeforeRouteEnter,...R.onBeforeRouteUpdate,...k.onBeforeRouteUpdate,...U.onBeforeRouteUpdate,...R.onBeforeRouteLeave,...k.onBeforeRouteLeave,...U.onBeforeRouteLeave];try{const m=h.map(L=>e(()=>L(u,{from:d,reject:n,push:o,replace:a,abort:s})));await Promise.all(m)}catch(m){if(m instanceof ht||m instanceof Bt||m instanceof Ie)return m.response;throw m}return{status:"SUCCESS"}}async function C({to:u,from:d}){const{global:S,component:U}=r,k=vn(u,d),R=Un(u,d,S),h=[...U.onAfterRouteLeave,...k.onAfterRouteLeave,...R.onAfterRouteLeave,...U.onAfterRouteUpdate,...k.onAfterRouteUpdate,...R.onAfterRouteUpdate,...U.onAfterRouteEnter,...k.onAfterRouteEnter,...R.onAfterRouteEnter];try{const m=h.map(L=>e(()=>L(u,{from:d,reject:n,push:o,replace:a})));await Promise.all(m)}catch(m){if(m instanceof ht||m instanceof Bt)return m.response;throw m}return{status:"SUCCESS"}}return{runBeforeRouteHooks:v,runAfterRouteHooks:C,addComponentBeforeRouteHook:({lifecycle:u,depth:d,hook:S})=>{const U=nr(u),k=r.component[u],R=(h,m)=>{if(U(h,m.from,d))return S(h,m)};return k.add(R),()=>k.delete(R)},addComponentAfterRouteHook:({lifecycle:u,depth:d,hook:S})=>{const U=nr(u),k=r.component[u],R=(h,m)=>{if(U(h,m.from,d))return S(h,m)};return k.add(R),()=>k.delete(R)},addGlobalRouteHooks:u=>{u.onBeforeRouteEnter.forEach(d=>p(d)),u.onBeforeRouteUpdate.forEach(d=>y(d)),u.onBeforeRouteLeave.forEach(d=>f(d)),u.onAfterRouteEnter.forEach(d=>g(d)),u.onAfterRouteUpdate.forEach(d=>w(d)),u.onAfterRouteLeave.forEach(d=>B(d))},onBeforeRouteEnter:p,onBeforeRouteUpdate:y,onBeforeRouteLeave:f,onAfterRouteEnter:g,onAfterRouteUpdate:w,onAfterRouteLeave:B,setVueApp:t}}function ar(){const t=i.inject(or);if(!t)throw new tt;return t}function sr(t){return e=>{const r=ae(),o=ar().addComponentBeforeRouteHook({lifecycle:t,hook:e,depth:r-1});return i.onUnmounted(o),o}}function ir(t){return e=>{const r=ae(),o=ar().addComponentAfterRouteHook({lifecycle:t,hook:e,depth:r-1});return i.onUnmounted(o),o}}const Nn=sr("onBeforeRouteLeave"),Vn=sr("onBeforeRouteUpdate"),Bn=ir("onAfterRouteLeave"),Cn=ir("onAfterRouteUpdate");function Y(){return Y=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)({}).hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},Y.apply(null,arguments)}var _;(function(t){t.Pop="POP",t.Push="PUSH",t.Replace="REPLACE"})(_||(_={}));var yt=process.env.NODE_ENV!=="production"?function(t){return Object.freeze(t)}:function(t){return t};function at(t,e){if(!t){typeof console<"u"&&console.warn(e);try{throw new Error(e)}catch{}}}var jt="beforeunload",xn="hashchange",cr="popstate";function ur(t){t===void 0&&(t={});var e=t,r=e.window,n=r===void 0?document.defaultView:r,o=n.history;function a(){var R=n.location,h=R.pathname,m=R.search,L=R.hash,V=o.state||{};return[V.idx,yt({pathname:h,search:m,hash:L,state:V.usr||null,key:V.key||"default"})]}var s=null;function p(){if(s)v.call(s),s=null;else{var R=_.Pop,h=a(),m=h[0],L=h[1];if(v.length)if(m!=null){var V=g-m;V&&(s={action:R,location:L,retry:function(){U(V*-1)}},U(V))}else process.env.NODE_ENV!=="production"&&at(!1,"You are trying to block a POP navigation to a location that was not created by the history library. The block will fail silently in production, but in general you should do all navigation with the history library (instead of using window.history.pushState directly) to avoid this situation.");else u(R)}}n.addEventListener(cr,p);var y=_.Pop,f=a(),g=f[0],w=f[1],B=mt(),v=mt();g==null&&(g=0,o.replaceState(Y({},o.state,{idx:g}),""));function C(R){return typeof R=="string"?R:st(R)}function b(R,h){return h===void 0&&(h=null),yt(Y({pathname:w.pathname,hash:"",search:""},typeof R=="string"?Pt(R):R,{state:h,key:Zt()}))}function c(R,h){return[{usr:R.state,key:R.key,idx:h},C(R)]}function l(R,h,m){return!v.length||(v.call({action:R,location:h,retry:m}),!1)}function u(R){y=R;var h=a();g=h[0],w=h[1],B.call({action:y,location:w})}function d(R,h){var m=_.Push,L=b(R,h);function V(){d(R,h)}if(l(m,L,V)){var O=c(L,g+1),$=O[0],H=O[1];try{o.pushState($,"",H)}catch{n.location.assign(H)}u(m)}}function S(R,h){var m=_.Replace,L=b(R,h);function V(){S(R,h)}if(l(m,L,V)){var O=c(L,g),$=O[0],H=O[1];o.replaceState($,"",H),u(m)}}function U(R){o.go(R)}var k={get action(){return y},get location(){return w},createHref:C,push:d,replace:S,go:U,back:function(){U(-1)},forward:function(){U(1)},listen:function(h){return B.push(h)},block:function(h){var m=v.push(h);return v.length===1&&n.addEventListener(jt,Ot),function(){m(),v.length||n.removeEventListener(jt,Ot)}}};return k}function jn(t){t===void 0&&(t={});var e=t,r=e.window,n=r===void 0?document.defaultView:r,o=n.history;function a(){var h=Pt(n.location.hash.substr(1)),m=h.pathname,L=m===void 0?"/":m,V=h.search,O=V===void 0?"":V,$=h.hash,H=$===void 0?"":$,I=o.state||{};return[I.idx,yt({pathname:L,search:O,hash:H,state:I.usr||null,key:I.key||"default"})]}var s=null;function p(){if(s)v.call(s),s=null;else{var h=_.Pop,m=a(),L=m[0],V=m[1];if(v.length)if(L!=null){var O=g-L;O&&(s={action:h,location:V,retry:function(){k(O*-1)}},k(O))}else process.env.NODE_ENV!=="production"&&at(!1,"You are trying to block a POP navigation to a location that was not created by the history library. The block will fail silently in production, but in general you should do all navigation with the history library (instead of using window.history.pushState directly) to avoid this situation.");else d(h)}}n.addEventListener(cr,p),n.addEventListener(xn,function(){var h=a(),m=h[1];st(m)!==st(w)&&p()});var y=_.Pop,f=a(),g=f[0],w=f[1],B=mt(),v=mt();g==null&&(g=0,o.replaceState(Y({},o.state,{idx:g}),""));function C(){var h=document.querySelector("base"),m="";if(h&&h.getAttribute("href")){var L=n.location.href,V=L.indexOf("#");m=V===-1?L:L.slice(0,V)}return m}function b(h){return C()+"#"+(typeof h=="string"?h:st(h))}function c(h,m){return m===void 0&&(m=null),yt(Y({pathname:w.pathname,hash:"",search:""},typeof h=="string"?Pt(h):h,{state:m,key:Zt()}))}function l(h,m){return[{usr:h.state,key:h.key,idx:m},b(h)]}function u(h,m,L){return!v.length||(v.call({action:h,location:m,retry:L}),!1)}function d(h){y=h;var m=a();g=m[0],w=m[1],B.call({action:y,location:w})}function S(h,m){var L=_.Push,V=c(h,m);function O(){S(h,m)}if(process.env.NODE_ENV!=="production"&&at(V.pathname.charAt(0)==="/","Relative pathnames are not supported in hash history.push("+JSON.stringify(h)+")"),u(L,V,O)){var $=l(V,g+1),H=$[0],I=$[1];try{o.pushState(H,"",I)}catch{n.location.assign(I)}d(L)}}function U(h,m){var L=_.Replace,V=c(h,m);function O(){U(h,m)}if(process.env.NODE_ENV!=="production"&&at(V.pathname.charAt(0)==="/","Relative pathnames are not supported in hash history.replace("+JSON.stringify(h)+")"),u(L,V,O)){var $=l(V,g),H=$[0],I=$[1];o.replaceState(H,"",I),d(L)}}function k(h){o.go(h)}var R={get action(){return y},get location(){return w},createHref:b,push:S,replace:U,go:k,back:function(){k(-1)},forward:function(){k(1)},listen:function(m){return B.push(m)},block:function(m){var L=v.push(m);return v.length===1&&n.addEventListener(jt,Ot),function(){L(),v.length||n.removeEventListener(jt,Ot)}}};return R}function fr(t){t===void 0&&(t={});var e=t,r=e.initialEntries,n=r===void 0?["/"]:r,o=e.initialIndex,a=n.map(function(d){var S=yt(Y({pathname:"/",search:"",hash:"",state:null,key:Zt()},typeof d=="string"?Pt(d):d));return process.env.NODE_ENV!=="production"&&at(S.pathname.charAt(0)==="/","Relative pathnames are not supported in createMemoryHistory({ initialEntries }) (invalid entry: "+JSON.stringify(d)+")"),S}),s=lr(o??a.length-1,0,a.length-1),p=_.Pop,y=a[s],f=mt(),g=mt();function w(d){return typeof d=="string"?d:st(d)}function B(d,S){return S===void 0&&(S=null),yt(Y({pathname:y.pathname,search:"",hash:""},typeof d=="string"?Pt(d):d,{state:S,key:Zt()}))}function v(d,S,U){return!g.length||(g.call({action:d,location:S,retry:U}),!1)}function C(d,S){p=d,y=S,f.call({action:p,location:y})}function b(d,S){var U=_.Push,k=B(d,S);function R(){b(d,S)}process.env.NODE_ENV!=="production"&&at(y.pathname.charAt(0)==="/","Relative pathnames are not supported in memory history.push("+JSON.stringify(d)+")"),v(U,k,R)&&(s+=1,a.splice(s,a.length,k),C(U,k))}function c(d,S){var U=_.Replace,k=B(d,S);function R(){c(d,S)}process.env.NODE_ENV!=="production"&&at(y.pathname.charAt(0)==="/","Relative pathnames are not supported in memory history.replace("+JSON.stringify(d)+")"),v(U,k,R)&&(a[s]=k,C(U,k))}function l(d){var S=lr(s+d,0,a.length-1),U=_.Pop,k=a[S];function R(){l(d)}v(U,k,R)&&(s=S,C(U,k))}var u={get index(){return s},get action(){return p},get location(){return y},createHref:w,push:b,replace:c,go:l,back:function(){l(-1)},forward:function(){l(1)},listen:function(S){return f.push(S)},block:function(S){return g.push(S)}};return u}function lr(t,e,r){return Math.min(Math.max(t,e),r)}function Ot(t){t.preventDefault(),t.returnValue=""}function mt(){var t=[];return{get length(){return t.length},push:function(r){return t.push(r),function(){t=t.filter(function(n){return n!==r})}},call:function(r){t.forEach(function(n){return n&&n(r)})}}}function Zt(){return Math.random().toString(36).substr(2,8)}function st(t){var e=t.pathname,r=e===void 0?"/":e,n=t.search,o=n===void 0?"":n,a=t.hash,s=a===void 0?"":a;return o&&o!=="?"&&(r+=o.charAt(0)==="?"?o:"?"+o),s&&s!=="#"&&(r+=s.charAt(0)==="#"?s:"#"+s),r}function Pt(t){var e={};if(t){var r=t.indexOf("#");r>=0&&(e.hash=t.substr(r),t=t.substr(0,r));var n=t.indexOf("?");n>=0&&(e.search=t.substr(n),t=t.substr(0,n)),t&&(e.pathname=t)}return e}const dr=Symbol();function On(t,e){const r=i.reactive({...t}),n=s=>{Object.assign(r,{[dr]:!1,...s})},o=r,a=dn(o,e);return{currentRoute:o,routerRoute:a,updateRoute:n}}function q(t){return!t.startsWith("http")?$n(t):Zn(t)}function Zn(t){const{protocol:e,host:r,pathname:n,search:o,searchParams:a,hash:s}=new URL(t,t);return{protocol:e,host:r,pathname:n,search:o,searchParams:a,hash:s}}function $n(t){const{pathname:e,search:r,searchParams:n,hash:o}=new URL(t,"https://localhost");return{pathname:e,search:r,searchParams:n,hash:o}}function _n(t){return e=>{const{host:r}=q(e);return!(r===void 0||r===t)}}function qn({mode:t,listener:e}){const r=Hn(t),n=(y,f)=>{if(f!=null&&f.replace){r.replace(y,f.state);return}r.push(y,f==null?void 0:f.state)},o=()=>{const y=st(r.location);r.replace(y)};let a;return{...r,update:n,refresh:o,startListening:()=>{a==null||a(),a=r.listen(e)},stopListening:()=>{a==null||a()}}}function Hn(t="auto"){switch(t){case"auto":return Yt()?ur():fr();case"browser":return ur();case"memory":return fr();case"hash":return jn();default:const e=t;throw new Error(`Switch is not exhaustive for mode: ${e}`)}}function In(t){return i.defineComponent(()=>()=>i.h("h1",t),{name:t,props:[]})}function Dn(t){const e=a=>i.markRaw(t[a]??In(a)),r=a=>{const s=i.markRaw(e(a)),p={id:ee(),component:s,meta:{},state:{}};return{id:p.id,matched:p,matches:[p],name:a,query:Xt(""),params:{},state:{},href:"/",hash:"",[dr]:!0}},n=a=>{if(!a){o.value=null;return}const s=e(a);o.value={type:a,component:s}},o=i.ref(null);return{setRejection:n,rejection:o,getRejectionRoute:r}}class Jn extends Error{constructor(){super("initialUrl must be set if window.location is unavailable")}}function Tn(t){if(t)return t;if(Yt())return window.location.toString();throw new Jn}function pr(t){return!!t&&typeof t=="object"}const $t=!0;function Fn(t,e,r){if(pr(t)&&e in t){const n=t[e];return typeof n=="string"?et(n,r,$t):n}return et(void 0,r,$t)}function hr(t,e){const r={};for(const[n,o]of Object.entries(t)){const a=Fn(e,n,o);r[n]=a}return r}function Mn(t,e,r){if(pr(t)&&e in t){const n=t[e];return z(n,r,$t)}return z(void 0,r,$t)}const yr=(t,e)=>{const r={};for(const[n,o]of Object.entries(t)){const a=Mn(e,n,o);r[n]=a}return r};function Wn(){const t=i.reactive(new Map),e=Yt()?s():null,r=p=>{t.set(p,!1),e==null||e.observe(p)},n=p=>{t.delete(p),e==null||e.unobserve(p)},o=()=>{e==null||e.disconnect()},a=p=>t.get(p)??!1;function s(){return new IntersectionObserver(p=>{p.forEach(y=>{t.set(y.target,y.isIntersecting)})})}return{observe:r,unobserve:n,disconnect:o,isElementVisible:a}}class Gn extends Error{constructor(e){super(`Route not found: "${e}"`)}}function mr(t,e,r){const n=Jr(e.value,r),o=Le(n),[a]=Ve(t,new RegExp(o,"g"));return a}function gr(t,e,r,n){const o=Qt(e,r),a=z(n,e.params[r],o);return t.replace(Ne(r),a)}function Rr({protocol:t,host:e,pathname:r,search:n,searchParams:o,hash:a}){const s=new URL("https://localhost");t&&(s.protocol=t),e&&(s.host=e),r&&(s.pathname=r),o?s.search=new URLSearchParams(o).toString():n&&(s.search=n),a&&(s.hash=a);const p=s.toString().replace(/^https:\/\/localhost\/*/,"/");return _t(p)}function Qn(t,e={}){const{params:r={},query:n}=e,o=Kn(t.query,r),a=oe(o,n),s=wr(t.path,r),p=t.hash.value?wr(t.hash,r):e.hash,y=zn(t.host,r),{protocol:f,host:g}=q(y);return Rr({protocol:f,host:g,pathname:s,searchParams:a,hash:p})}function zn(t,e){const r=t.value&&!t.value.startsWith("http")?`https://${t.value}`:t.value;return Object.keys(t.params).reduce((n,o)=>gr(n,t,o,e[o]),r)}function wr(t,e){return Object.keys(t.params).reduce((r,n)=>gr(r,t,n,e[n]),t.value)}function Kn(t,e){const r=new URLSearchParams(t.value);if(!t.value)return r;for(const[n,o]of Array.from(r.entries())){const a=Kt(o);if(!a)continue;const p=zt(o),y=z(e[a],t.params[a],p),f=e[a]===void 0&&y==="";p&&f?r.delete(n,o):r.set(n,y)}return r}const Yn=(t,e)=>{try{ie(t,e)}catch{return!1}return!0},ie=(t,e)=>{const{protocol:r,host:n,pathname:o,search:a,hash:s}=q(e);return{...ce(t.host,`${r}//${n}`),...ce(t.path,o),...Xn(t.query,a),...ce(t.hash,s)}};function ce(t,e){const r={},n=decodeURIComponent(e);for(const[o,a]of Object.entries(t.params)){const s=mr(n,t,o),p=Qt(t,o),y=et(s,a,p);r[o]=y}return r}function Xn(t,e){const r={},n=new URLSearchParams(t.value),o=new URLSearchParams(e);for(const[a,s]of Array.from(n.entries())){const p=Kt(s);if(!p)continue;const f=zt(s),g=o.get(a)??void 0,w=et(g,t.params[p],f);r[p]=w}return r}function to(t,e={},r={}){const n=Qn(t,{params:e,query:r.query,hash:r.hash}),{search:o,hash:a}=q(n);return{id:t.id,matched:t.matched,matches:t.matches,name:t.name,query:Xt(o),params:ie(t,n),state:hr(t.state,r.state),hash:a,href:n}}const eo=t=>"name"in t.matched&&!!t.matched.name,ro=(t,e)=>{const{pathname:r}=q(e);return Ir(t).test(r)},no=(t,e)=>{const{search:r}=q(e);return Dr(t).every(o=>o.test(r))},ue=(t,e)=>{const{hash:r}=q(e),{value:n}=t.hash;return F(n)?`#${n.replace(/^#*/,"")}`.toLowerCase()===r.toLowerCase():!0};function oo(t){const{searchParams:e,pathname:r}=q(t),n=-1,o=1;return(a,s)=>{const p=br(a,e),y=Er(a,r),f=br(s,e),g=Er(s,r);return a.depth>s.depth?n:a.depth<s.depth?o:p+y>f+g?n:p+y<f+g?o:ue(a,t)?n:ue(s,t)?o:0}}function Er(t,e){const r=Object.keys(t.path.params).filter(o=>Qt(t.path,o)).map(o=>o),n=r.filter(o=>mr(e,t.path,o)===void 0);return r.length-n.length}function br(t,e){const r=new URLSearchParams(e),n=new URLSearchParams(t.query.value),o=Array.from(n.keys()),a=o.filter(s=>!r.has(s));return o.length-a.length}const ao=[eo,ro,no,ue,Yn];function so(t,e){const r=oo(e);return t.filter(n=>ao.every(o=>o(n,e))).sort(r)}function io(t,e,r){const n=so(t,e);if(!n.length)return;const[o]=n,{searchParams:a,hash:s}=q(e);return{id:o.id,matched:o.matched,matches:o.matches,name:o.name,query:Xt(a),params:ie(o,e),state:hr(o.state,r),hash:s,href:_t(e)}}function Sr(t,e){const r=typeof t=="string"?q(t):t,n=typeof e=="string"?q(e):e,o=r.searchParams??new URLSearchParams(r.search),a=n.searchParams??new URLSearchParams(n.search);return Rr({protocol:F(n.protocol)?n.protocol:r.protocol,host:F(n.host)?n.host:r.host,pathname:F(n.pathname)?n.pathname:r.pathname,searchParams:oe(a,o),hash:F(n.hash)?n.hash:r.hash})}function co(t,e){return F(e)?t.map(r=>{const n=`${e}${r.path.value}`;return{...r,path:M(n,r.path.params)}}):t}class uo extends Error{constructor(e){super(`Invalid Name "${e}": Router does not support multiple routes with the same name. All name names must be unique.`)}}function fo(t){const e=t.map(({name:r})=>r);for(const r of e)if(ge(e,r)>1)throw new uo(r)}function lo(t,e=[],r){const n=[...t,...e.map(o=>o.routes)].flat();return fo(n),co(n,r)}function po(t={},e=[]){const r=new ot;return gt("onBeforeRouteEnter",t,e).forEach(n=>r.onBeforeRouteEnter.add(n)),gt("onBeforeRouteUpdate",t,e).forEach(n=>r.onBeforeRouteUpdate.add(n)),gt("onBeforeRouteLeave",t,e).forEach(n=>r.onBeforeRouteLeave.add(n)),gt("onAfterRouteEnter",t,e).forEach(n=>r.onAfterRouteEnter.add(n)),gt("onAfterRouteUpdate",t,e).forEach(n=>r.onAfterRouteUpdate.add(n)),gt("onAfterRouteLeave",t,e).forEach(n=>r.onAfterRouteLeave.add(n)),r}function gt(t,e,r){return[e[t],...r.map(o=>o[t])].flat().filter(o=>o!==void 0)}function ho(t,e,r=[]){const n=lo(t,r,e==null?void 0:e.base),o=Ln();o.addGlobalRouteHooks(po(e,r));const a=te(),s=an(),p=wn(),y=Wn(),f=qn({mode:e==null?void 0:e.historyMode,listener:({location:P})=>{const x=st(P);w(x,{state:P.state,replace:!0})}});function g(P,x={}){return io(n,P,x.state)}async function w(P,x={}){const K=a();if(f.stopListening(),L(P)){f.update(P,x);return}const J=g(P,x)??u("NotFound"),D=Ao(K),X=await o.runBeforeRouteHooks({to:J,from:D});switch(X.status){case"ABORT":return;case"PUSH":f.update(P,x),await v(...X.to);return;case"REJECT":f.update(P,x),c(X.type);break;case"SUCCESS":f.update(P,x),c(null);break;default:throw new Error(`Switch is not exhaustive for before hook response status: ${JSON.stringify(X)}`)}const fe=K;s.setProps(J).then(T=>{if(fe===K)switch(T.status){case"SUCCESS":break;case"PUSH":v(...T.to);break;case"REJECT":c(T.type);break;default:const le=T;throw new Error(`Switch is not exhaustive for prop store response status: ${JSON.stringify(le)}`)}}),k(J);const W=await o.runAfterRouteHooks({to:J,from:D});switch(W.status){case"PUSH":await v(...W.to);break;case"REJECT":c(W.type);break;case"SUCCESS":break;default:const T=W;throw new Error(`Switch is not exhaustive for after hook response status: ${JSON.stringify(T)}`)}f.startListening()}const B=(P,x={},K={})=>{const J=n.find(D=>D.name===P);if(!J)throw new Gn(String(P));return to(J,x,K)},v=(P,x,K)=>{if(Z(P)){const W={...x},T=Sr(P,{searchParams:W.query,hash:W.hash});return w(T,W)}if(typeof P=="string"){const{replace:W,...T}={...K},le={...x},de=B(P,le,T),ko=yr({...de.matched.state},{...de.state,...T.state});return w(de.href,{replace:W,state:ko})}const{replace:J,...D}={...x},X=yr({...P.matched.state},{...P.state,...D.state}),fe=Sr(P.href,{searchParams:D.query,hash:D.hash});return w(fe,{replace:J,state:X})},C=(P,x,K)=>{if(Z(P)){const D={...x,replace:!0};return v(P,D)}if(typeof P=="string"){const D={...K,replace:!0},X={...x};return v(P,X,D)}const J={...x,replace:!0};return v(P,J)},b=P=>{c(P)},{setRejection:c,rejection:l,getRejectionRoute:u}=Dn({...r.reduce((P,x)=>({...P,...x.rejections}),{}),...e==null?void 0:e.rejections}),d=u("NotFound"),{currentRoute:S,routerRoute:U,updateRoute:k}=On(d,v),R=Tn(e==null?void 0:e.initialUrl),h=f.location.state,{host:m}=q(R),L=_n(m);let V=!1;const O=i.ref(!1),{promise:$,resolve:H}=Promise.withResolvers();async function I(){if(V)return $;V=!0,Cr(n)&&await xr(),await w(R,{replace:!0,state:h}),f.startListening(),H(),O.value=!0}function Ar(){f.stopListening()}function Ao(P){return tn(P)?null:{...S}}function vo(P){o.setVueApp(P),s.setVueApp(P),P.component("RouterView",se),P.component("RouterLink",Ye),P.provide(Xe,l),P.provide(or,o),P.provide(Fe,s),P.provide(er,p),P.provide(Ge,y),P.provide(me,vr),I()}const vr={route:U,resolve:B,find:g,push:v,replace:C,reject:b,refresh:f.refresh,forward:f.forward,back:f.back,go:f.go,install:vo,isExternal:L,onBeforeRouteEnter:o.onBeforeRouteEnter,onBeforeRouteUpdate:o.onBeforeRouteUpdate,onBeforeRouteLeave:o.onBeforeRouteLeave,onAfterRouteEnter:o.onAfterRouteEnter,onAfterRouteUpdate:o.onAfterRouteUpdate,onAfterRouteLeave:o.onAfterRouteLeave,prefetch:e==null?void 0:e.prefetch,start:I,started:O,stop:Ar};return vr}function yo(t){return{routes:t.routes??[],rejections:t.rejections??{},...t}}function Pr(t){return{get:(e,{invalid:r})=>{for(const n of t){const o=Wt(e,n);if(o!==void 0)return o}throw r(`Value ${e} does not satisfy any of the possible values`)},set:(e,{invalid:r})=>{for(const n of t){const o=qr(e,n);if(o!==void 0)return o}throw r(`Value ${e} does not satisfy any of the possible values`)}}}const mo={separator:","};function go(t,e={}){const{separator:r}={...mo,...e},n=Pr(t);return{get:(o,a)=>o.split(r).map(s=>n.get(s,a)),set:(o,a)=>{if(!Array.isArray(o))throw a.invalid("Expected an array");return o.map(s=>n.set(s,a)).join(r)}}}const Ro={separator:","};function wo(t,e={}){const{separator:r}={...Ro,...e};return{get:n=>{const o=n.split(r);return t.map((a,s)=>et(o.at(s),a))},set:(n,{invalid:o})=>{if(!Array.isArray(n))throw o("Expected a tuple");if(n.length!==t.length)throw o(`Expected tuple with ${t.length} values but received ${n.length} values`);return t.map((a,s)=>z(n.at(s),a)).join(r)}}}const Eo=M,bo=M,So=M;function Po(t){const e=ee(),r=_e(t.name),n=rt(t.path),o=rt(t.query),a=rt(t.hash),s=t.meta??{},p=rt(t.host),y=i.markRaw({id:e,meta:{},state:{},...t}),f={id:e,matched:y,matches:[y],name:r,host:p,path:n,query:o,hash:a,meta:s,depth:1,state:{}},g=Ce(t)?$e(t.parent,f):f;return ct(g.path.params,g.query.params,g.host.params,g.hash.params),g}A.DuplicateParamsError=pe,A.MetaPropertyConflict=he,A.RouterLink=Ye,A.RouterNotInstalledError=tt,A.RouterView=se,A.UseRouteInvalidError=ye,A.arrayOf=go,A.asUrl=_t,A.createExternalRoute=Po,A.createParam=we,A.createRoute=nt,A.createRouter=ho,A.createRouterPlugin=yo,A.host=bo,A.isRoute=Ct,A.isUrl=Z,A.onAfterRouteLeave=Bn,A.onAfterRouteUpdate=Cn,A.onBeforeRouteLeave=Nn,A.onBeforeRouteUpdate=Vn,A.path=Eo,A.query=So,A.tupleOf=wo,A.unionOf=Pr,A.useLink=Ke,A.useQueryValue=Pn,A.useRoute=xt,A.useRouter=Rt,A.withDefault=Nr,A.withParams=M,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"})});
4
+ `)}return d}function C(b,c,l){return[b,c,l.id,JSON.stringify(l.params)].join("-")}function v(b){return je(b)?[{id:b.id,name:"default",props:b.props}]:Ze(b)?Object.entries(b.props).map(([c,l])=>({id:b.id,name:c,props:l})):[]}function B(b){for(const c of r.keys())b.includes(c)||r.delete(c)}return{getPrefetchProps:s,setPrefetchProps:p,getProps:f,setProps:y,setVueApp:t}}function Me(){const t=i.inject(Fe);if(!t)throw new tt;return t}const un=i.defineAsyncComponent(()=>new Promise(t=>{t({default:{template:"foo"}})}));function We(t){return t.name===un.name&&"__asyncLoader"in t}const Ge=Symbol("visibilityObserver");function fn(t){const e=i.inject(Ge);if(!e)throw new tt;return i.watch(t,(n,o)=>{n&&e.observe(n),o&&e.unobserve(o)},{immediate:!0}),i.onUnmounted(()=>{t.value&&e.unobserve(t.value)}),{isElementVisible:i.computed(()=>t.value?e.isElementVisible(t.value):!1)}}function Qe(t,e,r){i.watch(t,(n,o)=>{n&&n.addEventListener(e,r),o&&o.removeEventListener(e,r)},{immediate:!0}),i.onUnmounted(()=>{t.value&&t.value.removeEventListener(e,r)})}function ln(t){const e=new Map,r=i.ref(),{getPrefetchProps:n,setPrefetchProps:o}=Me(),{isElementVisible:a}=fn(r),s=()=>{const f=Array.from(e.values()).reduce((g,w)=>(Object.assign(g,w),g),{});o(f)};i.watch(()=>i.toValue(t),({route:f,...g})=>{e.clear(),f&&y("eager",f,g)},{immediate:!0}),i.watch(a,f=>{const{route:g,...w}=i.toValue(t);!g||!f||y("lazy",g,w)},{immediate:!0}),Qe(r,"focusin",p),Qe(r,"mouseover",p);function p(){const{route:f,...g}=i.toValue(t);f&&y("intent",f,g)}function y(f,g,w){dn(f,g,w),e.has(f)||e.set(f,n(f,g,w))}return{element:r,commit:s}}function dn(t,e,r){e.matches.forEach(n=>{He({...r,routePrefetch:n.prefetch},"components")===t&&(xe(n)&&We(n.component)&&n.component.__asyncLoader(),Oe(n)&&Object.values(n.components).forEach(a=>{We(a)&&a.__asyncLoader()}))})}const ze=Symbol("isRouterRouteSymbol");function pn(t){return typeof t=="object"&&t!==null&&ze in t}function hn(t,e){function r(c,l,u){if(typeof c=="object"){const S={...t.params,...c};return e(t.name,S,l)}const d={...t.params,[c]:l};return e(t.name,d,u)}const n=(...c)=>{const l=new URLSearchParams(t.query);l.set(...c),r({},{query:l})},o=(...c)=>{const l=new URLSearchParams(t.query);l.append(...c),r({},{query:l})},a=(...c)=>{const l=new URLSearchParams(t.query);l.delete(...c),r({},{query:l})},{id:s,matched:p,matches:y,name:f,hash:g,href:w}=i.toRefs(t),C=i.computed({get(){return new Proxy(t.params,{set(c,l,u){return r(l,u),!0}})},set(c){r(c)}}),v=i.computed({get(){return new Proxy(t.query,{get(c,l,u){switch(l){case"append":return o;case"set":return n;case"delete":return a;default:return Reflect.get(c,l,u)}}})},set(c){r({},{query:c})}}),B=i.computed({get(){return new Proxy(t.state,{set(c,l,u){return r({},{state:{...t.state,[l]:u}}),!0}})},set(c){r({},{state:c})}});return i.reactive({id:s,matched:p,matches:y,state:B,query:v,hash:g,params:C,name:f,href:w,update:r,[ze]:!0})}function Bt(t,e,{exact:r}={}){return pn(t)?e===void 0?!0:r?t.matched.name===e:t.matches.map(n=>n.name).includes(e):!1}function oe(...t){const e=new URLSearchParams;for(const r of t){const n=new URLSearchParams(r);for(const[o,a]of n.entries())e.append(o,a)}return e}function Ke(t,e={},r={}){const n=Rt(),o=i.computed(()=>{const c=i.toValue(t);return typeof c!="string"?c:Z(c)?n.find(c,i.toValue(r)):n.resolve(c,i.toValue(e),i.toValue(r))}),a=i.computed(()=>{if(o.value)return o.value.href;const c=i.toValue(t);if(Z(c))return c;console.error(new Error("Failed to resolve route in RouterLink."))}),s=i.computed(()=>Bt(n.route)&&n.route.matches.some(c=>{var l;return c.id===((l=o.value)==null?void 0:l.id)})),p=i.computed(()=>{var c;return n.route.id===((c=o.value)==null?void 0:c.id)}),y=i.computed(()=>Bt(n.route)&&Vr(o.value)&&n.route.href.startsWith(o.value.href)),f=i.computed(()=>{var c;return n.route.href===((c=o.value)==null?void 0:c.href)}),g=i.computed(()=>!!a.value&&n.isExternal(a.value)),w=i.computed(()=>{const c=i.toValue(t);return typeof c!="string"||Z(c)?i.toValue(e):i.toValue(r)}),{element:C,commit:v}=ln(()=>({route:o.value,routerPrefetch:n.prefetch,linkPrefetch:w.value.prefetch})),B=c=>{v();const l={replace:(c==null?void 0:c.replace)??w.value.replace,query:oe(w.value.query,c==null?void 0:c.query),hash:(c==null?void 0:c.hash)??w.value.hash,state:{...w.value.state,...c==null?void 0:c.state}},u=i.toValue(t);return Z(u)||typeof u=="object"?n.push(u,l):n.push(u,i.toValue(e),l)};return{element:C,route:o,href:a,isMatch:s,isExactMatch:p,isActive:y,isExactActive:f,isExternal:g,push:B,replace:c=>B({...c,replace:!0})}}const yn=["href"],mn={name:"RouterLink"},Ye=i.defineComponent({...mn,props:{to:{},prefetch:{type:[Boolean,String,Object],default:void 0},query:{},hash:{},replace:{type:Boolean},state:{}},setup(t){const e=t,r=Rt(),n=i.computed(()=>B(e.to)),o=i.computed(()=>b(e.to)),a=i.computed(()=>{const{to:l,...u}=e;return u}),{element:s,isMatch:p,isExactMatch:y,isActive:f,isExactActive:g,isExternal:w,push:C}=Ke(()=>typeof e.to=="function"?e.to(r.resolve):e.to,a),v=i.computed(()=>({"router-link--match":p.value,"router-link--exact-match":y.value,"router-link--active":f.value,"router-link--exact-active":g.value}));function B(l){if(typeof l=="function"){const u=l(r.resolve);return B(u)}return Z(l)?r.find(l):l}function b(l){if(typeof l=="function"){const u=l(r.resolve);return b(u)}return Z(l)?l:l==null?void 0:l.href}function c(l){l.preventDefault(),C()}return(l,u)=>(i.openBlock(),i.createElementBlock("a",{ref_key:"element",ref:s,href:o.value,class:i.normalizeClass(["router-link",v.value]),onClick:c},[i.renderSlot(l.$slots,"default",i.normalizeProps(i.guardReactiveProps({route:n.value,isMatch:i.unref(p),isExactMatch:i.unref(y),isActive:i.unref(f),isExactActive:i.unref(g),isExternal:i.unref(w)})))],10,yn))}}),Xe=Symbol();function gn(){const t=i.inject(Xe);if(!t)throw new tt;return t}function xt(t,e){const r=Rt();function n(){if(!t)return;if(!Bt(r.route,t,e))throw new ye(t,r.route.name)}return i.watch(r.route,n,{immediate:!0,deep:!0}),r.route}const tr=Symbol();function ae(){return i.inject(tr,0)}function Rn(t,e,r){return i.defineComponent({name:"PropsWrapper",expose:[],setup(){const n=i.getCurrentInstance(),o=Me(),a=xt();return()=>{const s=o.getProps(t.id,e,a);return s instanceof Error?"":Dt(s)?n!=null&&n.suspense?i.h(En,{component:r,props:s}):i.h(wn,{component:r,props:s}):i.h(r,s)}}})}const wn=i.defineComponent(t=>{const e=i.ref();return i.watch(()=>t.props,async r=>{e.value=await r},{immediate:!0,deep:!0}),()=>e.value instanceof Error?"":e.value?i.h(t.component,e.value):""},{props:["component","props"]}),En=i.defineComponent(async t=>{const e=i.ref();return e.value=await t.props,i.watch(()=>e.value,async r=>{e.value=await r},{deep:!0}),()=>e.value instanceof Error?"":e.value?i.h(t.component,e.value):""},{props:["component","props"]}),er=Symbol();function bn(){const t=new Map;return{getRouteComponents:r=>{const n=t.get(r.id);if(n)return n;const o=Sn(r);return t.set(r.id,o),o}}}function Sn(t){return Oe(t)?rr(t,t.components):xe(t)?rr(t,{default:t.component}):{default:se}}function rr(t,e){return Object.fromEntries(Object.entries(e).map(([r,n])=>[r,Rn(t,r,n)]))}function Pn(){const t=i.inject(er);if(!t)throw new tt;return t}const An={name:"RouterView"},se=i.defineComponent({...An,props:{name:{default:"default"}},setup(t){const e=xt(),r=Rt(),n=gn(),o=ae();i.onServerPrefetch(async()=>{await r.start()});const{getRouteComponents:a}=Pn();i.provide(tr,o+1);const s=i.computed(()=>{if(!r.started.value)return null;if(n.value)return n.value.component;const p=e.matches.at(o);return p?a(p)[t.name]:null});return(p,y)=>s.value?i.renderSlot(p.$slots,"default",i.normalizeProps(i.mergeProps({key:0},{route:i.unref(e),component:s.value,rejection:i.unref(n)})),()=>[(i.openBlock(),i.createBlock(i.resolveDynamicComponent(s.value)))]):i.createCommentVNode("",!0)}});function vn(t,e=String){const r=xt(),n=i.computed({get(){const a=r.query.get(i.toValue(t));return a===null?null:Wt(a,e)},set(a){r.query.set(i.toValue(t),z(a,e))}}),o=i.computed({get(){return r.query.getAll(i.toValue(t)).map(s=>Wt(s,e)).filter(s=>s!==null)},set(a){const s=new URLSearchParams(r.query);s.delete(i.toValue(t)),a.forEach(p=>{s.append(i.toValue(t),z(p,e))}),r.query=s}});return{value:n,values:o,remove:()=>{r.query.delete(i.toValue(t))}}}class ot{constructor(){G(this,"onBeforeRouteEnter",new Set);G(this,"onBeforeRouteUpdate",new Set);G(this,"onBeforeRouteLeave",new Set);G(this,"onAfterRouteEnter",new Set);G(this,"onAfterRouteUpdate",new Set);G(this,"onAfterRouteLeave",new Set)}}const Et=(t,e,r)=>{var a,s;const n=t.matches,o=(e==null?void 0:e.matches)??[];return((a=n.at(r))==null?void 0:a.id)!==((s=o.at(r))==null?void 0:s.id)},bt=(t,e,r)=>{var a,s;const n=t.matches,o=(e==null?void 0:e.matches)??[];return((a=n.at(r))==null?void 0:a.id)!==((s=o.at(r))==null?void 0:s.id)},St=(t,e,r)=>{var n,o;return((n=t.matches.at(r))==null?void 0:n.id)===((o=e==null?void 0:e.matches.at(r))==null?void 0:o.id)};function nr(t){switch(t){case"onBeforeRouteEnter":case"onAfterRouteEnter":return Et;case"onBeforeRouteUpdate":case"onAfterRouteUpdate":return St;case"onBeforeRouteLeave":case"onAfterRouteLeave":return bt;default:throw new Error(`Switch is not exhaustive for lifecycle: ${t}`)}}function kn(t,e){const r=new ot;return t.matches.forEach((n,o)=>{n.onBeforeRouteEnter&&Et(t,e,o)&&it(n.onBeforeRouteEnter).forEach(a=>r.onBeforeRouteEnter.add(a)),n.onBeforeRouteUpdate&&St(t,e,o)&&it(n.onBeforeRouteUpdate).forEach(a=>r.onBeforeRouteUpdate.add(a))}),e==null||e.matches.forEach((n,o)=>{n.onBeforeRouteLeave&&bt(t,e,o)&&it(n.onBeforeRouteLeave).forEach(a=>r.onBeforeRouteLeave.add(a))}),r}function Un(t,e){const r=new ot;return t.matches.forEach((n,o)=>{n.onAfterRouteEnter&&Et(t,e,o)&&it(n.onAfterRouteEnter).forEach(a=>r.onAfterRouteEnter.add(a)),n.onAfterRouteUpdate&&St(t,e,o)&&it(n.onAfterRouteUpdate).forEach(a=>r.onAfterRouteUpdate.add(a))}),e==null||e.matches.forEach((n,o)=>{n.onAfterRouteLeave&&bt(t,e,o)&&it(n.onAfterRouteLeave).forEach(a=>r.onAfterRouteLeave.add(a))}),r}function Ln(t,e,r){const n=new ot;return t.matches.forEach((o,a)=>{Et(t,e,a)&&r.onBeforeRouteEnter.forEach(s=>n.onBeforeRouteEnter.add(s)),St(t,e,a)&&r.onBeforeRouteUpdate.forEach(s=>n.onBeforeRouteUpdate.add(s))}),e==null||e.matches.forEach((o,a)=>{bt(t,e,a)&&r.onBeforeRouteLeave.forEach(s=>n.onBeforeRouteLeave.add(s))}),n}function Nn(t,e,r){const n=new ot;return t.matches.forEach((o,a)=>{Et(t,e,a)&&r.onAfterRouteEnter.forEach(s=>n.onAfterRouteEnter.add(s)),St(t,e,a)&&r.onAfterRouteUpdate.forEach(s=>n.onAfterRouteUpdate.add(s))}),e==null||e.matches.forEach((o,a)=>{bt(t,e,a)&&r.onAfterRouteLeave.forEach(s=>n.onAfterRouteLeave.add(s))}),n}const or=Symbol();function Vn(){const{setVueApp:t,runWithContext:e}=Te(),r={global:new ot,component:new ot},{reject:n,push:o,replace:a,abort:s}=De(),p=u=>(r.global.onBeforeRouteEnter.add(u),()=>r.global.onBeforeRouteEnter.delete(u)),y=u=>(r.global.onBeforeRouteUpdate.add(u),()=>r.global.onBeforeRouteUpdate.delete(u)),f=u=>(r.global.onBeforeRouteLeave.add(u),()=>r.global.onBeforeRouteLeave.delete(u)),g=u=>(r.global.onAfterRouteEnter.add(u),()=>r.global.onAfterRouteEnter.delete(u)),w=u=>(r.global.onAfterRouteUpdate.add(u),()=>r.global.onAfterRouteUpdate.delete(u)),C=u=>(r.global.onAfterRouteLeave.add(u),()=>r.global.onAfterRouteLeave.delete(u));async function v({to:u,from:d}){const{global:S,component:U}=r,k=kn(u,d),R=Ln(u,d,S),h=[...R.onBeforeRouteEnter,...k.onBeforeRouteEnter,...R.onBeforeRouteUpdate,...k.onBeforeRouteUpdate,...U.onBeforeRouteUpdate,...R.onBeforeRouteLeave,...k.onBeforeRouteLeave,...U.onBeforeRouteLeave];try{const m=h.map(L=>e(()=>L(u,{from:d,reject:n,push:o,replace:a,abort:s})));await Promise.all(m)}catch(m){if(m instanceof ht||m instanceof Ct||m instanceof Ie)return m.response;throw m}return{status:"SUCCESS"}}async function B({to:u,from:d}){const{global:S,component:U}=r,k=Un(u,d),R=Nn(u,d,S),h=[...U.onAfterRouteLeave,...k.onAfterRouteLeave,...R.onAfterRouteLeave,...U.onAfterRouteUpdate,...k.onAfterRouteUpdate,...R.onAfterRouteUpdate,...U.onAfterRouteEnter,...k.onAfterRouteEnter,...R.onAfterRouteEnter];try{const m=h.map(L=>e(()=>L(u,{from:d,reject:n,push:o,replace:a})));await Promise.all(m)}catch(m){if(m instanceof ht||m instanceof Ct)return m.response;throw m}return{status:"SUCCESS"}}return{runBeforeRouteHooks:v,runAfterRouteHooks:B,addComponentBeforeRouteHook:({lifecycle:u,depth:d,hook:S})=>{const U=nr(u),k=r.component[u],R=(h,m)=>{if(U(h,m.from,d))return S(h,m)};return k.add(R),()=>k.delete(R)},addComponentAfterRouteHook:({lifecycle:u,depth:d,hook:S})=>{const U=nr(u),k=r.component[u],R=(h,m)=>{if(U(h,m.from,d))return S(h,m)};return k.add(R),()=>k.delete(R)},addGlobalRouteHooks:u=>{u.onBeforeRouteEnter.forEach(d=>p(d)),u.onBeforeRouteUpdate.forEach(d=>y(d)),u.onBeforeRouteLeave.forEach(d=>f(d)),u.onAfterRouteEnter.forEach(d=>g(d)),u.onAfterRouteUpdate.forEach(d=>w(d)),u.onAfterRouteLeave.forEach(d=>C(d))},onBeforeRouteEnter:p,onBeforeRouteUpdate:y,onBeforeRouteLeave:f,onAfterRouteEnter:g,onAfterRouteUpdate:w,onAfterRouteLeave:C,setVueApp:t}}function ar(){const t=i.inject(or);if(!t)throw new tt;return t}function sr(t){return e=>{const r=ae(),o=ar().addComponentBeforeRouteHook({lifecycle:t,hook:e,depth:r-1});return i.onUnmounted(o),o}}function ir(t){return e=>{const r=ae(),o=ar().addComponentAfterRouteHook({lifecycle:t,hook:e,depth:r-1});return i.onUnmounted(o),o}}const Cn=sr("onBeforeRouteLeave"),Bn=sr("onBeforeRouteUpdate"),xn=ir("onAfterRouteLeave"),jn=ir("onAfterRouteUpdate");function Y(){return Y=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)({}).hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},Y.apply(null,arguments)}var _;(function(t){t.Pop="POP",t.Push="PUSH",t.Replace="REPLACE"})(_||(_={}));var yt=process.env.NODE_ENV!=="production"?function(t){return Object.freeze(t)}:function(t){return t};function at(t,e){if(!t){typeof console<"u"&&console.warn(e);try{throw new Error(e)}catch{}}}var jt="beforeunload",On="hashchange",cr="popstate";function ur(t){t===void 0&&(t={});var e=t,r=e.window,n=r===void 0?document.defaultView:r,o=n.history;function a(){var R=n.location,h=R.pathname,m=R.search,L=R.hash,V=o.state||{};return[V.idx,yt({pathname:h,search:m,hash:L,state:V.usr||null,key:V.key||"default"})]}var s=null;function p(){if(s)v.call(s),s=null;else{var R=_.Pop,h=a(),m=h[0],L=h[1];if(v.length)if(m!=null){var V=g-m;V&&(s={action:R,location:L,retry:function(){U(V*-1)}},U(V))}else process.env.NODE_ENV!=="production"&&at(!1,"You are trying to block a POP navigation to a location that was not created by the history library. The block will fail silently in production, but in general you should do all navigation with the history library (instead of using window.history.pushState directly) to avoid this situation.");else u(R)}}n.addEventListener(cr,p);var y=_.Pop,f=a(),g=f[0],w=f[1],C=mt(),v=mt();g==null&&(g=0,o.replaceState(Y({},o.state,{idx:g}),""));function B(R){return typeof R=="string"?R:st(R)}function b(R,h){return h===void 0&&(h=null),yt(Y({pathname:w.pathname,hash:"",search:""},typeof R=="string"?Pt(R):R,{state:h,key:Zt()}))}function c(R,h){return[{usr:R.state,key:R.key,idx:h},B(R)]}function l(R,h,m){return!v.length||(v.call({action:R,location:h,retry:m}),!1)}function u(R){y=R;var h=a();g=h[0],w=h[1],C.call({action:y,location:w})}function d(R,h){var m=_.Push,L=b(R,h);function V(){d(R,h)}if(l(m,L,V)){var O=c(L,g+1),$=O[0],H=O[1];try{o.pushState($,"",H)}catch{n.location.assign(H)}u(m)}}function S(R,h){var m=_.Replace,L=b(R,h);function V(){S(R,h)}if(l(m,L,V)){var O=c(L,g),$=O[0],H=O[1];o.replaceState($,"",H),u(m)}}function U(R){o.go(R)}var k={get action(){return y},get location(){return w},createHref:B,push:d,replace:S,go:U,back:function(){U(-1)},forward:function(){U(1)},listen:function(h){return C.push(h)},block:function(h){var m=v.push(h);return v.length===1&&n.addEventListener(jt,Ot),function(){m(),v.length||n.removeEventListener(jt,Ot)}}};return k}function Zn(t){t===void 0&&(t={});var e=t,r=e.window,n=r===void 0?document.defaultView:r,o=n.history;function a(){var h=Pt(n.location.hash.substr(1)),m=h.pathname,L=m===void 0?"/":m,V=h.search,O=V===void 0?"":V,$=h.hash,H=$===void 0?"":$,I=o.state||{};return[I.idx,yt({pathname:L,search:O,hash:H,state:I.usr||null,key:I.key||"default"})]}var s=null;function p(){if(s)v.call(s),s=null;else{var h=_.Pop,m=a(),L=m[0],V=m[1];if(v.length)if(L!=null){var O=g-L;O&&(s={action:h,location:V,retry:function(){k(O*-1)}},k(O))}else process.env.NODE_ENV!=="production"&&at(!1,"You are trying to block a POP navigation to a location that was not created by the history library. The block will fail silently in production, but in general you should do all navigation with the history library (instead of using window.history.pushState directly) to avoid this situation.");else d(h)}}n.addEventListener(cr,p),n.addEventListener(On,function(){var h=a(),m=h[1];st(m)!==st(w)&&p()});var y=_.Pop,f=a(),g=f[0],w=f[1],C=mt(),v=mt();g==null&&(g=0,o.replaceState(Y({},o.state,{idx:g}),""));function B(){var h=document.querySelector("base"),m="";if(h&&h.getAttribute("href")){var L=n.location.href,V=L.indexOf("#");m=V===-1?L:L.slice(0,V)}return m}function b(h){return B()+"#"+(typeof h=="string"?h:st(h))}function c(h,m){return m===void 0&&(m=null),yt(Y({pathname:w.pathname,hash:"",search:""},typeof h=="string"?Pt(h):h,{state:m,key:Zt()}))}function l(h,m){return[{usr:h.state,key:h.key,idx:m},b(h)]}function u(h,m,L){return!v.length||(v.call({action:h,location:m,retry:L}),!1)}function d(h){y=h;var m=a();g=m[0],w=m[1],C.call({action:y,location:w})}function S(h,m){var L=_.Push,V=c(h,m);function O(){S(h,m)}if(process.env.NODE_ENV!=="production"&&at(V.pathname.charAt(0)==="/","Relative pathnames are not supported in hash history.push("+JSON.stringify(h)+")"),u(L,V,O)){var $=l(V,g+1),H=$[0],I=$[1];try{o.pushState(H,"",I)}catch{n.location.assign(I)}d(L)}}function U(h,m){var L=_.Replace,V=c(h,m);function O(){U(h,m)}if(process.env.NODE_ENV!=="production"&&at(V.pathname.charAt(0)==="/","Relative pathnames are not supported in hash history.replace("+JSON.stringify(h)+")"),u(L,V,O)){var $=l(V,g),H=$[0],I=$[1];o.replaceState(H,"",I),d(L)}}function k(h){o.go(h)}var R={get action(){return y},get location(){return w},createHref:b,push:S,replace:U,go:k,back:function(){k(-1)},forward:function(){k(1)},listen:function(m){return C.push(m)},block:function(m){var L=v.push(m);return v.length===1&&n.addEventListener(jt,Ot),function(){L(),v.length||n.removeEventListener(jt,Ot)}}};return R}function fr(t){t===void 0&&(t={});var e=t,r=e.initialEntries,n=r===void 0?["/"]:r,o=e.initialIndex,a=n.map(function(d){var S=yt(Y({pathname:"/",search:"",hash:"",state:null,key:Zt()},typeof d=="string"?Pt(d):d));return process.env.NODE_ENV!=="production"&&at(S.pathname.charAt(0)==="/","Relative pathnames are not supported in createMemoryHistory({ initialEntries }) (invalid entry: "+JSON.stringify(d)+")"),S}),s=lr(o??a.length-1,0,a.length-1),p=_.Pop,y=a[s],f=mt(),g=mt();function w(d){return typeof d=="string"?d:st(d)}function C(d,S){return S===void 0&&(S=null),yt(Y({pathname:y.pathname,search:"",hash:""},typeof d=="string"?Pt(d):d,{state:S,key:Zt()}))}function v(d,S,U){return!g.length||(g.call({action:d,location:S,retry:U}),!1)}function B(d,S){p=d,y=S,f.call({action:p,location:y})}function b(d,S){var U=_.Push,k=C(d,S);function R(){b(d,S)}process.env.NODE_ENV!=="production"&&at(y.pathname.charAt(0)==="/","Relative pathnames are not supported in memory history.push("+JSON.stringify(d)+")"),v(U,k,R)&&(s+=1,a.splice(s,a.length,k),B(U,k))}function c(d,S){var U=_.Replace,k=C(d,S);function R(){c(d,S)}process.env.NODE_ENV!=="production"&&at(y.pathname.charAt(0)==="/","Relative pathnames are not supported in memory history.replace("+JSON.stringify(d)+")"),v(U,k,R)&&(a[s]=k,B(U,k))}function l(d){var S=lr(s+d,0,a.length-1),U=_.Pop,k=a[S];function R(){l(d)}v(U,k,R)&&(s=S,B(U,k))}var u={get index(){return s},get action(){return p},get location(){return y},createHref:w,push:b,replace:c,go:l,back:function(){l(-1)},forward:function(){l(1)},listen:function(S){return f.push(S)},block:function(S){return g.push(S)}};return u}function lr(t,e,r){return Math.min(Math.max(t,e),r)}function Ot(t){t.preventDefault(),t.returnValue=""}function mt(){var t=[];return{get length(){return t.length},push:function(r){return t.push(r),function(){t=t.filter(function(n){return n!==r})}},call:function(r){t.forEach(function(n){return n&&n(r)})}}}function Zt(){return Math.random().toString(36).substr(2,8)}function st(t){var e=t.pathname,r=e===void 0?"/":e,n=t.search,o=n===void 0?"":n,a=t.hash,s=a===void 0?"":a;return o&&o!=="?"&&(r+=o.charAt(0)==="?"?o:"?"+o),s&&s!=="#"&&(r+=s.charAt(0)==="#"?s:"#"+s),r}function Pt(t){var e={};if(t){var r=t.indexOf("#");r>=0&&(e.hash=t.substr(r),t=t.substr(0,r));var n=t.indexOf("?");n>=0&&(e.search=t.substr(n),t=t.substr(0,n)),t&&(e.pathname=t)}return e}const dr=Symbol();function $n(t,e){const r=i.reactive({...t}),n=s=>{Object.assign(r,{[dr]:!1,...s})},o=r,a=hn(o,e);return{currentRoute:o,routerRoute:a,updateRoute:n}}function q(t){return!t.startsWith("http")?qn(t):_n(t)}function _n(t){const{protocol:e,host:r,pathname:n,search:o,searchParams:a,hash:s}=new URL(t,t);return{protocol:e,host:r,pathname:n,search:o,searchParams:a,hash:s}}function qn(t){const{pathname:e,search:r,searchParams:n,hash:o}=new URL(t,"https://localhost");return{pathname:e,search:r,searchParams:n,hash:o}}function Hn(t){return e=>{const{host:r}=q(e);return!(r===void 0||r===t)}}function In({mode:t,listener:e}){const r=Dn(t),n=(y,f)=>{if(f!=null&&f.replace){r.replace(y,f.state);return}r.push(y,f==null?void 0:f.state)},o=()=>{const y=st(r.location);r.replace(y)};let a;return{...r,update:n,refresh:o,startListening:()=>{a==null||a(),a=r.listen(e)},stopListening:()=>{a==null||a()}}}function Dn(t="auto"){switch(t){case"auto":return Yt()?ur():fr();case"browser":return ur();case"memory":return fr();case"hash":return Zn();default:const e=t;throw new Error(`Switch is not exhaustive for mode: ${e}`)}}function Jn(t){return i.defineComponent(()=>()=>i.h("h1",t),{name:t,props:[]})}function Tn(t){const e=a=>i.markRaw(t[a]??Jn(a)),r=a=>{const s=i.markRaw(e(a)),p={id:ee(),component:s,meta:{},state:{}};return{id:p.id,matched:p,matches:[p],name:a,query:Xt(""),params:{},state:{},href:"/",hash:"",[dr]:!0}},n=a=>{if(!a){o.value=null;return}const s=e(a);o.value={type:a,component:s}},o=i.ref(null);return{setRejection:n,rejection:o,getRejectionRoute:r}}class Fn extends Error{constructor(){super("initialUrl must be set if window.location is unavailable")}}function Mn(t){if(t)return t;if(Yt())return window.location.toString();throw new Fn}function pr(t){return!!t&&typeof t=="object"}const $t=!0;function Wn(t,e,r){if(pr(t)&&e in t){const n=t[e];return typeof n=="string"?et(n,r,$t):n}return et(void 0,r,$t)}function hr(t,e){const r={};for(const[n,o]of Object.entries(t)){const a=Wn(e,n,o);r[n]=a}return r}function Gn(t,e,r){if(pr(t)&&e in t){const n=t[e];return z(n,r,$t)}return z(void 0,r,$t)}const yr=(t,e)=>{const r={};for(const[n,o]of Object.entries(t)){const a=Gn(e,n,o);r[n]=a}return r};function Qn(){const t=i.reactive(new Map),e=Yt()?s():null,r=p=>{t.set(p,!1),e==null||e.observe(p)},n=p=>{t.delete(p),e==null||e.unobserve(p)},o=()=>{e==null||e.disconnect()},a=p=>t.get(p)??!1;function s(){return new IntersectionObserver(p=>{p.forEach(y=>{t.set(y.target,y.isIntersecting)})})}return{observe:r,unobserve:n,disconnect:o,isElementVisible:a}}class zn extends Error{constructor(e){super(`Route not found: "${e}"`)}}function mr(t,e,r){const n=Jr(e.value,r),o=Le(n),[a]=Ve(t,new RegExp(o,"g"));return a}function gr(t,e,r,n){const o=Qt(e,r),a=z(n,e.params[r],o);return t.replace(Ne(r),a)}function Rr({protocol:t,host:e,pathname:r,search:n,searchParams:o,hash:a}){const s=new URL("https://localhost");t&&(s.protocol=t),e&&(s.host=e),r&&(s.pathname=r),o?s.search=new URLSearchParams(o).toString():n&&(s.search=n),a&&(s.hash=a);const p=s.toString().replace(/^https:\/\/localhost\/*/,"/");return _t(p)}function Kn(t,e={}){const{params:r={},query:n}=e,o=Xn(t.query,r),a=oe(o,n),s=wr(t.path,r),p=t.hash.value?wr(t.hash,r):e.hash,y=Yn(t.host,r),{protocol:f,host:g}=q(y);return Rr({protocol:f,host:g,pathname:s,searchParams:a,hash:p})}function Yn(t,e){const r=t.value&&!t.value.startsWith("http")?`https://${t.value}`:t.value;return Object.keys(t.params).reduce((n,o)=>gr(n,t,o,e[o]),r)}function wr(t,e){return Object.keys(t.params).reduce((r,n)=>gr(r,t,n,e[n]),t.value)}function Xn(t,e){const r=new URLSearchParams(t.value);if(!t.value)return r;for(const[n,o]of Array.from(r.entries())){const a=Kt(o);if(!a)continue;const p=zt(o),y=z(e[a],t.params[a],p),f=e[a]===void 0&&y==="";p&&f?r.delete(n,o):r.set(n,y)}return r}const to=(t,e)=>{try{ie(t,e)}catch{return!1}return!0},ie=(t,e)=>{const{protocol:r,host:n,pathname:o,search:a,hash:s}=q(e);return{...ce(t.host,`${r}//${n}`),...ce(t.path,o),...eo(t.query,a),...ce(t.hash,s)}};function ce(t,e){const r={},n=decodeURIComponent(e);for(const[o,a]of Object.entries(t.params)){const s=mr(n,t,o),p=Qt(t,o),y=et(s,a,p);r[o]=y}return r}function eo(t,e){const r={},n=new URLSearchParams(t.value),o=new URLSearchParams(e);for(const[a,s]of Array.from(n.entries())){const p=Kt(s);if(!p)continue;const f=zt(s),g=o.get(a)??void 0,w=et(g,t.params[p],f);r[p]=w}return r}function ro(t,e={},r={}){const n=Kn(t,{params:e,query:r.query,hash:r.hash}),{search:o,hash:a}=q(n);return{id:t.id,matched:t.matched,matches:t.matches,name:t.name,query:Xt(o),params:ie(t,n),state:hr(t.state,r.state),hash:a,href:n}}const no=t=>"name"in t.matched&&!!t.matched.name,oo=(t,e)=>{const{pathname:r}=q(e);return Ir(t).test(r)},ao=(t,e)=>{const{search:r}=q(e);return Dr(t).every(o=>o.test(r))},ue=(t,e)=>{const{hash:r}=q(e),{value:n}=t.hash;return F(n)?`#${n.replace(/^#*/,"")}`.toLowerCase()===r.toLowerCase():!0};function so(t){const{searchParams:e,pathname:r}=q(t),n=-1,o=1;return(a,s)=>{const p=br(a,e),y=Er(a,r),f=br(s,e),g=Er(s,r);return a.depth>s.depth?n:a.depth<s.depth?o:p+y>f+g?n:p+y<f+g?o:ue(a,t)?n:ue(s,t)?o:0}}function Er(t,e){const r=Object.keys(t.path.params).filter(o=>Qt(t.path,o)).map(o=>o),n=r.filter(o=>mr(e,t.path,o)===void 0);return r.length-n.length}function br(t,e){const r=new URLSearchParams(e),n=new URLSearchParams(t.query.value),o=Array.from(n.keys()),a=o.filter(s=>!r.has(s));return o.length-a.length}const io=[no,oo,ao,ue,to];function co(t,e){const r=so(e);return t.filter(n=>io.every(o=>o(n,e))).sort(r)}function uo(t,e,r){const n=co(t,e);if(!n.length)return;const[o]=n,{searchParams:a,hash:s}=q(e);return{id:o.id,matched:o.matched,matches:o.matches,name:o.name,query:Xt(a),params:ie(o,e),state:hr(o.state,r),hash:s,href:_t(e)}}function Sr(t,e){const r=typeof t=="string"?q(t):t,n=typeof e=="string"?q(e):e,o=r.searchParams??new URLSearchParams(r.search),a=n.searchParams??new URLSearchParams(n.search);return Rr({protocol:F(n.protocol)?n.protocol:r.protocol,host:F(n.host)?n.host:r.host,pathname:F(n.pathname)?n.pathname:r.pathname,searchParams:oe(a,o),hash:F(n.hash)?n.hash:r.hash})}function fo(t,e){return F(e)?t.map(r=>{const n=`${e}${r.path.value}`;return{...r,path:M(n,r.path.params)}}):t}class lo extends Error{constructor(e){super(`Invalid Name "${e}": Router does not support multiple routes with the same name. All name names must be unique.`)}}function po(t){const e=t.map(({name:r})=>r);for(const r of e)if(ge(e,r)>1)throw new lo(r)}function ho(t,e=[],r){const n=[...t,...e.map(o=>o.routes)].flat();return po(n),fo(n,r)}function yo(t={},e=[]){const r=new ot;return gt("onBeforeRouteEnter",t,e).forEach(n=>r.onBeforeRouteEnter.add(n)),gt("onBeforeRouteUpdate",t,e).forEach(n=>r.onBeforeRouteUpdate.add(n)),gt("onBeforeRouteLeave",t,e).forEach(n=>r.onBeforeRouteLeave.add(n)),gt("onAfterRouteEnter",t,e).forEach(n=>r.onAfterRouteEnter.add(n)),gt("onAfterRouteUpdate",t,e).forEach(n=>r.onAfterRouteUpdate.add(n)),gt("onAfterRouteLeave",t,e).forEach(n=>r.onAfterRouteLeave.add(n)),r}function gt(t,e,r){return[e[t],...r.map(o=>o[t])].flat().filter(o=>o!==void 0)}function mo(t,e,r=[]){const n=ho(t,r,e==null?void 0:e.base),o=Vn();o.addGlobalRouteHooks(yo(e,r));const a=te(),s=cn(),p=bn(),y=Qn(),f=In({mode:e==null?void 0:e.historyMode,listener:({location:P})=>{const x=st(P);w(x,{state:P.state,replace:!0})}});function g(P,x={}){return uo(n,P,x.state)}async function w(P,x={}){const K=a();if(f.stopListening(),L(P)){f.update(P,x);return}const J=g(P,x)??u("NotFound"),D=ko(K),X=await o.runBeforeRouteHooks({to:J,from:D});switch(X.status){case"ABORT":return;case"PUSH":f.update(P,x),await v(...X.to);return;case"REJECT":f.update(P,x),c(X.type);break;case"SUCCESS":f.update(P,x),c(null);break;default:throw new Error(`Switch is not exhaustive for before hook response status: ${JSON.stringify(X)}`)}const fe=K;s.setProps(J).then(T=>{if(fe===K)switch(T.status){case"SUCCESS":break;case"PUSH":v(...T.to);break;case"REJECT":c(T.type);break;default:const le=T;throw new Error(`Switch is not exhaustive for prop store response status: ${JSON.stringify(le)}`)}}),k(J);const W=await o.runAfterRouteHooks({to:J,from:D});switch(W.status){case"PUSH":await v(...W.to);break;case"REJECT":c(W.type);break;case"SUCCESS":break;default:const T=W;throw new Error(`Switch is not exhaustive for after hook response status: ${JSON.stringify(T)}`)}f.startListening()}const C=(P,x={},K={})=>{const J=n.find(D=>D.name===P);if(!J)throw new zn(String(P));return ro(J,x,K)},v=(P,x,K)=>{if(Z(P)){const W={...x},T=Sr(P,{searchParams:W.query,hash:W.hash});return w(T,W)}if(typeof P=="string"){const{replace:W,...T}={...K},le={...x},de=C(P,le,T),Lo=yr({...de.matched.state},{...de.state,...T.state});return w(de.href,{replace:W,state:Lo})}const{replace:J,...D}={...x},X=yr({...P.matched.state},{...P.state,...D.state}),fe=Sr(P.href,{searchParams:D.query,hash:D.hash});return w(fe,{replace:J,state:X})},B=(P,x,K)=>{if(Z(P)){const D={...x,replace:!0};return v(P,D)}if(typeof P=="string"){const D={...K,replace:!0},X={...x};return v(P,X,D)}const J={...x,replace:!0};return v(P,J)},b=P=>{c(P)},{setRejection:c,rejection:l,getRejectionRoute:u}=Tn({...r.reduce((P,x)=>({...P,...x.rejections}),{}),...e==null?void 0:e.rejections}),d=u("NotFound"),{currentRoute:S,routerRoute:U,updateRoute:k}=$n(d,v),R=Mn(e==null?void 0:e.initialUrl),h=f.location.state,{host:m}=q(R),L=Hn(m);let V=!1;const O=i.ref(!1),{promise:$,resolve:H}=Promise.withResolvers();async function I(){if(V)return $;V=!0,Br(n)&&await xr(),await w(R,{replace:!0,state:h}),f.startListening(),H(),O.value=!0}function Ar(){f.stopListening()}function ko(P){return rn(P)?null:{...S}}function Uo(P){o.setVueApp(P),s.setVueApp(P),P.component("RouterView",se),P.component("RouterLink",Ye),P.provide(Xe,l),P.provide(or,o),P.provide(Fe,s),P.provide(er,p),P.provide(Ge,y),P.provide(me,vr),I()}const vr={route:U,resolve:C,find:g,push:v,replace:B,reject:b,refresh:f.refresh,forward:f.forward,back:f.back,go:f.go,install:Uo,isExternal:L,onBeforeRouteEnter:o.onBeforeRouteEnter,onBeforeRouteUpdate:o.onBeforeRouteUpdate,onBeforeRouteLeave:o.onBeforeRouteLeave,onAfterRouteEnter:o.onAfterRouteEnter,onAfterRouteUpdate:o.onAfterRouteUpdate,onAfterRouteLeave:o.onAfterRouteLeave,prefetch:e==null?void 0:e.prefetch,start:I,started:O,stop:Ar};return vr}function go(t){return{routes:t.routes??[],rejections:t.rejections??{},...t}}function Pr(t){return{get:(e,{invalid:r})=>{for(const n of t){const o=Wt(e,n);if(o!==void 0)return o}throw r(`Value ${e} does not satisfy any of the possible values`)},set:(e,{invalid:r})=>{for(const n of t){const o=qr(e,n);if(o!==void 0)return o}throw r(`Value ${e} does not satisfy any of the possible values`)}}}const Ro={separator:","};function wo(t,e={}){const{separator:r}={...Ro,...e},n=Pr(t);return{get:(o,a)=>o.split(r).map(s=>n.get(s,a)),set:(o,a)=>{if(!Array.isArray(o))throw a.invalid("Expected an array");return o.map(s=>n.set(s,a)).join(r)}}}const Eo={separator:","};function bo(t,e={}){const{separator:r}={...Eo,...e};return{get:n=>{const o=n.split(r);return t.map((a,s)=>et(o.at(s),a))},set:(n,{invalid:o})=>{if(!Array.isArray(n))throw o("Expected a tuple");if(n.length!==t.length)throw o(`Expected tuple with ${t.length} values but received ${n.length} values`);return t.map((a,s)=>z(n.at(s),a)).join(r)}}}const So=M,Po=M,Ao=M;function vo(t){const e=ee(),r=_e(t.name),n=rt(t.path),o=rt(t.query),a=rt(t.hash),s=t.meta??{},p=rt(t.host),y=i.markRaw({id:e,meta:{},state:{},...t}),f={id:e,matched:y,matches:[y],name:r,host:p,path:n,query:o,hash:a,meta:s,depth:1,state:{}},g=Be(t)?$e(t.parent,f):f;return ct(g.path.params,g.query.params,g.host.params,g.hash.params),g}A.DuplicateParamsError=pe,A.MetaPropertyConflict=he,A.RouterLink=Ye,A.RouterNotInstalledError=tt,A.RouterView=se,A.UseRouteInvalidError=ye,A.arrayOf=wo,A.asUrl=_t,A.createExternalRoute=vo,A.createParam=we,A.createRoute=nt,A.createRouter=mo,A.createRouterPlugin=go,A.host=Po,A.isRoute=Bt,A.isUrl=Z,A.onAfterRouteLeave=xn,A.onAfterRouteUpdate=jn,A.onBeforeRouteLeave=Cn,A.onBeforeRouteUpdate=Bn,A.path=So,A.query=Ao,A.tupleOf=bo,A.unionOf=Pr,A.useLink=Ke,A.useQueryValue=vn,A.useRoute=xt,A.useRouter=Rt,A.withDefault=Nr,A.withParams=M,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kitbag/router",
3
3
  "private": false,
4
- "version": "0.20.4",
4
+ "version": "0.20.6",
5
5
  "bugs": {
6
6
  "url": "https://github.com/kitbagjs/router/issues"
7
7
  },