vue-router
Version:
10 lines • 52.9 kB
JavaScript
/*!
* vue-router v5.3.0
* (c) 2026 Eduardo San Martin Morote
* @license MIT
*/
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("nostics"),t=require("vue"),n=require("@vue/devtools-api");const r=typeof document<`u`,i=e=>e.startsWith(`/`);function a(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function o(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&a(e.default)}const s=Object.assign;function c(e,t){let n={};for(let r in t){let i=t[r];n[r]=u(i)?i.map(e):e(i)}return n}const l=()=>{},u=Array.isArray;function d(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}const f=Symbol(process.env.NODE_ENV===`production`?``:`navigation failure`);let p=function(e){return e[e.aborted=4]=`aborted`,e[e.cancelled=8]=`cancelled`,e[e.duplicated=16]=`duplicated`,e}({});const m={1({location:e,currentLocation:t}){return`No match for\n ${JSON.stringify(e)}${t?`
while being at
`+JSON.stringify(t):``}`},2({from:e,to:t}){return`Redirected from "${e.fullPath}" to "${v(t)}" via a navigation guard.`},4({from:e,to:t}){return`Navigation aborted from "${e.fullPath}" to "${t.fullPath}" via a navigation guard.`},8({from:e,to:t}){return`Navigation cancelled from "${e.fullPath}" to "${t.fullPath}" with a new navigation.`},16({from:e,to:t}){return`Avoided redundant navigation to current location: "${e.fullPath}".`}};function h(e,t){if(process.env.NODE_ENV!==`production`||!0)return s(Error(m[e](t)),{type:e,[f]:!0},t)}function g(e,t){return e instanceof Error&&f in e&&(t==null||!!(e.type&t))}const _=[`params`,`query`,`hash`];function v(e){if(!e||typeof e==`string`)return e;if(e.path!=null)return e.path;let t={};for(let n of _)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}const y=(0,e.defineDiagnostics)({reporters:[(0,e.createConsoleReporter)()],codes:{VUE_ROUTER_R0001:{why:e=>`Parent route "${e.name}" not found when adding child route`,fix:`Add the parent route before its children, or check the parent name for typos.`,docs:`https://router.vuejs.org/guide/advanced/dynamic-routing.html#Adding-nested-routes`},VUE_ROUTER_R0002:{why:e=>`Cannot remove non-existent route "${e.name}"`,fix:`Check the route name; it may already have been removed or was never added.`,docs:`https://router.vuejs.org/guide/advanced/dynamic-routing.html#Removing-routes`},VUE_ROUTER_R0003:{why:e=>`Location "${v(e.location)}" resolved to "${e.href}". A resolved location cannot start with multiple slashes.`,fix:`Remove the leading slashes from the location or fix the route configuration.`},VUE_ROUTER_R0004:{why:e=>`No match found for location with path "${v(e.path)}"`,fix:`Add a route matching this path or check for typos in the location.`,docs:`https://router.vuejs.org/guide/essentials/dynamic-matching.html#Catch-all-404-Not-found-Route`},VUE_ROUTER_R0005:{why:e=>`router.resolve() was passed an invalid location. This will fail in production.\nLocation: ${v(e.rawLocation)}`,fix:"Pass a valid route location: a string path or an object with `path` or `name`."},VUE_ROUTER_R0006:{why:e=>`Path "${e.path}" was passed with params but they will be ignored because a "path" was passed.`,fix:"Use a named route `{ name, params }` instead of `{ path, params }`.",docs:`https://router.vuejs.org/guide/essentials/navigation.html#Navigate-to-a-different-location`},VUE_ROUTER_R0007:{why:e=>`A \`hash\` should always start with the character "#" but received "${e.hash}".`,fix:e=>`Prepend "#" to the hash in your route location: use "#${e.hash}".`},VUE_ROUTER_R0008:{why:e=>`Invalid redirect found:\n${e.target}\n when navigating to "${e.to}".\nThis will break in production.`,fix:"A redirect must resolve to a location with a `name` or `path`; return one of those (or a string path) from `redirect`.",docs:`https://router.vuejs.org/guide/essentials/redirect-and-alias.html#Redirect`},VUE_ROUTER_R0009:{why:e=>`Detected a possibly infinite redirection in a navigation guard when going from "${e.from}" to "${e.to}". Aborting to avoid a Stack Overflow. This might break in production if not fixed.`,fix:`A guard is returning a new location on every call; make that return conditional so it only redirects when actually needed.`,docs:`https://router.vuejs.org/guide/advanced/navigation-guards.html#Global-Before-Guards`},VUE_ROUTER_R0010:{why:`Uncaught error during route navigation`,fix:"Register an error handler with `router.onError()` to handle navigation errors."},VUE_ROUTER_R0011:{why:`Unexpected error when starting the router:`,fix:`Inspect the actual cause; a navigation guard or async component likely threw during the initial navigation.`},VUE_ROUTER_R0020:{why:e=>`No active route record was found when calling \`${e.fn}()\`. Maybe you called it inside of App.vue?`,fix:`Call it from a component rendered inside <router-view> (a page component or one of its children), not from App.vue.`,docs:`https://router.vuejs.org/guide/advanced/composition-api.html#Navigation-Guards`},VUE_ROUTER_R0021:{why:`No active route record was found when reactivating component with navigation guard. This is likely a bug in vue-router.`,fix:`Report with a minimal reproduction at https://github.com/vuejs/router/issues/new/choose.`},VUE_ROUTER_R0022:{why:e=>`${e.fn}() was called outside of component setup but it must be called at the top of a setup function`,fix:"Call it synchronously at the top of `setup()`, before any `await`.",docs:`https://router.vuejs.org/guide/advanced/composition-api.html#Navigation-Guards`},VUE_ROUTER_R0023:{why:e=>`The "next" callback was never called inside of ${e.name?`"${e.name}"`:``}:\n${e.guard}`,fix:"Make sure `next()` runs on every branch, including early returns and async paths, or drop the `next` parameter and return the value instead.",docs:`https://router.vuejs.org/guide/advanced/navigation-guards.html#Optional-third-argument-next`},VUE_ROUTER_R0024:{why:e=>`The "next" callback was called more than once in one navigation guard when going from "${e.from}" to "${e.to}". This will fail in production.`,fix:"Call `next()` exactly once per guard: remove the extra call, or migrate to returning the value you passed to `next()`.",docs:`https://router.vuejs.org/guide/advanced/navigation-guards.html#Optional-third-argument-next`},VUE_ROUTER_R0025:{why:"The `next()` callback in navigation guards is deprecated.",fix:'Return the value instead: `next()` becomes `return`, `next(false)` becomes `return false`, `next("/path")` becomes `return "/path"`.',docs:`https://router.vuejs.org/guide/advanced/navigation-guards.html#Optional-third-argument-next`},VUE_ROUTER_R0026:{why:e=>`Record with path "${e.path}" is either missing a "component(s)" or "children" property.`,fix:"Add a `component`, `components`, or `children` to the route record.",docs:`https://router.vuejs.org/guide/essentials/nested-routes.html`},VUE_ROUTER_R0027:{why:e=>`Component "${e.name}" in record with path "${e.path}" is not a valid component. Received "${e.received}".`,fix:`Pass a component or a function returning a Promise that resolves to one.`},VUE_ROUTER_R0028:{why:e=>`Component "${e.name}" in record with path "${e.path}" is a Promise instead of a function that returns a Promise. This will break in production if not fixed.`,fix:`Defer the import in an arrow function so it loads lazily: write "() => import('./MyPage.vue')", not "import('./MyPage.vue')".`,docs:`https://router.vuejs.org/guide/advanced/lazy-loading.html`},VUE_ROUTER_R0029:{why:e=>`Component "${e.name}" in record with path "${e.path}" is defined using "defineAsyncComponent()".`,fix:`Drop the wrapper and pass "() => import('./MyPage.vue')" directly; the router handles lazy components itself.`,docs:`https://router.vuejs.org/guide/advanced/lazy-loading.html#Relationship-to-async-components`},VUE_ROUTER_R0030:{why:e=>`Component "${e.name}" in record with path "${e.path}" is a function that does not return a Promise. This will break in production if not fixed.`,fix:'Return a dynamic import (`() => import("./MyPage.vue")`) from the function, or add a `displayName` if it is a functional component.',docs:`https://router.vuejs.org/guide/advanced/lazy-loading.html`},VUE_ROUTER_R0040:{why:e=>`Because "${e.el}" starts with "#", scrollBehavior resolves it as an element id via document.getElementById("${e.el.slice(1)}"), not as a CSS selector. No element has that id, but "${e.el}" does match an element with document.querySelector().`,fix:e=>`Resolve the element yourself and return the node: el: document.querySelector('${e.el}').`,docs:`https://router.vuejs.org/guide/advanced/scroll-behavior.html`},VUE_ROUTER_R0041:{why:e=>`The selector "${e.el}" is invalid. See https://mathiasbynens.be/notes/css-escapes or CSS.escape (https://developer.mozilla.org/en-US/docs/Web/API/CSS/escape) for the escaping rules.`,fix:"Build an id selector as `#${CSS.escape(id)}` so special characters in the id are escaped.",docs:`https://router.vuejs.org/guide/advanced/scroll-behavior.html`},VUE_ROUTER_R0042:{why:e=>`Couldn't find element using selector "${e.el}" returned by scrollBehavior.`,fix:`Return a selector that matches an existing element, or guard against missing elements.`,docs:`https://router.vuejs.org/guide/advanced/scroll-behavior.html`},VUE_ROUTER_R0050:{why:e=>{let t;try{t=e.to===void 0?`undefined`:JSON.stringify(e.to)}catch{t=String(e.to)}return`Invalid value for prop "to" in useLink()\n- to: ${t}`},fix:`Pass a valid route location (a string path or an object) to the "to" prop.`},VUE_ROUTER_R0060:{why:e=>`<router-view> can no longer be used directly inside <${e.comp}>.`,fix:e=>`Wrap the slot's resolved component with <${e.comp}> instead of nesting <router-view> in it:\n\n<router-view v-slot="{ Component }">\n <${e.comp}>\n <component :is="Component" />\n </${e.comp}>\n</router-view>`,docs:`https://router.vuejs.org/guide/advanced/router-view-slot.html#KeepAlive-Transition`},VUE_ROUTER_R0070:{why:e=>`Cannot resolve a relative location without an absolute path. Trying to resolve "${e.to}" from "${e.from}".`,fix:e=>`Resolve from an absolute \`from\` path that starts with "/", e.g. "/${e.from}".`},VUE_ROUTER_R0080:{why:e=>`Error decoding "${e.text}". Using original value`,fix:`Ensure the value is correctly percent-encoded.`},VUE_ROUTER_R0090:{why:e=>`Found duplicated params with name "${e.name}" for path "${e.path}". Only the last one will be available on "$route.params".`,fix:`Give each param a unique name within the path.`,docs:`https://router.vuejs.org/guide/essentials/route-matching-syntax.html`},VUE_ROUTER_R0100:{why:e=>`Discarded invalid param(s) "${e.params}" when navigating.`+e.inherited+` See https://github.com/vuejs/router/commit/e887570 for more details.`,fix:`Only pass params that exist on the target route.`},VUE_ROUTER_R0101:{why:e=>`The Matcher cannot resolve relative paths but received "${e.path}". Unless you directly called \`matcher.resolve("${e.path}")\`, this is probably a bug in vue-router. Please open an issue at https://github.com/vuejs/router/issues/new/choose.`,fix:`Pass an absolute path (starting with "/") to the matcher.`},VUE_ROUTER_R0102:{why:e=>`Alias "${e.alias}" and the original record: "${e.original}" must have the exact same param named "${e.name}"`,fix:`Use the same param names in the alias as in the original route.`,docs:`https://router.vuejs.org/guide/essentials/redirect-and-alias.html#Alias`},VUE_ROUTER_R0103:{why:e=>`The route named "${e.name}" has a child without a name, an empty path, and no children. Using that name won't render the empty path child, so this is probably a mistake.`,fix:"Move the `name` onto the empty-path child; or, if intentional, give the child its own name to silence this.",docs:`https://router.vuejs.org/guide/essentials/nested-routes.html#Nested-Named-Routes`},VUE_ROUTER_R0104:{why:e=>`Absolute path "${e.path}" must have the exact same param named "${e.name}" as its parent "${e.parent}".`,fix:`Include the parent route params in the absolute child path.`,docs:`https://router.vuejs.org/guide/essentials/nested-routes.html`},VUE_ROUTER_R0105:{why:e=>`Finding ancestor route "${e.ancestor}" failed for "${e.record}"`,fix:`Report a reproduction at https://github.com/vuejs/router/issues/new/choose.`},VUE_ROUTER_R0110:{why:`A hash base must end with a "#"`,fix:e=>`Append "#" to the "base" argument passed to "createWebHashHistory()": "${e.base}" should be "${e.suggestion}".`},VUE_ROUTER_R0120:{why:`Error with push/replace State`,fix:`The browser rejected the history API call; check for cross-origin or rate-limit issues.`},VUE_ROUTER_R0121:{why:`history.state seems to have been manually replaced without preserving the necessary values.
You can find more information at https://router.vuejs.org/guide/migration/#Usage-of-history-state`,fix:"Merge the router's state into your own when calling it manually: `history.replaceState({ ...history.state, ...yourState }, '', url)`.",docs:`https://router.vuejs.org/guide/migration.html#Usage-of-history-state`},VUE_ROUTER_R1001:{why:e=>`Data loader "${String(e.key)}" has a different parent than the current context. This shouldn't be happening.`,fix:`Report a bug with a minimal reproduction at https://github.com/vuejs/router/.`},VUE_ROUTER_R1002:{why:`Returning a NavigationResult is deprecated.`,fix:"Replace `return new NavigationResult(to)` with `reroute(to)`, which throws internally to reroute.",docs:`https://router.vuejs.org/data-loaders/navigation-aware.html#Controlling-the-navigation-with-reroute-`},VUE_ROUTER_R1003:{why:e=>`Loader "${e.key}"'s "commit()" was called but there is no staged data.`,fix:"Ensure the loader resolved before calling `commit()`.",docs:`https://router.vuejs.org/data-loaders/defining-loaders.html#Delaying-data-updates-with-commit`},VUE_ROUTER_R1004:{why:e=>`A loader returned a NavigationResult but is not registered on the route.`+e.key,fix:"Export the loader from the page component so it gets registered, e.g. `export const useUserData = defineLoader(...)`.",docs:`https://router.vuejs.org/data-loaders/organization.html`},VUE_ROUTER_R1005:{why:e=>`Data loader "${e.key}" has itself as parent. This shouldn't be happening.`,fix:`Report a bug with a minimal reproduction at https://github.com/vuejs/router/.`},VUE_ROUTER_R1006:{why:e=>`A query was defined with the same key as the loader "[${e.key}]".\nSee https://pinia-colada.esm.dev/#TODO`,fix:"If the key is meant to match, use the data loader directly; otherwise rename the `useQuery()` key so it no longer collides.",docs:`https://router.vuejs.org/data-loaders/colada.html`},VUE_ROUTER_R1007:{why:`Data Loader was setup twice.`,fix:"Register `DataLoaderPlugin` a single time via `app.use()`.",docs:`https://router.vuejs.org/data-loaders.html#Installation`},VUE_ROUTER_R1008:{why:`Data Loader is experimental and subject to breaking changes in the future.`,docs:`https://router.vuejs.org/data-loaders.html`},VUE_ROUTER_R1009:{why:`Returning a NavigationResult from a loader is deprecated.`,fix:"Call `reroute(to)` inside the loader instead of returning `new NavigationResult(to)`; it throws internally to reroute.",docs:`https://router.vuejs.org/data-loaders/navigation-aware.html#Controlling-the-navigation-with-reroute-`}}}),b=/#/g,ee=/&/g,te=/\//g,ne=/=/g,re=/\?/g,ie=/\+/g,ae=/%5B/g,oe=/%5D/g,x=/%5E/g,S=/%60/g,C=/%7B/g,w=/%7C/g,se=/%7D/g,ce=/%20/g;function T(e){return e==null?``:encodeURI(``+e).replace(w,`|`).replace(ae,`[`).replace(oe,`]`)}function le(e){return T(e).replace(C,`{`).replace(se,`}`).replace(x,`^`)}function E(e){return T(e).replace(ie,`%2B`).replace(ce,`+`).replace(b,`%23`).replace(ee,`%26`).replace(S,"`").replace(C,`{`).replace(se,`}`).replace(x,`^`)}function D(e){return E(e).replace(ne,`%3D`)}function ue(e){return T(e).replace(b,`%23`).replace(re,`%3F`)}function de(e){return ue(e).replace(te,`%2F`)}function O(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{process.env.NODE_ENV!==`production`&&y.VUE_ROUTER_R0080({text:``+e})}return``+e}const fe=/\/$/,pe=e=>e.replace(fe,``);function me(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=P(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:O(o)}}function he(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function k(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function ge(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&A(t.matched[r],n.matched[i])&&j(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function A(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function j(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!M(e[n],t[n]))return!1;return!0}function M(e,t){return u(e)?N(e,t):u(t)?N(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function N(e,t){return u(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function P(e,t){if(i(e))return e;if(process.env.NODE_ENV!==`production`&&!i(t))return y.VUE_ROUTER_R0070({to:e,from:t}),e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),a=r[r.length-1];(a===`..`||a===`.`)&&r.push(``);let o=n.length-1,s,c;for(s=0;s<r.length;s++)if(c=r[s],c!==`.`){if(c===`..`)o>1&&o--;else break}return n.slice(0,o).join(`/`)+`/`+r.slice(s).join(`/`)}const F={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function _e(e){if(!e){if(r){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`}return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),pe(e)}const I=/^[^#]+#/;function L(e,t){return e.replace(I,`#`)+t}function R(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const z=()=>history.scrollRestoration===`manual`?{left:window.scrollX,top:window.scrollY}:null;function ve(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`);if(process.env.NODE_ENV!==`production`&&typeof e.el==`string`&&(!r||!document.getElementById(e.el.slice(1))))try{let t=document.querySelector(e.el);if(r&&t){y.VUE_ROUTER_R0040({el:e.el});return}}catch{y.VUE_ROUTER_R0041({el:e.el});return}let i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i){process.env.NODE_ENV!==`production`&&y.VUE_ROUTER_R0042({el:e.el});return}t=R(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function ye(e,t){return(history.state?history.state.position-t:-1)+e}const B=new Map;function be(e){B.set(e,z())}function xe(e){let t=B.get(e);return B.delete(e),t}let V=()=>location.protocol+`//`+location.host;function H(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),k(n,``)}return k(n,e)+r+i}function Se(e,t,n,r){let i=[],a=[],o=null,c=({state:a})=>{let s=H(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function l(){o=n.value}function u(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function d(){let{history:e}=window;e.state&&e.replaceState(s({},e.state,{scroll:z()}),``)}function f(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,c),window.removeEventListener(`pagehide`,d)}return window.addEventListener(`popstate`,c),window.addEventListener(`pagehide`,d),{pauseListeners:l,listen:u,destroy:f}}function Ce(e,t,n,r=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:null}}function we(e){let{history:t,location:n}=window,r={value:H(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:V()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){process.env.NODE_ENV===`production`?console.error(e):y.VUE_ROUTER_R0120({cause:e}),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,s({},t.state,Ce(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function c(e,n){let o=s({},i.value,t.state,{forward:e,scroll:z()});process.env.NODE_ENV!==`production`&&!t.state&&y.VUE_ROUTER_R0121(),a(o.current,o,!0),a(e,s({},Ce(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:c,replace:o}}function Te(e){e=_e(e);let t=we(e),n=Se(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=s({location:``,base:e,go:r,createHref:L.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}function Ee(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),process.env.NODE_ENV!==`production`&&!e.endsWith(`#/`)&&!e.endsWith(`#`)&&y.VUE_ROUTER_R0110({base:e,suggestion:e.replace(/#.*$/,`#`)}),Te(e)}function De(e=``){let t=[],n=[[``,{}]],r=0;e=_e(e);function i(e,t={}){r++,r!==n.length&&n.splice(r),n.push([e,t])}function a(e,n,{direction:r,delta:i}){let a={direction:r,delta:i,type:`pop`};for(let r of t)r(e,n,a)}let o={location:``,state:{},base:e,createHref:L.bind(null,e),replace(e,t){n.splice(r--,1),i(e,t)},push(e,t){i(e,t)},listen(e){return t.push(e),()=>{let n=t.indexOf(e);n>-1&&t.splice(n,1)}},destroy(){t=[],n=[[``,{}]],r=0},go(e,t=!0){let i=this.location,o=e<0?`back`:`forward`;r=Math.max(0,Math.min(r+e,n.length-1)),t&&a(this.location,i,{direction:o,delta:e})}};return Object.defineProperty(o,"location",{enumerable:!0,get:()=>n[r][0]}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>n[r][1]}),o}function U(e){return typeof e==`string`||e&&typeof e==`object`}function Oe(e){return typeof e==`string`||typeof e==`symbol`}const ke={type:0,value:``},Ae=/[a-zA-Z0-9_]/;function je(e){if(!e)return[[]];if(e===`/`)return[[ke]];if(!i(e))throw Error(process.env.NODE_ENV===`production`?`Invalid path "${e}"`:`Route paths should start with a "/": "${e}" should be "/${e}".`);function t(e){throw Error(`ERR (${n})/"${u}": ${e}`)}let n=0,r=n,a=[],o;function s(){o&&a.push(o),o=[]}let c=0,l,u=``,d=``;function f(){u&&=(n===0?o.push({type:0,value:u}):n===1||n===2||n===3?(o.length>1&&(l===`*`||l===`+`)&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:u,regexp:d,repeatable:l===`*`||l===`+`,optional:l===`*`||l===`?`})):t(`Invalid state to consume buffer`),``)}function p(){u+=l}for(;c<e.length;)switch(l=e[c++],n){case 0:l===`\\`?(r=n,n=4):l===`/`?(u&&f(),s()):l===`:`?(f(),n=1):p();break;case 4:p(),n=r;break;case 1:l===`(`?n=2:Ae.test(l)?p():(f(),n=0,l!==`*`&&l!==`?`&&l!==`+`&&c--);break;case 2:l===`)`?d[d.length-1]==`\\`?d=d.slice(0,-1)+l:n=3:d+=l;break;case 3:f(),n=0,l!==`*`&&l!==`?`&&l!==`+`&&c--,d=``;break;default:t(`Unknown state`)}return n===2&&t(`Unfinished custom RegExp for param "${u}"`),f(),s(),a}const Me=`[^/]+?`,Ne={sensitive:!1,strict:!1,start:!0,end:!0},Pe=/[.+*?^${}()[\]/\\]/g;function Fe(e,t){let n=s({},Ne,t),r=[],i=n.start?`^`:``,a=[];for(let t of e){let e=t.length?[]:[90];n.strict&&!t.length&&(i+=`/`);for(let r=0;r<t.length;r++){let o=t[r],s=40+(n.sensitive?.25:0);if(o.type===0)r||(i+=`/`),i+=o.value.replace(Pe,`\\$&`),s+=40;else if(o.type===1){let{value:e,repeatable:n,optional:c,regexp:l}=o;a.push({name:e,repeatable:n,optional:c});let u=l||Me;if(u!==Me){s+=10;try{RegExp(`(${u})`)}catch(t){throw Error(`Invalid custom RegExp for param "${e}" (${u}): `+t.message)}}let d=n?`((?:${u})(?:/(?:${u}))*)`:`(${u})`;r||(d=c&&t.length<2?`(?:/${d})`:`/`+d),c&&(d+=`?`),i+=d,s+=20,c&&(s+=-8),n&&(s+=-20),u===`.*`&&(s+=-50)}e.push(s)}r.push(e)}if(n.strict&&n.end){let e=r.length-1;r[e][r[e].length-1]+=.7000000000000001}n.strict||(i+=`/?`),n.end?i+=`$`:n.strict&&!i.endsWith(`/`)&&(i+=`(?:/|$)`);let o=new RegExp(i,n.sensitive?``:`i`);function c(e){let t=e.match(o),n={};if(!t)return null;for(let e=1;e<t.length;e++){let r=t[e]||``,i=a[e-1];n[i.name]=r&&i.repeatable?r.split(`/`):r}return n}function l(t){let n=``,r=!1;for(let i of e){(!r||!n.endsWith(`/`))&&(n+=`/`),r=!1;for(let e of i)if(e.type===0)n+=e.value;else if(e.type===1){let{value:a,repeatable:o,optional:s}=e,c=a in t?t[a]:``;if(u(c)&&!o)throw Error(`Provided param "${a}" is an array but it is not repeatable (* or + modifiers)`);let l=u(c)?c.join(`/`):c;if(!l){if(s)i.length<2&&(n.endsWith(`/`)?n=n.slice(0,-1):r=!0);else throw Error(`Missing required param "${a}"`)}n+=l}}return n||`/`}return{re:o,score:r,keys:a,parse:c,stringify:l}}function Ie(e,t){let n=0;for(;n<e.length&&n<t.length;){let r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===80?-1:1:e.length>t.length?t.length===1&&t[0]===80?1:-1:0}function Le(e,t){let n=0,r=e.score,i=t.score;for(;n<r.length&&n<i.length;){let e=Ie(r[n],i[n]);if(e)return e;n++}if(Math.abs(i.length-r.length)===1){if(Re(r))return 1;if(Re(i))return-1}return i.length-r.length}function Re(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const ze={strict:!1,end:!0,sensitive:!1};function Be(e,t,n){let r=Fe(je(e.path),n);if(process.env.NODE_ENV!==`production`){let t=new Set;for(let n of r.keys)t.has(n.name)&&y.VUE_ROUTER_R0090({name:n.name,path:e.path}),t.add(n.name)}let i=s(r,{record:e,parent:t,children:[],alias:[]});return t&&!i.record.aliasOf==!t.record.aliasOf&&t.children.push(i),i}function Ve(e,t){let n=[],r=new Map;t=d(ze,t);function a(e){return r.get(e)}function o(e,n,r){let a=!r,u=Ue(e);process.env.NODE_ENV!==`production`&&Je(u,n),u.aliasOf=r&&r.record;let p=d(t,e),m=[u];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)m.push(Ue(s({},u,{components:r?r.record.components:u.components,path:e,aliasOf:r?r.record:u})))}let h,g;for(let t of m){let{path:s}=t;if(n&&!i(s)){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(s&&r+s)}if(process.env.NODE_ENV!==`production`&&t.path===`*`)throw Error(`Catch all routes ("*") must now be defined using a param with a custom regexp.
See more at https://router.vuejs.org/guide/migration/#Removed-star-or-catch-all-routes.`);if(h=Be(t,n,p),process.env.NODE_ENV!==`production`&&n&&i(s)&&Xe(h,n),r?(r.alias.push(h),process.env.NODE_ENV!==`production`&&qe(r,h)):(g||=h,g!==h&&g.alias.push(h),a&&e.name&&!Ge(h)&&(process.env.NODE_ENV!==`production`&&Ye(e,n),c(e.name))),$e(h)&&f(h),u.children){let e=u.children;for(let t=0;t<e.length;t++)o(e[t],h,r&&r.children[t])}r||=h}return g?()=>{c(g)}:l}function c(e){if(Oe(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(c),t.alias.forEach(c))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(c),e.alias.forEach(c))}}function u(){return n}function f(e){let t=Ze(e,n);n.splice(t,0,e),e.record.name&&!Ge(e)&&r.set(e.record.name,e)}function p(e,t){let a,o={},c,l;if(`name`in e&&e.name){if(a=r.get(e.name),!a)throw h(1,{location:e});if(process.env.NODE_ENV!==`production`){let n=Object.keys(e.params||{}).filter(e=>!a.keys.find(t=>t.name===e));if(n.length){let e=!a.keys.length&&n.some(e=>e in t.params);y.VUE_ROUTER_R0100({params:n.join(`", "`),inherited:e?" If you are using a catch-all route with a named redirect, pass an empty `params` object: `redirect: { name: '...', params: {} }`.":``})}}l=a.record.name,o=s(He(t.params,a.keys.filter(e=>!e.optional).concat(a.parent?a.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&He(e.params,a.keys.map(e=>e.name))),c=a.stringify(o)}else if(e.path!=null)c=e.path,process.env.NODE_ENV!==`production`&&!i(c)&&y.VUE_ROUTER_R0101({path:c}),a=n.find(e=>e.re.test(c)),a&&(o=a.parse(c),l=a.record.name,a.keys.forEach(e=>{e.optional&&!o[e.name]&&delete o[e.name]}));else{if(a=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!a)throw h(1,{location:e,currentLocation:t});l=a.record.name,o=s({},t.params,e.params),c=a.stringify(o)}let u=[],d=a;for(;d;)u.unshift(d.record),d=d.parent;return{name:l,path:c,params:o,matched:u,meta:Ke(u)}}e.forEach(e=>o(e));function m(){n.length=0,r.clear()}return{addRoute:o,resolve:p,removeRoute:c,clearRoutes:m,getRoutes:u,getRecordMatcher:a}}function He(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function Ue(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:We(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function We(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function Ge(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Ke(e){return e.reduce((e,t)=>s(e,t.meta),{})}function W(e,t){return e.name===t.name&&e.optional===t.optional&&e.repeatable===t.repeatable}function qe(e,t){for(let n of e.keys)if(!n.optional&&!t.keys.find(W.bind(null,n))){y.VUE_ROUTER_R0102({alias:t.record.path,original:e.record.path,name:n.name});return}for(let n of t.keys)if(!n.optional&&!e.keys.find(W.bind(null,n))){y.VUE_ROUTER_R0102({alias:t.record.path,original:e.record.path,name:n.name});return}}function Je(e,t){t&&t.record.name&&!e.name&&!e.path&&e.children.length===0&&y.VUE_ROUTER_R0103({name:String(t.record.name)})}function Ye(e,t){for(let n=t;n;n=n.parent)if(n.record.name===e.name)throw Error(`A route named "${String(e.name)}" has been added as a ${t===n?`child`:`descendant`} of a route with the same name. Route names must be unique and a nested route cannot use the same name as an ancestor.`)}function Xe(e,t){for(let n of t.keys)if(!e.keys.find(W.bind(null,n))){y.VUE_ROUTER_R0104({path:e.record.path,name:n.name,parent:t.record.path});return}}function Ze(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Le(e,t[i])<0?r=i:n=i+1}let i=Qe(e);return i&&(r=t.lastIndexOf(i,r-1),process.env.NODE_ENV!==`production`&&r<0&&y.VUE_ROUTER_R0105({ancestor:i.record.path,record:e.record.path})),r}function Qe(e){let t=e;for(;t=t.parent;)if($e(t)&&Le(e,t)===0)return t}function $e({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function et(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;e<n.length;++e){let r=n[e].replace(ie,` `),i=r.indexOf(`=`),a=O(i<0?r:r.slice(0,i)),o=i<0?null:O(r.slice(i+1));if(a in t){let e=t[a];u(e)||(e=t[a]=[e]),e.push(o)}else t[a]=o}return t}function tt(e){let t=``;for(let n in e){let r=e[n];if(n=D(n),r==null){r!==void 0&&(t+=(t.length?`&`:``)+n);continue}(u(r)?r.map(e=>e&&E(e)):[r&&E(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function nt(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=u(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}const G=Symbol(process.env.NODE_ENV===`production`?``:`router view location matched`),rt=Symbol(process.env.NODE_ENV===`production`?``:`router view depth`),K=Symbol(process.env.NODE_ENV===`production`?``:`router`),q=Symbol(process.env.NODE_ENV===`production`?``:`route location`),J=Symbol(process.env.NODE_ENV===`production`?``:`router view location`);function Y(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function it(e,n,r){let i=e.value;if(!i){if(process.env.NODE_ENV!==`production`){let e=n===`updateGuards`?`onBeforeRouteUpdate`:`onBeforeRouteLeave`;y.VUE_ROUTER_R0020({fn:e})}return}let a=i,o=()=>{a[n].delete(r)};(0,t.onUnmounted)(o),(0,t.onDeactivated)(o),(0,t.onActivated)(()=>{let t=e.value;process.env.NODE_ENV!==`production`&&!t&&y.VUE_ROUTER_R0021(),t&&(a=t),a[n].add(r)}),a[n].add(r)}function at(e){if(process.env.NODE_ENV!==`production`&&!(0,t.getCurrentInstance)()){y.VUE_ROUTER_R0022({fn:`onBeforeRouteLeave`});return}it((0,t.inject)(G,{}),`leaveGuards`,e)}function ot(e){if(process.env.NODE_ENV!==`production`&&!(0,t.getCurrentInstance)()){y.VUE_ROUTER_R0022({fn:`onBeforeRouteUpdate`});return}it((0,t.inject)(G,{}),`updateGuards`,e)}function X(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(h(4,{from:n,to:t})):e instanceof Error?c(e):U(e)?c(h(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,process.env.NODE_ENV===`production`?l:st(ct(l,t,n)))),d=Promise.resolve(u);if(e.length<3&&(d=d.then(l)),process.env.NODE_ENV!==`production`&&e.length>2){let t={name:e.name,guard:e.toString()};if(typeof u==`object`&&`then`in u)d=d.then(e=>l._called?e:(y.VUE_ROUTER_R0023(t),Promise.reject(Error(`Invalid navigation guard`))));else if(u!==void 0&&!l._called){y.VUE_ROUTER_R0023(t),c(Error(`Invalid navigation guard`));return}}d.catch(e=>c(e))})}function st(e){let t=!1;return function(){return t||(t=!0,y.VUE_ROUTER_R0025()),e.apply(this,arguments)}}function ct(e,t,n){let r=0;return function(){r++===1&&y.VUE_ROUTER_R0024({from:n.fullPath,to:t.fullPath}),e._called=!0,r===1&&e.apply(null,arguments)}}function lt(e,t,n,r,i=e=>e()){let s=[];for(let c of e){process.env.NODE_ENV!==`production`&&!c.components&&c.children&&!c.children.length&&y.VUE_ROUTER_R0026({path:c.path});for(let e in c.components){let l=c.components[e];if(process.env.NODE_ENV!==`production`){if(!l||typeof l!=`object`&&typeof l!=`function`)throw y.VUE_ROUTER_R0027({name:e,path:c.path,received:String(l)}),Error(`Invalid route component`);if(`then`in l){y.VUE_ROUTER_R0028({name:e,path:c.path});let t=l;l=()=>t}else l.__asyncLoader&&!l.__warnedDefineAsync&&(l.__warnedDefineAsync=!0,y.VUE_ROUTER_R0029({name:e,path:c.path}))}if(!(t!==`beforeRouteEnter`&&!c.instances[e])){if(a(l)){let a=(l.__vccOpts||l)[t];a&&s.push(X(a,n,r,c,e,i))}else{let a=l();process.env.NODE_ENV!==`production`&&!(`catch`in a)&&(y.VUE_ROUTER_R0030({name:e,path:c.path}),a=Promise.resolve(a)),s.push(()=>a.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${c.path}"`);let s=o(a)?a.default:a;c.mods[e]=a,c.components[e]=s;let l=(s.__vccOpts||s)[t];return l&&X(l,n,r,c,e,i)()}))}}}}return s}function ut(e){return e.matched.every(e=>e.redirect)?Promise.reject(Error(`Cannot load a route that redirects.`)):Promise.all(e.matched.map(e=>e.components&&Promise.all(Object.keys(e.components).reduce((t,n)=>{let r=e.components[n];return typeof r==`function`&&!(`displayName`in r)&&t.push(r().then(t=>{if(!t)return Promise.reject(Error(`Couldn't resolve component "${n}" at "${e.path}". Ensure you passed a function that returns a promise.`));let r=o(t)?t.default:t;e.mods[n]=t,e.components[n]=r})),t},[])))).then(()=>e)}function dt(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;o<a;o++){let a=t.matched[o];a&&(e.matched.find(e=>A(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>A(e,s))||i.push(s))}return[n,r,i]}function Z(e){let n=(0,t.inject)(K),i=(0,t.inject)(q),a=!1,o=null,s=(0,t.computed)(()=>{let r=(0,t.unref)(e.to);return process.env.NODE_ENV!==`production`&&(!a||r!==o)&&(U(r)||y.VUE_ROUTER_R0050({to:r}),o=r,a=!0),n.resolve(r)}),c=(0,t.computed)(()=>{let{matched:e}=s.value,{length:t}=e,n=e[t-1],r=i.matched;if(!n||!r.length)return-1;let a=r.findIndex(A.bind(null,n));if(a>-1)return a;let o=gt(e[t-2]);return t>1&>(n)===o&&r[r.length-1].path!==o?r.findIndex(A.bind(null,e[t-2])):a}),u=(0,t.computed)(()=>c.value>-1&&ht(i.params,s.value.params)),d=(0,t.computed)(()=>c.value>-1&&c.value===i.matched.length-1&&j(i.params,s.value.params));function f(r={}){if(mt(r)){let r=n[(0,t.unref)(e.replace)?`replace`:`push`]((0,t.unref)(e.to)).catch(l);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>r),r}return Promise.resolve()}if(process.env.NODE_ENV!==`production`&&r){let n=(0,t.getCurrentInstance)();if(n){let r={route:s.value,isActive:u.value,isExactActive:d.value,error:null};n.__vrl_devtools=n.__vrl_devtools||[],n.__vrl_devtools.push(r),(0,t.watchEffect)(()=>{r.route=s.value,r.isActive=u.value,r.isExactActive=d.value,r.error=U((0,t.unref)(e.to))?null:`Invalid "to" value`},{flush:`post`})}}return{route:s,href:(0,t.computed)(()=>s.value.href),isActive:u,isExactActive:d,navigate:f}}function ft(e){return e.length===1?e[0]:e}const pt=(0,t.defineComponent)({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:Z,setup(e,{slots:n}){let r=(0,t.reactive)(Z(e)),{options:i}=(0,t.inject)(K),a=(0,t.computed)(()=>({[_t(e.activeClass,i.linkActiveClass,`router-link-active`)]:r.isActive,[_t(e.exactActiveClass,i.linkExactActiveClass,`router-link-exact-active`)]:r.isExactActive}));return()=>{let i=n.default&&ft(n.default(r));return e.custom?i:(0,t.h)(`a`,{"aria-current":r.isExactActive?e.ariaCurrentValue:null,href:r.href,onClick:r.navigate,class:a.value},i)}}});function mt(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(e.button===void 0||e.button===0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function ht(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!u(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function gt(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}const _t=(e,t,n)=>e??t??n,vt=(0,t.defineComponent)({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:n,slots:i}){process.env.NODE_ENV!==`production`&&xt();let a=(0,t.inject)(J),o=(0,t.computed)(()=>e.route||a.value),c=(0,t.inject)(rt,0),l=(0,t.computed)(()=>{let e=(0,t.unref)(c),{matched:n}=o.value,r;for(;(r=n[e])&&!r.components;)e++;return e}),d=(0,t.computed)(()=>o.value.matched[l.value]);(0,t.provide)(rt,(0,t.computed)(()=>l.value+1)),(0,t.provide)(G,d),(0,t.provide)(J,o);let f=(0,t.ref)();return(0,t.watch)(()=>[f.value,d.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!A(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let a=o.value,c=e.name,p=d.value,m=p&&p.components[c];if(!m)return yt(i.default,{Component:m,route:a});let h=p.props[c],g=h?h===!0?a.params:typeof h==`function`?h(a):h:null,_=(0,t.h)(m,s({},g,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(p.instances[c]=null)},ref:f}));if(process.env.NODE_ENV!==`production`&&r&&_.ref){let e={depth:l.value,name:p.name,path:p.path,meta:p.meta};(u(_.ref)?_.ref.map(e=>e.i):[_.ref.i]).forEach(t=>{t&&(t.__vrv_devtools=e)})}return yt(i.default,{Component:_,route:a})||_}}});function yt(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}const bt=vt;function xt(){let e=(0,t.getCurrentInstance)(),n=e.parent&&e.parent.type.name,r=e.parent&&e.parent.subTree&&e.parent.subTree.type;if(n&&(n===`KeepAlive`||n.includes(`Transition`))&&typeof r==`object`&&r.name===`RouterView`){let e=n===`KeepAlive`?`keep-alive`:`transition`;y.VUE_ROUTER_R0060({comp:e})}}function Q(e,t){let n=s({},e,{matched:e.matched.map(e=>Rt(e,[`instances`,`children`,`aliasOf`]))});return{_custom:{type:null,readOnly:!0,display:e.fullPath,tooltip:t,value:n}}}function $(e){return{_custom:{display:e}}}let St=0;function Ct(e,r,i){if(r.__hasDevtools)return;r.__hasDevtools=!0;let a=St++;(0,n.setupDevtoolsPlugin)({id:`org.vuejs.router`+(a?`.`+a:``),label:`Vue Router`,packageName:`vue-router`,homepage:`https://router.vuejs.org`,logo:`https://router.vuejs.org/logo.png`,componentStateTypes:[`Routing`],app:e},n=>{n.on.inspectComponent(e=>{e.instanceData&&e.instanceData.state.push({type:`Routing`,key:`$route`,editable:!1,value:Q(r.currentRoute.value,`Current Route`)})}),n.on.visitComponentTree(({treeNode:e,componentInstance:t})=>{if(t.__vrv_devtools){let n=t.__vrv_devtools;e.tags.push({label:(n.name?`${n.name.toString()}: `:``)+n.path,textColor:0,tooltip:`This component is rendered by <router-view>`,backgroundColor:Et})}u(t.__vrl_devtools)&&(t.__devtoolsApi=n,t.__vrl_devtools.forEach(t=>{let n=t.route.path,r=kt,i=``,a=0;t.error?(n=t.error,r=At,a=jt):t.isExactActive?(r=Ot,i=`This is exactly active`):t.isActive&&(r=Dt,i=`This link is active`),e.tags.push({label:n,textColor:a,tooltip:i,backgroundColor:r})}))}),(0,t.watch)(r.currentRoute,()=>{l(),n.notifyComponentUpdate(),n.sendInspectorTree(c),n.sendInspectorState(c)});let o=`router:navigations:`+a;n.addTimelineLayer({id:o,label:`Router${a?` `+a:``} Navigations`,color:4237508}),r.onError((e,t)=>{n.addTimelineEvent({layerId:o,event:{title:`Error during Navigation`,subtitle:t.fullPath,logType:`error`,time:n.now(),data:{error:e},groupId:t.meta.__navigationId}})});let s=0;r.beforeEach((e,t)=>{let r={guard:$(`beforeEach`),from:Q(t,`Current Location during this navigation`),to:Q(e,`Target location`)};Object.defineProperty(e.meta,"__navigationId",{value:s++}),n.addTimelineEvent({layerId:o,event:{time:n.now(),title:`Start of navigation`,subtitle:e.fullPath,data:r,groupId:e.meta.__navigationId}})}),r.afterEach((e,t,r)=>{let i={guard:$(`afterEach`)};r?(i.failure={_custom:{type:Error,readOnly:!0,display:r?r.message:``,tooltip:`Navigation Failure`,value:r}},i.status=$(`❌`)):i.status=$(`✅`),i.from=Q(t,`Current Location during this navigation`),i.to=Q(e,`Target location`),n.addTimelineEvent({layerId:o,event:{title:`End of navigation`,subtitle:e.fullPath,time:n.now(),data:i,logType:r?`warning`:`default`,groupId:e.meta.__navigationId}})});let c=`router-inspector:`+a;n.addInspector({id:c,label:`Routes`+(a?` `+a:``),icon:`book`,treeFilterPlaceholder:`Search routes`});function l(){if(!d)return;let e=d,t=i.getRoutes().filter(e=>!e.parent||!e.parent.record.components);t.forEach(It),e.filter&&(t=t.filter(t=>Lt(t,e.filter.toLowerCase()))),t.forEach(e=>Ft(e,r.currentRoute.value)),e.rootNodes=t.map(Mt)}let d;n.on.getInspectorTree(t=>{d=t,t.app===e&&t.inspectorId===c&&l()}),n.on.getInspectorState(t=>{if(t.app===e&&t.inspectorId===c){let e=i.getRoutes().find(e=>e.record.__vd_id===t.nodeId);e&&(t.state={options:Tt(e)})}}),n.sendInspectorTree(c),n.sendInspectorState(c)})}function wt(e){return e.optional?e.repeatable?`*`:`?`:e.repeatable?`+`:``}function Tt(e){let{record:t}=e,n=[{editable:!1,key:`path`,value:t.path}];return t.name!=null&&n.push({editable:!1,key:`name`,value:t.name}),n.push({editable:!1,key:`regexp`,value:e.re}),e.keys.length&&n.push({editable:!1,key:`keys`,value:{_custom:{type:null,readOnly:!0,display:e.keys.map(e=>`${e.name}${wt(e)}`).join(` `),tooltip:`Param keys`,value:e.keys}}}),t.redirect!=null&&n.push({editable:!1,key:`redirect`,value:t.redirect}),e.alias.length&&n.push({editable:!1,key:`aliases`,value:e.alias.map(e=>e.record.path)}),Object.keys(e.record.meta).length&&n.push({editable:!1,key:`meta`,value:e.record.meta}),n.push({key:`score`,editable:!1,value:{_custom:{type:null,readOnly:!0,display:e.score.map(e=>e.join(`, `)).join(` | `),tooltip:`Score used to sort routes`,value:e.score}}}),n}const Et=15485081,Dt=2450411,Ot=8702998,kt=16486972,At=16704226,jt=12131356;function Mt(e){let t=[],{record:n}=e;n.name!=null&&t.push({label:String(n.name),textColor:0,backgroundColor:2282478}),n.aliasOf&&t.push({label:`alias`,textColor:0,backgroundColor:kt}),e.__vd_match&&t.push({label:`matches`,textColor:0,backgroundColor:Et}),e.__vd_exactActive&&t.push({label:`exact`,textColor:0,backgroundColor:Ot}),e.__vd_active&&t.push({label:`active`,textColor:0,backgroundColor:Dt}),n.redirect&&t.push({label:typeof n.redirect==`string`?`redirect: ${n.redirect}`:`redirects`,textColor:16777215,backgroundColor:6710886});let r=n.__vd_id;return r??(r=String(Nt++),n.__vd_id=r),{id:r,label:n.path,tags:t,children:e.children.map(Mt)}}let Nt=0;const Pt=/^\/(.*)\/([a-z]*)$/;function Ft(e,t){let n=t.matched.length&&A(t.matched[t.matched.length-1],e.record);e.__vd_exactActive=e.__vd_active=n,n||(e.__vd_active=t.matched.some(t=>A(t,e.record))),e.children.forEach(e=>Ft(e,t))}function It(e){e.__vd_match=!1,e.children.forEach(It)}function Lt(e,t){let n=String(e.re).match(Pt);if(e.__vd_match=!1,!n||n.length<3)return!1;if(new RegExp(n[1].replace(/\$$/,``),n[2]).test(t))return e.children.forEach(e=>Lt(e,t)),e.record.path!==`/`||t===`/`?(e.__vd_match=e.re.test(t),!0):!1;let r=e.record.path.toLowerCase(),a=O(r);return!i(t)&&(a.includes(t)||r.includes(t))||a.startsWith(t)||r.startsWith(t)||e.record.name&&String(e.record.name).includes(t)?!0:e.children.some(e=>Lt(e,t))}function Rt(e,t){let n={};for(let r in e)t.includes(r)||(n[r]=e[r]);return n}function zt(e){let n=Ve(e.routes,e),i=e.parseQuery||et,a=e.stringifyQuery||tt,o=e.history;if(process.env.NODE_ENV!==`production`&&!o)throw Error(`Provide the "history" option when calling "createRouter()": https://router.vuejs.org/api/interfaces/RouterOptions.html#history`);let d=Y(),f=Y(),p=Y(),m=(0,t.shallowRef)(F),_=(0,t.shallowRef)(0),v=F;r&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let b=c.bind(null,e=>``+e),ee=c.bind(null,de),te=c.bind(null,O);function ne(e,t){let r,i;Oe(e)?(r=n.getRecordMatcher(e),process.env.NODE_ENV!==`production`&&!r&&y.VUE_ROUTER_R0001({name:String(e)}),i=t):i=e;let a=n.addRoute(i,r);return _.value++,()=>{a(),_.value++}}function re(e){let t=n.getRecordMatcher(e);t?(n.removeRoute(t),_.value++):process.env.NODE_ENV!==`production`&&y.VUE_ROUTER_R0002({name:String(e)})}function ie(){n.clearRoutes(),_.value++}function ae(){return n.getRoutes().map(e=>e.record)}function oe(e){return!!n.getRecordMatcher(e)}function x(e,t){if(_.value,typeof e==`string`){t||=e.startsWith(`/`)?F:m.value;let r=me(i,e,t.path),a=n.resolve({path:r.path},t),c=o.createHref(r.fullPath);return process.env.NODE_ENV!==`production`&&(c.startsWith(`//`)?y.VUE_ROUTER_R0003({location:e,href:c}):a.matched.length||y.VUE_ROUTER_R0004({path:e})),s(r,a,{params:te(a.params),redirectedFrom:void 0,href:c})}if(process.env.NODE_ENV!==`production`&&!U(e))return y.VUE_ROUTER_R0005({rawLocation:e}),x({});t=s({},t||(e.path!=null&&e.path.startsWith(`/`)&&!(`name`in e&&e.name)?F:m.value));let r;if(e.path!=null)process.env.NODE_ENV!==`production`&&`params`in e&&!(`name`in e)&&Object.keys(e.params).length&&y.VUE_ROUTER_R0006({path:e.path}),r=s({},e,{path:me(i,e.path,t.path).path});else{let n=s({},e.params);for(let e in n)n[e]??delete n[e];r=s({},e,{params:ee(n)}),t.params=ee(t.params)}let c=n.resolve(r,t),l=e.hash||``;process.env.NODE_ENV!==`production`&&l&&!l.startsWith(`#`)&&y.VUE_ROUTER_R0007({hash:l}),c.params=b(te(c.params));let u=he(a,s({},e,{hash:le(l),path:c.path})),d=o.createHref(u);return process.env.NODE_ENV!==`production`&&(d.startsWith(`//`)?y.VUE_ROUTER_R0003({location:e,href:d}):c.matched.length||y.VUE_ROUTER_R0004({path:e.path==null?e:e.path})),s({fullPath:u,hash:l,query:a===tt?nt(e.query):e.query||{}},c,{redirectedFrom:void 0,href:d})}function S(e){return typeof e==`string`?me(i,e,m.value.path):s({},e)}function C(e,t){if(v!==e)return h(8,{from:t,to:e})}function w(e){return T(e)}function se(e){return w(s(S(e),{replace:!0}))}function ce(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;if(typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=S(i):{path:i},i.params={}),process.env.NODE_ENV!==`production`&&i.path==null&&!(`name`in i))throw y.VUE_ROUTER_R0008({target:JSON.stringify(i,null,2),to:e.fullPath}),Error(`Invalid redirect`);return s({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=v=x(e),r=m.value,i=e.state,o=e.force,c=e.replace===!0,l=ce(n,r);if(l)return T(s(S(l),{state:typeof l==`object`?s({},i,l.state):i,force:o,replace:c}),t||n);let u=n;u.redirectedFrom=t;let d;return!o&&ge(a,r,n)&&(d=h(16,{to:u,from:r}),L(r,r,!0,!1)),(d?Promise.resolve(d):ue(u,r)).catch(e=>g(e)?g(e,2)?e:I(e):P(e,u,r)).then(e=>{if(e){if(g(e,2))return process.env.NODE_ENV!==`production`&&ge(a,x(e.to),u)&&t&&(t._count=t._count?t._count+1:1)>30?(y.VUE_ROUTER_R0009({from:r.fullPath,to:u.fullPath}),Promise.reject(Error(`Infinite redirect in navigation guard`))):T(s({replace:c},S(e.to),{state:typeof e.to==`object`?s({},i,e.to.state):i,force:o}),t||u)}else e=pe(u,r,!0,c,i);return fe(u,r,e),e})}function E(e,t){let n=C(e,t);return n?Promise.reject(n):Promise.resolve()}function D(e){let t=B.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function ue(e,t){let n,[r,i,a]=dt(e,t);n=lt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(X(r,e,t))});let o=E.bind(null,e,t);return n.push(o),H(n).then(()=>{n=[];for(let r of d.list())n.push(X(r,e,t));return n.push(o),H(n)}).then(()=>{n=lt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(X(r,e,t))});return n.push(o),H(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter){if(u(r.beforeEnter))for(let i of r.beforeEnter)n.push(X(i,e,t));else n.push(X(r.beforeEnter,e,t))}return n.push(o),H(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=lt(a,`beforeRouteEnter`,e,t,D),n.push(o),H(n))).then(()=>{n=[];for(let r of f.list())n.push(X(r,e,t));return n.push(o),H(n)}).catch(e=>g(e,8)?e:Promise.reject(e))}function fe(e,t,n){p.list().forEach(r=>D(()=>r(e,t,n)))}function pe(e,t,n,i,a){let c=C(e,t);if(c)return c;let l=t===F,u=r?history.state:{};n&&(i||l?o.replace(e.fullPath,s({scroll:l&&u&&u.scroll},a)):o.push(e.fullPath,a)),m.value=e,L(e,t,n,l),I()}let k;function A(){k||=o.listen((e,t,n)=>{if(!V.listening)return;let i=x(e),a=ce(i,V.currentRoute.value);if(a){T(s(a,{replace:!0,force:!0}),i).catch(l);return}v=i;let c=m.value;r&&n.delta&&be(ye(c.fullPath,n.delta)),ue(i,c).catch(e=>g(e,12)?e:g(e,2)?(T(s(S(e.to),{force:!0}),i).then(e=>{g(e,20)&&!n.delta&&n.type===`pop`&&o.go(-1,!1)}).catch(l),Promise.reject()):(n.delta&&o.go(-n.delta,!1),P(e,i,c))).then(e=>{e||=pe(i,c,!1),e&&(n.delta&&!g(e,8)?o.go(-n.delta,!1):n.type===`pop`&&g(e,20)&&o.go(-1,!1)),fe(i,c,e)}).catch(l)})}let j=Y(),M=Y(),N;function P(e,t,n){I(e);let r=M.list();return r.length?r.forEach(r=>r(e,t,n)):(process.env.NODE_ENV!==`production`&&y.VUE_ROUTER_R0010(),console.error(e)),Promise.reject(e)}function _e(){return N&&m.value!==F?Promise.resolve():new Promise((e,t)=>{j.add([e,t])})}function I(e){return N||(N=!e,A(),j.list().forEach(([t,n])=>e?n(e):t()),j.reset()),e}function L(n,i,a,o){let{scrollBehavior:s}=e;if(!r||!s)return Promise.resolve();let c=!a&&xe(ye(n.fullPath,0))||(o||!a)&&history.state&&history.state.scroll||null;return(0,t.nextTick)().then(()=>s(n,i,c)).then(e=>n===m.value&&e&&ve(e)).catch(e=>n===m.value&&P(e,n,i))}let R=e=>o.go(e),z,B=new Set,V={currentRoute:m,listening:!0,addRoute:ne,removeRoute:re,clearRoutes:ie,hasRoute:oe,getRoutes:ae,resolve:x,options:e,push:w,replace:se,go:R,back:()=>R(-1),forward:()=>R(1),beforeEach:d.add,beforeResolve:f.add,afterEach:p.add,onError:M.add,isReady:_e,install(e){e.component(`RouterLink`,pt),e.component(`RouterView`,bt),e.config.globalProperties.$router=V,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>(0,t.unref)(m)}),r&&!z&&m.value===F&&(z=!0,w(o.location).catch(e=>{process.env.NODE_ENV!==`production`&&y.VUE_ROUTER_R0011({cause:e})}));let i={};for(let e in F)Object.defineProperty(i,e,{get:()=>m.value[e],enumerable:!0});e.provide(K,V),e.provide(q,(0,t.shallowReactive)(i)),e.provide(J,m);let a=e.unmount;B.add(e),e.unmount=function(){B.delete(e),B.size<1&&(v=F,k&&k(),k=null,m.value=F,z=!1,N=!1),a()},process.env.NODE_ENV!==`production`&&r&&Ct(e,V,n)}};function H(e){return e.reduce((e,t)=>e.then(()=>D(t)),Promise.resolve())}return V}function Bt(){return(0,t.inject)(K)}function Vt(e){return(0,t.inject)(q)}exports.NavigationFailureType=p,exports.RouterLink=pt,exports.RouterView=bt,exports.START_LOCATION=F,exports.createMemoryHistory=De,exports.createRouter=zt,exports.createRouterMatcher=Ve,exports.createWebHashHistory=Ee,exports.createWebHistory=Te,exports.isNavigationFailure=g,exports.loadRouteLocation=ut,exports.matchedRouteKey=G,exports.onBeforeRouteLeave=at,exports.onBeforeRouteUpdate=ot,exports.parseQuery=et,exports.routeLocationKey=q,exports.routerKey=K,exports.routerViewLocationKey=J,exports.stringifyQuery=tt,exports.useLink=Z,exports.useRoute=Vt,exports.useRouter=Bt,exports.viewDepthKey=rt;