const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/entries/pages_catch-all.9JxmqcX2.js","assets/chunks/preload-helper-DJsytJB9.js","assets/static/src_presentation_components_nav-link_nav-link-24958f2e.3Tmj03nP.css","assets/static/src_presentation_components_nav-main_nav-main.DlJ9Hieh.css","assets/static/src_presentation_components_change-percentage_change-percentage.De5TmJFb.css","assets/static/src_presentation_components_nav-header-icon_nav-header-icon.DfgF_AXH.css","assets/static/src_presentation_pages_app.BoYzLVi2.css"])))=>i.map(i=>d[i]); import{p as R,_ as ke}from"../chunks/preload-helper-DJsytJB9.js";function me(e){return Array.from(new Set(e))}const Ie="0.4.199",Q={projectName:"Vike",projectVersion:Ie},re=`_${Q.projectName.toLowerCase()}`;function j(e,t){const n=Le();return n[e]=n[e]||t}function Le(){return globalThis[re]=globalThis[re]||{}}const E=new Proxy({},{get:(e,t)=>n=>t==="code"?`\`${n}\``:t==="string"?`'${n}'`:n}),$=j("assertSingleInstance.ts",{instances:[],alreadyLogged:new Set}),We="Client runtime of both Server Routing and Client Routing loaded https://vike.dev/client-runtimes-conflict",ye="Client runtime loaded twice https://vike.dev/client-runtime-duplicated";function Ee(){{const e=me($.instances);De(e.length<=1,`vike@${E.bold(e[0])} and vike@${E.bold(e[1])} loaded but only one version should be loaded`)}$.checkSingleInstance&&$.instances.length>1&&J(!1,ye,{onlyOnce:!0,showStackTrace:!0})}function Ae(e){J($.isClientRouting!==!0,We,{onlyOnce:!0,showStackTrace:!0}),J($.isClientRouting===void 0,ye,{onlyOnce:!0,showStackTrace:!0}),$.isClientRouting=!1,$.checkSingleInstance=!0,Ee()}function ze(){$.instances.push(Q.projectVersion),Ee()}function De(e,t){if(e)return;const n=`[vike][Wrong Usage] ${t}`;throw new Error(n)}function J(e,t,{onlyOnce:n,showStackTrace:r}){if(e)return;const i=`[vike][Warning] ${t}`;if(n){const{alreadyLogged:s}=$,a=n===!0?i:n;if(s.has(a))return;s.add(a)}console.warn(r?new Error(i):i)}function Ve(){return!(typeof R>"u"||!R.cwd||!R.versions||typeof R.versions.node>"u"||!R.release||R.release.name!=="node")}function z(e,t){const n=new Error(e);return Ve()&&(n.stack=He(n.stack,t)),n}function He(e,t){if(!e)return e;const n=Be(e);let r=0;return n.filter(s=>s.includes(" (internal/")||s.includes(" (node:internal")?!1:r{if(!t)return null;const l=typeof t=="string"?t:JSON.stringify(t);return E.dim(`Debug info (for Vike maintainers; you can ignore this): ${l}`)})();let i=[`You stumbled upon a Vike bug. Go to ${E.blue("https://github.com/vikejs/vike/issues/new")} and copy-paste this error. A maintainer will fix the bug (usually under 24 hours).`,n].filter(Boolean).join(" ");i=H(i),i=V(i,"Bug"),i=U(i,!0);const s=z(i,D);throw(a=b.onBeforeLog)==null||a.call(b),s}function m(e,t,{showStackTrace:n}={}){var i;if(e)return;n=n||b.alwaysShowStackTrace,t=H(t),t=V(t,"Wrong Usage"),t=U(t);const r=z(t,D);throw n&&b.showStackTraceList.add(r),(i=b.onBeforeLog)==null||i.call(b),r}function Je(e){return e=H(e),e=V(e,"Error"),e=U(e),z(e,D)}function C(e,t,{onlyOnce:n,showStackTrace:r}){var i;if(!e){if(r=r||b.alwaysShowStackTrace,t=H(t),t=V(t,"Warning"),t=U(t),n){const{alreadyLogged:s}=b,a=n===!0?t:n;if(s.has(a))return;s.add(a)}if((i=b.onBeforeLog)==null||i.call(b),r){const s=z(t,D);b.showStackTraceList.add(s),b.logger(s,"warn")}else b.logger(t,"warn")}}function V(e,t){let n=`[${t}]`;const r=t==="Warning"?"yellow":"red";return n=E.bold(E[r](n)),`${n}${e}`}function H(e){return e.startsWith("[")?e:` ${e}`}function U(e,t=!1){return`${t?Ge:Ne}${e}`}function Z(){return typeof window<"u"&&typeof window.scrollY=="number"}const ie=j("utils/assertRouterType.ts",{});function Me(){Ye(ie.isClientRouting!==!0),ie.isClientRouting=!1}function Ye(e){m(Z(),`${E.cyan("import { something } from 'vike/client/router'")} is forbidden on the server-side`,{showStackTrace:!0}),C(e,"You shouldn't `import { something } from 'vike/client/router'` when using Server Routing. The 'vike/client/router' utilities work only with Client Routing. In particular, don't `import { navigate }` nor `import { prefetch }` as they unnecessarily bloat your client-side bundle sizes.",{showStackTrace:!0,onlyOnce:!0})}function ve(e,t,n){return typeof e=="string"?se(e.split(""),t,n).join(""):se(e,t,n)}function se(e,t,n){const r=[];let i=t;o(i>=0&&i<=e.length);let s=e.length+n;for(o(s>=0&&s<=e.length);!(i===s||(i===e.length&&(i=0),i===s));){const a=e[i];o(a!==void 0),r.push(a),i++}return r}function Ke(e,t){o(it(e),e),o(t.startsWith("/"));const[n,...r]=e.split("#");o(n!==void 0);const i=["",...r].join("#")||null;o(i===null||i.startsWith("#"));const s=i===null?"":be(i.slice(1)),[a,...l]=n.split("?");o(a!==void 0);const c=["",...l].join("?")||null;o(c===null||c.startsWith("?"));const u={},g={};Array.from(new URLSearchParams(c||"")).forEach(([x,I])=>{u[x]=I,g[x]=[...g.hasOwnProperty(x)?g[x]:[],I]});let{protocol:v,origin:d,pathnameAbsoluteWithBase:f}=qe(a,t);const p=a.slice((d||"").length);rt(e,d,p,c,i);let{pathname:h,hasBaseServer:S}=tt(f,t);const O=we(d,h,c,i),P=d?d.slice(v.length):null,{hostname:N,port:G}=Qe(P,e);return h=Xe(h),o(h.startsWith("/")),{href:O,protocol:v,hostname:N,port:G,origin:d,pathname:h,pathnameOriginal:p,hasBaseServer:S,search:u,searchAll:g,searchOriginal:c,hash:s,hashOriginal:i}}function be(e){try{return decodeURIComponent(e)}catch{}try{return decodeURI(e)}catch{}return e}function Xe(e){return e=e.replace(/\s+$/,""),e=e.split("/").map(t=>be(t).split("/").join("%2F")).join("/"),e}function qe(e,t){var n;o(!e.includes("?")&&!e.includes("#"));{const{protocol:r,origin:i,pathname:s}=oe(e);if(i)return{protocol:r,origin:i,pathnameAbsoluteWithBase:s};o(s===e)}if(e.startsWith("/"))return{protocol:null,origin:null,pathnameAbsoluteWithBase:e};{const r=typeof window<"u"?(n=window==null?void 0:window.document)==null?void 0:n.baseURI:void 0;let i;return r?i=oe(r.split("?")[0]).pathname:i=t,{protocol:null,origin:null,pathnameAbsoluteWithBase:et(e,i)}}}function oe(e){if(Pe(e)){const{protocol:t,uriWithoutProtocol:n}=Se(e);o(t);const[r,...i]=n.split("/"),s=t+r;return{pathname:"/"+i.join("/"),origin:s,protocol:t}}else return{pathname:e,origin:null,protocol:null}}function Qe(e,t){const n={hostname:null,port:null};if(!e)return n;const r=e.split(":");if(r.length>1){const i=parseInt(r.pop(),10);o(i||i===0,t),n.port=i}return n.hostname=r.join(":"),n}function Se(e){const t=":",[n,...r]=e.split(t);if(r.length===0||!/^[a-z][a-z0-9\+\-]*$/i.test(n))return{protocol:null,uriWithoutProtocol:e};let i=n+t,s=r.join(t);const a="//";return s.startsWith(a)&&(i=i+a,s=s.slice(a.length)),{protocol:i,uriWithoutProtocol:s}}function Ze(e){return["ipfs://","ipns://"].includes(e)?!1:e.endsWith("://")}function et(e,t){const n=t.split("/"),r=e.split("/");let i=t.endsWith("/");e.startsWith(".")&&n.pop();for(const a in r){const l=r[a];l==""&&a==="0"||l!="."&&(l==".."?n.pop():(i=!1,n.push(l)))}let s=n.join("/");return i&&!s.endsWith("/")&&(s+="/"),s.startsWith("/")||(s="/"+s),s}function tt(e,t){return o(e.startsWith("/")),o(nt(t)),o(e.startsWith("/")),o(t.startsWith("/")),{pathname:e,hasBaseServer:!0}}function nt(e){return e.startsWith("/")}function rt(e,t,n,r,i){const s=we(t,n,r,i);o(e===s)}function we(e,t,n,r){return`${e||""}${t}${n||""}${r||""}`}function it(e){return Pe(e)||e.startsWith("/")||st(e)}function st(e){return[".","?","#"].some(t=>e.startsWith(t))||e===""}function Pe(e){const{protocol:t}=Se(e);return!!t&&Ze(t)}function T(e,t){t&&(o(!("_isPageContextObject"in t)),Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)))}function B(e){return e instanceof Function||typeof e=="function"}function ot(e){return(t,n)=>{const r=e(t),i=e(n);if(o([!0,!1,null].includes(r)),o([!0,!1,null].includes(i)),r===i)return 0;if(r===!0||i===!1)return-1;if(i===!0||r===!1)return 1;o(!1)}}function at(e){return ot(t=>{const n=e(t);return n===null?null:!n})}function _(e){return Array.isArray(e)}function lt(e){return _(e)&&e.every(t=>typeof t=="string")}function ct(e){return w(e)&&Object.values(e).every(t=>typeof t=="string")}function y(e,t,n){if(!w(e))return!1;if(!(t in e))return n==="undefined";if(n===void 0)return!0;const r=e[t];return n==="undefined"?r===void 0:n==="array"?_(r):n==="object"?w(r):n==="string[]"?lt(r):n==="string{}"?ct(r):n==="function"?B(r):_(n)?typeof r=="string"&&n.includes(r):n==="null"?r===null:n==="true"?r===!0:n==="false"?r===!1:typeof r===n}function ut(e,t){return e.toLowerCase()t.toLowerCase()?1:0}const ft=e=>e!=null;function $e(e){const t=n=>`Not a posix path: ${n}`;o(e!==null,t("null")),o(typeof e=="string",t(`typeof path === ${JSON.stringify(typeof e)}`)),o(e!=="",t("(empty string)")),o(e),o(!e.includes("\\"),t(e))}const dt=["clientRouting"];function gt(e){dt.forEach(t=>{if(o(e.fileExports),!(t in e.fileExports))return;const n=`The value of \`${t}\` is only allowed to be \`true\`.`;m(e.fileExports[t]!==!1,`${e.filePath} has \`export { ${t} }\` with the value \`false\` which is prohibited: remove \`export { ${t} }\` instead. (${n})`),m(e.fileExports[t]===!0,`${e.filePath} has \`export { ${t} }\` with a forbidden value. ${n}`)})}const Ce=["render","clientRouting","prerender","doNotPrerender"];function pt(e,t){m(!Ce.includes(e),`${t} has \`export default { ${e} }\` which is prohibited, use \`export { ${e} }\` instead.`)}function ht(e){const t=".page.",n=ve(e.split(t),0,-1).join(t);return o(!n.includes("\\")),n}function F(e){$e(e)}function ee(e,t){return o(!e.includes("\\")),e.includes("/_error")}function mt(e,t){if(t.length>0){const n=t.find(r=>r.pageId===e);return o(n),!!n.isErrorPage}else return ee(e)}const Te=["js","ts","cjs","cts","mjs","mts"],yt=["jsx","tsx","cjsx","ctsx","mjsx","mtsx"],xe=["vue","svelte","marko","md","mdx"],Et=[...Te,...yt,...xe];function je(e){const t=Et.some(n=>e.endsWith("."+n));return vt(e)&&o(t),t}function vt(e){const t=/\.(c|m)?(j|t)s$/.test(e),n=Te.some(r=>e.endsWith("."+r));return o(t===n),t}function bt(e){return xe.some(t=>e.endsWith("."+t))}const St=[".page",".page.server",".page.route",".page.client",".css"];function wt(e){if($e(e),e.endsWith(".css"))return".css";o(je(e),e);const n=e.split("/").slice(-1)[0].split("."),r=n.slice(-3)[0],i=n.slice(-2)[0];if(i==="page")return".page";if(o(r==="page",e),i==="server")return".page.server";if(i==="client")return".page.client";if(i==="route")return".page.route";o(!1,e)}function Re(e){const t=s=>i.pageId===s||i.isDefaultPageFile&&(ae(i.filePath)||Pt(s,i.filePath)),n=wt(e),i={filePath:e,fileType:n,isEnv:s=>{if(o(n!==".page.route"),s==="CLIENT_ONLY")return n===".page.client"||n===".css";if(s==="SERVER_ONLY")return n===".page.server";if(s==="CLIENT_AND_SERVER")return n===".page";o(!1)},isRelevant:t,isDefaultPageFile:M(e),isRendererPageFile:n!==".css"&&M(e)&&ae(e),isErrorPageFile:ee(e),pageId:ht(e)};return i}function M(e){return F(e),ee(e)?!1:e.includes("/_default")}function ae(e){return F(e),e.includes("/renderer/")}function Pt(e,t){F(e),F(t),o(!e.endsWith("/")),o(!t.endsWith("/")),o(M(t));const n=ve(t.split("/"),0,-1).filter(r=>r!=="_default").join("/");return e.startsWith(n)}function $t(e,t){if(!e)return null;let[n,...r]=e;if(!n||r.length===0&&["*","default",t].includes(n))return null;o(n!=="*");let i="",s="";return n==="default"?i="export default":(i="export",r=[n,...r]),r.forEach(l=>{i=`${i} { ${l}`,s=` }${s}`}),i+s}function Ct(e,t,n){return`${Y(e,t)} at ${A(n,t)}`}function Tt(e,t,n){return n?`${Y(e,t)} at ${A(n,t)}`:`${Y(e,t)} internally`}function Y(e,t){return`${e} ${E.cyan(t)} defined`}function A(e,t){let n;return _(e)?n=e:n=[e],o(n.length>=1),n.map(i=>{const{filePathToShowToUser:s,fileExportPathToShowToUser:a}=i;let l=s;const c=$t(a,t);return c&&(l=`${l} > ${E.cyan(c)}`),l}).join(" / ")}const xt=[{is:e=>e===void 0,match:e=>e==="!undefined",serialize:()=>"!undefined",deserialize:()=>{}},{is:e=>e===1/0,match:e=>e==="!Infinity",serialize:()=>"!Infinity",deserialize:()=>1/0},{is:e=>e===-1/0,match:e=>e==="!-Infinity",serialize:()=>"!-Infinity",deserialize:()=>-1/0},{is:e=>typeof e=="number"&&isNaN(e),match:e=>e==="!NaN",serialize:()=>"!NaN",deserialize:()=>NaN},{is:e=>e instanceof Date,match:e=>e.startsWith("!Date:"),serialize:e=>"!Date:"+e.toISOString(),deserialize:e=>new Date(e.slice(6))},{is:e=>typeof e=="bigint",match:e=>e.startsWith("!BigInt:"),serialize:e=>"!BigInt:"+e.toString(),deserialize:e=>{if(typeof BigInt>"u")throw new Error("Your JavaScript environement does not support BigInt. Consider adding a polyfill.");return BigInt(e.slice(8))}},{is:e=>e instanceof RegExp,match:e=>e.startsWith("!RegExp:"),serialize:e=>"!RegExp:"+e.toString(),deserialize:e=>{e=e.slice(8);const t=e.match(/\/(.*)\/(.*)?/),n=t[1],r=t[2];return new RegExp(n,r)}},{is:e=>e instanceof Map,match:e=>e.startsWith("!Map:"),serialize:(e,t)=>"!Map:"+t(Array.from(e.entries())),deserialize:(e,t)=>new Map(t(e.slice(5)))},{is:e=>e instanceof Set,match:e=>e.startsWith("!Set:"),serialize:(e,t)=>"!Set:"+t(Array.from(e.values())),deserialize:(e,t)=>new Set(t(e.slice(5)))},{is:e=>typeof e=="string"&&e.startsWith("!"),match:e=>e.startsWith("!"),serialize:e=>"!"+e,deserialize:e=>e.slice(1)}];function _e(e){const t=JSON.parse(e);return te(t)}function te(e){return typeof e=="string"?jt(e):(typeof e=="object"&&e!==null&&Object.entries(e).forEach(([t,n])=>{e[t]=te(n)}),e)}function jt(e){for(const{match:t,deserialize:n}of xt)if(t(e))return n(e,_e);return e}const Rt=["$$registrations","_rerender_only"],_t=[".md",".mdx"];function Ft(e,t,n){const r=Object.keys(e).filter(u=>!Rt.includes(u)),i=u=>u==="default"||u===n,s=r.filter(i),a=r.filter(u=>!i(u));if(s.length===1&&a.length===0)return;const l=E.code("export default"),c=E.code(`export { ${n} }`);o(s.length<=2),s.length===0&&m(!1,`${t} should have a ${c} or ${l}`),s.length===2&&C(!1,`${t} is ambiguous: remove ${l} or ${c}`,{onlyOnce:!0}),_t.some(u=>t.endsWith(u))||a.forEach(u=>{C(!1,`${t} unexpected ${E.cyan(`export { ${u} }`)}`,{onlyOnce:!0})})}function K(e){return It(e)}function Ot(e,t){const n=e.map(i=>{const s=K(i.configValuesSerialized),{pageId:a,isErrorPage:l,routeFilesystem:c,loadConfigValuesAll:u}=i;return kt(s),{pageId:a,isErrorPage:l,routeFilesystem:c,configValues:s,loadConfigValuesAll:u}}),r={configValues:{}};{const i=K(t.configValuesSerialized);Object.assign(r.configValues,i)}return{pageConfigs:n,pageConfigGlobal:r}}function kt(e){const t="route",n=e[t];if(!n)return;const{value:r,definedAtData:i}=n,s=typeof r;o(i);const a=Ct("Config",t,i);m(s==="string"||B(r),`${a} has an invalid type '${s}': it should be a string or a function instead, see https://vike.dev/route`)}function It(e){const t={};return Object.entries(e).forEach(([r,i])=>{let s;if(i.type==="cumulative"){const{valueSerialized:a,...l}=i;s={value:a.map((u,g)=>{const{value:v,sideExports:d}=le(u,r,()=>{const f=i.definedAtData[g];return o(f),f});return n(d),v}),...l}}else{const{valueSerialized:a,...l}=i,{value:c,sideExports:u}=le(a,r,()=>(o(i.type!=="computed"),i.definedAtData));n(u),s={value:c,...l}}t[r]=s}),t;function n(r){r.forEach(i=>{const{configName:s,configValue:a}=i;t[s]||(t[s]=a)})}}function le(e,t,n){if(e.type==="js-serialized"){let{value:r}=e;return r=te(r),{value:r,sideExports:[]}}if(e.type==="pointer-import"){const{value:r}=e;return{value:r,sideExports:[]}}if(e.type==="plus-file"){const r=n(),{exportValues:i}=e;Ft(i,r.filePathToShowToUser,t);let s,a=!1;const l=[];return Object.entries(i).forEach(([c,u])=>{c!=="default"&&c!==t?l.push({configName:c,configValue:{type:"standard",value:u,definedAtData:{filePathToShowToUser:r.filePathToShowToUser,fileExportPathToShowToUser:[c]}}}):(s=u,o(!a),a=!0)}),o(a),{value:s,sideExports:l}}o(!1)}function Lt(e){o(y(e,"pageFilesLazy","object")),o(y(e,"pageFilesEager","object")),o(y(e,"pageFilesExportNamesLazy","object")),o(y(e,"pageFilesExportNamesEager","object")),o(y(e.pageFilesLazy,".page")),o(y(e.pageFilesLazy,".page.client")||y(e.pageFilesLazy,".page.server")),o(y(e,"pageFilesList","string[]")),o(y(e,"pageConfigsSerialized")),o(y(e,"pageConfigGlobalSerialized"));const{pageConfigsSerialized:t,pageConfigGlobalSerialized:n}=e;Wt(t),At(n);const{pageConfigs:r,pageConfigGlobal:i}=Ot(t,n),s={};L(e.pageFilesLazy).forEach(({filePath:l,pageFile:c,globValue:u})=>{c=s[l]=s[l]??c;const g=u;ce(g),c.loadFile=async()=>{"fileExports"in c||(c.fileExports=await g(),gt(c))}}),L(e.pageFilesExportNamesLazy).forEach(({filePath:l,pageFile:c,globValue:u})=>{c=s[l]=s[l]??c;const g=u;ce(g),c.loadExportNames=async()=>{if(!("exportNames"in c)){const v=await g();o(y(v,"exportNames","string[]"),c.filePath),c.exportNames=v.exportNames}}}),L(e.pageFilesEager).forEach(({filePath:l,pageFile:c,globValue:u})=>{c=s[l]=s[l]??c;const g=u;o(w(g)),c.fileExports=g}),L(e.pageFilesExportNamesEager).forEach(({filePath:l,pageFile:c,globValue:u})=>{c=s[l]=s[l]??c;const g=u;o(w(g)),o(y(g,"exportNames","string[]"),c.filePath),c.exportNames=g.exportNames}),e.pageFilesList.forEach(l=>{s[l]=s[l]??Re(l)});const a=Object.values(s);return a.forEach(({filePath:l})=>{o(!l.includes("\\"))}),{pageFiles:a,pageConfigs:r,pageConfigGlobal:i}}function L(e){const t=[];return Object.entries(e).forEach(([n,r])=>{o(St.includes(n)),o(w(r)),Object.entries(r).forEach(([i,s])=>{const a=Re(i);o(a.fileType===n),t.push({filePath:i,pageFile:a,globValue:s})})}),t}function ce(e){o(B(e))}function Wt(e){o(_(e)),e.forEach(t=>{o(w(t)),o(y(t,"pageId","string")),o(y(t,"routeFilesystem")),o(y(t,"configValuesSerialized"))})}function At(e){o(y(e,"configValuesSerialized"))}const k=j("setPageFiles.ts",{});function zt(e){const{pageFiles:t,pageConfigs:n,pageConfigGlobal:r}=Lt(e);k.pageFilesAll=t,k.pageConfigs=n,k.pageConfigGlobal=r}async function Dt(e,t){o(!k.pageFilesGetter),o(t===void 0);const{pageFilesAll:n,pageConfigs:r,pageConfigGlobal:i}=k;o(n&&r&&i);const s=Vt(n,r);return{pageFilesAll:n,allPageIds:s,pageConfigs:r,pageConfigGlobal:i}}function Vt(e,t){const n=e.filter(({isDefaultPageFile:s})=>!s).map(({pageId:s})=>s),r=me(n),i=t.map(s=>s.pageId);return[...r,...i]}function Ht(e,t){return Ut(e,t,!0)}function Ut(e,t,n){const r="CLIENT_ONLY",i=e.filter(f=>f.isRelevant(t)&&f.fileType!==".page.route").sort(Bt(n,t)),s=f=>{const p=i.filter(S=>S.pageId===t&&S.isEnv(f?"CLIENT_AND_SERVER":r));m(p.length<=1,`Merge the following files into a single file: ${p.map(S=>S.filePath).join(" ")}`);const h=p[0];return o(h===void 0||!h.isDefaultPageFile),h},a=s(!1),l=s(!0),c=f=>i.filter(p=>p.isRendererPageFile&&p.isEnv(f?"CLIENT_AND_SERVER":r))[0],u=c(!1),g=c(!0),v=i.filter(f=>f.isDefaultPageFile&&!f.isRendererPageFile&&(f.isEnv(r)||f.isEnv("CLIENT_AND_SERVER")));return[a,l,...v,u,g].filter(ft)}function Bt(e,t){const n="CLIENT_ONLY";return(a,l)=>{if(!a.isDefaultPageFile&&l.isDefaultPageFile)return-1;if(!l.isDefaultPageFile&&a.isDefaultPageFile)return 1;{const c=a.isRendererPageFile,u=l.isRendererPageFile;if(!c&&u)return-1;if(!u&&c)return 1;o(c===u)}{const c=ue(t,a.filePath),u=ue(t,l.filePath);if(c{Jt(d).forEach(({exportName:p,exportValue:h,isFromDefaultExport:S})=>{o(p!=="default"),i[p]=i[p]??[],i[p].push({exportValue:h,exportSource:`${d.filePath} > ${S?`\`export default { ${p} }\``:`\`export { ${p} }\``}`,filePath:d.filePath,_filePath:d.filePath,_fileType:d.fileType,_isFromDefaultExport:S})})});const s={},a={},l=(d,f)=>{s[f]=d,a[f]??(a[f]=[]),a[f].push(d)},c={configsStandard:{},configsCumulative:{},configsComputed:{}};t&&Object.entries(t.configValues).forEach(([d,f])=>{const{value:p}=f,h=Nt(f.definedAtData),S=Tt("Config",d,f.definedAtData);if(r[d]=r[d]??p,n[d]=n[d]??[],o(n[d].length===0),n[d].push({configValue:p,configDefinedAt:S,configDefinedByFile:h}),f.type==="standard"){const P={type:"configsStandard",value:f.value,definedAt:A(f.definedAtData,d)};l(P,d),c.configsStandard[d]=P}if(f.type==="cumulative"){const P={type:"configsCumulative",values:f.value.map((N,G)=>{const x=f.definedAtData[G];o(x);const I=A(x,d);return{value:N,definedAt:I}})};l(P,d),c.configsCumulative[d]=P}if(f.type==="computed"){const P={type:"configsComputed",value:f.value};l(P,d),c.configsComputed[d]=P}const O=d;i[O]=i[O]??[],i[O].push({exportValue:p,exportSource:S,filePath:h,_filePath:h,_fileType:null,_isFromDefaultExport:null})});const u=Mt(),g={};return Object.entries(i).forEach(([d,f])=>{f.forEach(({exportValue:p,_fileType:h,_isFromDefaultExport:S})=>{g[d]=g[d]??p,h===".page"&&!S&&(d in u||(u[d]=p))})}),o(!("default"in g)),o(!("default"in i)),{from:c,source:s,sources:a,config:r,configEntries:n,exports:g,exportsAll:i,pageExports:u}}function Jt(e){const{filePath:t,fileExports:n}=e;o(n),o(je(t));const r=[];return Object.entries(n).sort(at(([i])=>i==="default")).forEach(([i,s])=>{let a=i==="default";if(a)if(bt(t))i="Page";else{m(w(s),`The ${E.cyan("export default")} of ${t} should be an object.`),Object.entries(s).forEach(([l,c])=>{pt(l,t),r.push({exportName:l,exportValue:c,isFromDefaultExport:a})});return}r.push({exportName:i,exportValue:s,isFromDefaultExport:a})}),r.forEach(({exportName:i,isFromDefaultExport:s})=>{o(!(s&&Ce.includes(i)))}),r}function Mt(){return new Proxy({},{get(...e){return Z()||C(!1,"`pageContext.pageExports` is outdated. Use `pageContext.exports` instead, see https://vike.dev/exports",{onlyOnce:!0,showStackTrace:!0}),Reflect.get(...e)}})}const ne={},Yt={},Kt={},Xt={},qt=[],Fe={},Qt=[{pageId:"/pages/catch-all",isErrorPage:void 0,routeFilesystem:{routeString:"/catch-all",definedBy:"/pages/catch-all/"},loadConfigValuesAll:()=>ke(()=>import("./pages_catch-all.9JxmqcX2.js").then(e=>e.kp),__vite__mapDeps([0,1,2,3,4,5,6])),configValuesSerialized:{isClientRuntimeLoaded:{type:"computed",definedAtData:null,valueSerialized:{type:"js-serialized",value:!0}},onBeforeRenderEnv:{type:"computed",definedAtData:null,valueSerialized:{type:"js-serialized",value:null}},dataEnv:{type:"computed",definedAtData:null,valueSerialized:{type:"js-serialized",value:null}}}}],Zt={configValuesSerialized:{}},en=Object.assign({}),tn={...en};ne[".page"]=tn;const nn=Object.assign({}),rn={...nn};ne[".page.client"]=rn;const sn=Object.assign({}),on={...sn};Fe[".page.server"]=on;const an=Object.freeze(Object.defineProperty({__proto__:null,neverLoaded:Fe,pageConfigGlobalSerialized:Zt,pageConfigsSerialized:Qt,pageFilesEager:Yt,pageFilesExportNamesEager:Xt,pageFilesExportNamesLazy:Kt,pageFilesLazy:ne,pageFilesList:qt},Symbol.toStringTag,{value:"Module"}));zt(an);function ln(){o(Z())}function cn(){ln()}function fe(e){const t=e/1e3;if(t<120){const n=de(t);return`${n} second${ge(n)}`}{const n=t/60,r=de(n);return`${r} minute${ge(r)}`}}function de(e){let t=e.toFixed(1);return t.endsWith(".0")&&(t=t.slice(0,-2)),t}function ge(e){return e==="1"?"":"s"}const X=j("utils/executeHook.ts",{userHookErrors:new WeakMap,pageContext:null});function un(e,t,n){const{hookName:r,hookFilePath:i,hookTimeout:{error:s,warning:a}}=t;let l,c;const u=new Promise((f,p)=>{l=h=>{g(),f(h)},c=h=>{g(),p(h)}}),g=()=>{v&&clearTimeout(v),d&&clearTimeout(d)},v=pe(a)&&setTimeout(()=>{C(!1,`The ${r}() hook defined by ${i} is slow: it's taking more than ${fe(a)} (https://vike.dev/hooksTimeout)`,{onlyOnce:!1})},a),d=pe(s)&&setTimeout(()=>{const f=Je(`The ${r}() hook defined by ${i} timed out: it didn't finish after ${fe(s)} (https://vike.dev/hooksTimeout)`);c(f)},s);return(async()=>{try{fn(n);const f=await e();l(f)}catch(f){w(f)&&X.userHookErrors.set(f,{hookName:r,hookFilePath:i}),c(f)}})(),u}function pe(e){return!!e&&e!==1/0}function fn(e){X.pageContext=e,Promise.resolve().then(()=>{X.pageContext=null})}function Oe(e){const t=window.location.href,{searchOriginal:n,hashOriginal:r,pathname:i}=Ke(t,"/");let s;return e!=null&&e.withoutHash?s=`${i}${n||""}`:s=`${i}${n||""}${r||""}`,o(s.startsWith("/")),s}function dn(e){return typeof e=="string"&&gn(e)?`.${e}`:`[${JSON.stringify(e)}]`}function gn(e){return/^[a-z0-9\$_]+$/i.test(e)}cn();function pn(){const e="vike_pageContext",t=document.getElementById(e);m(t,`Couldn't find #${e} (which Vike automatically injects in the HTML): make sure it exists (i.e. don't remove it and make sure your HTML isn't malformed)`);const n=t.textContent;o(n);const r=_e(n);return o(y(r,"pageId","string")),o(y(r,"routeParams","string{}")),r}function hn(e,t){const n=e.filter(i=>i.pageId===t);return o(n.length<=1),n[0]??null}async function mn(e,t){if("isAllLoaded"in e&&!t)return e;const n=await e.loadConfigValuesAll(),r=K(n.configValuesSerialized);return Object.assign(e.configValues,r),T(e,{isAllLoaded:!0}),e}const yn="__whileFetchingAssets";async function En(e,t,n){const r=Ht(t,e),i=hn(n,e);let s;const a=!1;try{s=(await Promise.all([i&&mn(i,a),...r.map(g=>{var v;return(v=g.loadFile)==null?void 0:v.call(g)})]))[0]}catch(u){throw vn(u)&&Object.assign(u,{[yn]:!0}),u}const l=Gt(r,s),c={};return T(c,l),T(c,{_pageFilesLoaded:r}),c}function vn(e){return e instanceof Error?["Failed to fetch dynamically imported module","error loading dynamically imported module","Importing a module script failed","error resolving module specifier","failed to resolve module"].some(n=>e.message.toLowerCase().includes(n.toLowerCase())):!1}const he=Oe({withoutHash:!0});async function bn(){const e=pn();return T(e,{isHydration:!0,isBackwardNavigation:null,_hasPageContextFromServer:!0,_hasPageContextFromClient:!1}),T(e,await wn(e.pageId)),Sn(),e}function Sn(){const e=Oe({withoutHash:!0});m(he===e,`The URL was manipulated before the hydration finished ('${he}' to '${e}'). Ensure the hydration has finished before manipulating the URL. Consider using the onHydrationEnd() hook.`)}async function wn(e){const t={},{pageFilesAll:n,pageConfigs:r}=await Dt();return T(t,{_pageFilesAll:n,_pageConfigs:r}),T(t,await En(e,t._pageFilesAll,t._pageConfigs)),n.filter(i=>i.fileType!==".page.server").forEach(i=>{var s;C(!((s=i.fileExports)!=null&&s.onBeforeRender),`export { onBeforeRender } of ${i.filePath} is loaded in the browser but never executed (because you are using Server-side Routing). In order to reduce the size of you browser-side JavaScript, define onBeforeRender() in a .page.server.js file instead, see https://vike.dev/onBeforeRender-isomorphic#server-routing`,{onlyOnce:!0})}),t}const Pn=j("getHook.ts",{});function q(e,t){if(!(t in e.exports))return null;const{hooksTimeout:n}=e.config,r=Tn(n,t),i=e.exports[t],s=e.exportsAll[t][0];if(o(s.exportValue===i),i===null)return null;const a=s.filePath;return o(a),o(!a.endsWith(" ")),Cn(i,{hookName:t,hookFilePath:a}),{hookFn:i,hookName:t,hookFilePath:a,hookTimeout:r}}function $n(e,t){q(e,t)}function Cn(e,{hookName:t,hookFilePath:n}){o(t&&n),o(!t.endsWith(")")),m(B(e),`Hook ${t}() defined by ${n} should be a function`)}function Tn(e,t){const n=xn(e);if(n===!1)return{error:!1,warning:!1};const r=n[t],i=jn(t);return(r==null?void 0:r.error)!==void 0&&(i.error=r.error),(r==null?void 0:r.warning)!==void 0&&(i.warning=r.warning),i}function xn(e){if(e===void 0)return{};if(e===!1)return!1;m(w(e),`Setting ${E.cyan("hooksTimeout")} should be ${E.cyan("false")} or an object`);const t={};return Object.entries(e).forEach(([n,r])=>{if(r===!1){t[n]={error:!1,warning:!1};return}m(w(r),`Setting ${E.cyan(`hooksTimeout.${n}`)} should be ${E.cyan("false")} or an object`);const[i,s]=["error","warning"].map(a=>{const l=r[a];if(l===void 0||l===!1)return l;const c=`Setting ${E.cyan(`hooksTimeout.${n}.${a}`)} should be`;return m(typeof l=="number",`${c} ${E.cyan("false")} or a number`),m(l>0,`${c} a positive number`),l});t[n]={error:i,warning:s}}),t}function jn(e){return e==="onBeforeRoute"?{error:5*1e3,warning:1*1e3}:Pn.isPrerendering?{error:2*60*1e3,warning:30*1e3}:(o(!e.toLowerCase().includes("prerender")),{error:30*1e3,warning:4*1e3})}const Rn="not-serializable",W=j("getPageContextProxyForUser.ts",{});function _n(e){return o([!0,!1].includes(e._hasPageContextFromServer)),o([!0,!1].includes(e._hasPageContextFromClient)),new Proxy(e,{get(t,n){const r=e[n],i=dn(n);return m(r!==Rn,`Can't access pageContext${i} on the client side. Because it can't be serialized, see server logs.`),Fn(e,n,i),r}})}function Fn(e,t,n){if(In(t)||t in e||kn(t)||!e._hasPageContextFromServer)return;const r=`pageContext${n} isn't defined on the client-side, see https://vike.dev/passToClient#error`;e._hasPageContextFromClient?C(!1,r,{onlyOnce:!1,showStackTrace:!0}):m(!1,r)}const On=["then","toJSON"];function kn(e){return!!(On.includes(e)||typeof e=="symbol"||typeof e!="string"||e.startsWith("__v_"))}function In(e){return W.prev===e||W.prev==="__v_raw"?!0:(W.prev=e,window.setTimeout(()=>{W.prev=void 0},0),!1)}function Ln(e){Wn(e),An(e)}function Wn(e){mt(e.pageId,e._pageConfigs)&&o(y(e,"is404","boolean"))}function An(e){if(e.is404===void 0||e.is404===null)return;const t=e.pageProps||{};if(!w(t)){C(!1,"pageContext.pageProps should be an object",{showStackTrace:!0,onlyOnce:!0});return}t.is404=t.is404||e.is404,e.pageProps=t}function zn(e){o(e.pageId),o("config"in e),o("configEntries"in e),Ln(e),"_pageId"in e||Object.defineProperty(e,"_pageId",{get(){return C(!1,"pageContext._pageId has been renamed to pageContext.pageId",{showStackTrace:!0,onlyOnce:!0}),e.pageId},enumerable:!1}),Dn(e)}function Dn(e){let t=Object.getOwnPropertyDescriptors(e);for(const n of Object.keys(e))delete e[n];t=Object.fromEntries(Object.entries(t).sort(([n],[r])=>ut(n,r))),Object.defineProperties(e,t)}function Vn(e,t){{const i=e;o(i.isHydration===!0),o(i.isBackwardNavigation===null)}const n=e.config.Page||e.exports.Page;return T(e,{Page:n}),Hn(e),zn(e),_n(e)}function Hn(e){Un(e)}function Un(e){Object.entries(e).forEach(([t,n])=>{delete e[t],e[t]=n})}async function Bn(e,t){const n=Vn(e);let r=null,i;r=q(e,"render"),i="render";{const l=q(e,"onRenderClient");l&&(r=l,i="onRenderClient")}if(!r){const l=Nn(e);if(o(l),e._pageConfigs.length>0)m(!1,`No onRenderClient() hook defined for URL '${l}', but it's needed, see https://vike.dev/onRenderClient`);else{const c=e._pageFilesLoaded.filter(g=>g.fileType===".page.client");let u;c.length===0?u="No file `*.page.client.*` found for URL "+l:u="One of the following files should export a render() hook: "+c.map(g=>g.filePath).join(" "),m(!1,u)}}o(r);const s=r.hookFn;o(i);const a=await un(()=>s(n),r,e);m(a===void 0,`The ${i}() hook defined by ${r.hookFilePath} isn't allowed to return a value`)}function Nn(e){let t;try{t=e.urlPathname??e.urlOriginal}catch{}return t=t??window.location.href,t}Me();Ae();Gn();async function Gn(){var t,n;const e=await bn();await Bn(e),$n(e,"onHydrationEnd"),await((n=(t=e.exports).onHydrationEnd)==null?void 0:n.call(t,e))}