1function be(){return!(typeof process>"u"||!process.cwd||!process.versions||typeof process.versions.node>"u"||!process.release||process.release.name!=="node")}function H(e,t){let n;{var i=Error.stackTraceLimit;Error.stackTraceLimit=1/0,n=new Error(e),Error.stackTraceLimit=i}return be()&&(n.stack=Pe(n.stack,t)),n}function Pe(e,t){if(!e)return e;const n=_e(e);let i=0;return n.filter(s=>s.includes(" (internal/")||s.includes(" (node:internal")?!1:i<t&&Re(s)?(i++,!1):!0).join(` 2`)}function Re(e){return e.startsWith(" at ")}function _e(e){return e.split(/\r?\n/)}function T(e,t){const n=globalThis.__vike=globalThis.__vike||{};return n[e]=n[e]||t}function S(e){return typeof e=="object"&&e!==null}function ae(e){return Array.from(new Set(e))}const b=T("assertPackageInstances.ts",{instances:[],alreadyLogged:new Set}),$e="The client runtime of Server Routing as well as the client runtime of Client Routing are both being loaded. Make sure they aren't loaded both at the same time for a given page. See https://vike.dev/client-runtimes-conflict",le="Two vike client runtime instances are being loaded. Make sure your client-side bundles don't include vike twice. (In order to reduce the size of your client-side JavaScript bundles.)";function ce(){{const e=ae(b.instances);ke(e.length<=1,`Both vike@${e[0]} and vike@${e[1]} loaded. Only one version should be loaded.`)}b.checkSingleInstance&&b.instances.length>1&&z(!1,le,{onlyOnce:!0,showStackTrace:!0})}function Te(e){z(b.isClientRouting!==!0,$e,{onlyOnce:!0,showStackTrace:!0}),z(b.isClientRouting===void 0,le,{onlyOnce:!0,showStackTrace:!0}),b.isClientRouting=!1,e&&(b.checkSingleInstance=!0),ce()}function Ce(e){b.instances.push(e),ce()}function ke(e,t){if(e)return;const n=`[vike][Wrong Usage] ${t}`;throw new Error(n)}function z(e,t,{onlyOnce:n,showStackTrace:i}){if(e)return;const r=`[vike][Warning] ${t}`;if(n){const{alreadyLogged:s}=b,a=n===!0?r:n;if(s.has(a))return;s.add(a)}console.warn(i?new Error(r):r)}const xe="0.4.147",R={projectName:"Vike",projectVersion:xe,npmPackageName:"vike",githubRepository:"https://github.com/vikejs/vike"};Ce(R.projectVersion);const ue=new Proxy(e=>e,{get:()=>ue}),v=ue,E=T("utils/assert.ts",{alreadyLogged:new Set,logger(e,t){t==="info"?console.log(e):console.warn(e)},showStackTraceList:new WeakSet}),Ie=`[${R.npmPackageName}]`,Le=`[${R.npmPackageName}@${R.projectVersion}]`,G=2;function o(e,t){var a;if(e)return;const n=(()=>{if(!t)return null;const l=typeof t=="string"?t:JSON.stringify(t);return v.dim(`Debug info (for ${R.projectName} maintainers; you can ignore this): ${l}`)})(),i=`${R.githubRepository}/issues/new`;let r=[`You stumbled upon a bug in ${R.projectName}'s source code.`,`Go to ${v.blue(i)} and copy-paste this error; a maintainer will fix the bug (usually under 24 hours).`,n].filter(Boolean).join(" ");r=j(r),r=F(r,"Bug"),r=V(r,!0);const s=H(r,G);throw(a=E.onBeforeLog)==null||a.call(E),s}function p(e,t,{showStackTrace:n}={}){var r;if(e)return;t=j(t),t=F(t,"Wrong Usage"),t=V(t);const i=H(t,G);throw n&&E.showStackTraceList.add(i),(r=E.onBeforeLog)==null||r.call(E),i}function Oe(e){return e=j(e),e=F(e,"Error"),e=V(e),H(e,G)}function C(e,t,{onlyOnce:n,showStackTrace:i}){var r;if(!e){if(t=j(t),t=F(t,"Warning"),t=V(t),n){const{alreadyLogged:s}=E,a=n===!0?t:n;if(s.has(a))return;s.add(a)}if((r=E.onBeforeLog)==null||r.call(E),i){const s=new Error(t);E.showStackTraceList.add(s),E.logger(s,"warn")}else E.logger(t,"warn")}}function F(e,t){let n=`[${t}]`;const i=t==="Warning"?"yellow":"red";return n=v.bold(v[i](n)),`${n}${e}`}function j(e){return e.startsWith("[")?e:` ${e}`}function V(e,t=!1){return`${t?Le:Ie}${e}`}function M(){return typeof window<"u"&&typeof window.scrollY=="number"}const K=T("utils/assertRouterType.ts",{});function Fe(){je(K.isClientRouting!==!0),K.isClientRouting=!1}function je(e){p(M(),`${v.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})}const Ve=["js","ts","cjs","cts","mjs","mts","jsx","tsx","cjsx","ctsx","mjsx","mtsx"],fe=["vue","svelte","marko","md","mdx"],Ae=[...Ve,...fe];function de(e){const t=Ae.some(n=>e.endsWith("."+n));return o(!We(e)||t),t}function We(e){return/\.(c|m)?(j|t)sx?$/.test(e)}function ze(e){return fe.some(t=>e.endsWith("."+t))}function L(e,t,n){return typeof e=="string"?Q(e.split(""),t,n).join(""):Q(e,t,n)}function Q(e,t,n){const i=[];let r=t>=0?t:e.length+t;o(r>=0&&r<=e.length);let s=n>=0?n:e.length+n;for(o(s>=0&&s<=e.length);!(r===s||(r===e.length&&(r=0),r===s));){const a=e[r];o(a!==void 0),i.push(a),r++}return i}const ge=["http://","https://","tauri://"];function De(e){return ge.some(t=>e.startsWith(t))||e.startsWith("/")||e.startsWith(".")||e.startsWith("?")||e.startsWith("#")||e===""}function Ne(e,t){o(De(e)),o(t.startsWith("/"));const[n,...i]=e.split("#");o(n!==void 0);const r=["",...i].join("#")||null;o(r===null||r.startsWith("#"));const s=r===null?"":D(r.slice(1)),[a,...l]=n.split("?");o(a!==void 0);const c=["",...l].join("?")||null;o(c===null||c.startsWith("?"));const u={},f={};
2Array.from(new URLSearchParams(c||"")).forEach(([w,X])=>{u[w]=X,f[w]=[...f.hasOwnProperty(w)?f[w]:[],X]});const{origin:d,pathname:m}=Ue(a,t);o(d===null||d===D(d)),o(m.startsWith("/")),o(d===null||e.startsWith(d));const g=a.slice((d||"").length);Ye(e,d,g,c,r);let{pathname:y,hasBaseServer:k}=Me(m,t);return y=Be(y),o(y.startsWith("/")),{origin:d,pathname:y,pathnameOriginal:g,hasBaseServer:k,search:u,searchAll:f,searchOriginal:c,hash:s,hashOriginal:r}}function D(e){try{return decodeURIComponent(e)}catch{}try{return decodeURI(e)}catch{}return e}function Be(e){return e=e.split("/").map(t=>D(t).split("/").join("%2F")).join("/"),e=e.replace(/\s/g,""),e}function Ue(e,t){var n;{const{origin:i,pathname:r}=W(e);if(i)return{origin:i,pathname:r};o(r===e)}if(e.startsWith("/"))return{origin:null,pathname:e};{let i=typeof window<"u"&&((n=window==null?void 0:window.document)==null?void 0:n.baseURI);i&&(i=W(i).pathname);const s=He(e,i||t);return W(s)}}function W(e){if(ge.some(t=>e.startsWith(t))){const[t,n,i,...r]=e.split("/"),s=[t,n,i].join("/"),a=["",...r].join("/")||"/";return{origin:s,pathname:a}}else return{pathname:e,origin:null}}function He(e,t){const n=t.split("/"),i=e.split("/");let r=t.endsWith("/");e.startsWith(".")&&n.pop();for(const a in i){const l=i[a];l==""&&a==="0"||l!="."&&(l==".."?n.pop():(r=!1,n.push(l)))}let s=n.join("/");return r&&!s.endsWith("/")&&(s+="/"),s.startsWith("/")||(s="/"+s),s}function Ge(e){o(e.startsWith("/")),o(!e.includes("?")),o(!e.includes("#"))}function Me(e,t){Ge(e),o(Je(t));let n=e;if(o(n.startsWith("/")),o(t.startsWith("/")),t==="/")return{pathname:e,hasBaseServer:!0};let i=t;return t.endsWith("/")&&n===L(t,0,-1)&&(i=L(t,0,-1),o(n===i)),n.startsWith(i)?(o(n.startsWith("/")||n.startsWith("http")),o(n.startsWith(i)),n=n.slice(i.length),n.startsWith("/")||(n="/"+n),o(n.startsWith("/")),{pathname:n,hasBaseServer:!0}):{pathname:e,hasBaseServer:!1}}function Je(e){return e.startsWith("/")}function Ye(e,t,n,i,r){const s=qe(t,n,i,r);o(e===s)}function qe(e,t,n,i){return`${e||""}${t}${n||""}${i||""}`}function _(e,t){t&&Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}function A(e){return e instanceof Function||typeof e=="function"}function Xe(e){return(t,n)=>{const i=e(t),r=e(n);if(o([!0,!1,null].includes(i)),o([!0,!1,null].includes(r)),i===r)return 0;if(i===!0||r===!1)return-1;if(r===!0||i===!1)return 1;o(!1)}}function Ke(e){return Xe(t=>{const n=e(t);return n===null?null:!n})}function h(e,t,n="unknown"){if(!S(e))return!1;if(!(t in e))return n==="undefined";if(n==="unknown")return!0;const i=e[t];return n==="array"?Array.isArray(i):n==="object"?S(i):n==="string[]"?Array.isArray(i)&&i.every(r=>typeof r=="string"):n==="function"?A(i):Array.isArray(n)?typeof i=="string"&&n.includes(i):n==="null"?i===null:n==="undefined"?i===void 0:n==="true"?i===!0:n==="false"?i===!1:typeof i===n}function Qe(e,t){return e.toLowerCase()<t.toLowerCase()?-1:e.toLowerCase()>t.toLowerCase()?1:0}const Ze=e=>e!=null;function he(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 et=["clientRouting"];function tt(e){et.forEach(t=>{if(o(e.fileExports),!(t in e.fileExports))return;const n=`The value of \`${t}\` is only allowed to be \`true\`.`;p(e.fileExports[t]!==!1,`${e.filePath} has \`export { ${t} }\` with the value \`false\` which is prohibited: remove \`export { ${t} }\` instead. (${n})`),p(e.fileExports[t]===!0,`${e.filePath} has \`export { ${t} }\` with a forbidden value. ${n}`)})}const pe=["render","clientRouting","prerender","doNotPrerender"];function nt(e,t){p(!pe.includes(e),`${t} has \`export default { ${e} }\` which is prohibited, use \`export { ${e} }\` instead.`)}function rt(e,t){if(!e)return null;let[n,...i]=e;if(!n||i.length===0&&["*","default",t].includes(n))return null;o(n!=="*");let r="",s="";return n==="default"?r="export default":(r="export",i=[n,...i]),i.forEac
2h(l=>{r=`${r} { ${l}`,s=` }${s}`}),r+s}function me(e,t,{definedAt:n}){const i=it(n,t),r=i==="internally"?i:`at ${i}`;let s=`${t}${e==="Hook"?"()":""}`;return`${e} ${v.cyan(s)} defined ${r}`}function it(e,t){if("isComputed"in e)return"internally";let n;return"files"in e?n=e.files:n=[e],o(n.length>=1),n.map(r=>{const{filePathToShowToUser:s,fileExportPathToShowToUser:a}=r;let l=s;const c=rt(a,t);return c&&(l=`${l} > ${v.cyan(c)}`),l}).join(" / ")}function st({definedAt:e}){if("isComputed"in e||"files"in e)return null;const{filePathToShowToUser:t}=e;return o(t),t}function ot(e,t){const n={},i={},r={};e.forEach(l=>{at(l).forEach(({exportName:u,exportValue:f,isFromDefaultExport:d})=>{o(u!=="default"),r[u]=r[u]??[],r[u].push({exportValue:f,exportSource:`${l.filePath} > ${d?`\`export default { ${u} }\``:`\`export { ${u} }\``}`,filePath:l.filePath,_filePath:l.filePath,_fileType:l.fileType,_isFromDefaultExport:d})})}),t&&Object.entries(t.configValues).forEach(([l,c])=>{const{value:u}=c,f=st(c),d=me("Config",l,c);i[l]=i[l]??u,n[l]=n[l]??[],o(n[l].length===0),n[l].push({configValue:u,configDefinedAt:d,configDefinedByFile:f});const m=l;r[m]=r[m]??[],r[m].push({exportValue:u,exportSource:d,filePath:f,_filePath:f,_fileType:null,_isFromDefaultExport:null})});const s=lt(),a={};return Object.entries(r).forEach(([l,c])=>{c.forEach(({exportValue:u,_fileType:f,_isFromDefaultExport:d})=>{a[l]=a[l]??u,f===".page"&&!d&&(l in s||(s[l]=u))})}),o(!("default"in a)),o(!("default"in r)),{config:i,configEntries:n,exports:a,exportsAll:r,pageExports:s}}function at(e){const{filePath:t,fileExports:n}=e;o(n),o(de(t));const i=[];return Object.entries(n).sort(Ke(([r])=>r==="default")).forEach(([r,s])=>{let a=r==="default";if(a)if(ze(t))r="Page";else{p(S(s),`The ${v.cyan("export default")} of ${t} should be an object.`),Object.entries(s).forEach(([l,c])=>{nt(l,t),i.push({exportName:l,exportValue:c,isFromDefaultExport:a})});return}i.push({exportName:r,exportValue:s,isFromDefaultExport:a})}
2),i.forEach(({exportName:r,isFromDefaultExport:s})=>{o(!(s&&pe.includes(r)))}),i}function lt(){return new Proxy({},{get(...e){return M()||C(!1,"`pageContext.pageExports` is outdated. Use `pageContext.exports` instead, see https://vike.dev/exports",{onlyOnce:!0,showStackTrace:!0}),Reflect.get(...e)}})}function ct(e){const t=".page.",n=L(e.split(t),0,-1).join(t);return o(!n.includes("\\")),n}function $(e){he(e)}function J(e,t){return o(!e.includes("\\")),e.includes("/_error")}function ut(e,t){if(t.length>0){const n=t.find(i=>i.pageId===e);return o(n),!!n.isErrorPage}else return J(e)}const ft=[".page",".page.server",".page.route",".page.client",".css"];function dt(e){if(he(e),e.endsWith(".css"))return".css";o(de(e),e);const n=e.split("/").slice(-1)[0].split("."),i=n.slice(-3)[0],r=n.slice(-2)[0];if(r==="page")return".page";if(o(i==="page",e),r==="server")return".page.server";if(r==="client")return".page.client";if(r==="route")return".page.route";o(!1,e)}function ye(e){const t=s=>r.pageId===s||r.isDefaultPageFile&&(Z(r.filePath)||gt(s,r.filePath)),n=dt(e),r={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:N(e),isRendererPageFile:n!==".css"&&N(e)&&Z(e),isErrorPageFile:J(e),pageId:ct(e)};return r}function N(e){return $(e),J(e)?!1:e.includes("/_default")}function Z(e){return $(e),e.includes("/renderer/")}function gt(e,t){$(e),$(t),o(!e.endsWith("/")),o(!t.endsWith("/")),o(N(t));const n=L(t.split("/"),0,-1).filter(i=>i!=="_default").join("/");return e.startsWith(n)}function ht(e){o(Array.isArray(e)),e.forEach(t=>{o(S(t)),o(h(t,"pageId","string")),o(h(t,"routeFilesystem")),o(h(t,"configValuesSerialized")),o(h(t,"configValuesImported"))})}function pt(e){o(h(e,"configValuesImported"))}const mt=["$$registrations","_rerender_only"],yt=[".md",".mdx"];function Et(e,t,n){vt(e,t,n)}function vt(e,t,n){const r=Object.keys(e).filter(a=>!mt.includes(a)),s=r.filter(a=>a!=="default"&&a!==n);if(s.length===0){if(r.length===1)return;{o(r.length===0);let a=`${t} doesn't export any value, but it should have a ${v.cyan("export default")}`;n&&(a+=` or ${v.cyan(`export { ${n} }`)}`),p(!1,a)}}else if(n){if(yt.some(a=>t.endsWith(a)))return;s.forEach(a=>{C(!1,`${t} should have only a single export: move ${v.cyan(`export { ${a} }`)} to +config.h.js or its own +${s}.js`,{onlyOnce:!0})})}else{const a=s.join(", ");p(!1,`${t} replace ${v.cyan(`export { ${a} }`)} with ${v.cyan(`export default { ${a} }`)}`)}}function B(e){const t={},n=(i,r,s,a)=>{t[i]={value:r,definedAt:{filePathToShowToUser:s,fileExportPathToShowToUser:[i,"default"].includes(a)?[]:[a]}},St(r,i,s)};return e.forEach(i=>{if(i.isValueFile){const{exportValues:r,importPath:s,configName:a}=i;a!=="client"&&Et(r,s,a),Object.entries(r).forEach(([l,c])=>{const u=l!=="default",f=u?l:i.configName;u&&f in t||n(f,c,s,l)})}else{const{configName:r,importPath:s,exportValue:a,exportName:l}=i;n(r,a,s,l)}}),t}function St(e,t,n){o(!n.includes("+config."))}const wt=[{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],i=t[2];return new RegExp(n,i)}},{is:e=>e instanceof Map,match:e=>e.startsWith("!Map:"),serialize:(e,t)=>
2"!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 Y(e){const t=JSON.parse(e);return Ee(t)}function Ee(e){return typeof e=="string"?bt(e):(typeof e=="object"&&e!==null&&Object.entries(e).forEach(([t,n])=>{e[t]=Ee(n)}),e)}function bt(e){for(const{match:t,deserialize:n}of wt)if(t(e))return n(e,Y);return e}function ve(e){const t={};return Object.entries(e).forEach(([n,i])=>{const{valueSerialized:r,definedAt:s}=i;o(r),o(!t[n]),t[n]={value:Y(r),definedAt:s}}),t}function Pt(e,t){const n=e.map(r=>{const s={};{const{configValuesSerialized:f}=r,d=ve(f);Object.assign(s,d)}{const{configValuesImported:f}=r,d=B(f);Object.assign(s,d)}const{pageId:a,isErrorPage:l,routeFilesystem:c,loadConfigValuesAll:u}=r;return Rt(s),{pageId:a,isErrorPage:l,routeFilesystem:c,configValues:s,loadConfigValuesAll:u}}),i={configValues:{}};{const r=B(t.configValuesImported);Object.assign(i.configValues,r)}return{pageConfigs:n,pageConfigGlobal:i}}function Rt(e){const t="route",n=e[t];if(!n)return;const{value:i}=n,r=typeof i,s=me("Config",t,n);p(r==="string"||A(i),`${s} has an invalid type '${r}': it should be a string or a function instead, see https://vike.dev/route`)}function _t(e){o(h(e,"isGeneratedFile")),o(e.isGeneratedFile!==!1,"vike was re-installed(/re-built). Restart your app."),o(e.isGeneratedFile===!0,`\`isGeneratedFile === ${e.isGeneratedFile}\``),o(h(e,"pageFilesLazy","object")),o(h(e,"pageFilesEager","object")),o(h(e,"pageFilesExportNamesLazy","object")),o(h(e,"pageFilesExportNamesEager","object")),o(h(e.pageFilesLazy,".page")),o(h(e.pageFilesLazy,".page.client")||h(e.pageFilesLazy,".page.server")),o(h(e,"pageFilesList","string[]")),o(h(e,"pageConfigsSerialized")),o(h(e,"pageConfigGlobalSerialized"));const{pageConfigsSerialized:t,pageConfigGlobalSerialized:n}=e;ht(t),pt(n);const{pageConfigs:i,pageConfigGlobal:r}=Pt(t,n),s={};x(e.pageFilesLazy).forEach(({filePath:l,pageFile:c,globValue:u})=>{c=s[l]=s[l]??c;const f=u;ee(f),c.loadFile=async()=>{"fileExports"in c||(c.fileExports=await f(),tt(c))}}),x(e.pageFilesExportNamesLazy).forEach(({filePath:l,pageFile:c,globValue:u})=>{c=s[l]=s[l]??c;const f=u;ee(f),c.loadExportNames=async()=>{if(!("exportNames"in c)){const d=await f();p("exportNames"in d,"You seem to be using Vite 2 but the latest vike versions only work with Vite 3"),o(h(d,"exportNames","string[]"),c.filePath),c.exportNames=d.exportNames}}}),x(e.pageFilesEager).forEach(({filePath:l,pageFile:c,globValue:u})=>{c=s[l]=s[l]??c;const f=u;o(S(f)),c.fileExports=f}),x(e.pageFilesExportNamesEager).forEach(({filePath:l,pageFile:c,globValue:u})=>{c=s[l]=s[l]??c;const f=u;o(S(f)),o(h(f,"exportNames","string[]"),c.filePath),c.exportNames=f.exportNames}),e.pageFilesList.forEach(l=>{s[l]=s[l]??ye(l)});const a=Object.values(s);return a.forEach(({filePath:l})=>{o(!l.includes("\\"))}),{pageFiles:a,pageConfigs:i,pageConfigGlobal:r}}function x(e){const t=[];return Object.entries(e).forEach(([n,i])=>{o(ft.includes(n)),o(S(i)),Object.entries(i).forEach(([r,s])=>{const a=ye(r);o(a.fileType===n),t.push({filePath:r,pageFile:a,globValue:s})})}),t}function ee(e){o(A(e))}const P=T("setPageFiles.ts",{});function $t(e){const{pageFiles:t,pageConfigs:n,pageConfigGlobal:i}=_t(e);P.pageFilesAll=t,P.pageConfigs=n,P.pageConfigGlobal=i}async function Tt(e,t){e?(o(!P.pageFilesGetter),o(t===void 0)):(o(P.pageFilesGetter),o(typeof t=="boolean"),(!P.pageFilesAll||!t)&&await P.pageFilesGetter());const{pageFilesAll:n,pageConfigs:i,pageConfigGlobal:r}=P;o(n&&i&&r);const s=Ct(n,i);return{pageFilesAll:n,allPageIds:s,pageConfigs:i,pageConfigGlobal:r}}function Ct(e,t){const n=e.filter(({isDefaultPageFile:s})=>!s).map(({pageId:s})=>s),i=ae(n),r=t.map(s=>s.pageId);return[...i,...r]}function kt(e,t){return xt(e,t,!0)}function xt(e,t,n){const i=n?"CLIENT_ONLY":"SERVER_ONLY",r=e.filter(g=>g.isRelevant(t)&&g.fileType!==".page.route").sort(It(n,t)),s=g=>{const y=r.filter(w=>w.pageId===t&&w.isEnv(g?"CLIENT_AND_SERVER":i));p(y.length<=1,`Merge the following files into a single file: ${y.map(w=>w.filePath).join(" ")}`);const k=y[0];return o(k===void 0||!k.isDefaultPageFile),k},a=s(!1),l=s(!0),c=g=>r.filter(y=>y.isRendererPageFile&&y.isEnv(g?"CLIENT_AND_SERVER":i))[0],u=c(!1),f=c(!0),d=r.filter(g=>g.isDefaultPageFile&&!g.isRendererPageFile&&(g.isEnv(i)||g.isEnv("CLIENT_AND_SERVER")));return[a,l,...d,u,f].filter(Ze)}function It(e,t){const n=e?"CLIENT_ONLY":"SERVER_ONLY",i=-1,r=1,s=0;return(a,l)=>{if(!a.isDefaultPageFile&&l.isDefaultPageFile)return i;if(!l.isDefaultPageFile&&a.isDefaultPageFile)return r;{const c=a.isRendererPageFile,u=l.isRendererPageFile;if(!c&&u)return i;if(!u&&c)return r;o(c===u)}{const c=te(t,a.filePath),u=te(t,l.filePath);if(c<u)return i;if(u<c)return r;o(c===u)}{if(a.isEnv(n)&&l.isEnv("CLIENT_AND_SERVER"))return i;if(l.isEnv(n)&&a.isEnv("CLIENT_AND_SERVER"))return r}return s}}function te(e,t){$(e),$(t);let n=0;for(;n<e.length&&n<t.length&&e[n]===t[n];n++);const i=e.slice(n),r=t.slice(n),s=i.split("/").length,a=r.split("/").length;return s+a}const Lt="modulepreload",Ot=function(e){return"/"+e},ne={},I=function(t,n,i){if(!n||n.length===0)return t();const r=document.getElementsByTagName("link");return Promise.all(n.map(s=>{if(s=Ot(s),s in ne)return;ne[s]=!0;const a=s.endsWith(".css"),l=a?'[rel="stylesheet"]':"";if(!!i)for(let f=r.length-1;f>=0;f--){const d=r[f];if(d.href===s&&(!a||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${s}"]${l}`))return;const u=document.createElement("link");if(u.rel=a?"stylesheet":Lt,a||(u.as="script",u.crossOrigin=""),u.href=s,document.head.appendChild(u),a)return new Promise((f,d)=>{u.addEventListener("load",f),u.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${s}`)))})})).then(()=>t()).catch(s=>{const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=s,window.dispatchEvent(a),!a.defaultPrevented)throw s})},q={},Ft={},jt={},Vt={},At=[],Se={},Wt=!0,zt=[{pageId:"/src/pages/about",isErrorPage:void 0,routeFilesystem:{routeString:"/about",definedBy:"/src/pages/about/"},loadConfigValuesAll:()=>I(()=>import("./src_pages_about.31ba50ae.js"),["website/entries/src_pages_about.31ba50ae.js","website/chunks/chunk-54764dac.js","website/static/onRenderClient.ed0af73a.css","website/chunks/chunk-47e3afe2.js"]),configValuesSerialized:{isClientSideRenderable:{definedAt:{isComputed:!0},valueSerialized:"true"}},configValuesImported:[]},{pageId:"/src/pages/index",isErrorPage:void 0,routeFilesystem:{routeString:"/",definedBy:"/src/pages/index/"},loadConfigValuesAll:()=>I(()=>import("./src_pages_index.d24be0c8.js"),["website/entries/src_pages_index.d24be0c8.js","website/chunks/chunk-54764dac.js","website/static/onRenderClient.ed0af73a.css","website/chunks/chunk-47e3afe2.js"]),configValuesSerialized:{isClientSideRenderable:{definedAt:{isComputed:!0},valueSerialized:"true"}},configValuesImported:[]},{pageId:"/src/pages/demo",isErrorPage:void 0,routeFilesystem:{routeString:"/demo",definedBy:"/src/pages/demo/"},loadConfigValuesAll:()=>I(()=>
2import("./src_pages_demo.12356b15.js"),["website/entries/src_pages_demo.12356b15.js","website/chunks/chunk-54764dac.js","website/static/onRenderClient.ed0af73a.css","website/chunks/chunk-47e3afe2.js"]),configValuesSerialized:{isClientSideRenderable:{definedAt:{isComputed:!0},valueSerialized:"true"}},configValuesImported:[]},{pageId:"/src/pages/_error",isErrorPage:!0,routeFilesystem:void 0,loadConfigValuesAll:()=>I(()=>import("./src_pages_error.5a3fd257.js"),["website/entries/src_pages_error.5a3fd257.js","website/chunks/chunk-54764dac.js","website/static/onRenderClient.ed0af73a.css"]),configValuesSerialized:{isClientSideRenderable:{definedAt:{isComputed:!0},valueSerialized:"true"}},configValuesImported:[]}],Dt={configValuesImported:[]},Nt=Object.assign({}),Bt={...Nt};q[".page"]=Bt;const Ut=Object.assign({}),Ht={...Ut};q[".page.client"]=Ht;const Gt=Object.assign({}),Mt={...Gt};Se[".page.server"]=Mt;const Jt=Object.freeze(Object.defineProperty({__proto__:null,isGeneratedFile:Wt,neverLoaded:Se,pageConfigGlobalSerialized:Dt,pageConfigsSerialized:zt,pageFilesEager:Ft,pageFilesExportNamesEager:Vt,pageFilesExportNamesLazy:jt,pageFilesLazy:q,pageFilesList:At},Symbol.toStringTag,{value:"Module"}));$t(Jt);function Yt(){o(M())}function qt(){Yt()}function re(e){const t=e/1e3;if(t<120){const n=ie(t);return`${n} second${se(n)}`}{const n=t/60,i=ie(n);return`${i} minute${se(i)}`}}function ie(e){let t=e.toFixed(1);return t.endsWith(".0")&&(t=t.slice(0,-2)),t}function se(e){return e==="1"?"":"s"}const Xt=T("utils/executeHook.ts",{userHookErrors:new Map});function Kt(e,t,n){const{timeoutErr:i,timeoutWarn:r}=Qt(t);let s,a;const l=new Promise((d,m)=>{s=g=>{c(),d(g)},a=g=>{c(),m(g)}}),c=()=>{clearTimeout(u),clearTimeout(f)},u=setTimeout(()=>{C(!1,`The ${t}() hook defined by ${n} is taking more than ${re(r)}`,{onlyOnce:!1})},r),f=setTimeout(()=>{const d=Oe(`Hook timeout: the ${t}() hook defined by ${n} didn't finish after ${re(i)}`);a(d)},i);return(async()=>{try{const d=await e();s(d)}catch(d){S(d)&&Xt.userHookErrors.set(d,{hookName:t,hookFilePath:n}),a(d)}})(),l}function Qt(e){return e==="onBeforeRoute"?{timeoutErr:5*1e3,timeoutWarn:1*1e3}:e==="onBeforePrerender"?{timeoutErr:10*60*1e3,timeoutWarn:30*1e3}:{timeoutErr:40*1e3,timeoutWarn:4*1e3}}function we(e){const t=window.location.href,{searchOriginal:n,hashOriginal:i,pathname:r}=Ne(t,"/");let s;return e!=null&&e.withoutHash?s=`${r}${n||""}`:s=`${r}${n||""}${i||""}`,o(s.startsWith("/")),s}qt();function Zt(){const e="vike_pageContext",t=document.getElementById(e);p(t,`The element #${e} (which vike automatically injects into the HTML) is missing from the DOM. This may happen if your HTML is malformed. Make sure your HTML isn't malformed, and make sure you don't remove #${e} from the HTML nor from the DOM.`);const n=t.textContent;o(n);const i=Y(n);return o(h(i,"_pageId","string")),_(i,{_hasPageContextFromServer:!0}),i}function en(e,t){const n=e.filter(r=>r.pageId===t);return o(n.length<=1),n[0]??null}async function tn(e,t){if("isAllLoaded"in e&&!t)return e;const n=await e.loadConfigValuesAll();{const{configValuesImported:i}=n,r=B(i);Object.assign(e.configValues,r)}{const{configValuesSerialized:i}=n,r=ve(i);Object.assign(e.configValues,r)}return _(e,{isAllLoaded:!0}),e}const nn="__whileFetchingAssets";async function rn(e,t){const n=kt(t._pageFilesAll,e),i=en(t._pageConfigs,e);let r;const s=!1;try{r=(await Promise.all([i&&tn(i,s),...n.map(g=>{var y;return(y=g.loadFile)==null?void 0:y.call(g)})]))[0]}catch(m){throw sn(m)&&Object.assign(m,{[nn]:!0}),m}const{config:a,configEntries:l,exports:c,exportsAll:u,pageExports:f}=ot(n,r);return{config:a,configEntries:l,exports:c,exportsAll:u,pageExports:f,_pageFilesLoaded:n}}function sn(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 oe=we({withoutHash:!0});async function on(){const e=Zt();return _(e,{isHydration:!0,isBackwardNavigation:null,_hasPageContextFromClient:!1}),_(e,await ln(e._pageId)),an(),e}function an(){const e=we({withoutHash:!0});p(oe===e,`The URL was manipulated before the hydration finished ('${oe}' to '${e}'). Ensure the hydration has finished before manipulating the URL. Consider using the onHydrationEnd() hook.`)}async function ln(e){const t={},{pageFilesAll:n,pageConfigs:i}=await Tt(!0);return _(t,{_pageFilesAll:n,_pageConfigs:i}),_(t,await rn(e,t)),n.filter(r=>r.fileType!==".page.server").forEach(r=>{var s;C(!((s=r.fileExports)!=null&&s.onBeforeRender),`export { onBeforeRender } of ${r.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}function U(e,t){if(!(t in e.exports))return null;const n=e.exports[t],i=e.exportsAll[t][0];if(o(i.exportValue===n),n===null)return null;const r=i.filePath;return o(r),o(!r.endsWith(" ")),un(n,{hookName:t,hookFilePath:r}),{hookFn:n,hookName:t,hookFilePath:r}}function cn(e,t){U(e,t)}function un(e,{hookName:t,hookFilePath:n}){o(t&&n),o(!t.endsWith(")")),p(A(e),`Hook ${t}() defined by ${n} should be a function`)}function fn(e){const t=Object.entries(e);for(const n in e)delete e[n];t.sort(([n],[i])=>
2Qe(n,i)).forEach(([n,i])=>{e[n]=i})}function dn(e){gn(e),hn(e)}function gn(e){ut(e._pageId,e._pageConfigs)&&o(h(e,"is404","boolean"))}function hn(e){if(e.is404===void 0||e.is404===null)return;const t=e.pageProps||{};if(!S(t)){C(!1,"pageContext.pageProps should be an object",{showStackTrace:!0,onlyOnce:!0});return}t.is404=t.is404||e.is404,e.pageProps=t}const pn="not-serializable",O=T("getPageContextProxyForUser.ts",{});function mn(e){return o([!0,!1].includes(e._hasPageContextFromServer)),o([!0,!1].includes(e._hasPageContextFromClient)),new Proxy(e,{get(t,n){const i=e[n],r=JSON.stringify(n);return p(i!==pn,`pageContext[${r}] couldn't be serialized and, therefore, is missing on the client-side. Check the server logs for more information.`),yn(e,n),i}})}function yn(e,t){if(O.prev===t||O.prev==="__v_raw"||(Sn(t),t in e)||vn(t))return;const n=JSON.stringify(t);e._hasPageContextFromServer&&!e._hasPageContextFromClient&&p(!1,`pageContext[${n}] isn't available on the client-side because ${n} is missing in passToClient, see https://vike.dev/passToClient`)}const En=["then","toJSON"];function vn(e){return!!(En.includes(e)||typeof e=="symbol"||typeof e!="string"||e.startsWith("__v_"))}function Sn(e){O.prev=e,window.setTimeout(()=>{O.prev=void 0},0)}function wn(e,t){if(t){const r=e;o([!0,!1].includes(r.isHydration)),o([!0,!1,null].includes(r.isBackwardNavigation))}else{const r=e;o(r.isHydration===!0),o(r.isBackwardNavigation===null)}o("config"in e),o("configEntries"in e),o("exports"in e),o("exportsAll"in e),o("pageExports"in e),o(S(e.pageExports));const n=e.exports.Page;_(e,{Page:n}),bn(e),fn(e);const i=mn(e);return dn(e),i}function bn(e){Object.entries(e).forEach(([t,n])=>{delete e[t],e[t]=n})}async function Pn(e,t){const n=wn(e,t);let i=null,r;i=U(e,"render"),r="render";{const l=U(e,"onRenderClient");l&&(i=l,r="onRenderClient")}if(!i){const l=Rn(e);if(o(l),e._pageConfigs.length>0)p(!1,`No onRenderClient() hook defined for URL '${l}', but it's needed, see https://vike.dev/onRenderClient`);else{const c=e._pageFilesLoaded.filter(f=>f.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(f=>f.filePath).join(" "),p(!1,u)}}o(i);const s=i.hookFn;o(r);const a=await Kt(()=>s(n),r,i.hookFilePath);p(a===void 0,`The ${r}() hook defined by ${i.hookFilePath} isn't allowed to return a value`)}function Rn(e){let t;try{t=e.urlPathname??e.urlOriginal}catch{}return t=t??window.location.href,t}Fe();const _n=!0;Te(_n);$n();async function $n(){var t,n;const e=await on();await Pn(e,!1),cn(e,"onHydrationEnd"),await((n=(t=e.exports).onHydrationEnd)==null?void 0:n.call(t,e))}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.